diff --git a/x-pack/plugins/security_solution/public/detections/components/rules/pre_packaged_rules/load_empty_prompt.test.tsx b/x-pack/plugins/security_solution/public/detections/components/rules/pre_packaged_rules/load_empty_prompt.test.tsx
index 9e482b228018e..cbdfe5b246aff 100644
--- a/x-pack/plugins/security_solution/public/detections/components/rules/pre_packaged_rules/load_empty_prompt.test.tsx
+++ b/x-pack/plugins/security_solution/public/detections/components/rules/pre_packaged_rules/load_empty_prompt.test.tsx
@@ -127,4 +127,26 @@ describe('LoadPrebuiltRulesAndTemplatesButton', () => {
);
});
});
+
+ it('renders disabled button if loading is true', async () => {
+ (getPrePackagedRulesStatus as jest.Mock).mockResolvedValue({
+ rules_not_installed: 0,
+ rules_installed: 0,
+ rules_not_updated: 0,
+ timelines_not_installed: 3,
+ timelines_installed: 0,
+ timelines_not_updated: 0,
+ });
+
+ const wrapper: ReactWrapper = mount(
+
+ );
+ await waitFor(() => {
+ wrapper.update();
+
+ expect(
+ wrapper.find('[data-test-subj="load-prebuilt-rules"] button').props().disabled
+ ).toEqual(true);
+ });
+ });
});
diff --git a/x-pack/plugins/security_solution/public/detections/components/rules/pre_packaged_rules/load_empty_prompt.tsx b/x-pack/plugins/security_solution/public/detections/components/rules/pre_packaged_rules/load_empty_prompt.tsx
index 9a011da9aff05..56875bcc4f88c 100644
--- a/x-pack/plugins/security_solution/public/detections/components/rules/pre_packaged_rules/load_empty_prompt.tsx
+++ b/x-pack/plugins/security_solution/public/detections/components/rules/pre_packaged_rules/load_empty_prompt.tsx
@@ -64,12 +64,12 @@ const PrePackagedRulesPromptComponent: React.FC = (
const loadPrebuiltRulesAndTemplatesButton = useMemo(
() =>
getLoadPrebuiltRulesAndTemplatesButton({
- isDisabled: !userHasPermissions,
+ isDisabled: !userHasPermissions || loading,
onClick: handlePreBuiltCreation,
fill: true,
'data-test-subj': 'load-prebuilt-rules',
}),
- [getLoadPrebuiltRulesAndTemplatesButton, handlePreBuiltCreation, userHasPermissions]
+ [getLoadPrebuiltRulesAndTemplatesButton, handlePreBuiltCreation, userHasPermissions, loading]
);
return (