diff --git a/changes/issue-5315-consistent-empty-states b/changes/issue-5315-consistent-empty-states
new file mode 100644
index 0000000000..f8c4cead48
--- /dev/null
+++ b/changes/issue-5315-consistent-empty-states
@@ -0,0 +1 @@
+* Fix policies empty state to match other empty states, fix link styling
\ No newline at end of file
diff --git a/cypress/integration/all/app/policiesflow.spec.ts b/cypress/integration/all/app/policiesflow.spec.ts
index 6d4fa456fe..ad17a5b27b 100644
--- a/cypress/integration/all/app/policiesflow.spec.ts
+++ b/cypress/integration/all/app/policiesflow.spec.ts
@@ -15,9 +15,11 @@ describe("Policies flow (empty)", () => {
cy.visit("/policies/manage");
});
it("creates a custom policy", () => {
- cy.getAttached(".manage-policies-page__header-wrap").within(() => {
- cy.findByText(/add a policy/i).click();
- });
+ cy.getAttached(".policies-list-wrapper__action-button-container").within(
+ () => {
+ cy.findByText(/add a policy/i).click();
+ }
+ );
cy.findByText(/create your own policy/i).click();
cy.getAttached(".ace_scroller")
.click({ force: true })
diff --git a/cypress/integration/premium/admin.spec.ts b/cypress/integration/premium/admin.spec.ts
index 3e513174d0..ce12ab873b 100644
--- a/cypress/integration/premium/admin.spec.ts
+++ b/cypress/integration/premium/admin.spec.ts
@@ -537,7 +537,7 @@ describe("Premium tier - Global Admin user", () => {
describe("Manage policies page", () => {
beforeEach(() => cy.visit("/policies/manage"));
it("allows global admin to add a new policy", () => {
- cy.getAttached(".button-wrap")
+ cy.getAttached(".policies-list-wrapper__action-button-container")
.findByRole("button", { name: /add a policy/i })
.click();
// Add a default policy
diff --git a/cypress/integration/premium/maintainer.spec.ts b/cypress/integration/premium/maintainer.spec.ts
index d801a75009..572add8790 100644
--- a/cypress/integration/premium/maintainer.spec.ts
+++ b/cypress/integration/premium/maintainer.spec.ts
@@ -230,8 +230,8 @@ describe("Premium tier - Maintainer user", () => {
cy.findByText(/manage hosts/i).should("not.exist");
});
it("allows global maintainer to add a new policy", () => {
- cy.getAttached(".button-wrap")
- .findByRole("button", { name: /add a polic/i })
+ cy.getAttached(".policies-list-wrapper__action-button-container")
+ .findByRole("button", { name: /add a policy/i })
.click();
// Add a default policy
cy.findByText(/gatekeeper enabled/i).click();
diff --git a/frontend/pages/policies/ManagePoliciesPage/ManagePoliciesPage.tsx b/frontend/pages/policies/ManagePoliciesPage/ManagePoliciesPage.tsx
index 4e6509fd73..f1959eefa7 100644
--- a/frontend/pages/policies/ManagePoliciesPage/ManagePoliciesPage.tsx
+++ b/frontend/pages/policies/ManagePoliciesPage/ManagePoliciesPage.tsx
@@ -328,6 +328,9 @@ const ManagePolicyPage = ({
}
}, [availableTeams]);
+ const showCtaButtons =
+ (!!teamId && teamPolicies) || (!teamId && globalPolicies);
+
return !availableTeams ? (
- Create a new query, or go to GitHub to{" "}
-
- import Fleet’s standard query library
+ Create a new query, or{" "}
+
+ import Fleet’s standard query library{" "}
+
- .