@atlaskit/link-datasource 1.24.5 → 1.24.7

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 (140) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/common/types.js +5 -1
  3. package/dist/cjs/services/{getAvailableJiraSites.js → getAvailableSites.js} +5 -5
  4. package/dist/cjs/ui/common/error-state/loading-error.js +1 -1
  5. package/dist/cjs/ui/common/error-state/messages.js +56 -0
  6. package/dist/cjs/ui/common/error-state/modal-loading-error.js +1 -1
  7. package/dist/cjs/ui/common/error-state/no-instances.js +9 -5
  8. package/dist/cjs/ui/common/error-state/no-results.js +1 -1
  9. package/dist/cjs/ui/common/initial-state-view/index.js +73 -0
  10. package/dist/cjs/ui/{jira-issues-modal → common}/initial-state-view/messages.js +9 -2
  11. package/dist/cjs/ui/{jira-issues-modal → common/modal}/basic-search-input/index.js +8 -6
  12. package/dist/cjs/ui/{jira-issues-modal → common/modal}/basic-search-input/messages.js +5 -0
  13. package/dist/cjs/ui/common/modal/content-container/index.js +35 -0
  14. package/dist/cjs/ui/{jira-issues-modal → common/modal}/site-selector/index.js +21 -10
  15. package/dist/cjs/ui/{jira-issues-modal → common/modal}/site-selector/messages.js +6 -0
  16. package/dist/cjs/ui/confluence-search-modal/index.js +29 -0
  17. package/dist/cjs/ui/confluence-search-modal/modal/confluence-search-initial-state-svg.js +152 -0
  18. package/dist/cjs/ui/confluence-search-modal/modal/index.js +138 -0
  19. package/dist/cjs/ui/confluence-search-modal/modal/messages.js +54 -0
  20. package/dist/cjs/ui/issue-like-table/index.js +2 -0
  21. package/dist/cjs/ui/jira-issues-modal/index.js +1 -1
  22. package/dist/cjs/ui/jira-issues-modal/jira-search-container/index.js +8 -5
  23. package/dist/cjs/ui/jira-issues-modal/modal/index.js +46 -52
  24. package/dist/cjs/ui/jira-issues-modal/modal/{display-view-dropdown/display-view-drop-down.js → jira-display-view-dropdown/jira-display-view-drop-down.js} +3 -3
  25. package/dist/cjs/ui/jira-issues-modal/{initial-state-view/assets/initial-state-svg.js → modal/jira-issues-initial-state-svg.js} +2 -2
  26. package/dist/cjs/ui/jira-issues-modal/modal/messages.js +66 -0
  27. package/dist/es2019/common/types.js +1 -0
  28. package/dist/es2019/services/{getAvailableJiraSites.js → getAvailableSites.js} +2 -2
  29. package/dist/es2019/ui/common/error-state/loading-error.js +1 -1
  30. package/dist/es2019/ui/common/error-state/messages.js +56 -0
  31. package/dist/es2019/ui/common/error-state/modal-loading-error.js +1 -1
  32. package/dist/es2019/ui/common/error-state/no-instances.js +20 -12
  33. package/dist/es2019/ui/common/error-state/no-results.js +1 -1
  34. package/dist/es2019/ui/{jira-issues-modal → common}/initial-state-view/index.js +17 -26
  35. package/dist/es2019/ui/{jira-issues-modal → common}/initial-state-view/messages.js +9 -2
  36. package/dist/es2019/ui/{jira-issues-modal → common/modal}/basic-search-input/index.js +8 -5
  37. package/dist/es2019/ui/{jira-issues-modal → common/modal}/basic-search-input/messages.js +5 -0
  38. package/dist/es2019/ui/common/modal/content-container/index.js +30 -0
  39. package/dist/es2019/ui/{jira-issues-modal → common/modal}/site-selector/index.js +20 -9
  40. package/dist/es2019/ui/{jira-issues-modal → common/modal}/site-selector/messages.js +6 -0
  41. package/dist/es2019/ui/confluence-search-modal/index.js +13 -0
  42. package/dist/es2019/ui/confluence-search-modal/modal/confluence-search-initial-state-svg.js +143 -0
  43. package/dist/es2019/ui/confluence-search-modal/modal/index.js +93 -0
  44. package/dist/es2019/ui/confluence-search-modal/modal/messages.js +48 -0
  45. package/dist/es2019/ui/issue-like-table/index.js +5 -0
  46. package/dist/es2019/ui/jira-issues-modal/index.js +1 -1
  47. package/dist/es2019/ui/jira-issues-modal/jira-search-container/index.js +5 -2
  48. package/dist/es2019/ui/jira-issues-modal/modal/index.js +43 -49
  49. package/dist/es2019/ui/jira-issues-modal/modal/{display-view-dropdown/display-view-drop-down.js → jira-display-view-dropdown/jira-display-view-drop-down.js} +2 -2
  50. package/dist/es2019/ui/jira-issues-modal/{initial-state-view/assets/initial-state-svg.js → modal/jira-issues-initial-state-svg.js} +1 -1
  51. package/dist/es2019/ui/jira-issues-modal/modal/messages.js +66 -0
  52. package/dist/esm/common/types.js +1 -0
  53. package/dist/esm/services/{getAvailableJiraSites.js → getAvailableSites.js} +4 -4
  54. package/dist/esm/ui/common/error-state/loading-error.js +1 -1
  55. package/dist/esm/ui/common/error-state/messages.js +56 -0
  56. package/dist/esm/ui/common/error-state/modal-loading-error.js +1 -1
  57. package/dist/esm/ui/common/error-state/no-instances.js +10 -6
  58. package/dist/esm/ui/common/error-state/no-results.js +1 -1
  59. package/dist/esm/ui/{jira-issues-modal → common}/initial-state-view/index.js +17 -26
  60. package/dist/esm/ui/{jira-issues-modal → common}/initial-state-view/messages.js +9 -2
  61. package/dist/esm/ui/{jira-issues-modal → common/modal}/basic-search-input/index.js +8 -6
  62. package/dist/esm/ui/{jira-issues-modal → common/modal}/basic-search-input/messages.js +5 -0
  63. package/dist/esm/ui/common/modal/content-container/index.js +29 -0
  64. package/dist/esm/ui/{jira-issues-modal → common/modal}/site-selector/index.js +20 -9
  65. package/dist/esm/ui/{jira-issues-modal → common/modal}/site-selector/messages.js +6 -0
  66. package/dist/esm/ui/confluence-search-modal/index.js +17 -0
  67. package/dist/esm/ui/confluence-search-modal/modal/confluence-search-initial-state-svg.js +145 -0
  68. package/dist/esm/ui/confluence-search-modal/modal/index.js +127 -0
  69. package/dist/esm/ui/confluence-search-modal/modal/messages.js +48 -0
  70. package/dist/esm/ui/issue-like-table/index.js +2 -0
  71. package/dist/esm/ui/jira-issues-modal/index.js +1 -1
  72. package/dist/esm/ui/jira-issues-modal/jira-search-container/index.js +5 -2
  73. package/dist/esm/ui/jira-issues-modal/modal/index.js +43 -49
  74. package/dist/esm/ui/jira-issues-modal/modal/{display-view-dropdown/display-view-drop-down.js → jira-display-view-dropdown/jira-display-view-drop-down.js} +2 -2
  75. package/dist/esm/ui/jira-issues-modal/{initial-state-view/assets/initial-state-svg.js → modal/jira-issues-initial-state-svg.js} +1 -1
  76. package/dist/esm/ui/jira-issues-modal/modal/messages.js +66 -0
  77. package/dist/types/common/types.d.ts +30 -0
  78. package/dist/types/services/getAvailableSites.d.ts +2 -0
  79. package/dist/types/ui/common/error-state/messages.d.ts +45 -0
  80. package/dist/types/ui/common/error-state/no-instances.d.ts +8 -1
  81. package/dist/types/ui/common/initial-state-view/index.d.ts +16 -0
  82. package/dist/{types-ts4.5/ui/jira-issues-modal → types/ui/common}/initial-state-view/messages.d.ts +6 -1
  83. package/dist/types/ui/{jira-issues-modal → common/modal}/basic-search-input/index.d.ts +5 -2
  84. package/dist/types/ui/{jira-issues-modal → common/modal}/basic-search-input/messages.d.ts +5 -0
  85. package/dist/types/ui/common/modal/content-container/index.d.ts +8 -0
  86. package/dist/types/ui/common/modal/site-selector/index.d.ts +11 -0
  87. package/dist/{types-ts4.5/ui/jira-issues-modal → types/ui/common/modal}/site-selector/messages.d.ts +5 -0
  88. package/dist/types/ui/confluence-search-modal/index.d.ts +5 -0
  89. package/dist/types/ui/confluence-search-modal/modal/confluence-search-initial-state-svg.d.ts +2 -0
  90. package/dist/types/ui/confluence-search-modal/modal/index.d.ts +3 -0
  91. package/dist/types/ui/confluence-search-modal/modal/messages.d.ts +47 -0
  92. package/dist/types/ui/jira-issues-modal/basic-filters/hooks/useFilterOptions.d.ts +1 -1
  93. package/dist/types/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.d.ts +1 -1
  94. package/dist/types/ui/jira-issues-modal/basic-filters/ui/index.d.ts +1 -1
  95. package/dist/types/ui/jira-issues-modal/index.d.ts +2 -2
  96. package/dist/types/ui/jira-issues-modal/jira-search-container/index.d.ts +2 -2
  97. package/dist/types/ui/jira-issues-modal/modal/index.d.ts +6 -5
  98. package/dist/types/ui/jira-issues-modal/modal/jira-display-view-dropdown/jira-display-view-drop-down.d.ts +8 -0
  99. package/dist/types/ui/jira-issues-modal/modal/jira-issues-initial-state-svg.d.ts +2 -0
  100. package/dist/types/ui/jira-issues-modal/modal/messages.d.ts +60 -0
  101. package/dist/types/ui/jira-issues-modal/types.d.ts +1 -28
  102. package/dist/types-ts4.5/common/types.d.ts +30 -0
  103. package/dist/types-ts4.5/services/getAvailableSites.d.ts +2 -0
  104. package/dist/types-ts4.5/ui/common/error-state/messages.d.ts +45 -0
  105. package/dist/types-ts4.5/ui/common/error-state/no-instances.d.ts +8 -1
  106. package/dist/types-ts4.5/ui/common/initial-state-view/index.d.ts +16 -0
  107. package/dist/{types/ui/jira-issues-modal → types-ts4.5/ui/common}/initial-state-view/messages.d.ts +6 -1
  108. package/dist/types-ts4.5/ui/{jira-issues-modal → common/modal}/basic-search-input/index.d.ts +5 -2
  109. package/dist/types-ts4.5/ui/{jira-issues-modal → common/modal}/basic-search-input/messages.d.ts +5 -0
  110. package/dist/types-ts4.5/ui/common/modal/content-container/index.d.ts +8 -0
  111. package/dist/types-ts4.5/ui/common/modal/site-selector/index.d.ts +11 -0
  112. package/dist/{types/ui/jira-issues-modal → types-ts4.5/ui/common/modal}/site-selector/messages.d.ts +5 -0
  113. package/dist/types-ts4.5/ui/confluence-search-modal/index.d.ts +5 -0
  114. package/dist/types-ts4.5/ui/confluence-search-modal/modal/confluence-search-initial-state-svg.d.ts +2 -0
  115. package/dist/types-ts4.5/ui/confluence-search-modal/modal/index.d.ts +3 -0
  116. package/dist/types-ts4.5/ui/confluence-search-modal/modal/messages.d.ts +47 -0
  117. package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/hooks/useFilterOptions.d.ts +1 -1
  118. package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/async-popup-select/index.d.ts +1 -1
  119. package/dist/types-ts4.5/ui/jira-issues-modal/basic-filters/ui/index.d.ts +1 -1
  120. package/dist/types-ts4.5/ui/jira-issues-modal/index.d.ts +2 -2
  121. package/dist/types-ts4.5/ui/jira-issues-modal/jira-search-container/index.d.ts +2 -2
  122. package/dist/types-ts4.5/ui/jira-issues-modal/modal/index.d.ts +6 -5
  123. package/dist/types-ts4.5/ui/jira-issues-modal/modal/jira-display-view-dropdown/jira-display-view-drop-down.d.ts +8 -0
  124. package/dist/types-ts4.5/ui/jira-issues-modal/modal/jira-issues-initial-state-svg.d.ts +2 -0
  125. package/dist/types-ts4.5/ui/jira-issues-modal/modal/messages.d.ts +60 -0
  126. package/dist/types-ts4.5/ui/jira-issues-modal/types.d.ts +1 -28
  127. package/examples-helpers/mockSmartLinkData.ts +44 -0
  128. package/examples-helpers/smartLinkCustomClient.ts +31 -20
  129. package/package.json +5 -2
  130. package/dist/cjs/ui/jira-issues-modal/initial-state-view/index.js +0 -81
  131. package/dist/types/services/getAvailableJiraSites.d.ts +0 -2
  132. package/dist/types/ui/jira-issues-modal/initial-state-view/assets/initial-state-svg.d.ts +0 -2
  133. package/dist/types/ui/jira-issues-modal/initial-state-view/index.d.ts +0 -8
  134. package/dist/types/ui/jira-issues-modal/modal/display-view-dropdown/display-view-drop-down.d.ts +0 -8
  135. package/dist/types/ui/jira-issues-modal/site-selector/index.d.ts +0 -9
  136. package/dist/types-ts4.5/services/getAvailableJiraSites.d.ts +0 -2
  137. package/dist/types-ts4.5/ui/jira-issues-modal/initial-state-view/assets/initial-state-svg.d.ts +0 -2
  138. package/dist/types-ts4.5/ui/jira-issues-modal/initial-state-view/index.d.ts +0 -8
  139. package/dist/types-ts4.5/ui/jira-issues-modal/modal/display-view-dropdown/display-view-drop-down.d.ts +0 -8
  140. package/dist/types-ts4.5/ui/jira-issues-modal/site-selector/index.d.ts +0 -9
@@ -0,0 +1,47 @@
1
+ export declare const confluenceSearchModalMessages: {
2
+ cancelButtonText: {
3
+ id: string;
4
+ description: string;
5
+ defaultMessage: string;
6
+ };
7
+ insertResultsButtonText: {
8
+ id: string;
9
+ description: string;
10
+ defaultMessage: string;
11
+ };
12
+ searchLabel: {
13
+ id: string;
14
+ description: string;
15
+ defaultMessage: string;
16
+ };
17
+ insertIssuesTitle: {
18
+ id: string;
19
+ description: string;
20
+ defaultMessage: string;
21
+ };
22
+ insertIssuesTitleManySites: {
23
+ id: string;
24
+ description: string;
25
+ defaultMessage: string;
26
+ };
27
+ initialViewSearchTitle: {
28
+ id: string;
29
+ description: string;
30
+ defaultMessage: string;
31
+ };
32
+ initialViewSearchDescription: {
33
+ id: string;
34
+ description: string;
35
+ defaultMessage: string;
36
+ };
37
+ noAccessToConfluenceSitesTitle: {
38
+ id: string;
39
+ description: string;
40
+ defaultMessage: string;
41
+ };
42
+ noAccessToConfluenceSitesDescription: {
43
+ id: string;
44
+ description: string;
45
+ defaultMessage: string;
46
+ };
47
+ };
@@ -1,5 +1,5 @@
1
1
  import { IntlShape } from 'react-intl-next';
2
- import type { Site } from '../../types';
2
+ import type { Site } from '../../../../common/types';
3
3
  import { AvatarLabelOption, BasicFilterFieldType, SelectOption } from '../types';
4
4
  interface FilterOptionsProps {
5
5
  filterType: BasicFilterFieldType;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import type { Site } from '../../../types';
2
+ import type { Site } from '../../../../../common/types';
3
3
  import { BasicFilterFieldType, SelectOption } from '../../types';
4
4
  export interface AsyncPopupSelectProps {
5
5
  filterType: BasicFilterFieldType;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import type { Site } from '../../types';
2
+ import type { Site } from '../../../../common/types';
3
3
  import type { BasicFilterFieldType, SelectedOptionsMap, SelectOption } from '../types';
4
4
  export declare const availableBasicFilterTypes: BasicFilterFieldType[];
5
5
  export interface BasicFilterContainerProps {
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { JiraIssuesConfigModalProps } from './types';
2
+ import { ConfigModalProps } from '../../common/types';
3
3
  export declare const JIRA_LIST_OF_LINKS_DATASOURCE_ID = "d8b75300-dfda-4519-b6cd-e49abbd50401";
4
- declare const JiraIssuesConfigModalWithWrappers: (props: JiraIssuesConfigModalProps) => JSX.Element;
4
+ declare const JiraIssuesConfigModalWithWrappers: (props: ConfigModalProps) => JSX.Element;
5
5
  export default JiraIssuesConfigModalWithWrappers;
@@ -1,7 +1,7 @@
1
1
  import { jsx } from '@emotion/react';
2
- import type { JiraSearchMethod } from '../../../common/types';
2
+ import type { JiraSearchMethod, Site } from '../../../common/types';
3
3
  import { SelectedOptionsMap } from '../basic-filters/types';
4
- import { JiraIssueDatasourceParameters, JiraIssueDatasourceParametersQuery, Site } from '../types';
4
+ import { JiraIssueDatasourceParameters, JiraIssueDatasourceParametersQuery } from '../types';
5
5
  export declare const DEFAULT_JQL_QUERY = "ORDER BY created DESC";
6
6
  export declare const ALLOWED_ORDER_BY_KEYS: string[];
7
7
  export declare const FILTER_SELECTION_DEBOUNCE_MS = 500;
@@ -3,18 +3,19 @@ import { jsx } from '@emotion/react';
3
3
  import { UIAnalyticsEvent } from '@atlaskit/analytics-next';
4
4
  import { InlineCardAdf } from '@atlaskit/linking-common/types';
5
5
  import { DatasourceAction } from '../../../analytics/types';
6
- import { JiraIssueDatasourceParameters, JiraIssuesConfigModalProps, JiraIssueViewModes } from '../types';
6
+ import type { ConfigModalProps, IssueViewModes } from '../../../common/types';
7
+ import { JiraIssueDatasourceParameters } from '../types';
7
8
  /**
8
9
  * This method should be called when one atomic action is performed on columns: adding new item, removing one item, changing items order.
9
10
  * The assumption is that since only one action is changed at each time, we don't have to verify the actual contents of the lists.
10
11
  */
11
12
  export declare const getColumnAction: (oldVisibleColumnKeys: string[], newVisibleColumnKeys: string[]) => DatasourceAction;
12
- export declare const PlainJiraIssuesConfigModal: (props: JiraIssuesConfigModalProps) => jsx.JSX.Element;
13
+ export declare const PlainJiraIssuesConfigModal: (props: ConfigModalProps) => jsx.JSX.Element;
13
14
  export declare const JiraIssuesConfigModal: import("react").ForwardRefExoticComponent<{
14
15
  datasourceId: string;
15
16
  url?: string | undefined;
16
- parameters?: JiraIssueDatasourceParameters | undefined;
17
+ parameters?: import("@atlaskit/linking-types").DatasourceParameters | JiraIssueDatasourceParameters | undefined;
17
18
  onCancel: () => void;
18
- onInsert: (adf: import("../types").JiraIssuesDatasourceAdf | InlineCardAdf, analyticsEvent?: UIAnalyticsEvent | undefined) => void;
19
- viewMode?: JiraIssueViewModes | undefined;
19
+ onInsert: (adf: InlineCardAdf | import("@atlaskit/linking-common/types").DatasourceAdf<Record<string, unknown>>, analyticsEvent?: UIAnalyticsEvent | undefined) => void;
20
+ viewMode?: IssueViewModes | undefined;
20
21
  } & Partial<Pick<import("../../issue-like-table/types").IssueLikeDataTableViewProps, "visibleColumnKeys" | "wrappedColumnKeys" | "columnCustomSizes">> & import("@atlaskit/analytics-next").WithContextProps & import("react").RefAttributes<any>>;
@@ -0,0 +1,8 @@
1
+ /** @jsx jsx */
2
+ import { jsx } from '@emotion/react';
3
+ import { IssueViewModes } from '../../../../common/types';
4
+ export type JiraDisplayViewDropDownProps = {
5
+ onViewModeChange: (value: IssueViewModes) => void;
6
+ viewMode: IssueViewModes;
7
+ };
8
+ export declare const JiraDisplayViewDropDown: ({ onViewModeChange, viewMode, }: JiraDisplayViewDropDownProps) => jsx.JSX.Element;
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const JiraInitialStateSVG: () => JSX.Element;
@@ -49,4 +49,64 @@ export declare const modalMessages: {
49
49
  description: string;
50
50
  defaultMessage: string;
51
51
  };
52
+ searchJiraTitleDuplicate: {
53
+ id: string;
54
+ description: string;
55
+ defaultMessage: string;
56
+ };
57
+ searchJiraTitle: {
58
+ id: string;
59
+ description: string;
60
+ defaultMessage: string;
61
+ };
62
+ searchDescriptionForJiraBasicSearchDuplicate: {
63
+ id: string;
64
+ description: string;
65
+ defaultMessage: string;
66
+ };
67
+ searchDescriptionForJiraBasicSearch: {
68
+ id: string;
69
+ description: string;
70
+ defaultMessage: string;
71
+ };
72
+ searchDescriptionForJiraJQLSearchDuplicate: {
73
+ id: string;
74
+ description: string;
75
+ defaultMessage: string;
76
+ };
77
+ searchDescriptionForJiraJQLSearch: {
78
+ id: string;
79
+ description: string;
80
+ defaultMessage: string;
81
+ };
82
+ learnMoreLinkDuplicate: {
83
+ id: string;
84
+ description: string;
85
+ defaultMessage: string;
86
+ };
87
+ learnMoreLink: {
88
+ id: string;
89
+ description: string;
90
+ defaultMessage: string;
91
+ };
92
+ noAccessToJiraSitesTitleDuplicate: {
93
+ id: string;
94
+ description: string;
95
+ defaultMessage: string;
96
+ };
97
+ noAccessToJiraSitesTitle: {
98
+ id: string;
99
+ description: string;
100
+ defaultMessage: string;
101
+ };
102
+ noAccessToJiraSitesDescriptionDuplicate: {
103
+ id: string;
104
+ description: string;
105
+ defaultMessage: string;
106
+ };
107
+ noAccessToJiraSitesDescription: {
108
+ id: string;
109
+ description: string;
110
+ defaultMessage: string;
111
+ };
52
112
  };
@@ -1,6 +1,4 @@
1
- import type { UIAnalyticsEvent } from '@atlaskit/analytics-next';
2
- import { DatasourceAdf, InlineCardAdf } from '@atlaskit/linking-common/types';
3
- import { IssueLikeDataTableViewProps } from '../issue-like-table/types';
1
+ import { DatasourceAdf } from '@atlaskit/linking-common/types';
4
2
  type XOR<T1, T2> = (T1 & {
5
3
  [k in Exclude<keyof T2, keyof T1>]?: never;
6
4
  }) | (T2 & {
@@ -14,30 +12,5 @@ export type JiraIssueDatasourceParametersQuery = XOR<{
14
12
  export type JiraIssueDatasourceParameters = {
15
13
  cloudId: string;
16
14
  } & JiraIssueDatasourceParametersQuery;
17
- export type JiraIssueViewModes = 'issue' | 'count';
18
- export interface Site {
19
- cloudId: string;
20
- displayName: string;
21
- url: string;
22
- }
23
15
  export type JiraIssuesDatasourceAdf = DatasourceAdf<JiraIssueDatasourceParameters>;
24
- export type JiraIssuesConfigModalProps = {
25
- /** Unique identifier for which type of datasource is being rendered and for making its requests */
26
- datasourceId: string;
27
- /** The url that was used to insert a Jira List of Links */
28
- url?: string;
29
- /** Parameters for making the data requests necessary to render data within the table */
30
- parameters?: JiraIssueDatasourceParameters;
31
- /** Callback function to be invoked when the modal is closed either via cancel button click, esc keydown, or modal blanket click */
32
- onCancel: () => void;
33
- /** Callback function to be invoked when the insert issues button is clicked */
34
- onInsert: (adf: InlineCardAdf | JiraIssuesDatasourceAdf, analyticsEvent?: UIAnalyticsEvent) => void;
35
- /** The view mode that the modal will show on open:
36
- * - Table = Displays a list of links in table format
37
- * - Inline link = Presents a smart link that shows the count of query results. However, if there's only one result, it converts to an inline smart link of that issue.
38
-
39
- * The view modes in 'JiraIssueViewModes' have not been changed from 'count' to 'inline link' and 'issue' to 'table'
40
- * because it will introduce breaking changes to the public API requiring a major version bump*/
41
- viewMode?: JiraIssueViewModes;
42
- } & Partial<Pick<IssueLikeDataTableViewProps, 'visibleColumnKeys' | 'wrappedColumnKeys' | 'columnCustomSizes'>>;
43
16
  export {};
@@ -64,4 +64,48 @@ export const mocks = {
64
64
  url: 'https://product-fabric.atlassian.net/browse/EDM-5941',
65
65
  },
66
66
  } as JsonLd.Response,
67
+ notFound: {
68
+ meta: {
69
+ visibility: 'not_found',
70
+ access: 'forbidden',
71
+ auth: [],
72
+ definitionId: 'd1',
73
+ key: 'object-provider',
74
+ },
75
+ data: {
76
+ '@context': {
77
+ '@vocab': 'https://www.w3.org/ns/activitystreams#',
78
+ atlassian: 'https://schema.atlassian.com/ns/vocabulary#',
79
+ schema: 'http://schema.org/',
80
+ },
81
+ '@type': 'Object',
82
+ name: 'I love cheese',
83
+ url: 'https://some.url',
84
+ },
85
+ } as JsonLd.Response,
86
+ forbidden: {
87
+ meta: {
88
+ visibility: 'restricted',
89
+ access: 'forbidden',
90
+ auth: [
91
+ {
92
+ key: 'some-flow',
93
+ displayName: 'Flow',
94
+ url: 'https://outbound-auth/flow',
95
+ },
96
+ ],
97
+ definitionId: 'd1',
98
+ key: 'object-provider',
99
+ },
100
+ data: {
101
+ '@context': {
102
+ '@vocab': 'https://www.w3.org/ns/activitystreams#',
103
+ atlassian: 'https://schema.atlassian.com/ns/vocabulary#',
104
+ schema: 'http://schema.org/',
105
+ },
106
+ '@type': 'Object',
107
+ name: 'I love cheese',
108
+ url: 'https://some.url',
109
+ },
110
+ } as JsonLd.Response,
67
111
  };
@@ -8,27 +8,38 @@ import { mocks } from './mockSmartLinkData';
8
8
 
9
9
  const jqlUrlRegExp = /.+[jql=].+/;
10
10
 
11
- class SmartLinkClient extends CardClient {
12
- fetchData(url: string): Promise<JsonLd.Response> {
13
- switch (url) {
14
- case 'https://product-fabric.atlassian.net/browse/EDM-5941':
15
- case 'https://product-fabric.atlassian.net/browse/EDM-5591':
16
- return Promise.resolve(mocks.resolved);
17
- case 'https://link-that-does-not-resolve.com':
18
- return Promise.reject(`Can't resolve from ${url}`);
19
- case 'https://link-that-is-unsupported.com':
20
- throw new APIError(
21
- 'fatal',
22
- new URL(url).hostname,
23
- 'received unsupported error',
24
- 'ResolveUnsupportedError',
25
- );
26
- case jqlUrlRegExp.test(url) ? url : undefined:
27
- return Promise.resolve(mockJqlSmartLinkData.resolved);
28
- default:
29
- return Promise.resolve(mocks.unauthorized);
30
- }
11
+ const mockedFetch = (url: string): Promise<JsonLd.Response> => {
12
+ switch (url) {
13
+ case 'https://product-fabric.atlassian.net/browse/EDM-5941':
14
+ case 'https://product-fabric.atlassian.net/browse/EDM-5591':
15
+ return Promise.resolve(mocks.resolved);
16
+ case 'https://link-that-does-not-resolve.com':
17
+ return Promise.reject(`Can't resolve from ${url}`);
18
+ case 'https://link-that-is-still-resolving.com/long-url/very-very-very-very-very-very-very-long':
19
+ return new Promise(() => {});
20
+ case 'https://link-that-is-unauthorized.com':
21
+ return Promise.resolve(mocks.unauthorized);
22
+ case 'https://link-that-is-not-found.com/long':
23
+ return Promise.resolve(mocks.notFound);
24
+ case 'https://link-that-is-forbidden.com':
25
+ return Promise.resolve(mocks.forbidden);
26
+ case 'https://link-that-is-unsupported.com':
27
+ throw new APIError(
28
+ 'fatal',
29
+ new URL(url).hostname,
30
+ 'received unsupported error',
31
+ 'ResolveUnsupportedError',
32
+ );
33
+ case jqlUrlRegExp.test(url) ? url : undefined:
34
+ return Promise.resolve(mockJqlSmartLinkData.resolved);
35
+ default:
36
+ return Promise.resolve(mocks.unauthorized);
31
37
  }
38
+ };
39
+
40
+ class SmartLinkClient extends CardClient {
41
+ prefetchData = mockedFetch;
42
+ fetchData = mockedFetch;
32
43
  }
33
44
 
34
45
  export default SmartLinkClient;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/link-datasource",
3
- "version": "1.24.5",
3
+ "version": "1.24.7",
4
4
  "description": "UI Components to support linking platform dataset feature",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -66,7 +66,7 @@
66
66
  "@atlaskit/spinner": "^16.0.0",
67
67
  "@atlaskit/tag": "^12.0.0",
68
68
  "@atlaskit/textfield": "6.1.3",
69
- "@atlaskit/theme": "^12.6.0",
69
+ "@atlaskit/theme": "^12.7.0",
70
70
  "@atlaskit/tokens": "^1.42.0",
71
71
  "@atlaskit/tooltip": "^18.1.0",
72
72
  "@atlaskit/ufo": "^0.2.4",
@@ -152,6 +152,9 @@
152
152
  },
153
153
  "platform.linking-platform.datasource.enable-abort-controller": {
154
154
  "type": "boolean"
155
+ },
156
+ "platform.linking-platform.datasource.enable-stricter-jql-encoding": {
157
+ "type": "boolean"
155
158
  }
156
159
  }
157
160
  }
@@ -1,81 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.InitialStateView = void 0;
8
- var _react = require("react");
9
- var _react2 = require("@emotion/react");
10
- var _reactIntlNext = require("react-intl-next");
11
- var _lozenge = _interopRequireDefault(require("@atlaskit/lozenge"));
12
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
13
- var _colors = require("@atlaskit/theme/colors");
14
- var _initialStateSvg = require("./assets/initial-state-svg");
15
- var _messages = require("./messages");
16
- /** @jsx jsx */
17
-
18
- var initialStateViewContainerStyles = (0, _react2.css)({
19
- display: 'flex',
20
- justifyContent: 'center',
21
- height: '100%'
22
- });
23
- var svgAndTextsWrapperStyles = (0, _react2.css)({
24
- textAlign: 'center',
25
- alignSelf: 'center',
26
- paddingTop: "var(--ds-space-600, 48px)",
27
- paddingBottom: "var(--ds-space-600, 48px)",
28
- width: '260px'
29
- });
30
- var betaTagStyles = (0, _react2.css)({
31
- display: 'flex'
32
- });
33
- var searchTitleStyles = (0, _react2.css)({
34
- color: "var(--ds-text-subtlest, ".concat(_colors.N300, ")"),
35
- font: "var(--ds-font-heading-medium, normal 500 20px/24px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)",
36
- paddingTop: "var(--ds-space-200, 16px)",
37
- paddingBottom: "var(--ds-space-100, 8px)",
38
- display: 'flex',
39
- justifyContent: 'center',
40
- alignItems: 'center',
41
- gap: "var(--ds-space-100, 8px)"
42
- });
43
- var mainTextStyles = (0, _react2.css)({
44
- color: "var(--ds-text-subtlest, ".concat(_colors.N300, ")")
45
- });
46
- var learnMoreLinkStyles = (0, _react2.css)({
47
- paddingTop: "var(--ds-space-200, 16px)",
48
- display: 'inline-block'
49
- });
50
- var methodToDescriptionMessage = {
51
- basic: _messages.initialStateViewMessages.searchDescriptionForBasicSearch,
52
- jql: _messages.initialStateViewMessages.searchDescriptionForJQLSearch
53
- };
54
- var jqlSupportDocumentLink = 'https://support.atlassian.com/jira-service-management-cloud/docs/use-advanced-search-with-jira-query-language-jql/';
55
- var InitialStateView = exports.InitialStateView = function InitialStateView(_ref) {
56
- var searchMethod = _ref.searchMethod;
57
- var showBasicFilters = (0, _react.useMemo)(function () {
58
- if ((0, _platformFeatureFlags.getBooleanFF)('platform.linking-platform.datasource.show-jlol-basic-filters')) {
59
- return true;
60
- }
61
- return false;
62
- }, []);
63
- return (0, _react2.jsx)("div", {
64
- css: initialStateViewContainerStyles,
65
- "data-testid": "jlol-datasource-modal--initial-state-view"
66
- }, (0, _react2.jsx)("div", {
67
- css: svgAndTextsWrapperStyles
68
- }, (0, _react2.jsx)(_initialStateSvg.InitialStateSVG, null), (0, _react2.jsx)("div", {
69
- css: searchTitleStyles
70
- }, !showBasicFilters && (0, _react2.jsx)("div", {
71
- css: betaTagStyles
72
- }, (0, _react2.jsx)(_lozenge.default, {
73
- appearance: "new"
74
- }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.initialStateViewMessages.beta))), (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.initialStateViewMessages.searchTitle)), (0, _react2.jsx)("div", {
75
- css: mainTextStyles
76
- }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, methodToDescriptionMessage[searchMethod])), searchMethod === 'jql' ? (0, _react2.jsx)("a", {
77
- href: jqlSupportDocumentLink,
78
- target: "_blank",
79
- css: learnMoreLinkStyles
80
- }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.initialStateViewMessages.learnMoreLink)) : null));
81
- };
@@ -1,2 +0,0 @@
1
- import type { Site } from '../ui/jira-issues-modal/types';
2
- export declare const getAvailableJiraSites: () => Promise<Site[]>;
@@ -1,2 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const InitialStateSVG: () => JSX.Element;
@@ -1,8 +0,0 @@
1
- /** @jsx jsx */
2
- import { jsx } from '@emotion/react';
3
- import { JiraSearchMethod } from '../../../common/types';
4
- interface InitialStateViewProps {
5
- searchMethod: JiraSearchMethod;
6
- }
7
- export declare const InitialStateView: ({ searchMethod }: InitialStateViewProps) => jsx.JSX.Element;
8
- export {};
@@ -1,8 +0,0 @@
1
- /** @jsx jsx */
2
- import { jsx } from '@emotion/react';
3
- import { JiraIssueViewModes } from '../../types';
4
- export type DisplayViewDropDownProps = {
5
- onViewModeChange: (value: JiraIssueViewModes) => void;
6
- viewMode: JiraIssueViewModes;
7
- };
8
- export declare const DisplayViewDropDown: ({ onViewModeChange, viewMode, }: DisplayViewDropDownProps) => jsx.JSX.Element;
@@ -1,9 +0,0 @@
1
- import { jsx } from '@emotion/react';
2
- import type { Site } from '../types';
3
- export interface JiraSiteSelectorProps {
4
- availableSites: Site[] | undefined;
5
- onSiteSelection: (selectedSite: Site) => void;
6
- selectedJiraSite?: Site;
7
- testId?: string;
8
- }
9
- export declare const JiraSiteSelector: (props: JiraSiteSelectorProps) => jsx.JSX.Element;
@@ -1,2 +0,0 @@
1
- import type { Site } from '../ui/jira-issues-modal/types';
2
- export declare const getAvailableJiraSites: () => Promise<Site[]>;
@@ -1,2 +0,0 @@
1
- /// <reference types="react" />
2
- export declare const InitialStateSVG: () => JSX.Element;
@@ -1,8 +0,0 @@
1
- /** @jsx jsx */
2
- import { jsx } from '@emotion/react';
3
- import { JiraSearchMethod } from '../../../common/types';
4
- interface InitialStateViewProps {
5
- searchMethod: JiraSearchMethod;
6
- }
7
- export declare const InitialStateView: ({ searchMethod }: InitialStateViewProps) => jsx.JSX.Element;
8
- export {};
@@ -1,8 +0,0 @@
1
- /** @jsx jsx */
2
- import { jsx } from '@emotion/react';
3
- import { JiraIssueViewModes } from '../../types';
4
- export type DisplayViewDropDownProps = {
5
- onViewModeChange: (value: JiraIssueViewModes) => void;
6
- viewMode: JiraIssueViewModes;
7
- };
8
- export declare const DisplayViewDropDown: ({ onViewModeChange, viewMode, }: DisplayViewDropDownProps) => jsx.JSX.Element;
@@ -1,9 +0,0 @@
1
- import { jsx } from '@emotion/react';
2
- import type { Site } from '../types';
3
- export interface JiraSiteSelectorProps {
4
- availableSites: Site[] | undefined;
5
- onSiteSelection: (selectedSite: Site) => void;
6
- selectedJiraSite?: Site;
7
- testId?: string;
8
- }
9
- export declare const JiraSiteSelector: (props: JiraSiteSelectorProps) => jsx.JSX.Element;