diff --git a/backend/src/ee/services/license/license-fns.ts b/backend/src/ee/services/license/license-fns.ts
index 70c299564..872f38fec 100644
--- a/backend/src/ee/services/license/license-fns.ts
+++ b/backend/src/ee/services/license/license-fns.ts
@@ -17,11 +17,11 @@ export const getDefaultOnPremFeatures = (): TFeatureSet => ({
environmentsUsed: 0,
identityLimit: null,
identitiesUsed: 0,
- dynamicSecret: false,
+ dynamicSecret: true,
secretVersioning: true,
pitRecovery: false,
ipAllowlisting: false,
- rbac: false,
+ rbac: true,
customRateLimits: false,
customAlerts: false,
auditLogs: false,
diff --git a/frontend/src/context/ProjectPermissionContext/types.ts b/frontend/src/context/ProjectPermissionContext/types.ts
index 818a5d0e6..8f10d5f21 100644
--- a/frontend/src/context/ProjectPermissionContext/types.ts
+++ b/frontend/src/context/ProjectPermissionContext/types.ts
@@ -34,12 +34,12 @@ export enum PermissionConditionOperators {
}
export const formatedConditionsOperatorNames: { [K in PermissionConditionOperators]: string } = {
- [PermissionConditionOperators.$EQ]: "equal",
- [PermissionConditionOperators.$IN]: "containing",
+ [PermissionConditionOperators.$EQ]: "equal to",
+ [PermissionConditionOperators.$IN]: "contains",
[PermissionConditionOperators.$ALL]: "contains all",
- [PermissionConditionOperators.$NEQ]: "not equal",
- [PermissionConditionOperators.$GLOB]: "glob matching",
- [PermissionConditionOperators.$REGEX]: "regex"
+ [PermissionConditionOperators.$NEQ]: "not equal to",
+ [PermissionConditionOperators.$GLOB]: "matches glob pattern",
+ [PermissionConditionOperators.$REGEX]: "matches regex pattern"
};
export type TPermissionConditionOperators = {
diff --git a/frontend/src/reactQuery.tsx b/frontend/src/reactQuery.tsx
index 0ce8325b1..7b9735c9b 100644
--- a/frontend/src/reactQuery.tsx
+++ b/frontend/src/reactQuery.tsx
@@ -94,11 +94,13 @@ export const queryClient = new QueryClient({
>
{el.inverted ? "Cannot" : "Can"}{" "}
- {el.action.toString()}{" "}
- {el.subject.toString()} {hasConditions && "with conditions"}
+
+ {el.action.toString().replaceAll(",", ", ")}
+ {" "}
+ {el.subject.toString()} {hasConditions && "with conditions:"}
{hasConditions && (
-
+
{Object.keys(el.conditions || {}).flatMap((field, fieldIndex) => {
const operators = (
el.conditions as Record<
@@ -111,38 +113,45 @@ export const queryClient = new QueryClient({
const formattedFieldName = camelCaseToSpaces(field).toLowerCase();
if (typeof operators === "string") {
return (
-
- {formattedFieldName} equal{" "}
- {operators}
-
+
+ {formattedFieldName}
+ {" "}
+ equal to{" "}
+ {operators}
+
);
}
return Object.keys(operators).map((operator, operatorIndex) => (
-
- {formattedFieldName}{" "}
- {
- formatedConditionsOperatorNames[
- operator as PermissionConditionOperators
- ]
- }{" "}
-
+
+ {formattedFieldName}
+ {" "}
+
+ {
+ formatedConditionsOperatorNames[
+ operator as PermissionConditionOperators
+ ]
+ }
+ {" "}
+
{operators[
operator as PermissionConditionOperators
].toString()}
-
+
));
})}
-
+
)}
);
diff --git a/frontend/src/views/SecretMainPage/components/CreateSecretForm/CreateSecretForm.tsx b/frontend/src/views/SecretMainPage/components/CreateSecretForm/CreateSecretForm.tsx
index 06abc08e6..09a905b2d 100644
--- a/frontend/src/views/SecretMainPage/components/CreateSecretForm/CreateSecretForm.tsx
+++ b/frontend/src/views/SecretMainPage/components/CreateSecretForm/CreateSecretForm.tsx
@@ -154,7 +154,7 @@ export const CreateSecretForm = ({
isMulti
name="tagIds"
isDisabled={!canReadTags}
- isLoading={isTagsLoading}
+ isLoading={isTagsLoading && canReadTags}
options={projectTags?.map((el) => ({ label: el.slug, value: el.id }))}
value={field.value}
onChange={field.onChange}
diff --git a/frontend/src/views/SecretOverviewPage/SecretOverviewPage.tsx b/frontend/src/views/SecretOverviewPage/SecretOverviewPage.tsx
index ec5b064c1..be9ee77ad 100644
--- a/frontend/src/views/SecretOverviewPage/SecretOverviewPage.tsx
+++ b/frontend/src/views/SecretOverviewPage/SecretOverviewPage.tsx
@@ -867,7 +867,7 @@ export const SecretOverviewPage = () => {
setScrollOffset(e.currentTarget.scrollLeft)}
- className="thin-scrollbar"
+ className="thin-scrollbar rounded-b-none"
>
diff --git a/frontend/src/views/SecretOverviewPage/components/CreateSecretForm/CreateSecretForm.tsx b/frontend/src/views/SecretOverviewPage/components/CreateSecretForm/CreateSecretForm.tsx
index 0fd953a1f..91a6e766f 100644
--- a/frontend/src/views/SecretOverviewPage/components/CreateSecretForm/CreateSecretForm.tsx
+++ b/frontend/src/views/SecretOverviewPage/components/CreateSecretForm/CreateSecretForm.tsx
@@ -255,7 +255,7 @@ export const CreateSecretForm = ({ secretPath = "/", getSecretByKey, onClose }:
isMulti
name="tagIds"
isDisabled={!canReadTags}
- isLoading={isTagsLoading}
+ isLoading={isTagsLoading && canReadTags}
options={projectTags?.map((el) => ({ label: el.slug, value: el.id }))}
value={field.value}
onChange={field.onChange}