@atlaskit/link-datasource 2.3.4 → 2.3.5

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 (174) hide show
  1. package/CHANGELOG.md +1196 -1196
  2. package/dist/cjs/contexts/user-interactions/index.js +42 -0
  3. package/dist/cjs/i18n/cs.js +15 -8
  4. package/dist/cjs/i18n/da.js +15 -8
  5. package/dist/cjs/i18n/de.js +15 -8
  6. package/dist/cjs/i18n/en.js +15 -8
  7. package/dist/cjs/i18n/en_GB.js +15 -8
  8. package/dist/cjs/i18n/en_ZZ.js +15 -8
  9. package/dist/cjs/i18n/es.js +15 -8
  10. package/dist/cjs/i18n/fi.js +15 -8
  11. package/dist/cjs/i18n/fr.js +15 -8
  12. package/dist/cjs/i18n/hu.js +15 -8
  13. package/dist/cjs/i18n/it.js +15 -8
  14. package/dist/cjs/i18n/ja.js +15 -8
  15. package/dist/cjs/i18n/ko.js +15 -8
  16. package/dist/cjs/i18n/nb.js +15 -8
  17. package/dist/cjs/i18n/nl.js +15 -8
  18. package/dist/cjs/i18n/pl.js +15 -8
  19. package/dist/cjs/i18n/pt_BR.js +15 -8
  20. package/dist/cjs/i18n/ru.js +15 -8
  21. package/dist/cjs/i18n/sv.js +15 -8
  22. package/dist/cjs/i18n/th.js +15 -8
  23. package/dist/cjs/i18n/tr.js +15 -8
  24. package/dist/cjs/i18n/uk.js +15 -8
  25. package/dist/cjs/i18n/vi.js +15 -8
  26. package/dist/cjs/i18n/zh.js +15 -8
  27. package/dist/cjs/i18n/zh_TW.js +15 -8
  28. package/dist/cjs/ui/assets-modal/modal/index.js +10 -9
  29. package/dist/cjs/ui/assets-modal/search-container/aql-search-input/index.js +1 -0
  30. package/dist/cjs/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.js +4 -1
  31. package/dist/cjs/ui/confluence-search-modal/modal/confluence-search-initial-state-svg.js +3 -1
  32. package/dist/cjs/ui/confluence-search-modal/modal/index.js +17 -16
  33. package/dist/cjs/ui/issue-like-table/column-picker/concatenated-menu-list.js +3 -1
  34. package/dist/cjs/ui/issue-like-table/draggable-table-heading.js +1 -0
  35. package/dist/cjs/ui/issue-like-table/empty-state/index.js +19 -13
  36. package/dist/cjs/ui/issue-like-table/index.js +15 -5
  37. package/dist/cjs/ui/issue-like-table/render-type/icon/index.js +3 -1
  38. package/dist/cjs/ui/issue-like-table/render-type/link/index.js +3 -1
  39. package/dist/cjs/ui/jira-issues-modal/modal/index.js +18 -17
  40. package/dist/cjs/ui/table-footer/index.js +1 -0
  41. package/dist/cjs/ui/table-footer/powered-by-jsm-assets/index.js +2 -0
  42. package/dist/es2019/contexts/user-interactions/index.js +33 -0
  43. package/dist/es2019/i18n/cs.js +15 -8
  44. package/dist/es2019/i18n/da.js +15 -8
  45. package/dist/es2019/i18n/de.js +15 -8
  46. package/dist/es2019/i18n/en.js +15 -8
  47. package/dist/es2019/i18n/en_GB.js +15 -8
  48. package/dist/es2019/i18n/en_ZZ.js +15 -8
  49. package/dist/es2019/i18n/es.js +15 -8
  50. package/dist/es2019/i18n/fi.js +15 -8
  51. package/dist/es2019/i18n/fr.js +15 -8
  52. package/dist/es2019/i18n/hu.js +15 -8
  53. package/dist/es2019/i18n/it.js +15 -8
  54. package/dist/es2019/i18n/ja.js +15 -8
  55. package/dist/es2019/i18n/ko.js +15 -8
  56. package/dist/es2019/i18n/nb.js +15 -8
  57. package/dist/es2019/i18n/nl.js +15 -8
  58. package/dist/es2019/i18n/pl.js +15 -8
  59. package/dist/es2019/i18n/pt_BR.js +15 -8
  60. package/dist/es2019/i18n/ru.js +15 -8
  61. package/dist/es2019/i18n/sv.js +15 -8
  62. package/dist/es2019/i18n/th.js +15 -8
  63. package/dist/es2019/i18n/tr.js +15 -8
  64. package/dist/es2019/i18n/uk.js +15 -8
  65. package/dist/es2019/i18n/vi.js +15 -8
  66. package/dist/es2019/i18n/zh.js +15 -8
  67. package/dist/es2019/i18n/zh_TW.js +15 -8
  68. package/dist/es2019/ui/assets-modal/modal/index.js +10 -9
  69. package/dist/es2019/ui/assets-modal/search-container/aql-search-input/index.js +1 -0
  70. package/dist/es2019/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.js +4 -1
  71. package/dist/es2019/ui/confluence-search-modal/modal/confluence-search-initial-state-svg.js +3 -1
  72. package/dist/es2019/ui/confluence-search-modal/modal/index.js +17 -16
  73. package/dist/es2019/ui/issue-like-table/column-picker/concatenated-menu-list.js +3 -1
  74. package/dist/es2019/ui/issue-like-table/draggable-table-heading.js +2 -0
  75. package/dist/es2019/ui/issue-like-table/empty-state/index.js +6 -1
  76. package/dist/es2019/ui/issue-like-table/index.js +15 -5
  77. package/dist/es2019/ui/issue-like-table/render-type/icon/index.js +3 -1
  78. package/dist/es2019/ui/issue-like-table/render-type/link/index.js +3 -1
  79. package/dist/es2019/ui/jira-issues-modal/modal/index.js +18 -17
  80. package/dist/es2019/ui/table-footer/index.js +1 -0
  81. package/dist/es2019/ui/table-footer/powered-by-jsm-assets/index.js +2 -0
  82. package/dist/esm/contexts/user-interactions/index.js +34 -0
  83. package/dist/esm/i18n/cs.js +15 -8
  84. package/dist/esm/i18n/da.js +15 -8
  85. package/dist/esm/i18n/de.js +15 -8
  86. package/dist/esm/i18n/en.js +15 -8
  87. package/dist/esm/i18n/en_GB.js +15 -8
  88. package/dist/esm/i18n/en_ZZ.js +15 -8
  89. package/dist/esm/i18n/es.js +15 -8
  90. package/dist/esm/i18n/fi.js +15 -8
  91. package/dist/esm/i18n/fr.js +15 -8
  92. package/dist/esm/i18n/hu.js +15 -8
  93. package/dist/esm/i18n/it.js +15 -8
  94. package/dist/esm/i18n/ja.js +15 -8
  95. package/dist/esm/i18n/ko.js +15 -8
  96. package/dist/esm/i18n/nb.js +15 -8
  97. package/dist/esm/i18n/nl.js +15 -8
  98. package/dist/esm/i18n/pl.js +15 -8
  99. package/dist/esm/i18n/pt_BR.js +15 -8
  100. package/dist/esm/i18n/ru.js +15 -8
  101. package/dist/esm/i18n/sv.js +15 -8
  102. package/dist/esm/i18n/th.js +15 -8
  103. package/dist/esm/i18n/tr.js +15 -8
  104. package/dist/esm/i18n/uk.js +15 -8
  105. package/dist/esm/i18n/vi.js +15 -8
  106. package/dist/esm/i18n/zh.js +15 -8
  107. package/dist/esm/i18n/zh_TW.js +15 -8
  108. package/dist/esm/ui/assets-modal/modal/index.js +10 -9
  109. package/dist/esm/ui/assets-modal/search-container/aql-search-input/index.js +1 -0
  110. package/dist/esm/ui/confluence-search-modal/basic-filters/filters/date-range-picker/trigger.js +4 -1
  111. package/dist/esm/ui/confluence-search-modal/modal/confluence-search-initial-state-svg.js +3 -1
  112. package/dist/esm/ui/confluence-search-modal/modal/index.js +17 -16
  113. package/dist/esm/ui/issue-like-table/column-picker/concatenated-menu-list.js +3 -1
  114. package/dist/esm/ui/issue-like-table/draggable-table-heading.js +1 -0
  115. package/dist/esm/ui/issue-like-table/empty-state/index.js +19 -13
  116. package/dist/esm/ui/issue-like-table/index.js +15 -5
  117. package/dist/esm/ui/issue-like-table/render-type/icon/index.js +3 -1
  118. package/dist/esm/ui/issue-like-table/render-type/link/index.js +3 -1
  119. package/dist/esm/ui/jira-issues-modal/modal/index.js +18 -17
  120. package/dist/esm/ui/table-footer/index.js +1 -0
  121. package/dist/esm/ui/table-footer/powered-by-jsm-assets/index.js +2 -0
  122. package/dist/types/contexts/user-interactions/index.d.ts +15 -0
  123. package/dist/types/i18n/cs.d.ts +15 -8
  124. package/dist/types/i18n/da.d.ts +15 -8
  125. package/dist/types/i18n/de.d.ts +15 -8
  126. package/dist/types/i18n/en.d.ts +15 -8
  127. package/dist/types/i18n/en_GB.d.ts +15 -8
  128. package/dist/types/i18n/en_ZZ.d.ts +15 -8
  129. package/dist/types/i18n/es.d.ts +15 -8
  130. package/dist/types/i18n/fi.d.ts +15 -8
  131. package/dist/types/i18n/fr.d.ts +15 -8
  132. package/dist/types/i18n/hu.d.ts +15 -8
  133. package/dist/types/i18n/it.d.ts +15 -8
  134. package/dist/types/i18n/ja.d.ts +15 -8
  135. package/dist/types/i18n/ko.d.ts +15 -8
  136. package/dist/types/i18n/nb.d.ts +15 -8
  137. package/dist/types/i18n/nl.d.ts +15 -8
  138. package/dist/types/i18n/pl.d.ts +15 -8
  139. package/dist/types/i18n/pt_BR.d.ts +15 -8
  140. package/dist/types/i18n/ru.d.ts +15 -8
  141. package/dist/types/i18n/sv.d.ts +15 -8
  142. package/dist/types/i18n/th.d.ts +15 -8
  143. package/dist/types/i18n/tr.d.ts +15 -8
  144. package/dist/types/i18n/uk.d.ts +15 -8
  145. package/dist/types/i18n/vi.d.ts +15 -8
  146. package/dist/types/i18n/zh.d.ts +15 -8
  147. package/dist/types/i18n/zh_TW.d.ts +15 -8
  148. package/dist/types-ts4.5/contexts/user-interactions/index.d.ts +15 -0
  149. package/dist/types-ts4.5/i18n/cs.d.ts +15 -8
  150. package/dist/types-ts4.5/i18n/da.d.ts +15 -8
  151. package/dist/types-ts4.5/i18n/de.d.ts +15 -8
  152. package/dist/types-ts4.5/i18n/en.d.ts +15 -8
  153. package/dist/types-ts4.5/i18n/en_GB.d.ts +15 -8
  154. package/dist/types-ts4.5/i18n/en_ZZ.d.ts +15 -8
  155. package/dist/types-ts4.5/i18n/es.d.ts +15 -8
  156. package/dist/types-ts4.5/i18n/fi.d.ts +15 -8
  157. package/dist/types-ts4.5/i18n/fr.d.ts +15 -8
  158. package/dist/types-ts4.5/i18n/hu.d.ts +15 -8
  159. package/dist/types-ts4.5/i18n/it.d.ts +15 -8
  160. package/dist/types-ts4.5/i18n/ja.d.ts +15 -8
  161. package/dist/types-ts4.5/i18n/ko.d.ts +15 -8
  162. package/dist/types-ts4.5/i18n/nb.d.ts +15 -8
  163. package/dist/types-ts4.5/i18n/nl.d.ts +15 -8
  164. package/dist/types-ts4.5/i18n/pl.d.ts +15 -8
  165. package/dist/types-ts4.5/i18n/pt_BR.d.ts +15 -8
  166. package/dist/types-ts4.5/i18n/ru.d.ts +15 -8
  167. package/dist/types-ts4.5/i18n/sv.d.ts +15 -8
  168. package/dist/types-ts4.5/i18n/th.d.ts +15 -8
  169. package/dist/types-ts4.5/i18n/tr.d.ts +15 -8
  170. package/dist/types-ts4.5/i18n/uk.d.ts +15 -8
  171. package/dist/types-ts4.5/i18n/vi.d.ts +15 -8
  172. package/dist/types-ts4.5/i18n/zh.d.ts +15 -8
  173. package/dist/types-ts4.5/i18n/zh_TW.d.ts +15 -8
  174. package/package.json +3 -3
@@ -16,6 +16,7 @@ import { useDataRenderedUfoExperience } from '../../../analytics/ufoExperiences/
16
16
  import { buildDatasourceAdf } from '../../../common/utils/adf';
17
17
  import { fetchMessagesForLocale } from '../../../common/utils/locale/fetch-messages-for-locale';
18
18
  import { DatasourceExperienceIdProvider, useDatasourceExperienceId } from '../../../contexts/datasource-experience-id';
19
+ import { UserInteractionsProvider, useUserInteractions } from '../../../contexts/user-interactions';
19
20
  import { useAssetsClient } from '../../../hooks/useAssetsClient';
20
21
  import { useDatasourceTableState } from '../../../hooks/useDatasourceTableState';
21
22
  import i18nEN from '../../../i18n/en';
@@ -118,7 +119,7 @@ const PlainAssetsConfigModal = props => {
118
119
 
119
120
  /* ------------------------------ OBSERVABILITY ------------------------------ */
120
121
  const searchCount = useRef(0);
121
- const userInteractionActions = useRef(new Set());
122
+ const userInteractions = useUserInteractions();
122
123
  const visibleColumnCount = useRef((visibleColumnKeys === null || visibleColumnKeys === void 0 ? void 0 : visibleColumnKeys.length) || 0);
123
124
  const isDataReady = (visibleColumnKeys || []).length > 0;
124
125
  const analyticsPayload = useMemo(() => {
@@ -211,7 +212,7 @@ const PlainAssetsConfigModal = props => {
211
212
  display: DatasourceDisplay.DATASOURCE_TABLE,
212
213
  searchCount: searchCount.current,
213
214
  searchMethod: DatasourceSearchMethod.DATASOURCE_SEARCH_QUERY,
214
- actions: Array.from(userInteractionActions.current)
215
+ actions: userInteractions.get()
215
216
  },
216
217
  eventType: 'ui'
217
218
  });
@@ -243,15 +244,15 @@ const PlainAssetsConfigModal = props => {
243
244
  }]
244
245
  }), consumerEvent);
245
246
  }
246
- }, [aql, schemaId, workspaceId, analyticsPayload, totalCount, retrieveUrlForSmartCardRender, responseItems.length, onInsert, datasourceId, visibleColumnKeys]);
247
+ }, [aql, schemaId, workspaceId, analyticsPayload, totalCount, retrieveUrlForSmartCardRender, responseItems.length, onInsert, datasourceId, visibleColumnKeys, userInteractions]);
247
248
  const handleOnSearch = useCallback((searchAql, searchSchemaId) => {
248
249
  if (schemaId !== searchSchemaId || aql !== searchAql || status === 'rejected') {
249
250
  searchCount.current++;
250
251
  if (schemaId !== searchSchemaId) {
251
- userInteractionActions.current.add(DatasourceAction.SCHEMA_UPDATED);
252
+ userInteractions.add(DatasourceAction.SCHEMA_UPDATED);
252
253
  }
253
254
  if (aql !== searchAql) {
254
- userInteractionActions.current.add(DatasourceAction.QUERY_UPDATED);
255
+ userInteractions.add(DatasourceAction.QUERY_UPDATED);
255
256
  }
256
257
  setAql(searchAql);
257
258
  setSchemaId(searchSchemaId);
@@ -262,7 +263,7 @@ const PlainAssetsConfigModal = props => {
262
263
  shouldResetColumns: true
263
264
  });
264
265
  }
265
- }, [aql, reset, schemaId, status]);
266
+ }, [aql, reset, schemaId, status, userInteractions]);
266
267
  const renderErrorState = useCallback(() => {
267
268
  if (errorState) {
268
269
  switch (errorState) {
@@ -301,9 +302,9 @@ const PlainAssetsConfigModal = props => {
301
302
  return {
302
303
  ...analyticsPayload,
303
304
  searchCount: searchCount.current,
304
- actions: Array.from(userInteractionActions.current)
305
+ actions: userInteractions.get()
305
306
  };
306
- }, [analyticsPayload]);
307
+ }, [analyticsPayload, userInteractions]);
307
308
  return jsx(IntlMessagesProvider, {
308
309
  defaultMessages: i18nEN,
309
310
  loaderFn: fetchMessagesForLocale
@@ -355,4 +356,4 @@ const contextData = {
355
356
  ...analyticsContextAttributes
356
357
  }
357
358
  };
358
- export const AssetsConfigModal = withAnalyticsContext(contextData)(props => jsx(DatasourceExperienceIdProvider, null, jsx(PlainAssetsConfigModal, props)));
359
+ export const AssetsConfigModal = withAnalyticsContext(contextData)(props => jsx(DatasourceExperienceIdProvider, null, jsx(UserInteractionsProvider, null, jsx(PlainAssetsConfigModal, props))));
@@ -80,6 +80,7 @@ export const AqlSearchInput = ({
80
80
  fieldProps
81
81
  }) => jsx(Fragment, null, jsx(Textfield, _extends({}, fieldProps, {
82
82
  elemBeforeInput: jsx("span", {
83
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
83
84
  style: {
84
85
  paddingLeft: "var(--ds-space-075, 6px)",
85
86
  width: 24
@@ -13,7 +13,10 @@ export const PopupTrigger = ({
13
13
  testId: 'confluence-search-modal--date-range-button',
14
14
  onClick: onClick,
15
15
  isSelected: isSelected,
16
- iconAfter: /*#__PURE__*/React.createElement("span", {
16
+ iconAfter:
17
+ /*#__PURE__*/
18
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
19
+ React.createElement("span", {
17
20
  style: {
18
21
  display: 'flex',
19
22
  alignItems: 'center'
@@ -99,7 +99,9 @@ export const ConfluenceSearchInitialStateSVG = () => /*#__PURE__*/React.createEl
99
99
  d: "M114.678 51.6186C110.935 54.7774 108.407 59.1306 107.525 63.9371C106.643 68.7435 107.46 73.706 109.838 77.9797C112.216 82.2534 116.008 85.574 120.567 87.3761C125.127 89.1783 130.173 89.3507 134.846 87.8638C139.519 86.377 143.53 83.3229 146.197 79.2215C148.863 75.1202 150.02 70.2251 149.47 65.3697C148.92 60.5144 146.698 55.9989 143.181 52.5921C139.665 49.1853 135.071 47.0979 130.183 46.6851C127.4 46.4461 124.596 46.7591 121.935 47.6059C119.273 48.4527 116.807 49.8165 114.678 51.6186Z",
100
100
  fill: "white"
101
101
  }), /*#__PURE__*/React.createElement("mask", {
102
- id: "mask0_1_10772",
102
+ id: "mask0_1_10772"
103
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
104
+ ,
103
105
  style: {
104
106
  maskType: 'alpha'
105
107
  },
@@ -17,6 +17,7 @@ import { DatasourceAction, DatasourceDisplay, DatasourceSearchMethod } from '../
17
17
  import { buildDatasourceAdf } from '../../../common/utils/adf';
18
18
  import { fetchMessagesForLocale } from '../../../common/utils/locale/fetch-messages-for-locale';
19
19
  import { DatasourceExperienceIdProvider } from '../../../contexts/datasource-experience-id';
20
+ import { UserInteractionsProvider, useUserInteractions } from '../../../contexts/user-interactions';
20
21
  import { useDatasourceTableState } from '../../../hooks/useDatasourceTableState';
21
22
  import i18nEN from '../../../i18n/en';
22
23
  import { useAvailableSites } from '../../../services/useAvailableSites';
@@ -78,7 +79,7 @@ export const PlainConfluenceSearchConfigModal = props => {
78
79
 
79
80
  // analytics related parameters
80
81
  const searchCount = useRef(0);
81
- const userInteractionActions = useRef(new Set());
82
+ const userInteractions = useUserInteractions();
82
83
  const visibleColumnCount = useRef((visibleColumnKeys === null || visibleColumnKeys === void 0 ? void 0 : visibleColumnKeys.length) || 0);
83
84
  const parameters = useMemo(() => ({
84
85
  ...initialParameters,
@@ -140,7 +141,7 @@ export const PlainConfluenceSearchConfigModal = props => {
140
141
  // TODO: further refactoring in EDM-9573
141
142
  // https://stash.atlassian.com/projects/ATLASSIAN/repos/atlassian-frontend-monorepo/pull-requests/82725/overview?commentId=6829171
142
143
  const onSiteSelection = useCallback(site => {
143
- userInteractionActions.current.add(DatasourceAction.INSTANCE_UPDATED);
144
+ userInteractions.add(DatasourceAction.INSTANCE_UPDATED);
144
145
  setSearchString(undefined);
145
146
  setLastModified(undefined);
146
147
  setContributorAccountIds([]);
@@ -148,7 +149,7 @@ export const PlainConfluenceSearchConfigModal = props => {
148
149
  reset({
149
150
  shouldForceRequest: true
150
151
  });
151
- }, [reset]);
152
+ }, [reset, userInteractions]);
152
153
  useEffect(() => {
153
154
  const newVisibleColumnKeys = !initialVisibleColumnKeys || (initialVisibleColumnKeys || []).length === 0 ? defaultVisibleColumnKeys : initialVisibleColumnKeys;
154
155
  visibleColumnCount.current = newVisibleColumnKeys.length;
@@ -167,10 +168,10 @@ export const PlainConfluenceSearchConfigModal = props => {
167
168
  // TODO: common functionality of all modals refactor in EDM-9573
168
169
  const handleVisibleColumnKeysChange = useCallback((newVisibleColumnKeys = []) => {
169
170
  const columnAction = getColumnAction(visibleColumnKeys || [], newVisibleColumnKeys);
170
- userInteractionActions.current.add(columnAction);
171
+ userInteractions.add(columnAction);
171
172
  visibleColumnCount.current = newVisibleColumnKeys.length;
172
173
  setVisibleColumnKeys(newVisibleColumnKeys);
173
- }, [visibleColumnKeys]);
174
+ }, [visibleColumnKeys, userInteractions]);
174
175
 
175
176
  // TODO: further refactoring in EDM-9573
176
177
  // https://stash.atlassian.com/projects/ATLASSIAN/repos/atlassian-frontend-monorepo/pull-requests/82725/overview?commentId=6798258
@@ -220,8 +221,8 @@ export const PlainConfluenceSearchConfigModal = props => {
220
221
  extensionKey,
221
222
  destinationObjectTypes,
222
223
  searchCount: searchCount.current,
223
- actions: Array.from(userInteractionActions.current)
224
- }), [destinationObjectTypes, extensionKey]);
224
+ actions: userInteractions.get()
225
+ }), [destinationObjectTypes, extensionKey, userInteractions]);
225
226
  const isDataReady = (visibleColumnKeys || []).length > 0;
226
227
  const fireInlineViewedEvent = useCallback(() => {
227
228
  fireEvent('ui.link.viewed.count', {
@@ -307,7 +308,7 @@ export const PlainConfluenceSearchConfigModal = props => {
307
308
  display: currentViewMode === 'inline' ? DatasourceDisplay.DATASOURCE_INLINE : DatasourceDisplay.DATASOURCE_TABLE,
308
309
  searchCount: searchCount.current,
309
310
  searchMethod: DatasourceSearchMethod.DATASOURCE_SEARCH_QUERY,
310
- actions: Array.from(userInteractionActions.current)
311
+ actions: userInteractions.get()
311
312
  },
312
313
  eventType: 'ui'
313
314
  });
@@ -347,14 +348,14 @@ export const PlainConfluenceSearchConfigModal = props => {
347
348
  }]
348
349
  }, confluenceSearchUrl), consumerEvent);
349
350
  }
350
- }, [isParametersSet, cloudId, analyticsPayload, totalCount, currentViewMode, onInsert, confluenceSearchUrl, datasourceId, parametersToSend, visibleColumnKeys, columnCustomSizes, wrappedColumnKeys]);
351
+ }, [isParametersSet, cloudId, analyticsPayload, totalCount, currentViewMode, onInsert, confluenceSearchUrl, datasourceId, parametersToSend, visibleColumnKeys, columnCustomSizes, wrappedColumnKeys, userInteractions]);
351
352
  const handleViewModeChange = selectedMode => {
352
- userInteractionActions.current.add(DatasourceAction.DISPLAY_VIEW_CHANGED);
353
+ userInteractions.add(DatasourceAction.DISPLAY_VIEW_CHANGED);
353
354
  setCurrentViewMode(selectedMode);
354
355
  };
355
356
  const onSearch = useCallback((newSearchString, filters) => {
356
357
  searchCount.current++;
357
- userInteractionActions.current.add(DatasourceAction.QUERY_UPDATED);
358
+ userInteractions.add(DatasourceAction.QUERY_UPDATED);
358
359
  if (filters) {
359
360
  const {
360
361
  editedOrCreatedBy,
@@ -379,16 +380,16 @@ export const PlainConfluenceSearchConfigModal = props => {
379
380
  reset({
380
381
  shouldForceRequest: true
381
382
  });
382
- }, [reset]);
383
+ }, [reset, userInteractions]);
383
384
  const isInsertDisabled = !isParametersSet || status === 'rejected' || status === 'unauthorized' || status === 'loading';
384
385
  const getCancelButtonAnalyticsPayload = useCallback(() => {
385
386
  return {
386
387
  extensionKey,
387
388
  destinationObjectTypes,
388
389
  searchCount: searchCount.current,
389
- actions: Array.from(userInteractionActions.current)
390
+ actions: userInteractions.get()
390
391
  };
391
- }, [destinationObjectTypes, extensionKey]);
392
+ }, [destinationObjectTypes, extensionKey, userInteractions]);
392
393
  return jsx(IntlMessagesProvider, {
393
394
  defaultMessages: i18nEN,
394
395
  loaderFn: fetchMessagesForLocale
@@ -421,7 +422,7 @@ export const PlainConfluenceSearchConfigModal = props => {
421
422
  href: confluenceSearchUrl,
422
423
  target: "_blank",
423
424
  testId: "item-count-url"
424
- // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
425
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
425
426
  ,
426
427
  style: {
427
428
  color: `var(--ds-text-accent-gray, ${N800})`
@@ -456,4 +457,4 @@ const contextData = {
456
457
  ...analyticsContextAttributes
457
458
  }
458
459
  };
459
- export const ConfluenceSearchConfigModal = withAnalyticsContext(contextData)(props => jsx(DatasourceExperienceIdProvider, null, jsx(PlainConfluenceSearchConfigModal, props)));
460
+ export const ConfluenceSearchConfigModal = withAnalyticsContext(contextData)(props => jsx(DatasourceExperienceIdProvider, null, jsx(UserInteractionsProvider, null, jsx(PlainConfluenceSearchConfigModal, props))));
@@ -23,7 +23,9 @@ export const ConcatenatedMenuList = ({
23
23
  padding: `${"var(--ds-space-050, 4px)"} ${"var(--ds-space-200, 16px)"}`,
24
24
  height: 'auto'
25
25
  };
26
- const maximumLimitReachedMessage = jsx("div", {
26
+ const maximumLimitReachedMessage =
27
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
28
+ jsx("div", {
27
29
  css: messageStyles,
28
30
  style: optionStyle
29
31
  }, jsx(FormattedMessage, _extends({
@@ -306,7 +306,9 @@ export const DraggableTableHeading = ({
306
306
  ref: mainHeaderCellRef,
307
307
  "data-testid": `${id}-column-heading`,
308
308
  style: {
309
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
309
310
  cursor: 'grab',
311
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
310
312
  ...getWidthCss({
311
313
  shouldUseWidth: resizeIsEnabled,
312
314
  width
@@ -103,8 +103,11 @@ export default (({
103
103
  style: {
104
104
  // the IssueLikeDataTableView wraps the table in a container with the styling below while modal doesn't
105
105
  // this maxHeight comes from scrollableContainerHeight
106
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
106
107
  maxHeight: ScrollableContainerHeight,
108
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
107
109
  padding: "var(--ds-space-0, 0px)",
110
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
108
111
  boxSizing: 'border-box'
109
112
  }
110
113
  }, jsx("table", {
@@ -117,7 +120,9 @@ export default (({
117
120
  }, jsx("tr", null, columnsToRender.map(({
118
121
  key,
119
122
  width
120
- }) => jsx(TableHeading, {
123
+ }) =>
124
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
125
+ jsx(TableHeading, {
121
126
  key: key,
122
127
  style: {
123
128
  width,
@@ -560,7 +560,9 @@ export const IssueLikeDataTableView = ({
560
560
  */
561
561
  contentEditable: false,
562
562
  ref: containerRef,
563
- css: [tableContainerStyles, scrollableContainerHeight && scrollableContainerStyles],
563
+ css: [tableContainerStyles, scrollableContainerHeight && scrollableContainerStyles]
564
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
565
+ ,
564
566
  style: scrollableContainerHeight ? {
565
567
  maxHeight: `${scrollableContainerHeight}px`
566
568
  } : undefined,
@@ -569,13 +571,17 @@ export const IssueLikeDataTableView = ({
569
571
  setWidth: debounce(setTableContainerWidth, 100)
570
572
  }), jsx(Table, {
571
573
  css: tableStyles,
572
- "data-testid": testId,
574
+ "data-testid": testId
575
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
576
+ ,
573
577
  style: shouldUseWidth ? {
574
578
  tableLayout: 'fixed'
575
579
  } : {}
576
580
  }, jsx("thead", {
577
581
  "data-testid": testId && `${testId}--head`,
578
- css: [noDefaultBorderStyles, tableHeadStyles],
582
+ css: [noDefaultBorderStyles, tableHeadStyles]
583
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
584
+ ,
579
585
  className: !!onVisibleColumnKeysChange ? 'has-column-picker' : ''
580
586
  }, jsx("tr", {
581
587
  ref: tableHeaderRowRef
@@ -629,7 +635,9 @@ export const IssueLikeDataTableView = ({
629
635
  } else {
630
636
  return jsx(TableHeading, {
631
637
  key: key,
632
- "data-testid": `${key}-column-heading`,
638
+ "data-testid": `${key}-column-heading`
639
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
640
+ ,
633
641
  style: getWidthCss({
634
642
  shouldUseWidth,
635
643
  width
@@ -672,7 +680,9 @@ export const IssueLikeDataTableView = ({
672
680
  return jsx(TableCell, {
673
681
  key: cellKey,
674
682
  "data-testid": testId && `${testId}--cell-${cellIndex}`,
675
- colSpan: isEditable && isLastCell ? 2 : undefined,
683
+ colSpan: isEditable && isLastCell ? 2 : undefined
684
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
685
+ ,
676
686
  style: loadingRowStyle,
677
687
  css: [wrappedColumnKeys !== null && wrappedColumnKeys !== void 0 && wrappedColumnKeys.includes(cellKey) ? null : truncateStyles]
678
688
  }, content);
@@ -16,7 +16,9 @@ const IconRenderType = ({
16
16
  return /*#__PURE__*/React.createElement(IconWrapper, null, /*#__PURE__*/React.createElement(Image, {
17
17
  src: source,
18
18
  alt: label,
19
- "data-testid": testId,
19
+ "data-testid": testId
20
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
21
+ ,
20
22
  style: {
21
23
  minWidth: '20px',
22
24
  maxWidth: '20px'
@@ -26,7 +26,9 @@ const LinkRenderType = ({
26
26
  const anchor = useMemo(() => /*#__PURE__*/React.createElement(HoverCard, {
27
27
  url: url
28
28
  }, /*#__PURE__*/React.createElement(LinkUrl, {
29
- href: url,
29
+ href: url
30
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
31
+ ,
30
32
  style: {
31
33
  ...linkStyle,
32
34
  fontSize: fieldTextFontSize
@@ -20,6 +20,7 @@ import { mapSearchMethod } from '../../../analytics/utils';
20
20
  import { buildDatasourceAdf } from '../../../common/utils/adf';
21
21
  import { fetchMessagesForLocale } from '../../../common/utils/locale/fetch-messages-for-locale';
22
22
  import { DatasourceExperienceIdProvider, useDatasourceExperienceId } from '../../../contexts/datasource-experience-id';
23
+ import { UserInteractionsProvider, useUserInteractions } from '../../../contexts/user-interactions';
23
24
  import { useDatasourceTableState } from '../../../hooks/useDatasourceTableState';
24
25
  import i18nEN from '../../../i18n/en';
25
26
  import { useAvailableSites } from '../../../services/useAvailableSites';
@@ -80,7 +81,7 @@ const PlainJiraIssuesConfigModal = props => {
80
81
 
81
82
  // analytics related parameters
82
83
  const searchCount = useRef(0);
83
- const userInteractionActions = useRef(new Set());
84
+ const userInteractions = useUserInteractions();
84
85
  const initialSearchMethod = getBooleanFF('platform.linking-platform.datasource.show-jlol-basic-filters') && !isQueryTooComplex((initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.jql) || '') ? 'basic' : 'jql';
85
86
  const [currentSearchMethod, setCurrentSearchMethod] = useState(initialSearchMethod);
86
87
  const searchMethodSearchedWith = useRef(null);
@@ -221,21 +222,21 @@ const PlainJiraIssuesConfigModal = props => {
221
222
  basicFilterSelectionsSearchedWith.current = basicFilterSelections;
222
223
  isSearchedWithComplexQuery.current = isQueryComplex;
223
224
  if (jql !== newParameters.jql) {
224
- userInteractionActions.current.add(DatasourceAction.QUERY_UPDATED);
225
+ userInteractions.add(DatasourceAction.QUERY_UPDATED);
225
226
  }
226
227
  setJql(newParameters.jql);
227
228
  reset({
228
229
  shouldForceRequest: true
229
230
  });
230
- }, [jql, reset]);
231
+ }, [jql, reset, userInteractions]);
231
232
  const onSiteSelection = useCallback(site => {
232
- userInteractionActions.current.add(DatasourceAction.INSTANCE_UPDATED);
233
+ userInteractions.add(DatasourceAction.INSTANCE_UPDATED);
233
234
  setJql('');
234
235
  setCloudId(site.cloudId);
235
236
  reset({
236
237
  shouldForceRequest: true
237
238
  });
238
- }, [reset]);
239
+ }, [reset, userInteractions]);
239
240
  const retrieveUrlForSmartCardRender = useCallback(() => {
240
241
  var _data$key, _data$key$data;
241
242
  const [data] = responseItems;
@@ -268,7 +269,7 @@ const PlainJiraIssuesConfigModal = props => {
268
269
  display: getDisplayValue(currentViewMode, totalCount || 0),
269
270
  searchCount: searchCount.current,
270
271
  searchMethod: mapSearchMethod(searchMethodSearchedWith.current),
271
- actions: Array.from(userInteractionActions.current),
272
+ actions: userInteractions.get(),
272
273
  isQueryComplex: isSearchedWithComplexQuery.current,
273
274
  ...(searchMethodSearchedWith.current === 'basic' ? {
274
275
  ...filterSelectionCount
@@ -291,7 +292,7 @@ const PlainJiraIssuesConfigModal = props => {
291
292
  display: getDisplayValue(currentViewMode, totalCount || 0),
292
293
  searchCount: searchCount.current,
293
294
  searchMethod: mapSearchMethod(searchMethodSearchedWith.current),
294
- actions: Array.from(userInteractionActions.current)
295
+ actions: userInteractions.get()
295
296
  }
296
297
  });
297
298
  const consumerEvent = (_insertButtonClickedE = insertButtonClickedEvent.clone()) !== null && _insertButtonClickedE !== void 0 ? _insertButtonClickedE : undefined;
@@ -333,21 +334,21 @@ const PlainJiraIssuesConfigModal = props => {
333
334
  }]
334
335
  }, upToDateJqlUrl), consumerEvent);
335
336
  }
336
- }, [isParametersSet, jql, selectedJiraSite, searchBarJql, analyticsPayload, totalCount, currentViewMode, retrieveUrlForSmartCardRender, responseItems.length, onInsert, datasourceId, cloudId, visibleColumnKeys, columnCustomSizes, wrappedColumnKeys]);
337
+ }, [isParametersSet, jql, selectedJiraSite, searchBarJql, analyticsPayload, totalCount, currentViewMode, retrieveUrlForSmartCardRender, responseItems.length, onInsert, datasourceId, cloudId, visibleColumnKeys, columnCustomSizes, wrappedColumnKeys, userInteractions]);
337
338
  const handleViewModeChange = selectedMode => {
338
- userInteractionActions.current.add(DatasourceAction.DISPLAY_VIEW_CHANGED);
339
+ userInteractions.add(DatasourceAction.DISPLAY_VIEW_CHANGED);
339
340
  setCurrentViewMode(selectedMode);
340
341
  };
341
342
  const handleOnNextPage = useCallback((onNextPageProps = {}) => {
342
- userInteractionActions.current.add(DatasourceAction.NEXT_PAGE_SCROLLED);
343
+ userInteractions.add(DatasourceAction.NEXT_PAGE_SCROLLED);
343
344
  onNextPage(onNextPageProps);
344
- }, [onNextPage]);
345
+ }, [onNextPage, userInteractions]);
345
346
  const handleVisibleColumnKeysChange = useCallback((newVisibleColumnKeys = []) => {
346
347
  const columnAction = getColumnAction(visibleColumnKeys || [], newVisibleColumnKeys);
347
- userInteractionActions.current.add(columnAction);
348
+ userInteractions.add(columnAction);
348
349
  visibleColumnCount.current = newVisibleColumnKeys.length;
349
350
  setVisibleColumnKeys(newVisibleColumnKeys);
350
- }, [visibleColumnKeys]);
351
+ }, [visibleColumnKeys, userInteractions]);
351
352
  const issueLikeDataTableView = useMemo(() => jsx(ContentContainer, {
352
353
  withTableBorder: true
353
354
  }, jsx(IssueLikeDataTableView, {
@@ -430,9 +431,9 @@ const PlainJiraIssuesConfigModal = props => {
430
431
  return {
431
432
  ...analyticsPayload,
432
433
  searchCount: searchCount.current,
433
- actions: Array.from(userInteractionActions.current)
434
+ actions: userInteractions.get()
434
435
  };
435
- }, [analyticsPayload]);
436
+ }, [analyticsPayload, userInteractions]);
436
437
  return jsx(IntlMessagesProvider, {
437
438
  defaultMessages: i18nEN,
438
439
  loaderFn: fetchMessagesForLocale
@@ -468,7 +469,7 @@ const PlainJiraIssuesConfigModal = props => {
468
469
  href: jqlUrl,
469
470
  target: "_blank",
470
471
  testId: "item-count-url"
471
- // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
472
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
472
473
  ,
473
474
  style: {
474
475
  color: `var(--ds-text-accent-gray, ${N800})`
@@ -503,4 +504,4 @@ const contextData = {
503
504
  ...analyticsContextAttributes
504
505
  }
505
506
  };
506
- export const JiraIssuesConfigModal = withAnalyticsContext(contextData)(props => jsx(DatasourceExperienceIdProvider, null, jsx(PlainJiraIssuesConfigModal, props)));
507
+ export const JiraIssuesConfigModal = withAnalyticsContext(contextData)(props => jsx(DatasourceExperienceIdProvider, null, jsx(UserInteractionsProvider, null, jsx(PlainJiraIssuesConfigModal, props))));
@@ -77,6 +77,7 @@ export const TableFooter = ({
77
77
  target: "_blank",
78
78
  testId: "item-count-url",
79
79
  style: {
80
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
80
81
  color: `var(--ds-text-accent-gray, ${N800})`,
81
82
  textDecoration: !url ? 'none' : ''
82
83
  }
@@ -32,7 +32,9 @@ export const PoweredByJSMAssets = props => {
32
32
  rel: "noreferrer",
33
33
  target: "_blank",
34
34
  style: {
35
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
35
36
  display: 'inline-flex',
37
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
36
38
  alignItems: 'center'
37
39
  }
38
40
  }, /*#__PURE__*/React.createElement(JiraServiceManagementIcon, {
@@ -0,0 +1,34 @@
1
+ import React, { useContext, useMemo, useRef } from 'react';
2
+ var UserInteractionsContext = /*#__PURE__*/React.createContext(undefined);
3
+ var UserInteractionsProvider = function UserInteractionsProvider(_ref) {
4
+ var children = _ref.children;
5
+ var userInteractionActions = useRef(new Set());
6
+ var providerValue = useMemo(function () {
7
+ return {
8
+ add: function add(action) {
9
+ userInteractionActions.current.add(action);
10
+ },
11
+ get: function get() {
12
+ return Array.from(userInteractionActions.current);
13
+ }
14
+ };
15
+ }, []);
16
+ return /*#__PURE__*/React.createElement(UserInteractionsContext.Provider, {
17
+ value: providerValue
18
+ }, children);
19
+ };
20
+
21
+ /**
22
+ * Use this hook to track user activities. This is mainly used to populate analytic events with
23
+ * a trail of user activities.
24
+ *
25
+ * @returns an object that can track datasource actions and retrieve the actions that have been tracked.
26
+ */
27
+ var useUserInteractions = function useUserInteractions() {
28
+ var context = useContext(UserInteractionsContext);
29
+ if (!context) {
30
+ throw new Error('useUserInteractions() must be wrapped in <UserInteractionsProvider>');
31
+ }
32
+ return context;
33
+ };
34
+ export { UserInteractionsProvider, useUserInteractions };
@@ -33,24 +33,31 @@ export default {
33
33
  'linkDataSource.basic-filter.status.label': 'Stav',
34
34
  'linkDataSource.basic-filter.type.label': 'Typ',
35
35
  'linkDataSource.checkConnection': 'Zkontrolujte připojení a obnovte stránku nebo to zkuste znovu později.',
36
+ 'linkDataSource.clol-basic-filter.editedOrCreatedBy.label': 'Upraveno nebo vytvořeno uživatelem',
36
37
  'linkDataSource.column-picker.no-all-items-shown-message.line-1': 'Vaše vyhledávání vrátilo příliš mnoho výsledků.',
37
38
  'linkDataSource.column-picker.no-all-items-shown-message.line-2': 'Zkuste to znovu s konkrétnějšími klíčovými slovy.',
38
39
  'linkDataSource.column-picker.search': 'Vyhledat pole',
39
40
  'linkDataSource.column-picker.tooltip': 'Konfigurovat sloupce',
40
41
  'linkDataSource.configmodal.basicTextSearchPlaceholder': 'Vyhledat požadavky pomocí klíčového slova',
41
42
  'linkDataSource.configmodal.cancelButtonText': 'Zrušit',
42
- 'linkDataSource.configmodal.inlineLinkViewModeDescription': 'Zobrazit počet výsledků vyhledávání nebo jako vložený chytrý odkaz',
43
- 'linkDataSource.configmodal.inlineLinkViewModeLabel': 'Vložený odkaz',
44
- 'linkDataSource.configmodal.tableViewModeDescription': 'Zobrazit výsledky vyhledávání jako tabulku',
45
- 'linkDataSource.configmodal.tableViewModeLabel': 'Tabulka',
46
43
  'linkDataSource.confluence-search.configmodal.cancelButtonText': 'Zrušit',
44
+ 'linkDataSource.confluence-search.configmodal.date.range.after.label': 'po {date}',
47
45
  'linkDataSource.confluence-search.configmodal.date.range.any.time': 'Kdykoliv',
46
+ 'linkDataSource.confluence-search.configmodal.date.range.before.label': 'před {date}',
48
47
  'linkDataSource.confluence-search.configmodal.date.range.custom': 'Vlastní',
48
+ 'linkDataSource.confluence-search.configmodal.date.range.custom.invalid.after.end': 'Datum Od musí být před datem Do.',
49
+ 'linkDataSource.confluence-search.configmodal.date.range.custom.invalid.after.today': 'Datum Od nesmí být v budoucnosti.',
50
+ 'linkDataSource.confluence-search.configmodal.date.range.custom.invalid.to.after.today': 'Datum Do nesmí být v budoucnosti.',
51
+ 'linkDataSource.confluence-search.configmodal.date.range.from': 'Od',
52
+ 'linkDataSource.confluence-search.configmodal.date.range.input.placeholder': 'Vyberte datum.',
49
53
  'linkDataSource.confluence-search.configmodal.date.range.last.month': 'Posledních 30 dní',
50
54
  'linkDataSource.confluence-search.configmodal.date.range.last.week': 'Posledních 7 dní',
51
55
  'linkDataSource.confluence-search.configmodal.date.range.last.year': 'Poslední rok',
52
56
  'linkDataSource.confluence-search.configmodal.date.range.title': 'Naposledy aktualizováno',
57
+ 'linkDataSource.confluence-search.configmodal.date.range.to': 'Do',
58
+ 'linkDataSource.confluence-search.configmodal.date.range.to.Label': 'do',
53
59
  'linkDataSource.confluence-search.configmodal.date.range.today': 'Dnes',
60
+ 'linkDataSource.confluence-search.configmodal.date.range.update.button': 'Aktualizovat',
54
61
  'linkDataSource.confluence-search.configmodal.date.range.yesterday': 'Včera',
55
62
  'linkDataSource.confluence-search.configmodal.insertConfluenceTitle': 'Vložit seznam Confluence',
56
63
  'linkDataSource.confluence-search.configmodal.insertConfluenceTitleManySites': 'Vložit seznam Confluence z:',
@@ -75,14 +82,14 @@ export default {
75
82
  'linkDataSource.jira-issues.configmodal.basicModeText': 'Základní',
76
83
  'linkDataSource.jira-issues.configmodal.basicTextSearchPlaceholder': 'Vyhledat požadavky pomocí klíčového slova',
77
84
  'linkDataSource.jira-issues.configmodal.chooseSite': 'Vyberte web.',
78
- 'linkDataSource.jira-issues.configmodal.inlineLinkViewModeDescription': 'Zobrazit počet výsledků vyhledávání nebo jako vložený chytrý odkaz',
79
- 'linkDataSource.jira-issues.configmodal.inlineLinkViewModeLabel': 'Vložený odkaz',
80
85
  'linkDataSource.jira-issues.configmodal.insertIssuesButtonText': 'Vložit požadavky',
81
86
  'linkDataSource.jira-issues.configmodal.insertIssuesTitle': 'Vložit požadavky Jira',
82
87
  'linkDataSource.jira-issues.configmodal.insertIssuesTitleManySites': 'Vložit požadavky Jira z:',
83
88
  'linkDataSource.jira-issues.configmodal.issue': '{totalCount, plural, one {požadavek} few {požadavky} many {požadavku} other {požadavků}}',
84
- 'linkDataSource.jira-issues.configmodal.tableViewModeDescription': 'Zobrazit výsledky vyhledávání Jira jako tabulku',
85
- 'linkDataSource.jira-issues.configmodal.tableViewModeLabel': 'Tabulka',
89
+ 'linkDataSource.jira-issues.configmodal.viewModeInlineLinkDescription': 'Zobrazit počet výsledků vyhledávání jako vložený chytrý odkaz',
90
+ 'linkDataSource.jira-issues.configmodal.viewModeInlineLinkLabel': 'Vložený odkaz',
91
+ 'linkDataSource.jira-issues.configmodal.viewModeListDescription': 'Zobrazit výsledky vyhledávání jako seznam',
92
+ 'linkDataSource.jira-issues.configmodal.viewModeListLabel': 'Sloupec',
86
93
  'linkDataSource.jira-issues.learnMoreLink': 'Jak vyhledávat pomocí JQL',
87
94
  'linkDataSource.jira-issues.no.jira.sites.access.description': 'Chcete-li požádat o přístup, obraťte se na správce.',
88
95
  'linkDataSource.jira-issues.no.jira.sites.access.title': 'Nemáte přístup k žádným webům Jira',
@@ -33,24 +33,31 @@ export default {
33
33
  'linkDataSource.basic-filter.status.label': 'Status',
34
34
  'linkDataSource.basic-filter.type.label': 'Type',
35
35
  'linkDataSource.checkConnection': 'Tjek din forbindelse, og genindlæs, eller prøv igen senere.',
36
+ 'linkDataSource.clol-basic-filter.editedOrCreatedBy.label': 'Redigeret eller oprettet af',
36
37
  'linkDataSource.column-picker.no-all-items-shown-message.line-1': 'Din søgning gav for mange resultater.',
37
38
  'linkDataSource.column-picker.no-all-items-shown-message.line-2': 'Prøv igen med mere specifikke søgeord.',
38
39
  'linkDataSource.column-picker.search': 'Søg efter felter',
39
40
  'linkDataSource.column-picker.tooltip': 'Konfigurer kolonner',
40
41
  'linkDataSource.configmodal.basicTextSearchPlaceholder': 'Søg efter sager efter søgeord',
41
42
  'linkDataSource.configmodal.cancelButtonText': 'Annuller',
42
- 'linkDataSource.configmodal.inlineLinkViewModeDescription': 'Vis som antallet af søgeresultater eller som et intelligent link på samme linje',
43
- 'linkDataSource.configmodal.inlineLinkViewModeLabel': 'Link på samme linje',
44
- 'linkDataSource.configmodal.tableViewModeDescription': 'Vis søgeresultater som en tabel',
45
- 'linkDataSource.configmodal.tableViewModeLabel': 'Tabel',
46
43
  'linkDataSource.confluence-search.configmodal.cancelButtonText': 'Annuller',
44
+ 'linkDataSource.confluence-search.configmodal.date.range.after.label': 'efter {date}',
47
45
  'linkDataSource.confluence-search.configmodal.date.range.any.time': 'Når som helst',
46
+ 'linkDataSource.confluence-search.configmodal.date.range.before.label': 'før {date}',
48
47
  'linkDataSource.confluence-search.configmodal.date.range.custom': 'Brugerdefineret',
48
+ 'linkDataSource.confluence-search.configmodal.date.range.custom.invalid.after.end': 'Startdatoen skal ligge før slutdatoen',
49
+ 'linkDataSource.confluence-search.configmodal.date.range.custom.invalid.after.today': 'Startdatoen må ikke ligge i fremtiden',
50
+ 'linkDataSource.confluence-search.configmodal.date.range.custom.invalid.to.after.today': 'Slutdatoen må ikke ligge i fremtiden',
51
+ 'linkDataSource.confluence-search.configmodal.date.range.from': 'Fra',
52
+ 'linkDataSource.confluence-search.configmodal.date.range.input.placeholder': 'Vælg dato',
49
53
  'linkDataSource.confluence-search.configmodal.date.range.last.month': 'Inden for de seneste 30 dage',
50
54
  'linkDataSource.confluence-search.configmodal.date.range.last.week': 'Inden for de seneste 7 dage',
51
55
  'linkDataSource.confluence-search.configmodal.date.range.last.year': 'Det seneste år',
52
56
  'linkDataSource.confluence-search.configmodal.date.range.title': 'Senest opdateret',
57
+ 'linkDataSource.confluence-search.configmodal.date.range.to': 'Til',
58
+ 'linkDataSource.confluence-search.configmodal.date.range.to.Label': 'til',
53
59
  'linkDataSource.confluence-search.configmodal.date.range.today': 'I dag',
60
+ 'linkDataSource.confluence-search.configmodal.date.range.update.button': 'Opdater',
54
61
  'linkDataSource.confluence-search.configmodal.date.range.yesterday': 'I går',
55
62
  'linkDataSource.confluence-search.configmodal.insertConfluenceTitle': 'Indsæt Confluence-liste',
56
63
  'linkDataSource.confluence-search.configmodal.insertConfluenceTitleManySites': 'Indsæt Confluence-liste fra',
@@ -75,14 +82,14 @@ export default {
75
82
  'linkDataSource.jira-issues.configmodal.basicModeText': 'Basis',
76
83
  'linkDataSource.jira-issues.configmodal.basicTextSearchPlaceholder': 'Søg efter sager efter søgeord',
77
84
  'linkDataSource.jira-issues.configmodal.chooseSite': 'Vælg website',
78
- 'linkDataSource.jira-issues.configmodal.inlineLinkViewModeDescription': 'Vis som antallet af søgeresultater eller som et smart link på samme linje',
79
- 'linkDataSource.jira-issues.configmodal.inlineLinkViewModeLabel': 'Link på samme linje',
80
85
  'linkDataSource.jira-issues.configmodal.insertIssuesButtonText': 'Indsæt sager',
81
86
  'linkDataSource.jira-issues.configmodal.insertIssuesTitle': 'Indsæt Jira-sager',
82
87
  'linkDataSource.jira-issues.configmodal.insertIssuesTitleManySites': 'Indsæt Jira-sager fra',
83
88
  'linkDataSource.jira-issues.configmodal.issue': '{totalCount, plural, one {sag} other {sager}}',
84
- 'linkDataSource.jira-issues.configmodal.tableViewModeDescription': 'Vis Jira-søgeresultater som en tabel',
85
- 'linkDataSource.jira-issues.configmodal.tableViewModeLabel': 'Tabel',
89
+ 'linkDataSource.jira-issues.configmodal.viewModeInlineLinkDescription': 'Vis antallet af søgeresultater som et intelligent link på samme linje',
90
+ 'linkDataSource.jira-issues.configmodal.viewModeInlineLinkLabel': 'Link på samme linje',
91
+ 'linkDataSource.jira-issues.configmodal.viewModeListDescription': 'Vis søgeresultater som en liste',
92
+ 'linkDataSource.jira-issues.configmodal.viewModeListLabel': 'Liste',
86
93
  'linkDataSource.jira-issues.learnMoreLink': 'Lær, hvordan du søger med JQL',
87
94
  'linkDataSource.jira-issues.no.jira.sites.access.description': 'Kontakt din administrator for at anmode om adgang.',
88
95
  'linkDataSource.jira-issues.no.jira.sites.access.title': 'Du har ikke adgang til nogen Jira-sider',