vue3-steppy
Advanced tools
Comparing version
(function(){"use strict";try{if(typeof document!="undefined"){var t=document.createElement("style");t.appendChild(document.createTextNode("body[data-v-8a738045]{width:100%;height:100vh;display:flex;align-items:center;justify-content:center;font-family:sans-serif}.tx-default-2[data-v-8a738045]{color:var(--primaryColor1);font-weight:600}.wrapper-steppy[data-v-8a738045]{padding:60px}.steppy[data-v-8a738045]{display:flex;align-items:center;justify-content:space-between;width:auto;position:relative;z-index:0;margin-bottom:5px}.steppy-progress[data-v-8a738045]{position:absolute;background-color:#c5c5c5;height:2px;z-index:-1;left:0;right:0;margin:0 auto}.steppy-progress-bar[data-v-8a738045]{position:absolute;left:0;height:100%;width:0;background-color:var(--primaryColor1);transition:all .5s ease}.steppy-item[data-v-8a738045]{display:flex;flex-direction:column;align-items:center;color:#c5c5c5;transition:all .5s ease}.steppy-item-counter[data-v-8a738045]{height:68px;width:68px;display:grid;place-items:center;background-color:var(--primaryColor2);border-radius:100%;border:2px solid #c5c5c5;position:relative}.steppy-item-counter .icon-success[data-v-8a738045]{position:absolute;opacity:0;transform:scale(0);width:24px;transition:all .5s ease}.steppy-item-counter .number[data-v-8a738045]{font-size:22px;transition:all .5s ease}.steppy-item-title[data-v-8a738045]{position:absolute;text-align:center;font-size:14px;bottom:-43px}.steppy-item.success .steppy-item-counter[data-v-8a738045]{border-color:var(--primaryColor1);font-weight:600;height:var(--circleSize);width:var(--circleSize)}.steppy-item.success .steppy-item-counter .icon-success[data-v-8a738045]{opacity:1;transform:scale(1);width:calc(var(--circleSize) * .35)}.steppy-item.success .steppy-item-counter .number[data-v-8a738045]{opacity:0;transform:scale(0);font-size:calc(var(--circleSize) * .32)}.steppy-item.success .steppy-item-title[data-v-8a738045]{color:var(--primaryColor1)}.steppy-item.current .steppy-item-counter[data-v-8a738045]{border-color:var(--primaryColor1);background-color:var(--primaryColor1);color:#fff;font-weight:600}.steppy-item.current .steppy-item-title[data-v-8a738045]{color:#818181}.steppy-pane[data-v-8a738045]{color:#333;text-align:center;background-color:var(--backgroundColor);border-radius:15px;padding:25px;box-shadow:0 0 10px #0000004d;margin:60px 0 20px}.controls[data-v-8a738045]{display:flex}.btn[data-v-8a738045]{display:flex;justify-content:center;align-items:center;padding:6px 16px;text-align:center;vertical-align:middle;cursor:pointer;line-height:1.5;transition:all .15s;border-radius:4px;width:fit-content;font-size:.75rem;color:#333;background-color:#f0f0f0;border:1px solid #f0f0f0}.btn[data-v-8a738045]:disabled{opacity:.5;pointer-events:none}.btn--default-2[data-v-8a738045]{background-color:var(--primaryColor1);border-color:var(--primaryColor1);color:#fff;margin-left:auto}.loader[data-v-8a738045]{width:20px;height:20px;border:2px solid #fff;border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation-8a738045 1s linear infinite}@keyframes rotation-8a738045{0%{transform:rotate(0)}to{transform:rotate(360deg)}}")),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})(); | ||
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),m=e.createElementVNode("path",{d:"M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z"},null,-1),k=[m],_={__name:"CheckMark",props:{color:{type:String,default:"black"}},setup(o){return(n,s)=>(e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 24 24",style:e.normalizeStyle({fill:o.color})},k,4))}};const S=(o,n)=>{const s=o.__vccOpts||o;for(const[t,a]of n)s[t]=a;return s},b={class:"steppy"},g={class:"steppy-progress"},f=["src"],B={class:"number"},h={class:"steppy-item-title"},v={key:0,class:"steppy-pane"},E={class:"controls"},C=["disabled"],V=["disabled"],z={key:0,class:"loader"},N={key:1},x={__name:"Vue3Steppy",props:{step:{type:Number,default:1},tabs:{type:Array,default:e.reactive([{title:"Step 1",iconSuccess:null,isValid:!0},{title:"Step 2",iconSuccess:null,isValid:!0},{title:"Step 3",iconSuccess:null,isValid:!0}])},finalize:{type:Function,default:function(){return{}}},backText:{type:String,default:"Back"},nextText:{type:String,default:"Next"},doneText:{type:String,default:"Done"},loading:{type:Boolean,default:!1},primaryColor1:{type:String,default:"orange"},primaryColor2:{type:String,default:"#fff"},backgroundColor:{type:String,default:"#fff"},circleSize:{type:Number,default:68}},emits:["update:step"],setup(o,{emit:n}){const s=n,t=o,a=e.computed(()=>({"--primaryColor1":t.primaryColor1,"--primaryColor2":t.primaryColor2,"--backgroundColor":t.backgroundColor,"--circleSize":`${t.circleSize}px`})),p=()=>{const c=t.step+1;s("update:step",c)},u=()=>{const c=t.step-1;s("update:step",c)},d=e.computed(()=>100/(t.tabs.length-1)*(t.step-1)+"%"),y=e.computed(()=>({height:`${t.circleSize}px`,width:`${t.circleSize}px`}));return(c,i)=>(e.openBlock(),e.createElementBlock("div",{class:"wrapper-steppy",style:e.normalizeStyle(a.value)},[e.createElementVNode("div",b,[e.createElementVNode("div",g,[e.createElementVNode("div",{class:"steppy-progress-bar",style:e.normalizeStyle("width:"+d.value)},null,4)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs,(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["steppy-item",{current:t.step===r+1,success:t.step>r+1}]),key:r},[e.createElementVNode("div",{class:"steppy-item-counter",style:e.normalizeStyle(y.value)},[l.iconSuccess?(e.openBlock(),e.createElementBlock("img",{key:0,class:"icon-success",src:l.iconSuccess,alt:"Check Mark"},null,8,f)):(e.openBlock(),e.createBlock(_,{key:1,class:"icon-success",color:o.primaryColor1,alt:"Check Mark"},null,8,["color"])),e.createElementVNode("span",B,e.toDisplayString(r+1),1)],4),e.createElementVNode("span",h,e.toDisplayString(l.title),1)],2))),128))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs.length,l=>(e.openBlock(),e.createElementBlock("div",{class:"steppy-content",key:l},[t.step===l?(e.openBlock(),e.createElementBlock("div",v,[e.renderSlot(c.$slots,l,{},void 0,!0)])):e.createCommentVNode("",!0)]))),128)),e.createElementVNode("div",E,[t.step!==1?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn",type:"button",onClick:u},e.toDisplayString(t.backText),1)):e.createCommentVNode("",!0),t.step!==t.tabs.length?(e.openBlock(),e.createElementBlock("button",{key:1,class:"btn btn--default-2",type:"button",onClick:p,disabled:!t.tabs[t.step-1].isValid},e.toDisplayString(t.nextText),9,C)):(e.openBlock(),e.createElementBlock("button",{key:2,class:"btn btn--default-2",type:"button",onClick:i[0]||(i[0]=(...l)=>o.finalize&&o.finalize(...l)),disabled:!t.tabs[t.step-1].isValid||o.loading},[o.loading?(e.openBlock(),e.createElementBlock("span",z)):(e.openBlock(),e.createElementBlock("span",N,e.toDisplayString(t.doneText),1))],8,V))])],4))}},T=S(x,[["__scopeId","data-v-8a738045"]]);exports.Steppy=T; | ||
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),m={__name:"CheckMark",props:{color:{type:String,default:"black"}},setup(l){return(c,s)=>(e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 24 24",style:e.normalizeStyle({fill:l.color})},s[0]||(s[0]=[e.createElementVNode("path",{d:"M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z"},null,-1)]),4))}};const k=(l,c)=>{const s=l.__vccOpts||l;for(const[t,a]of c)s[t]=a;return s},S={class:"steppy"},b={class:"steppy-progress"},g=["src"],_={class:"number"},f={class:"steppy-item-title"},B={key:0,class:"steppy-pane"},v={class:"controls"},E=["disabled"],h=["disabled"],C={key:0,class:"loader"},V={key:1},z={__name:"Vue3Steppy",props:{step:{type:Number,default:1},tabs:{type:Array,default:e.reactive([{title:"Step 1",iconSuccess:null,isValid:!0},{title:"Step 2",iconSuccess:null,isValid:!0},{title:"Step 3",iconSuccess:null,isValid:!0}])},finalize:{type:Function,default:function(){return{}}},backText:{type:String,default:"Back"},nextText:{type:String,default:"Next"},doneText:{type:String,default:"Done"},loading:{type:Boolean,default:!1},primaryColor1:{type:String,default:"orange"},primaryColor2:{type:String,default:"#fff"},backgroundColor:{type:String,default:"#fff"},circleSize:{type:Number,default:68}},emits:["update:step"],setup(l,{emit:c}){const s=c,t=l,a=e.computed(()=>({"--primaryColor1":t.primaryColor1,"--primaryColor2":t.primaryColor2,"--backgroundColor":t.backgroundColor,"--circleSize":`${t.circleSize}px`})),p=()=>{const n=t.step+1;s("update:step",n)},u=()=>{const n=t.step-1;s("update:step",n)},d=e.computed(()=>100/(t.tabs.length-1)*(t.step-1)+"%"),y=e.computed(()=>({height:`${t.circleSize}px`,width:`${t.circleSize}px`}));return(n,i)=>(e.openBlock(),e.createElementBlock("div",{class:"wrapper-steppy",style:e.normalizeStyle(a.value)},[e.createElementVNode("div",S,[e.createElementVNode("div",b,[e.createElementVNode("div",{class:"steppy-progress-bar",style:e.normalizeStyle("width:"+d.value)},null,4)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs,(o,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["steppy-item",{current:t.step===r+1,success:t.step>r+1}]),key:r},[e.createElementVNode("div",{class:"steppy-item-counter",style:e.normalizeStyle(y.value)},[o.iconSuccess?(e.openBlock(),e.createElementBlock("img",{key:0,class:"icon-success",src:o.iconSuccess,alt:"Check Mark"},null,8,g)):(e.openBlock(),e.createBlock(m,{key:1,class:"icon-success",color:l.primaryColor1,alt:"Check Mark"},null,8,["color"])),e.createElementVNode("span",_,e.toDisplayString(r+1),1)],4),e.createElementVNode("span",f,e.toDisplayString(o.title),1)],2))),128))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs.length,o=>(e.openBlock(),e.createElementBlock("div",{class:"steppy-content",key:o},[t.step===o?(e.openBlock(),e.createElementBlock("div",B,[e.renderSlot(n.$slots,o,{},void 0,!0)])):e.createCommentVNode("",!0)]))),128)),e.createElementVNode("div",v,[t.step!==1?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn",type:"button",onClick:u},e.toDisplayString(t.backText),1)):e.createCommentVNode("",!0),t.step!==t.tabs.length?(e.openBlock(),e.createElementBlock("button",{key:1,class:"btn btn--default-2",type:"button",onClick:p,disabled:!t.tabs[t.step-1].isValid},e.toDisplayString(t.nextText),9,E)):(e.openBlock(),e.createElementBlock("button",{key:2,class:"btn btn--default-2",type:"button",onClick:i[0]||(i[0]=(...o)=>l.finalize&&l.finalize(...o)),disabled:!t.tabs[t.step-1].isValid||l.loading},[l.loading?(e.openBlock(),e.createElementBlock("span",C)):(e.openBlock(),e.createElementBlock("span",V,e.toDisplayString(t.doneText),1))],8,h))])],4))}},N=k(z,[["__scopeId","data-v-8a738045"]]);exports.Steppy=N; |
(function(){"use strict";try{if(typeof document!="undefined"){var t=document.createElement("style");t.appendChild(document.createTextNode("body[data-v-8a738045]{width:100%;height:100vh;display:flex;align-items:center;justify-content:center;font-family:sans-serif}.tx-default-2[data-v-8a738045]{color:var(--primaryColor1);font-weight:600}.wrapper-steppy[data-v-8a738045]{padding:60px}.steppy[data-v-8a738045]{display:flex;align-items:center;justify-content:space-between;width:auto;position:relative;z-index:0;margin-bottom:5px}.steppy-progress[data-v-8a738045]{position:absolute;background-color:#c5c5c5;height:2px;z-index:-1;left:0;right:0;margin:0 auto}.steppy-progress-bar[data-v-8a738045]{position:absolute;left:0;height:100%;width:0;background-color:var(--primaryColor1);transition:all .5s ease}.steppy-item[data-v-8a738045]{display:flex;flex-direction:column;align-items:center;color:#c5c5c5;transition:all .5s ease}.steppy-item-counter[data-v-8a738045]{height:68px;width:68px;display:grid;place-items:center;background-color:var(--primaryColor2);border-radius:100%;border:2px solid #c5c5c5;position:relative}.steppy-item-counter .icon-success[data-v-8a738045]{position:absolute;opacity:0;transform:scale(0);width:24px;transition:all .5s ease}.steppy-item-counter .number[data-v-8a738045]{font-size:22px;transition:all .5s ease}.steppy-item-title[data-v-8a738045]{position:absolute;text-align:center;font-size:14px;bottom:-43px}.steppy-item.success .steppy-item-counter[data-v-8a738045]{border-color:var(--primaryColor1);font-weight:600;height:var(--circleSize);width:var(--circleSize)}.steppy-item.success .steppy-item-counter .icon-success[data-v-8a738045]{opacity:1;transform:scale(1);width:calc(var(--circleSize) * .35)}.steppy-item.success .steppy-item-counter .number[data-v-8a738045]{opacity:0;transform:scale(0);font-size:calc(var(--circleSize) * .32)}.steppy-item.success .steppy-item-title[data-v-8a738045]{color:var(--primaryColor1)}.steppy-item.current .steppy-item-counter[data-v-8a738045]{border-color:var(--primaryColor1);background-color:var(--primaryColor1);color:#fff;font-weight:600}.steppy-item.current .steppy-item-title[data-v-8a738045]{color:#818181}.steppy-pane[data-v-8a738045]{color:#333;text-align:center;background-color:var(--backgroundColor);border-radius:15px;padding:25px;box-shadow:0 0 10px #0000004d;margin:60px 0 20px}.controls[data-v-8a738045]{display:flex}.btn[data-v-8a738045]{display:flex;justify-content:center;align-items:center;padding:6px 16px;text-align:center;vertical-align:middle;cursor:pointer;line-height:1.5;transition:all .15s;border-radius:4px;width:fit-content;font-size:.75rem;color:#333;background-color:#f0f0f0;border:1px solid #f0f0f0}.btn[data-v-8a738045]:disabled{opacity:.5;pointer-events:none}.btn--default-2[data-v-8a738045]{background-color:var(--primaryColor1);border-color:var(--primaryColor1);color:#fff;margin-left:auto}.loader[data-v-8a738045]{width:20px;height:20px;border:2px solid #fff;border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation-8a738045 1s linear infinite}@keyframes rotation-8a738045{0%{transform:rotate(0)}to{transform:rotate(360deg)}}")),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})(); | ||
import { openBlock as t, createElementBlock as s, normalizeStyle as u, createElementVNode as n, reactive as v, computed as y, Fragment as b, renderList as f, normalizeClass as C, createBlock as x, toDisplayString as a, renderSlot as z, createCommentVNode as m } from "vue"; | ||
const V = /* @__PURE__ */ n("path", { d: "M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z" }, null, -1), $ = [ | ||
V | ||
], B = { | ||
import { openBlock as t, createElementBlock as s, normalizeStyle as u, createElementVNode as c, reactive as v, computed as y, Fragment as b, renderList as f, normalizeClass as C, createBlock as x, toDisplayString as a, renderSlot as z, createCommentVNode as m } from "vue"; | ||
const V = { | ||
__name: "CheckMark", | ||
@@ -14,20 +12,22 @@ props: { | ||
setup(l) { | ||
return (i, c) => (t(), s("svg", { | ||
return (i, o) => (t(), s("svg", { | ||
viewBox: "0 0 24 24", | ||
style: u({ fill: l.color }) | ||
}, $, 4)); | ||
}, o[0] || (o[0] = [ | ||
c("path", { d: "M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z" }, null, -1) | ||
]), 4)); | ||
} | ||
}; | ||
const T = (l, i) => { | ||
const c = l.__vccOpts || l; | ||
const B = (l, i) => { | ||
const o = l.__vccOpts || l; | ||
for (const [e, d] of i) | ||
c[e] = d; | ||
return c; | ||
}, N = { class: "steppy" }, w = { class: "steppy-progress" }, M = ["src"], D = { class: "number" }, E = { class: "steppy-item-title" }, F = { | ||
o[e] = d; | ||
return o; | ||
}, T = { class: "steppy" }, N = { class: "steppy-progress" }, $ = ["src"], w = { class: "number" }, M = { class: "steppy-item-title" }, D = { | ||
key: 0, | ||
class: "steppy-pane" | ||
}, A = { class: "controls" }, I = ["disabled"], L = ["disabled"], O = { | ||
}, E = { class: "controls" }, F = ["disabled"], A = ["disabled"], I = { | ||
key: 0, | ||
class: "loader" | ||
}, P = { key: 1 }, j = { | ||
}, L = { key: 1 }, O = { | ||
__name: "Vue3Steppy", | ||
@@ -100,3 +100,3 @@ props: { | ||
setup(l, { emit: i }) { | ||
const c = i, e = l, d = y(() => ({ | ||
const o = i, e = l, d = y(() => ({ | ||
"--primaryColor1": e.primaryColor1, | ||
@@ -108,6 +108,6 @@ "--primaryColor2": e.primaryColor2, | ||
const r = e.step + 1; | ||
c("update:step", r); | ||
o("update:step", r); | ||
}, S = () => { | ||
const r = e.step - 1; | ||
c("update:step", r); | ||
o("update:step", r); | ||
}, g = y(() => 100 / (e.tabs.length - 1) * (e.step - 1) + "%"), h = y(() => ({ | ||
@@ -121,5 +121,5 @@ height: `${e.circleSize}px`, | ||
}, [ | ||
n("div", N, [ | ||
n("div", w, [ | ||
n("div", { | ||
c("div", T, [ | ||
c("div", N, [ | ||
c("div", { | ||
class: "steppy-progress-bar", | ||
@@ -129,3 +129,3 @@ style: u("width:" + g.value) | ||
]), | ||
(t(!0), s(b, null, f(e.tabs, (o, p) => (t(), s("div", { | ||
(t(!0), s(b, null, f(e.tabs, (n, p) => (t(), s("div", { | ||
class: C(["steppy-item", { | ||
@@ -137,12 +137,12 @@ current: e.step === p + 1, | ||
}, [ | ||
n("div", { | ||
c("div", { | ||
class: "steppy-item-counter", | ||
style: u(h.value) | ||
}, [ | ||
o.iconSuccess ? (t(), s("img", { | ||
n.iconSuccess ? (t(), s("img", { | ||
key: 0, | ||
class: "icon-success", | ||
src: o.iconSuccess, | ||
src: n.iconSuccess, | ||
alt: "Check Mark" | ||
}, null, 8, M)) : (t(), x(B, { | ||
}, null, 8, $)) : (t(), x(V, { | ||
key: 1, | ||
@@ -153,16 +153,16 @@ class: "icon-success", | ||
}, null, 8, ["color"])), | ||
n("span", D, a(p + 1), 1) | ||
c("span", w, a(p + 1), 1) | ||
], 4), | ||
n("span", E, a(o.title), 1) | ||
c("span", M, a(n.title), 1) | ||
], 2))), 128)) | ||
]), | ||
(t(!0), s(b, null, f(e.tabs.length, (o) => (t(), s("div", { | ||
(t(!0), s(b, null, f(e.tabs.length, (n) => (t(), s("div", { | ||
class: "steppy-content", | ||
key: o | ||
key: n | ||
}, [ | ||
e.step === o ? (t(), s("div", F, [ | ||
z(r.$slots, o, {}, void 0, !0) | ||
e.step === n ? (t(), s("div", D, [ | ||
z(r.$slots, n, {}, void 0, !0) | ||
])) : m("", !0) | ||
]))), 128)), | ||
n("div", A, [ | ||
c("div", E, [ | ||
e.step !== 1 ? (t(), s("button", { | ||
@@ -180,17 +180,17 @@ key: 0, | ||
disabled: !e.tabs[e.step - 1].isValid | ||
}, a(e.nextText), 9, I)) : (t(), s("button", { | ||
}, a(e.nextText), 9, F)) : (t(), s("button", { | ||
key: 2, | ||
class: "btn btn--default-2", | ||
type: "button", | ||
onClick: _[0] || (_[0] = (...o) => l.finalize && l.finalize(...o)), | ||
onClick: _[0] || (_[0] = (...n) => l.finalize && l.finalize(...n)), | ||
disabled: !e.tabs[e.step - 1].isValid || l.loading | ||
}, [ | ||
l.loading ? (t(), s("span", O)) : (t(), s("span", P, a(e.doneText), 1)) | ||
], 8, L)) | ||
l.loading ? (t(), s("span", I)) : (t(), s("span", L, a(e.doneText), 1)) | ||
], 8, A)) | ||
]) | ||
], 4)); | ||
} | ||
}, G = /* @__PURE__ */ T(j, [["__scopeId", "data-v-8a738045"]]); | ||
}, j = /* @__PURE__ */ B(O, [["__scopeId", "data-v-8a738045"]]); | ||
export { | ||
G as Steppy | ||
j as Steppy | ||
}; |
(function(){"use strict";try{if(typeof document!="undefined"){var t=document.createElement("style");t.appendChild(document.createTextNode("body[data-v-8a738045]{width:100%;height:100vh;display:flex;align-items:center;justify-content:center;font-family:sans-serif}.tx-default-2[data-v-8a738045]{color:var(--primaryColor1);font-weight:600}.wrapper-steppy[data-v-8a738045]{padding:60px}.steppy[data-v-8a738045]{display:flex;align-items:center;justify-content:space-between;width:auto;position:relative;z-index:0;margin-bottom:5px}.steppy-progress[data-v-8a738045]{position:absolute;background-color:#c5c5c5;height:2px;z-index:-1;left:0;right:0;margin:0 auto}.steppy-progress-bar[data-v-8a738045]{position:absolute;left:0;height:100%;width:0;background-color:var(--primaryColor1);transition:all .5s ease}.steppy-item[data-v-8a738045]{display:flex;flex-direction:column;align-items:center;color:#c5c5c5;transition:all .5s ease}.steppy-item-counter[data-v-8a738045]{height:68px;width:68px;display:grid;place-items:center;background-color:var(--primaryColor2);border-radius:100%;border:2px solid #c5c5c5;position:relative}.steppy-item-counter .icon-success[data-v-8a738045]{position:absolute;opacity:0;transform:scale(0);width:24px;transition:all .5s ease}.steppy-item-counter .number[data-v-8a738045]{font-size:22px;transition:all .5s ease}.steppy-item-title[data-v-8a738045]{position:absolute;text-align:center;font-size:14px;bottom:-43px}.steppy-item.success .steppy-item-counter[data-v-8a738045]{border-color:var(--primaryColor1);font-weight:600;height:var(--circleSize);width:var(--circleSize)}.steppy-item.success .steppy-item-counter .icon-success[data-v-8a738045]{opacity:1;transform:scale(1);width:calc(var(--circleSize) * .35)}.steppy-item.success .steppy-item-counter .number[data-v-8a738045]{opacity:0;transform:scale(0);font-size:calc(var(--circleSize) * .32)}.steppy-item.success .steppy-item-title[data-v-8a738045]{color:var(--primaryColor1)}.steppy-item.current .steppy-item-counter[data-v-8a738045]{border-color:var(--primaryColor1);background-color:var(--primaryColor1);color:#fff;font-weight:600}.steppy-item.current .steppy-item-title[data-v-8a738045]{color:#818181}.steppy-pane[data-v-8a738045]{color:#333;text-align:center;background-color:var(--backgroundColor);border-radius:15px;padding:25px;box-shadow:0 0 10px #0000004d;margin:60px 0 20px}.controls[data-v-8a738045]{display:flex}.btn[data-v-8a738045]{display:flex;justify-content:center;align-items:center;padding:6px 16px;text-align:center;vertical-align:middle;cursor:pointer;line-height:1.5;transition:all .15s;border-radius:4px;width:fit-content;font-size:.75rem;color:#333;background-color:#f0f0f0;border:1px solid #f0f0f0}.btn[data-v-8a738045]:disabled{opacity:.5;pointer-events:none}.btn--default-2[data-v-8a738045]{background-color:var(--primaryColor1);border-color:var(--primaryColor1);color:#fff;margin-left:auto}.loader[data-v-8a738045]{width:20px;height:20px;border:2px solid #fff;border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation-8a738045 1s linear infinite}@keyframes rotation-8a738045{0%{transform:rotate(0)}to{transform:rotate(360deg)}}")),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})(); | ||
(function(l,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(l=typeof globalThis<"u"?globalThis:l||self,e(l.Vue3Steppy={},l.Vue))})(this,function(l,e){"use strict";const d=[e.createElementVNode("path",{d:"M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z"},null,-1)],y={__name:"CheckMark",props:{color:{type:String,default:"black"}},setup(o){return(r,n)=>(e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 24 24",style:e.normalizeStyle({fill:o.color})},d,4))}},M="",m=(o,r)=>{const n=o.__vccOpts||o;for(const[t,i]of r)n[t]=i;return n},k={class:"steppy"},f={class:"steppy-progress"},_=["src"],u={class:"number"},S={class:"steppy-item-title"},b={key:0,class:"steppy-pane"},g={class:"controls"},B=["disabled"],h=["disabled"],E={key:0,class:"loader"},V={key:1},C={__name:"Vue3Steppy",props:{step:{type:Number,default:1},tabs:{type:Array,default:e.reactive([{title:"Step 1",iconSuccess:null,isValid:!0},{title:"Step 2",iconSuccess:null,isValid:!0},{title:"Step 3",iconSuccess:null,isValid:!0}])},finalize:{type:Function,default:function(){return{}}},backText:{type:String,default:"Back"},nextText:{type:String,default:"Next"},doneText:{type:String,default:"Done"},loading:{type:Boolean,default:!1},primaryColor1:{type:String,default:"orange"},primaryColor2:{type:String,default:"#fff"},backgroundColor:{type:String,default:"#fff"},circleSize:{type:Number,default:68}},emits:["update:step"],setup(o,{emit:r}){const n=r,t=o,i=e.computed(()=>({"--primaryColor1":t.primaryColor1,"--primaryColor2":t.primaryColor2,"--backgroundColor":t.backgroundColor,"--circleSize":`${t.circleSize}px`})),x=()=>{const c=t.step+1;n("update:step",c)},N=()=>{const c=t.step-1;n("update:step",c)},T=e.computed(()=>100/(t.tabs.length-1)*(t.step-1)+"%"),$=e.computed(()=>({height:`${t.circleSize}px`,width:`${t.circleSize}px`}));return(c,p)=>(e.openBlock(),e.createElementBlock("div",{class:"wrapper-steppy",style:e.normalizeStyle(i.value)},[e.createElementVNode("div",k,[e.createElementVNode("div",f,[e.createElementVNode("div",{class:"steppy-progress-bar",style:e.normalizeStyle("width:"+T.value)},null,4)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs,(s,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["steppy-item",{current:t.step===a+1,success:t.step>a+1}]),key:a},[e.createElementVNode("div",{class:"steppy-item-counter",style:e.normalizeStyle($.value)},[s.iconSuccess?(e.openBlock(),e.createElementBlock("img",{key:0,class:"icon-success",src:s.iconSuccess,alt:"Check Mark"},null,8,_)):(e.openBlock(),e.createBlock(y,{key:1,class:"icon-success",color:o.primaryColor1,alt:"Check Mark"},null,8,["color"])),e.createElementVNode("span",u,e.toDisplayString(a+1),1)],4),e.createElementVNode("span",S,e.toDisplayString(s.title),1)],2))),128))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs.length,s=>(e.openBlock(),e.createElementBlock("div",{class:"steppy-content",key:s},[t.step===s?(e.openBlock(),e.createElementBlock("div",b,[e.renderSlot(c.$slots,s,{},void 0,!0)])):e.createCommentVNode("",!0)]))),128)),e.createElementVNode("div",g,[t.step!==1?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn",type:"button",onClick:N},e.toDisplayString(t.backText),1)):e.createCommentVNode("",!0),t.step!==t.tabs.length?(e.openBlock(),e.createElementBlock("button",{key:1,class:"btn btn--default-2",type:"button",onClick:x,disabled:!t.tabs[t.step-1].isValid},e.toDisplayString(t.nextText),9,B)):(e.openBlock(),e.createElementBlock("button",{key:2,class:"btn btn--default-2",type:"button",onClick:p[0]||(p[0]=(...s)=>o.finalize&&o.finalize(...s)),disabled:!t.tabs[t.step-1].isValid||o.loading},[o.loading?(e.openBlock(),e.createElementBlock("span",E)):(e.openBlock(),e.createElementBlock("span",V,e.toDisplayString(t.doneText),1))],8,h))])],4))}},z=m(C,[["__scopeId","data-v-8a738045"]]);l.Steppy=z,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})}); | ||
(function(s,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(s=typeof globalThis<"u"?globalThis:s||self,e(s.Vue3Steppy={},s.Vue))})(this,function(s,e){"use strict";const d={__name:"CheckMark",props:{color:{type:String,default:"black"}},setup(o){return(r,n)=>(e.openBlock(),e.createElementBlock("svg",{viewBox:"0 0 24 24",style:e.normalizeStyle({fill:o.color})},n[0]||(n[0]=[e.createElementVNode("path",{d:"M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z"},null,-1)]),4))}},D="",y=(o,r)=>{const n=o.__vccOpts||o;for(const[t,i]of r)n[t]=i;return n},m={class:"steppy"},k={class:"steppy-progress"},f=["src"],u={class:"number"},S={class:"steppy-item-title"},b={key:0,class:"steppy-pane"},_={class:"controls"},g=["disabled"],B=["disabled"],h={key:0,class:"loader"},E={key:1},V={__name:"Vue3Steppy",props:{step:{type:Number,default:1},tabs:{type:Array,default:e.reactive([{title:"Step 1",iconSuccess:null,isValid:!0},{title:"Step 2",iconSuccess:null,isValid:!0},{title:"Step 3",iconSuccess:null,isValid:!0}])},finalize:{type:Function,default:function(){return{}}},backText:{type:String,default:"Back"},nextText:{type:String,default:"Next"},doneText:{type:String,default:"Done"},loading:{type:Boolean,default:!1},primaryColor1:{type:String,default:"orange"},primaryColor2:{type:String,default:"#fff"},backgroundColor:{type:String,default:"#fff"},circleSize:{type:Number,default:68}},emits:["update:step"],setup(o,{emit:r}){const n=r,t=o,i=e.computed(()=>({"--primaryColor1":t.primaryColor1,"--primaryColor2":t.primaryColor2,"--backgroundColor":t.backgroundColor,"--circleSize":`${t.circleSize}px`})),z=()=>{const c=t.step+1;n("update:step",c)},x=()=>{const c=t.step-1;n("update:step",c)},N=e.computed(()=>100/(t.tabs.length-1)*(t.step-1)+"%"),T=e.computed(()=>({height:`${t.circleSize}px`,width:`${t.circleSize}px`}));return(c,p)=>(e.openBlock(),e.createElementBlock("div",{class:"wrapper-steppy",style:e.normalizeStyle(i.value)},[e.createElementVNode("div",m,[e.createElementVNode("div",k,[e.createElementVNode("div",{class:"steppy-progress-bar",style:e.normalizeStyle("width:"+N.value)},null,4)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs,(l,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["steppy-item",{current:t.step===a+1,success:t.step>a+1}]),key:a},[e.createElementVNode("div",{class:"steppy-item-counter",style:e.normalizeStyle(T.value)},[l.iconSuccess?(e.openBlock(),e.createElementBlock("img",{key:0,class:"icon-success",src:l.iconSuccess,alt:"Check Mark"},null,8,f)):(e.openBlock(),e.createBlock(d,{key:1,class:"icon-success",color:o.primaryColor1,alt:"Check Mark"},null,8,["color"])),e.createElementVNode("span",u,e.toDisplayString(a+1),1)],4),e.createElementVNode("span",S,e.toDisplayString(l.title),1)],2))),128))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs.length,l=>(e.openBlock(),e.createElementBlock("div",{class:"steppy-content",key:l},[t.step===l?(e.openBlock(),e.createElementBlock("div",b,[e.renderSlot(c.$slots,l,{},void 0,!0)])):e.createCommentVNode("",!0)]))),128)),e.createElementVNode("div",_,[t.step!==1?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn",type:"button",onClick:x},e.toDisplayString(t.backText),1)):e.createCommentVNode("",!0),t.step!==t.tabs.length?(e.openBlock(),e.createElementBlock("button",{key:1,class:"btn btn--default-2",type:"button",onClick:z,disabled:!t.tabs[t.step-1].isValid},e.toDisplayString(t.nextText),9,g)):(e.openBlock(),e.createElementBlock("button",{key:2,class:"btn btn--default-2",type:"button",onClick:p[0]||(p[0]=(...l)=>o.finalize&&o.finalize(...l)),disabled:!t.tabs[t.step-1].isValid||o.loading},[o.loading?(e.openBlock(),e.createElementBlock("span",h)):(e.openBlock(),e.createElementBlock("span",E,e.toDisplayString(t.doneText),1))],8,B))])],4))}},C=y(V,[["__scopeId","data-v-8a738045"]]);s.Steppy=C,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})}); |
{ | ||
"name": "vue3-steppy", | ||
"description": "A customizable Vue 3 Stepper plugin", | ||
"version": "1.5.2", | ||
"version": "1.5.3", | ||
"type": "module", | ||
@@ -50,16 +50,16 @@ "private": false, | ||
"dependencies": { | ||
"vue": "^3.4.29" | ||
"vue": "^3.5.8" | ||
}, | ||
"devDependencies": { | ||
"@rushstack/eslint-patch": "^1.10.3", | ||
"@rushstack/eslint-patch": "^1.10.4", | ||
"@vitejs/plugin-vue": "^4.6.2", | ||
"@vue/eslint-config-prettier": "^7.1.0", | ||
"eslint": "^8.57.0", | ||
"eslint-plugin-vue": "^9.26.0", | ||
"eslint": "^8.57.1", | ||
"eslint-plugin-vue": "^9.28.0", | ||
"gh-pages": "^5.0.0", | ||
"prettier": "^2.8.8", | ||
"sass": "^1.77.6", | ||
"sass": "^1.79.3", | ||
"shx": "^0.3.4", | ||
"typescript": "^5.5.2", | ||
"vite": "^4.5.3", | ||
"typescript": "^5.6.2", | ||
"vite": "^4.5.5", | ||
"vite-plugin-css-injected-by-js": "^2.4.0" | ||
@@ -66,0 +66,0 @@ }, |
29226
0.03%Updated