@atlaskit/link-datasource 1.8.0 → 1.9.1

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.
Files changed (131) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/analytics/constants.js +1 -1
  3. package/dist/cjs/common/zindex.js +8 -0
  4. package/dist/cjs/hooks/useValidateAqlText.js +21 -16
  5. package/dist/cjs/i18n/da.js +1 -1
  6. package/dist/cjs/i18n/en.js +5 -3
  7. package/dist/cjs/i18n/en_GB.js +5 -3
  8. package/dist/cjs/i18n/en_ZZ.js +5 -3
  9. package/dist/cjs/i18n/es.js +1 -1
  10. package/dist/cjs/i18n/fi.js +1 -1
  11. package/dist/cjs/i18n/fr.js +1 -1
  12. package/dist/cjs/i18n/hu.js +1 -1
  13. package/dist/cjs/i18n/it.js +1 -1
  14. package/dist/cjs/i18n/ja.js +1 -1
  15. package/dist/cjs/i18n/ko.js +1 -1
  16. package/dist/cjs/i18n/nb.js +5 -3
  17. package/dist/cjs/i18n/nl.js +1 -1
  18. package/dist/cjs/i18n/pl.js +1 -1
  19. package/dist/cjs/i18n/pt_BR.js +1 -1
  20. package/dist/cjs/i18n/ru.js +1 -1
  21. package/dist/cjs/i18n/sv.js +1 -1
  22. package/dist/cjs/i18n/tr.js +1 -1
  23. package/dist/cjs/i18n/uk.js +3 -3
  24. package/dist/cjs/i18n/vi.js +2 -2
  25. package/dist/cjs/i18n/zh.js +1 -1
  26. package/dist/cjs/i18n/zh_TW.js +1 -1
  27. package/dist/cjs/ui/assets-modal/modal/index.js +1 -1
  28. package/dist/cjs/ui/assets-modal/search-container/aql-search-input/index.js +12 -6
  29. package/dist/cjs/ui/common/error-state/access-required.js +42 -8
  30. package/dist/cjs/ui/common/error-state/messages.js +4 -4
  31. package/dist/cjs/ui/datasource-table-view/datasourceTableView.js +3 -1
  32. package/dist/cjs/ui/issue-like-table/index.js +2 -1
  33. package/dist/cjs/ui/jira-issues-modal/modal/index.js +24 -25
  34. package/dist/cjs/ui/jira-issues-modal/modal/messages.js +2 -2
  35. package/dist/cjs/ui/jira-issues-modal/site-selector/index.js +59 -37
  36. package/dist/cjs/ui/jira-issues-modal/site-selector/messages.js +4 -9
  37. package/dist/es2019/analytics/constants.js +1 -1
  38. package/dist/es2019/common/zindex.js +2 -0
  39. package/dist/es2019/hooks/useValidateAqlText.js +8 -2
  40. package/dist/es2019/i18n/da.js +1 -1
  41. package/dist/es2019/i18n/en.js +5 -3
  42. package/dist/es2019/i18n/en_GB.js +5 -3
  43. package/dist/es2019/i18n/en_ZZ.js +5 -3
  44. package/dist/es2019/i18n/es.js +1 -1
  45. package/dist/es2019/i18n/fi.js +1 -1
  46. package/dist/es2019/i18n/fr.js +1 -1
  47. package/dist/es2019/i18n/hu.js +1 -1
  48. package/dist/es2019/i18n/it.js +1 -1
  49. package/dist/es2019/i18n/ja.js +1 -1
  50. package/dist/es2019/i18n/ko.js +1 -1
  51. package/dist/es2019/i18n/nb.js +5 -3
  52. package/dist/es2019/i18n/nl.js +1 -1
  53. package/dist/es2019/i18n/pl.js +1 -1
  54. package/dist/es2019/i18n/pt_BR.js +1 -1
  55. package/dist/es2019/i18n/ru.js +1 -1
  56. package/dist/es2019/i18n/sv.js +1 -1
  57. package/dist/es2019/i18n/tr.js +1 -1
  58. package/dist/es2019/i18n/uk.js +3 -3
  59. package/dist/es2019/i18n/vi.js +2 -2
  60. package/dist/es2019/i18n/zh.js +1 -1
  61. package/dist/es2019/i18n/zh_TW.js +1 -1
  62. package/dist/es2019/ui/assets-modal/modal/index.js +1 -1
  63. package/dist/es2019/ui/assets-modal/search-container/aql-search-input/index.js +8 -6
  64. package/dist/es2019/ui/common/error-state/access-required.js +41 -6
  65. package/dist/es2019/ui/common/error-state/messages.js +4 -4
  66. package/dist/es2019/ui/datasource-table-view/datasourceTableView.js +3 -1
  67. package/dist/es2019/ui/issue-like-table/index.js +2 -1
  68. package/dist/es2019/ui/jira-issues-modal/modal/index.js +25 -26
  69. package/dist/es2019/ui/jira-issues-modal/modal/messages.js +2 -2
  70. package/dist/es2019/ui/jira-issues-modal/site-selector/index.js +50 -32
  71. package/dist/es2019/ui/jira-issues-modal/site-selector/messages.js +4 -9
  72. package/dist/esm/analytics/constants.js +1 -1
  73. package/dist/esm/common/zindex.js +2 -0
  74. package/dist/esm/hooks/useValidateAqlText.js +21 -16
  75. package/dist/esm/i18n/da.js +1 -1
  76. package/dist/esm/i18n/en.js +5 -3
  77. package/dist/esm/i18n/en_GB.js +5 -3
  78. package/dist/esm/i18n/en_ZZ.js +5 -3
  79. package/dist/esm/i18n/es.js +1 -1
  80. package/dist/esm/i18n/fi.js +1 -1
  81. package/dist/esm/i18n/fr.js +1 -1
  82. package/dist/esm/i18n/hu.js +1 -1
  83. package/dist/esm/i18n/it.js +1 -1
  84. package/dist/esm/i18n/ja.js +1 -1
  85. package/dist/esm/i18n/ko.js +1 -1
  86. package/dist/esm/i18n/nb.js +5 -3
  87. package/dist/esm/i18n/nl.js +1 -1
  88. package/dist/esm/i18n/pl.js +1 -1
  89. package/dist/esm/i18n/pt_BR.js +1 -1
  90. package/dist/esm/i18n/ru.js +1 -1
  91. package/dist/esm/i18n/sv.js +1 -1
  92. package/dist/esm/i18n/tr.js +1 -1
  93. package/dist/esm/i18n/uk.js +3 -3
  94. package/dist/esm/i18n/vi.js +2 -2
  95. package/dist/esm/i18n/zh.js +1 -1
  96. package/dist/esm/i18n/zh_TW.js +1 -1
  97. package/dist/esm/ui/assets-modal/modal/index.js +1 -1
  98. package/dist/esm/ui/assets-modal/search-container/aql-search-input/index.js +14 -8
  99. package/dist/esm/ui/common/error-state/access-required.js +43 -9
  100. package/dist/esm/ui/common/error-state/messages.js +4 -4
  101. package/dist/esm/ui/datasource-table-view/datasourceTableView.js +3 -1
  102. package/dist/esm/ui/issue-like-table/index.js +2 -1
  103. package/dist/esm/ui/jira-issues-modal/modal/index.js +25 -26
  104. package/dist/esm/ui/jira-issues-modal/modal/messages.js +2 -2
  105. package/dist/esm/ui/jira-issues-modal/site-selector/index.js +59 -34
  106. package/dist/esm/ui/jira-issues-modal/site-selector/messages.js +4 -9
  107. package/dist/types/common/zindex.d.ts +2 -0
  108. package/dist/types/hooks/useValidateAqlText.d.ts +6 -2
  109. package/dist/types/i18n/en.d.ts +2 -0
  110. package/dist/types/i18n/en_GB.d.ts +2 -0
  111. package/dist/types/i18n/en_ZZ.d.ts +2 -0
  112. package/dist/types/i18n/nb.d.ts +2 -0
  113. package/dist/types/types/assets/types.d.ts +4 -1
  114. package/dist/types/ui/common/error-state/access-required.d.ts +2 -2
  115. package/dist/types/ui/jira-issues-modal/site-selector/index.d.ts +0 -1
  116. package/dist/types/ui/jira-issues-modal/site-selector/messages.d.ts +1 -6
  117. package/dist/types/ui/jira-issues-modal/types.d.ts +2 -0
  118. package/dist/types-ts4.5/common/zindex.d.ts +2 -0
  119. package/dist/types-ts4.5/hooks/useValidateAqlText.d.ts +6 -2
  120. package/dist/types-ts4.5/i18n/en.d.ts +2 -0
  121. package/dist/types-ts4.5/i18n/en_GB.d.ts +2 -0
  122. package/dist/types-ts4.5/i18n/en_ZZ.d.ts +2 -0
  123. package/dist/types-ts4.5/i18n/nb.d.ts +2 -0
  124. package/dist/types-ts4.5/types/assets/types.d.ts +4 -1
  125. package/dist/types-ts4.5/ui/common/error-state/access-required.d.ts +2 -2
  126. package/dist/types-ts4.5/ui/jira-issues-modal/site-selector/index.d.ts +0 -1
  127. package/dist/types-ts4.5/ui/jira-issues-modal/site-selector/messages.d.ts +1 -6
  128. package/dist/types-ts4.5/ui/jira-issues-modal/types.d.ts +2 -0
  129. package/package.json +4 -4
  130. package/report.api.md +1 -0
  131. package/tmp/api-report-tmp.d.ts +1 -0
@@ -7,7 +7,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
7
7
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8
8
  import _regeneratorRuntime from "@babel/runtime/regenerator";
9
9
  /** @jsx jsx */
10
- import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
10
+ import { Fragment, useCallback, useEffect, useMemo, useRef, useState } from 'react';
11
11
  import { css, jsx } from '@emotion/react';
12
12
  import { FormattedMessage, FormattedNumber, useIntl } from 'react-intl-next';
13
13
  import { v4 as uuidv4 } from 'uuid';
@@ -37,8 +37,11 @@ import { JiraSiteSelector } from '../site-selector';
37
37
  import { modalMessages } from './messages';
38
38
  var dropdownContainerStyles = css({
39
39
  display: 'flex',
40
- gap: "var(--ds-space-100, 0.5rem)"
40
+ alignItems: 'center',
41
+ gap: "var(--ds-space-100, 0.5rem)",
42
+ minHeight: '40px' // to prevent vertical shifting when site selector pops in
41
43
  });
44
+
42
45
  var contentContainerStyles = css({
43
46
  display: 'grid',
44
47
  maxHeight: '420px',
@@ -83,12 +86,13 @@ export var getColumnAction = function getColumnAction(oldVisibleColumnKeys, newV
83
86
  };
84
87
  export var PlainJiraIssuesConfigModal = function PlainJiraIssuesConfigModal(props) {
85
88
  var datasourceId = props.datasourceId,
86
- initialParameters = props.parameters,
87
- initialVisibleColumnKeys = props.visibleColumnKeys,
88
89
  onCancel = props.onCancel,
89
90
  onInsert = props.onInsert,
90
91
  _props$viewMode = props.viewMode,
91
- viewMode = _props$viewMode === void 0 ? 'issue' : _props$viewMode;
92
+ viewMode = _props$viewMode === void 0 ? 'issue' : _props$viewMode,
93
+ initialParameters = props.parameters,
94
+ urlBeingEdited = props.url,
95
+ initialVisibleColumnKeys = props.visibleColumnKeys;
92
96
  var _useState = useState([]),
93
97
  _useState2 = _slicedToArray(_useState, 2),
94
98
  availableSites = _useState2[0],
@@ -152,11 +156,9 @@ export var PlainJiraIssuesConfigModal = function PlainJiraIssuesConfigModal(prop
152
156
  modalRenderInstanceId = _useRef.current;
153
157
  var selectedJiraSite = useMemo(function () {
154
158
  if (cloudId) {
155
- // if the cloud id we're editing isn't in available sites then user is likely unauthorized for that site
156
- // TODO: unauthorized to edit flow https://product-fabric.atlassian.net/browse/EDM-7216
157
159
  return availableSites.find(function (jiraSite) {
158
160
  return jiraSite.cloudId === cloudId;
159
- }) || availableSites[0];
161
+ });
160
162
  } else {
161
163
  var currentlyLoggedInSiteUrl = window.location.origin;
162
164
  return availableSites.find(function (jiraSite) {
@@ -408,12 +410,12 @@ export var PlainJiraIssuesConfigModal = function PlainJiraIssuesConfigModal(prop
408
410
  }));
409
411
  }, [columns, defaultVisibleColumnKeys, handleOnNextPage, handleVisibleColumnKeysChange, hasNextPage, loadDatasourceDetails, modalRenderInstanceId, responseItems, status, visibleColumnKeys, extensionKey]);
410
412
  var renderCountModeContent = useCallback(function () {
411
- var url = selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url;
413
+ var selectedJiraSiteUrl = selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url;
412
414
  if (status === 'unauthorized') {
413
415
  return jsx(AccessRequired, {
414
- siteName: selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.displayName
416
+ url: selectedJiraSiteUrl || urlBeingEdited
415
417
  });
416
- } else if (status === 'empty' || !jql || !url) {
418
+ } else if (status === 'empty' || !jql || !selectedJiraSiteUrl) {
417
419
  return jsx("div", {
418
420
  css: smartLinkContainerStyles
419
421
  }, jsx("span", {
@@ -421,22 +423,23 @@ export var PlainJiraIssuesConfigModal = function PlainJiraIssuesConfigModal(prop
421
423
  css: placeholderSmartLinkStyles
422
424
  }, jsx(FormattedMessage, modalMessages.issuesCountSmartCardPlaceholderText)));
423
425
  } else {
424
- var urlWithEncodedJql = "".concat(url, "/issues/?jql=").concat(encodeURI(jql));
426
+ var urlWithEncodedJql = "".concat(selectedJiraSiteUrl, "/issues/?jql=").concat(encodeURI(jql));
425
427
  return jsx("div", {
426
428
  css: smartLinkContainerStyles
427
429
  }, jsx(LinkRenderType, {
428
430
  url: urlWithEncodedJql
429
431
  }));
430
432
  }
431
- }, [jql, selectedJiraSite, status]);
433
+ }, [jql, selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url, status, urlBeingEdited]);
432
434
  var renderIssuesModeContent = useCallback(function () {
435
+ var selectedJiraSiteUrl = selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url;
433
436
  if (status === 'rejected' && jqlUrl) {
434
437
  return jsx(ModalLoadingError, {
435
438
  url: jqlUrl
436
439
  });
437
440
  } else if (status === 'unauthorized') {
438
441
  return jsx(AccessRequired, {
439
- siteName: selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.displayName
442
+ url: selectedJiraSiteUrl || urlBeingEdited
440
443
  });
441
444
  } else if (resolvedWithNoResults) {
442
445
  return jsx(NoResults, null);
@@ -459,24 +462,20 @@ export var PlainJiraIssuesConfigModal = function PlainJiraIssuesConfigModal(prop
459
462
  }));
460
463
  }
461
464
  return issueLikeDataTableView;
462
- }, [status, jqlUrl, resolvedWithNoResults, columns.length, retrieveUrlForSmartCardRender, responseItems.length, issueLikeDataTableView, selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.displayName, jql, currentSearchMethod]);
465
+ }, [columns.length, currentSearchMethod, issueLikeDataTableView, jql, jqlUrl, resolvedWithNoResults, responseItems.length, retrieveUrlForSmartCardRender, selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.url, status, urlBeingEdited]);
463
466
  return jsx(ModalTransition, null, jsx(Modal, {
464
- testId: 'jira-jql-datasource-modal',
467
+ testId: "jira-jql-datasource-modal",
465
468
  onClose: onCancel,
466
469
  width: "calc(100% - 80px)",
467
470
  shouldScrollInViewport: true
468
- }, jsx(ModalHeader, null, jsx(ModalTitle, null, availableSites.length < 2 ? jsx(FormattedMessage, modalMessages.insertIssuesTitle) : jsx("div", {
471
+ }, jsx(ModalHeader, null, jsx(ModalTitle, null, jsx("div", {
469
472
  css: dropdownContainerStyles
470
- }, jsx(FormattedMessage, _extends({}, modalMessages.insertIssuesTitleManySites, {
471
- values: {
472
- siteName: selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.displayName
473
- }
474
- })), jsx(JiraSiteSelector, {
475
- testId: "jira-jql-datasource-modal--site-selector",
473
+ }, availableSites.length < 2 ? jsx(FormattedMessage, modalMessages.insertIssuesTitle) : jsx(Fragment, null, jsx(FormattedMessage, modalMessages.insertIssuesTitleManySites), jsx(JiraSiteSelector, {
476
474
  availableSites: availableSites,
477
475
  onSiteSelection: onSiteSelection,
478
- selectedJiraSite: selectedJiraSite
479
- }))), jsx(ModeSwitcher, {
476
+ selectedJiraSite: selectedJiraSite,
477
+ testId: "jira-jql-datasource-modal--site-selector"
478
+ })))), jsx(ModeSwitcher, {
480
479
  isCompact: true,
481
480
  options: [{
482
481
  label: formatMessage(modalMessages.issueViewModeLabel),
@@ -516,7 +515,7 @@ export var PlainJiraIssuesConfigModal = function PlainJiraIssuesConfigModal(prop
516
515
  appearance: "primary",
517
516
  onClick: onInsertPressed,
518
517
  isDisabled: isInsertDisabled,
519
- testId: 'jira-jql-datasource-modal--insert-button'
518
+ testId: "jira-jql-datasource-modal--insert-button"
520
519
  }, jsx(FormattedMessage, modalMessages.insertIssuesButtonText)))));
521
520
  };
522
521
  var analyticsContextAttributes = {
@@ -17,8 +17,8 @@ export var modalMessages = defineMessages({
17
17
  },
18
18
  insertIssuesTitleManySites: {
19
19
  id: 'linkDataSource.jira-issues.configmodal.insertIssuesTitleManySites',
20
- description: 'Title for the Jira Issues Datasource config modal when multiple sites are available',
21
- defaultMessage: 'Insert Jira issues from {siteName}'
20
+ description: 'Title for the Jira Issues modal when a user has to select a site to inserting issues from',
21
+ defaultMessage: 'Insert Jira issues from'
22
22
  },
23
23
  issueViewModeLabel: {
24
24
  id: 'linkDataSource.jira-issues.configmodal.issueViewModeLabel',
@@ -1,45 +1,70 @@
1
- import _extends from "@babel/runtime/helpers/extends";
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["triggerRef"];
3
+ var _excluded = ["width"];
4
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
6
  /** @jsx jsx */
5
- import { jsx } from '@emotion/react';
7
+ import { useMemo } from 'react';
8
+ import { css, jsx } from '@emotion/react';
6
9
  import { useIntl } from 'react-intl-next';
7
- import Button from '@atlaskit/button/standard-button';
8
- import DropdownMenu, { DropdownItem, DropdownItemGroup } from '@atlaskit/dropdown-menu';
9
- import ChevronDownIcon from '@atlaskit/icon/glyph/chevron-down';
10
+ import Select from '@atlaskit/select';
11
+ import { siteSelectorIndex } from '../../../common/zindex';
10
12
  import { siteSelectorMessages } from './messages';
13
+ var selectStyles = css({
14
+ fontSize: "var(--ds-font-size-100, 14px)",
15
+ fontWeight: "var(--ds-font-weight-medium, 500)",
16
+ lineHeight: "var(--ds-font-lineHeight-200, 20px)",
17
+ zIndex: siteSelectorIndex
18
+ });
11
19
  export var JiraSiteSelector = function JiraSiteSelector(props) {
12
20
  var availableSites = props.availableSites,
13
21
  onSiteSelection = props.onSiteSelection,
14
22
  selectedJiraSite = props.selectedJiraSite,
15
23
  testId = props.testId;
16
- var intl = useIntl();
17
- return jsx(DropdownMenu, {
18
- spacing: "compact",
19
- testId: testId,
20
- trigger: function trigger(_ref) {
21
- var triggerRef = _ref.triggerRef,
22
- props = _objectWithoutProperties(_ref, _excluded);
23
- return jsx(Button, _extends({}, props, {
24
- testId: "".concat(testId, "--trigger"),
25
- spacing: "none",
26
- iconBefore: jsx(ChevronDownIcon, {
27
- label: intl.formatMessage(siteSelectorMessages.dropdownChevronLabel)
28
- }),
29
- ref: triggerRef
30
- }));
24
+ var _useIntl = useIntl(),
25
+ formatMessage = _useIntl.formatMessage;
26
+ var onChange = function onChange(newValue) {
27
+ var selectedSite = availableSites.find(function (site) {
28
+ return site.cloudId === (newValue === null || newValue === void 0 ? void 0 : newValue.value);
29
+ });
30
+ if (selectedSite) {
31
+ onSiteSelection(selectedSite);
31
32
  }
32
- }, jsx(DropdownItemGroup, null, availableSites.map(function (availableSite) {
33
- var displayName = availableSite.displayName,
34
- cloudId = availableSite.cloudId;
35
- var isSelected = displayName === (selectedJiraSite === null || selectedJiraSite === void 0 ? void 0 : selectedJiraSite.displayName);
36
- return jsx(DropdownItem, {
37
- isSelected: isSelected,
38
- key: cloudId,
39
- onClick: function onClick() {
40
- return onSiteSelection(availableSite);
41
- },
42
- testId: testId && "".concat(testId, "--dropdown-item").concat(isSelected ? '__selected' : '')
43
- }, displayName);
44
- })));
33
+ };
34
+ var availableSitesOptions = useMemo(function () {
35
+ return availableSites.map(function (site) {
36
+ return {
37
+ label: site.displayName,
38
+ value: site.cloudId
39
+ };
40
+ });
41
+ }, [availableSites]);
42
+ var selectedSiteOption = selectedJiraSite && {
43
+ label: selectedJiraSite.displayName,
44
+ value: selectedJiraSite.cloudId
45
+ };
46
+ return jsx("span", {
47
+ "data-testid": "".concat(testId, "--trigger")
48
+ }, jsx(Select, {
49
+ css: selectStyles,
50
+ classNamePrefix: testId,
51
+ isLoading: availableSites.length === 0,
52
+ onChange: onChange,
53
+ options: availableSitesOptions,
54
+ placeholder: formatMessage(siteSelectorMessages.chooseSite),
55
+ styles: {
56
+ // prevents the popup menu with available sites from being too narrow
57
+ // if the selected site is much shorter than the other options
58
+ menu: function menu(_ref) {
59
+ var width = _ref.width,
60
+ css = _objectWithoutProperties(_ref, _excluded);
61
+ return _objectSpread(_objectSpread({}, css), {}, {
62
+ minWidth: '100%',
63
+ width: 'max-content'
64
+ });
65
+ }
66
+ },
67
+ testId: testId,
68
+ value: selectedSiteOption
69
+ }));
45
70
  };
@@ -1,13 +1,8 @@
1
1
  import { defineMessages } from 'react-intl-next';
2
2
  export var siteSelectorMessages = defineMessages({
3
- dropdownChevronLabel: {
4
- id: 'linkDataSource.jira-issues.configmodal.dropdownChevronLabel',
5
- description: 'Label for button that reveals more available site options to choose from',
6
- defaultMessage: 'Pick jira site'
7
- },
8
- selectedJiraSiteLabel: {
9
- id: 'linkDataSource.jira-issues.configmodal.selectedJiraSiteLabel',
10
- description: 'Label for a check icon declaring which option is selected',
11
- defaultMessage: '{siteName} is selected'
3
+ chooseSite: {
4
+ id: 'linkDataSource.jira-issues.configmodal.chooseSite',
5
+ description: 'Label for input letting user know they have to choose a site',
6
+ defaultMessage: 'Choose site'
12
7
  }
13
8
  });
@@ -0,0 +1,2 @@
1
+ export declare const stickyTableHeadersIndex = 10;
2
+ export declare const siteSelectorIndex: number;
@@ -1,7 +1,11 @@
1
+ export type AqlValidationResponse = {
2
+ isValid: boolean;
3
+ message: string | null;
4
+ };
1
5
  export type UseValidateAqlTextState = {
2
6
  validateAqlTextLoading: boolean;
3
7
  validateAqlTextError: Error | undefined;
4
8
  isValidAqlText: boolean;
5
- validateAqlText: (aql: string) => Promise<boolean>;
9
+ validateAqlText: (aql: string) => Promise<AqlValidationResponse>;
6
10
  };
7
- export declare const useValidateAqlText: (workspaceId: string, hostname?: string) => UseValidateAqlTextState;
11
+ export declare const useValidateAqlText: (workspaceId: string) => UseValidateAqlTextState;
@@ -19,6 +19,7 @@ declare const _default: {
19
19
  'linkDataSource.column-picker.no-all-items-shown-message.line-1': string;
20
20
  'linkDataSource.column-picker.no-all-items-shown-message.line-2': string;
21
21
  'linkDataSource.column-picker.search': string;
22
+ 'linkDataSource.column-picker.tooltip': string;
22
23
  'linkDataSource.jira-issues.accessInstructions': string;
23
24
  'linkDataSource.jira-issues.accessRequired': string;
24
25
  'linkDataSource.jira-issues.accessRequiredWithSite': string;
@@ -40,6 +41,7 @@ declare const _default: {
40
41
  'linkDataSource.jira-issues.refresh': string;
41
42
  'linkDataSource.jira-issues.unableToLoadItems': string;
42
43
  'linkDataSource.jira-issues.unableToLoadResults': string;
44
+ 'linkDataSource.modal-initial-state.beta': string;
43
45
  'linkDataSource.modal-initial-state.learnMoreLink': string;
44
46
  'linkDataSource.modal-initial-state.searchDescription': string;
45
47
  'linkDataSource.modal-initial-state.searchTitle': string;
@@ -19,6 +19,7 @@ declare const _default: {
19
19
  'linkDataSource.column-picker.no-all-items-shown-message.line-1': string;
20
20
  'linkDataSource.column-picker.no-all-items-shown-message.line-2': string;
21
21
  'linkDataSource.column-picker.search': string;
22
+ 'linkDataSource.column-picker.tooltip': string;
22
23
  'linkDataSource.jira-issues.accessInstructions': string;
23
24
  'linkDataSource.jira-issues.accessRequired': string;
24
25
  'linkDataSource.jira-issues.accessRequiredWithSite': string;
@@ -40,6 +41,7 @@ declare const _default: {
40
41
  'linkDataSource.jira-issues.refresh': string;
41
42
  'linkDataSource.jira-issues.unableToLoadItems': string;
42
43
  'linkDataSource.jira-issues.unableToLoadResults': string;
44
+ 'linkDataSource.modal-initial-state.beta': string;
43
45
  'linkDataSource.modal-initial-state.learnMoreLink': string;
44
46
  'linkDataSource.modal-initial-state.searchDescription': string;
45
47
  'linkDataSource.modal-initial-state.searchTitle': string;
@@ -19,6 +19,7 @@ declare const _default: {
19
19
  'linkDataSource.column-picker.no-all-items-shown-message.line-1': string;
20
20
  'linkDataSource.column-picker.no-all-items-shown-message.line-2': string;
21
21
  'linkDataSource.column-picker.search': string;
22
+ 'linkDataSource.column-picker.tooltip': string;
22
23
  'linkDataSource.jira-issues.accessInstructions': string;
23
24
  'linkDataSource.jira-issues.accessRequired': string;
24
25
  'linkDataSource.jira-issues.accessRequiredWithSite': string;
@@ -40,6 +41,7 @@ declare const _default: {
40
41
  'linkDataSource.jira-issues.refresh': string;
41
42
  'linkDataSource.jira-issues.unableToLoadItems': string;
42
43
  'linkDataSource.jira-issues.unableToLoadResults': string;
44
+ 'linkDataSource.modal-initial-state.beta': string;
43
45
  'linkDataSource.modal-initial-state.learnMoreLink': string;
44
46
  'linkDataSource.modal-initial-state.searchDescription': string;
45
47
  'linkDataSource.modal-initial-state.searchTitle': string;
@@ -19,6 +19,7 @@ declare const _default: {
19
19
  'linkDataSource.column-picker.no-all-items-shown-message.line-1': string;
20
20
  'linkDataSource.column-picker.no-all-items-shown-message.line-2': string;
21
21
  'linkDataSource.column-picker.search': string;
22
+ 'linkDataSource.column-picker.tooltip': string;
22
23
  'linkDataSource.jira-issues.accessInstructions': string;
23
24
  'linkDataSource.jira-issues.accessRequired': string;
24
25
  'linkDataSource.jira-issues.accessRequiredWithSite': string;
@@ -39,6 +40,7 @@ declare const _default: {
39
40
  'linkDataSource.jira-issues.refresh': string;
40
41
  'linkDataSource.jira-issues.unableToLoadItems': string;
41
42
  'linkDataSource.jira-issues.unableToLoadResults': string;
43
+ 'linkDataSource.modal-initial-state.beta': string;
42
44
  'linkDataSource.modal-initial-state.learnMoreLink': string;
43
45
  'linkDataSource.modal-initial-state.searchDescription': string;
44
46
  'linkDataSource.modal-initial-state.searchTitle': string;
@@ -21,10 +21,13 @@ export type FetchObjectSchemasResponse = {
21
21
  values: ObjectSchema[];
22
22
  isLast: boolean;
23
23
  };
24
+ export type ValidationError = {
25
+ iql?: string;
26
+ };
24
27
  export type AqlValidateResponse = {
25
28
  isValid: boolean;
26
29
  errorMessages: string[];
27
- errors: {};
30
+ errors?: ValidationError;
28
31
  };
29
32
  export declare const objectSchemaKey: "objectSchema";
30
33
  export declare const aqlKey: "aql";
@@ -1,6 +1,6 @@
1
1
  import { jsx } from '@emotion/react';
2
2
  interface AccessRequiredProps {
3
- siteName?: string;
3
+ url?: string;
4
4
  }
5
- export declare const AccessRequired: ({ siteName }: AccessRequiredProps) => jsx.JSX.Element;
5
+ export declare const AccessRequired: ({ url }: AccessRequiredProps) => jsx.JSX.Element;
6
6
  export {};
@@ -1,4 +1,3 @@
1
- /** @jsx jsx */
2
1
  import { jsx } from '@emotion/react';
3
2
  import { Site } from '../../../services/getAvailableJiraSites';
4
3
  export interface JiraSiteSelectorProps {
@@ -1,10 +1,5 @@
1
1
  export declare const siteSelectorMessages: {
2
- dropdownChevronLabel: {
3
- id: string;
4
- description: string;
5
- defaultMessage: string;
6
- };
7
- selectedJiraSiteLabel: {
2
+ chooseSite: {
8
3
  id: string;
9
4
  description: string;
10
5
  defaultMessage: string;
@@ -36,6 +36,8 @@ export interface JiraIssuesDatasourceAdf extends DatasourceAdf {
36
36
  export interface JiraIssuesConfigModalProps {
37
37
  datasourceId: string;
38
38
  visibleColumnKeys?: string[];
39
+ /** The url that was used to insert a Jira List of Links */
40
+ url?: string;
39
41
  parameters?: JiraIssueDatasourceParameters;
40
42
  onCancel: () => void;
41
43
  onInsert: (adf: InlineCardAdf | JiraIssuesDatasourceAdf, analyticsEvent?: UIAnalyticsEvent) => void;
@@ -0,0 +1,2 @@
1
+ export declare const stickyTableHeadersIndex = 10;
2
+ export declare const siteSelectorIndex: number;
@@ -1,7 +1,11 @@
1
+ export type AqlValidationResponse = {
2
+ isValid: boolean;
3
+ message: string | null;
4
+ };
1
5
  export type UseValidateAqlTextState = {
2
6
  validateAqlTextLoading: boolean;
3
7
  validateAqlTextError: Error | undefined;
4
8
  isValidAqlText: boolean;
5
- validateAqlText: (aql: string) => Promise<boolean>;
9
+ validateAqlText: (aql: string) => Promise<AqlValidationResponse>;
6
10
  };
7
- export declare const useValidateAqlText: (workspaceId: string, hostname?: string) => UseValidateAqlTextState;
11
+ export declare const useValidateAqlText: (workspaceId: string) => UseValidateAqlTextState;
@@ -19,6 +19,7 @@ declare const _default: {
19
19
  'linkDataSource.column-picker.no-all-items-shown-message.line-1': string;
20
20
  'linkDataSource.column-picker.no-all-items-shown-message.line-2': string;
21
21
  'linkDataSource.column-picker.search': string;
22
+ 'linkDataSource.column-picker.tooltip': string;
22
23
  'linkDataSource.jira-issues.accessInstructions': string;
23
24
  'linkDataSource.jira-issues.accessRequired': string;
24
25
  'linkDataSource.jira-issues.accessRequiredWithSite': string;
@@ -40,6 +41,7 @@ declare const _default: {
40
41
  'linkDataSource.jira-issues.refresh': string;
41
42
  'linkDataSource.jira-issues.unableToLoadItems': string;
42
43
  'linkDataSource.jira-issues.unableToLoadResults': string;
44
+ 'linkDataSource.modal-initial-state.beta': string;
43
45
  'linkDataSource.modal-initial-state.learnMoreLink': string;
44
46
  'linkDataSource.modal-initial-state.searchDescription': string;
45
47
  'linkDataSource.modal-initial-state.searchTitle': string;
@@ -19,6 +19,7 @@ declare const _default: {
19
19
  'linkDataSource.column-picker.no-all-items-shown-message.line-1': string;
20
20
  'linkDataSource.column-picker.no-all-items-shown-message.line-2': string;
21
21
  'linkDataSource.column-picker.search': string;
22
+ 'linkDataSource.column-picker.tooltip': string;
22
23
  'linkDataSource.jira-issues.accessInstructions': string;
23
24
  'linkDataSource.jira-issues.accessRequired': string;
24
25
  'linkDataSource.jira-issues.accessRequiredWithSite': string;
@@ -40,6 +41,7 @@ declare const _default: {
40
41
  'linkDataSource.jira-issues.refresh': string;
41
42
  'linkDataSource.jira-issues.unableToLoadItems': string;
42
43
  'linkDataSource.jira-issues.unableToLoadResults': string;
44
+ 'linkDataSource.modal-initial-state.beta': string;
43
45
  'linkDataSource.modal-initial-state.learnMoreLink': string;
44
46
  'linkDataSource.modal-initial-state.searchDescription': string;
45
47
  'linkDataSource.modal-initial-state.searchTitle': string;
@@ -19,6 +19,7 @@ declare const _default: {
19
19
  'linkDataSource.column-picker.no-all-items-shown-message.line-1': string;
20
20
  'linkDataSource.column-picker.no-all-items-shown-message.line-2': string;
21
21
  'linkDataSource.column-picker.search': string;
22
+ 'linkDataSource.column-picker.tooltip': string;
22
23
  'linkDataSource.jira-issues.accessInstructions': string;
23
24
  'linkDataSource.jira-issues.accessRequired': string;
24
25
  'linkDataSource.jira-issues.accessRequiredWithSite': string;
@@ -40,6 +41,7 @@ declare const _default: {
40
41
  'linkDataSource.jira-issues.refresh': string;
41
42
  'linkDataSource.jira-issues.unableToLoadItems': string;
42
43
  'linkDataSource.jira-issues.unableToLoadResults': string;
44
+ 'linkDataSource.modal-initial-state.beta': string;
43
45
  'linkDataSource.modal-initial-state.learnMoreLink': string;
44
46
  'linkDataSource.modal-initial-state.searchDescription': string;
45
47
  'linkDataSource.modal-initial-state.searchTitle': string;
@@ -19,6 +19,7 @@ declare const _default: {
19
19
  'linkDataSource.column-picker.no-all-items-shown-message.line-1': string;
20
20
  'linkDataSource.column-picker.no-all-items-shown-message.line-2': string;
21
21
  'linkDataSource.column-picker.search': string;
22
+ 'linkDataSource.column-picker.tooltip': string;
22
23
  'linkDataSource.jira-issues.accessInstructions': string;
23
24
  'linkDataSource.jira-issues.accessRequired': string;
24
25
  'linkDataSource.jira-issues.accessRequiredWithSite': string;
@@ -39,6 +40,7 @@ declare const _default: {
39
40
  'linkDataSource.jira-issues.refresh': string;
40
41
  'linkDataSource.jira-issues.unableToLoadItems': string;
41
42
  'linkDataSource.jira-issues.unableToLoadResults': string;
43
+ 'linkDataSource.modal-initial-state.beta': string;
42
44
  'linkDataSource.modal-initial-state.learnMoreLink': string;
43
45
  'linkDataSource.modal-initial-state.searchDescription': string;
44
46
  'linkDataSource.modal-initial-state.searchTitle': string;
@@ -21,10 +21,13 @@ export type FetchObjectSchemasResponse = {
21
21
  values: ObjectSchema[];
22
22
  isLast: boolean;
23
23
  };
24
+ export type ValidationError = {
25
+ iql?: string;
26
+ };
24
27
  export type AqlValidateResponse = {
25
28
  isValid: boolean;
26
29
  errorMessages: string[];
27
- errors: {};
30
+ errors?: ValidationError;
28
31
  };
29
32
  export declare const objectSchemaKey: "objectSchema";
30
33
  export declare const aqlKey: "aql";
@@ -1,6 +1,6 @@
1
1
  import { jsx } from '@emotion/react';
2
2
  interface AccessRequiredProps {
3
- siteName?: string;
3
+ url?: string;
4
4
  }
5
- export declare const AccessRequired: ({ siteName }: AccessRequiredProps) => jsx.JSX.Element;
5
+ export declare const AccessRequired: ({ url }: AccessRequiredProps) => jsx.JSX.Element;
6
6
  export {};
@@ -1,4 +1,3 @@
1
- /** @jsx jsx */
2
1
  import { jsx } from '@emotion/react';
3
2
  import { Site } from '../../../services/getAvailableJiraSites';
4
3
  export interface JiraSiteSelectorProps {
@@ -1,10 +1,5 @@
1
1
  export declare const siteSelectorMessages: {
2
- dropdownChevronLabel: {
3
- id: string;
4
- description: string;
5
- defaultMessage: string;
6
- };
7
- selectedJiraSiteLabel: {
2
+ chooseSite: {
8
3
  id: string;
9
4
  description: string;
10
5
  defaultMessage: string;
@@ -36,6 +36,8 @@ export interface JiraIssuesDatasourceAdf extends DatasourceAdf {
36
36
  export interface JiraIssuesConfigModalProps {
37
37
  datasourceId: string;
38
38
  visibleColumnKeys?: string[];
39
+ /** The url that was used to insert a Jira List of Links */
40
+ url?: string;
39
41
  parameters?: JiraIssueDatasourceParameters;
40
42
  onCancel: () => void;
41
43
  onInsert: (adf: InlineCardAdf | JiraIssuesDatasourceAdf, analyticsEvent?: UIAnalyticsEvent) => void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/link-datasource",
3
- "version": "1.8.0",
3
+ "version": "1.9.1",
4
4
  "description": "UI Components to support linking platform dataset feature",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -34,7 +34,6 @@
34
34
  "@atlaskit/analytics-next": "^9.1.3",
35
35
  "@atlaskit/avatar": "^21.4.0",
36
36
  "@atlaskit/button": "^16.10.0",
37
- "@atlaskit/dropdown-menu": "^12.1.0",
38
37
  "@atlaskit/editor-prosemirror": "1.1.0",
39
38
  "@atlaskit/empty-state": "^7.5.0",
40
39
  "@atlaskit/form": "^8.11.0",
@@ -55,12 +54,12 @@
55
54
  "@atlaskit/pragmatic-drag-and-drop-react-beautiful-dnd-autoscroll": "^0.6.0",
56
55
  "@atlaskit/pragmatic-drag-and-drop-react-indicator": "^0.16.0",
57
56
  "@atlaskit/select": "^16.7.0",
58
- "@atlaskit/smart-card": "^26.35.0",
57
+ "@atlaskit/smart-card": "^26.37.0",
59
58
  "@atlaskit/spinner": "^15.6.0",
60
59
  "@atlaskit/tag": "^11.6.0",
61
60
  "@atlaskit/textfield": "5.6.8",
62
61
  "@atlaskit/theme": "^12.6.0",
63
- "@atlaskit/tokens": "^1.26.0",
62
+ "@atlaskit/tokens": "^1.28.0",
64
63
  "@atlaskit/tooltip": "^17.8.0",
65
64
  "@atlaskit/ufo": "^0.2.4",
66
65
  "@atlassianlabs/jql-ast": "^2.1.0",
@@ -92,6 +91,7 @@
92
91
  "@testing-library/react": "^12.1.5",
93
92
  "@testing-library/react-hooks": "^8.0.1",
94
93
  "@testing-library/user-event": "^14.4.3",
94
+ "@types/debounce-promise": "^3.1.2",
95
95
  "fetch-mock": "^8.0.0",
96
96
  "jest-fetch-mock": "^3.0.3",
97
97
  "json-ld-types": "^3.9.1",
package/report.api.md CHANGED
@@ -135,6 +135,7 @@ interface JiraIssuesConfigModalProps {
135
135
  ) => void;
136
136
  // (undocumented)
137
137
  parameters?: JiraIssueDatasourceParameters;
138
+ url?: string;
138
139
  // (undocumented)
139
140
  viewMode?: JiraIssueViewModes;
140
141
  // (undocumented)
@@ -110,6 +110,7 @@ interface JiraIssuesConfigModalProps {
110
110
  onInsert: (adf: InlineCardAdf | JiraIssuesDatasourceAdf, analyticsEvent?: UIAnalyticsEvent) => void;
111
111
  // (undocumented)
112
112
  parameters?: JiraIssueDatasourceParameters;
113
+ url?: string;
113
114
  // (undocumented)
114
115
  viewMode?: JiraIssueViewModes;
115
116
  // (undocumented)