@atlaskit/link-datasource 1.20.0 → 1.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/dist/cjs/common/utils/adf.js +15 -0
- package/dist/cjs/hooks/useDatasourceTableState.js +91 -88
- package/dist/cjs/index.js +7 -0
- package/dist/cjs/ui/assets-modal/modal/index.js +18 -22
- package/dist/cjs/ui/common/error-state/messages.js +20 -0
- package/dist/cjs/ui/common/error-state/provider-auth-required-svg.js +449 -0
- package/dist/cjs/ui/common/error-state/provider-auth-required.js +96 -0
- package/dist/cjs/ui/datasource-table-view/datasourceTableView.js +16 -7
- package/dist/cjs/ui/jira-issues-modal/modal/index.js +18 -23
- package/dist/es2019/common/utils/adf.js +9 -0
- package/dist/es2019/hooks/useDatasourceTableState.js +26 -24
- package/dist/es2019/index.js +1 -0
- package/dist/es2019/ui/assets-modal/modal/index.js +16 -20
- package/dist/es2019/ui/common/error-state/messages.js +20 -0
- package/dist/es2019/ui/common/error-state/provider-auth-required-svg.js +442 -0
- package/dist/es2019/ui/common/error-state/provider-auth-required.js +62 -0
- package/dist/es2019/ui/datasource-table-view/datasourceTableView.js +16 -7
- package/dist/es2019/ui/jira-issues-modal/modal/index.js +16 -21
- package/dist/esm/common/utils/adf.js +9 -0
- package/dist/esm/hooks/useDatasourceTableState.js +91 -88
- package/dist/esm/index.js +1 -0
- package/dist/esm/ui/assets-modal/modal/index.js +18 -22
- package/dist/esm/ui/common/error-state/messages.js +20 -0
- package/dist/esm/ui/common/error-state/provider-auth-required-svg.js +442 -0
- package/dist/esm/ui/common/error-state/provider-auth-required.js +85 -0
- package/dist/esm/ui/datasource-table-view/datasourceTableView.js +16 -7
- package/dist/esm/ui/jira-issues-modal/modal/index.js +18 -23
- package/dist/types/common/utils/adf.d.ts +2 -0
- package/dist/types/hooks/useDatasourceTableState.d.ts +3 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/ui/assets-modal/types.d.ts +1 -1
- package/dist/types/ui/common/error-state/messages.d.ts +20 -0
- package/dist/types/ui/common/error-state/provider-auth-required-svg.d.ts +3 -0
- package/dist/types/ui/common/error-state/provider-auth-required.d.ts +9 -0
- package/dist/types/ui/jira-issues-modal/types.d.ts +1 -20
- package/dist/types-ts4.5/common/utils/adf.d.ts +2 -0
- package/dist/types-ts4.5/hooks/useDatasourceTableState.d.ts +3 -1
- package/dist/types-ts4.5/index.d.ts +1 -0
- package/dist/types-ts4.5/ui/assets-modal/types.d.ts +1 -1
- package/dist/types-ts4.5/ui/common/error-state/messages.d.ts +20 -0
- package/dist/types-ts4.5/ui/common/error-state/provider-auth-required-svg.d.ts +3 -0
- package/dist/types-ts4.5/ui/common/error-state/provider-auth-required.d.ts +9 -0
- package/dist/types-ts4.5/ui/jira-issues-modal/types.d.ts +1 -20
- package/examples-helpers/buildJiraIssuesTable.tsx +34 -6
- package/package.json +4 -3
|
@@ -19,60 +19,67 @@ export var useDatasourceTableState = function useDatasourceTableState(_ref) {
|
|
|
19
19
|
var idFieldCount = 1;
|
|
20
20
|
var keyFieldCount = 1;
|
|
21
21
|
var _useState = useState([]),
|
|
22
|
-
_useState2 = _slicedToArray(_useState,
|
|
23
|
-
|
|
24
|
-
setDefaultVisibleColumnKeys = _useState2[1];
|
|
22
|
+
_useState2 = _slicedToArray(_useState, 1),
|
|
23
|
+
initialEmptyArray = _useState2[0];
|
|
25
24
|
var _useState3 = useState([]),
|
|
26
25
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
var _useState5 = useState(
|
|
26
|
+
defaultVisibleColumnKeys = _useState4[0],
|
|
27
|
+
setDefaultVisibleColumnKeys = _useState4[1];
|
|
28
|
+
var _useState5 = useState([]),
|
|
29
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
30
|
+
lastRequestedFieldKeys = _useState6[0],
|
|
31
|
+
setLastRequestedFieldKeys = _useState6[1];
|
|
32
|
+
var _useState7 = useState({
|
|
30
33
|
properties: []
|
|
31
34
|
}),
|
|
32
|
-
_useState6 = _slicedToArray(_useState5, 2),
|
|
33
|
-
fullSchema = _useState6[0],
|
|
34
|
-
setFullSchema = _useState6[1];
|
|
35
|
-
var _useState7 = useState('empty'),
|
|
36
35
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
var _useState9 = useState(
|
|
36
|
+
fullSchema = _useState8[0],
|
|
37
|
+
setFullSchema = _useState8[1];
|
|
38
|
+
var _useState9 = useState('empty'),
|
|
40
39
|
_useState10 = _slicedToArray(_useState9, 2),
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
var _useState11 = useState(
|
|
40
|
+
status = _useState10[0],
|
|
41
|
+
setStatus = _useState10[1];
|
|
42
|
+
var _useState11 = useState([]),
|
|
44
43
|
_useState12 = _slicedToArray(_useState11, 2),
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
var _useState13 = useState(
|
|
44
|
+
authDetails = _useState12[0],
|
|
45
|
+
setAuthDetails = _useState12[1];
|
|
46
|
+
var _useState13 = useState([]),
|
|
48
47
|
_useState14 = _slicedToArray(_useState13, 2),
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
var _useState15 = useState(
|
|
48
|
+
responseItems = _useState14[0],
|
|
49
|
+
setResponseItems = _useState14[1];
|
|
50
|
+
var _useState15 = useState(true),
|
|
52
51
|
_useState16 = _slicedToArray(_useState15, 2),
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
hasNextPage = _useState16[0],
|
|
53
|
+
setHasNextPage = _useState16[1];
|
|
55
54
|
var _useState17 = useState(undefined),
|
|
56
55
|
_useState18 = _slicedToArray(_useState17, 2),
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
var _useState19 = useState(
|
|
56
|
+
nextCursor = _useState18[0],
|
|
57
|
+
setNextCursor = _useState18[1];
|
|
58
|
+
var _useState19 = useState([]),
|
|
60
59
|
_useState20 = _slicedToArray(_useState19, 2),
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
var _useState21 = useState(
|
|
60
|
+
columns = _useState20[0],
|
|
61
|
+
setColumns = _useState20[1];
|
|
62
|
+
var _useState21 = useState(undefined),
|
|
64
63
|
_useState22 = _slicedToArray(_useState21, 2),
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
var _useState23 = useState(),
|
|
64
|
+
totalCount = _useState22[0],
|
|
65
|
+
setTotalCount = _useState22[1];
|
|
66
|
+
var _useState23 = useState(false),
|
|
68
67
|
_useState24 = _slicedToArray(_useState23, 2),
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
shouldForceRequest = _useState24[0],
|
|
69
|
+
setShouldForceRequest = _useState24[1];
|
|
70
|
+
var _useState25 = useState([]),
|
|
71
|
+
_useState26 = _slicedToArray(_useState25, 2),
|
|
72
|
+
destinationObjectTypes = _useState26[0],
|
|
73
|
+
setDestinationObjectTypes = _useState26[1];
|
|
74
|
+
var _useState27 = useState(),
|
|
75
|
+
_useState28 = _slicedToArray(_useState27, 2),
|
|
76
|
+
extensionKey = _useState28[0],
|
|
77
|
+
setExtensionKey = _useState28[1];
|
|
71
78
|
var _useDatasourceClientE = useDatasourceClientExtension(),
|
|
72
79
|
getDatasourceData = _useDatasourceClientE.getDatasourceData,
|
|
73
80
|
getDatasourceDetails = _useDatasourceClientE.getDatasourceDetails;
|
|
74
81
|
var loadDatasourceDetails = useCallback( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
75
|
-
var _yield$getDatasourceD, access, schema, isColumnNotPresentInCurrentColumnsList, allColumns, newColumns;
|
|
82
|
+
var _yield$getDatasourceD, _yield$getDatasourceD2, access, auth, schema, isColumnNotPresentInCurrentColumnsList, allColumns, newColumns;
|
|
76
83
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
77
84
|
while (1) switch (_context.prev = _context.next) {
|
|
78
85
|
case 0:
|
|
@@ -89,20 +96,16 @@ export var useDatasourceTableState = function useDatasourceTableState(_ref) {
|
|
|
89
96
|
});
|
|
90
97
|
case 5:
|
|
91
98
|
_yield$getDatasourceD = _context.sent;
|
|
92
|
-
|
|
99
|
+
_yield$getDatasourceD2 = _yield$getDatasourceD.meta;
|
|
100
|
+
access = _yield$getDatasourceD2.access;
|
|
101
|
+
auth = _yield$getDatasourceD2.auth;
|
|
93
102
|
schema = _yield$getDatasourceD.data.schema;
|
|
94
|
-
if (!(access === 'unauthorized')) {
|
|
95
|
-
_context.next = 11;
|
|
96
|
-
break;
|
|
97
|
-
}
|
|
98
|
-
setStatus('unauthorized');
|
|
99
|
-
return _context.abrupt("return");
|
|
100
|
-
case 11:
|
|
101
|
-
if (!(access === 'forbidden')) {
|
|
103
|
+
if (!(access === 'unauthorized' || access === 'forbidden')) {
|
|
102
104
|
_context.next = 14;
|
|
103
105
|
break;
|
|
104
106
|
}
|
|
105
|
-
setStatus(
|
|
107
|
+
setStatus(access);
|
|
108
|
+
setAuthDetails(auth || initialEmptyArray);
|
|
106
109
|
return _context.abrupt("return");
|
|
107
110
|
case 14:
|
|
108
111
|
isColumnNotPresentInCurrentColumnsList = function isColumnNotPresentInCurrentColumnsList(col) {
|
|
@@ -139,7 +142,7 @@ export var useDatasourceTableState = function useDatasourceTableState(_ref) {
|
|
|
139
142
|
return _context.stop();
|
|
140
143
|
}
|
|
141
144
|
}, _callee, null, [[2, 20]]);
|
|
142
|
-
})), [captureError, columns, datasourceId, getDatasourceDetails, parameters]);
|
|
145
|
+
})), [captureError, columns, datasourceId, getDatasourceDetails, parameters, initialEmptyArray]);
|
|
143
146
|
var applySchemaProperties = useCallback(function (schema, fieldKeys) {
|
|
144
147
|
var properties = schema.properties,
|
|
145
148
|
_schema$defaultProper = schema.defaultProperties,
|
|
@@ -184,12 +187,13 @@ export var useDatasourceTableState = function useDatasourceTableState(_ref) {
|
|
|
184
187
|
shouldForceRequest,
|
|
185
188
|
isFullSchemaLoaded,
|
|
186
189
|
datasourceDataRequest,
|
|
187
|
-
_yield$getDatasourceD2,
|
|
188
190
|
_yield$getDatasourceD3,
|
|
191
|
+
_yield$getDatasourceD4,
|
|
189
192
|
access,
|
|
190
193
|
_destinationObjectTypes,
|
|
191
194
|
_extensionKey,
|
|
192
|
-
|
|
195
|
+
auth,
|
|
196
|
+
_yield$getDatasourceD5,
|
|
193
197
|
items,
|
|
194
198
|
nextPageCursor,
|
|
195
199
|
_totalCount,
|
|
@@ -222,30 +226,25 @@ export var useDatasourceTableState = function useDatasourceTableState(_ref) {
|
|
|
222
226
|
_context2.next = 10;
|
|
223
227
|
return getDatasourceData(datasourceId, datasourceDataRequest, shouldForceRequest);
|
|
224
228
|
case 10:
|
|
225
|
-
_yield$
|
|
226
|
-
_yield$
|
|
227
|
-
access = _yield$
|
|
228
|
-
_destinationObjectTypes = _yield$
|
|
229
|
-
_extensionKey = _yield$
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
229
|
+
_yield$getDatasourceD3 = _context2.sent;
|
|
230
|
+
_yield$getDatasourceD4 = _yield$getDatasourceD3.meta;
|
|
231
|
+
access = _yield$getDatasourceD4.access;
|
|
232
|
+
_destinationObjectTypes = _yield$getDatasourceD4.destinationObjectTypes;
|
|
233
|
+
_extensionKey = _yield$getDatasourceD4.extensionKey;
|
|
234
|
+
auth = _yield$getDatasourceD4.auth;
|
|
235
|
+
_yield$getDatasourceD5 = _yield$getDatasourceD3.data;
|
|
236
|
+
items = _yield$getDatasourceD5.items;
|
|
237
|
+
nextPageCursor = _yield$getDatasourceD5.nextPageCursor;
|
|
238
|
+
_totalCount = _yield$getDatasourceD5.totalCount;
|
|
239
|
+
schema = _yield$getDatasourceD5.schema;
|
|
240
|
+
if (!(access === 'unauthorized' || access === 'forbidden')) {
|
|
241
|
+
_context2.next = 25;
|
|
237
242
|
break;
|
|
238
243
|
}
|
|
239
|
-
setStatus(
|
|
244
|
+
setStatus(access);
|
|
245
|
+
setAuthDetails(auth || initialEmptyArray);
|
|
240
246
|
return _context2.abrupt("return");
|
|
241
|
-
case
|
|
242
|
-
if (!(access === 'forbidden')) {
|
|
243
|
-
_context2.next = 26;
|
|
244
|
-
break;
|
|
245
|
-
}
|
|
246
|
-
setStatus('forbidden');
|
|
247
|
-
return _context2.abrupt("return");
|
|
248
|
-
case 26:
|
|
247
|
+
case 25:
|
|
249
248
|
setExtensionKey(_extensionKey);
|
|
250
249
|
setDestinationObjectTypes(_destinationObjectTypes);
|
|
251
250
|
setTotalCount(_totalCount);
|
|
@@ -278,49 +277,52 @@ export var useDatasourceTableState = function useDatasourceTableState(_ref) {
|
|
|
278
277
|
});
|
|
279
278
|
}
|
|
280
279
|
setStatus('resolved');
|
|
281
|
-
_context2.next =
|
|
280
|
+
_context2.next = 48;
|
|
282
281
|
break;
|
|
283
|
-
case
|
|
284
|
-
_context2.prev =
|
|
282
|
+
case 38:
|
|
283
|
+
_context2.prev = 38;
|
|
285
284
|
_context2.t0 = _context2["catch"](7);
|
|
286
285
|
captureError('onNextPage', _context2.t0);
|
|
287
286
|
if (!(_context2.t0 instanceof Response && _context2.t0.status === 401)) {
|
|
288
|
-
_context2.next =
|
|
287
|
+
_context2.next = 44;
|
|
289
288
|
break;
|
|
290
289
|
}
|
|
291
290
|
setStatus('unauthorized');
|
|
292
291
|
return _context2.abrupt("return");
|
|
293
|
-
case
|
|
292
|
+
case 44:
|
|
294
293
|
if (!(_context2.t0 instanceof Response && _context2.t0.status === 403)) {
|
|
295
|
-
_context2.next =
|
|
294
|
+
_context2.next = 47;
|
|
296
295
|
break;
|
|
297
296
|
}
|
|
298
297
|
setStatus('forbidden');
|
|
299
298
|
return _context2.abrupt("return");
|
|
300
|
-
case
|
|
299
|
+
case 47:
|
|
301
300
|
setStatus('rejected');
|
|
302
|
-
case
|
|
301
|
+
case 48:
|
|
303
302
|
case "end":
|
|
304
303
|
return _context2.stop();
|
|
305
304
|
}
|
|
306
|
-
}, _callee2, null, [[7,
|
|
307
|
-
})), [captureError, parameters, fieldKeys, nextCursor, getDatasourceData, datasourceId, responseItems, applySchemaProperties, fireEvent, fullSchema]);
|
|
305
|
+
}, _callee2, null, [[7, 38]]);
|
|
306
|
+
})), [captureError, parameters, fieldKeys, nextCursor, getDatasourceData, datasourceId, responseItems, applySchemaProperties, fireEvent, fullSchema, initialEmptyArray]);
|
|
308
307
|
var reset = useCallback(function (options) {
|
|
309
|
-
|
|
310
|
-
setResponseItems([]);
|
|
308
|
+
setResponseItems(initialEmptyArray);
|
|
311
309
|
setHasNextPage(true);
|
|
312
310
|
setNextCursor(undefined);
|
|
313
311
|
setTotalCount(undefined);
|
|
314
|
-
setLastRequestedFieldKeys(
|
|
312
|
+
setLastRequestedFieldKeys(initialEmptyArray);
|
|
313
|
+
setAuthDetails(initialEmptyArray);
|
|
315
314
|
setFullSchema({
|
|
316
|
-
properties:
|
|
315
|
+
properties: initialEmptyArray
|
|
317
316
|
});
|
|
318
317
|
setShouldForceRequest((options === null || options === void 0 ? void 0 : options.shouldForceRequest) || false);
|
|
319
318
|
if (options !== null && options !== void 0 && options.shouldResetColumns) {
|
|
320
|
-
setColumns(
|
|
321
|
-
setDefaultVisibleColumnKeys(
|
|
319
|
+
setColumns(initialEmptyArray);
|
|
320
|
+
setDefaultVisibleColumnKeys(initialEmptyArray);
|
|
322
321
|
}
|
|
323
|
-
|
|
322
|
+
|
|
323
|
+
// setting the status earlier is triggering useEffects without all reset state values, hence placing this as the last state reset item
|
|
324
|
+
setStatus('empty');
|
|
325
|
+
}, [initialEmptyArray]);
|
|
324
326
|
|
|
325
327
|
// this takes care of requesting /data initially
|
|
326
328
|
useEffect(function () {
|
|
@@ -371,6 +373,7 @@ export var useDatasourceTableState = function useDatasourceTableState(_ref) {
|
|
|
371
373
|
defaultVisibleColumnKeys: defaultVisibleColumnKeys,
|
|
372
374
|
totalCount: totalCount,
|
|
373
375
|
extensionKey: extensionKey,
|
|
374
|
-
destinationObjectTypes: destinationObjectTypes
|
|
376
|
+
destinationObjectTypes: destinationObjectTypes,
|
|
377
|
+
authDetails: authDetails
|
|
375
378
|
};
|
|
376
379
|
};
|
package/dist/esm/index.js
CHANGED
|
@@ -2,6 +2,7 @@ export { default as JiraIssuesConfigModal } from './ui/jira-issues-modal';
|
|
|
2
2
|
export { default as AssetsConfigModal } from './ui/assets-modal';
|
|
3
3
|
export { default as DatasourceTableView } from './ui/datasource-table-view';
|
|
4
4
|
export { default as JSMAssetsConfigModal } from './ui/assets-modal';
|
|
5
|
+
export { buildDatasourceAdf } from './common/utils/adf';
|
|
5
6
|
export { JIRA_LIST_OF_LINKS_DATASOURCE_ID } from './ui/jira-issues-modal';
|
|
6
7
|
export { ASSETS_LIST_OF_LINKS_DATASOURCE_ID } from './ui/assets-modal';
|
|
7
8
|
export { LazyLoadedDatasourceRenderFailedAnalyticsWrapper } from './analytics/wrappers/render-failed';
|
|
@@ -18,6 +18,7 @@ import { DatasourceAction, DatasourceDisplay, DatasourceSearchMethod } from '../
|
|
|
18
18
|
import { startUfoExperience } from '../../../analytics/ufoExperiences';
|
|
19
19
|
import { useColumnPickerRenderedFailedUfoExperience } from '../../../analytics/ufoExperiences/hooks/useColumnPickerRenderedFailedUfoExperience';
|
|
20
20
|
import { useDataRenderedUfoExperience } from '../../../analytics/ufoExperiences/hooks/useDataRenderedUfoExperience';
|
|
21
|
+
import { buildDatasourceAdf } from '../../../common/utils/adf';
|
|
21
22
|
import { fetchMessagesForLocale } from '../../../common/utils/locale/fetch-messages-for-locale';
|
|
22
23
|
import { useAssetsClient } from '../../../hooks/useAssetsClient';
|
|
23
24
|
import { useDatasourceTableState } from '../../../hooks/useDatasourceTableState';
|
|
@@ -242,29 +243,24 @@ var PlainAssetsConfigModal = function PlainAssetsConfigModal(props) {
|
|
|
242
243
|
}
|
|
243
244
|
}, consumerEvent);
|
|
244
245
|
} else {
|
|
245
|
-
onInsert({
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
key: key
|
|
261
|
-
};
|
|
262
|
-
})
|
|
263
|
-
}
|
|
264
|
-
}]
|
|
246
|
+
onInsert(buildDatasourceAdf({
|
|
247
|
+
id: datasourceId,
|
|
248
|
+
parameters: {
|
|
249
|
+
workspaceId: workspaceId,
|
|
250
|
+
aql: aql,
|
|
251
|
+
schemaId: schemaId
|
|
252
|
+
},
|
|
253
|
+
views: [{
|
|
254
|
+
type: 'table',
|
|
255
|
+
properties: {
|
|
256
|
+
columns: (visibleColumnKeys !== null && visibleColumnKeys !== void 0 ? visibleColumnKeys : []).map(function (key) {
|
|
257
|
+
return {
|
|
258
|
+
key: key
|
|
259
|
+
};
|
|
260
|
+
})
|
|
265
261
|
}
|
|
266
|
-
}
|
|
267
|
-
}, consumerEvent);
|
|
262
|
+
}]
|
|
263
|
+
}), consumerEvent);
|
|
268
264
|
}
|
|
269
265
|
}, [aql, schemaId, workspaceId, analyticsPayload, totalCount, retrieveUrlForSmartCardRender, responseItems.length, onInsert, datasourceId, visibleColumnKeys]);
|
|
270
266
|
var onCancelClick = useCallback(function (e, analyticEvent) {
|
|
@@ -54,5 +54,25 @@ export var loadingErrorMessages = defineMessages({
|
|
|
54
54
|
id: 'linkDataSource.jira-issues.no.jira.sites.access.description',
|
|
55
55
|
description: 'Description that shows in the modal when user has no access to any Jira sites',
|
|
56
56
|
defaultMessage: 'To request access, contact your admin.'
|
|
57
|
+
},
|
|
58
|
+
authScreenHeaderText: {
|
|
59
|
+
id: 'linkDataSource.datasource.table.authScreenHeaderText',
|
|
60
|
+
defaultMessage: 'Connect your account',
|
|
61
|
+
description: 'Header text to be displayed in the auth screen UI.'
|
|
62
|
+
},
|
|
63
|
+
authScreenDescriptionText: {
|
|
64
|
+
id: 'linkDataSource.datasource.table.authScreenDescriptionText',
|
|
65
|
+
defaultMessage: 'Connect your account to collaborate on work across Atlassian products.',
|
|
66
|
+
description: 'Description text to be displayed in the auth screen UI.'
|
|
67
|
+
},
|
|
68
|
+
learnMoreAboutSmartLinks: {
|
|
69
|
+
id: 'linkDataSource.datasource.table.learnMoreAboutSmartLinks',
|
|
70
|
+
defaultMessage: 'Learn more about Smart Links.',
|
|
71
|
+
description: 'An anchor link to redirect user to a page about Smart Links.'
|
|
72
|
+
},
|
|
73
|
+
authConnectButtonText: {
|
|
74
|
+
id: 'linkDataSource.datasource.table.authConnectButtonText',
|
|
75
|
+
defaultMessage: 'Connect',
|
|
76
|
+
description: 'Label for the authentication button.'
|
|
57
77
|
}
|
|
58
78
|
});
|