@atlaskit/link-datasource 1.19.6 → 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 +13 -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/analytics/generated/analytics.types.d.ts +5 -5
- package/dist/types/ui/issue-like-table/index.d.ts +6 -0
- package/dist/types-ts4.5/analytics/generated/analytics.types.d.ts +5 -5
- package/dist/types-ts4.5/ui/issue-like-table/index.d.ts +6 -0
- package/package.json +2 -2
|
@@ -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)");
|