{"version":3,"file":"product_controller-CKay149s.js","sources":["../../../app/javascript/controllers/step/condition/product_controller.js"],"sourcesContent":["import ProductController from \"../../segments/product_controller\"\n\nexport default class extends ProductController {\n static targets = [\"nameFilter\", \"priceFilter\", \"option\", \"newConditionButton\"]\n static values = {\n duplicate: { type: String, default: \"name\" },\n stepId: String,\n removeForm: { type: Boolean, default: true },\n }\n\n connect() {\n this.activeCategory = this.categoryValue\n\n if (this.formTarget.classList.contains(\"hidden\") === false) {\n this.activeCategory = \"\"\n this.categoryValue = \"\"\n }\n\n super.connect()\n }\n\n saveState({ detail }) {\n if (detail.stepId !== this.stepIdValue) return\n\n this.nameInputTargets.forEach((input) => {\n input.setAttribute(\"data-saved-state\", input.value)\n })\n\n this.priceInputTargets.forEach((input) => {\n input.setAttribute(\"data-saved-state\", input.value)\n })\n\n if (this.formTarget.classList.contains(\"hidden\") === false) {\n this.optionValue = this.activeFilterId\n this.categoryValue = this.activeCategory\n } else {\n this.optionValue = \"\"\n this.categoryValue = \"\"\n }\n }\n\n restoreSavedState({ detail: stepId }) {\n if (stepId !== this.stepIdValue) return\n\n this.nameInputTargets.forEach((input) => {\n input.value = input.dataset.savedState\n })\n\n this.priceInputTargets.forEach((input) => {\n input.value = input.dataset.savedState\n })\n\n if (this.categoryValue) {\n this.formTarget.classList.remove(\"hidden\")\n this.buttonTarget.classList.add(\"hidden\")\n\n if (this.categoryValue === \"name\") {\n this.showNameSection()\n this.nameTriggerTarget.click()\n } else {\n this.showPriceSection()\n this.priceTriggerTarget.click()\n }\n }\n\n this.optionTargets\n .find((el) => el.dataset.optionValue === this.optionValue)\n ?.click()\n }\n\n setActiveFilter({ target }) {\n this.activeFilterId = target.dataset.optionValue\n this.activeCategory = target.dataset.optionCategory\n }\n\n disableSubmit() {\n if (this.activeCategory === \"name\" && this.hasEmptyNameInput) {\n this.dispatch(\"disable-submit\")\n }\n\n if (this.activeCategory === \"price\" && this.hasEmptyPriceInput) {\n this.dispatch(\"disable-submit\")\n }\n\n if (this.activeCategory === \"\") {\n this.dispatch(\"disable-submit\")\n }\n }\n\n syncConditionFilters(e) {\n this.clauseDropdowns.forEach((dropdown) => {\n this.dispatch(\"dropdown:set\", {\n target: dropdown,\n detail: e.currentTarget.value,\n })\n })\n }\n\n syncExtraConditionButtonState() {\n this.disableAddConditionButton(this.activeCategory)\n }\n\n remove(e) {\n if (this.removeFormValue) {\n super.remove(e)\n return\n }\n\n this.disabledNameInputs()\n this.disabledPriceInputs()\n\n this.activeFilterId = \"\"\n this.activeCategory = \"\"\n\n this.formTarget.classList.add(\"hidden\")\n this.buttonTarget.classList.remove(\"hidden\")\n\n this.dispatch(\"enableSubmit\")\n }\n\n // private\n\n get hasEmptyNameInput() {\n return (\n this.nameInputTargets.filter(\n (input) => !input.disabled && input.value.trim().length === 0\n ).length > 0\n )\n }\n\n get hasEmptyPriceInput() {\n return (\n this.priceInputTargets.filter(\n (input) => !input.disabled && input.value.trim().length === 0\n ).length > 0\n )\n }\n\n get clauseDropdowns() {\n return [\n this.nameFilterTarget.querySelector(\n \"[data-controller='custom-dropdown']\"\n ),\n this.priceFilterTarget.querySelector(\n \"[data-controller='custom-dropdown']\"\n ),\n ...this.element.querySelectorAll(\n \"[data-clone] [data-controller='custom-dropdown']\"\n ),\n ]\n }\n}\n"],"names":["product_controller","ProductController","detail","input","stepId","_a","el","target","e","dropdown","__publicField"],"mappings":"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"}