No Preview

Sorry, but you either have no stories or none are selected somehow.

If the problem persists, check the browser console, or the terminal you've run Storybook from.

The component failed to render properly, likely due to a configuration issue in Storybook. Here are some common causes and how you can address them:

  1. Missing Context/Providers: You can use decorators to supply specific contexts or providers, which are sometimes necessary for components to render correctly. For detailed instructions on using decorators, please visit the Decorators documentation.
  2. Misconfigured Webpack or Vite: Verify that Storybook picks up all necessary settings for loaders, plugins, and other relevant parameters. You can find step-by-step guides for configuring Webpack or Vite with Storybook.
  3. Missing Environment Variables: Your Storybook may require specific environment variables to function as intended. You can set up custom environment variables as outlined in the Environment Variables documentation.

This is a pre-release version and is not production ready. For new and ongoing projects, please refer to the latest Design System version.

A switch has the markup of a custom <input type="checkbox"/> but uses the .form-switch class to render a toggle switch.

Consider using role="switch" to more accurately convey the nature of the control to assistive technologies that support this role. In older assistive technologies, it will simply be announced as a regular checkbox as a fallback. Switches also support the disabled attribute.

<div class="form-check form-switch"> <input type="checkbox" role="switch" id="7fb639f8-86f6-4937-999c-4ee15f81643b--default" class="form-check-input" /> <label class="form-check-label" for="7fb639f8-86f6-4937-999c-4ee15f81643b--default" >Notifications</label > </div>
NameDescriptionDefaultControl
General
Label Position
The position of the component label.
string
-
Label
Describes the content/topic of the component.
string
-
Hidden Label
Renders the component with or without a visible label.
boolean
-
States
Checked
When set to true, places the component in the checked state.
boolean
-
Disabled
When set to true, disables the component's functionality and places it in a disabled state.
boolean
-
Validation
Defines the validation state of the switch and controls the display of the corresponding return message.
string
-

Make sure the @swisspost/design-system-styles package is already present in your project or follow the installation guidelines.

To import all Design System styles:

@use '@swisspost/design-system-styles/post-compact.scss';

To import only the styles required for this component:

@use '@swisspost/design-system-styles/basics.scss'; @use '@swisspost/design-system-styles/components/switch.scss'; // required if you use validation feedbacks @use '@swisspost/design-system-styles/components/validation.scss';

The following examples show the different characteristics of the component. These can differ in the type of visualization, the HTML structure, as well as when, how and why they are displayed.

Long labels can be used seamlessly and are automatically wrapped at the end of the line. You can also include inline elements into the label, such as <a>, <strong>, etc.
However, make sure to always place multiline labels after the checkbox.