Environment Variables

Display environment variables with masking and copy functionality.

The EnvironmentVariables component displays environment variables with value masking, visibility toggle, and copy functionality.

See scripts/environment-variables.tsx for this example.

Installation

npx ai-elements@latest add environment-variables

Features

  • Value masking by default
  • Toggle visibility switch
  • Copy individual values
  • Export format support (export KEY="value")
  • Required badge indicator

Props

<EnvironmentVariables />

PropTypeDefaultDescription
showValuesboolean-Controlled visibility state.
defaultShowValuesbooleanfalseDefault visibility state.
onShowValuesChange(show: boolean) => void-Callback when visibility changes.
...propsReact.HTMLAttributes<HTMLDivElement>-Spread to the container div.

<EnvironmentVariablesHeader />

PropTypeDefaultDescription
...propsReact.HTMLAttributes<HTMLDivElement>-Spread to the header div.

<EnvironmentVariablesTitle />

PropTypeDefaultDescription
childrenReact.ReactNode-Custom title text.
...propsReact.HTMLAttributes<HTMLHeadingElement>-Spread to the h3 element.

<EnvironmentVariablesToggle />

PropTypeDefaultDescription
...propsReact.ComponentProps<typeof Switch>-Spread to the Switch component.

<EnvironmentVariablesContent />

PropTypeDefaultDescription
...propsReact.HTMLAttributes<HTMLDivElement>-Spread to the content div.

<EnvironmentVariable />

PropTypeDefaultDescription
namestringRequiredVariable name.
valuestringRequiredVariable value.
...propsReact.HTMLAttributes<HTMLDivElement>-Spread to the row div.

<EnvironmentVariableGroup />

PropTypeDefaultDescription
...propsReact.HTMLAttributes<HTMLDivElement>-Spread to the group div.

<EnvironmentVariableName />

PropTypeDefaultDescription
childrenReact.ReactNode-Custom name content. Defaults to the name from context.
...propsReact.HTMLAttributes<HTMLSpanElement>-Spread to the span element.

<EnvironmentVariableValue />

PropTypeDefaultDescription
childrenReact.ReactNode-Custom value content. Defaults to the masked/unmasked value from context.
...propsReact.HTMLAttributes<HTMLSpanElement>-Spread to the span element.

<EnvironmentVariableCopyButton />

PropTypeDefaultDescription
copyFormatunknown-Format to copy.
onCopy() => void-Callback after successful copy.
onError(error: Error) => void-Callback if copying fails.
timeoutnumber2000Duration to show copied state (ms).
...propsReact.ComponentProps<typeof Button>-Spread to the Button component.

<EnvironmentVariableRequired />

PropTypeDefaultDescription
childrenReact.ReactNode-Custom badge text.
...propsReact.ComponentProps<typeof Badge>-Spread to the Badge component.