{ "version": 3, "sources": ["subsection_form_tabs_controller-c7509ee3.js"], "sourcesContent": ["import { Controller } from \"@hotwired/stimulus\"\n\nfunction ensureArray(someValue) {\n if (Array.isArray(someValue)) {\n return someValue\n }\n\n return [someValue]\n}\n\nfunction isFieldset(element) {\n return element.nodeName === \"FIELDSET\"\n}\n\nexport default class extends Controller {\n static classes = [ \"hidden\", \"active\" ]\n static targets = [ \"simpleTab\", \"abridgedTab\", \"foldedTab\", \"simpleForm\", \"abridgedForm\", \"foldedForm\" ]\n\n static values = {\n initialTab: { type: String, default: \"simple\" }\n }\n\n connect() {\n if (this.initialTabValue === \"abridged\") {\n this.switchToAbridgedTab()\n } else if (this.initialTabValue === \"folded\") {\n this.switchToFoldedTab()\n } else {\n this.switchToSimpleTab()\n }\n }\n\n switchToSimpleTab() {\n this.#activate(this.simpleTabTarget)\n\n this.#deactivate([\n this.abridgedTabTarget,\n this.foldedTabTarget\n ])\n\n this.#showAndEnable(this.simpleFormTarget)\n\n this.#hideAndDisable([\n this.abridgedFormTarget,\n this.foldedFormTarget\n ])\n }\n\n switchToAbridgedTab() {\n this.#activate(this.abridgedTabTarget)\n\n this.#deactivate([\n this.simpleTabTarget,\n this.foldedTabTarget\n ])\n\n this.#showAndEnable(this.abridgedFormTarget)\n\n this.#hideAndDisable([\n this.simpleFormTarget,\n this.foldedFormTarget\n ])\n }\n\n switchToFoldedTab() {\n this.#activate(this.foldedTabTarget)\n\n this.#deactivate([\n this.simpleTabTarget,\n this.abridgedTabTarget\n ])\n\n this.#showAndEnable(this.foldedFormTarget)\n\n this.#hideAndDisable([\n this.simpleFormTarget,\n this.abridgedFormTarget\n ])\n }\n\n // Private\n #deactivate(targets) {\n const processedTargets = ensureArray(targets)\n processedTargets.forEach((target) => target.classList.remove(this.activeClass))\n }\n\n #activate(targets) {\n const processedTargets = ensureArray(targets)\n processedTargets.forEach((target) => target.classList.add(this.activeClass))\n }\n\n #hideAndDisable(targets) {\n const processedTargets = ensureArray(targets)\n processedTargets.forEach((target) => {\n target.classList.add(this.hiddenClass)\n\n if (isFieldset(target)) {\n target.disabled = true\n }\n })\n }\n\n #showAndEnable(targets) {\n const processedTargets = ensureArray(targets)\n processedTargets.forEach((target) => {\n target.classList.remove(this.hiddenClass)\n\n if (isFieldset(target)) {\n target.disabled = false\n }\n })\n }\n}"], "mappings": "4ZAAA,oEAEA,WAAqB,EAAW,CAC9B,MAAI,OAAM,QAAQ,CAAS,EAClB,EAGF,CAAC,CAAS,CACnB,CAEA,WAAoB,EAAS,CAC3B,MAAO,GAAQ,WAAa,UAC9B,CAEA,qBAAO,SAAsB,EAAW,CAAxC,kCAmEE,UAKA,UAKA,UAWA,UAhFA,SAAU,CACR,AAAI,KAAK,kBAAoB,WAC3B,KAAK,oBAAoB,EACpB,AAAI,KAAK,kBAAoB,SAClC,KAAK,kBAAkB,EAEvB,KAAK,kBAAkB,CAE3B,CAEA,mBAAoB,CAClB,OAAK,KAAL,UAAe,KAAK,iBAEpB,OAAK,KAAL,UAAiB,CACf,KAAK,kBACL,KAAK,eACP,GAEA,OAAK,KAAL,UAAoB,KAAK,kBAEzB,OAAK,KAAL,UAAqB,CACnB,KAAK,mBACL,KAAK,gBACP,EACF,CAEA,qBAAsB,CACpB,OAAK,KAAL,UAAe,KAAK,mBAEpB,OAAK,KAAL,UAAiB,CACf,KAAK,gBACL,KAAK,eACP,GAEA,OAAK,KAAL,UAAoB,KAAK,oBAEzB,OAAK,KAAL,UAAqB,CACnB,KAAK,iBACL,KAAK,gBACP,EACF,CAEA,mBAAoB,CAClB,OAAK,KAAL,UAAe,KAAK,iBAEpB,OAAK,KAAL,UAAiB,CACf,KAAK,gBACL,KAAK,iBACP,GAEA,OAAK,KAAL,UAAoB,KAAK,kBAEzB,OAAK,KAAL,UAAqB,CACnB,KAAK,iBACL,KAAK,kBACP,EACF,CAkCF,CA/BE,gBAAW,SAAC,EAAS,CAEnB,AADyB,EAAY,CAAO,EAC3B,QAAQ,AAAC,GAAW,EAAO,UAAU,OAAO,KAAK,WAAW,CAAC,CAChF,EAEA,gBAAS,SAAC,EAAS,CAEjB,AADyB,EAAY,CAAO,EAC3B,QAAQ,AAAC,GAAW,EAAO,UAAU,IAAI,KAAK,WAAW,CAAC,CAC7E,EAEA,gBAAe,SAAC,EAAS,CAEvB,AADyB,EAAY,CAAO,EAC3B,QAAQ,AAAC,GAAW,CACnC,EAAO,UAAU,IAAI,KAAK,WAAW,EAEjC,EAAW,CAAM,GACnB,GAAO,SAAW,GAEtB,CAAC,CACH,EAEA,gBAAc,SAAC,EAAS,CAEtB,AADyB,EAAY,CAAO,EAC3B,QAAQ,AAAC,GAAW,CACnC,EAAO,UAAU,OAAO,KAAK,WAAW,EAEpC,EAAW,CAAM,GACnB,GAAO,SAAW,GAEtB,CAAC,CACH,EAhGO,EADT,EACS,UAAU,CAAE,SAAU,QAAS,GAC/B,EAFT,EAES,UAAU,CAAE,YAAa,cAAe,YAAa,aAAc,eAAgB,YAAa,GAEhG,EAJT,EAIS,SAAS,CACd,WAAY,CAAE,KAAM,OAAQ,QAAS,QAAS,CAChD", "names": [] }