diff --git a/packages/kbn-alerts-ui-shared/tsconfig.json b/packages/kbn-alerts-ui-shared/tsconfig.json
index 07a52c9d9c1b9..30be2e17af3ea 100644
--- a/packages/kbn-alerts-ui-shared/tsconfig.json
+++ b/packages/kbn-alerts-ui-shared/tsconfig.json
@@ -34,6 +34,6 @@
"@kbn/alerts-as-data-utils",
"@kbn/core-http-browser-mocks",
"@kbn/core-notifications-browser-mocks",
- "@kbn/shared-ux-table-persist"
+ "@kbn/shared-ux-table-persist",
]
}
diff --git a/packages/response-ops/rule_form/src/create_rule_form.tsx b/packages/response-ops/rule_form/src/create_rule_form.tsx
index d7ba545935495..2f5e0472dcd50 100644
--- a/packages/response-ops/rule_form/src/create_rule_form.tsx
+++ b/packages/response-ops/rule_form/src/create_rule_form.tsx
@@ -64,7 +64,7 @@ export const CreateRuleForm = (props: CreateRuleFormProps) => {
onSubmit,
} = props;
- const { http, docLinks, notifications, ruleTypeRegistry, i18n, theme } = plugins;
+ const { http, docLinks, notifications, ruleTypeRegistry, ...deps } = plugins;
const { toasts } = notifications;
const { mutate, isLoading: isSaving } = useCreateRule({
@@ -82,7 +82,7 @@ export const CreateRuleForm = (props: CreateRuleFormProps) => {
...(message.details && {
text: toMountPoint(
{message.details},
- { i18n, theme }
+ deps
),
}),
});
diff --git a/packages/response-ops/rule_form/src/edit_rule_form.tsx b/packages/response-ops/rule_form/src/edit_rule_form.tsx
index 7350a42475b69..392447114edd4 100644
--- a/packages/response-ops/rule_form/src/edit_rule_form.tsx
+++ b/packages/response-ops/rule_form/src/edit_rule_form.tsx
@@ -45,7 +45,7 @@ export const EditRuleForm = (props: EditRuleFormProps) => {
onCancel,
onSubmit,
} = props;
- const { http, notifications, docLinks, ruleTypeRegistry, i18n, theme, application } = plugins;
+ const { http, notifications, docLinks, ruleTypeRegistry, application, ...deps } = plugins;
const { toasts } = notifications;
const { mutate, isLoading: isSaving } = useUpdateRule({
@@ -63,7 +63,7 @@ export const EditRuleForm = (props: EditRuleFormProps) => {
...(message.details && {
text: toMountPoint(
{message.details},
- { i18n, theme }
+ deps
),
}),
});
diff --git a/packages/response-ops/rule_form/src/rule_form.tsx b/packages/response-ops/rule_form/src/rule_form.tsx
index c09add5ae1c06..f34f811a7b488 100644
--- a/packages/response-ops/rule_form/src/rule_form.tsx
+++ b/packages/response-ops/rule_form/src/rule_form.tsx
@@ -28,13 +28,46 @@ export interface RuleFormProps {
}
export const RuleForm = (props: RuleFormProps) => {
- const { plugins, onCancel, onSubmit } = props;
+ const { plugins: _plugins, onCancel, onSubmit } = props;
const { id, ruleTypeId } = useParams<{
id?: string;
ruleTypeId?: string;
}>();
+ const {
+ http,
+ i18n,
+ theme,
+ userProfile,
+ application,
+ notifications,
+ charts,
+ settings,
+ data,
+ dataViews,
+ unifiedSearch,
+ docLinks,
+ ruleTypeRegistry,
+ actionTypeRegistry,
+ } = _plugins;
+
const ruleFormComponent = useMemo(() => {
+ const plugins = {
+ http,
+ i18n,
+ theme,
+ userProfile,
+ application,
+ notifications,
+ charts,
+ settings,
+ data,
+ dataViews,
+ unifiedSearch,
+ docLinks,
+ ruleTypeRegistry,
+ actionTypeRegistry,
+ };
if (id) {
return ;
}
@@ -60,7 +93,26 @@ export const RuleForm = (props: RuleFormProps) => {
}
/>
);
- }, [id, ruleTypeId, plugins, onCancel, onSubmit]);
+ }, [
+ http,
+ i18n,
+ theme,
+ userProfile,
+ application,
+ notifications,
+ charts,
+ settings,
+ data,
+ dataViews,
+ unifiedSearch,
+ docLinks,
+ ruleTypeRegistry,
+ actionTypeRegistry,
+ id,
+ ruleTypeId,
+ onCancel,
+ onSubmit,
+ ]);
return {ruleFormComponent};
};
diff --git a/packages/response-ops/rule_form/src/types.ts b/packages/response-ops/rule_form/src/types.ts
index 48ba6952b47f8..07f34e4c59026 100644
--- a/packages/response-ops/rule_form/src/types.ts
+++ b/packages/response-ops/rule_form/src/types.ts
@@ -16,6 +16,7 @@ import type { HttpStart } from '@kbn/core-http-browser';
import type { I18nStart } from '@kbn/core-i18n-browser';
import type { NotificationsStart } from '@kbn/core-notifications-browser';
import type { ThemeServiceStart } from '@kbn/core-theme-browser';
+import type { UserProfileService } from '@kbn/core-user-profile-browser';
import type { SettingsStart } from '@kbn/core-ui-settings-browser';
import type { DataPublicPluginStart } from '@kbn/data-plugin/public';
import type { DataViewsPublicPluginStart } from '@kbn/data-views-plugin/public';
@@ -54,6 +55,7 @@ export interface RuleFormPlugins {
http: HttpStart;
i18n: I18nStart;
theme: ThemeServiceStart;
+ userProfile: UserProfileService;
application: ApplicationStart;
notifications: NotificationsStart;
charts: ChartsPluginSetup;
diff --git a/packages/response-ops/rule_form/tsconfig.json b/packages/response-ops/rule_form/tsconfig.json
index 3f39fc766bd10..cea1478df1ef8 100644
--- a/packages/response-ops/rule_form/tsconfig.json
+++ b/packages/response-ops/rule_form/tsconfig.json
@@ -39,5 +39,6 @@
"@kbn/kibana-react-plugin",
"@kbn/core-i18n-browser",
"@kbn/core-theme-browser",
+ "@kbn/core-user-profile-browser",
]
}
diff --git a/x-pack/examples/triggers_actions_ui_example/public/application.tsx b/x-pack/examples/triggers_actions_ui_example/public/application.tsx
index 74b99fc2dece3..638233dd47a88 100644
--- a/x-pack/examples/triggers_actions_ui_example/public/application.tsx
+++ b/x-pack/examples/triggers_actions_ui_example/public/application.tsx
@@ -45,6 +45,7 @@ export interface TriggersActionsUiExampleComponentParams {
docLinks: CoreStart['docLinks'];
i18n: CoreStart['i18n'];
theme: CoreStart['theme'];
+ userProfile: CoreStart['userProfile'];
settings: CoreStart['settings'];
history: ScopedHistory;
triggersActionsUi: TriggersAndActionsUIPublicPluginStart;
@@ -63,12 +64,11 @@ const TriggersActionsUiExampleApp = ({
notifications,
settings,
docLinks,
- i18n,
- theme,
data,
charts,
dataViews,
unifiedSearch,
+ ...startServices
}: TriggersActionsUiExampleComponentParams) => {
return (
@@ -193,8 +193,6 @@ const TriggersActionsUiExampleApp = ({
application,
notifications,
docLinks,
- i18n,
- theme,
charts,
data,
dataViews,
@@ -202,6 +200,7 @@ const TriggersActionsUiExampleApp = ({
settings,
ruleTypeRegistry: triggersActionsUi.ruleTypeRegistry,
actionTypeRegistry: triggersActionsUi.actionTypeRegistry,
+ ...startServices,
}}
/>
@@ -218,8 +217,6 @@ const TriggersActionsUiExampleApp = ({
application,
notifications,
docLinks,
- theme,
- i18n,
charts,
data,
dataViews,
@@ -227,6 +224,7 @@ const TriggersActionsUiExampleApp = ({
settings,
ruleTypeRegistry: triggersActionsUi.ruleTypeRegistry,
actionTypeRegistry: triggersActionsUi.actionTypeRegistry,
+ ...startServices,
}}
/>
@@ -245,7 +243,6 @@ export const renderApp = (
deps: TriggersActionsUiExamplePublicStartDeps,
{ appBasePath, element, history }: AppMountParameters
) => {
- const { http, notifications, docLinks, application, i18n, theme, settings } = core;
const { triggersActionsUi } = deps;
const { ruleTypeRegistry, actionTypeRegistry } = triggersActionsUi;
@@ -263,19 +260,13 @@ export const renderApp = (
diff --git a/x-pack/plugins/alerting/public/application/maintenance_windows.tsx b/x-pack/plugins/alerting/public/application/maintenance_windows.tsx
index 5f4b81bb716f7..9ac8245cd8288 100644
--- a/x-pack/plugins/alerting/public/application/maintenance_windows.tsx
+++ b/x-pack/plugins/alerting/public/application/maintenance_windows.tsx
@@ -78,12 +78,11 @@ export const renderApp = ({
kibanaVersion: string;
}) => {
const { element, history } = mountParams;
- const { i18n, theme } = core;
const queryClient = new QueryClient();
ReactDOM.render(
-
+
&
+type GlobalServices = Pick &
Pick;
export class KibanaServices {
@@ -23,12 +23,12 @@ export class KibanaServices {
http,
serverless,
kibanaVersion,
- theme,
+ ...startServices
}: GlobalServices & {
kibanaVersion: string;
config: CasesUiConfigType;
}) {
- this.services = { application, http, theme, serverless };
+ this.services = { application, http, serverless, ...startServices };
this.kibanaVersion = kibanaVersion;
this.config = config;
}
diff --git a/x-pack/plugins/cases/public/common/mock/test_providers.tsx b/x-pack/plugins/cases/public/common/mock/test_providers.tsx
index 257ac4b1f8293..2e96f1e3633cb 100644
--- a/x-pack/plugins/cases/public/common/mock/test_providers.tsx
+++ b/x-pack/plugins/cases/public/common/mock/test_providers.tsx
@@ -99,7 +99,7 @@ const TestProvidersComponent: React.FC = ({
};
return (
-
+
@@ -178,7 +178,7 @@ export const createAppMockRenderer = ({
getFilesClient,
};
const AppWrapper: React.FC<{ children: React.ReactNode }> = ({ children }) => (
-
+
diff --git a/x-pack/plugins/cases/public/common/use_cases_toast.tsx b/x-pack/plugins/cases/public/common/use_cases_toast.tsx
index 71a9e3add1ae4..05c8e2f186a8b 100644
--- a/x-pack/plugins/cases/public/common/use_cases_toast.tsx
+++ b/x-pack/plugins/cases/public/common/use_cases_toast.tsx
@@ -106,7 +106,7 @@ const getErrorMessage = (error: Error | ServerError): string => {
export const useCasesToast = () => {
const { appId } = useApplication();
- const { application, i18n, theme } = useKibana().services;
+ const { application, i18n, theme, userProfile } = useKibana().services;
const { getUrlForApp, navigateToUrl } = application;
const toasts = useToasts();
@@ -148,13 +148,13 @@ export const useCasesToast = () => {
return toasts.addSuccess({
color: 'success',
iconType: 'check',
- title: toMountPoint(, { i18n, theme }),
+ title: toMountPoint(, { i18n, theme, userProfile }),
text: toMountPoint(
,
- { i18n, theme }
+ { i18n, theme, userProfile }
),
});
},
@@ -177,7 +177,7 @@ export const useCasesToast = () => {
});
},
}),
- [i18n, theme, appId, getUrlForApp, navigateToUrl, toasts]
+ [i18n, theme, userProfile, appId, getUrlForApp, navigateToUrl, toasts]
);
};
diff --git a/x-pack/plugins/cases/public/components/visualizations/actions/action_wrapper.tsx b/x-pack/plugins/cases/public/components/visualizations/actions/action_wrapper.tsx
index add06a7badb22..e5f931492dabd 100644
--- a/x-pack/plugins/cases/public/components/visualizations/actions/action_wrapper.tsx
+++ b/x-pack/plugins/cases/public/components/visualizations/actions/action_wrapper.tsx
@@ -29,7 +29,7 @@ const ActionWrapperWithContext: React.FC> = ({
casesActionContextProps,
currentAppId,
}) => {
- const { application, i18n, theme } = useKibana().services;
+ const { application, ...startServices } = useKibana().services;
const owner = getCaseOwnerByAppId(currentAppId);
const casePermissions = canUseCases(application.capabilities)(owner ? [owner] : undefined);
@@ -37,7 +37,7 @@ const ActionWrapperWithContext: React.FC> = ({
const syncAlerts = owner === SECURITY_SOLUTION_OWNER;
return (
-
+
,
- { i18n: services.core.i18n, theme: services.core.theme }
+ services.core
);
mount(targetDomElement);
diff --git a/x-pack/plugins/triggers_actions_ui/.storybook/decorator.tsx b/x-pack/plugins/triggers_actions_ui/.storybook/decorator.tsx
index 233b673353929..8947cf9f6bbe8 100644
--- a/x-pack/plugins/triggers_actions_ui/.storybook/decorator.tsx
+++ b/x-pack/plugins/triggers_actions_ui/.storybook/decorator.tsx
@@ -50,6 +50,8 @@ const notifications: NotificationsStart = {
showErrorDialog: () => {},
};
+const userProfile = { getUserProfile$: () => of(null) };
+
export const StorybookContextDecorator: FC> = (
props
) => {
@@ -75,7 +77,7 @@ export const StorybookContextDecorator: FC
-
+
{
};
export const App = ({ deps }: { deps: TriggersAndActionsUiServices }) => {
- const { dataViews, i18n, theme } = deps;
+ const { dataViews } = deps;
setDataViewsService(dataViews);
return (
-
+
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/connectors_app.tsx b/x-pack/plugins/triggers_actions_ui/public/application/connectors_app.tsx
index 8fe0d9745d1c2..f00db5879120b 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/connectors_app.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/connectors_app.tsx
@@ -73,13 +73,13 @@ export const renderApp = (deps: TriggersAndActionsUiServices) => {
};
export const App = ({ deps }: { deps: TriggersAndActionsUiServices }) => {
- const { dataViews, i18n, theme } = deps;
+ const { dataViews } = deps;
const sections: Section[] = ['connectors', 'logs'];
const sectionsRegex = sections.join('|');
setDataViewsService(dataViews);
return (
-
+
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/hooks/use_bulk_edit_response.tsx b/x-pack/plugins/triggers_actions_ui/public/application/hooks/use_bulk_edit_response.tsx
index b1d69c89094e9..c07cc9ac770d2 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/hooks/use_bulk_edit_response.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/hooks/use_bulk_edit_response.tsx
@@ -65,6 +65,7 @@ export function useBulkEditResponse(props: UseBulkEditResponseProps) {
const {
i18n: i18nStart,
theme,
+ userProfile,
notifications: { toasts },
} = useKibana().services;
@@ -124,7 +125,11 @@ export function useBulkEditResponse(props: UseBulkEditResponseProps) {
if (numberOfErrors === total) {
toasts.addDanger({
title: failureMessage(numberOfErrors, translationMap[property]),
- text: toMountPoint(renderToastErrorBody(response), { i18n: i18nStart, theme }),
+ text: toMountPoint(renderToastErrorBody(response), {
+ i18n: i18nStart,
+ theme,
+ userProfile,
+ }),
});
return;
}
@@ -132,10 +137,10 @@ export function useBulkEditResponse(props: UseBulkEditResponseProps) {
// Some failure
toasts.addWarning({
title: someSuccessMessage(numberOfSuccess, numberOfErrors, translationMap[property]),
- text: toMountPoint(renderToastErrorBody(response), { i18n: i18nStart, theme }),
+ text: toMountPoint(renderToastErrorBody(response), { i18n: i18nStart, theme, userProfile }),
});
},
- [i18nStart, theme, toasts, renderToastErrorBody]
+ [i18nStart, theme, userProfile, toasts, renderToastErrorBody]
);
return useMemo(() => {
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/hooks/use_bulk_operation_toast.tsx b/x-pack/plugins/triggers_actions_ui/public/application/hooks/use_bulk_operation_toast.tsx
index 88ad5c8f52958..8d2d8d98b1155 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/hooks/use_bulk_operation_toast.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/hooks/use_bulk_operation_toast.tsx
@@ -50,6 +50,7 @@ export const useBulkOperationToast = ({
const {
i18n,
theme,
+ userProfile,
notifications: { toasts },
} = useKibana().services;
@@ -122,7 +123,7 @@ export const useBulkOperationToast = ({
SINGLE_RULE_TITLE,
MULTIPLE_RULE_TITLE
),
- text: toMountPoint(renderToastErrorBody(errors, 'danger'), { i18n, theme }),
+ text: toMountPoint(renderToastErrorBody(errors, 'danger'), { i18n, theme, userProfile }),
});
return;
}
@@ -135,10 +136,10 @@ export const useBulkOperationToast = ({
SINGLE_RULE_TITLE,
MULTIPLE_RULE_TITLE
),
- text: toMountPoint(renderToastErrorBody(errors, 'warning'), { i18n, theme }),
+ text: toMountPoint(renderToastErrorBody(errors, 'warning'), { i18n, theme, userProfile }),
});
},
- [i18n, theme, toasts, renderToastErrorBody]
+ [i18n, theme, userProfile, toasts, renderToastErrorBody]
);
return useMemo(() => {
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/rules_app.tsx b/x-pack/plugins/triggers_actions_ui/public/application/rules_app.tsx
index 8550518edb457..2477d9d95c4b4 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/rules_app.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/rules_app.tsx
@@ -101,13 +101,13 @@ export const renderApp = (deps: TriggersAndActionsUiServices) => {
};
export const App = ({ deps }: { deps: TriggersAndActionsUiServices }) => {
- const { dataViews, i18n, theme } = deps;
+ const { dataViews } = deps;
const sections: Section[] = ['rules', 'logs'];
const sectionsRegex = sections.join('|');
setDataViewsService(dataViews);
return (
-
+
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connectors_selection.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connectors_selection.test.tsx
index afb483b70f007..5fdd96611d718 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connectors_selection.test.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connectors_selection.test.tsx
@@ -94,7 +94,7 @@ describe('connectors_selection', () => {
it('renders a selector', () => {
const wrapper = mountWithIntl(
-
+
{
it('renders the title of the connector', () => {
render(
-
+
{
const renderModalInspectQuery = () => {
const theme = { theme$: of({ darkMode: false }) };
+ const userProfile = userProfileServiceMock.createStart();
return render(, {
wrapper: ({ children }) => (
- {children}
+
+ {children}
+
),
});
};
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/rule_details.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/rule_details.tsx
index da1bd753af9b2..767b7cf70b9bb 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/rule_details.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/rule_details.tsx
@@ -108,6 +108,7 @@ export const RuleDetails: React.FunctionComponent = ({
http,
i18n: i18nStart,
theme,
+ userProfile,
notifications: { toasts },
} = useKibana().services;
@@ -223,7 +224,7 @@ export const RuleDetails: React.FunctionComponent = ({
)}
>,
- { i18n: i18nStart, theme }
+ { i18n: i18nStart, theme, userProfile }
),
});
}
@@ -232,6 +233,7 @@ export const RuleDetails: React.FunctionComponent = ({
}, [
i18nStart,
theme,
+ userProfile,
rule.schedule.interval,
config.minimumScheduleInterval,
toasts,
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_add.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_add.tsx
index 99a9e0761eb9e..419f4c7696379 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_add.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_add.tsx
@@ -132,9 +132,8 @@ const RuleAdd = <
http,
notifications: { toasts },
application: { capabilities },
- i18n: i18nStart,
- theme,
isServerless,
+ ...startServices
} = useKibana().services;
const canShowActions = hasShowActionsCapability(capabilities);
@@ -284,7 +283,7 @@ const RuleAdd = <
...(message.details && {
text: toMountPoint(
{message.details},
- { i18n: i18nStart, theme }
+ startServices
),
}),
});
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_edit.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_edit.tsx
index 3400f8c5270f6..5d1337063948d 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_edit.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_edit.tsx
@@ -140,9 +140,8 @@ export const RuleEdit = <
const {
http,
notifications: { toasts },
- i18n: i18nStart,
- theme,
isServerless,
+ ...startServices
} = useKibana().services;
const setRule = (value: Rule) => {
@@ -238,7 +237,7 @@ export const RuleEdit = <
...(message.details && {
text: toMountPoint(
{message.details},
- { i18n: i18nStart, theme }
+ startServices
),
}),
});
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_form_route.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_form_route.tsx
index f0ecb56d0bc87..bfa4bccd49405 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_form_route.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_form_route.tsx
@@ -17,8 +17,6 @@ import { getCurrentDocTitle } from '../../lib/doc_title';
export const RuleFormRoute = () => {
const {
http,
- i18n,
- theme,
application,
notifications,
charts,
@@ -31,6 +29,7 @@ export const RuleFormRoute = () => {
actionTypeRegistry,
chrome,
setBreadcrumbs,
+ ...startServices
} = useKibana().services;
const location = useLocation<{ returnApp?: string; returnPath?: string }>();
@@ -64,8 +63,6 @@ export const RuleFormRoute = () => {
{
docLinks,
ruleTypeRegistry,
actionTypeRegistry,
+ ...startServices,
}}
onCancel={() => {
if (returnApp && returnPath) {
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/rules_list/components/rule_status_dropdown.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/rules_list/components/rule_status_dropdown.tsx
index 6ad7d525c3507..27f05487fb6e6 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/sections/rules_list/components/rule_status_dropdown.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/rules_list/components/rule_status_dropdown.tsx
@@ -63,6 +63,7 @@ export const RuleStatusDropdown: React.FunctionComponent = ({
notifications: { toasts },
i18n: i18nStart,
theme,
+ userProfile,
} = useKibana().services;
const [isUpdating, setIsUpdating] = useState(false);
@@ -86,12 +87,12 @@ export const RuleStatusDropdown: React.FunctionComponent = ({
...(message.details && {
text: toMountPoint(
{message.details},
- { i18n: i18nStart, theme }
+ { i18n: i18nStart, theme, userProfile }
),
}),
});
throw new Error();
- }, [i18nStart, theme, enableRule, toasts]);
+ }, [i18nStart, theme, userProfile, enableRule, toasts]);
const onEnable = useCallback(async () => {
setIsUpdating(true);
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/rules_list/components/rules_list.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/rules_list/components/rules_list.tsx
index d1d1ce4fe6a3b..b827307cecdf6 100644
--- a/x-pack/plugins/triggers_actions_ui/public/application/sections/rules_list/components/rules_list.tsx
+++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/rules_list/components/rules_list.tsx
@@ -196,8 +196,7 @@ export const RulesList = ({
kibanaFeatures,
notifications: { toasts },
ruleTypeRegistry,
- i18n: i18nStart,
- theme,
+ ...startServices
} = kibanaServices;
const canExecuteActions = hasExecuteActionsCapability(capabilities);
@@ -715,7 +714,7 @@ export const RulesList = ({
title: parsedError.summary,
text: toMountPoint(
{parsedError.details},
- { theme, i18n: i18nStart }
+ startServices
),
});
} else {
diff --git a/x-pack/plugins/triggers_actions_ui/tsconfig.json b/x-pack/plugins/triggers_actions_ui/tsconfig.json
index 7b947f560db85..7004ad1b1b08c 100644
--- a/x-pack/plugins/triggers_actions_ui/tsconfig.json
+++ b/x-pack/plugins/triggers_actions_ui/tsconfig.json
@@ -73,7 +73,8 @@
"@kbn/observability-alerting-rule-utils",
"@kbn/core-application-browser",
"@kbn/cloud-plugin",
- "@kbn/response-ops-rule-form"
+ "@kbn/response-ops-rule-form",
+ "@kbn/core-user-profile-browser-mocks"
],
"exclude": ["target/**/*"]
}