fix(secrets-permissions): UI improvements

This commit is contained in:
carlosmonastyrski
2025-04-24 08:10:10 -03:00
parent 95489e1b0a
commit 350272aa57
4 changed files with 10 additions and 7 deletions
@@ -93,6 +93,7 @@ export const SecretInput = forwardRef<HTMLTextAreaElement, Props>(
onFocus={(evt) => { onFocus={(evt) => {
onFocus?.(evt); onFocus?.(evt);
setIsSecretFocused.on(); setIsSecretFocused.on();
evt.currentTarget.select();
}} }}
disabled={isDisabled} disabled={isDisabled}
spellCheck={false} spellCheck={false}
@@ -179,7 +179,7 @@ export const SecretEditRow = ({
/> />
{secretValueHidden && ( {secretValueHidden && (
<Tooltip <Tooltip
content={`You do not have permission to read the value of this secret.${canEditSecretValue ? " But you can edit this secret" : ""}`} content={`You do not have access to view the current value${canEditSecretValue ? ", but you can set a new one" : "."}`}
> >
<FontAwesomeIcon className="pl-1" icon={faEyeSlash} /> <FontAwesomeIcon className="pl-1" icon={faEyeSlash} />
</Tooltip> </Tooltip>
@@ -190,7 +190,7 @@ export const SecretEditRow = ({
<div className="flex flex-grow items-center gap-2" onClick={handleSecretBlurClick}> <div className="flex flex-grow items-center gap-2" onClick={handleSecretBlurClick}>
<span className="flex flex-row items-center"> <span className="flex flex-row items-center">
<div style={{ fontFamily: "monospace" }} className="h-full w-full"> <div style={{ fontFamily: "monospace" }} className="h-full w-full">
********************* ******
</div> </div>
</span> </span>
</div> </div>
@@ -87,7 +87,7 @@ export const SecretOverviewTableRow = ({
); );
if (secret?.secretValueHidden) { if (secret?.secretValueHidden) {
return canEditSecretValue ? "<hidden-by-infisical>" : ""; return canEditSecretValue ? "******" : "";
} }
return secret?.valueOverride || secret?.value || importedSecret?.secret?.value || ""; return secret?.valueOverride || secret?.value || importedSecret?.secret?.value || "";
}; };
@@ -56,6 +56,8 @@ import {
TFormSchema TFormSchema
} from "./SecretListView.utils"; } from "./SecretListView.utils";
const hiddenValue = "******";
type Props = { type Props = {
secret: SecretV3RawSanitized; secret: SecretV3RawSanitized;
onSaveSecret: ( onSaveSecret: (
@@ -107,7 +109,7 @@ export const SecretItem = memo(
const getDefaultValue = () => { const getDefaultValue = () => {
if (secret.secretValueHidden) { if (secret.secretValueHidden) {
return canEditSecretValue ? "<hidden-by-infisical>" : ""; return canEditSecretValue ? hiddenValue : "";
} }
return secret.valueOverride || secret.value || ""; return secret.valueOverride || secret.value || "";
}; };
@@ -312,7 +314,7 @@ export const SecretItem = memo(
> >
{secretValueHidden && ( {secretValueHidden && (
<Tooltip <Tooltip
content={`You do not have permission to read the value of this secret.${canEditSecretValue ? " But you can edit this secret" : ""}`} content={`You do not have access to view the current value${canEditSecretValue ? ", but you can set a new one" : "."}`}
> >
<FontAwesomeIcon className="pr-2" icon={faEyeSlash} /> <FontAwesomeIcon className="pr-2" icon={faEyeSlash} />
</Tooltip> </Tooltip>
@@ -337,7 +339,7 @@ export const SecretItem = memo(
<div className="flex flex-grow items-center gap-2" onClick={handleSecretBlurClick}> <div className="flex flex-grow items-center gap-2" onClick={handleSecretBlurClick}>
<span className="flex flex-row items-center"> <span className="flex flex-row items-center">
<div style={{ fontFamily: "monospace" }} className="h-full w-full"> <div style={{ fontFamily: "monospace" }} className="h-full w-full">
********************* {hiddenValue}
</div> </div>
</span> </span>
</div> </div>
@@ -354,7 +356,7 @@ export const SecretItem = memo(
environment={environment} environment={environment}
secretPath={secretPath} secretPath={secretPath}
{...field} {...field}
defaultValue={secretValueHidden ? "<hidden-by-infisical>" : undefined} defaultValue={secretValueHidden ? hiddenValue : undefined}
containerClassName="py-1.5 rounded-md transition-all" containerClassName="py-1.5 rounded-md transition-all"
/> />
)} )}