{"version":3,"file":"js/decidim_forms-21bfe614e93de97b2243.js","mappings":"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","sources":["webpack://app/../usr/local/bundle/gems/decidim-forms-0.27.5/app/packs/images/ sync ^\\.\\/.*$","webpack://app/webpack/bootstrap","webpack://app/webpack/runtime/hasOwnProperty shorthand","webpack://app/webpack/runtime/publicPath","webpack://app/../usr/local/bundle/gems/decidim-forms-0.27.5/app/packs/src/decidim/forms/option_attached_inputs.component.js","webpack://app/../usr/local/bundle/gems/decidim-forms-0.27.5/app/packs/src/decidim/forms/autosortable_checkboxes.component.js","webpack://app/../usr/local/bundle/gems/decidim-forms-0.27.5/app/packs/src/decidim/forms/display_conditions.component.js","webpack://app/../usr/local/bundle/gems/decidim-forms-0.27.5/app/packs/src/decidim/forms/max_choices_alert.component.js","webpack://app/../usr/local/bundle/gems/decidim-forms-0.27.5/app/packs/src/decidim/forms/forms.js","webpack://app/../usr/local/bundle/gems/decidim-forms-0.27.5/app/packs/entrypoints/decidim_forms.js"],"sourcesContent":["var map = {\n\t\"./decidim/surveys/decidim_surveys.svg\": 573\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 50429;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","__webpack_require__.p = \"/decidim-packs/\";","/* eslint-disable require-jsdoc */\n\nclass OptionAttachedInputsComponent {\n constructor(options = {}) {\n this.wrapperField = options.wrapperField;\n this.controllerFieldSelector = options.controllerFieldSelector;\n this.dependentInputSelector = options.dependentInputSelector;\n this.controllerSelector = this.wrapperField.find(this.controllerFieldSelector);\n this._bindEvent();\n this._run();\n }\n\n _run() {\n this.controllerSelector.each((idx, el) => {\n const $field = $(el);\n const enabled = $field.is(\":checked\");\n\n $field.parents(\"div.collection-input\").find(this.dependentInputSelector).prop(\"disabled\", !enabled);\n });\n }\n\n _bindEvent() {\n this.controllerSelector.on(\"change\", () => {\n this._run();\n });\n }\n}\n\nexport default function createOptionAttachedInputs(options) {\n return new OptionAttachedInputsComponent(options);\n}\n","/* eslint-disable require-jsdoc */\n/* eslint-disable no-ternary */\n\nclass AutosortableCheckboxesComponent {\n constructor(options = {}) {\n this.wrapperField = options.wrapperField;\n this._bindEvent();\n this._order();\n this._normalize();\n }\n\n // Order by position\n _order() {\n const max = $(this.wrapperField).find(\".collection-input\").length;\n $(this.wrapperField).find(\".collection-input\").each((idx, el) => {\n const $positionField = $(el).find(\"input[name$=\\\\[position\\\\]]\");\n const position = $positionField.val()\n ? parseInt($positionField.val(), 10)\n : max;\n\n let $next = $(el).next();\n while ($next.length > 0) {\n const $nextPositionField = $next.find(\"input[name$=\\\\[position\\\\]]\");\n const nextPosition = $nextPositionField.val()\n ? parseInt($nextPositionField.val(), 10)\n : max;\n\n if (position > nextPosition) {\n $next.insertBefore($(el));\n }\n $next = $next.next();\n }\n });\n }\n\n _findLastPosition() {\n let lastPosition = 0;\n $(this.wrapperField).find(\".collection-input\").each((idx, el) => {\n const $positionField = $(el).find(\"input[name$=\\\\[position\\\\]]\");\n const position = parseInt($positionField.val(), 10);\n if (position > lastPosition) {\n lastPosition = position;\n }\n });\n return lastPosition;\n }\n\n _normalize() {\n $(this.wrapperField).find(\".collection-input .position\").each((idx, el) => {\n const $positionField = $(el).parent().find(\"input[name$=\\\\[position\\\\]]\");\n if ($positionField.val()) {\n $positionField.val(idx);\n $positionField.prop(\"disabled\", false);\n $(el).html(`${idx + 1}. `);\n }\n });\n }\n\n _bindEvent() {\n $(this.wrapperField).find(\"input[type=checkbox]\").on(\"change\", (el) => {\n const $parentLabel = $(el.target).parents(\"label\");\n const $positionSelector = $parentLabel.find(\".position\");\n const $positionField = $parentLabel.find(\"input[name$=\\\\[position\\\\]]\");\n const lastPosition = this._findLastPosition();\n\n if (el.target.checked) {\n $positionField.val(lastPosition + 1);\n $positionField.prop(\"disabled\", false);\n $positionSelector.html(lastPosition + 1);\n } else {\n $positionField.val(\"\");\n $positionField.prop(\"disabled\", true);\n $positionSelector.html(\"\");\n }\n this._order();\n this._normalize();\n });\n }\n}\n\nexport default function createAutosortableCheckboxes(options) {\n return new AutosortableCheckboxesComponent(options);\n}\n","/* eslint-disable no-ternary, no-plusplus, require-jsdoc */\n\nclass DisplayCondition {\n constructor(options = {}) {\n this.wrapperField = options.wrapperField;\n this.type = options.type;\n this.conditionQuestion = options.conditionQuestion;\n this.answerOption = options.answerOption;\n this.mandatory = options.mandatory;\n this.value = options.value;\n this.onFulfilled = options.onFulfilled;\n this.bindEvent();\n }\n\n bindEvent() {\n this.checkCondition();\n this.getInputsToListen().on(\"change\", this.checkCondition.bind(this));\n }\n\n getInputValue() {\n const $conditionWrapperField = $(`.question[data-question-id='${this.conditionQuestion}']`);\n const $textInput = $conditionWrapperField.find(\"textarea, input[type='text']:not([name$=\\\\[custom_body\\\\]])\");\n\n if ($textInput.length) {\n return $textInput.val();\n }\n\n let multipleInput = [];\n\n $conditionWrapperField.find(\".radio-button-collection, .check-box-collection\").find(\".collection-input\").each((idx, el) => {\n const $input = $(el).find(\"input[name$=\\\\[body\\\\]]\");\n const checked = $input.is(\":checked\");\n\n if (checked) {\n const text = $(el).find(\"input[name$=\\\\[custom_body\\\\]]\").val();\n const value = $input.val();\n const id = $(el).find(\"input[name$=\\\\[answer_option_id\\\\]]\").val();\n\n multipleInput.push({ id, value, text });\n }\n });\n\n return multipleInput;\n }\n\n getInputsToListen() {\n const $conditionWrapperField = $(`.question[data-question-id='${this.conditionQuestion}']`);\n const $textInput = $conditionWrapperField.find(\"textarea, input[type='text']:not([name$=\\\\[custom_body\\\\]])\");\n\n if ($textInput.length) {\n return $textInput;\n }\n\n return $conditionWrapperField.find(\".collection-input\").find(\"input:not([type='hidden'])\");\n }\n\n checkAnsweredCondition(value) {\n if (typeof (value) !== \"object\") {\n return Boolean(value);\n }\n\n return Boolean(value.some((it) => it.value));\n }\n\n checkNotAnsweredCondition(value) {\n return !this.checkAnsweredCondition(value);\n }\n\n checkEqualCondition(value) {\n if (value.length) {\n return value.some((it) => it.id === this.answerOption.toString());\n }\n return false;\n }\n\n checkNotEqualCondition(value) {\n if (value.length) {\n return value.every((it) => it.id !== this.answerOption.toString());\n }\n return false;\n }\n\n checkMatchCondition(value) {\n let regexp = new RegExp(this.value, \"i\");\n\n if (typeof (value) !== \"object\") {\n return Boolean(value.match(regexp));\n }\n\n return value.some(function (it) {\n return it.text\n ? it.text.match(regexp)\n : it.value.match(regexp)\n });\n }\n\n checkCondition() {\n const value = this.getInputValue();\n let fulfilled = false;\n\n switch (this.type) {\n case \"answered\":\n fulfilled = this.checkAnsweredCondition(value);\n break;\n case \"not_answered\":\n fulfilled = this.checkNotAnsweredCondition(value);\n break;\n case \"equal\":\n fulfilled = this.checkEqualCondition(value);\n break;\n case \"not_equal\":\n fulfilled = this.checkNotEqualCondition(value);\n break;\n case \"match\":\n fulfilled = this.checkMatchCondition(value);\n break;\n default:\n fulfilled = false;\n break;\n }\n\n this.onFulfilled(fulfilled);\n }\n}\n\nclass DisplayConditionsComponent {\n constructor(options = {}) {\n this.wrapperField = options.wrapperField;\n this.conditions = {};\n this.showCount = 0;\n this.initializeConditions();\n }\n\n initializeConditions() {\n const $conditionElements = this.wrapperField.find(\".display-condition\");\n\n $conditionElements.each((idx, el) => {\n const $condition = $(el);\n const id = $condition.data(\"id\");\n this.conditions[id] = {};\n\n this.conditions[id] = new DisplayCondition({\n wrapperField: this.wrapperField,\n type: $condition.data(\"type\"),\n conditionQuestion: $condition.data(\"condition\"),\n answerOption: $condition.data(\"option\"),\n mandatory: $condition.data(\"mandatory\"),\n value: $condition.data(\"value\"),\n onFulfilled: (fulfilled) => {\n this.onFulfilled(id, fulfilled);\n }\n });\n });\n }\n\n mustShow() {\n const conditions = Object.values(this.conditions);\n const mandatoryConditions = conditions.filter((condition) => condition.mandatory);\n const nonMandatoryConditions = conditions.filter((condition) => !condition.mandatory);\n\n if (mandatoryConditions.length) {\n return mandatoryConditions.every((condition) => condition.fulfilled);\n }\n\n return nonMandatoryConditions.some((condition) => condition.fulfilled);\n\n }\n\n onFulfilled(id, fulfilled) {\n this.conditions[id].fulfilled = fulfilled;\n\n if (this.mustShow()) {\n this.showQuestion();\n }\n else {\n this.hideQuestion();\n }\n }\n\n showQuestion() {\n this.wrapperField.fadeIn();\n this.wrapperField.find(\"input, textarea\").prop(\"disabled\", null);\n this.showCount++;\n }\n\n hideQuestion() {\n if (this.showCount) {\n this.wrapperField.fadeOut();\n }\n else {\n this.wrapperField.hide();\n }\n\n this.wrapperField.find(\"input, textarea\").prop(\"disabled\", \"disabled\");\n }\n}\n\nexport default function createDisplayConditions(options) {\n return new DisplayConditionsComponent(options);\n}\n","/* eslint-disable require-jsdoc */\n\nclass MaxChoicesAlertComponent {\n constructor(options = {}) {\n this.wrapperField = options.wrapperField;\n this.alertElement = options.alertElement;\n this.controllerFieldSelector = options.controllerFieldSelector;\n this.controllerCollectionSelector = options.controllerCollectionSelector;\n this.maxChoices = options.maxChoices;\n this.controllerSelector = this.wrapperField.find(this.controllerFieldSelector);\n this._bindEvent();\n this._run();\n }\n\n _run() {\n const rows = this.wrapperField.find(this.controllerCollectionSelector);\n\n let alert = false;\n\n rows.each((rowIdx, row) => {\n const checked = $(row).find(this.controllerFieldSelector).filter((checkboxIdx, checkbox) => $(checkbox).is(\":checked\"));\n\n alert = alert || checked.length > this.maxChoices;\n });\n\n if (alert) {\n this.alertElement.show();\n }\n else {\n this.alertElement.hide();\n }\n }\n\n _bindEvent() {\n this.controllerSelector.on(\"change\", () => {\n this._run();\n });\n }\n}\n\nexport default function createMaxChoicesAlertComponent(options) {\n return new MaxChoicesAlertComponent(options);\n}\n","/* eslint-disable require-jsdoc */\n\nimport createOptionAttachedInputs from \"src/decidim/forms/option_attached_inputs.component\"\nimport createAutosortableCheckboxes from \"src/decidim/forms/autosortable_checkboxes.component\"\nimport createDisplayConditions from \"src/decidim/forms/display_conditions.component\"\nimport createMaxChoicesAlertComponent from \"src/decidim/forms/max_choices_alert.component\"\n\n$(() => {\n $(\".radio-button-collection, .check-box-collection\").each((idx, el) => {\n createOptionAttachedInputs({\n wrapperField: $(el),\n controllerFieldSelector: \"input[type=radio], input[type=checkbox]\",\n dependentInputSelector: \"input[type=text], input[type=hidden]\"\n });\n });\n\n $.unique($(\".check-box-collection\").parents(\".answer\")).each((idx, el) => {\n const maxChoices = $(el).data(\"max-choices\");\n if (maxChoices) {\n createMaxChoicesAlertComponent({\n wrapperField: $(el),\n controllerFieldSelector: \"input[type=checkbox]\",\n controllerCollectionSelector: \".check-box-collection\",\n alertElement: $(el).find(\".max-choices-alert\"),\n maxChoices: maxChoices\n });\n }\n });\n\n $(\".sortable-check-box-collection\").each((idx, el) => {\n createAutosortableCheckboxes({\n wrapperField: $(el)\n })\n });\n\n $(\".answer-questionnaire .question[data-conditioned='true']\").each((idx, el) => {\n createDisplayConditions({\n wrapperField: $(el)\n });\n });\n\n const $form = $(\"form.answer-questionnaire\");\n if ($form.length > 0) {\n $form.find(\"input, textarea, select\").on(\"change\", () => {\n $form.data(\"changed\", true);\n });\n\n const safePath = $form.data(\"safe-path\").split(\"?\")[0];\n $(document).on(\"click\", \"a\", (event) => {\n window.exitUrl = event.currentTarget.href;\n });\n $(document).on(\"submit\", \"form\", (event) => {\n window.exitUrl = event.currentTarget.action;\n });\n\n window.addEventListener(\"beforeunload\", (event) => {\n const exitUrl = window.exitUrl;\n const hasChanged = $form.data(\"changed\");\n window.exitUrl = null;\n\n if (!hasChanged || (exitUrl && exitUrl.includes(safePath))) {\n return;\n }\n\n event.returnValue = true;\n });\n }\n})\n","import \"src/decidim/forms/forms\"\n\n// Images\nrequire.context(\"../images\", true)\n"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","__webpack_module_cache__","moduleId","cachedModule","undefined","__webpack_modules__","obj","prop","prototype","hasOwnProperty","call","p","OptionAttachedInputsComponent","options","arguments","length","_classCallCheck","this","wrapperField","controllerFieldSelector","dependentInputSelector","controllerSelector","find","_bindEvent","_run","key","value","_this","each","idx","el","$field","$","enabled","is","parents","_this2","on","AutosortableCheckboxesComponent","_order","_normalize","max","$positionField","position","val","parseInt","$next","next","$nextPositionField","insertBefore","lastPosition","parent","html","concat","$parentLabel","target","$positionSelector","_findLastPosition","checked","DisplayCondition","type","conditionQuestion","answerOption","mandatory","onFulfilled","bindEvent","_createClass","checkCondition","getInputsToListen","bind","$conditionWrapperField","$textInput","multipleInput","$input","text","push","_typeof","Boolean","some","it","checkAnsweredCondition","toString","every","regexp","RegExp","match","getInputValue","fulfilled","checkNotAnsweredCondition","checkEqualCondition","checkNotEqualCondition","checkMatchCondition","DisplayConditionsComponent","conditions","showCount","initializeConditions","_this3","$condition","data","values","mandatoryConditions","filter","condition","nonMandatoryConditions","mustShow","showQuestion","hideQuestion","fadeIn","fadeOut","hide","MaxChoicesAlertComponent","alertElement","controllerCollectionSelector","maxChoices","rows","alert","rowIdx","row","checkboxIdx","checkbox","show","unique","$form","safePath","split","document","event","window","exitUrl","currentTarget","href","action","addEventListener","hasChanged","includes","returnValue","require"],"sourceRoot":""}