@atlaskit/link-datasource 1.24.6 → 1.24.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/ui/assets-modal/modal/render-assets-content/initial-state-view/index.js +2 -1
- package/dist/cjs/ui/common/error-state/access-required.js +2 -1
- package/dist/cjs/ui/common/error-state/loading-error.js +2 -1
- package/dist/cjs/ui/common/error-state/messages.js +0 -11
- package/dist/cjs/ui/common/error-state/modal-loading-error.js +5 -13
- package/dist/cjs/ui/common/error-state/no-instances.js +2 -1
- package/dist/cjs/ui/common/error-state/no-results.js +2 -1
- package/dist/cjs/ui/common/initial-state-view/index.js +2 -1
- package/dist/cjs/ui/common/modal/content-container/index.js +35 -0
- package/dist/cjs/ui/confluence-search-modal/confluence-search-container/index.js +48 -0
- package/dist/cjs/ui/confluence-search-modal/confluence-search-container/messages.js +14 -0
- package/dist/cjs/ui/confluence-search-modal/modal/index.js +206 -42
- package/dist/cjs/ui/confluence-search-modal/modal/messages.js +4 -4
- package/dist/cjs/ui/confluence-search-modal/types.js +5 -0
- package/dist/cjs/ui/issue-like-table/column-picker/concatenated-menu-list.js +2 -1
- package/dist/cjs/ui/issue-like-table/drag-column-preview.js +2 -1
- package/dist/cjs/ui/issue-like-table/index.js +4 -1
- package/dist/cjs/ui/issue-like-table/styled.js +2 -1
- package/dist/cjs/ui/jira-issues-modal/modal/index.js +14 -21
- package/dist/cjs/ui/jira-issues-modal/modal/messages.js +5 -0
- package/dist/cjs/ui/jira-issues-modal/mode-switcher/index.js +1 -0
- package/dist/es2019/ui/assets-modal/modal/render-assets-content/initial-state-view/index.js +2 -1
- package/dist/es2019/ui/common/error-state/access-required.js +2 -1
- package/dist/es2019/ui/common/error-state/loading-error.js +2 -1
- package/dist/es2019/ui/common/error-state/messages.js +0 -11
- package/dist/es2019/ui/common/error-state/modal-loading-error.js +4 -10
- package/dist/es2019/ui/common/error-state/no-instances.js +2 -1
- package/dist/es2019/ui/common/error-state/no-results.js +2 -1
- package/dist/es2019/ui/common/initial-state-view/index.js +2 -1
- package/dist/es2019/ui/common/modal/content-container/index.js +30 -0
- package/dist/es2019/ui/confluence-search-modal/confluence-search-container/index.js +35 -0
- package/dist/es2019/ui/confluence-search-modal/confluence-search-container/messages.js +8 -0
- package/dist/es2019/ui/confluence-search-modal/modal/index.js +191 -41
- package/dist/es2019/ui/confluence-search-modal/modal/messages.js +4 -4
- package/dist/es2019/ui/confluence-search-modal/types.js +1 -0
- package/dist/es2019/ui/issue-like-table/column-picker/concatenated-menu-list.js +2 -1
- package/dist/es2019/ui/issue-like-table/drag-column-preview.js +2 -1
- package/dist/es2019/ui/issue-like-table/index.js +7 -1
- package/dist/es2019/ui/issue-like-table/styled.js +2 -1
- package/dist/es2019/ui/jira-issues-modal/modal/index.js +14 -23
- package/dist/es2019/ui/jira-issues-modal/modal/messages.js +5 -0
- package/dist/es2019/ui/jira-issues-modal/mode-switcher/index.js +1 -0
- package/dist/esm/ui/assets-modal/modal/render-assets-content/initial-state-view/index.js +2 -1
- package/dist/esm/ui/common/error-state/access-required.js +2 -1
- package/dist/esm/ui/common/error-state/loading-error.js +2 -1
- package/dist/esm/ui/common/error-state/messages.js +0 -11
- package/dist/esm/ui/common/error-state/modal-loading-error.js +5 -12
- package/dist/esm/ui/common/error-state/no-instances.js +2 -1
- package/dist/esm/ui/common/error-state/no-results.js +2 -1
- package/dist/esm/ui/common/initial-state-view/index.js +2 -1
- package/dist/esm/ui/common/modal/content-container/index.js +29 -0
- package/dist/esm/ui/confluence-search-modal/confluence-search-container/index.js +38 -0
- package/dist/esm/ui/confluence-search-modal/confluence-search-container/messages.js +8 -0
- package/dist/esm/ui/confluence-search-modal/modal/index.js +210 -44
- package/dist/esm/ui/confluence-search-modal/modal/messages.js +4 -4
- package/dist/esm/ui/confluence-search-modal/types.js +1 -0
- package/dist/esm/ui/issue-like-table/column-picker/concatenated-menu-list.js +2 -1
- package/dist/esm/ui/issue-like-table/drag-column-preview.js +2 -1
- package/dist/esm/ui/issue-like-table/index.js +4 -1
- package/dist/esm/ui/issue-like-table/styled.js +2 -1
- package/dist/esm/ui/jira-issues-modal/modal/index.js +16 -23
- package/dist/esm/ui/jira-issues-modal/modal/messages.js +5 -0
- package/dist/esm/ui/jira-issues-modal/mode-switcher/index.js +1 -0
- package/dist/types/common/types.d.ts +3 -6
- package/dist/types/ui/common/error-state/messages.d.ts +0 -10
- package/dist/types/ui/common/error-state/modal-loading-error.d.ts +3 -2
- package/dist/types/ui/common/modal/content-container/index.d.ts +8 -0
- package/dist/types/ui/confluence-search-modal/confluence-search-container/index.d.ts +9 -0
- package/dist/types/ui/confluence-search-modal/confluence-search-container/messages.d.ts +7 -0
- package/dist/types/ui/confluence-search-modal/index.d.ts +2 -2
- package/dist/types/ui/confluence-search-modal/modal/index.d.ts +2 -2
- package/dist/types/ui/confluence-search-modal/modal/messages.d.ts +1 -1
- package/dist/types/ui/confluence-search-modal/types.d.ts +12 -0
- package/dist/types/ui/jira-issues-modal/index.d.ts +2 -2
- package/dist/types/ui/jira-issues-modal/modal/index.d.ts +3 -13
- package/dist/types/ui/jira-issues-modal/modal/messages.d.ts +5 -0
- package/dist/types/ui/jira-issues-modal/types.d.ts +5 -1
- package/dist/types-ts4.5/common/types.d.ts +3 -6
- package/dist/types-ts4.5/ui/common/error-state/messages.d.ts +0 -10
- package/dist/types-ts4.5/ui/common/error-state/modal-loading-error.d.ts +3 -2
- package/dist/types-ts4.5/ui/common/modal/content-container/index.d.ts +8 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/confluence-search-container/index.d.ts +9 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/confluence-search-container/messages.d.ts +7 -0
- package/dist/types-ts4.5/ui/confluence-search-modal/index.d.ts +2 -2
- package/dist/types-ts4.5/ui/confluence-search-modal/modal/index.d.ts +2 -2
- package/dist/types-ts4.5/ui/confluence-search-modal/modal/messages.d.ts +1 -1
- package/dist/types-ts4.5/ui/confluence-search-modal/types.d.ts +12 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/index.d.ts +2 -2
- package/dist/types-ts4.5/ui/jira-issues-modal/modal/index.d.ts +3 -13
- package/dist/types-ts4.5/ui/jira-issues-modal/modal/messages.d.ts +5 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/types.d.ts +5 -1
- package/examples-helpers/buildConfluenceSearchTable.tsx +77 -0
- package/examples-helpers/mockSmartLinkData.ts +44 -0
- package/examples-helpers/smartLinkCustomClient.ts +31 -20
- package/package.json +3 -3
|
@@ -1,44 +1,81 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
1
2
|
/** @jsx jsx */
|
|
2
|
-
import { Fragment, useCallback, useEffect, useMemo, useState } from 'react';
|
|
3
|
+
import { Fragment, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
3
4
|
import { jsx } from '@emotion/react';
|
|
4
|
-
import { FormattedMessage } from 'react-intl-next';
|
|
5
|
+
import { FormattedMessage, FormattedNumber } from 'react-intl-next';
|
|
6
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
5
7
|
import Button from '@atlaskit/button/standard-button';
|
|
6
8
|
import { IntlMessagesProvider } from '@atlaskit/intl-messages-provider';
|
|
7
9
|
import Modal, { ModalBody, ModalFooter, ModalHeader, ModalTitle } from '@atlaskit/modal-dialog';
|
|
10
|
+
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
8
11
|
import { Box, xcss } from '@atlaskit/primitives';
|
|
9
|
-
import
|
|
12
|
+
import LinkUrl from '@atlaskit/smart-card/link-url';
|
|
13
|
+
import { N800 } from '@atlaskit/theme/colors';
|
|
10
14
|
import { fetchMessagesForLocale } from '../../../common/utils/locale/fetch-messages-for-locale';
|
|
15
|
+
import { useDatasourceTableState } from '../../../hooks/useDatasourceTableState';
|
|
11
16
|
import i18nEN from '../../../i18n/en';
|
|
12
17
|
import { getAvailableSites } from '../../../services/getAvailableSites';
|
|
18
|
+
import { AccessRequired } from '../../common/error-state/access-required';
|
|
19
|
+
import { ModalLoadingError } from '../../common/error-state/modal-loading-error';
|
|
13
20
|
import { NoInstancesView } from '../../common/error-state/no-instances';
|
|
21
|
+
import { NoResults } from '../../common/error-state/no-results';
|
|
14
22
|
import { InitialStateView } from '../../common/initial-state-view';
|
|
15
|
-
import {
|
|
23
|
+
import { ContentContainer } from '../../common/modal/content-container';
|
|
16
24
|
import { SiteSelector } from '../../common/modal/site-selector';
|
|
17
|
-
import {
|
|
25
|
+
import { EmptyState, IssueLikeDataTableView } from '../../issue-like-table';
|
|
26
|
+
import ConfluenceSearchContainer from '../confluence-search-container';
|
|
18
27
|
import { ConfluenceSearchInitialStateSVG } from './confluence-search-initial-state-svg';
|
|
19
28
|
import { confluenceSearchModalMessages } from './messages';
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
backgroundSize: scrollableContainerShadowsCssComponents.backgroundSize,
|
|
29
|
-
backgroundAttachment: scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
29
|
+
const inputContainerStyles = xcss({
|
|
30
|
+
alignItems: 'baseline',
|
|
31
|
+
display: 'flex',
|
|
32
|
+
minHeight: '72px'
|
|
33
|
+
});
|
|
34
|
+
const searchCountStyles = xcss({
|
|
35
|
+
flex: 1,
|
|
36
|
+
fontWeight: 600
|
|
30
37
|
});
|
|
31
38
|
export const ConfluenceSearchConfigModal = props => {
|
|
32
39
|
const {
|
|
40
|
+
current: modalRenderInstanceId
|
|
41
|
+
} = useRef(uuidv4());
|
|
42
|
+
const {
|
|
43
|
+
datasourceId,
|
|
44
|
+
columnCustomSizes: initialColumnCustomSizes,
|
|
45
|
+
wrappedColumnKeys: initialWrappedColumnKeys,
|
|
46
|
+
onCancel,
|
|
33
47
|
parameters: initialParameters,
|
|
34
|
-
|
|
48
|
+
url: urlBeingEdited,
|
|
49
|
+
visibleColumnKeys: initialVisibleColumnKeys
|
|
35
50
|
} = props;
|
|
36
51
|
const [availableSites, setAvailableSites] = useState(undefined);
|
|
37
52
|
const [cloudId, setCloudId] = useState(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.cloudId);
|
|
38
|
-
const [
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
|
|
53
|
+
const [searchString, setSearchString] = useState(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.searchString);
|
|
54
|
+
const [visibleColumnKeys, setVisibleColumnKeys] = useState(initialVisibleColumnKeys);
|
|
55
|
+
|
|
56
|
+
// TODO: further refactoring in EDM-9573
|
|
57
|
+
// https://stash.atlassian.com/projects/ATLASSIAN/repos/atlassian-frontend-monorepo/pull-requests/82725/overview?commentId=6829210
|
|
58
|
+
const parameters = useMemo(() => cloudId ? {
|
|
59
|
+
cloudId,
|
|
60
|
+
searchString
|
|
61
|
+
} : undefined, [cloudId, searchString /** Add more parameters when more filters are added */]);
|
|
62
|
+
const isParametersSet = useMemo(() => !!cloudId && Object.values(parameters !== null && parameters !== void 0 ? parameters : {}).filter(v => v !== undefined).length > 1, [cloudId, parameters]);
|
|
63
|
+
const {
|
|
64
|
+
reset,
|
|
65
|
+
status,
|
|
66
|
+
onNextPage,
|
|
67
|
+
responseItems,
|
|
68
|
+
hasNextPage,
|
|
69
|
+
columns,
|
|
70
|
+
defaultVisibleColumnKeys,
|
|
71
|
+
loadDatasourceDetails,
|
|
72
|
+
extensionKey = null,
|
|
73
|
+
totalCount
|
|
74
|
+
} = useDatasourceTableState({
|
|
75
|
+
datasourceId,
|
|
76
|
+
parameters: isParametersSet ? parameters : undefined,
|
|
77
|
+
fieldKeys: visibleColumnKeys
|
|
78
|
+
});
|
|
42
79
|
const hasNoConfluenceSites = availableSites && availableSites.length === 0;
|
|
43
80
|
const selectedConfluenceSite = useMemo(() => {
|
|
44
81
|
if (cloudId) {
|
|
@@ -51,10 +88,24 @@ export const ConfluenceSearchConfigModal = props => {
|
|
|
51
88
|
return (availableSites === null || availableSites === void 0 ? void 0 : availableSites.find(confluenceSite => confluenceSite.url === currentlyLoggedInSiteUrl)) || (availableSites === null || availableSites === void 0 ? void 0 : availableSites[0]);
|
|
52
89
|
}
|
|
53
90
|
}, [availableSites, cloudId]);
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
91
|
+
|
|
92
|
+
// TODO: further refactoring in EDM-9573
|
|
93
|
+
// https://stash.atlassian.com/projects/ATLASSIAN/repos/atlassian-frontend-monorepo/pull-requests/82725/overview?commentId=6828283
|
|
94
|
+
useEffect(() => {
|
|
95
|
+
if (selectedConfluenceSite && (!cloudId || cloudId !== selectedConfluenceSite.cloudId)) {
|
|
96
|
+
setCloudId(selectedConfluenceSite.cloudId);
|
|
97
|
+
}
|
|
98
|
+
}, [cloudId, selectedConfluenceSite]);
|
|
99
|
+
|
|
100
|
+
// TODO: further refactoring in EDM-9573
|
|
101
|
+
// https://stash.atlassian.com/projects/ATLASSIAN/repos/atlassian-frontend-monorepo/pull-requests/82725/overview?commentId=6829171
|
|
102
|
+
const onSiteSelection = useCallback(site => {
|
|
103
|
+
setSearchString(undefined);
|
|
104
|
+
setCloudId(site.cloudId);
|
|
105
|
+
reset({
|
|
106
|
+
shouldForceRequest: true
|
|
107
|
+
});
|
|
108
|
+
}, [reset]);
|
|
58
109
|
useEffect(() => {
|
|
59
110
|
const fetchSiteDisplayNames = async () => {
|
|
60
111
|
const confluenceSites = await getAvailableSites('confluence');
|
|
@@ -64,6 +115,96 @@ export const ConfluenceSearchConfigModal = props => {
|
|
|
64
115
|
void fetchSiteDisplayNames();
|
|
65
116
|
}, []);
|
|
66
117
|
const siteSelectorLabel = availableSites && availableSites.length > 1 ? confluenceSearchModalMessages.insertIssuesTitleManySites : confluenceSearchModalMessages.insertIssuesTitle;
|
|
118
|
+
const [columnCustomSizes, setColumnCustomSizes] = useState(initialColumnCustomSizes);
|
|
119
|
+
const onColumnResize = useCallback((key, width) => {
|
|
120
|
+
setColumnCustomSizes({
|
|
121
|
+
...columnCustomSizes,
|
|
122
|
+
[key]: width
|
|
123
|
+
});
|
|
124
|
+
}, [columnCustomSizes]);
|
|
125
|
+
const [wrappedColumnKeys, setWrappedColumnKeys] = useState(initialWrappedColumnKeys);
|
|
126
|
+
const onWrappedColumnChange = useCallback((key, isWrapped) => {
|
|
127
|
+
const set = new Set(wrappedColumnKeys);
|
|
128
|
+
if (isWrapped) {
|
|
129
|
+
set.add(key);
|
|
130
|
+
} else {
|
|
131
|
+
set.delete(key);
|
|
132
|
+
}
|
|
133
|
+
setWrappedColumnKeys(Array.from(set));
|
|
134
|
+
}, [wrappedColumnKeys]);
|
|
135
|
+
|
|
136
|
+
// TODO: further refactoring in EDM-9573
|
|
137
|
+
// https://stash.atlassian.com/projects/ATLASSIAN/repos/atlassian-frontend-monorepo/pull-requests/82725/overview?commentId=6798258
|
|
138
|
+
const confluenceSearchTable = useMemo(() => jsx(ContentContainer, {
|
|
139
|
+
withTableBorder: true
|
|
140
|
+
}, jsx(IssueLikeDataTableView, {
|
|
141
|
+
testId: "confluence-search-datasource-table",
|
|
142
|
+
status: status,
|
|
143
|
+
columns: columns,
|
|
144
|
+
items: responseItems,
|
|
145
|
+
hasNextPage: hasNextPage,
|
|
146
|
+
visibleColumnKeys: visibleColumnKeys || defaultVisibleColumnKeys,
|
|
147
|
+
onNextPage: onNextPage,
|
|
148
|
+
onLoadDatasourceDetails: loadDatasourceDetails,
|
|
149
|
+
onVisibleColumnKeysChange: setVisibleColumnKeys,
|
|
150
|
+
parentContainerRenderInstanceId: modalRenderInstanceId,
|
|
151
|
+
extensionKey: extensionKey,
|
|
152
|
+
columnCustomSizes: columnCustomSizes,
|
|
153
|
+
onColumnResize: onColumnResize,
|
|
154
|
+
wrappedColumnKeys: wrappedColumnKeys,
|
|
155
|
+
onWrappedColumnChange: getBooleanFF('platform.linking-platform.datasource-word_wrap') ? onWrappedColumnChange : undefined
|
|
156
|
+
})), [status, columns, responseItems, hasNextPage, visibleColumnKeys, defaultVisibleColumnKeys, onNextPage, loadDatasourceDetails, setVisibleColumnKeys, modalRenderInstanceId, extensionKey, columnCustomSizes, onColumnResize, wrappedColumnKeys, onWrappedColumnChange]);
|
|
157
|
+
const resolvedWithNoResults = status === 'resolved' && !responseItems.length;
|
|
158
|
+
const hasConfluenceSearchParams = selectedConfluenceSite && searchString;
|
|
159
|
+
const selectedConfluenceSiteUrl = selectedConfluenceSite === null || selectedConfluenceSite === void 0 ? void 0 : selectedConfluenceSite.url;
|
|
160
|
+
const confluenceSearchUrl = selectedConfluenceSiteUrl && searchString !== undefined && `${selectedConfluenceSiteUrl}/wiki/search/?text=${encodeURI(searchString)}`;
|
|
161
|
+
const renderModalContent = useCallback(() => {
|
|
162
|
+
if (status === 'rejected') {
|
|
163
|
+
return jsx(ModalLoadingError, null);
|
|
164
|
+
} else if (status === 'unauthorized') {
|
|
165
|
+
return jsx(AccessRequired, {
|
|
166
|
+
url: selectedConfluenceSiteUrl || urlBeingEdited
|
|
167
|
+
});
|
|
168
|
+
} else if (resolvedWithNoResults || status === 'forbidden') {
|
|
169
|
+
return jsx(NoResults, null);
|
|
170
|
+
} else if (status === 'empty' || !columns.length) {
|
|
171
|
+
// persist the empty state when making the initial /data request which contains the columns
|
|
172
|
+
if (hasConfluenceSearchParams !== undefined) {
|
|
173
|
+
return jsx(EmptyState, {
|
|
174
|
+
testId: `confluence-search-datasource-modal--empty-state`
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
return jsx(ContentContainer, null, jsx(InitialStateView, {
|
|
178
|
+
icon: jsx(ConfluenceSearchInitialStateSVG, null),
|
|
179
|
+
title: confluenceSearchModalMessages.initialViewSearchTitle,
|
|
180
|
+
description: confluenceSearchModalMessages.initialViewSearchDescription
|
|
181
|
+
}));
|
|
182
|
+
}
|
|
183
|
+
return confluenceSearchTable;
|
|
184
|
+
}, [columns.length, selectedConfluenceSiteUrl, confluenceSearchTable, resolvedWithNoResults, status, urlBeingEdited, hasConfluenceSearchParams]);
|
|
185
|
+
const shouldShowResultsCount = !!totalCount && totalCount !== 1;
|
|
186
|
+
const onInsertPressed = useCallback(() => {
|
|
187
|
+
// eslint-disable-next-line no-console
|
|
188
|
+
// TODO: Implement onInsert in EDM-9412
|
|
189
|
+
/**
|
|
190
|
+
* onInsert(
|
|
191
|
+
{
|
|
192
|
+
type: 'inlineCard',
|
|
193
|
+
attrs: {
|
|
194
|
+
url,
|
|
195
|
+
},
|
|
196
|
+
} as InlineCardAdf,
|
|
197
|
+
consumerEvent,
|
|
198
|
+
);
|
|
199
|
+
*/
|
|
200
|
+
}, []);
|
|
201
|
+
const onSearch = useCallback(newSearchString => {
|
|
202
|
+
setSearchString(newSearchString);
|
|
203
|
+
reset({
|
|
204
|
+
shouldForceRequest: true
|
|
205
|
+
});
|
|
206
|
+
}, [reset]);
|
|
207
|
+
const isInsertDisabled = !isParametersSet || status === 'rejected' || status === 'unauthorized' || status === 'loading';
|
|
67
208
|
return jsx(IntlMessagesProvider, {
|
|
68
209
|
defaultMessages: i18nEN,
|
|
69
210
|
loaderFn: fetchMessagesForLocale
|
|
@@ -78,31 +219,40 @@ export const ConfluenceSearchConfigModal = props => {
|
|
|
78
219
|
selectedSite: selectedConfluenceSite,
|
|
79
220
|
testId: "confluence-search-datasource-modal--site-selector",
|
|
80
221
|
label: siteSelectorLabel
|
|
81
|
-
}))), jsx(ModalBody, null, !hasNoConfluenceSites ? jsx(Fragment, null, jsx(
|
|
82
|
-
|
|
222
|
+
}))), jsx(ModalBody, null, !hasNoConfluenceSites ? jsx(Fragment, null, jsx(Box, {
|
|
223
|
+
xcss: inputContainerStyles
|
|
224
|
+
}, jsx(ConfluenceSearchContainer, {
|
|
225
|
+
cloudId: cloudId,
|
|
83
226
|
isSearching: status === 'loading',
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
placeholder: confluenceSearchModalMessages.searchLabel,
|
|
88
|
-
fullWidth: true
|
|
89
|
-
}), jsx(Box, {
|
|
90
|
-
xcss: contentContainerStyles
|
|
91
|
-
}, jsx(InitialStateView, {
|
|
92
|
-
icon: jsx(ConfluenceSearchInitialStateSVG, null),
|
|
93
|
-
title: confluenceSearchModalMessages.initialViewSearchTitle,
|
|
94
|
-
description: confluenceSearchModalMessages.initialViewSearchDescription
|
|
95
|
-
}))) : jsx(NoInstancesView, {
|
|
227
|
+
onSearch: onSearch,
|
|
228
|
+
initialSearchValue: initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.searchString
|
|
229
|
+
})), renderModalContent()) : jsx(NoInstancesView, {
|
|
96
230
|
title: confluenceSearchModalMessages.noAccessToConfluenceSitesTitle,
|
|
97
231
|
description: confluenceSearchModalMessages.noAccessToConfluenceSitesDescription,
|
|
98
232
|
testId: 'no-confluence-instances-content'
|
|
99
|
-
})), jsx(ModalFooter, null, jsx(
|
|
233
|
+
})), jsx(ModalFooter, null, shouldShowResultsCount && confluenceSearchUrl && jsx(Box, {
|
|
234
|
+
testId: "confluence-search-datasource-modal-total-results-count",
|
|
235
|
+
xcss: searchCountStyles
|
|
236
|
+
}, jsx(LinkUrl, {
|
|
237
|
+
href: confluenceSearchUrl,
|
|
238
|
+
target: "_blank",
|
|
239
|
+
testId: "item-count-url",
|
|
240
|
+
style: {
|
|
241
|
+
color: `var(--ds-text-accent-gray, ${N800})`
|
|
242
|
+
}
|
|
243
|
+
}, jsx(FormattedNumber, {
|
|
244
|
+
value: totalCount
|
|
245
|
+
}), ' ', jsx(FormattedMessage, _extends({}, confluenceSearchModalMessages.searchCountText, {
|
|
246
|
+
values: {
|
|
247
|
+
totalCount
|
|
248
|
+
}
|
|
249
|
+
})))), jsx(Button, {
|
|
100
250
|
appearance: "default",
|
|
101
251
|
onClick: onCancel
|
|
102
252
|
}, jsx(FormattedMessage, confluenceSearchModalMessages.cancelButtonText)), !hasNoConfluenceSites && jsx(Button, {
|
|
103
253
|
appearance: "primary",
|
|
104
|
-
onClick:
|
|
105
|
-
isDisabled:
|
|
254
|
+
onClick: onInsertPressed,
|
|
255
|
+
isDisabled: isInsertDisabled,
|
|
106
256
|
testId: "confluence-search-datasource-modal--insert-button"
|
|
107
257
|
}, jsx(FormattedMessage, confluenceSearchModalMessages.insertResultsButtonText)))));
|
|
108
258
|
};
|
|
@@ -10,10 +10,10 @@ export const confluenceSearchModalMessages = defineMessages({
|
|
|
10
10
|
description: 'Button text to insert the displayed content',
|
|
11
11
|
defaultMessage: 'Insert results'
|
|
12
12
|
},
|
|
13
|
-
|
|
14
|
-
id: 'linkDataSource.confluence-search.configmodal.
|
|
15
|
-
description: '
|
|
16
|
-
defaultMessage: '
|
|
13
|
+
searchCountText: {
|
|
14
|
+
id: 'linkDataSource.confluence-search.configmodal.resultsCountText',
|
|
15
|
+
description: 'Text that appears after search count number.',
|
|
16
|
+
defaultMessage: '{totalCount, plural, one {result} other {results}}'
|
|
17
17
|
},
|
|
18
18
|
insertIssuesTitle: {
|
|
19
19
|
id: 'linkDataSource.confluence-search.configmodal.insertConfluenceTitle',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -3,11 +3,12 @@ import _extends from "@babel/runtime/helpers/extends";
|
|
|
3
3
|
import { css, jsx } from '@emotion/react';
|
|
4
4
|
import { FormattedMessage } from 'react-intl-next';
|
|
5
5
|
import { components } from '@atlaskit/select';
|
|
6
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
6
7
|
import { columnPickerMessages } from './messages';
|
|
7
8
|
export const SELECT_ITEMS_MAXIMUM_THRESHOLD = 200;
|
|
8
9
|
const messageStyles = css({
|
|
9
10
|
color: "var(--ds-text-subtle, #44546F)",
|
|
10
|
-
font:
|
|
11
|
+
font: `var(--ds-font-body-small, ${fontFallback.body.small})`,
|
|
11
12
|
fontWeight: "var(--ds-font-weight-regular, 400)"
|
|
12
13
|
});
|
|
13
14
|
export const ConcatenatedMenuList = ({
|
|
@@ -3,6 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import { css, jsx } from '@emotion/react';
|
|
4
4
|
import styled from '@emotion/styled';
|
|
5
5
|
import { N40 } from '@atlaskit/theme/colors';
|
|
6
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
6
7
|
import { TableHeading } from './styled';
|
|
7
8
|
const maxWidth = '200px';
|
|
8
9
|
const firstLastChildOverride = `
|
|
@@ -32,7 +33,7 @@ const tableStyles = css({
|
|
|
32
33
|
background: "var(--ds-surface, #FFF)",
|
|
33
34
|
borderCollapse: 'separate',
|
|
34
35
|
borderSpacing: 0,
|
|
35
|
-
font:
|
|
36
|
+
font: `var(--ds-font-body, ${fontFallback.body.medium})`,
|
|
36
37
|
maxWidth
|
|
37
38
|
});
|
|
38
39
|
export const DragColumnPreview = ({
|
|
@@ -12,6 +12,7 @@ import { autoScroller } from '@atlaskit/pragmatic-drag-and-drop-react-beautiful-
|
|
|
12
12
|
import { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
|
|
13
13
|
import { monitorForElements } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
|
|
14
14
|
import { N40 } from '@atlaskit/theme/colors';
|
|
15
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
15
16
|
import Tooltip from '@atlaskit/tooltip';
|
|
16
17
|
import { startUfoExperience, succeedUfoExperience } from '../../analytics/ufoExperiences';
|
|
17
18
|
import { stickyTableHeadersIndex } from '../../common/zindex';
|
|
@@ -76,6 +77,11 @@ const TableCell = styled.td({
|
|
|
76
77
|
[`${withTablePluginBodyPrefix('&:last-child')}`]: {
|
|
77
78
|
borderRight: 0,
|
|
78
79
|
paddingRight: "var(--ds-space-100, 8px)"
|
|
80
|
+
},
|
|
81
|
+
// Inline smart links are pretty opinionated about word-wrapping.
|
|
82
|
+
// We want it to be controlled by user, so we make it overflow and truncate by default.
|
|
83
|
+
["& [data-testid='inline-card-icon-and-title'], " + "& [data-testid='button-connect-account'] > span"]: {
|
|
84
|
+
whiteSpace: 'unset'
|
|
79
85
|
}
|
|
80
86
|
});
|
|
81
87
|
const tableContainerStyles = css({
|
|
@@ -223,7 +229,7 @@ const noDefaultBorderStyles = css({
|
|
|
223
229
|
borderBottom: 0
|
|
224
230
|
});
|
|
225
231
|
const headerStyles = css({
|
|
226
|
-
font:
|
|
232
|
+
font: `var(--ds-font-body-UNSAFE_small, ${fontFallback.body.UNSAFE_small})`,
|
|
227
233
|
fontWeight: "var(--ds-font-weight-medium, 500)"
|
|
228
234
|
});
|
|
229
235
|
const headingHoverEffectStyles = css({
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import styled from '@emotion/styled';
|
|
2
2
|
import { N40 } from '@atlaskit/theme/colors';
|
|
3
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
3
4
|
export const ScrollableContainerHeight = 590;
|
|
4
|
-
export const fieldTextFontSize =
|
|
5
|
+
export const fieldTextFontSize = `var(--ds-font-body, ${fontFallback.body.medium})`;
|
|
5
6
|
export const Table = styled.table({
|
|
6
7
|
width: '100%'
|
|
7
8
|
});
|
|
@@ -10,7 +10,7 @@ import { IntlMessagesProvider } from '@atlaskit/intl-messages-provider';
|
|
|
10
10
|
import Modal, { ModalBody, ModalFooter, ModalHeader, ModalTitle, ModalTransition } from '@atlaskit/modal-dialog';
|
|
11
11
|
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
12
12
|
import LinkUrl from '@atlaskit/smart-card/link-url';
|
|
13
|
-
import { B400, N0,
|
|
13
|
+
import { B400, N0, N800 } from '@atlaskit/theme/colors';
|
|
14
14
|
import { EVENT_CHANNEL, useDatasourceAnalyticsEvents } from '../../../analytics';
|
|
15
15
|
import { componentMetadata } from '../../../analytics/constants';
|
|
16
16
|
import { DatasourceAction, DatasourceDisplay } from '../../../analytics/types';
|
|
@@ -30,8 +30,9 @@ import { NoInstancesView } from '../../common/error-state/no-instances';
|
|
|
30
30
|
import { NoResults } from '../../common/error-state/no-results';
|
|
31
31
|
import { InitialStateView } from '../../common/initial-state-view';
|
|
32
32
|
import { initialStateViewMessages } from '../../common/initial-state-view/messages';
|
|
33
|
+
import { ContentContainer } from '../../common/modal/content-container';
|
|
33
34
|
import { SiteSelector } from '../../common/modal/site-selector';
|
|
34
|
-
import { EmptyState, IssueLikeDataTableView
|
|
35
|
+
import { EmptyState, IssueLikeDataTableView } from '../../issue-like-table';
|
|
35
36
|
import LinkRenderType from '../../issue-like-table/render-type/link';
|
|
36
37
|
import { availableBasicFilterTypes } from '../basic-filters/ui';
|
|
37
38
|
import { isQueryTooComplex } from '../basic-filters/utils/isQueryTooComplex';
|
|
@@ -39,22 +40,6 @@ import { JiraSearchContainer } from '../jira-search-container';
|
|
|
39
40
|
import { JiraDisplayViewDropDown } from './jira-display-view-dropdown/jira-display-view-drop-down';
|
|
40
41
|
import { JiraInitialStateSVG } from './jira-issues-initial-state-svg';
|
|
41
42
|
import { modalMessages } from './messages';
|
|
42
|
-
const tableContainerStyles = css({
|
|
43
|
-
borderTopLeftRadius: "var(--ds-border-radius-200, 8px)",
|
|
44
|
-
borderTopRightRadius: "var(--ds-border-radius-200, 8px)",
|
|
45
|
-
border: `1px solid ${`var(--ds-border, ${N40})`}`
|
|
46
|
-
});
|
|
47
|
-
const contentContainerStyles = css({
|
|
48
|
-
display: 'grid',
|
|
49
|
-
maxHeight: '420px',
|
|
50
|
-
overflow: 'auto',
|
|
51
|
-
borderBottom: `2px solid ${`var(--ds-background-accent-gray-subtler, ${N40})`}`,
|
|
52
|
-
backgroundImage: scrollableContainerShadowsCssComponents.backgroundImage,
|
|
53
|
-
backgroundPosition: scrollableContainerShadowsCssComponents.backgroundPosition,
|
|
54
|
-
backgroundRepeat: scrollableContainerShadowsCssComponents.backgroundRepeat,
|
|
55
|
-
backgroundSize: scrollableContainerShadowsCssComponents.backgroundSize,
|
|
56
|
-
backgroundAttachment: scrollableContainerShadowsCssComponents.backgroundAttachment
|
|
57
|
-
});
|
|
58
43
|
const placeholderSmartLinkStyles = css({
|
|
59
44
|
backgroundColor: `var(--ds-surface-raised, ${N0})`,
|
|
60
45
|
borderRadius: "var(--ds-border-radius-200, 3px)",
|
|
@@ -424,8 +409,8 @@ export const PlainJiraIssuesConfigModal = props => {
|
|
|
424
409
|
visibleColumnCount.current = newVisibleColumnKeys.length;
|
|
425
410
|
setVisibleColumnKeys(newVisibleColumnKeys);
|
|
426
411
|
}, [visibleColumnKeys]);
|
|
427
|
-
const issueLikeDataTableView = useMemo(() => jsx(
|
|
428
|
-
|
|
412
|
+
const issueLikeDataTableView = useMemo(() => jsx(ContentContainer, {
|
|
413
|
+
withTableBorder: true
|
|
429
414
|
}, jsx(IssueLikeDataTableView, {
|
|
430
415
|
testId: "jira-datasource-table",
|
|
431
416
|
status: status,
|
|
@@ -474,7 +459,13 @@ export const PlainJiraIssuesConfigModal = props => {
|
|
|
474
459
|
const selectedJiraSiteUrl = selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url;
|
|
475
460
|
if (status === 'rejected' && jqlUrl) {
|
|
476
461
|
return jsx(ModalLoadingError, {
|
|
477
|
-
|
|
462
|
+
errorMessage: jqlUrl ? jsx(FormattedMessage, _extends({}, modalMessages.checkConnectionWithSource, {
|
|
463
|
+
values: {
|
|
464
|
+
a: urlText => jsx("a", {
|
|
465
|
+
href: jqlUrl
|
|
466
|
+
}, urlText)
|
|
467
|
+
}
|
|
468
|
+
})) : undefined
|
|
478
469
|
});
|
|
479
470
|
} else if (status === 'unauthorized') {
|
|
480
471
|
return jsx(AccessRequired, {
|
|
@@ -484,8 +475,8 @@ export const PlainJiraIssuesConfigModal = props => {
|
|
|
484
475
|
return jsx(NoResults, null);
|
|
485
476
|
} else if (status === 'empty' || !columns.length) {
|
|
486
477
|
// persist the empty state when making the initial /data request which contains the columns
|
|
487
|
-
return jsx(
|
|
488
|
-
|
|
478
|
+
return jsx(ContentContainer, {
|
|
479
|
+
withTableBorder: !!jql
|
|
489
480
|
}, !!jql ? jsx(EmptyState, {
|
|
490
481
|
testId: `jira-datasource-modal--empty-state`
|
|
491
482
|
}) : jsx(InitialStateView, {
|
|
@@ -115,5 +115,10 @@ export const modalMessages = defineMessages({
|
|
|
115
115
|
id: 'linkDataSource.jira-issues.no.jira.sites.access.description',
|
|
116
116
|
description: 'Description that shows in the modal when user has no access to any Jira sites',
|
|
117
117
|
defaultMessage: 'To request access, contact your admin.'
|
|
118
|
+
},
|
|
119
|
+
checkConnectionWithSource: {
|
|
120
|
+
id: 'linkDataSource.jira-issues.checkConnectionWithSource',
|
|
121
|
+
description: 'Instructions to let the user know how to resolve the error that occured, or click the link provided to open the query in Jira',
|
|
122
|
+
defaultMessage: 'Check your connection and refresh, or <a>open this query in Jira</a> to review.'
|
|
118
123
|
}
|
|
119
124
|
});
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { css, jsx } from '@emotion/react';
|
|
4
4
|
import { useIntl } from 'react-intl-next';
|
|
5
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
5
6
|
import { CrystalBallSVG } from './assets/crystal-ball-svg';
|
|
6
7
|
import { initialStateViewMessages } from './messages';
|
|
7
8
|
var initialStateViewContainerStyles = css({
|
|
@@ -14,7 +15,7 @@ var svgAndTextsWrapperStyles = css({
|
|
|
14
15
|
alignSelf: 'center'
|
|
15
16
|
});
|
|
16
17
|
var searchTitleStyles = css({
|
|
17
|
-
font: "var(--ds-font-heading-small,
|
|
18
|
+
font: "var(--ds-font-heading-small, ".concat(fontFallback.heading.small, ")"),
|
|
18
19
|
paddingTop: "var(--ds-space-200, 16px)",
|
|
19
20
|
paddingBottom: "var(--ds-space-100, 8px)"
|
|
20
21
|
});
|
|
@@ -5,12 +5,13 @@ import { useIntl } from 'react-intl-next';
|
|
|
5
5
|
import EmptyState from '@atlaskit/empty-state';
|
|
6
6
|
import { Box, xcss } from '@atlaskit/primitives';
|
|
7
7
|
import { N400 } from '@atlaskit/theme/colors';
|
|
8
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
8
9
|
import { useDatasourceAnalyticsEvents } from '../../../analytics';
|
|
9
10
|
import { AccessRequiredSVG } from './access-required-svg';
|
|
10
11
|
import { loadingErrorMessages } from './messages';
|
|
11
12
|
var urlStyles = css({
|
|
12
13
|
color: "var(--ds-text-subtlest, ".concat(N400, ")"),
|
|
13
|
-
font: "var(--ds-font-body,
|
|
14
|
+
font: "var(--ds-font-body, ".concat(fontFallback.body.medium, ")")
|
|
14
15
|
});
|
|
15
16
|
var descriptionMessageStyles = css({
|
|
16
17
|
display: 'flex',
|
|
@@ -3,6 +3,7 @@ import { useEffect } from 'react';
|
|
|
3
3
|
import { css, jsx } from '@emotion/react';
|
|
4
4
|
import { FormattedMessage } from 'react-intl-next';
|
|
5
5
|
import Button from '@atlaskit/button/standard-button';
|
|
6
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
6
7
|
import { useDatasourceAnalyticsEvents } from '../../../analytics';
|
|
7
8
|
import { LoadingErrorSVG } from './loading-error-svg';
|
|
8
9
|
import { loadingErrorMessages } from './messages';
|
|
@@ -18,7 +19,7 @@ var errorMessageContainerStyles = css({
|
|
|
18
19
|
placeItems: 'center'
|
|
19
20
|
});
|
|
20
21
|
var errorMessageStyles = css({
|
|
21
|
-
font: "var(--ds-font-heading-small,
|
|
22
|
+
font: "var(--ds-font-heading-small, ".concat(fontFallback.heading.small, ")")
|
|
22
23
|
});
|
|
23
24
|
var errorDescriptionStyles = css({
|
|
24
25
|
margin: 0
|
|
@@ -44,17 +44,6 @@ export var loadingErrorMessages = defineMessages({
|
|
|
44
44
|
description: 'Instructions to let the user know how to resolve the network error that occurred or to try again at a different time',
|
|
45
45
|
defaultMessage: 'Check your connection and refresh, or try again later.'
|
|
46
46
|
},
|
|
47
|
-
checkConnectionWithSourceDuplicate: {
|
|
48
|
-
id: 'linkDataSource.checkConnectionWithSource',
|
|
49
|
-
description: 'Instructions to let the user know how to resolve the error that occured, or click the link provided to open the query in Jira',
|
|
50
|
-
defaultMessage: 'Check your connection and refresh, or <a>open this query in Jira</a> to review.'
|
|
51
|
-
},
|
|
52
|
-
//delete and remove duplicate from title above
|
|
53
|
-
checkConnectionWithSource: {
|
|
54
|
-
id: 'linkDataSource.jira-issues.checkConnectionWithSource',
|
|
55
|
-
description: 'Instructions to let the user know how to resolve the error that occured, or click the link provided to open the query in Jira',
|
|
56
|
-
defaultMessage: 'Check your connection and refresh, or <a>open this query in Jira</a> to review.'
|
|
57
|
-
},
|
|
58
47
|
noResultsFoundDuplicate: {
|
|
59
48
|
id: 'linkDataSource.noResultsFound',
|
|
60
49
|
description: 'Status message letting the user know their query did not have any results',
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import _extends from "@babel/runtime/helpers/extends";
|
|
2
1
|
/** @jsx jsx */
|
|
3
2
|
import { useEffect } from 'react';
|
|
4
3
|
import { css, jsx } from '@emotion/react';
|
|
5
4
|
import { FormattedMessage } from 'react-intl-next';
|
|
5
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
6
6
|
import { useDatasourceAnalyticsEvents } from '../../../analytics';
|
|
7
7
|
import { LoadingErrorSVG } from './loading-error-svg';
|
|
8
8
|
import { loadingErrorMessages } from './messages';
|
|
@@ -18,13 +18,14 @@ var errorMessageContainerStyles = css({
|
|
|
18
18
|
placeItems: 'center'
|
|
19
19
|
});
|
|
20
20
|
var errorMessageStyles = css({
|
|
21
|
-
font: "var(--ds-font-heading-small,
|
|
21
|
+
font: "var(--ds-font-heading-small, ".concat(fontFallback.heading.small, ")")
|
|
22
22
|
});
|
|
23
23
|
var errorDescriptionStyles = css({
|
|
24
24
|
margin: 0
|
|
25
25
|
});
|
|
26
26
|
export var ModalLoadingError = function ModalLoadingError(_ref) {
|
|
27
|
-
var
|
|
27
|
+
var _ref$errorMessage = _ref.errorMessage,
|
|
28
|
+
errorMessage = _ref$errorMessage === void 0 ? jsx(FormattedMessage, loadingErrorMessages.checkConnection) : _ref$errorMessage;
|
|
28
29
|
var _useDatasourceAnalyti = useDatasourceAnalyticsEvents(),
|
|
29
30
|
fireEvent = _useDatasourceAnalyti.fireEvent;
|
|
30
31
|
useEffect(function () {
|
|
@@ -41,13 +42,5 @@ export var ModalLoadingError = function ModalLoadingError(_ref) {
|
|
|
41
42
|
css: errorMessageStyles
|
|
42
43
|
}, jsx(FormattedMessage, loadingErrorMessages.unableToLoadResults)), jsx("p", {
|
|
43
44
|
css: errorDescriptionStyles
|
|
44
|
-
},
|
|
45
|
-
values: {
|
|
46
|
-
a: function a(chunk) {
|
|
47
|
-
return jsx("a", {
|
|
48
|
-
href: url
|
|
49
|
-
}, chunk);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
})) : jsx(FormattedMessage, loadingErrorMessages.checkConnection))));
|
|
45
|
+
}, errorMessage)));
|
|
53
46
|
};
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
import { css, jsx } from '@emotion/react';
|
|
3
3
|
import { useIntl } from 'react-intl-next';
|
|
4
4
|
import { Flex, xcss } from '@atlaskit/primitives';
|
|
5
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
5
6
|
import { NoInstancesSvg } from './no-instances-svg';
|
|
6
7
|
var titleStyles = css({
|
|
7
|
-
font: "var(--ds-font-heading-small,
|
|
8
|
+
font: "var(--ds-font-heading-small, ".concat(fontFallback.heading.small, ")"),
|
|
8
9
|
marginTop: "var(--ds-space-200, 16px)"
|
|
9
10
|
});
|
|
10
11
|
var descriptionStyles = css({
|
|
@@ -3,6 +3,7 @@ import { useEffect } from 'react';
|
|
|
3
3
|
import { css, jsx } from '@emotion/react';
|
|
4
4
|
import { FormattedMessage } from 'react-intl-next';
|
|
5
5
|
import Button from '@atlaskit/button/standard-button';
|
|
6
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
6
7
|
import { useDatasourceAnalyticsEvents } from '../../../analytics';
|
|
7
8
|
import { loadingErrorMessages } from './messages';
|
|
8
9
|
var noResultsContainerStyles = css({
|
|
@@ -17,7 +18,7 @@ var noResultsMessageContainerStyles = css({
|
|
|
17
18
|
placeItems: 'center'
|
|
18
19
|
});
|
|
19
20
|
var noResultsMessageStyles = css({
|
|
20
|
-
font: "var(--ds-font-heading-small,
|
|
21
|
+
font: "var(--ds-font-heading-small, ".concat(fontFallback.heading.small, ")")
|
|
21
22
|
});
|
|
22
23
|
export var NoResults = function NoResults(_ref) {
|
|
23
24
|
var onRefresh = _ref.onRefresh;
|
|
@@ -3,6 +3,7 @@ import { css, jsx } from '@emotion/react';
|
|
|
3
3
|
import { FormattedMessage, useIntl } from 'react-intl-next';
|
|
4
4
|
import Lozenge from '@atlaskit/lozenge';
|
|
5
5
|
import { N300 } from '@atlaskit/theme/colors';
|
|
6
|
+
import { fontFallback } from '@atlaskit/theme/typography';
|
|
6
7
|
import { initialStateViewMessages } from './messages';
|
|
7
8
|
var initialStateViewContainerStyles = css({
|
|
8
9
|
display: 'flex',
|
|
@@ -20,7 +21,7 @@ var betaTagStyles = css({
|
|
|
20
21
|
});
|
|
21
22
|
var searchTitleStyles = css({
|
|
22
23
|
color: "var(--ds-text-subtlest, ".concat(N300, ")"),
|
|
23
|
-
font: "var(--ds-font-heading-medium,
|
|
24
|
+
font: "var(--ds-font-heading-medium, ".concat(fontFallback.heading.medium, ")"),
|
|
24
25
|
paddingTop: "var(--ds-space-200, 16px)",
|
|
25
26
|
paddingBottom: "var(--ds-space-100, 8px)",
|
|
26
27
|
display: 'flex',
|