npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

headless-multistep-form-vue

v1.0.6

Published

Headless mutli step form for Vue.js

Downloads

11

Readme

Headless Vue.js Multi Step form

Preview

Demo

Demo

How To Use

This package provides you with some components that you are going to use to build you multi step form

Basic example :

// App.vue

<script>
 import { MultiStapForm,
		  Header,
		  HeaderItem,
		  Steps,
		  Step,
		  Footer
		} from "headless-multistep-form-vue" 
</script> 

<tamplate> 
	<MultiStepForm>
		<Header>
			<HeaderItem v-slot="{ active }">
				<span :class=[active && 'color-blue-700']> 
					Personal Informations 
				</span>
				<span :class=[active && 'color-blue-700']> 
					Contact Informations 
				</span>
			</HeaderItem>
		</Header> 
		
		<Steps>
			<Step :validation="() => true"> 
				<input type="text" name="name" /> 
			</Step> 
			<Step :validation="() => true"> 
				<input type="text" name="name" /> 
				</Step> 
		</Steps>
		<Footer v-slot="{ nextStep, previousStep }"> 
			<button @click="nextStep">Next</button> 
			<button @click="previousStep">Previous</button> 
		</Footer> 
	</MultiStepForm>
</template> 

the Header is where you want to display information about the current step and the next steps

the Steps is where you put your form Steps .

the Step component accepts a validation function if it returns true then we can go to the next step by running the nextStep function provided by the Footer

Each component exposes information about its current state via slot props that you can use to conditionally apply different styles or render different content.

For example, the HeaderItem component exposes an active state, which tells you if the step is currently active .

Slot Props

HeaderItem

headerItem component exposes the following states :

active is a boolean that tells if the current item step is active .

passed is a boolean that tells if the current item step has been passed .

stepsCount is a number that tells the total number of steps.

currentStep is a number tha tells the number of the current step .

Footer

Footer component exposes the following states:

nextStep is a function which navigates to the next step if the validation function of the Step component returns true.

previousStep is a functionwhich navigates to the previous step .

valid is a computed that returns a boolean tells if the current Step input is valid by running the Step validation function.

start is a boolean that tells if the current step is the starting step endis a boolean that tells if the current step is the last step