@atlaskit/link-datasource 2.8.0 → 2.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 (50) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/cjs/hooks/useDatasourceTableState.js +54 -39
  3. package/dist/cjs/state/index.js +68 -0
  4. package/dist/cjs/ui/assets-modal/modal/index.js +8 -5
  5. package/dist/cjs/ui/common/modal/datasource-modal/createDatasourceModal.js +55 -0
  6. package/dist/cjs/ui/common/modal/datasources-table-in-modal-preview/index.js +13 -2
  7. package/dist/cjs/ui/common/modal/insert-button/index.js +5 -4
  8. package/dist/cjs/ui/confluence-search-modal/modal/index.js +36 -39
  9. package/dist/cjs/ui/datasource-table-view/datasourceTableView.js +3 -2
  10. package/dist/cjs/ui/jira-issues-modal/modal/index.js +142 -211
  11. package/dist/es2019/hooks/useDatasourceTableState.js +15 -5
  12. package/dist/es2019/state/index.js +55 -0
  13. package/dist/es2019/ui/assets-modal/modal/index.js +9 -6
  14. package/dist/es2019/ui/common/modal/datasource-context/index.js +1 -1
  15. package/dist/es2019/ui/common/modal/datasource-modal/createDatasourceModal.js +51 -0
  16. package/dist/es2019/ui/common/modal/datasources-table-in-modal-preview/index.js +9 -2
  17. package/dist/es2019/ui/common/modal/insert-button/index.js +5 -4
  18. package/dist/es2019/ui/confluence-search-modal/modal/index.js +36 -39
  19. package/dist/es2019/ui/datasource-table-view/datasourceTableView.js +4 -3
  20. package/dist/es2019/ui/jira-issues-modal/modal/index.js +134 -202
  21. package/dist/esm/hooks/useDatasourceTableState.js +54 -39
  22. package/dist/esm/state/index.js +61 -0
  23. package/dist/esm/ui/assets-modal/modal/index.js +9 -6
  24. package/dist/esm/ui/common/modal/datasource-modal/createDatasourceModal.js +48 -0
  25. package/dist/esm/ui/common/modal/datasources-table-in-modal-preview/index.js +10 -2
  26. package/dist/esm/ui/common/modal/insert-button/index.js +5 -4
  27. package/dist/esm/ui/confluence-search-modal/modal/index.js +39 -42
  28. package/dist/esm/ui/datasource-table-view/datasourceTableView.js +4 -3
  29. package/dist/esm/ui/jira-issues-modal/modal/index.js +147 -216
  30. package/dist/types/common/types.d.ts +2 -1
  31. package/dist/types/state/index.d.ts +21 -0
  32. package/dist/types/ui/common/modal/datasource-context/index.d.ts +9 -12
  33. package/dist/types/ui/common/modal/datasource-modal/createDatasourceModal.d.ts +15 -0
  34. package/dist/types/ui/common/modal/insert-button/index.d.ts +4 -2
  35. package/dist/types/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.d.ts +1 -1
  36. package/dist/types/ui/confluence-search-modal/modal/index.d.ts +3 -4
  37. package/dist/types/ui/confluence-search-modal/types.d.ts +6 -1
  38. package/dist/types/ui/jira-issues-modal/modal/index.d.ts +3 -3
  39. package/dist/types/ui/jira-issues-modal/types.d.ts +3 -0
  40. package/dist/types-ts4.5/common/types.d.ts +2 -1
  41. package/dist/types-ts4.5/state/index.d.ts +21 -0
  42. package/dist/types-ts4.5/ui/common/modal/datasource-context/index.d.ts +9 -12
  43. package/dist/types-ts4.5/ui/common/modal/datasource-modal/createDatasourceModal.d.ts +15 -0
  44. package/dist/types-ts4.5/ui/common/modal/insert-button/index.d.ts +4 -2
  45. package/dist/types-ts4.5/ui/confluence-search-modal/basic-filters/filters/date-range-picker/PopupComponent.d.ts +1 -1
  46. package/dist/types-ts4.5/ui/confluence-search-modal/modal/index.d.ts +3 -4
  47. package/dist/types-ts4.5/ui/confluence-search-modal/types.d.ts +6 -1
  48. package/dist/types-ts4.5/ui/jira-issues-modal/modal/index.d.ts +3 -3
  49. package/dist/types-ts4.5/ui/jira-issues-modal/types.d.ts +3 -0
  50. package/package.json +5 -1
@@ -12,7 +12,7 @@ import { withAnalyticsContext } from '@atlaskit/analytics-next';
12
12
  import Button from '@atlaskit/button/standard-button';
13
13
  import { IntlMessagesProvider } from '@atlaskit/intl-messages-provider';
14
14
  import { ModalBody, ModalFooter, ModalHeader, ModalTitle, ModalTransition } from '@atlaskit/modal-dialog';
15
- import { getBooleanFF } from '@atlaskit/platform-feature-flags';
15
+ import { fg } from '@atlaskit/platform-feature-flags';
16
16
  import { EVENT_CHANNEL, useDatasourceAnalyticsEvents } from '../../../analytics';
17
17
  import { componentMetadata } from '../../../analytics/constants';
18
18
  import { DatasourceAction, DatasourceDisplay, DatasourceSearchMethod } from '../../../analytics/types';
@@ -27,6 +27,7 @@ import { useAssetsClient } from '../../../hooks/useAssetsClient';
27
27
  import { useDatasourceTableState } from '../../../hooks/useDatasourceTableState';
28
28
  import i18nEN from '../../../i18n/en';
29
29
  import { PermissionError } from '../../../services/cmdbService.utils';
30
+ import { StoreContainer } from '../../../state';
30
31
  import { AccessRequired } from '../../../ui/common/error-state/access-required';
31
32
  import { ModalLoadingError } from '../../common/error-state/modal-loading-error';
32
33
  import { CancelButton } from '../../common/modal/cancel-button';
@@ -54,7 +55,9 @@ const PlainAssetsConfigModal = props => {
54
55
  const [aql, setAql] = useState(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.aql);
55
56
  const [schemaId, setSchemaId] = useState(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.schemaId);
56
57
  const apiVersion = initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.version;
57
- const [visibleColumnKeys, setVisibleColumnKeys] = useState(getBooleanFF('platform.linking-platform.datasource-assets_add_version_parameter') && apiVersion !== VERSION_TWO ? [] : initialVisibleColumnKeys);
58
+ const [visibleColumnKeys, setVisibleColumnKeys] = useState(
59
+ // eslint-disable-next-line @atlaskit/platform/no-preconditioning
60
+ fg('platform.linking-platform.datasource-assets_add_version_parameter') && apiVersion !== VERSION_TWO ? [] : initialVisibleColumnKeys);
58
61
  const [isNewSearch, setIsNewSearch] = useState(false);
59
62
  const [errorState, setErrorState] = useState();
60
63
  const {
@@ -105,7 +108,7 @@ const PlainAssetsConfigModal = props => {
105
108
  aql: aql || '',
106
109
  schemaId: schemaId || '',
107
110
  workspaceId: workspaceId || '',
108
- ...(getBooleanFF('platform.linking-platform.datasource-assets_add_version_parameter') ? {
111
+ ...(fg('platform.linking-platform.datasource-assets_add_version_parameter') ? {
109
112
  version: VERSION_TWO
110
113
  } : {})
111
114
  }), [aql, schemaId, workspaceId]);
@@ -190,7 +193,7 @@ const PlainAssetsConfigModal = props => {
190
193
  setIsNewSearch(false);
191
194
  }, []);
192
195
  useEffect(() => {
193
- if (getBooleanFF('platform.linking-platform.datasource-assets_add_version_parameter')) {
196
+ if (fg('platform.linking-platform.datasource-assets_add_version_parameter')) {
194
197
  const newVisibleColumnKeys = initialVisibleColumnKeys && initialVisibleColumnKeys.length > 0 && apiVersion === VERSION_TWO ? initialVisibleColumnKeys : defaultVisibleColumnKeys;
195
198
  setVisibleColumnKeys(newVisibleColumnKeys);
196
199
  } else {
@@ -249,7 +252,7 @@ const PlainAssetsConfigModal = props => {
249
252
  workspaceId,
250
253
  aql,
251
254
  schemaId,
252
- ...(getBooleanFF('platform.linking-platform.datasource-assets_add_version_parameter') ? {
255
+ ...(fg('platform.linking-platform.datasource-assets_add_version_parameter') ? {
253
256
  version: VERSION_TWO
254
257
  } : {})
255
258
  },
@@ -374,4 +377,4 @@ const contextData = {
374
377
  ...analyticsContextAttributes
375
378
  }
376
379
  };
377
- export const AssetsConfigModal = withAnalyticsContext(contextData)(props => jsx(DatasourceExperienceIdProvider, null, jsx(UserInteractionsProvider, null, jsx(PlainAssetsConfigModal, props))));
380
+ export const AssetsConfigModal = withAnalyticsContext(contextData)(props => jsx(StoreContainer, null, jsx(DatasourceExperienceIdProvider, null, jsx(UserInteractionsProvider, null, jsx(PlainAssetsConfigModal, props)))));
@@ -51,7 +51,7 @@ export const DatasourceContextProvider = ({
51
51
  onWrappedColumnChange,
52
52
  parameters,
53
53
  setParameters,
54
- onInsert
54
+ onInsert: onInsert
55
55
  }), [datasourceId, isValidParameters, tableState, visibleColumnCount, visibleColumnKeys, onVisibleColumnKeysChange, columnCustomSizes, onColumnResize, wrappedColumnKeys, onWrappedColumnChange, parameters, onInsert]);
56
56
  return /*#__PURE__*/React.createElement(DatasourceContext.Provider, {
57
57
  value: contextValue
@@ -0,0 +1,51 @@
1
+ /**
2
+ * @jsxRuntime classic
3
+ * @jsx jsx
4
+ */
5
+
6
+ import React from 'react';
7
+
8
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
9
+ import { jsx } from '@emotion/react';
10
+ import { AnalyticsContext } from '@atlaskit/analytics-next';
11
+ import { DatasourceExperienceIdProvider } from '../../../../contexts/datasource-experience-id';
12
+ import { UserInteractionsProvider } from '../../../../contexts/user-interactions';
13
+ import { DatasourceContextProvider } from '../datasource-context';
14
+ import { DatasourceViewModeProvider } from '../mode-switcher/useViewModeContext';
15
+ const DEFAULT_VIEW_MODE = 'table';
16
+ export const createDatasourceModal = ({
17
+ isValidParameters,
18
+ dataProvider,
19
+ component: ModalContent
20
+ }) => {
21
+ return props => {
22
+ const {
23
+ datasourceId,
24
+ visibleColumnKeys,
25
+ columnCustomSizes,
26
+ wrappedColumnKeys,
27
+ parameters,
28
+ onInsert,
29
+ viewMode
30
+ } = props;
31
+ return jsx(AnalyticsContext, {
32
+ data: {
33
+ source: 'datasourceConfigModal',
34
+ component: 'datasourceConfigModal',
35
+ attributes: {
36
+ dataProvider
37
+ }
38
+ }
39
+ }, jsx(DatasourceExperienceIdProvider, null, jsx(UserInteractionsProvider, null, jsx(DatasourceContextProvider, {
40
+ datasourceId: datasourceId,
41
+ initialVisibleColumnKeys: visibleColumnKeys,
42
+ initialColumnCustomSizes: columnCustomSizes,
43
+ initialWrappedColumnKeys: wrappedColumnKeys,
44
+ initialParameters: parameters,
45
+ isValidParameters: isValidParameters,
46
+ onInsert: onInsert
47
+ }, jsx(DatasourceViewModeProvider, {
48
+ viewMode: viewMode !== null && viewMode !== void 0 ? viewMode : DEFAULT_VIEW_MODE
49
+ }, jsx(ModalContent, props))))));
50
+ };
51
+ };
@@ -1,6 +1,8 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
- import React from 'react';
2
+ import React, { useCallback } from 'react';
3
3
  import { fg } from '@atlaskit/platform-feature-flags';
4
+ import { DatasourceAction } from '../../../../analytics/types';
5
+ import { useUserInteractions } from '../../../../contexts/user-interactions';
4
6
  import { IssueLikeDataTableView } from '../../../issue-like-table';
5
7
  import { useDatasourceContext } from '../datasource-context';
6
8
  const Table = props => {
@@ -22,13 +24,18 @@ const Table = props => {
22
24
  extensionKey = null
23
25
  }
24
26
  } = useDatasourceContext();
27
+ const userInteractions = useUserInteractions();
28
+ const handleOnNextPage = useCallback((onNextPageProps = {}) => {
29
+ userInteractions.add(DatasourceAction.NEXT_PAGE_SCROLLED);
30
+ onNextPage(onNextPageProps);
31
+ }, [onNextPage, userInteractions]);
25
32
  return /*#__PURE__*/React.createElement(IssueLikeDataTableView, _extends({}, props, {
26
33
  status: status,
27
34
  columns: columns,
28
35
  items: responseItems,
29
36
  hasNextPage: hasNextPage,
30
37
  visibleColumnKeys: visibleColumnKeys || defaultVisibleColumnKeys,
31
- onNextPage: onNextPage,
38
+ onNextPage: handleOnNextPage,
32
39
  onLoadDatasourceDetails: loadDatasourceDetails,
33
40
  onVisibleColumnKeysChange: onVisibleColumnKeysChange,
34
41
  extensionKey: extensionKey,
@@ -18,6 +18,7 @@ export const InsertButton = ({
18
18
  testId,
19
19
  url,
20
20
  getAnalyticsPayload,
21
+ overwriteParameters,
21
22
  children
22
23
  }) => {
23
24
  const {
@@ -47,12 +48,12 @@ export const InsertButton = ({
47
48
  const insertButtonClickedEvent = analyticsEvent.update({
48
49
  actionSubjectId: 'insert',
49
50
  attributes: {
50
- ...getAnalyticsPayload(),
51
51
  totalItemCount: totalCount || 0,
52
52
  displayedColumnCount: visibleColumnCount.current,
53
53
  display: currentViewMode === 'inline' ? DatasourceDisplay.DATASOURCE_INLINE : DatasourceDisplay.DATASOURCE_TABLE,
54
54
  searchMethod: DatasourceSearchMethod.DATASOURCE_SEARCH_QUERY,
55
- actions: userInteractions.get()
55
+ actions: userInteractions.get(),
56
+ ...getAnalyticsPayload()
56
57
  },
57
58
  eventType: 'ui'
58
59
  });
@@ -68,7 +69,7 @@ export const InsertButton = ({
68
69
  } else {
69
70
  onInsert(buildDatasourceAdf({
70
71
  id: datasourceId,
71
- parameters: parameters,
72
+ parameters: overwriteParameters ? overwriteParameters(parameters) : parameters,
72
73
  views: [{
73
74
  type: 'table',
74
75
  properties: {
@@ -89,7 +90,7 @@ export const InsertButton = ({
89
90
  }]
90
91
  }, url), consumerEvent);
91
92
  }
92
- }, [isValidParameters, parameters, url, getAnalyticsPayload, totalCount, visibleColumnCount, currentViewMode, userInteractions, onInsert, datasourceId, visibleColumnKeys, columnCustomSizes, wrappedColumnKeys]);
93
+ }, [columnCustomSizes, currentViewMode, datasourceId, getAnalyticsPayload, isValidParameters, onInsert, overwriteParameters, parameters, totalCount, url, userInteractions, visibleColumnCount, visibleColumnKeys, wrappedColumnKeys]);
93
94
  return jsx(Button, {
94
95
  appearance: "primary",
95
96
  onClick: onInsertPressed,
@@ -8,7 +8,7 @@ import { Fragment, useCallback, useEffect, useMemo, useRef, useState } from 'rea
8
8
  // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
9
9
  import { jsx } from '@emotion/react';
10
10
  import { FormattedMessage } from 'react-intl-next';
11
- import { withAnalyticsContext } from '@atlaskit/analytics-next';
11
+ import { AnalyticsContext } from '@atlaskit/analytics-next';
12
12
  import { IntlMessagesProvider } from '@atlaskit/intl-messages-provider';
13
13
  import { ModalBody, ModalFooter, ModalHeader, ModalTitle } from '@atlaskit/modal-dialog';
14
14
  import { fg } from '@atlaskit/platform-feature-flags';
@@ -21,6 +21,7 @@ import { DatasourceExperienceIdProvider } from '../../../contexts/datasource-exp
21
21
  import { UserInteractionsProvider, useUserInteractions } from '../../../contexts/user-interactions';
22
22
  import i18nEN from '../../../i18n/en';
23
23
  import { useAvailableSites } from '../../../services/useAvailableSites';
24
+ import { StoreContainer } from '../../../state';
24
25
  import { AccessRequired } from '../../common/error-state/access-required';
25
26
  import { ModalLoadingError } from '../../common/error-state/modal-loading-error';
26
27
  import { NoInstancesView } from '../../common/error-state/no-instances';
@@ -29,12 +30,13 @@ import { InitialStateView } from '../../common/initial-state-view';
29
30
  import { CancelButton } from '../../common/modal/cancel-button';
30
31
  import { ContentContainer } from '../../common/modal/content-container';
31
32
  import { SmartCardPlaceholder, SmartLink } from '../../common/modal/count-view-smart-link';
32
- import { DatasourceContextProvider, useDatasourceContext } from '../../common/modal/datasource-context';
33
+ import { useDatasourceContext } from '../../common/modal/datasource-context';
33
34
  import { DatasourceModal } from '../../common/modal/datasource-modal';
35
+ import { createDatasourceModal } from '../../common/modal/datasource-modal/createDatasourceModal';
34
36
  import DatasourcesTableInModalPreview from '../../common/modal/datasources-table-in-modal-preview';
35
37
  import { InsertButton } from '../../common/modal/insert-button';
36
38
  import { DatasourceViewModeDropDown } from '../../common/modal/mode-switcher';
37
- import { DatasourceViewModeProvider, useViewModeContext } from '../../common/modal/mode-switcher/useViewModeContext';
39
+ import { useViewModeContext } from '../../common/modal/mode-switcher/useViewModeContext';
38
40
  import TableSearchCount from '../../common/modal/search-count';
39
41
  import { SiteSelector } from '../../common/modal/site-selector';
40
42
  import { EmptyState } from '../../issue-like-table';
@@ -42,7 +44,6 @@ import ConfluenceSearchContainer from '../confluence-search-container';
42
44
  import { ConfluenceSearchInitialStateSVG } from './confluence-search-initial-state-svg';
43
45
  import { confluenceSearchModalMessages } from './messages';
44
46
  import { PlainConfluenceSearchConfigModal as PlainConfluenceSearchConfigModalOld } from './ModalOld';
45
- const DEFAULT_VIEW_MODE = 'table';
46
47
  const inputContainerStyles = xcss({
47
48
  alignItems: 'baseline',
48
49
  display: 'flex',
@@ -74,7 +75,6 @@ const useUpdateParametersOnFormUpdate = (cloudId, searchString, lastModified, co
74
75
  export const PlainConfluenceSearchConfigModal = props => {
75
76
  const {
76
77
  onCancel,
77
- parameters: initialParameters,
78
78
  url: urlBeingEdited,
79
79
  disableDisplayDropdown = false,
80
80
  overrideParameters
@@ -82,23 +82,6 @@ export const PlainConfluenceSearchConfigModal = props => {
82
82
  const {
83
83
  currentViewMode
84
84
  } = useViewModeContext();
85
- const [cloudId, setCloudId] = useState(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.cloudId);
86
- const {
87
- availableSites,
88
- selectedSite: selectedConfluenceSite
89
- } = useAvailableSites('confluence', cloudId);
90
- const [searchString, setSearchString] = useState(initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.searchString);
91
- const [contributorAccountIds, setContributorAccountIds] = useState((initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.contributorAccountIds) || []);
92
- const [lastModified, setLastModified] = useState(initialParameters !== null && initialParameters !== void 0 && initialParameters.lastModified ? {
93
- value: initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.lastModified,
94
- from: initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.lastModifiedFrom,
95
- to: initialParameters === null || initialParameters === void 0 ? void 0 : initialParameters.lastModifiedTo
96
- } : undefined);
97
-
98
- // analytics related parameters
99
- const searchCount = useRef(0);
100
- const userInteractions = useUserInteractions();
101
- useUpdateParametersOnFormUpdate(cloudId, searchString, lastModified, contributorAccountIds, overrideParameters);
102
85
  const {
103
86
  visibleColumnKeys,
104
87
  tableState: {
@@ -113,6 +96,23 @@ export const PlainConfluenceSearchConfigModal = props => {
113
96
  visibleColumnCount,
114
97
  parameters
115
98
  } = useDatasourceContext();
99
+ const [cloudId, setCloudId] = useState(parameters === null || parameters === void 0 ? void 0 : parameters.cloudId);
100
+ const {
101
+ availableSites,
102
+ selectedSite: selectedConfluenceSite
103
+ } = useAvailableSites('confluence', cloudId);
104
+ const [searchString, setSearchString] = useState(parameters === null || parameters === void 0 ? void 0 : parameters.searchString);
105
+ const [contributorAccountIds, setContributorAccountIds] = useState((parameters === null || parameters === void 0 ? void 0 : parameters.contributorAccountIds) || []);
106
+ const [lastModified, setLastModified] = useState(parameters !== null && parameters !== void 0 && parameters.lastModified ? {
107
+ value: parameters === null || parameters === void 0 ? void 0 : parameters.lastModified,
108
+ from: parameters === null || parameters === void 0 ? void 0 : parameters.lastModifiedFrom,
109
+ to: parameters === null || parameters === void 0 ? void 0 : parameters.lastModifiedTo
110
+ } : undefined);
111
+
112
+ // analytics related parameters
113
+ const searchCount = useRef(0);
114
+ const userInteractions = useUserInteractions();
115
+ useUpdateParametersOnFormUpdate(cloudId, searchString, lastModified, contributorAccountIds, overrideParameters);
116
116
  const {
117
117
  fireEvent
118
118
  } = useDatasourceAnalyticsEvents();
@@ -305,7 +305,7 @@ export const PlainConfluenceSearchConfigModal = props => {
305
305
  }, jsx(ConfluenceSearchContainer, {
306
306
  isSearching: status === 'loading',
307
307
  onSearch: onSearch,
308
- parameters: isValidParameters(parameters) ? parameters : {
308
+ parameters: parameters && isValidParameters(parameters) ? parameters : {
309
309
  cloudId: ''
310
310
  }
311
311
  })), currentViewMode === 'inline' ? renderInlineLinkModalContent() : renderTableModalContent()) : jsx(NoInstancesView, {
@@ -340,19 +340,16 @@ const contextData = {
340
340
  ...analyticsContextAttributes
341
341
  }
342
342
  };
343
- export const ConfluenceSearchConfigModal = withAnalyticsContext(contextData)(props => {
344
- var _props$viewMode;
345
- return jsx(DatasourceExperienceIdProvider, null, jsx(UserInteractionsProvider, null, fg('platform-datasources-use-refactored-config-modal') ? jsx(DatasourceContextProvider, {
346
- datasourceId: props.datasourceId,
347
- initialVisibleColumnKeys: props.visibleColumnKeys,
348
- initialColumnCustomSizes: props.columnCustomSizes,
349
- initialWrappedColumnKeys: props.wrappedColumnKeys,
350
- initialParameters: props.parameters,
351
- isValidParameters: isValidParameters,
352
- onInsert: props.onInsert
353
- }, jsx(DatasourceViewModeProvider, {
354
- viewMode: (_props$viewMode = props.viewMode) !== null && _props$viewMode !== void 0 ? _props$viewMode : DEFAULT_VIEW_MODE
355
- }, jsx(PlainConfluenceSearchConfigModal, props))) :
356
- // TODO on cleanup 'use-refactored-config-modal' ff, delete `ModalOld.tsx` as well
357
- jsx(PlainConfluenceSearchConfigModalOld, props)));
358
- });
343
+ const ConnectedConfluenceSearchConfigModal = createDatasourceModal({
344
+ isValidParameters,
345
+ dataProvider: 'confluence-search',
346
+ component: PlainConfluenceSearchConfigModal
347
+ });
348
+ export const ConfluenceSearchConfigModal = props => {
349
+ if (fg('platform-datasources-use-refactored-config-modal')) {
350
+ return jsx(StoreContainer, null, jsx(ConnectedConfluenceSearchConfigModal, props));
351
+ }
352
+ return jsx(StoreContainer, null, jsx(AnalyticsContext, {
353
+ data: contextData
354
+ }, jsx(DatasourceExperienceIdProvider, null, jsx(UserInteractionsProvider, null, jsx(PlainConfluenceSearchConfigModalOld, props)))));
355
+ };
@@ -8,7 +8,7 @@ import { useCallback, useEffect, useRef } from 'react';
8
8
  import { css, jsx } from '@emotion/react';
9
9
  import { withAnalyticsContext } from '@atlaskit/analytics-next';
10
10
  import { IntlMessagesProvider } from '@atlaskit/intl-messages-provider';
11
- import { getBooleanFF } from '@atlaskit/platform-feature-flags';
11
+ import { fg } from '@atlaskit/platform-feature-flags';
12
12
  import { useDatasourceAnalyticsEvents } from '../../analytics';
13
13
  import { componentMetadata } from '../../analytics/constants';
14
14
  import { startUfoExperience } from '../../analytics/ufoExperiences';
@@ -18,6 +18,7 @@ import { fetchMessagesForLocale } from '../../common/utils/locale/fetch-messages
18
18
  import { DatasourceExperienceIdProvider, useDatasourceExperienceId } from '../../contexts/datasource-experience-id';
19
19
  import { useDatasourceTableState } from '../../hooks/useDatasourceTableState';
20
20
  import i18nEN from '../../i18n/en';
21
+ import { StoreContainer } from '../../state';
21
22
  import { ScrollableContainerHeight } from '../../ui/issue-like-table/styled';
22
23
  import { ASSETS_LIST_OF_LINKS_DATASOURCE_ID } from '../assets-modal';
23
24
  import { AccessRequired } from '../common/error-state/access-required';
@@ -115,7 +116,7 @@ const DatasourceTableViewWithoutAnalytics = ({
115
116
  const forcedReset = useCallback(() => {
116
117
  reset({
117
118
  shouldForceRequest: true,
118
- shouldResetColumns: getBooleanFF('platform.linking-platform.datasource-assets_update_refresh_button_dt3qk') && datasourceId === ASSETS_LIST_OF_LINKS_DATASOURCE_ID
119
+ shouldResetColumns: fg('platform.linking-platform.datasource-assets_update_refresh_button_dt3qk') && datasourceId === ASSETS_LIST_OF_LINKS_DATASOURCE_ID
119
120
  });
120
121
  }, [reset, datasourceId]);
121
122
  const onRefresh = useCallback(() => {
@@ -185,4 +186,4 @@ const DatasourceTableViewWithoutAnalytics = ({
185
186
  url: url
186
187
  })));
187
188
  };
188
- export const DatasourceTableView = withAnalyticsContext(componentMetadata.tableView)(props => jsx(DatasourceExperienceIdProvider, null, jsx(DatasourceTableViewWithoutAnalytics, props)));
189
+ export const DatasourceTableView = withAnalyticsContext(componentMetadata.tableView)(props => jsx(StoreContainer, null, jsx(DatasourceExperienceIdProvider, null, jsx(DatasourceTableViewWithoutAnalytics, props))));