Skip to main content English Español Light Dark System

Step Group

<gstock-step-group> | GstockStepGroup

Examples

Color

Use el atributo color para cambiar el color de cada paso en el grupo de pasos.

Paso 1 Paso 2 Paso 3 Paso 4 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4.
Paso 1 Paso 2 Paso 3 Paso 4 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4.
<gstock-step-group color="primary">
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3">Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
</gstock-step-group>

<br>

<gstock-step-group color="secondary">
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3">Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
</gstock-step-group>

Size

Use el atributo size para cambiar el tamaño de cada paso en el grupo de pasos.

Use size="small" para mostrar pasos de tamaño pequeño.

Paso 1 Paso 2 Paso 3 Paso 4 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4.
<gstock-step-group size="small">
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3">Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
</gstock-step-group>

Use size="medium" para mostrar pasos de tamaño mediano. Este es el tamaño predeterminado.

Paso 1 Paso 2 Paso 3 Paso 4 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4.
<gstock-step-group size="medium">
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3">Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
</gstock-step-group>

Use size="large" para mostrar pasos de tamaño grande.

Paso 1 Paso 2 Paso 3 Paso 4 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4.
<gstock-step-group size="large">
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3">Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
</gstock-step-group>

Placement

Use el atributo placement para mostrar el grupo de pasos de forma horizontal o vertical. Los valores soportados son top, bottom, start o end.

Use placement="top" para posicionar los pasos encima del contenido. Esta es la posición predeterminada.

Paso 1 Paso 2 Paso 3 Paso 4 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4.
<gstock-step-group placement="top">
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3">Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
</gstock-step-group>

Use placement="bottom" para posicionar los pasos debajo del contenido.

Paso 1 Paso 2 Paso 3 Paso 4 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4.
<gstock-step-group placement="bottom">
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3">Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
</gstock-step-group>

Use placement="start" para posicionar los pasos al inicio de la línea.

Paso 1 Paso 2 Paso 3 Paso 4 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4.
<gstock-step-group placement="start">
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3">Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
</gstock-step-group>

Use placement="end" para posicionar los pasos al final de la línea.

Paso 1 Paso 2 Paso 3 Paso 4 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4.
<gstock-step-group placement="end">
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3">Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
</gstock-step-group>

Scroll controls

Use el atributo scroll-controls para mostrar botones de navegación en las posiciones de inicio y final cuando hay más pasos de los que el espacio permite. La navegación será desplazable.

Paso 1 Paso 2 Paso 3 Paso 4 Paso 5 Paso 6 Paso 7 Paso 8 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4. Este es el contenido del panel del paso 5. Este es el contenido del panel del paso 6. Este es el contenido del panel del paso 7. Este es el contenido del panel del paso 8.
<gstock-step-group scroll-controls>
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3">Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>
  <gstock-step slot="nav" panel="paso-5">Paso 5</gstock-step>
  <gstock-step slot="nav" panel="paso-6">Paso 6</gstock-step>
  <gstock-step slot="nav" panel="paso-7">Paso 7</gstock-step>
  <gstock-step slot="nav" panel="paso-8">Paso 8</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
  <gstock-step-panel name="paso-5">Este es el contenido del panel del paso 5.</gstock-step-panel>
  <gstock-step-panel name="paso-6">Este es el contenido del panel del paso 6.</gstock-step-panel>
  <gstock-step-panel name="paso-7">Este es el contenido del panel del paso 7.</gstock-step-panel>
  <gstock-step-panel name="paso-8">Este es el contenido del panel del paso 8.</gstock-step-panel>
</gstock-step-group>

<style>
  gstock-step-group::part(base) {
    max-width: 500px;
  }
</style>

Use los métodos next y previous para navegar programáticamente deslizándose a través de los pasos.

Paso 1 Paso 2 Paso 3 Paso 4 Este es el contenido del panel del paso 1. Este es el contenido del panel del paso 2. Este es el contenido del panel del paso 3. Este es el contenido del panel del paso 4.
<gstock-step-group>
  <gstock-step slot="nav" panel="paso-1" active>Paso 1</gstock-step>
  <gstock-step slot="nav" panel="paso-2">Paso 2</gstock-step>
  <gstock-step slot="nav" panel="paso-3" disabled>Paso 3</gstock-step>
  <gstock-step slot="nav" panel="paso-4">Paso 4</gstock-step>

  <gstock-step-panel name="paso-1">Este es el contenido del panel del paso 1.</gstock-step-panel>
  <gstock-step-panel name="paso-2">Este es el contenido del panel del paso 2.</gstock-step-panel>
  <gstock-step-panel name="paso-3">Este es el contenido del panel del paso 3.</gstock-step-panel>
  <gstock-step-panel name="paso-4">Este es el contenido del panel del paso 4.</gstock-step-panel>
</gstock-step-group>

<gstock-icon-button icon="chevron-left" variant="outlined" size="small"></gstock-icon-button>
<gstock-icon-button icon="chevron-right" variant="outlined" size="small"></gstock-icon-button>
<div class="paso-actual"></div>

<script type="module">
  
  const stepGroup = document.querySelector('gstock-step-group');
  const previousButton = document.querySelector('gstock-icon-button[icon=chevron-left]');
  const nextButton = document.querySelector('gstock-icon-button[icon=chevron-right]');
  const currentStep = document.querySelector('.paso-actual');

  function changeNavigationStatus(stepGroupEl) {
    const activeStep = stepGroupEl.getActiveStep();
    currentStep.innerHTML = `<span>Paso Actual: ${activeStep?.panel}<span>`;

    if (activeStep.panel === "paso-1") {
      previousButton.disabled = true;
      nextButton.disabled = false;
    }

    if (activeStep.panel === "paso-4") {
      previousButton.disabled = false;
      nextButton.disabled = true;
    }

    if (activeStep.panel !== "paso-1" && activeStep.panel !== "paso-4") {
      previousButton.disabled = false;
      nextButton.disabled = false;
    }
  }

  const whenAllDefined = Promise.all([
    customElements.whenDefined('gstock-step'),
    customElements.whenDefined('gstock-step-group'),
    customElements.whenDefined('gstock-step-panel'),
  ]).then(() => {
    changeNavigationStatus(stepGroup);

    stepGroup.addEventListener('gstock-step-show-event', (event) => {
      changeNavigationStatus(event.target);
    });

    previousButton.addEventListener('click', () => {
      stepGroup.previous();
    });

    nextButton.addEventListener('click', () => {
      stepGroup.next();
    });
  });
</script>