{"version":3,"file":"jquery-steps.js","sources":["../src/Defaults.js","../src/Steps.js","../src/Plugin.js"],"sourcesContent":["export default {\n startAt: 0,\n showBackButton: true,\n showFooterButtons: true,\n onInit: $.noop,\n onDestroy: $.noop,\n onFinish: $.noop,\n onChange() {\n return true;\n },\n stepSelector: '.step-steps',\n contentSelector: '.step-content',\n footerSelector: '.step-footer',\n activeClass: 'active',\n doneClass: 'done',\n errorClass: 'error',\n};\n","import $ from 'jquery';\nimport DEFAULTS from './Defaults';\n\nclass Steps {\n constructor(element, options) {\n // Extend defaults with the init options.\n this.options = $.extend({}, DEFAULTS, options);\n\n // Store main DOM element.\n this.el = $(element);\n\n this.selectors = {\n step: `${this.options.stepSelector} [data-step-target]`,\n footer: `${this.options.footerSelector} [data-step-action]`,\n content: `${this.options.contentSelector} [data-step]`,\n };\n\n // Initialize\n this.init();\n }\n\n stepClick(e) {\n e.preventDefault();\n const { self } = e.data;\n const all = self.el.find(self.selectors.step);\n const next = e.currentTarget;\n const nextStepIndex = all.index(next);\n const currentStepIndex = e.data.self.getStepIndex();\n e.data.self.setActiveStep(currentStepIndex, nextStepIndex);\n }\n\n btnClick(e) {\n e.preventDefault();\n const statusAction = $(this).data('step-action');\n e.data.self.setAction(statusAction);\n }\n\n init() {\n this.hook('onInit');\n\n this.initEventListeners();\n\n // set default step\n this.setActiveStep(0, this.options.startAt, true);\n\n // show footer buttons\n if (!this.options.showFooterButtons) {\n this.hideFooterButtons();\n this.updateFooterButtons = $.noop;\n }\n }\n\n initEventListeners() {\n // step click event\n $(this.el)\n .find(this.selectors.step)\n .on('click', { self: this }, this.stepClick);\n\n // button click event\n $(this.el)\n .find(this.selectors.footer)\n .on('click', { self: this }, this.btnClick);\n }\n\n hook(hookName) {\n if (this.options[hookName] !== undefined) {\n this.options[hookName].call(this.el);\n }\n }\n\n destroy() {\n this.hook('onDestroy');\n $(this.el).find(this.selectors.step).off('click');\n $(this.el).find(this.selectors.footer).off('click');\n this.el.removeData('plugin_Steps');\n this.el.remove();\n }\n\n getStepIndex() {\n const all = this.el.find(this.selectors.step);\n const activeClass = this.options.activeClass.split(' ').join('.');\n const stepIndex = all.index(all.filter(`.${activeClass}`));\n return stepIndex;\n }\n\n getMaxStepIndex() {\n return this.el.find(this.selectors.step).length - 1;\n }\n\n getStepDirection(stepIndex, newIndex) {\n let direction = 'none';\n if (newIndex < stepIndex) {\n direction = 'backward';\n } else if (newIndex > stepIndex) {\n direction = 'forward';\n }\n return direction;\n }\n\n setShowStep(idx, removeClass, addClass = '') {\n const $targetStep = this.el.find(this.selectors.step).eq(idx);\n $targetStep.removeClass(removeClass).addClass(addClass);\n\n const $tabContent = this.el.find(this.selectors.content);\n $tabContent\n .removeClass(this.options.activeClass)\n .eq(idx)\n .addClass(this.options.activeClass);\n }\n\n setActiveStep(currentIndex, newIndex, init = false) {\n if (newIndex !== currentIndex || init) {\n const conditionDirection =\n newIndex > currentIndex\n ? (start) => start <= newIndex\n : (start) => start >= newIndex;\n\n // prettier-ignore\n const conditionIncrementOrDecrement = (newIndex > currentIndex)\n ? (start) => start + 1\n : (start) => start - 1;\n\n let i = currentIndex;\n while (conditionDirection(i)) {\n const stepDirection = this.getStepDirection(i, newIndex);\n this.updateStep(i, newIndex, stepDirection);\n const validStep = this.isValidStep(i, newIndex, stepDirection);\n if (!validStep) {\n this.updateStep(i, newIndex, stepDirection, validStep);\n i = newIndex;\n }\n i = conditionIncrementOrDecrement(i);\n }\n this.updateFooterButtons();\n }\n }\n\n updateStep(currentIndex, newIndex, direction, isValidStep = true) {\n if (currentIndex === newIndex) {\n this.setShowStep(\n currentIndex,\n this.options.doneClass,\n this.options.activeClass,\n );\n } else if (isValidStep) {\n const checkDone = direction === 'forward' && this.options.doneClass;\n this.setShowStep(\n currentIndex,\n `${this.options.activeClass} ${this.options.errorClass} ${this.options.doneClass}`,\n checkDone,\n );\n } else {\n this.setShowStep(\n currentIndex,\n this.options.doneClass,\n `${this.options.activeClass} ${this.options.errorClass}`,\n );\n }\n }\n\n isValidStep(currentIndex, newIndex, direction) {\n return this.options.onChange(currentIndex, newIndex, direction);\n }\n\n updateFooterButtons() {\n const currentStepIndex = this.getStepIndex();\n const maxStepIndex = this.getMaxStepIndex();\n\n const $footer = this.el.find(this.selectors.footer);\n\n const $prevButton = $footer.filter('[data-step-action=\"prev\"]');\n const $nextButton = $footer.filter('[data-step-action=\"next\"]');\n const $finishButton = $footer.filter('[data-step-action=\"finish\"]');\n\n // hide prev button if current step is the first step\n if (currentStepIndex === 0) {\n $prevButton.hide();\n } else {\n $prevButton.show();\n }\n\n // hide forward button and show finish button if current step is the last step\n if (currentStepIndex === maxStepIndex) {\n $nextButton.hide();\n $finishButton.show();\n } else {\n $nextButton.show();\n $finishButton.hide();\n }\n\n // hide back button if showBackButton option is false\n if (!this.options.showBackButton) {\n $prevButton.hide();\n }\n }\n\n setAction(action) {\n const currentStepIndex = this.getStepIndex();\n let nextStep = currentStepIndex;\n if (action === 'prev') {\n nextStep -= 1;\n }\n if (action === 'next') {\n nextStep += 1;\n }\n if (action === 'finish') {\n const validStep = this.isValidStep(currentStepIndex, nextStep, 'forward');\n if (validStep) {\n this.hook('onFinish');\n } else {\n this.setShowStep(currentStepIndex, '', this.options.errorClass);\n }\n } else {\n this.setActiveStep(currentStepIndex, nextStep);\n }\n }\n\n setStepIndex(idx) {\n const maxIndex = this.getMaxStepIndex();\n if (idx <= maxIndex) {\n const currentStepIndex = this.getStepIndex();\n this.setActiveStep(currentStepIndex, idx);\n }\n }\n\n next() {\n const currentStepIndex = this.getStepIndex();\n const maxIndex = this.getMaxStepIndex();\n return maxIndex === currentStepIndex\n ? this.setAction('finish')\n : this.setAction('next');\n }\n\n prev() {\n const currentStepIndex = this.getStepIndex();\n return currentStepIndex !== 0 && this.setAction('prev');\n }\n\n finish() {\n this.hook('onFinish');\n }\n\n hideFooterButtons() {\n this.el.find(this.selectors.footer).hide();\n }\n\n static setDefaults(options) {\n $.extend(DEFAULTS, $.isPlainObject(options) && options);\n }\n}\n\nexport default Steps;\n","import $ from 'jquery';\nimport Steps from './Steps';\nimport { version } from '../package.json';\n\nconst previousStepsPlugin = $.fn.steps;\n\n$.fn.steps = function (options) {\n return this.each(function () {\n if (!$.data(this, 'plugin_Steps')) {\n $.data(this, 'plugin_Steps', new Steps(this, options));\n }\n });\n};\n\n$.fn.steps.version = version;\n$.fn.steps.setDefaults = Steps.setDefaults;\n\n// No conflict\n$.fn.steps.noConflict = function () {\n $.fn.steps = previousStepsPlugin;\n return this;\n};\n"],"names":["startAt","showBackButton","showFooterButtons","onInit","$","noop","onDestroy","onFinish","onChange","stepSelector","contentSelector","footerSelector","activeClass","doneClass","errorClass","Steps","element","options","extend","DEFAULTS","el","selectors","step","footer","content","init","e","preventDefault","self","data","all","find","next","currentTarget","nextStepIndex","index","currentStepIndex","getStepIndex","setActiveStep","statusAction","setAction","hook","initEventListeners","hideFooterButtons","updateFooterButtons","on","stepClick","btnClick","hookName","undefined","call","off","removeData","remove","split","join","stepIndex","filter","length","newIndex","direction","idx","removeClass","addClass","$targetStep","eq","$tabContent","currentIndex","conditionDirection","start","conditionIncrementOrDecrement","i","stepDirection","getStepDirection","updateStep","validStep","isValidStep","setShowStep","checkDone","maxStepIndex","getMaxStepIndex","$footer","$prevButton","$nextButton","$finishButton","hide","show","action","nextStep","maxIndex","isPlainObject","previousStepsPlugin","fn","steps","each","version","setDefaults","noConflict"],"mappings":"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"}