@atlaskit/link-datasource 1.19.7 → 1.19.8
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 +6 -0
- package/dist/cjs/analytics/constants.js +1 -1
- package/dist/cjs/ui/assets-modal/modal/index.js +6 -1
- package/dist/cjs/ui/issue-like-table/empty-state/index.js +6 -4
- package/dist/cjs/ui/issue-like-table/index.js +137 -62
- package/dist/cjs/ui/issue-like-table/styled.js +3 -1
- package/dist/cjs/ui/jira-issues-modal/modal/index.js +5 -1
- package/dist/cjs/ui/table-footer/index.js +2 -2
- package/dist/es2019/analytics/constants.js +1 -1
- package/dist/es2019/ui/assets-modal/modal/index.js +6 -1
- package/dist/es2019/ui/issue-like-table/empty-state/index.js +6 -4
- package/dist/es2019/ui/issue-like-table/index.js +123 -11
- package/dist/es2019/ui/issue-like-table/styled.js +7 -5
- package/dist/es2019/ui/jira-issues-modal/modal/index.js +6 -2
- package/dist/es2019/ui/table-footer/index.js +3 -1
- package/dist/esm/analytics/constants.js +1 -1
- package/dist/esm/ui/assets-modal/modal/index.js +6 -1
- package/dist/esm/ui/issue-like-table/empty-state/index.js +6 -4
- package/dist/esm/ui/issue-like-table/index.js +136 -61
- package/dist/esm/ui/issue-like-table/styled.js +3 -1
- package/dist/esm/ui/jira-issues-modal/modal/index.js +6 -2
- package/dist/esm/ui/table-footer/index.js +2 -2
- package/dist/types/ui/issue-like-table/index.d.ts +6 -0
- package/dist/types-ts4.5/ui/issue-like-table/index.d.ts +6 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @atlaskit/link-datasource
|
|
2
2
|
|
|
3
|
+
## 1.19.8
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#55010](https://bitbucket.org/atlassian/atlassian-frontend/pull-requests/55010) [`2b36c74cc7ac`](https://bitbucket.org/atlassian/atlassian-frontend/commits/2b36c74cc7ac) - Adds inner box shadow to datasource table scroll container
|
|
8
|
+
|
|
3
9
|
## 1.19.7
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
|
@@ -32,6 +32,7 @@ var _en = _interopRequireDefault(require("../../../i18n/en"));
|
|
|
32
32
|
var _cmdbService = require("../../../services/cmdbService.utils");
|
|
33
33
|
var _accessRequired = require("../../../ui/common/error-state/access-required");
|
|
34
34
|
var _modalLoadingError = require("../../common/error-state/modal-loading-error");
|
|
35
|
+
var _issueLikeTable = require("../../issue-like-table");
|
|
35
36
|
var _searchContainer = require("../search-container");
|
|
36
37
|
var _loadingState = require("../search-container/loading-state");
|
|
37
38
|
var _messages = require("./messages");
|
|
@@ -43,7 +44,11 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
43
44
|
var modalBodyWrapperStyles = (0, _react2.css)({
|
|
44
45
|
display: 'grid',
|
|
45
46
|
height: '420px',
|
|
46
|
-
overflow: 'auto'
|
|
47
|
+
overflow: 'auto',
|
|
48
|
+
background: _issueLikeTable.scrollableContainerShadowsCssComponents.background,
|
|
49
|
+
backgroundRepeat: _issueLikeTable.scrollableContainerShadowsCssComponents.backgroundRepeat,
|
|
50
|
+
backgroundSize: _issueLikeTable.scrollableContainerShadowsCssComponents.backgroundSize,
|
|
51
|
+
backgroundAttachment: _issueLikeTable.scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
47
52
|
});
|
|
48
53
|
var modalBodyErrorWrapperStyles = (0, _react2.css)({
|
|
49
54
|
alignItems: 'center'
|
|
@@ -23,16 +23,17 @@ var SkeletonComponent = function SkeletonComponent(_ref) {
|
|
|
23
23
|
var tableBodyStyles = (0, _react.css)({
|
|
24
24
|
borderBottom: 0
|
|
25
25
|
});
|
|
26
|
+
var padding = "var(--ds-space-100, 8px)".concat(" ", "var(--ds-space-100, 8px)");
|
|
26
27
|
var cellStyles = (0, _react.css)({
|
|
27
|
-
|
|
28
|
+
padding: padding,
|
|
28
29
|
borderRight: "0.5px solid ".concat("var(--ds-border, ".concat(_colors.N40, ")")),
|
|
29
30
|
borderBottom: "0.5px solid ".concat("var(--ds-border, ".concat(_colors.N40, ")")),
|
|
30
31
|
'&:first-child': {
|
|
31
|
-
paddingLeft: "var(--ds-space-100,
|
|
32
|
+
paddingLeft: "var(--ds-space-100, 8px)"
|
|
32
33
|
},
|
|
33
34
|
'&:last-child': {
|
|
34
35
|
borderRight: 0,
|
|
35
|
-
paddingRight: "var(--ds-space-100,
|
|
36
|
+
paddingRight: "var(--ds-space-100, 8px)"
|
|
36
37
|
}
|
|
37
38
|
});
|
|
38
39
|
var baseColumns = [{
|
|
@@ -122,7 +123,8 @@ var _default = exports.default = function _default(_ref4) {
|
|
|
122
123
|
return (0, _react.jsx)(_styled.TableHeading, {
|
|
123
124
|
key: key,
|
|
124
125
|
style: {
|
|
125
|
-
width: width
|
|
126
|
+
width: width,
|
|
127
|
+
padding: padding
|
|
126
128
|
}
|
|
127
129
|
}, (0, _react.jsx)(_linkingCommon.Skeleton, {
|
|
128
130
|
appearance: "darkGray",
|
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.getOrderedColumns = exports.IssueLikeDataTableView = exports.EmptyState = exports.COLUMN_MIN_WIDTH = void 0;
|
|
7
|
+
exports.scrollableContainerShadowsCssComponents = exports.getOrderedColumns = exports.IssueLikeDataTableView = exports.EmptyState = exports.COLUMN_MIN_WIDTH = void 0;
|
|
8
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
@@ -39,12 +39,12 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
39
39
|
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; }
|
|
40
40
|
var tableSidePadding = "var(--ds-space-200, 16px)";
|
|
41
41
|
var tableHeadStyles = (0, _react2.css)({
|
|
42
|
-
background: "var(--ds-surface, #FFF)",
|
|
42
|
+
background: "var(--ds-elevation-surface-current, #FFF)",
|
|
43
43
|
position: 'sticky',
|
|
44
44
|
top: 0,
|
|
45
45
|
zIndex: _zindex.stickyTableHeadersIndex
|
|
46
46
|
});
|
|
47
|
-
var ColumnPickerHeader = _styled.default.th(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 56px;\n z-index: 10;\n position: sticky;\n right: calc(-1 * ", ");\n background-color: ", ";\n border-bottom: 2px solid ", "; /* It is required to have solid (not half-transparent) color because of this gradient business below */\n\n padding-right: ", ";\n\n background: linear-gradient(\n 90deg,\n rgba(255, 255, 255, 0) 0%,\n ", " 10%\n );\n vertical-align: middle; /* Keeps dropdown button in the middle */\n &:last-of-type {\n padding-right: ", ";\n }\n text-align: right; /* In case when TH itself is bigger we want to keep picker at the right side */\n"])), tableSidePadding, "var(--ds-surface, #FFF)", "var(--ds-border, ".concat(_colors.N40, ")"), "var(--ds-space-100, 4px)", "var(--ds-surface, #FFF)", tableSidePadding);
|
|
47
|
+
var ColumnPickerHeader = _styled.default.th(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 56px;\n z-index: 10;\n position: sticky;\n right: calc(-1 * ", ");\n background-color: ", ";\n border-bottom: 2px solid ", "; /* It is required to have solid (not half-transparent) color because of this gradient business below */\n\n padding-right: ", ";\n\n background: linear-gradient(\n 90deg,\n rgba(255, 255, 255, 0) 0%,\n ", " 10%\n );\n vertical-align: middle; /* Keeps dropdown button in the middle */\n &:last-of-type {\n padding-right: ", ";\n }\n text-align: right; /* In case when TH itself is bigger we want to keep picker at the right side */\n"])), tableSidePadding, "var(--ds-elevation-surface-current, #FFF)", "var(--ds-border, ".concat(_colors.N40, ")"), "var(--ds-space-100, 4px)", "var(--ds-elevation-surface-current, #FFF)", tableSidePadding);
|
|
48
48
|
var truncatedCellStyles = (0, _react2.css)({
|
|
49
49
|
overflow: 'hidden',
|
|
50
50
|
textOverflow: 'ellipsis',
|
|
@@ -52,19 +52,94 @@ var truncatedCellStyles = (0, _react2.css)({
|
|
|
52
52
|
borderRight: "0.5px solid ".concat("var(--ds-border, ".concat(_colors.N40, ")")),
|
|
53
53
|
borderBottom: "0.5px solid ".concat("var(--ds-border, ".concat(_colors.N40, ")")),
|
|
54
54
|
'&:first-child': {
|
|
55
|
-
paddingLeft: "var(--ds-space-100,
|
|
55
|
+
paddingLeft: "var(--ds-space-100, 8px)"
|
|
56
56
|
},
|
|
57
57
|
'&:last-child': {
|
|
58
58
|
borderRight: 0,
|
|
59
|
-
paddingRight: "var(--ds-space-100,
|
|
59
|
+
paddingRight: "var(--ds-space-100, 8px)"
|
|
60
60
|
}
|
|
61
61
|
});
|
|
62
62
|
var tableContainerStyles = (0, _react2.css)({
|
|
63
|
-
borderRadius: 'inherit'
|
|
63
|
+
borderRadius: 'inherit',
|
|
64
|
+
borderBottomLeftRadius: 0,
|
|
65
|
+
borderBottomRightRadius: 0
|
|
64
66
|
});
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Following section deals with slight gradient shadows that we add
|
|
70
|
+
* on all four sides when there is more content in that direction.
|
|
71
|
+
*
|
|
72
|
+
* We do that by applying two gradients to the background -
|
|
73
|
+
* one is "static" ('local') and other is "sticky" ('scroll'). \
|
|
74
|
+
* "Static" one makes a white color gradient, that when window is at the end of scrollable area goes on top
|
|
75
|
+
* of "sticky" (gray) one, dominating and hence disabling sticky one.
|
|
76
|
+
*/
|
|
77
|
+
|
|
78
|
+
var shadowColor = "var(--ds-shadow-overflow-perimeter, rgba(0, 0, 0, 0.1))";
|
|
79
|
+
var shadowColorLight = "var(--ds-shadow-overflow-perimeter, rgba(0, 0, 0, 0.05))";
|
|
80
|
+
var leftWhiteOverrideGradient = {
|
|
81
|
+
background: "\n linear-gradient(\n 90deg,\n ".concat("var(--ds-elevation-surface-current, #FFF)", " 30%,\n rgba(255, 255, 255, 0)\n ) left center"),
|
|
82
|
+
size: "40px 100%",
|
|
83
|
+
attachment: "local"
|
|
84
|
+
};
|
|
85
|
+
var topWhiteOverrideGradient = {
|
|
86
|
+
background: "\n linear-gradient(\n 0deg,\n rgba(255, 255, 255, 0),\n ".concat("var(--ds-elevation-surface-current, #FFF)", " 30%\n ) top center"),
|
|
87
|
+
size: "100% 100px",
|
|
88
|
+
attachment: "local"
|
|
89
|
+
};
|
|
90
|
+
var rightWhiteOverrideGradient = {
|
|
91
|
+
background: "\n linear-gradient(\n 90deg,\n rgba(255, 255, 255, 0),\n ".concat("var(--ds-elevation-surface-current, #FFF)", " 70%\n ) right center"),
|
|
92
|
+
size: "40px 100%",
|
|
93
|
+
attachment: "local"
|
|
94
|
+
};
|
|
95
|
+
var bottomWhiteOverride = {
|
|
96
|
+
background: "\n linear-gradient(\n 0deg,\n ".concat("var(--ds-elevation-surface-current, #FFF)", " 30%,\n rgba(255, 255, 255, 0)\n ) bottom center"),
|
|
97
|
+
size: "100% 40px",
|
|
98
|
+
attachment: "local"
|
|
99
|
+
};
|
|
100
|
+
var leftShadowGradient = {
|
|
101
|
+
background: "\n linear-gradient(\n 90deg,\n ".concat(shadowColor, ",\n rgba(0, 0, 0, 0)\n ) left center"),
|
|
102
|
+
size: "14px 100%",
|
|
103
|
+
attachment: "scroll"
|
|
104
|
+
};
|
|
105
|
+
var topShadowGradient = {
|
|
106
|
+
background: "\n linear-gradient(\n 0deg,\n rgba(0, 0, 0, 0),\n ".concat(shadowColorLight, "\n ) 0 52px"),
|
|
107
|
+
size: "100% 14px",
|
|
108
|
+
attachment: "scroll"
|
|
109
|
+
};
|
|
110
|
+
var rightShadowGradient = {
|
|
111
|
+
background: "\n linear-gradient(\n 90deg,\n rgba(0, 0, 0, 0),\n ".concat(shadowColor, "\n ) right center"),
|
|
112
|
+
size: "14px 100%",
|
|
113
|
+
attachment: "scroll"
|
|
114
|
+
};
|
|
115
|
+
var bottomShadowGradient = {
|
|
116
|
+
background: "\n linear-gradient(\n 0deg,\n ".concat(shadowColorLight, ",\n rgba(0, 0, 0, 0)\n ) bottom center"),
|
|
117
|
+
size: "100% 10px",
|
|
118
|
+
attachment: "scroll"
|
|
119
|
+
};
|
|
120
|
+
var shadows = [leftWhiteOverrideGradient, leftShadowGradient, rightWhiteOverrideGradient, rightShadowGradient, topWhiteOverrideGradient, topShadowGradient, bottomWhiteOverride, bottomShadowGradient];
|
|
121
|
+
var scrollableContainerShadowsCssComponents = exports.scrollableContainerShadowsCssComponents = {
|
|
122
|
+
background: shadows.map(function (_ref) {
|
|
123
|
+
var background = _ref.background;
|
|
124
|
+
return background;
|
|
125
|
+
}).join(','),
|
|
126
|
+
backgroundRepeat: 'no-repeat',
|
|
127
|
+
backgroundSize: shadows.map(function (_ref2) {
|
|
128
|
+
var size = _ref2.size;
|
|
129
|
+
return size;
|
|
130
|
+
}).join(','),
|
|
131
|
+
backgroundAttachment: shadows.map(function (_ref3) {
|
|
132
|
+
var attachment = _ref3.attachment;
|
|
133
|
+
return attachment;
|
|
134
|
+
}).join(',')
|
|
135
|
+
};
|
|
65
136
|
var scrollableContainerStyles = (0, _react2.css)({
|
|
66
137
|
overflow: 'auto',
|
|
67
|
-
boxSizing: 'border-box'
|
|
138
|
+
boxSizing: 'border-box',
|
|
139
|
+
background: scrollableContainerShadowsCssComponents.background,
|
|
140
|
+
backgroundRepeat: scrollableContainerShadowsCssComponents.backgroundRepeat,
|
|
141
|
+
backgroundSize: scrollableContainerShadowsCssComponents.backgroundSize,
|
|
142
|
+
backgroundAttachment: scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
68
143
|
});
|
|
69
144
|
var tableStyles = (0, _react2.css)({
|
|
70
145
|
// These styles are needed to prevent thead bottom border from scrolling away.
|
|
@@ -100,11 +175,11 @@ var BASE_WIDTH = 8;
|
|
|
100
175
|
var DEFAULT_WIDTH = BASE_WIDTH * 22;
|
|
101
176
|
var COLUMN_MIN_WIDTH = exports.COLUMN_MIN_WIDTH = BASE_WIDTH * 3;
|
|
102
177
|
var keyBasedWidthMap = {
|
|
103
|
-
priority: BASE_WIDTH *
|
|
178
|
+
priority: BASE_WIDTH * 5,
|
|
104
179
|
status: BASE_WIDTH * 18,
|
|
105
180
|
summary: BASE_WIDTH * 45,
|
|
106
181
|
description: BASE_WIDTH * 31.25,
|
|
107
|
-
type: BASE_WIDTH *
|
|
182
|
+
type: BASE_WIDTH * 5,
|
|
108
183
|
key: BASE_WIDTH * 13
|
|
109
184
|
};
|
|
110
185
|
function getDefaultColumnWidth(key, type) {
|
|
@@ -116,28 +191,28 @@ function getDefaultColumnWidth(key, type) {
|
|
|
116
191
|
case 'date':
|
|
117
192
|
return BASE_WIDTH * 14;
|
|
118
193
|
case 'icon':
|
|
119
|
-
return BASE_WIDTH *
|
|
194
|
+
return BASE_WIDTH * 5;
|
|
120
195
|
default:
|
|
121
196
|
return DEFAULT_WIDTH;
|
|
122
197
|
}
|
|
123
198
|
}
|
|
124
|
-
var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLikeDataTableView(
|
|
125
|
-
var testId =
|
|
126
|
-
onNextPage =
|
|
127
|
-
onLoadDatasourceDetails =
|
|
128
|
-
items =
|
|
129
|
-
columns =
|
|
130
|
-
|
|
131
|
-
renderItem =
|
|
132
|
-
visibleColumnKeys =
|
|
133
|
-
onVisibleColumnKeysChange =
|
|
134
|
-
columnCustomSizes =
|
|
135
|
-
onColumnResize =
|
|
136
|
-
status =
|
|
137
|
-
hasNextPage =
|
|
138
|
-
scrollableContainerHeight =
|
|
139
|
-
parentContainerRenderInstanceId =
|
|
140
|
-
extensionKey =
|
|
199
|
+
var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLikeDataTableView(_ref4) {
|
|
200
|
+
var testId = _ref4.testId,
|
|
201
|
+
onNextPage = _ref4.onNextPage,
|
|
202
|
+
onLoadDatasourceDetails = _ref4.onLoadDatasourceDetails,
|
|
203
|
+
items = _ref4.items,
|
|
204
|
+
columns = _ref4.columns,
|
|
205
|
+
_ref4$renderItem = _ref4.renderItem,
|
|
206
|
+
renderItem = _ref4$renderItem === void 0 ? _renderType.fallbackRenderType : _ref4$renderItem,
|
|
207
|
+
visibleColumnKeys = _ref4.visibleColumnKeys,
|
|
208
|
+
onVisibleColumnKeysChange = _ref4.onVisibleColumnKeysChange,
|
|
209
|
+
columnCustomSizes = _ref4.columnCustomSizes,
|
|
210
|
+
onColumnResize = _ref4.onColumnResize,
|
|
211
|
+
status = _ref4.status,
|
|
212
|
+
hasNextPage = _ref4.hasNextPage,
|
|
213
|
+
scrollableContainerHeight = _ref4.scrollableContainerHeight,
|
|
214
|
+
parentContainerRenderInstanceId = _ref4.parentContainerRenderInstanceId,
|
|
215
|
+
extensionKey = _ref4.extensionKey;
|
|
141
216
|
var tableId = (0, _react.useMemo)(function () {
|
|
142
217
|
return Symbol('unique-id');
|
|
143
218
|
}, []);
|
|
@@ -172,8 +247,8 @@ var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLike
|
|
|
172
247
|
}, [parentContainerRenderInstanceId, status]);
|
|
173
248
|
var visibleSortedColumns = (0, _react.useMemo)(function () {
|
|
174
249
|
return visibleColumnKeys.map(function (visibleKey) {
|
|
175
|
-
return orderedColumns.find(function (
|
|
176
|
-
var key =
|
|
250
|
+
return orderedColumns.find(function (_ref5) {
|
|
251
|
+
var key = _ref5.key;
|
|
177
252
|
return visibleKey === key;
|
|
178
253
|
});
|
|
179
254
|
}).filter(Boolean);
|
|
@@ -188,10 +263,10 @@ var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLike
|
|
|
188
263
|
return (columnCustomSizes === null || columnCustomSizes === void 0 ? void 0 : columnCustomSizes[key]) || getDefaultColumnWidth(key, type);
|
|
189
264
|
}, [columnCustomSizes]);
|
|
190
265
|
var headerColumns = (0, _react.useMemo)(function () {
|
|
191
|
-
return visibleSortedColumns.map(function (
|
|
192
|
-
var key =
|
|
193
|
-
title =
|
|
194
|
-
type =
|
|
266
|
+
return visibleSortedColumns.map(function (_ref6) {
|
|
267
|
+
var key = _ref6.key,
|
|
268
|
+
title = _ref6.title,
|
|
269
|
+
type = _ref6.type;
|
|
195
270
|
return {
|
|
196
271
|
key: key,
|
|
197
272
|
content: title,
|
|
@@ -233,9 +308,9 @@ var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLike
|
|
|
233
308
|
return;
|
|
234
309
|
}
|
|
235
310
|
return (0, _combine.combine)((0, _element.monitorForElements)({
|
|
236
|
-
onDragStart: function onDragStart(
|
|
237
|
-
var location =
|
|
238
|
-
source =
|
|
311
|
+
onDragStart: function onDragStart(_ref7) {
|
|
312
|
+
var location = _ref7.location,
|
|
313
|
+
source = _ref7.source;
|
|
239
314
|
initialAutoScrollerClientY.current = location.current.input.clientY;
|
|
240
315
|
if (source.data.type === 'table-header') {
|
|
241
316
|
var _containerRef$current;
|
|
@@ -251,9 +326,9 @@ var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLike
|
|
|
251
326
|
});
|
|
252
327
|
}
|
|
253
328
|
},
|
|
254
|
-
onDrag: function onDrag(
|
|
255
|
-
var location =
|
|
256
|
-
source =
|
|
329
|
+
onDrag: function onDrag(_ref8) {
|
|
330
|
+
var location = _ref8.location,
|
|
331
|
+
source = _ref8.source;
|
|
257
332
|
if (source.data.type === 'table-header') {
|
|
258
333
|
var _containerRef$current2;
|
|
259
334
|
_pragmaticDragAndDropReactBeautifulDndAutoscroll.autoScroller.updateInput({
|
|
@@ -263,9 +338,9 @@ var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLike
|
|
|
263
338
|
});
|
|
264
339
|
}
|
|
265
340
|
},
|
|
266
|
-
onDrop: function onDrop(
|
|
267
|
-
var source =
|
|
268
|
-
location =
|
|
341
|
+
onDrop: function onDrop(_ref9) {
|
|
342
|
+
var source = _ref9.source,
|
|
343
|
+
location = _ref9.location;
|
|
269
344
|
_pragmaticDragAndDropReactBeautifulDndAutoscroll.autoScroller.stop();
|
|
270
345
|
if (location.current.dropTargets.length === 0) {
|
|
271
346
|
return;
|
|
@@ -300,10 +375,10 @@ var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLike
|
|
|
300
375
|
return items.map(function (newRowData, rowIndex) {
|
|
301
376
|
return {
|
|
302
377
|
key: "".concat(identityColumnKey && newRowData[identityColumnKey] && newRowData[identityColumnKey].data || rowIndex),
|
|
303
|
-
cells: visibleSortedColumns.map(function (
|
|
378
|
+
cells: visibleSortedColumns.map(function (_ref10) {
|
|
304
379
|
var _newRowData$key;
|
|
305
|
-
var key =
|
|
306
|
-
type =
|
|
380
|
+
var key = _ref10.key,
|
|
381
|
+
type = _ref10.type;
|
|
307
382
|
var value = ((_newRowData$key = newRowData[key]) === null || _newRowData$key === void 0 ? void 0 : _newRowData$key.data) || newRowData[key];
|
|
308
383
|
var values = Array.isArray(value) ? value : [value];
|
|
309
384
|
var content = values.map(function (value) {
|
|
@@ -404,10 +479,10 @@ var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLike
|
|
|
404
479
|
css: [noDefaultBorderStyles, tableHeadStyles]
|
|
405
480
|
}, (0, _react2.jsx)("tr", {
|
|
406
481
|
ref: tableHeaderRowRef
|
|
407
|
-
}, headerColumns.map(function (
|
|
408
|
-
var key =
|
|
409
|
-
content =
|
|
410
|
-
width =
|
|
482
|
+
}, headerColumns.map(function (_ref12, cellIndex) {
|
|
483
|
+
var key = _ref12.key,
|
|
484
|
+
content = _ref12.content,
|
|
485
|
+
width = _ref12.width;
|
|
411
486
|
var heading = (0, _react2.jsx)(_tooltip.default, {
|
|
412
487
|
content: content,
|
|
413
488
|
tag: "span",
|
|
@@ -418,10 +493,10 @@ var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLike
|
|
|
418
493
|
}, content));
|
|
419
494
|
if (onVisibleColumnKeysChange && hasData) {
|
|
420
495
|
var _containerRef$current3;
|
|
421
|
-
var previewRows = tableRows.map(function (
|
|
422
|
-
var cells =
|
|
423
|
-
var cell = cells.find(function (
|
|
424
|
-
var cellKey =
|
|
496
|
+
var previewRows = tableRows.map(function (_ref13) {
|
|
497
|
+
var cells = _ref13.cells;
|
|
498
|
+
var cell = cells.find(function (_ref14) {
|
|
499
|
+
var cellKey = _ref14.key;
|
|
425
500
|
return cellKey === key;
|
|
426
501
|
});
|
|
427
502
|
if (cell) {
|
|
@@ -463,18 +538,18 @@ var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLike
|
|
|
463
538
|
})))), (0, _react2.jsx)("tbody", {
|
|
464
539
|
css: noDefaultBorderStyles,
|
|
465
540
|
"data-testid": testId && "".concat(testId, "--body")
|
|
466
|
-
}, rows.map(function (
|
|
467
|
-
var key =
|
|
468
|
-
cells =
|
|
469
|
-
ref =
|
|
541
|
+
}, rows.map(function (_ref15) {
|
|
542
|
+
var key = _ref15.key,
|
|
543
|
+
cells = _ref15.cells,
|
|
544
|
+
ref = _ref15.ref;
|
|
470
545
|
return (0, _react2.jsx)("tr", {
|
|
471
546
|
key: key,
|
|
472
547
|
"data-testid": testId && "".concat(testId, "--row-").concat(key),
|
|
473
548
|
ref: ref
|
|
474
|
-
}, cells.map(function (
|
|
475
|
-
var cellKey =
|
|
476
|
-
content =
|
|
477
|
-
width =
|
|
549
|
+
}, cells.map(function (_ref16, cellIndex) {
|
|
550
|
+
var cellKey = _ref16.key,
|
|
551
|
+
content = _ref16.content,
|
|
552
|
+
width = _ref16.width;
|
|
478
553
|
var loadingRowStyle = shouldUseWidth ? {
|
|
479
554
|
width: width
|
|
480
555
|
} : {
|
|
@@ -483,7 +558,7 @@ var IssueLikeDataTableView = exports.IssueLikeDataTableView = function IssueLike
|
|
|
483
558
|
// extra padding is required around skeleton loader to avoid vertical jumps when data loads
|
|
484
559
|
if (key !== null && key !== void 0 && key.includes('loading')) {
|
|
485
560
|
loadingRowStyle = _objectSpread(_objectSpread({}, loadingRowStyle), {}, {
|
|
486
|
-
paddingBlock: "var(--ds-space-100,
|
|
561
|
+
paddingBlock: "var(--ds-space-100, 8px)"
|
|
487
562
|
});
|
|
488
563
|
}
|
|
489
564
|
return (0, _react2.jsx)("td", {
|
|
@@ -12,4 +12,6 @@ var _templateObject, _templateObject2;
|
|
|
12
12
|
var ScrollableContainerHeight = exports.ScrollableContainerHeight = 590;
|
|
13
13
|
var FieldTextFontSize = exports.FieldTextFontSize = '14px';
|
|
14
14
|
var Table = exports.Table = _styled.default.table(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n"])));
|
|
15
|
-
var
|
|
15
|
+
var lineHeight = "var(--ds-font-lineHeight-300, 24px)";
|
|
16
|
+
var verticalPadding = "var(--ds-space-025, 2px)";
|
|
17
|
+
var TableHeading = exports.TableHeading = _styled.default.th(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n position: relative;\n line-height: ", ";\n padding: ", " ", ";\n border-right: 0.5px solid ", ";\n border-bottom: 2px solid ", ";\n height: calc(", " * 2 + ", " * 2);\n vertical-align: bottom;\n\n &.has-column-picker:nth-last-of-type(2) {\n border-right: 0;\n }\n\n &:first-child {\n padding-left: ", ";\n }\n\n &:last-child {\n border-right: 0;\n }\n\n & [data-testid='datasource-header-content--container'] {\n width: 100%;\n padding: ", " ", ";\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n white-space: normal;\n overflow: hidden;\n word-wrap: break-word;\n\n &:hover {\n background: ", ";\n border-radius: 3px;\n }\n }\n"])), lineHeight, verticalPadding, "var(--ds-space-050, 4px)", "var(--ds-border, ".concat(_colors.N40, ")"), "var(--ds-border, ".concat(_colors.N40, ")"), lineHeight, verticalPadding, "var(--ds-space-050, 4px)", verticalPadding, "var(--ds-space-050, 4px)", "var(--ds-background-input-hovered, #F7F8F9)");
|
|
@@ -62,7 +62,11 @@ var contentContainerStyles = (0, _react2.css)({
|
|
|
62
62
|
display: 'grid',
|
|
63
63
|
maxHeight: '420px',
|
|
64
64
|
overflow: 'auto',
|
|
65
|
-
borderBottom: "2px solid ".concat("var(--ds-background-accent-gray-subtler, ".concat(_colors.N40, ")"))
|
|
65
|
+
borderBottom: "2px solid ".concat("var(--ds-background-accent-gray-subtler, ".concat(_colors.N40, ")")),
|
|
66
|
+
background: _issueLikeTable.scrollableContainerShadowsCssComponents.background,
|
|
67
|
+
backgroundRepeat: _issueLikeTable.scrollableContainerShadowsCssComponents.backgroundRepeat,
|
|
68
|
+
backgroundSize: _issueLikeTable.scrollableContainerShadowsCssComponents.backgroundSize,
|
|
69
|
+
backgroundAttachment: _issueLikeTable.scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
66
70
|
});
|
|
67
71
|
var placeholderSmartLinkStyles = (0, _react2.css)({
|
|
68
72
|
backgroundColor: "var(--ds-surface-raised, ".concat(_colors.N0, ")"),
|
|
@@ -21,8 +21,8 @@ var _messages = require("./messages");
|
|
|
21
21
|
var _syncInfo = require("./sync-info");
|
|
22
22
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
23
23
|
/** @jsx jsx */
|
|
24
|
-
var FooterWrapper = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n padding: 0 ", ";\n box-sizing: border-box;\n border-radius: inherit;\n background: ", ";\n"])), "var(--ds-space-200, 16px)", "var(--ds-background-input, ".concat(_colors.N0, ")"));
|
|
25
|
-
var TopBorderWrapper = _styled.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n box-sizing: border-box;\n justify-content: space-between;\n padding: ", " 0;\n
|
|
24
|
+
var FooterWrapper = _styled.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n padding: 0 ", ";\n box-sizing: border-box;\n border-radius: inherit;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n background: ", ";\n border-top: 2px solid ", ";\n"])), "var(--ds-space-200, 16px)", "var(--ds-background-input, ".concat(_colors.N0, ")"), "var(--ds-background-accent-gray-subtler, ".concat(_colors.N40, ")"));
|
|
25
|
+
var TopBorderWrapper = _styled.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n box-sizing: border-box;\n justify-content: space-between;\n padding: ", " 0;\n"])), "var(--ds-space-250, 20px)");
|
|
26
26
|
var ItemCounterWrapper = _styled.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n align-self: center;\n"])));
|
|
27
27
|
var SyncWrapper = _styled.default.div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n align-items: center;\n color: ", ";\n"])), "var(--ds-text-accent-gray, ".concat(_colors.N90, ")"));
|
|
28
28
|
var SyncTextWrapper = _styled.default.div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n margin-right: 5px;\n font-size: 12px;\n"])));
|
|
@@ -21,6 +21,7 @@ import i18nEN from '../../../i18n/en';
|
|
|
21
21
|
import { PermissionError } from '../../../services/cmdbService.utils';
|
|
22
22
|
import { AccessRequired } from '../../../ui/common/error-state/access-required';
|
|
23
23
|
import { ModalLoadingError } from '../../common/error-state/modal-loading-error';
|
|
24
|
+
import { scrollableContainerShadowsCssComponents } from '../../issue-like-table';
|
|
24
25
|
import { AssetsSearchContainer } from '../search-container';
|
|
25
26
|
import { AssetsSearchContainerLoading } from '../search-container/loading-state';
|
|
26
27
|
import { modalMessages } from './messages';
|
|
@@ -28,7 +29,11 @@ import { RenderAssetsContent } from './render-assets-content';
|
|
|
28
29
|
const modalBodyWrapperStyles = css({
|
|
29
30
|
display: 'grid',
|
|
30
31
|
height: '420px',
|
|
31
|
-
overflow: 'auto'
|
|
32
|
+
overflow: 'auto',
|
|
33
|
+
background: scrollableContainerShadowsCssComponents.background,
|
|
34
|
+
backgroundRepeat: scrollableContainerShadowsCssComponents.backgroundRepeat,
|
|
35
|
+
backgroundSize: scrollableContainerShadowsCssComponents.backgroundSize,
|
|
36
|
+
backgroundAttachment: scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
32
37
|
});
|
|
33
38
|
const modalBodyErrorWrapperStyles = css({
|
|
34
39
|
alignItems: 'center'
|
|
@@ -15,16 +15,17 @@ const SkeletonComponent = ({
|
|
|
15
15
|
const tableBodyStyles = css({
|
|
16
16
|
borderBottom: 0
|
|
17
17
|
});
|
|
18
|
+
const padding = `${"var(--ds-space-100, 8px)"} ${"var(--ds-space-100, 8px)"}`;
|
|
18
19
|
const cellStyles = css({
|
|
19
|
-
|
|
20
|
+
padding,
|
|
20
21
|
borderRight: `0.5px solid ${`var(--ds-border, ${N40})`}`,
|
|
21
22
|
borderBottom: `0.5px solid ${`var(--ds-border, ${N40})`}`,
|
|
22
23
|
'&:first-child': {
|
|
23
|
-
paddingLeft: `${"var(--ds-space-100,
|
|
24
|
+
paddingLeft: `${"var(--ds-space-100, 8px)"}`
|
|
24
25
|
},
|
|
25
26
|
'&:last-child': {
|
|
26
27
|
borderRight: 0,
|
|
27
|
-
paddingRight: `${"var(--ds-space-100,
|
|
28
|
+
paddingRight: `${"var(--ds-space-100, 8px)"}`
|
|
28
29
|
}
|
|
29
30
|
});
|
|
30
31
|
const baseColumns = [{
|
|
@@ -115,7 +116,8 @@ export default (({
|
|
|
115
116
|
}) => jsx(TableHeading, {
|
|
116
117
|
key: key,
|
|
117
118
|
style: {
|
|
118
|
-
width
|
|
119
|
+
width,
|
|
120
|
+
padding
|
|
119
121
|
}
|
|
120
122
|
}, jsx(Skeleton, {
|
|
121
123
|
appearance: "darkGray",
|
|
@@ -23,7 +23,7 @@ import { Table, TableHeading } from './styled';
|
|
|
23
23
|
import { useIsOnScreen } from './useIsOnScreen';
|
|
24
24
|
const tableSidePadding = "var(--ds-space-200, 16px)";
|
|
25
25
|
const tableHeadStyles = css({
|
|
26
|
-
background: "var(--ds-surface, #FFF)",
|
|
26
|
+
background: "var(--ds-elevation-surface-current, #FFF)",
|
|
27
27
|
position: 'sticky',
|
|
28
28
|
top: 0,
|
|
29
29
|
zIndex: stickyTableHeadersIndex
|
|
@@ -33,7 +33,7 @@ const ColumnPickerHeader = styled.th`
|
|
|
33
33
|
z-index: 10;
|
|
34
34
|
position: sticky;
|
|
35
35
|
right: calc(-1 * ${tableSidePadding});
|
|
36
|
-
background-color: ${"var(--ds-surface, #FFF)"};
|
|
36
|
+
background-color: ${"var(--ds-elevation-surface-current, #FFF)"};
|
|
37
37
|
border-bottom: 2px solid ${`var(--ds-border, ${N40})`}; /* It is required to have solid (not half-transparent) color because of this gradient business below */
|
|
38
38
|
|
|
39
39
|
padding-right: ${"var(--ds-space-100, 4px)"};
|
|
@@ -41,7 +41,7 @@ const ColumnPickerHeader = styled.th`
|
|
|
41
41
|
background: linear-gradient(
|
|
42
42
|
90deg,
|
|
43
43
|
rgba(255, 255, 255, 0) 0%,
|
|
44
|
-
${"var(--ds-surface, #FFF)"} 10%
|
|
44
|
+
${"var(--ds-elevation-surface-current, #FFF)"} 10%
|
|
45
45
|
);
|
|
46
46
|
vertical-align: middle; /* Keeps dropdown button in the middle */
|
|
47
47
|
&:last-of-type {
|
|
@@ -56,19 +56,131 @@ const truncatedCellStyles = css({
|
|
|
56
56
|
borderRight: `0.5px solid ${`var(--ds-border, ${N40})`}`,
|
|
57
57
|
borderBottom: `0.5px solid ${`var(--ds-border, ${N40})`}`,
|
|
58
58
|
'&:first-child': {
|
|
59
|
-
paddingLeft: `${"var(--ds-space-100,
|
|
59
|
+
paddingLeft: `${"var(--ds-space-100, 8px)"}`
|
|
60
60
|
},
|
|
61
61
|
'&:last-child': {
|
|
62
62
|
borderRight: 0,
|
|
63
|
-
paddingRight: `${"var(--ds-space-100,
|
|
63
|
+
paddingRight: `${"var(--ds-space-100, 8px)"}`
|
|
64
64
|
}
|
|
65
65
|
});
|
|
66
66
|
const tableContainerStyles = css({
|
|
67
|
-
borderRadius: 'inherit'
|
|
67
|
+
borderRadius: 'inherit',
|
|
68
|
+
borderBottomLeftRadius: 0,
|
|
69
|
+
borderBottomRightRadius: 0
|
|
68
70
|
});
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Following section deals with slight gradient shadows that we add
|
|
74
|
+
* on all four sides when there is more content in that direction.
|
|
75
|
+
*
|
|
76
|
+
* We do that by applying two gradients to the background -
|
|
77
|
+
* one is "static" ('local') and other is "sticky" ('scroll'). \
|
|
78
|
+
* "Static" one makes a white color gradient, that when window is at the end of scrollable area goes on top
|
|
79
|
+
* of "sticky" (gray) one, dominating and hence disabling sticky one.
|
|
80
|
+
*/
|
|
81
|
+
|
|
82
|
+
const shadowColor = "var(--ds-shadow-overflow-perimeter, rgba(0, 0, 0, 0.1))";
|
|
83
|
+
const shadowColorLight = "var(--ds-shadow-overflow-perimeter, rgba(0, 0, 0, 0.05))";
|
|
84
|
+
const leftWhiteOverrideGradient = {
|
|
85
|
+
background: `
|
|
86
|
+
linear-gradient(
|
|
87
|
+
90deg,
|
|
88
|
+
${"var(--ds-elevation-surface-current, #FFF)"} 30%,
|
|
89
|
+
rgba(255, 255, 255, 0)
|
|
90
|
+
) left center`,
|
|
91
|
+
size: `40px 100%`,
|
|
92
|
+
attachment: `local`
|
|
93
|
+
};
|
|
94
|
+
const topWhiteOverrideGradient = {
|
|
95
|
+
background: `
|
|
96
|
+
linear-gradient(
|
|
97
|
+
0deg,
|
|
98
|
+
rgba(255, 255, 255, 0),
|
|
99
|
+
${"var(--ds-elevation-surface-current, #FFF)"} 30%
|
|
100
|
+
) top center`,
|
|
101
|
+
size: `100% 100px`,
|
|
102
|
+
attachment: `local`
|
|
103
|
+
};
|
|
104
|
+
const rightWhiteOverrideGradient = {
|
|
105
|
+
background: `
|
|
106
|
+
linear-gradient(
|
|
107
|
+
90deg,
|
|
108
|
+
rgba(255, 255, 255, 0),
|
|
109
|
+
${"var(--ds-elevation-surface-current, #FFF)"} 70%
|
|
110
|
+
) right center`,
|
|
111
|
+
size: `40px 100%`,
|
|
112
|
+
attachment: `local`
|
|
113
|
+
};
|
|
114
|
+
const bottomWhiteOverride = {
|
|
115
|
+
background: `
|
|
116
|
+
linear-gradient(
|
|
117
|
+
0deg,
|
|
118
|
+
${"var(--ds-elevation-surface-current, #FFF)"} 30%,
|
|
119
|
+
rgba(255, 255, 255, 0)
|
|
120
|
+
) bottom center`,
|
|
121
|
+
size: `100% 40px`,
|
|
122
|
+
attachment: `local`
|
|
123
|
+
};
|
|
124
|
+
const leftShadowGradient = {
|
|
125
|
+
background: `
|
|
126
|
+
linear-gradient(
|
|
127
|
+
90deg,
|
|
128
|
+
${shadowColor},
|
|
129
|
+
rgba(0, 0, 0, 0)
|
|
130
|
+
) left center`,
|
|
131
|
+
size: `14px 100%`,
|
|
132
|
+
attachment: `scroll`
|
|
133
|
+
};
|
|
134
|
+
const topShadowGradient = {
|
|
135
|
+
background: `
|
|
136
|
+
linear-gradient(
|
|
137
|
+
0deg,
|
|
138
|
+
rgba(0, 0, 0, 0),
|
|
139
|
+
${shadowColorLight}
|
|
140
|
+
) 0 52px`,
|
|
141
|
+
size: `100% 14px`,
|
|
142
|
+
attachment: `scroll`
|
|
143
|
+
};
|
|
144
|
+
const rightShadowGradient = {
|
|
145
|
+
background: `
|
|
146
|
+
linear-gradient(
|
|
147
|
+
90deg,
|
|
148
|
+
rgba(0, 0, 0, 0),
|
|
149
|
+
${shadowColor}
|
|
150
|
+
) right center`,
|
|
151
|
+
size: `14px 100%`,
|
|
152
|
+
attachment: `scroll`
|
|
153
|
+
};
|
|
154
|
+
const bottomShadowGradient = {
|
|
155
|
+
background: `
|
|
156
|
+
linear-gradient(
|
|
157
|
+
0deg,
|
|
158
|
+
${shadowColorLight},
|
|
159
|
+
rgba(0, 0, 0, 0)
|
|
160
|
+
) bottom center`,
|
|
161
|
+
size: `100% 10px`,
|
|
162
|
+
attachment: `scroll`
|
|
163
|
+
};
|
|
164
|
+
const shadows = [leftWhiteOverrideGradient, leftShadowGradient, rightWhiteOverrideGradient, rightShadowGradient, topWhiteOverrideGradient, topShadowGradient, bottomWhiteOverride, bottomShadowGradient];
|
|
165
|
+
export const scrollableContainerShadowsCssComponents = {
|
|
166
|
+
background: shadows.map(({
|
|
167
|
+
background
|
|
168
|
+
}) => background).join(','),
|
|
169
|
+
backgroundRepeat: 'no-repeat',
|
|
170
|
+
backgroundSize: shadows.map(({
|
|
171
|
+
size
|
|
172
|
+
}) => size).join(','),
|
|
173
|
+
backgroundAttachment: shadows.map(({
|
|
174
|
+
attachment
|
|
175
|
+
}) => attachment).join(',')
|
|
176
|
+
};
|
|
69
177
|
const scrollableContainerStyles = css({
|
|
70
178
|
overflow: 'auto',
|
|
71
|
-
boxSizing: 'border-box'
|
|
179
|
+
boxSizing: 'border-box',
|
|
180
|
+
background: scrollableContainerShadowsCssComponents.background,
|
|
181
|
+
backgroundRepeat: scrollableContainerShadowsCssComponents.backgroundRepeat,
|
|
182
|
+
backgroundSize: scrollableContainerShadowsCssComponents.backgroundSize,
|
|
183
|
+
backgroundAttachment: scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
72
184
|
});
|
|
73
185
|
const tableStyles = css({
|
|
74
186
|
// These styles are needed to prevent thead bottom border from scrolling away.
|
|
@@ -102,11 +214,11 @@ const BASE_WIDTH = 8;
|
|
|
102
214
|
const DEFAULT_WIDTH = BASE_WIDTH * 22;
|
|
103
215
|
export const COLUMN_MIN_WIDTH = BASE_WIDTH * 3;
|
|
104
216
|
const keyBasedWidthMap = {
|
|
105
|
-
priority: BASE_WIDTH *
|
|
217
|
+
priority: BASE_WIDTH * 5,
|
|
106
218
|
status: BASE_WIDTH * 18,
|
|
107
219
|
summary: BASE_WIDTH * 45,
|
|
108
220
|
description: BASE_WIDTH * 31.25,
|
|
109
|
-
type: BASE_WIDTH *
|
|
221
|
+
type: BASE_WIDTH * 5,
|
|
110
222
|
key: BASE_WIDTH * 13
|
|
111
223
|
};
|
|
112
224
|
function getDefaultColumnWidth(key, type) {
|
|
@@ -118,7 +230,7 @@ function getDefaultColumnWidth(key, type) {
|
|
|
118
230
|
case 'date':
|
|
119
231
|
return BASE_WIDTH * 14;
|
|
120
232
|
case 'icon':
|
|
121
|
-
return BASE_WIDTH *
|
|
233
|
+
return BASE_WIDTH * 5;
|
|
122
234
|
default:
|
|
123
235
|
return DEFAULT_WIDTH;
|
|
124
236
|
}
|
|
@@ -442,7 +554,7 @@ export const IssueLikeDataTableView = ({
|
|
|
442
554
|
if (key !== null && key !== void 0 && key.includes('loading')) {
|
|
443
555
|
loadingRowStyle = {
|
|
444
556
|
...loadingRowStyle,
|
|
445
|
-
paddingBlock: "var(--ds-space-100,
|
|
557
|
+
paddingBlock: "var(--ds-space-100, 8px)"
|
|
446
558
|
};
|
|
447
559
|
}
|
|
448
560
|
return jsx("td", {
|
|
@@ -5,12 +5,15 @@ export const FieldTextFontSize = '14px';
|
|
|
5
5
|
export const Table = styled.table`
|
|
6
6
|
width: 100%;
|
|
7
7
|
`;
|
|
8
|
+
const lineHeight = "var(--ds-font-lineHeight-300, 24px)";
|
|
9
|
+
const verticalPadding = "var(--ds-space-025, 2px)";
|
|
8
10
|
export const TableHeading = styled.th`
|
|
9
11
|
position: relative;
|
|
10
|
-
line-height: ${
|
|
12
|
+
line-height: ${lineHeight};
|
|
13
|
+
padding: ${verticalPadding} ${"var(--ds-space-050, 4px)"};
|
|
11
14
|
border-right: 0.5px solid ${`var(--ds-border, ${N40})`};
|
|
12
15
|
border-bottom: 2px solid ${`var(--ds-border, ${N40})`};
|
|
13
|
-
height: calc(
|
|
16
|
+
height: calc(${lineHeight} * 2 + ${verticalPadding} * 2);
|
|
14
17
|
vertical-align: bottom;
|
|
15
18
|
|
|
16
19
|
&.has-column-picker:nth-last-of-type(2) {
|
|
@@ -18,7 +21,7 @@ export const TableHeading = styled.th`
|
|
|
18
21
|
}
|
|
19
22
|
|
|
20
23
|
&:first-child {
|
|
21
|
-
padding-left: ${"var(--ds-space-
|
|
24
|
+
padding-left: ${"var(--ds-space-050, 4px)"};
|
|
22
25
|
}
|
|
23
26
|
|
|
24
27
|
&:last-child {
|
|
@@ -27,13 +30,12 @@ export const TableHeading = styled.th`
|
|
|
27
30
|
|
|
28
31
|
& [data-testid='datasource-header-content--container'] {
|
|
29
32
|
width: 100%;
|
|
30
|
-
padding: ${
|
|
33
|
+
padding: ${verticalPadding} ${"var(--ds-space-050, 4px)"};
|
|
31
34
|
display: -webkit-box;
|
|
32
35
|
-webkit-line-clamp: 2;
|
|
33
36
|
-webkit-box-orient: vertical;
|
|
34
37
|
white-space: normal;
|
|
35
38
|
overflow: hidden;
|
|
36
|
-
max-height: 2.5rem;
|
|
37
39
|
word-wrap: break-word;
|
|
38
40
|
|
|
39
41
|
&:hover {
|
|
@@ -22,7 +22,7 @@ import { AccessRequired } from '../../common/error-state/access-required';
|
|
|
22
22
|
import { ModalLoadingError } from '../../common/error-state/modal-loading-error';
|
|
23
23
|
import { NoInstancesView } from '../../common/error-state/no-instances';
|
|
24
24
|
import { NoResults } from '../../common/error-state/no-results';
|
|
25
|
-
import { EmptyState, IssueLikeDataTableView } from '../../issue-like-table';
|
|
25
|
+
import { EmptyState, IssueLikeDataTableView, scrollableContainerShadowsCssComponents } from '../../issue-like-table';
|
|
26
26
|
import LinkRenderType from '../../issue-like-table/render-type/link';
|
|
27
27
|
import { availableBasicFilterTypes } from '../basic-filters/ui';
|
|
28
28
|
import { InitialStateView } from '../initial-state-view';
|
|
@@ -46,7 +46,11 @@ const contentContainerStyles = css({
|
|
|
46
46
|
display: 'grid',
|
|
47
47
|
maxHeight: '420px',
|
|
48
48
|
overflow: 'auto',
|
|
49
|
-
borderBottom: `2px solid ${`var(--ds-background-accent-gray-subtler, ${N40})`}
|
|
49
|
+
borderBottom: `2px solid ${`var(--ds-background-accent-gray-subtler, ${N40})`}`,
|
|
50
|
+
background: scrollableContainerShadowsCssComponents.background,
|
|
51
|
+
backgroundRepeat: scrollableContainerShadowsCssComponents.backgroundRepeat,
|
|
52
|
+
backgroundSize: scrollableContainerShadowsCssComponents.backgroundSize,
|
|
53
|
+
backgroundAttachment: scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
50
54
|
});
|
|
51
55
|
const placeholderSmartLinkStyles = css({
|
|
52
56
|
backgroundColor: `var(--ds-surface-raised, ${N0})`,
|
|
@@ -15,14 +15,16 @@ const FooterWrapper = styled.div`
|
|
|
15
15
|
padding: 0 ${"var(--ds-space-200, 16px)"};
|
|
16
16
|
box-sizing: border-box;
|
|
17
17
|
border-radius: inherit;
|
|
18
|
+
border-top-left-radius: 0;
|
|
19
|
+
border-top-right-radius: 0;
|
|
18
20
|
background: ${`var(--ds-background-input, ${N0})`};
|
|
21
|
+
border-top: 2px solid ${`var(--ds-background-accent-gray-subtler, ${N40})`};
|
|
19
22
|
`;
|
|
20
23
|
const TopBorderWrapper = styled.div`
|
|
21
24
|
display: flex;
|
|
22
25
|
box-sizing: border-box;
|
|
23
26
|
justify-content: space-between;
|
|
24
27
|
padding: ${"var(--ds-space-250, 20px)"} 0;
|
|
25
|
-
border-top: 2px solid ${`var(--ds-background-accent-gray-subtler, ${N40})`};
|
|
26
28
|
`;
|
|
27
29
|
const ItemCounterWrapper = styled.div`
|
|
28
30
|
display: flex;
|
|
@@ -27,6 +27,7 @@ import i18nEN from '../../../i18n/en';
|
|
|
27
27
|
import { PermissionError } from '../../../services/cmdbService.utils';
|
|
28
28
|
import { AccessRequired } from '../../../ui/common/error-state/access-required';
|
|
29
29
|
import { ModalLoadingError } from '../../common/error-state/modal-loading-error';
|
|
30
|
+
import { scrollableContainerShadowsCssComponents } from '../../issue-like-table';
|
|
30
31
|
import { AssetsSearchContainer } from '../search-container';
|
|
31
32
|
import { AssetsSearchContainerLoading } from '../search-container/loading-state';
|
|
32
33
|
import { modalMessages } from './messages';
|
|
@@ -34,7 +35,11 @@ import { RenderAssetsContent } from './render-assets-content';
|
|
|
34
35
|
var modalBodyWrapperStyles = css({
|
|
35
36
|
display: 'grid',
|
|
36
37
|
height: '420px',
|
|
37
|
-
overflow: 'auto'
|
|
38
|
+
overflow: 'auto',
|
|
39
|
+
background: scrollableContainerShadowsCssComponents.background,
|
|
40
|
+
backgroundRepeat: scrollableContainerShadowsCssComponents.backgroundRepeat,
|
|
41
|
+
backgroundSize: scrollableContainerShadowsCssComponents.backgroundSize,
|
|
42
|
+
backgroundAttachment: scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
38
43
|
});
|
|
39
44
|
var modalBodyErrorWrapperStyles = css({
|
|
40
45
|
alignItems: 'center'
|
|
@@ -16,16 +16,17 @@ var SkeletonComponent = function SkeletonComponent(_ref) {
|
|
|
16
16
|
var tableBodyStyles = css({
|
|
17
17
|
borderBottom: 0
|
|
18
18
|
});
|
|
19
|
+
var padding = "var(--ds-space-100, 8px)".concat(" ", "var(--ds-space-100, 8px)");
|
|
19
20
|
var cellStyles = css({
|
|
20
|
-
|
|
21
|
+
padding: padding,
|
|
21
22
|
borderRight: "0.5px solid ".concat("var(--ds-border, ".concat(N40, ")")),
|
|
22
23
|
borderBottom: "0.5px solid ".concat("var(--ds-border, ".concat(N40, ")")),
|
|
23
24
|
'&:first-child': {
|
|
24
|
-
paddingLeft: "var(--ds-space-100,
|
|
25
|
+
paddingLeft: "var(--ds-space-100, 8px)"
|
|
25
26
|
},
|
|
26
27
|
'&:last-child': {
|
|
27
28
|
borderRight: 0,
|
|
28
|
-
paddingRight: "var(--ds-space-100,
|
|
29
|
+
paddingRight: "var(--ds-space-100, 8px)"
|
|
29
30
|
}
|
|
30
31
|
});
|
|
31
32
|
var baseColumns = [{
|
|
@@ -115,7 +116,8 @@ export default (function (_ref4) {
|
|
|
115
116
|
return jsx(TableHeading, {
|
|
116
117
|
key: key,
|
|
117
118
|
style: {
|
|
118
|
-
width: width
|
|
119
|
+
width: width,
|
|
120
|
+
padding: padding
|
|
119
121
|
}
|
|
120
122
|
}, jsx(Skeleton, {
|
|
121
123
|
appearance: "darkGray",
|
|
@@ -32,12 +32,12 @@ import { Table, TableHeading } from './styled';
|
|
|
32
32
|
import { useIsOnScreen } from './useIsOnScreen';
|
|
33
33
|
var tableSidePadding = "var(--ds-space-200, 16px)";
|
|
34
34
|
var tableHeadStyles = css({
|
|
35
|
-
background: "var(--ds-surface, #FFF)",
|
|
35
|
+
background: "var(--ds-elevation-surface-current, #FFF)",
|
|
36
36
|
position: 'sticky',
|
|
37
37
|
top: 0,
|
|
38
38
|
zIndex: stickyTableHeadersIndex
|
|
39
39
|
});
|
|
40
|
-
var ColumnPickerHeader = styled.th(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: 56px;\n z-index: 10;\n position: sticky;\n right: calc(-1 * ", ");\n background-color: ", ";\n border-bottom: 2px solid ", "; /* It is required to have solid (not half-transparent) color because of this gradient business below */\n\n padding-right: ", ";\n\n background: linear-gradient(\n 90deg,\n rgba(255, 255, 255, 0) 0%,\n ", " 10%\n );\n vertical-align: middle; /* Keeps dropdown button in the middle */\n &:last-of-type {\n padding-right: ", ";\n }\n text-align: right; /* In case when TH itself is bigger we want to keep picker at the right side */\n"])), tableSidePadding, "var(--ds-surface, #FFF)", "var(--ds-border, ".concat(N40, ")"), "var(--ds-space-100, 4px)", "var(--ds-surface, #FFF)", tableSidePadding);
|
|
40
|
+
var ColumnPickerHeader = styled.th(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: 56px;\n z-index: 10;\n position: sticky;\n right: calc(-1 * ", ");\n background-color: ", ";\n border-bottom: 2px solid ", "; /* It is required to have solid (not half-transparent) color because of this gradient business below */\n\n padding-right: ", ";\n\n background: linear-gradient(\n 90deg,\n rgba(255, 255, 255, 0) 0%,\n ", " 10%\n );\n vertical-align: middle; /* Keeps dropdown button in the middle */\n &:last-of-type {\n padding-right: ", ";\n }\n text-align: right; /* In case when TH itself is bigger we want to keep picker at the right side */\n"])), tableSidePadding, "var(--ds-elevation-surface-current, #FFF)", "var(--ds-border, ".concat(N40, ")"), "var(--ds-space-100, 4px)", "var(--ds-elevation-surface-current, #FFF)", tableSidePadding);
|
|
41
41
|
var truncatedCellStyles = css({
|
|
42
42
|
overflow: 'hidden',
|
|
43
43
|
textOverflow: 'ellipsis',
|
|
@@ -45,19 +45,94 @@ var truncatedCellStyles = css({
|
|
|
45
45
|
borderRight: "0.5px solid ".concat("var(--ds-border, ".concat(N40, ")")),
|
|
46
46
|
borderBottom: "0.5px solid ".concat("var(--ds-border, ".concat(N40, ")")),
|
|
47
47
|
'&:first-child': {
|
|
48
|
-
paddingLeft: "var(--ds-space-100,
|
|
48
|
+
paddingLeft: "var(--ds-space-100, 8px)"
|
|
49
49
|
},
|
|
50
50
|
'&:last-child': {
|
|
51
51
|
borderRight: 0,
|
|
52
|
-
paddingRight: "var(--ds-space-100,
|
|
52
|
+
paddingRight: "var(--ds-space-100, 8px)"
|
|
53
53
|
}
|
|
54
54
|
});
|
|
55
55
|
var tableContainerStyles = css({
|
|
56
|
-
borderRadius: 'inherit'
|
|
56
|
+
borderRadius: 'inherit',
|
|
57
|
+
borderBottomLeftRadius: 0,
|
|
58
|
+
borderBottomRightRadius: 0
|
|
57
59
|
});
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Following section deals with slight gradient shadows that we add
|
|
63
|
+
* on all four sides when there is more content in that direction.
|
|
64
|
+
*
|
|
65
|
+
* We do that by applying two gradients to the background -
|
|
66
|
+
* one is "static" ('local') and other is "sticky" ('scroll'). \
|
|
67
|
+
* "Static" one makes a white color gradient, that when window is at the end of scrollable area goes on top
|
|
68
|
+
* of "sticky" (gray) one, dominating and hence disabling sticky one.
|
|
69
|
+
*/
|
|
70
|
+
|
|
71
|
+
var shadowColor = "var(--ds-shadow-overflow-perimeter, rgba(0, 0, 0, 0.1))";
|
|
72
|
+
var shadowColorLight = "var(--ds-shadow-overflow-perimeter, rgba(0, 0, 0, 0.05))";
|
|
73
|
+
var leftWhiteOverrideGradient = {
|
|
74
|
+
background: "\n linear-gradient(\n 90deg,\n ".concat("var(--ds-elevation-surface-current, #FFF)", " 30%,\n rgba(255, 255, 255, 0)\n ) left center"),
|
|
75
|
+
size: "40px 100%",
|
|
76
|
+
attachment: "local"
|
|
77
|
+
};
|
|
78
|
+
var topWhiteOverrideGradient = {
|
|
79
|
+
background: "\n linear-gradient(\n 0deg,\n rgba(255, 255, 255, 0),\n ".concat("var(--ds-elevation-surface-current, #FFF)", " 30%\n ) top center"),
|
|
80
|
+
size: "100% 100px",
|
|
81
|
+
attachment: "local"
|
|
82
|
+
};
|
|
83
|
+
var rightWhiteOverrideGradient = {
|
|
84
|
+
background: "\n linear-gradient(\n 90deg,\n rgba(255, 255, 255, 0),\n ".concat("var(--ds-elevation-surface-current, #FFF)", " 70%\n ) right center"),
|
|
85
|
+
size: "40px 100%",
|
|
86
|
+
attachment: "local"
|
|
87
|
+
};
|
|
88
|
+
var bottomWhiteOverride = {
|
|
89
|
+
background: "\n linear-gradient(\n 0deg,\n ".concat("var(--ds-elevation-surface-current, #FFF)", " 30%,\n rgba(255, 255, 255, 0)\n ) bottom center"),
|
|
90
|
+
size: "100% 40px",
|
|
91
|
+
attachment: "local"
|
|
92
|
+
};
|
|
93
|
+
var leftShadowGradient = {
|
|
94
|
+
background: "\n linear-gradient(\n 90deg,\n ".concat(shadowColor, ",\n rgba(0, 0, 0, 0)\n ) left center"),
|
|
95
|
+
size: "14px 100%",
|
|
96
|
+
attachment: "scroll"
|
|
97
|
+
};
|
|
98
|
+
var topShadowGradient = {
|
|
99
|
+
background: "\n linear-gradient(\n 0deg,\n rgba(0, 0, 0, 0),\n ".concat(shadowColorLight, "\n ) 0 52px"),
|
|
100
|
+
size: "100% 14px",
|
|
101
|
+
attachment: "scroll"
|
|
102
|
+
};
|
|
103
|
+
var rightShadowGradient = {
|
|
104
|
+
background: "\n linear-gradient(\n 90deg,\n rgba(0, 0, 0, 0),\n ".concat(shadowColor, "\n ) right center"),
|
|
105
|
+
size: "14px 100%",
|
|
106
|
+
attachment: "scroll"
|
|
107
|
+
};
|
|
108
|
+
var bottomShadowGradient = {
|
|
109
|
+
background: "\n linear-gradient(\n 0deg,\n ".concat(shadowColorLight, ",\n rgba(0, 0, 0, 0)\n ) bottom center"),
|
|
110
|
+
size: "100% 10px",
|
|
111
|
+
attachment: "scroll"
|
|
112
|
+
};
|
|
113
|
+
var shadows = [leftWhiteOverrideGradient, leftShadowGradient, rightWhiteOverrideGradient, rightShadowGradient, topWhiteOverrideGradient, topShadowGradient, bottomWhiteOverride, bottomShadowGradient];
|
|
114
|
+
export var scrollableContainerShadowsCssComponents = {
|
|
115
|
+
background: shadows.map(function (_ref) {
|
|
116
|
+
var background = _ref.background;
|
|
117
|
+
return background;
|
|
118
|
+
}).join(','),
|
|
119
|
+
backgroundRepeat: 'no-repeat',
|
|
120
|
+
backgroundSize: shadows.map(function (_ref2) {
|
|
121
|
+
var size = _ref2.size;
|
|
122
|
+
return size;
|
|
123
|
+
}).join(','),
|
|
124
|
+
backgroundAttachment: shadows.map(function (_ref3) {
|
|
125
|
+
var attachment = _ref3.attachment;
|
|
126
|
+
return attachment;
|
|
127
|
+
}).join(',')
|
|
128
|
+
};
|
|
58
129
|
var scrollableContainerStyles = css({
|
|
59
130
|
overflow: 'auto',
|
|
60
|
-
boxSizing: 'border-box'
|
|
131
|
+
boxSizing: 'border-box',
|
|
132
|
+
background: scrollableContainerShadowsCssComponents.background,
|
|
133
|
+
backgroundRepeat: scrollableContainerShadowsCssComponents.backgroundRepeat,
|
|
134
|
+
backgroundSize: scrollableContainerShadowsCssComponents.backgroundSize,
|
|
135
|
+
backgroundAttachment: scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
61
136
|
});
|
|
62
137
|
var tableStyles = css({
|
|
63
138
|
// These styles are needed to prevent thead bottom border from scrolling away.
|
|
@@ -93,11 +168,11 @@ var BASE_WIDTH = 8;
|
|
|
93
168
|
var DEFAULT_WIDTH = BASE_WIDTH * 22;
|
|
94
169
|
export var COLUMN_MIN_WIDTH = BASE_WIDTH * 3;
|
|
95
170
|
var keyBasedWidthMap = {
|
|
96
|
-
priority: BASE_WIDTH *
|
|
171
|
+
priority: BASE_WIDTH * 5,
|
|
97
172
|
status: BASE_WIDTH * 18,
|
|
98
173
|
summary: BASE_WIDTH * 45,
|
|
99
174
|
description: BASE_WIDTH * 31.25,
|
|
100
|
-
type: BASE_WIDTH *
|
|
175
|
+
type: BASE_WIDTH * 5,
|
|
101
176
|
key: BASE_WIDTH * 13
|
|
102
177
|
};
|
|
103
178
|
function getDefaultColumnWidth(key, type) {
|
|
@@ -109,28 +184,28 @@ function getDefaultColumnWidth(key, type) {
|
|
|
109
184
|
case 'date':
|
|
110
185
|
return BASE_WIDTH * 14;
|
|
111
186
|
case 'icon':
|
|
112
|
-
return BASE_WIDTH *
|
|
187
|
+
return BASE_WIDTH * 5;
|
|
113
188
|
default:
|
|
114
189
|
return DEFAULT_WIDTH;
|
|
115
190
|
}
|
|
116
191
|
}
|
|
117
|
-
export var IssueLikeDataTableView = function IssueLikeDataTableView(
|
|
118
|
-
var testId =
|
|
119
|
-
onNextPage =
|
|
120
|
-
onLoadDatasourceDetails =
|
|
121
|
-
items =
|
|
122
|
-
columns =
|
|
123
|
-
|
|
124
|
-
renderItem =
|
|
125
|
-
visibleColumnKeys =
|
|
126
|
-
onVisibleColumnKeysChange =
|
|
127
|
-
columnCustomSizes =
|
|
128
|
-
onColumnResize =
|
|
129
|
-
status =
|
|
130
|
-
hasNextPage =
|
|
131
|
-
scrollableContainerHeight =
|
|
132
|
-
parentContainerRenderInstanceId =
|
|
133
|
-
extensionKey =
|
|
192
|
+
export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref4) {
|
|
193
|
+
var testId = _ref4.testId,
|
|
194
|
+
onNextPage = _ref4.onNextPage,
|
|
195
|
+
onLoadDatasourceDetails = _ref4.onLoadDatasourceDetails,
|
|
196
|
+
items = _ref4.items,
|
|
197
|
+
columns = _ref4.columns,
|
|
198
|
+
_ref4$renderItem = _ref4.renderItem,
|
|
199
|
+
renderItem = _ref4$renderItem === void 0 ? fallbackRenderType : _ref4$renderItem,
|
|
200
|
+
visibleColumnKeys = _ref4.visibleColumnKeys,
|
|
201
|
+
onVisibleColumnKeysChange = _ref4.onVisibleColumnKeysChange,
|
|
202
|
+
columnCustomSizes = _ref4.columnCustomSizes,
|
|
203
|
+
onColumnResize = _ref4.onColumnResize,
|
|
204
|
+
status = _ref4.status,
|
|
205
|
+
hasNextPage = _ref4.hasNextPage,
|
|
206
|
+
scrollableContainerHeight = _ref4.scrollableContainerHeight,
|
|
207
|
+
parentContainerRenderInstanceId = _ref4.parentContainerRenderInstanceId,
|
|
208
|
+
extensionKey = _ref4.extensionKey;
|
|
134
209
|
var tableId = useMemo(function () {
|
|
135
210
|
return Symbol('unique-id');
|
|
136
211
|
}, []);
|
|
@@ -165,8 +240,8 @@ export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref) {
|
|
|
165
240
|
}, [parentContainerRenderInstanceId, status]);
|
|
166
241
|
var visibleSortedColumns = useMemo(function () {
|
|
167
242
|
return visibleColumnKeys.map(function (visibleKey) {
|
|
168
|
-
return orderedColumns.find(function (
|
|
169
|
-
var key =
|
|
243
|
+
return orderedColumns.find(function (_ref5) {
|
|
244
|
+
var key = _ref5.key;
|
|
170
245
|
return visibleKey === key;
|
|
171
246
|
});
|
|
172
247
|
}).filter(Boolean);
|
|
@@ -181,10 +256,10 @@ export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref) {
|
|
|
181
256
|
return (columnCustomSizes === null || columnCustomSizes === void 0 ? void 0 : columnCustomSizes[key]) || getDefaultColumnWidth(key, type);
|
|
182
257
|
}, [columnCustomSizes]);
|
|
183
258
|
var headerColumns = useMemo(function () {
|
|
184
|
-
return visibleSortedColumns.map(function (
|
|
185
|
-
var key =
|
|
186
|
-
title =
|
|
187
|
-
type =
|
|
259
|
+
return visibleSortedColumns.map(function (_ref6) {
|
|
260
|
+
var key = _ref6.key,
|
|
261
|
+
title = _ref6.title,
|
|
262
|
+
type = _ref6.type;
|
|
188
263
|
return {
|
|
189
264
|
key: key,
|
|
190
265
|
content: title,
|
|
@@ -226,9 +301,9 @@ export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref) {
|
|
|
226
301
|
return;
|
|
227
302
|
}
|
|
228
303
|
return combine(monitorForElements({
|
|
229
|
-
onDragStart: function onDragStart(
|
|
230
|
-
var location =
|
|
231
|
-
source =
|
|
304
|
+
onDragStart: function onDragStart(_ref7) {
|
|
305
|
+
var location = _ref7.location,
|
|
306
|
+
source = _ref7.source;
|
|
232
307
|
initialAutoScrollerClientY.current = location.current.input.clientY;
|
|
233
308
|
if (source.data.type === 'table-header') {
|
|
234
309
|
var _containerRef$current;
|
|
@@ -244,9 +319,9 @@ export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref) {
|
|
|
244
319
|
});
|
|
245
320
|
}
|
|
246
321
|
},
|
|
247
|
-
onDrag: function onDrag(
|
|
248
|
-
var location =
|
|
249
|
-
source =
|
|
322
|
+
onDrag: function onDrag(_ref8) {
|
|
323
|
+
var location = _ref8.location,
|
|
324
|
+
source = _ref8.source;
|
|
250
325
|
if (source.data.type === 'table-header') {
|
|
251
326
|
var _containerRef$current2;
|
|
252
327
|
autoScroller.updateInput({
|
|
@@ -256,9 +331,9 @@ export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref) {
|
|
|
256
331
|
});
|
|
257
332
|
}
|
|
258
333
|
},
|
|
259
|
-
onDrop: function onDrop(
|
|
260
|
-
var source =
|
|
261
|
-
location =
|
|
334
|
+
onDrop: function onDrop(_ref9) {
|
|
335
|
+
var source = _ref9.source,
|
|
336
|
+
location = _ref9.location;
|
|
262
337
|
autoScroller.stop();
|
|
263
338
|
if (location.current.dropTargets.length === 0) {
|
|
264
339
|
return;
|
|
@@ -293,10 +368,10 @@ export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref) {
|
|
|
293
368
|
return items.map(function (newRowData, rowIndex) {
|
|
294
369
|
return {
|
|
295
370
|
key: "".concat(identityColumnKey && newRowData[identityColumnKey] && newRowData[identityColumnKey].data || rowIndex),
|
|
296
|
-
cells: visibleSortedColumns.map(function (
|
|
371
|
+
cells: visibleSortedColumns.map(function (_ref10) {
|
|
297
372
|
var _newRowData$key;
|
|
298
|
-
var key =
|
|
299
|
-
type =
|
|
373
|
+
var key = _ref10.key,
|
|
374
|
+
type = _ref10.type;
|
|
300
375
|
var value = ((_newRowData$key = newRowData[key]) === null || _newRowData$key === void 0 ? void 0 : _newRowData$key.data) || newRowData[key];
|
|
301
376
|
var values = Array.isArray(value) ? value : [value];
|
|
302
377
|
var content = values.map(function (value) {
|
|
@@ -397,10 +472,10 @@ export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref) {
|
|
|
397
472
|
css: [noDefaultBorderStyles, tableHeadStyles]
|
|
398
473
|
}, jsx("tr", {
|
|
399
474
|
ref: tableHeaderRowRef
|
|
400
|
-
}, headerColumns.map(function (
|
|
401
|
-
var key =
|
|
402
|
-
content =
|
|
403
|
-
width =
|
|
475
|
+
}, headerColumns.map(function (_ref12, cellIndex) {
|
|
476
|
+
var key = _ref12.key,
|
|
477
|
+
content = _ref12.content,
|
|
478
|
+
width = _ref12.width;
|
|
404
479
|
var heading = jsx(Tooltip, {
|
|
405
480
|
content: content,
|
|
406
481
|
tag: "span",
|
|
@@ -411,10 +486,10 @@ export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref) {
|
|
|
411
486
|
}, content));
|
|
412
487
|
if (onVisibleColumnKeysChange && hasData) {
|
|
413
488
|
var _containerRef$current3;
|
|
414
|
-
var previewRows = tableRows.map(function (
|
|
415
|
-
var cells =
|
|
416
|
-
var cell = cells.find(function (
|
|
417
|
-
var cellKey =
|
|
489
|
+
var previewRows = tableRows.map(function (_ref13) {
|
|
490
|
+
var cells = _ref13.cells;
|
|
491
|
+
var cell = cells.find(function (_ref14) {
|
|
492
|
+
var cellKey = _ref14.key;
|
|
418
493
|
return cellKey === key;
|
|
419
494
|
});
|
|
420
495
|
if (cell) {
|
|
@@ -456,18 +531,18 @@ export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref) {
|
|
|
456
531
|
})))), jsx("tbody", {
|
|
457
532
|
css: noDefaultBorderStyles,
|
|
458
533
|
"data-testid": testId && "".concat(testId, "--body")
|
|
459
|
-
}, rows.map(function (
|
|
460
|
-
var key =
|
|
461
|
-
cells =
|
|
462
|
-
ref =
|
|
534
|
+
}, rows.map(function (_ref15) {
|
|
535
|
+
var key = _ref15.key,
|
|
536
|
+
cells = _ref15.cells,
|
|
537
|
+
ref = _ref15.ref;
|
|
463
538
|
return jsx("tr", {
|
|
464
539
|
key: key,
|
|
465
540
|
"data-testid": testId && "".concat(testId, "--row-").concat(key),
|
|
466
541
|
ref: ref
|
|
467
|
-
}, cells.map(function (
|
|
468
|
-
var cellKey =
|
|
469
|
-
content =
|
|
470
|
-
width =
|
|
542
|
+
}, cells.map(function (_ref16, cellIndex) {
|
|
543
|
+
var cellKey = _ref16.key,
|
|
544
|
+
content = _ref16.content,
|
|
545
|
+
width = _ref16.width;
|
|
471
546
|
var loadingRowStyle = shouldUseWidth ? {
|
|
472
547
|
width: width
|
|
473
548
|
} : {
|
|
@@ -476,7 +551,7 @@ export var IssueLikeDataTableView = function IssueLikeDataTableView(_ref) {
|
|
|
476
551
|
// extra padding is required around skeleton loader to avoid vertical jumps when data loads
|
|
477
552
|
if (key !== null && key !== void 0 && key.includes('loading')) {
|
|
478
553
|
loadingRowStyle = _objectSpread(_objectSpread({}, loadingRowStyle), {}, {
|
|
479
|
-
paddingBlock: "var(--ds-space-100,
|
|
554
|
+
paddingBlock: "var(--ds-space-100, 8px)"
|
|
480
555
|
});
|
|
481
556
|
}
|
|
482
557
|
return jsx("td", {
|
|
@@ -5,4 +5,6 @@ import { N40 } from '@atlaskit/theme/colors';
|
|
|
5
5
|
export var ScrollableContainerHeight = 590;
|
|
6
6
|
export var FieldTextFontSize = '14px';
|
|
7
7
|
export var Table = styled.table(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: 100%;\n"])));
|
|
8
|
-
|
|
8
|
+
var lineHeight = "var(--ds-font-lineHeight-300, 24px)";
|
|
9
|
+
var verticalPadding = "var(--ds-space-025, 2px)";
|
|
10
|
+
export var TableHeading = styled.th(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n position: relative;\n line-height: ", ";\n padding: ", " ", ";\n border-right: 0.5px solid ", ";\n border-bottom: 2px solid ", ";\n height: calc(", " * 2 + ", " * 2);\n vertical-align: bottom;\n\n &.has-column-picker:nth-last-of-type(2) {\n border-right: 0;\n }\n\n &:first-child {\n padding-left: ", ";\n }\n\n &:last-child {\n border-right: 0;\n }\n\n & [data-testid='datasource-header-content--container'] {\n width: 100%;\n padding: ", " ", ";\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n white-space: normal;\n overflow: hidden;\n word-wrap: break-word;\n\n &:hover {\n background: ", ";\n border-radius: 3px;\n }\n }\n"])), lineHeight, verticalPadding, "var(--ds-space-050, 4px)", "var(--ds-border, ".concat(N40, ")"), "var(--ds-border, ".concat(N40, ")"), lineHeight, verticalPadding, "var(--ds-space-050, 4px)", verticalPadding, "var(--ds-space-050, 4px)", "var(--ds-background-input-hovered, #F7F8F9)");
|
|
@@ -29,7 +29,7 @@ import { AccessRequired } from '../../common/error-state/access-required';
|
|
|
29
29
|
import { ModalLoadingError } from '../../common/error-state/modal-loading-error';
|
|
30
30
|
import { NoInstancesView } from '../../common/error-state/no-instances';
|
|
31
31
|
import { NoResults } from '../../common/error-state/no-results';
|
|
32
|
-
import { EmptyState, IssueLikeDataTableView } from '../../issue-like-table';
|
|
32
|
+
import { EmptyState, IssueLikeDataTableView, scrollableContainerShadowsCssComponents } from '../../issue-like-table';
|
|
33
33
|
import LinkRenderType from '../../issue-like-table/render-type/link';
|
|
34
34
|
import { availableBasicFilterTypes } from '../basic-filters/ui';
|
|
35
35
|
import { InitialStateView } from '../initial-state-view';
|
|
@@ -53,7 +53,11 @@ var contentContainerStyles = css({
|
|
|
53
53
|
display: 'grid',
|
|
54
54
|
maxHeight: '420px',
|
|
55
55
|
overflow: 'auto',
|
|
56
|
-
borderBottom: "2px solid ".concat("var(--ds-background-accent-gray-subtler, ".concat(N40, ")"))
|
|
56
|
+
borderBottom: "2px solid ".concat("var(--ds-background-accent-gray-subtler, ".concat(N40, ")")),
|
|
57
|
+
background: scrollableContainerShadowsCssComponents.background,
|
|
58
|
+
backgroundRepeat: scrollableContainerShadowsCssComponents.backgroundRepeat,
|
|
59
|
+
backgroundSize: scrollableContainerShadowsCssComponents.backgroundSize,
|
|
60
|
+
backgroundAttachment: scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
57
61
|
});
|
|
58
62
|
var placeholderSmartLinkStyles = css({
|
|
59
63
|
backgroundColor: "var(--ds-surface-raised, ".concat(N0, ")"),
|
|
@@ -14,8 +14,8 @@ import LinkUrl from '@atlaskit/smart-card/link-url';
|
|
|
14
14
|
import { N0, N40, N800, N90 } from '@atlaskit/theme/colors';
|
|
15
15
|
import { footerMessages } from './messages';
|
|
16
16
|
import { SyncInfo } from './sync-info';
|
|
17
|
-
var FooterWrapper = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n padding: 0 ", ";\n box-sizing: border-box;\n border-radius: inherit;\n background: ", ";\n"])), "var(--ds-space-200, 16px)", "var(--ds-background-input, ".concat(N0, ")"));
|
|
18
|
-
var TopBorderWrapper = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n display: flex;\n box-sizing: border-box;\n justify-content: space-between;\n padding: ", " 0;\n
|
|
17
|
+
var FooterWrapper = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n padding: 0 ", ";\n box-sizing: border-box;\n border-radius: inherit;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n background: ", ";\n border-top: 2px solid ", ";\n"])), "var(--ds-space-200, 16px)", "var(--ds-background-input, ".concat(N0, ")"), "var(--ds-background-accent-gray-subtler, ".concat(N40, ")"));
|
|
18
|
+
var TopBorderWrapper = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n display: flex;\n box-sizing: border-box;\n justify-content: space-between;\n padding: ", " 0;\n"])), "var(--ds-space-250, 20px)");
|
|
19
19
|
var ItemCounterWrapper = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n display: flex;\n align-self: center;\n"])));
|
|
20
20
|
var SyncWrapper = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n color: ", ";\n"])), "var(--ds-text-accent-gray, ".concat(N90, ")"));
|
|
21
21
|
var SyncTextWrapper = styled.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n margin-right: 5px;\n font-size: 12px;\n"])));
|
|
@@ -3,6 +3,12 @@ import { Ref } from 'react';
|
|
|
3
3
|
import { jsx } from '@emotion/react';
|
|
4
4
|
import { DatasourceResponseSchemaProperty } from '@atlaskit/linking-types/datasource';
|
|
5
5
|
import { IssueLikeDataTableViewProps } from './types';
|
|
6
|
+
export declare const scrollableContainerShadowsCssComponents: {
|
|
7
|
+
background: string;
|
|
8
|
+
backgroundRepeat: string;
|
|
9
|
+
backgroundSize: string;
|
|
10
|
+
backgroundAttachment: string;
|
|
11
|
+
};
|
|
6
12
|
export interface RowType {
|
|
7
13
|
cells: Array<RowCellType>;
|
|
8
14
|
key?: string;
|
|
@@ -3,6 +3,12 @@ import { Ref } from 'react';
|
|
|
3
3
|
import { jsx } from '@emotion/react';
|
|
4
4
|
import { DatasourceResponseSchemaProperty } from '@atlaskit/linking-types/datasource';
|
|
5
5
|
import { IssueLikeDataTableViewProps } from './types';
|
|
6
|
+
export declare const scrollableContainerShadowsCssComponents: {
|
|
7
|
+
background: string;
|
|
8
|
+
backgroundRepeat: string;
|
|
9
|
+
backgroundSize: string;
|
|
10
|
+
backgroundAttachment: string;
|
|
11
|
+
};
|
|
6
12
|
export interface RowType {
|
|
7
13
|
cells: Array<RowCellType>;
|
|
8
14
|
key?: string;
|