| Current Path : /proc/thread-self/cwd/static/frontend/Magento/blank/it_IT/Magento_Checkout/js/view/ |
| Current File : //proc/thread-self/cwd/static/frontend/Magento/blank/it_IT/Magento_Checkout/js/view/progress-bar.js |
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
define([
'jquery',
'underscore',
'ko',
'uiComponent',
'Magento_Checkout/js/model/step-navigator',
'Magento_Checkout/js/view/billing-address'
], function ($, _, ko, Component, stepNavigator, billingAddress) {
'use strict';
var steps = stepNavigator.steps;
return Component.extend({
defaults: {
template: 'Magento_Checkout/progress-bar',
visible: true
},
steps: steps,
/** @inheritdoc */
initialize: function () {
var stepsValue;
this._super();
window.addEventListener('hashchange', _.bind(stepNavigator.handleHash, stepNavigator));
if (!window.location.hash) {
stepsValue = stepNavigator.steps();
if (stepsValue.length) {
stepNavigator.setHash(stepsValue.sort(stepNavigator.sortItems)[0].code);
}
}
stepNavigator.handleHash();
},
/**
* @param {*} itemOne
* @param {*} itemTwo
* @return {*|Number}
*/
sortItems: function (itemOne, itemTwo) {
return stepNavigator.sortItems(itemOne, itemTwo);
},
/**
* @param {Object} step
*/
navigateTo: function (step) {
if (step.code === 'shipping') {
billingAddress().needCancelBillingAddressChanges();
}
stepNavigator.navigateTo(step.code);
},
/**
* @param {Object} item
* @return {*|Boolean}
*/
isProcessed: function (item) {
return stepNavigator.isProcessed(item.code);
}
});
});