170 lines
9.1 KiB
Vue
170 lines
9.1 KiB
Vue
<template>
|
|
<DocSectionText v-bind="$attrs">
|
|
<p>Stepper consists of a combination of <i>StepList</i>, <i>Step</i>, <i>StepPanels</i> and <i>StepPanel</i> components. The <i>value</i> property is essential for associating Step and StepPanel with each other.</p>
|
|
</DocSectionText>
|
|
<div class="card flex justify-center">
|
|
<Stepper value="1" class="basis-[50rem]">
|
|
<StepList>
|
|
<Step value="1">Header I</Step>
|
|
<Step value="2">Header II</Step>
|
|
<Step value="3">Header III</Step>
|
|
</StepList>
|
|
<StepPanels>
|
|
<StepPanel v-slot="{ activateCallback }" value="1">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content I</div>
|
|
</div>
|
|
<div class="flex pt-6 justify-end">
|
|
<Button label="Next" icon="pi pi-arrow-right" iconPos="right" @click="activateCallback('2')" />
|
|
</div>
|
|
</StepPanel>
|
|
<StepPanel v-slot="{ activateCallback }" value="2">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content II</div>
|
|
</div>
|
|
<div class="flex pt-6 justify-between">
|
|
<Button label="Back" severity="secondary" icon="pi pi-arrow-left" @click="activateCallback('1')" />
|
|
<Button label="Next" icon="pi pi-arrow-right" iconPos="right" @click="activateCallback('3')" />
|
|
</div>
|
|
</StepPanel>
|
|
<StepPanel v-slot="{ activateCallback }" value="3">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content III</div>
|
|
</div>
|
|
<div class="pt-6">
|
|
<Button label="Back" severity="secondary" icon="pi pi-arrow-left" @click="activateCallback('2')" />
|
|
</div>
|
|
</StepPanel>
|
|
</StepPanels>
|
|
</Stepper>
|
|
</div>
|
|
<DocSectionCode :code="code" />
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
data() {
|
|
return {
|
|
code: {
|
|
basic: `
|
|
<Stepper value="1">
|
|
<StepList>
|
|
<Step value="1">Header I</Step>
|
|
<Step value="2">Header II</Step>
|
|
<Step value="3">Header III</Step>
|
|
</StepList>
|
|
<StepPanels>
|
|
<StepPanel v-slot="{ activateCallback }" value="1">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content I</div>
|
|
</div>
|
|
<div class="flex pt-6 justify-end">
|
|
<Button label="Next" icon="pi pi-arrow-right" iconPos="right" @click="activateCallback('2')" />
|
|
</div>
|
|
</StepPanel>
|
|
<StepPanel v-slot="{ activateCallback }" value="2">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content II</div>
|
|
</div>
|
|
<div class="flex pt-6 justify-between">
|
|
<Button label="Back" severity="secondary" icon="pi pi-arrow-left" @click="activateCallback('1')" />
|
|
<Button label="Next" icon="pi pi-arrow-right" iconPos="right" @click="activateCallback('3')" />
|
|
</div>
|
|
</StepPanel>
|
|
<StepPanel v-slot="{ activateCallback }" value="3">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content III</div>
|
|
</div>
|
|
<div class="pt-6">
|
|
<Button label="Back" severity="secondary" icon="pi pi-arrow-left" @click="activateCallback('2')" />
|
|
</div>
|
|
</StepPanel>
|
|
</StepPanels>
|
|
</Stepper>
|
|
`,
|
|
options: `
|
|
<template>
|
|
<div class="card flex justify-center">
|
|
<Stepper value="1" class="basis-[50rem]">
|
|
<StepList>
|
|
<Step value="1">Header I</Step>
|
|
<Step value="2">Header II</Step>
|
|
<Step value="3">Header III</Step>
|
|
</StepList>
|
|
<StepPanels>
|
|
<StepPanel v-slot="{ activateCallback }" value="1">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content I</div>
|
|
</div>
|
|
<div class="flex pt-6 justify-end">
|
|
<Button label="Next" icon="pi pi-arrow-right" iconPos="right" @click="activateCallback('2')" />
|
|
</div>
|
|
</StepPanel>
|
|
<StepPanel v-slot="{ activateCallback }" value="2">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content II</div>
|
|
</div>
|
|
<div class="flex pt-6 justify-between">
|
|
<Button label="Back" severity="secondary" icon="pi pi-arrow-left" @click="activateCallback('1')" />
|
|
<Button label="Next" icon="pi pi-arrow-right" iconPos="right" @click="activateCallback('3')" />
|
|
</div>
|
|
</StepPanel>
|
|
<StepPanel v-slot="{ activateCallback }" value="3">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content III</div>
|
|
</div>
|
|
<div class="pt-6">
|
|
<Button label="Back" severity="secondary" icon="pi pi-arrow-left" @click="activateCallback('2')" />
|
|
</div>
|
|
</StepPanel>
|
|
</StepPanels>
|
|
</Stepper>
|
|
</div>
|
|
</template>
|
|
`,
|
|
composition: `
|
|
<template>
|
|
<div class="card flex justify-center">
|
|
<Stepper value="1" class="basis-[50rem]">
|
|
<StepList>
|
|
<Step value="1">Header I</Step>
|
|
<Step value="2">Header II</Step>
|
|
<Step value="3">Header III</Step>
|
|
</StepList>
|
|
<StepPanels>
|
|
<StepPanel v-slot="{ activateCallback }" value="1">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content I</div>
|
|
</div>
|
|
<div class="flex pt-6 justify-end">
|
|
<Button label="Next" icon="pi pi-arrow-right" iconPos="right" @click="activateCallback('2')" />
|
|
</div>
|
|
</StepPanel>
|
|
<StepPanel v-slot="{ activateCallback }" value="2">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content II</div>
|
|
</div>
|
|
<div class="flex pt-6 justify-between">
|
|
<Button label="Back" severity="secondary" icon="pi pi-arrow-left" @click="activateCallback('1')" />
|
|
<Button label="Next" icon="pi pi-arrow-right" iconPos="right" @click="activateCallback('3')" />
|
|
</div>
|
|
</StepPanel>
|
|
<StepPanel v-slot="{ activateCallback }" value="3">
|
|
<div class="flex flex-col h-48">
|
|
<div class="border-2 border-dashed border-surface-200 dark:border-surface-700 rounded bg-surface-50 dark:bg-surface-950 flex-auto flex justify-center items-center font-medium">Content III</div>
|
|
</div>
|
|
<div class="pt-6">
|
|
<Button label="Back" severity="secondary" icon="pi pi-arrow-left" @click="activateCallback('2')" />
|
|
</div>
|
|
</StepPanel>
|
|
</StepPanels>
|
|
</Stepper>
|
|
</div>
|
|
</template>
|
|
`
|
|
}
|
|
};
|
|
}
|
|
};
|
|
</script>
|