@atlaskit/link-datasource 0.19.0 → 0.20.0
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/hooks/useDatasourceTableState.js +1 -1
- package/dist/cjs/index.js +8 -4
- package/dist/cjs/ui/{datasourceTableView.js → datasource-table-view/datasourceTableView.js} +3 -3
- package/dist/cjs/ui/datasource-table-view/index.js +29 -0
- package/dist/cjs/ui/datasource-table-view/types.js +5 -0
- package/dist/cjs/ui/issue-like-table/column-picker/index.js +8 -4
- package/dist/cjs/ui/issue-like-table/column-picker/messages.js +15 -0
- package/dist/cjs/ui/issue-like-table/index.js +4 -3
- package/dist/cjs/ui/issue-like-table/styled.js +1 -1
- package/dist/cjs/ui/jira-issues-modal/index.js +22 -266
- package/dist/cjs/ui/jira-issues-modal/modal/index.js +275 -0
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/hooks/useDatasourceTableState.js +1 -1
- package/dist/es2019/index.js +2 -2
- package/dist/es2019/ui/{datasourceTableView.js → datasource-table-view/datasourceTableView.js} +3 -3
- package/dist/es2019/ui/datasource-table-view/index.js +12 -0
- package/dist/es2019/ui/datasource-table-view/types.js +1 -0
- package/dist/es2019/ui/issue-like-table/column-picker/index.js +7 -3
- package/dist/es2019/ui/issue-like-table/column-picker/messages.js +8 -0
- package/dist/es2019/ui/issue-like-table/index.js +4 -3
- package/dist/es2019/ui/issue-like-table/styled.js +1 -1
- package/dist/es2019/ui/jira-issues-modal/index.js +13 -222
- package/dist/es2019/ui/jira-issues-modal/modal/index.js +223 -0
- package/dist/es2019/version.json +1 -1
- package/dist/esm/hooks/useDatasourceTableState.js +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/ui/{datasourceTableView.js → datasource-table-view/datasourceTableView.js} +3 -3
- package/dist/esm/ui/datasource-table-view/index.js +16 -0
- package/dist/esm/ui/datasource-table-view/types.js +1 -0
- package/dist/esm/ui/issue-like-table/column-picker/index.js +8 -4
- package/dist/esm/ui/issue-like-table/column-picker/messages.js +8 -0
- package/dist/esm/ui/issue-like-table/index.js +4 -3
- package/dist/esm/ui/issue-like-table/styled.js +1 -1
- package/dist/esm/ui/jira-issues-modal/index.js +17 -262
- package/dist/esm/ui/jira-issues-modal/modal/index.js +263 -0
- package/dist/esm/version.json +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/ui/datasource-table-view/datasourceTableView.d.ts +3 -0
- package/dist/types/ui/datasource-table-view/index.d.ts +4 -0
- package/dist/types/ui/{datasourceTableView.d.ts → datasource-table-view/types.d.ts} +0 -2
- package/dist/types/ui/issue-like-table/column-picker/index.d.ts +1 -1
- package/dist/types/ui/issue-like-table/column-picker/messages.d.ts +7 -0
- package/dist/types/ui/issue-like-table/column-picker/types.d.ts +1 -0
- package/dist/types/ui/jira-issues-modal/index.d.ts +4 -11
- package/dist/types/ui/jira-issues-modal/modal/index.d.ts +3 -0
- package/dist/types/ui/jira-issues-modal/types.d.ts +8 -1
- package/dist/types-ts4.5/index.d.ts +2 -2
- package/dist/types-ts4.5/ui/datasource-table-view/datasourceTableView.d.ts +3 -0
- package/dist/types-ts4.5/ui/datasource-table-view/index.d.ts +4 -0
- package/dist/types-ts4.5/ui/{datasourceTableView.d.ts → datasource-table-view/types.d.ts} +0 -2
- package/dist/types-ts4.5/ui/issue-like-table/column-picker/index.d.ts +1 -1
- package/dist/types-ts4.5/ui/issue-like-table/column-picker/messages.d.ts +7 -0
- package/dist/types-ts4.5/ui/issue-like-table/column-picker/types.d.ts +1 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/index.d.ts +4 -11
- package/dist/types-ts4.5/ui/jira-issues-modal/modal/index.d.ts +3 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/types.d.ts +8 -1
- package/examples-helpers/buildJiraIssuesTable.tsx +1 -1
- package/package.json +2 -2
- package/report.api.md +6 -8
- package/tmp/api-report-tmp.d.ts +4 -3
- /package/dist/cjs/ui/jira-issues-modal/{messages.js → modal/messages.js} +0 -0
- /package/dist/es2019/ui/jira-issues-modal/{messages.js → modal/messages.js} +0 -0
- /package/dist/esm/ui/jira-issues-modal/{messages.js → modal/messages.js} +0 -0
- /package/dist/types/ui/jira-issues-modal/{messages.d.ts → modal/messages.d.ts} +0 -0
- /package/dist/types-ts4.5/ui/jira-issues-modal/{messages.d.ts → modal/messages.d.ts} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @atlaskit/link-datasource
|
|
2
2
|
|
|
3
|
+
## 0.20.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`0407e628d5b`](https://bitbucket.org/atlassian/atlassian-frontend/commits/0407e628d5b) - [ux] Fix some table bugs
|
|
8
|
+
|
|
9
|
+
## 0.19.1
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [`f5d34a140ad`](https://bitbucket.org/atlassian/atlassian-frontend/commits/f5d34a140ad) - Move both exported components to be behind lazy loading
|
|
14
|
+
|
|
3
15
|
## 0.19.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
|
@@ -87,7 +87,7 @@ var useDatasourceTableState = function useDatasourceTableState(datasourceId, par
|
|
|
87
87
|
_context2.next = 5;
|
|
88
88
|
return getDatasourceData(datasourceId, {
|
|
89
89
|
parameters: parameters,
|
|
90
|
-
pageSize:
|
|
90
|
+
pageSize: 20,
|
|
91
91
|
pageCursor: nextCursor,
|
|
92
92
|
fields: fields
|
|
93
93
|
});
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
8
|
Object.defineProperty(exports, "DatasourceTableView", {
|
|
7
9
|
enumerable: true,
|
|
8
10
|
get: function get() {
|
|
9
|
-
return _datasourceTableView.
|
|
11
|
+
return _datasourceTableView.default;
|
|
10
12
|
}
|
|
11
13
|
});
|
|
12
14
|
Object.defineProperty(exports, "JIRA_LIST_OF_LINKS_DATASOURCE_ID", {
|
|
@@ -18,8 +20,10 @@ Object.defineProperty(exports, "JIRA_LIST_OF_LINKS_DATASOURCE_ID", {
|
|
|
18
20
|
Object.defineProperty(exports, "JiraIssuesConfigModal", {
|
|
19
21
|
enumerable: true,
|
|
20
22
|
get: function get() {
|
|
21
|
-
return _jiraIssuesModal.
|
|
23
|
+
return _jiraIssuesModal.default;
|
|
22
24
|
}
|
|
23
25
|
});
|
|
24
|
-
var _jiraIssuesModal = require("./ui/jira-issues-modal");
|
|
25
|
-
var _datasourceTableView = require("./ui/
|
|
26
|
+
var _jiraIssuesModal = _interopRequireWildcard(require("./ui/jira-issues-modal"));
|
|
27
|
+
var _datasourceTableView = _interopRequireDefault(require("./ui/datasource-table-view"));
|
|
28
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
29
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -8,9 +8,9 @@ exports.DatasourceTableView = void 0;
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _react2 = require("@emotion/react");
|
|
10
10
|
var _spinner = _interopRequireDefault(require("@atlaskit/spinner"));
|
|
11
|
-
var _useDatasourceTableState = require("
|
|
12
|
-
var _issueLikeTable = require("
|
|
13
|
-
var _tableFooter = require("
|
|
11
|
+
var _useDatasourceTableState = require("../../hooks/useDatasourceTableState");
|
|
12
|
+
var _issueLikeTable = require("../issue-like-table");
|
|
13
|
+
var _tableFooter = require("../table-footer");
|
|
14
14
|
/** @jsx jsx */
|
|
15
15
|
|
|
16
16
|
var TableViewWrapperStyles = (0, _react2.css)({
|
|
@@ -0,0 +1,29 @@
|
|
|
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 _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
11
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || (0, _typeof2.default)(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
12
|
+
var LazyDatasourceTableView = /*#__PURE__*/(0, _react.lazy)(function () {
|
|
13
|
+
return Promise.resolve().then(function () {
|
|
14
|
+
return _interopRequireWildcard(require( /* webpackChunkName: "@atlaskit-internal_linkdatasource-tableview" */'./datasourceTableView'));
|
|
15
|
+
}).then(function (module) {
|
|
16
|
+
return {
|
|
17
|
+
default: module.DatasourceTableView
|
|
18
|
+
};
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
var DatasourceTableViewWithWrappers = function DatasourceTableViewWithWrappers(props) {
|
|
22
|
+
return /*#__PURE__*/_react.default.createElement(_react.Suspense, {
|
|
23
|
+
fallback: /*#__PURE__*/_react.default.createElement("div", {
|
|
24
|
+
"data-testid": 'datasource-table-view-suspense'
|
|
25
|
+
})
|
|
26
|
+
}, /*#__PURE__*/_react.default.createElement(LazyDatasourceTableView, props));
|
|
27
|
+
};
|
|
28
|
+
var _default = DatasourceTableViewWithWrappers;
|
|
29
|
+
exports.default = _default;
|
|
@@ -11,16 +11,20 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
|
|
|
11
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
12
|
var _react = require("react");
|
|
13
13
|
var _react2 = require("@emotion/react");
|
|
14
|
+
var _reactIntlNext = require("react-intl-next");
|
|
14
15
|
var _standardButton = _interopRequireDefault(require("@atlaskit/button/standard-button"));
|
|
15
16
|
var _board = _interopRequireDefault(require("@atlaskit/icon/glyph/board"));
|
|
16
17
|
var _chevronDown = _interopRequireDefault(require("@atlaskit/icon/glyph/chevron-down"));
|
|
17
18
|
var _select = require("@atlaskit/select");
|
|
19
|
+
var _messages = require("./messages");
|
|
18
20
|
var _excluded = ["isOpen"];
|
|
19
21
|
/** @jsx jsx */
|
|
20
22
|
var ColumnPicker = function ColumnPicker(_ref) {
|
|
21
|
-
var
|
|
23
|
+
var isDatasourceLoading = _ref.isDatasourceLoading,
|
|
24
|
+
columns = _ref.columns,
|
|
22
25
|
selectedColumnKeys = _ref.selectedColumnKeys,
|
|
23
26
|
onSelectedColumnKeysChange = _ref.onSelectedColumnKeysChange;
|
|
27
|
+
var intl = (0, _reactIntlNext.useIntl)();
|
|
24
28
|
var _useState = (0, _react.useState)([]),
|
|
25
29
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
26
30
|
allOptions = _useState2[0],
|
|
@@ -85,8 +89,7 @@ var ColumnPicker = function ColumnPicker(_ref) {
|
|
|
85
89
|
closeMenuOnSelect: false,
|
|
86
90
|
hideSelectedOptions: false,
|
|
87
91
|
isMulti: true,
|
|
88
|
-
placeholder:
|
|
89
|
-
,
|
|
92
|
+
placeholder: intl.formatMessage(_messages.columnPickerMessages.search),
|
|
90
93
|
"aria-label": "Search for fields",
|
|
91
94
|
onChange: handleChange,
|
|
92
95
|
target: function target(_ref8) {
|
|
@@ -103,7 +106,8 @@ var ColumnPicker = function ColumnPicker(_ref) {
|
|
|
103
106
|
})),
|
|
104
107
|
spacing: "compact",
|
|
105
108
|
appearance: "subtle",
|
|
106
|
-
testId: "column-picker-trigger-button"
|
|
109
|
+
testId: "column-picker-trigger-button",
|
|
110
|
+
isDisabled: isDatasourceLoading
|
|
107
111
|
}));
|
|
108
112
|
}
|
|
109
113
|
});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.columnPickerMessages = void 0;
|
|
7
|
+
var _reactIntlNext = require("react-intl-next");
|
|
8
|
+
var columnPickerMessages = (0, _reactIntlNext.defineMessages)({
|
|
9
|
+
search: {
|
|
10
|
+
id: 'linkDataSource.column-picker.search',
|
|
11
|
+
description: 'Search bar message to look for more fields',
|
|
12
|
+
defaultMessage: 'Search for fields'
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
exports.columnPickerMessages = columnPickerMessages;
|
|
@@ -87,7 +87,7 @@ function getColumnWidth(key, type) {
|
|
|
87
87
|
case 'string':
|
|
88
88
|
return BASE_WIDTH * 22;
|
|
89
89
|
default:
|
|
90
|
-
undefined;
|
|
90
|
+
return undefined;
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
93
|
var IssueLikeDataTableView = function IssueLikeDataTableView(_ref2) {
|
|
@@ -129,7 +129,7 @@ var IssueLikeDataTableView = function IssueLikeDataTableView(_ref2) {
|
|
|
129
129
|
}).filter(Boolean);
|
|
130
130
|
}, [orderedColumns, visibleColumnKeys]);
|
|
131
131
|
|
|
132
|
-
// TODO seems like this component can't handle some combination of incremental data
|
|
132
|
+
// TODO seems like this component can't handle some combination of incremental data retrieval.
|
|
133
133
|
// If data comes first, then columns and then visibleColumnKeys it blows up,
|
|
134
134
|
// or some other combination.
|
|
135
135
|
|
|
@@ -288,7 +288,7 @@ var IssueLikeDataTableView = function IssueLikeDataTableView(_ref2) {
|
|
|
288
288
|
css: truncatedCellStyles
|
|
289
289
|
}, content);
|
|
290
290
|
};
|
|
291
|
-
if (onVisibleColumnKeysChange) {
|
|
291
|
+
if (onVisibleColumnKeysChange && status !== 'loading') {
|
|
292
292
|
return (0, _react2.jsx)(_draggableTableHeading.DraggableTableHeading, {
|
|
293
293
|
tableId: tableId,
|
|
294
294
|
key: key,
|
|
@@ -311,6 +311,7 @@ var IssueLikeDataTableView = function IssueLikeDataTableView(_ref2) {
|
|
|
311
311
|
}), onVisibleColumnKeysChange && (0, _react2.jsx)("th", {
|
|
312
312
|
css: columnPickerHeaderStyles
|
|
313
313
|
}, (0, _react2.jsx)(_columnPicker.ColumnPicker, {
|
|
314
|
+
isDatasourceLoading: status === 'loading',
|
|
314
315
|
columns: orderedColumns,
|
|
315
316
|
selectedColumnKeys: visibleColumnKeys,
|
|
316
317
|
onSelectedColumnKeysChange: onSelectedColumnKeysChange
|
|
@@ -8,7 +8,7 @@ exports.TableHeading = exports.Table = void 0;
|
|
|
8
8
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
9
9
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
10
10
|
var _templateObject, _templateObject2;
|
|
11
|
-
var Table = _styled.default.table(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width:
|
|
11
|
+
var Table = _styled.default.table(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n"])));
|
|
12
12
|
exports.Table = Table;
|
|
13
13
|
var TableHeading = _styled.default.th(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n position: relative;\n padding-block: ", ";\n line-height: ", ";\n"])), "var(--ds-space-100, 8px)", "var(--ds-font-lineHeight-300, 24px)");
|
|
14
14
|
exports.TableHeading = TableHeading;
|
|
@@ -1,277 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
|
-
exports.
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
-
var _react = require("react");
|
|
14
|
-
var _react2 = require("@emotion/react");
|
|
15
|
-
var _reactIntlNext = require("react-intl-next");
|
|
16
|
-
var _standardButton = _interopRequireDefault(require("@atlaskit/button/standard-button"));
|
|
17
|
-
var _modalDialog = _interopRequireWildcard(require("@atlaskit/modal-dialog"));
|
|
18
|
-
var _colors = require("@atlaskit/theme/colors");
|
|
19
|
-
var _useDatasourceTableState = require("../../hooks/useDatasourceTableState");
|
|
20
|
-
var _getAvailableJiraSites = require("../../services/getAvailableJiraSites");
|
|
21
|
-
var _issueLikeTable = require("../issue-like-table");
|
|
22
|
-
var _link = _interopRequireDefault(require("../issue-like-table/render-type/link"));
|
|
23
|
-
var _jiraSearchContainer = require("./jira-search-container");
|
|
24
|
-
var _messages = require("./messages");
|
|
25
|
-
var _modeSwitcher = require("./mode-switcher");
|
|
26
|
-
var _siteSelector = require("./site-selector");
|
|
7
|
+
exports.default = exports.JIRA_LIST_OF_LINKS_DATASOURCE_ID = void 0;
|
|
8
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
27
10
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
28
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null ||
|
|
29
|
-
/** @jsx jsx */
|
|
30
|
-
|
|
31
|
-
var dropdownContainerStyles = (0, _react2.css)({
|
|
32
|
-
display: 'flex',
|
|
33
|
-
gap: "var(--ds-space-100, 0.5rem)"
|
|
34
|
-
});
|
|
35
|
-
var contentContainerStyles = (0, _react2.css)({
|
|
36
|
-
height: '420px',
|
|
37
|
-
overflow: 'auto'
|
|
38
|
-
});
|
|
39
|
-
var placeholderSmartLinkStyles = (0, _react2.css)({
|
|
40
|
-
backgroundColor: "var(--ds-surface-raised, ".concat(_colors.N0, ")"),
|
|
41
|
-
borderRadius: '3px',
|
|
42
|
-
boxShadow: '0px 1px 1px rgba(9, 30, 66, 0.25), 0px 0px 1px rgba(9, 30, 66, 0.31)',
|
|
43
|
-
color: "var(--ds-text-brand, ".concat(_colors.B400, ")"),
|
|
44
|
-
padding: '0px 2px'
|
|
45
|
-
});
|
|
11
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || (0, _typeof2.default)(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
46
12
|
var JIRA_LIST_OF_LINKS_DATASOURCE_ID = 'd8b75300-dfda-4519-b6cd-e49abbd50401';
|
|
47
13
|
exports.JIRA_LIST_OF_LINKS_DATASOURCE_ID = JIRA_LIST_OF_LINKS_DATASOURCE_ID;
|
|
48
|
-
var
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
setAvailableSites = _useState2[1];
|
|
58
|
-
var _useState3 = (0, _react.useState)('issue'),
|
|
59
|
-
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
60
|
-
currentViewMode = _useState4[0],
|
|
61
|
-
setCurrentViewMode = _useState4[1];
|
|
62
|
-
var _useState5 = (0, _react.useState)(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.cloudId),
|
|
63
|
-
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
64
|
-
cloudId = _useState6[0],
|
|
65
|
-
setCloudId = _useState6[1];
|
|
66
|
-
var _useState7 = (0, _react.useState)(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.jql),
|
|
67
|
-
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
68
|
-
jql = _useState8[0],
|
|
69
|
-
setJql = _useState8[1];
|
|
70
|
-
var isParametersSet = !!(jql && cloudId);
|
|
71
|
-
var parameters = (0, _react.useMemo)(function () {
|
|
72
|
-
return !!cloudId ? {
|
|
73
|
-
cloudId: cloudId,
|
|
74
|
-
jql: jql || ''
|
|
75
|
-
} : undefined;
|
|
76
|
-
}, [cloudId, jql]);
|
|
77
|
-
var _useDatasourceTableSt = (0, _useDatasourceTableState.useDatasourceTableState)(datasourceId, parameters),
|
|
78
|
-
reset = _useDatasourceTableSt.reset,
|
|
79
|
-
status = _useDatasourceTableSt.status,
|
|
80
|
-
onNextPage = _useDatasourceTableSt.onNextPage,
|
|
81
|
-
responseItems = _useDatasourceTableSt.responseItems,
|
|
82
|
-
hasNextPage = _useDatasourceTableSt.hasNextPage,
|
|
83
|
-
columns = _useDatasourceTableSt.columns,
|
|
84
|
-
defaultVisibleColumnKeys = _useDatasourceTableSt.defaultVisibleColumnKeys;
|
|
85
|
-
var _useState9 = (0, _react.useState)(initialVisibleColumnKeys || defaultVisibleColumnKeys),
|
|
86
|
-
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
87
|
-
visibleColumnKeys = _useState10[0],
|
|
88
|
-
setVisibleColumnKeys = _useState10[1];
|
|
89
|
-
(0, _react.useEffect)(function () {
|
|
90
|
-
var newVisibleColumnKeys = !initialVisibleColumnKeys || (initialVisibleColumnKeys || []).length === 0 ? defaultVisibleColumnKeys : initialVisibleColumnKeys;
|
|
91
|
-
setVisibleColumnKeys(newVisibleColumnKeys);
|
|
92
|
-
}, [initialVisibleColumnKeys, defaultVisibleColumnKeys]);
|
|
93
|
-
var _useIntl = (0, _reactIntlNext.useIntl)(),
|
|
94
|
-
formatMessage = _useIntl.formatMessage;
|
|
95
|
-
(0, _react.useEffect)(function () {
|
|
96
|
-
var fetchSiteDisplayNames = /*#__PURE__*/function () {
|
|
97
|
-
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
98
|
-
var jiraSites;
|
|
99
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
100
|
-
while (1) switch (_context.prev = _context.next) {
|
|
101
|
-
case 0:
|
|
102
|
-
_context.next = 2;
|
|
103
|
-
return (0, _getAvailableJiraSites.getAvailableJiraSites)();
|
|
104
|
-
case 2:
|
|
105
|
-
jiraSites = _context.sent;
|
|
106
|
-
setAvailableSites(jiraSites);
|
|
107
|
-
case 4:
|
|
108
|
-
case "end":
|
|
109
|
-
return _context.stop();
|
|
110
|
-
}
|
|
111
|
-
}, _callee);
|
|
112
|
-
}));
|
|
113
|
-
return function fetchSiteDisplayNames() {
|
|
114
|
-
return _ref.apply(this, arguments);
|
|
115
|
-
};
|
|
116
|
-
}();
|
|
117
|
-
void fetchSiteDisplayNames();
|
|
118
|
-
}, []);
|
|
119
|
-
var onSearch = (0, _react.useCallback)(function (newParameters) {
|
|
120
|
-
setJql(newParameters.jql);
|
|
121
|
-
reset();
|
|
122
|
-
}, [reset]);
|
|
123
|
-
var onSiteSelection = (0, _react.useCallback)(function (site) {
|
|
124
|
-
setCloudId(site.cloudId);
|
|
125
|
-
reset();
|
|
126
|
-
}, [reset]);
|
|
127
|
-
var selectedJiraSite = (0, _react.useMemo)(function () {
|
|
128
|
-
return availableSites.find(function (jiraSite) {
|
|
129
|
-
return jiraSite.cloudId === cloudId;
|
|
130
|
-
}) || availableSites[0];
|
|
131
|
-
}, [availableSites, cloudId]);
|
|
132
|
-
(0, _react.useEffect)(function () {
|
|
133
|
-
if (!cloudId && selectedJiraSite) {
|
|
134
|
-
setCloudId(selectedJiraSite.cloudId);
|
|
135
|
-
}
|
|
136
|
-
}, [cloudId, selectedJiraSite]);
|
|
137
|
-
var retrieveUrlForSmartCardRender = (0, _react.useCallback)(function () {
|
|
138
|
-
var _data$key, _data$key$data;
|
|
139
|
-
var _responseItems = (0, _slicedToArray2.default)(responseItems, 1),
|
|
140
|
-
data = _responseItems[0];
|
|
141
|
-
// agrement with BE that we will use `key` for rendering smartlink
|
|
142
|
-
return data === null || data === void 0 ? void 0 : (_data$key = data.key) === null || _data$key === void 0 ? void 0 : (_data$key$data = _data$key.data) === null || _data$key$data === void 0 ? void 0 : _data$key$data.url;
|
|
143
|
-
}, [responseItems]);
|
|
144
|
-
var onInsertPressed = (0, _react.useCallback)(function () {
|
|
145
|
-
if (!isParametersSet || !jql || !selectedJiraSite) {
|
|
146
|
-
return;
|
|
147
|
-
}
|
|
148
|
-
var firstIssueUrl = retrieveUrlForSmartCardRender();
|
|
149
|
-
if (currentViewMode === 'count') {
|
|
150
|
-
onInsert({
|
|
151
|
-
type: 'inlineCard',
|
|
152
|
-
attrs: {
|
|
153
|
-
url: "".concat(selectedJiraSite.url, "/issues/").concat(encodeURI(jql))
|
|
154
|
-
}
|
|
155
|
-
});
|
|
156
|
-
} else if (responseItems.length === 1 && firstIssueUrl) {
|
|
157
|
-
onInsert({
|
|
158
|
-
type: 'inlineCard',
|
|
159
|
-
attrs: {
|
|
160
|
-
url: firstIssueUrl
|
|
161
|
-
}
|
|
162
|
-
});
|
|
163
|
-
} else {
|
|
164
|
-
onInsert({
|
|
165
|
-
type: 'blockCard',
|
|
166
|
-
attrs: {
|
|
167
|
-
datasource: {
|
|
168
|
-
id: datasourceId,
|
|
169
|
-
parameters: {
|
|
170
|
-
cloudId: cloudId,
|
|
171
|
-
jql: jql // TODO support non JQL type
|
|
172
|
-
},
|
|
14
|
+
var LazyJiraIssuesConfigModal = /*#__PURE__*/(0, _react.lazy)(function () {
|
|
15
|
+
return Promise.resolve().then(function () {
|
|
16
|
+
return _interopRequireWildcard(require( /* webpackChunkName: "@atlaskit-internal_linkdatasource-jiraissuesmodal" */'./modal'));
|
|
17
|
+
}).then(function (module) {
|
|
18
|
+
return {
|
|
19
|
+
default: module.JiraIssuesConfigModal
|
|
20
|
+
};
|
|
21
|
+
});
|
|
22
|
+
});
|
|
173
23
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
}
|
|
182
|
-
});
|
|
183
|
-
}
|
|
184
|
-
}, [isParametersSet, jql, selectedJiraSite, retrieveUrlForSmartCardRender, currentViewMode, responseItems.length, onInsert, datasourceId, cloudId, visibleColumnKeys]);
|
|
185
|
-
var handleViewModeChange = function handleViewModeChange(selectedMode) {
|
|
186
|
-
setCurrentViewMode(selectedMode);
|
|
187
|
-
};
|
|
188
|
-
(0, _react.useEffect)(function () {
|
|
189
|
-
if (status === 'empty' && isParametersSet) {
|
|
190
|
-
void onNextPage();
|
|
191
|
-
}
|
|
192
|
-
}, [status, isParametersSet, onNextPage, reset]);
|
|
193
|
-
var issueLikeDataTableView = (0, _react.useMemo)(function () {
|
|
194
|
-
return (0, _react2.jsx)(_issueLikeTable.IssueLikeDataTableView, {
|
|
195
|
-
testId: "jira-jql-datasource-table",
|
|
196
|
-
status: status,
|
|
197
|
-
columns: columns,
|
|
198
|
-
items: responseItems,
|
|
199
|
-
hasNextPage: hasNextPage,
|
|
200
|
-
visibleColumnKeys: visibleColumnKeys || defaultVisibleColumnKeys,
|
|
201
|
-
onNextPage: onNextPage,
|
|
202
|
-
onVisibleColumnKeysChange: setVisibleColumnKeys
|
|
203
|
-
});
|
|
204
|
-
}, [columns, defaultVisibleColumnKeys, hasNextPage, onNextPage, responseItems, status, visibleColumnKeys]);
|
|
205
|
-
var renderCountModeContent = (0, _react.useCallback)(function () {
|
|
206
|
-
var url = selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url;
|
|
207
|
-
if (status === 'empty' || !jql || !url) {
|
|
208
|
-
return (0, _react2.jsx)("span", {
|
|
209
|
-
"data-testid": "jira-jql-datasource-modal--smart-card-placeholder",
|
|
210
|
-
css: placeholderSmartLinkStyles
|
|
211
|
-
}, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.modalMessages.issuesCountSmartCardPlaceholderText));
|
|
212
|
-
} else {
|
|
213
|
-
var urlWithEncodedJql = "".concat(url, "/issues/?jql=").concat(encodeURI(jql));
|
|
214
|
-
return (0, _react2.jsx)(_link.default, {
|
|
215
|
-
url: urlWithEncodedJql
|
|
216
|
-
});
|
|
217
|
-
}
|
|
218
|
-
}, [jql, selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url, status]);
|
|
219
|
-
var renderIssuesModeContent = (0, _react.useCallback)(function () {
|
|
220
|
-
if (status === 'empty' || columns.length === 0) {
|
|
221
|
-
return (0, _react2.jsx)(_issueLikeTable.EmptyState, {
|
|
222
|
-
testId: "jira-jql-datasource-modal--empty-state"
|
|
223
|
-
});
|
|
224
|
-
}
|
|
225
|
-
var firstIssueUrl = retrieveUrlForSmartCardRender();
|
|
226
|
-
if (responseItems.length === 1 && firstIssueUrl) {
|
|
227
|
-
return (0, _react2.jsx)(_link.default, {
|
|
228
|
-
url: firstIssueUrl
|
|
229
|
-
});
|
|
230
|
-
}
|
|
231
|
-
return issueLikeDataTableView;
|
|
232
|
-
}, [columns.length, issueLikeDataTableView, responseItems.length, retrieveUrlForSmartCardRender, status]);
|
|
233
|
-
return (0, _react2.jsx)(_reactIntlNext.IntlProvider, {
|
|
234
|
-
locale: "en"
|
|
235
|
-
}, (0, _react2.jsx)(_modalDialog.ModalTransition, null, (0, _react2.jsx)(_modalDialog.default, {
|
|
236
|
-
testId: 'jira-jql-datasource-modal',
|
|
237
|
-
onClose: onCancel,
|
|
238
|
-
width: "x-large",
|
|
239
|
-
shouldScrollInViewport: true
|
|
240
|
-
}, (0, _react2.jsx)(_modalDialog.ModalHeader, null, (0, _react2.jsx)(_modalDialog.ModalTitle, null, availableSites.length < 2 ? (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.modalMessages.insertIssuesTitle) : (0, _react2.jsx)("div", {
|
|
241
|
-
css: dropdownContainerStyles
|
|
242
|
-
}, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, (0, _extends2.default)({}, _messages.modalMessages.insertIssuesTitleManySites, {
|
|
243
|
-
values: {
|
|
244
|
-
siteName: selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.displayName
|
|
245
|
-
}
|
|
246
|
-
})), (0, _react2.jsx)(_siteSelector.JiraSiteSelector, {
|
|
247
|
-
testId: "jira-jql-datasource-modal--site-selector",
|
|
248
|
-
availableSites: availableSites,
|
|
249
|
-
onSiteSelection: onSiteSelection,
|
|
250
|
-
selectedJiraSite: selectedJiraSite
|
|
251
|
-
}))), (0, _react2.jsx)(_modeSwitcher.ModeSwitcher, {
|
|
252
|
-
isCompact: true,
|
|
253
|
-
options: [{
|
|
254
|
-
label: formatMessage(_messages.modalMessages.issueViewModeLabel),
|
|
255
|
-
value: 'issue'
|
|
256
|
-
}, {
|
|
257
|
-
label: formatMessage(_messages.modalMessages.countViewModeLabel),
|
|
258
|
-
value: 'count'
|
|
259
|
-
}],
|
|
260
|
-
onOptionValueChange: handleViewModeChange,
|
|
261
|
-
selectedOptionValue: currentViewMode
|
|
262
|
-
})), (0, _react2.jsx)(_modalDialog.ModalBody, null, (0, _react2.jsx)(_jiraSearchContainer.JiraSearchContainer, {
|
|
263
|
-
parameters: parameters,
|
|
264
|
-
onSearch: onSearch
|
|
265
|
-
}), (0, _react2.jsx)("div", {
|
|
266
|
-
css: contentContainerStyles
|
|
267
|
-
}, currentViewMode === 'count' ? renderCountModeContent() : renderIssuesModeContent())), (0, _react2.jsx)(_modalDialog.ModalFooter, null, (0, _react2.jsx)(_standardButton.default, {
|
|
268
|
-
appearance: "default",
|
|
269
|
-
onClick: onCancel
|
|
270
|
-
}, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.modalMessages.cancelButtonText)), (0, _react2.jsx)(_standardButton.default, {
|
|
271
|
-
appearance: "primary",
|
|
272
|
-
onClick: onInsertPressed,
|
|
273
|
-
isDisabled: !isParametersSet,
|
|
274
|
-
testId: 'jira-jql-datasource-modal--insert-button'
|
|
275
|
-
}, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.modalMessages.insertIssuesButtonText))))));
|
|
24
|
+
//
|
|
25
|
+
var JiraIssuesConfigModalWithWrappers = function JiraIssuesConfigModalWithWrappers(props) {
|
|
26
|
+
return /*#__PURE__*/_react.default.createElement(_react.Suspense, {
|
|
27
|
+
fallback: /*#__PURE__*/_react.default.createElement("div", {
|
|
28
|
+
"data-testid": 'jira-jql-datasource-table-suspense'
|
|
29
|
+
})
|
|
30
|
+
}, /*#__PURE__*/_react.default.createElement(LazyJiraIssuesConfigModal, props));
|
|
276
31
|
};
|
|
277
|
-
|
|
32
|
+
var _default = JiraIssuesConfigModalWithWrappers;
|
|
33
|
+
exports.default = _default;
|