PageSourceSearch

https://www.labello.com/dist/NiveaX/modules/RoutineBuilderSelectio…outineBuilderSelectionValidator.91f5f94d.js

js labello.com collected 2026-10-02 12:42:26 UTC 3,211 bytes, 2 lines download raw bytes

1"use strict";(self.NiveaXwebpackJsonp=self.NiveaXwebpackJsonp||[]).push([[6040],{59082:(t,e,i)=>{i.r(e),i.d(e,{default:()=>s});class s{constructor(t,e={}){this.element=t,this.options=e,this.errorElement=Array.from(this.element.querySelectorAll(".nx-error__item")),this.RoutineBuilderSelectionValidatorStep=new r(this.element,this.options),this.init()}init(){return this.alpacaListener(),this.clickHandler(),this}routineBuilderSelectionValidatorStep(t,e){let i=this.RoutineBuilderSelectionValidatorStep.validateRoutineBuilderSelectionItems(t,e);return i?this.RoutineBuilderSelectionValidatorStep.validStep(e):this.RoutineBuilderSelectionValidatorStep.invalidStep(e),i}clickHandler(){return this.errorElement.forEach(t=>{t.addEventListener("click",()=>this.toggleErrorClass(t))}),this}alpacaListener(){return document.addEventListener("alpaca:forms:form-validated",t=>{!t.detail.isValid&&this.scrollToInvalidStep()}),this}toggleErrorClass(t){return t.classList.toggle("nx-error__item--open"),this}scrollToInvalidStep(){return this.setValidationStepClasses(),this.invalidStep()&&this.invalidStep().scrollIntoView({behavior:"smooth"}),this}invalidStepsList(){return Array.from(document.querySelectorAll(`.${this.options.routineBuilderStepClass}:not(.nx-valid)`))}invalidStep(){return this.invalidStepsList().length>0&&this.invalidStepsList()[0]}setValidationStepClasses(){return Array.from(this.invalidStepsList()).forEach(t=>t.classList.add("nx-invalid")),this}}class r{constructor(t,e={}){this.element=t,this.options=e}validateRoutineBuilderSelectionItems(t,e){const i=this.validateRoutineBuilderSelection(t.ProductID,e,"nx-routine-builder__error"),s=""===t.Options||this.validateRoutineBuilderSelection(this.validateOptionSelection(t,e),e,"nx-weekday-picker__error");return!(!i||!s)}validateOptionSelection(t,e){return t.Options[0]&&this.validateMinOptionSelection(t,e)}validateMinOptionSelection(t,e){return this.getMinSelection(e)<=t.Options.length}getMinSelection(t){return Number(t.querySelector(".nx-weekday-picker").getAttribute("data-min-selected"))}validStep(t){return this.removeInvalidClassFromStep(t),this.addClassToValidStep(t),this}invalidStep(t){return this.removeValidClassFromStep(t),this.addClassToInvalidStep(t),this}validateRoutineBuilderSelection(t,e,i){return t?this.hideErrorItem(e,i):this.showErrorItem(e,i),!!t}addClassToValidStep(t){return t.classList.add(`${this.options.validClass}`)}addClassToInvalidStep(t){return t.classList.add(`${this.options.invalidClass}`)}removeInvalidClassFromStep(t){return t.classList.contains(`${this.options.invalidClass}`)&&t.classList.remove(`${this.options.invalidClass}`)}removeValidClassFromStep(t){return t.classList.contains(`${this.options.validClass}`)&&t.classList.remove(`${this.options.validClass}`)}hideErrorItem(t,e){return t.querySelector(`.${e}`).classList.add(`${this.options.hiddenClass}`)}showErrorItem(t,e){var i;return t.querySelector(`.${e}`).classList.contains(`${this.options.hiddenClass}`)&&(null===(i=t.querySelector(`.${e}`))||void 0===i?void 0:i.classList.remove(`${this.options.hiddenClass}`))}}}}]);
2//# sourceMappingURL=/dist/NiveaX/./modules/RoutineBuilderSelection-RoutineBuilderSelectionValidator.91f5f94d.js.28ac2634.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.