diff --git a/.changeset/shaggy-weeks-grab.md b/.changeset/shaggy-weeks-grab.md new file mode 100644 index 0000000000..ef640463f0 --- /dev/null +++ b/.changeset/shaggy-weeks-grab.md @@ -0,0 +1,5 @@ +--- +'@swisspost/design-system-documentation': minor +--- + +Added documentation for the CSS-only stepper and deprecated the stepper based on ng-bootstrap progress bar. diff --git a/packages/documentation/cypress/snapshots/components/stepper.snapshot.ts b/packages/documentation/cypress/snapshots/components/stepper.snapshot.ts new file mode 100644 index 0000000000..6392e9affa --- /dev/null +++ b/packages/documentation/cypress/snapshots/components/stepper.snapshot.ts @@ -0,0 +1,7 @@ +describe('Stepper', () => { + it('default', () => { + cy.visit('/iframe.html?id=snapshots--stepper'); + cy.get('.stepper', { timeout: 30000 }).should('be.visible'); + cy.percySnapshot('Steppers', { widths: [320, 1440] }); + }); +}); diff --git a/packages/documentation/src/stories/components/stepper/stepper-component.sample.ts b/packages/documentation/src/stories/components/stepper/stepper-component.sample.ts deleted file mode 100644 index 5df6b5129d..0000000000 --- a/packages/documentation/src/stories/components/stepper/stepper-component.sample.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector: 'post-stepper', - templateUrl: 'template.html', -}) -export class StepperDemoComponent { - steps = ['Sender', 'Product', 'Other details', 'Order summary']; - currentIndex = 2; - - isCurrent(step: string): boolean { - return step === this.steps[this.currentIndex]; - } - - getPathTo(step: string): string { - return step.toLowerCase().split(' ').join('-'); - } -} diff --git a/packages/documentation/src/stories/components/stepper/stepper-template.sample.html b/packages/documentation/src/stories/components/stepper/stepper-template.sample.html deleted file mode 100644 index b91caf9142..0000000000 --- a/packages/documentation/src/stories/components/stepper/stepper-template.sample.html +++ /dev/null @@ -1,23 +0,0 @@ -
-

Order progress, step 3 of 4

- - -
    -
  1. - - Complete: - {{ step }} - - {{ step }} -
  2. -
-
diff --git a/packages/documentation/src/stories/components/stepper/stepper.docs.mdx b/packages/documentation/src/stories/components/stepper/stepper.docs.mdx index 39be7982fa..bd86917120 100644 --- a/packages/documentation/src/stories/components/stepper/stepper.docs.mdx +++ b/packages/documentation/src/stories/components/stepper/stepper.docs.mdx @@ -1,56 +1,54 @@ -import { Meta, Source } from '@storybook/blocks'; -import { PostTabHeader, PostTabPanel, PostTabs } from '@swisspost/design-system-components-react'; -import StylesPackageImport from '@/shared/styles-package-import.mdx'; +import { Canvas, Controls, Meta } from '@storybook/blocks'; import PostComponentDemoLink from '@/shared/post-component-demo-link.mdx'; -import NgbComponentImport from '@/shared/nb-bootstrap/ngb-component-import.mdx'; -import * as stepperStories from './stepper.stories'; -import stepperTemplate from './stepper-template.sample.html?raw'; -import stepperComponent from './stepper-component.sample?raw'; +import StylesPackageImport from '@/shared/styles-package-import.mdx'; +import * as StepperStories from './stepper.stories'; - +
# Stepper
-

Conveys progress through numbered steps.

+

The stepped progression component provides an interactive visual overview of a process. It shows at a glance the amount of steps a user is required to go through, and serves as a guide for each step, indicating its status.

-
-

The stepper uses ng-bootstrap's progressbar component.

+
+

The stepper previously used ng-bootstrap's progressbar component, this has been deprecated in favor of the CSS-only stepper documented below.

+
- + +
+ +
+ + + +## Examples + +### Navigational Stepper + +You can use a stepper to allow users to navigate to specific steps. +To do so, use `a` elements for the `.stepper-link` of the steps you want to be navigable, and use `span` for the steps you want not to be navigable. +Then, wrap the stepper inside a `