{"version":3,"file":"js/petition-flag-48cfaedf4f39daa6546d.chunk.js","mappings":"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","sources":["webpack://agra/./node_modules/form-request-submit-polyfill/form-request-submit-polyfill.js","webpack://agra/./app/javascript/components/modal.vue","webpack://agra/./app/javascript/components/modal.vue?daec","webpack://agra/./app/javascript/components/toast.vue","webpack://agra/./app/javascript/components/toast.vue?dead","webpack://agra/./app/javascript/components/inputs/text-input.vue","webpack://agra/./app/javascript/components/inputs/text-input.vue?e1aa","webpack://agra/./app/javascript/components/buttons/link-button.vue","webpack://agra/./app/javascript/components/buttons/link-button.vue?a3b9","webpack://agra/./app/javascript/components/inputs/bot-protection-disclaimer.vue","webpack://agra/./app/javascript/components/inputs/bot-protection-disclaimer.vue?7a0d","webpack://agra/./node_modules/@hcaptcha/vue3-hcaptcha/dist/hcaptcha-vue3.es.js","webpack://agra/./node_modules/vue-loader/dist/exportHelper.js","webpack://agra/./app/javascript/petition/flag.vue","webpack://agra/./app/javascript/petition/flag.vue?51c0","webpack://agra/./app/javascript/components/alert.vue","webpack://agra/./app/javascript/components/alert.vue?be3d","webpack://agra/./app/javascript/components/inputs/validation-errors.vue","webpack://agra/./app/javascript/components/inputs/validation-errors.vue?c863","webpack://agra/./app/javascript/components/buttons/primary-button.vue","webpack://agra/./app/javascript/components/buttons/primary-button.vue?ee67","webpack://agra/./app/javascript/components/modal-action-form.vue","webpack://agra/./app/javascript/components/modal-action-form.vue?c575","webpack://agra/./app/javascript/components/buttons/submit-button.vue","webpack://agra/./app/javascript/components/buttons/submit-button.vue?ffe8","webpack://agra/./app/javascript/components/required.vue","webpack://agra/./app/javascript/components/required.vue?43d5"],"sourcesContent":["(function(prototype) {\n  if (typeof prototype.requestSubmit == \"function\") return\n\n  prototype.requestSubmit = function(submitter) {\n    if (submitter) {\n      validateSubmitter(submitter, this)\n      submitter.click()\n    } else {\n      submitter = document.createElement(\"input\")\n      submitter.type = \"submit\"\n      submitter.hidden = true\n      this.appendChild(submitter)\n      submitter.click()\n      this.removeChild(submitter)\n    }\n  }\n\n  function validateSubmitter(submitter, form) {\n    submitter instanceof HTMLElement || raise(TypeError, \"parameter 1 is not of type 'HTMLElement'\")\n    submitter.type == \"submit\" || raise(TypeError, \"The specified element is not a submit button\")\n    submitter.form == form || raise(DOMException, \"The specified element is not owned by this form element\", \"NotFoundError\")\n  }\n\n  function raise(errorConstructor, message, name) {\n    throw new errorConstructor(\"Failed to execute 'requestSubmit' on 'HTMLFormElement': \" + message + \".\", name)\n  }\n})(HTMLFormElement.prototype);\n","<template>\n  <div :id=\"modalId\" ref=\"root\" tabindex=\"-1\" role=\"dialog\" class=\"modal fade\">\n    <div class=\"modal-dialog\" :class=\"modalSizeClass\" role=\"document\">\n      <div class=\"modal-content\">\n        <div v-if=\"!headerless\" class=\"modal-header\">\n          <slot name=\"header\">\n            <h4 v-if=\"title\" class=\"modal-title mt-0\">\n              <slot name=\"title\">\n                {{ title }}\n              </slot>\n            </h4>\n            <button type=\"button\" class=\"btn-close\" :aria-label=\"i18n.t('close')\" @click=\"close\" />\n          </slot>\n        </div>\n        <div class=\"sub-heading\">\n          <slot name=\"sub-heading\" />\n        </div>\n        <div class=\"modal-body\" :class=\"{'paddingless-body': paddinglessBody}\">\n          <slot name=\"body\" />\n        </div>\n        <div v-if=\"hasFooterSlot\" class=\"modal-footer\">\n          <slot name=\"footer\" />\n        </div>\n      </div>\n    </div>\n\n    <slot name=\"outer-navigation\" />\n  </div>\n</template>\n\n<script>\nimport { Modal } from 'bootstrap'\n\nexport default {\n  props: {\n    modalId: {\n      type: String,\n      required: true\n    },\n    title: {\n      type: String,\n      required: false\n    },\n    showOnMount: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    size: {\n      type: String,\n      required: false,\n      default: 'lg'\n    },\n    clickOutsideToClose: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    headerless: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    paddinglessBody: {\n      type: Boolean,\n      required: false,\n      default: false\n    }\n  },\n\n  emits: ['visibility-changed'],\n\n  data() {\n    return {\n      bootstrapModal: null,\n      transitionInProgress: false,\n      visibility: 'hidden'\n    }\n  },\n\n  computed: {\n    backdropSetting() {\n      if (this.clickOutsideToClose) {\n        return true\n      } else {\n        return 'static'\n      }\n    },\n\n    hasFooterSlot() {\n      return Object.keys(this.$slots).includes('footer')\n    },\n\n    modalSizeClass() {\n      return `modal-${this.size}`\n    }\n  },\n\n  watch: {\n    clickOutsideToClose: function() {\n      // Update the settings on the live Bootstrap modal to change whether clicks on the backdrop close the modal.\n      // This relies on an undocumented internal data structure, and will need to be updated at our next major version\n      // upgrade of bootstrap. Unfortunately, there is no supported API for changing this attribute of an already-open\n      // modal.\n      this.bootstrapModal._config.backdrop = this.backdropSetting\n    }\n  },\n\n  mounted() {\n    const vm = this\n    const rootElement = this.$refs.root\n\n    rootElement.addEventListener('hidden.bs.modal', function () {\n      vm.transitionInProgress = false\n      vm.visibility = 'hidden'\n      vm.$emit('visibility-changed', 'hidden')\n    })\n\n    rootElement.addEventListener('shown.bs.modal', function () {\n      vm.transitionInProgress = false\n      vm.visibility = 'shown'\n      vm.$emit('visibility-changed', 'shown')\n    })\n\n    this.bootstrapModal = Modal.getOrCreateInstance(this.$refs.root, {backdrop: this.backdropSetting})\n    if (this.showOnMount) {\n      this.open()\n    }\n  },\n\n  beforeUnmount() {\n    if (this.visibility === 'shown') {\n      // When a bootstrap modal opens, it adds `overflow: hidden` and `padding-right: 0px` to the body.\n      // Closing the modal normally removes those, but if we open another modal right away, a timing issue\n      // can prevent these styles from clearing when we close the second modal; this then\n      // prevents the page from scrolling. To avoid this issue, clear the body style ourselves.\n      document.body.attributeStyleMap.delete('overflow')\n      document.body.attributeStyleMap.delete('padding-right')\n    }\n\n    // If we call dispose() while there is a hide-modal transition in progress, then the callback at the end of the\n    // transition will not be able to complete properly, causing a JS console error.\n    if (!this.transitionInProgress) {\n      this.bootstrapModal.dispose()\n    }\n  },\n\n  methods: {\n    close() {\n      this.transitionInProgress = true\n      this.bootstrapModal.hide()\n    },\n\n    open() {\n      this.transitionInProgress = true\n      this.bootstrapModal.show()\n    }\n  }\n\n}\n</script>\n\n<style lang=\"scss\" scoped>\n  .paddingless-body {\n    padding-left: 0;\n    padding-right: 0;\n  }\n</style>\n\n","import { render } from \"./modal.vue?vue&type=template&id=149afa11&scoped=true\"\nimport script from \"./modal.vue?vue&type=script&lang=js\"\nexport * from \"./modal.vue?vue&type=script&lang=js\"\n\nimport \"./modal.vue?vue&type=style&index=0&id=149afa11&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-149afa11\"]])\n\nexport default __exports__","<template>\n  <transition name=\"slide-fade\" appear>\n    <div v-if=\"show\" :class=\"['toast-container', {'top-right': showFixedTopRight}]\">\n      <div :class=\"['toast-element', kind]\">\n        <slot name=\"message-content\" />\n      </div>\n    </div>\n  </transition>\n</template>\n\n<script>\nexport default {\n  props: {\n    kind: {\n      type: String,\n      required: false,\n      default: 'success'\n    },\n    showFixedTopRight: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    showOnMount: {\n      type: Boolean,\n      default: true\n    }\n  },\n\n  data() {\n    return {\n      show: false\n    }\n  },\n\n  mounted() {\n    if (this.showOnMount) {\n      this.showToast()\n    }\n  },\n\n  methods: {\n    removeToast() {\n      this.show = false\n    },\n\n    showToast() {\n      this.show = true\n      setTimeout(() => {\n        this.removeToast()\n      }, 4000)\n    }\n  }\n}\n\n</script>\n\n<style lang=\"scss\" scoped>\n  @use \"~common_styles/breakpoints\" as breakpoints;\n  @use \"~friendship_styles/colors\" as colors;\n  @use \"~friendship_styles/zindex\" as zindex;\n\n  .toast-container {\n    // Positioning\n\n    // By default, display at the element parent's location without taking space, this is overriden\n    // if the toast is meant to be displayed at the top right of the screen.\n    position: absolute;\n\n    &.top-right {\n      position: fixed;\n      z-index: zindex.$toast-z-index;\n      top: 10%;\n      right: 7%;\n    }\n\n    // toast element styling\n    // Not using the class name `toast` to avoid using unrelated bootstrap class.\n    .toast-element {\n      top: 35px;\n      width: auto;\n      clear: both;\n      margin-top: 10px;\n      position: relative;\n      max-width: 100%;\n      height: auto;\n      word-break: normal;\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      box-sizing: inherit;\n      padding: 15px;\n      color: colors.$black;\n      border-radius: 5px;\n    }\n\n    // This class is dynamically applied based on a prop\n    /* eslint-disable-next-line vue-scoped-css/no-unused-selector */\n    .success {\n      background-color: colors.$alert-success-bg;\n      border: 1px solid colors.$alert-success-fg;\n    }\n\n    // This class is dynamically applied based on a prop\n    /* eslint-disable-next-line vue-scoped-css/no-unused-selector */\n    .error {\n      background-color: colors.$alert-danger-bg;\n      border: 1px solid colors.$alert-danger-fg;\n    }\n  }\n\n  @include breakpoints.screen-mobile-only {\n    .toast-container {\n      max-width: 86%;\n      width: 100%;\n\n      &.top-right {\n        top: 0;\n        float: none;\n      }\n    }\n  }\n\n  .slide-fade-enter-active {\n    transition: all .3s ease;\n  }\n  .slide-fade-leave-active {\n    transition: all .8s cubic-bezier(1.0, 0.5, 0.8, 1.0);\n  }\n  .slide-fade-enter-from {\n    transform: translateY(-30px);\n    opacity: 0;\n  }\n  .slide-fade-leave-to {\n    opacity: 0;\n  }\n</style>\n","import { render } from \"./toast.vue?vue&type=template&id=b2f9da20&scoped=true\"\nimport script from \"./toast.vue?vue&type=script&lang=js\"\nexport * from \"./toast.vue?vue&type=script&lang=js\"\n\nimport \"./toast.vue?vue&type=style&index=0&id=b2f9da20&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-b2f9da20\"]])\n\nexport default __exports__","<template>\n  <div :class=\"['text-field', { 'is-invalid': showValidationError }]\">\n    <label v-if=\"label && showLabel\" :for=\"inputId\" class=\"form-label\">\n      <required v-if=\"required\" />\n      <span v-html=\"label\" />\n    </label>\n    <textarea v-if=\"multiline\" :id=\"inputId\" ref=\"input\" :rows=\"rows\" :disabled=\"disabled\"\n              :minlength=\"minLength\" :maxlength=\"maxLength\" :readonly=\"readonly\"\n              :class=\"['task-editor-text-input form-control', additionalInputClasses, {'is-invalid': showValidationError}]\"\n              :value=\"value\" :name=\"inputName\" @input=\"setText\" @focus=\"$emit('focus')\" @blur=\"$emit('blur')\" />\n    <input v-else :id=\"inputId\" ref=\"input\" :type=\"inputType\" :autocomplete=\"autocomplete\"\n           :disabled=\"disabled\" :readonly=\"readonly\" :minlength=\"minLength\" :maxlength=\"maxLength\"\n           :class=\"['task-editor-text-input form-control', additionalInputClasses, {'is-invalid': showValidationError}]\"\n           :value=\"value\" :name=\"inputName\" :placeholder=\"placeholder\"\n           @input=\"setText\" @focus=\"$emit('focus')\" @blur=\"$emit('blur')\">\n\n    <slot name=\"help-text\">\n      <small v-if=\"helpText\" class=\"form-text text-muted\" v-html=\"helpText\" />\n    </slot>\n\n    <validation-errors v-if=\"showValidationError\" :errors=\"validationErrors\" />\n  </div>\n</template>\n\n<script>\nimport Required from '../required'\nimport ValidationErrors from './validation-errors'\n\nexport default {\n  components: { Required, ValidationErrors },\n\n  props: {\n    value: {\n      type: [String, Number],\n      required: false\n    },\n    multiline: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    validationErrors: {\n      type: Array,\n      required: false\n    },\n    additionalInputClasses: {\n      type: String,\n      required: false\n    },\n    autocomplete: {\n      type: String,\n      required: false\n    },\n    disabled: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    helpText: {\n      type: String,\n      required: false\n    },\n    inputId: {\n      type: String,\n      required: false\n    },\n    inputName: {\n      type: String,\n      required: false\n    },\n    inputType: {\n      type: String,\n      required: false,\n      default: 'text'\n    },\n    label: {\n      type: String,\n      required: false\n    },\n    maxLength: {\n      type: Number,\n      required: false\n    },\n    minLength: {\n      type: Number,\n      required: false\n    },\n    placeholder: {\n      type: String,\n      required: false\n    },\n    readonly: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    required: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    rows: {\n      type: Number,\n      required: false,\n      default: 3\n    },\n\n    showLabel: {\n      type: Boolean,\n      required: false,\n      default: true\n    }\n  },\n\n  emits: ['blur', 'changed', 'focus'],\n\n  computed: {\n    showValidationError() {\n      return this.validationErrors && this.validationErrors.length > 0\n    }\n  },\n\n  methods: {\n    focus() {\n      this.$refs.input.focus()\n    },\n\n    setText(e) {\n      this.$emit('changed', e.target.value)\n    }\n  }\n}\n</script>\n","import { render } from \"./text-input.vue?vue&type=template&id=32eb48ed\"\nimport script from \"./text-input.vue?vue&type=script&lang=js\"\nexport * from \"./text-input.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <button type=\"button\" class=\"btn btn-link\" @click=\"$emit('click')\">\n    <slot />\n  </button>\n</template>\n\n<script>\nexport default {\n  emits: ['click']\n}\n</script>\n","import { render } from \"./link-button.vue?vue&type=template&id=bbab6e5a\"\nimport script from \"./link-button.vue?vue&type=script&lang=js\"\nexport * from \"./link-button.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div :class=\"['mt-3', 'small-text', {'d-none': hideDisclaimer}]\">\n    <div v-html=\"disclaimerHtml\" />\n  </div>\n</template>\n\n<script>\nexport default {\n  computed: {\n    disclaimerHtml() {\n      switch (this.agraConfiguration.botProtection.kind) {\n      case 'hcaptcha':\n        return this.i18n.t('public.hcaptcha.disclaimer_html')\n      case 'recaptcha':\n        return this.i18n.t('layouts.recaptcha_disclaimer_html')\n      case 'turnstile':\n        return this.i18n.t('public.turnstile.disclaimer_html')\n      case 'friendly-captcha':  // Don't display a disclaimer for Friendly Captcha\n        return null\n      default:\n        return null\n      }\n    },\n\n    hideDisclaimer() {\n      return this.disclaimerHtml === null\n    }\n  }\n}\n</script>\n","import { render } from \"./bot-protection-disclaimer.vue?vue&type=template&id=c6547caa\"\nimport script from \"./bot-protection-disclaimer.vue?vue&type=script&lang=js\"\nexport * from \"./bot-protection-disclaimer.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { openBlock, createElementBlock } from \"vue\";\nconst SCRIPT_ID = \"hcaptcha-api-script-id\";\nconst HCAPTCHA_LOAD_FN_NAME = \"_hcaptchaOnLoad\";\nlet resolveFn;\nlet rejectFn;\nconst promise = new Promise((resolve, reject) => {\n  resolveFn = resolve;\n  rejectFn = reject;\n});\nfunction loadApiEndpointIfNotAlready(config) {\n  if (window.hcaptcha) {\n    resolveFn();\n    return promise;\n  }\n  if (document.getElementById(SCRIPT_ID)) {\n    return promise;\n  }\n  window[HCAPTCHA_LOAD_FN_NAME] = resolveFn;\n  const scriptSrc = getScriptSrc(config);\n  const script = document.createElement(\"script\");\n  script.id = SCRIPT_ID;\n  script.src = scriptSrc;\n  script.async = true;\n  script.defer = true;\n  script.onerror = (event) => {\n    console.error(\"Failed to load api: \" + scriptSrc, event);\n    rejectFn(\"Failed to load api.js\");\n  };\n  document.head.appendChild(script);\n  return promise;\n}\nfunction getScriptSrc(config) {\n  let scriptSrc = config.apiEndpoint;\n  scriptSrc = addQueryParamIfDefined(scriptSrc, \"render\", \"explicit\");\n  scriptSrc = addQueryParamIfDefined(scriptSrc, \"onload\", HCAPTCHA_LOAD_FN_NAME);\n  scriptSrc = addQueryParamIfDefined(scriptSrc, \"recaptchacompat\", config.reCaptchaCompat === false ? \"off\" : null);\n  scriptSrc = addQueryParamIfDefined(scriptSrc, \"hl\", config.language);\n  scriptSrc = addQueryParamIfDefined(scriptSrc, \"sentry\", config.sentry);\n  scriptSrc = addQueryParamIfDefined(scriptSrc, \"custom\", config.custom);\n  scriptSrc = addQueryParamIfDefined(scriptSrc, \"endpoint\", config.endpoint);\n  scriptSrc = addQueryParamIfDefined(scriptSrc, \"assethost\", config.assethost);\n  scriptSrc = addQueryParamIfDefined(scriptSrc, \"imghost\", config.imghost);\n  scriptSrc = addQueryParamIfDefined(scriptSrc, \"reportapi\", config.reportapi);\n  return scriptSrc;\n}\nfunction addQueryParamIfDefined(url, queryName, queryValue) {\n  if (queryValue !== void 0 && queryValue !== null) {\n    const link = url.includes(\"?\") ? \"&\" : \"?\";\n    return url + link + queryName + \"=\" + encodeURIComponent(queryValue);\n  }\n  return url;\n}\nvar _export_sfc = (sfc, props) => {\n  for (const [key, val] of props) {\n    sfc[key] = val;\n  }\n  return sfc;\n};\nconst _sfc_main = {\n  name: \"VueHcaptcha\",\n  props: {\n    sitekey: {\n      type: String,\n      required: true\n    },\n    theme: {\n      type: String,\n      default: void 0\n    },\n    size: {\n      type: String,\n      default: void 0\n    },\n    tabindex: {\n      type: String,\n      default: void 0\n    },\n    language: {\n      type: String,\n      default: void 0\n    },\n    reCaptchaCompat: {\n      type: Boolean,\n      default: true\n    },\n    challengeContainer: {\n      type: String,\n      default: void 0\n    },\n    rqdata: {\n      type: String,\n      default: void 0\n    },\n    sentry: {\n      type: Boolean,\n      default: true\n    },\n    custom: {\n      type: Boolean,\n      default: void 0\n    },\n    apiEndpoint: {\n      type: String,\n      default: \"https://hcaptcha.com/1/api.js\"\n    },\n    endpoint: {\n      type: String,\n      default: void 0\n    },\n    reportapi: {\n      type: String,\n      default: void 0\n    },\n    assethost: {\n      type: String,\n      default: void 0\n    },\n    imghost: {\n      type: String,\n      default: void 0\n    }\n  },\n  data: () => {\n    return {\n      widgetId: null,\n      hcaptcha: null,\n      renderedCb: null\n    };\n  },\n  mounted() {\n    return loadApiEndpointIfNotAlready(this.$props).then(this.onApiLoaded).catch(this.onError);\n  },\n  unmounted() {\n    this.teardown();\n  },\n  destroyed() {\n    this.teardown();\n  },\n  methods: {\n    teardown() {\n      if (this.widgetId) {\n        this.hcaptcha.reset(this.widgetId);\n        this.hcaptcha.remove(this.widgetId);\n      }\n    },\n    onApiLoaded() {\n      this.hcaptcha = window.hcaptcha;\n      const opt = {\n        sitekey: this.sitekey,\n        theme: this.theme,\n        size: this.size,\n        tabindex: this.tabindex,\n        \"callback\": this.onVerify,\n        \"expired-callback\": this.onExpired,\n        \"chalexpired-callback\": this.onChallengeExpired,\n        \"error-callback\": this.onError,\n        \"open-callback\": this.onOpen,\n        \"close-callback\": this.onClose\n      };\n      if (this.challengeContainer) {\n        opt[\"challenge-container\"] = this.challengeContainer;\n      }\n      this.widgetId = this.hcaptcha.render(this.$el, opt);\n      if (this.rqdata) {\n        this.hcaptcha.setData(this.widgetId, { rqdata: this.rqdata });\n      }\n      this.onRendered();\n    },\n    execute() {\n      if (this.widgetId) {\n        this.hcaptcha.execute(this.widgetId);\n        this.onExecuted();\n      } else {\n        this.renderedCb = () => {\n          this.renderedCb = null;\n          this.execute();\n        };\n      }\n    },\n    executeAsync() {\n      if (this.widgetId) {\n        this.onExecuted();\n        return this.hcaptcha.execute(this.widgetId, { async: true });\n      }\n      let resolveFn2;\n      const promiseFn = new Promise((resolve) => {\n        resolveFn2 = resolve;\n      });\n      this.renderedCb = () => {\n        this.renderedCb = null;\n        resolveFn2();\n      };\n      return promiseFn.then(this.executeAsync);\n    },\n    reset() {\n      if (this.widgetId) {\n        this.hcaptcha.reset(this.widgetId);\n        this.onReset();\n      } else {\n        this.$emit(\"error\", \"Element is not rendered yet and thus cannot reset it. Wait for `rendered` event to safely call reset.\");\n      }\n    },\n    onRendered() {\n      this.$emit(\"rendered\");\n      this.renderedCb && this.renderedCb();\n    },\n    onExecuted() {\n      this.$emit(\"executed\");\n    },\n    onReset() {\n      this.$emit(\"reset\");\n    },\n    onError(e) {\n      this.$emit(\"error\", e);\n      this.reset();\n    },\n    onVerify() {\n      const token = this.hcaptcha.getResponse(this.widgetId);\n      const eKey = this.hcaptcha.getRespKey(this.widgetId);\n      this.$emit(\"verify\", token, eKey);\n    },\n    onExpired() {\n      this.$emit(\"expired\");\n    },\n    onChallengeExpired() {\n      this.$emit(\"challengeExpired\");\n    },\n    onOpen() {\n      this.$emit(\"opened\");\n    },\n    onClose() {\n      this.$emit(\"closed\");\n    }\n  }\n};\nconst _hoisted_1 = { id: \"hcap-script\" };\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n  return openBlock(), createElementBlock(\"div\", _hoisted_1);\n}\nvar hcaptcha = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render]]);\nexport { hcaptcha as default };\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// runtime helper for setting properties on components\n// in a tree-shakable way\nexports.default = (sfc, props) => {\n    const target = sfc.__vccOpts || sfc;\n    for (const [key, val] of props) {\n        target[key] = val;\n    }\n    return target;\n};\n","<template>\n  <!-- The flag-petition-link CSS class is to allow Campact and any other orgs that want to customize the styling for this\n       button via custom CSS, to make it simpler to build a selector -->\n  <a v-if=\"useCustomUrlForFlagging\" class=\"flag-petition-link small-text text-start ps-0\" :href=\"customUrlForFlagging\"\n     rel=\"nofollow\">\n    <i class=\"icon-flag\" />\n    {{ i18n.t('public.petitions.flag.flag_this') }}\n  </a>\n  <link-button v-else class=\"flag-petition-link small-text text-start ps-0\" @click=\"showModalForm\">\n    <i class=\"icon-flag\" />\n    {{ i18n.t('public.petitions.flag.flag_this') }}\n  </link-button>\n\n  <modal-action-form v-if=\"showFlagForm\" :show-on-mount=\"true\" modal-id=\"modalFlagForm\"\n                     size=\"md\" :title=\"i18n.t('public.petitions.flag.modal_heading')\" :captcha-action=\"captchaAction\"\n                     :submit-action=\"createFlagAction\" :submit-text=\"i18n.t('public.petitions.flag.flag_petition')\"\n                     :use-bot-protection-if-available=\"true\" @clear=\"clear\">\n    <template #body>\n      <div class=\"d-grid gap-3\">\n        <p class=\"mb-0\" v-html=\"flagCreationDescriptionContent\" />\n\n        <text-input :label=\"i18n.t('public.petitions.flag.form.email')\" :readonly=\"!canEditEmail\" input-id=\"flag-email\"\n                    :required=\"true\" :value=\"email\" :validation-errors=\"validationErrors.email\"\n                    @changed=\"updateEmail\" />\n\n        <div>\n          <p class=\"mt-4\">\n            {{ i18n.t('public.petitions.flag.form.give_reason') }}\n          </p>\n\n          <text-input :label=\"i18n.t('activerecord.attributes.petition_flag.reason')\" :required=\"true\"\n                      input-id=\"flag-reason\" :multiline=\"true\" rows=\"5\" :validation-errors=\"validationErrors.reason\"\n                      @changed=\"updateReason\" />\n        </div>\n      </div>\n    </template>\n  </modal-action-form>\n\n  <toast v-if=\"flagSuccessfullyCreated\" kind=\"success\">\n    <template #message-content>\n      {{ i18n.t('public.petitions.flag.success_create') }}\n    </template>\n  </toast>\n</template>\n\n<script>\nimport ajax from '@/helpers/ajax'\nimport LinkButton from '@/components/buttons/link-button'\nimport ModalActionForm from '../components/modal-action-form'\nimport TextInput from '@/components/inputs/text-input'\nimport Toast from '@/components/toast'\n\nexport default {\n  components: { LinkButton, ModalActionForm, TextInput, Toast },\n\n  props: {\n    captchaAction: {\n      type: String,\n      required: true\n    },\n    canEditEmail: {\n      type: Boolean,\n      required: true\n    },\n    flagCreationDescriptionContent: {\n      type: String,\n      required: true\n    },\n    flagCreationUrl: {\n      type: String,\n      required: true\n    },\n    memberEmail: {\n      type: String,\n      required: false\n    },\n    useCustomUrlForFlagging: {\n      type: Boolean,\n      required: true\n    },\n    customUrlForFlagging: {\n      type: String,\n      required: false\n    }\n  },\n\n  data() {\n    return {\n      email: this.memberEmail,\n      flagSuccessfullyCreated: false,\n      reason: '',\n      showFlagForm: false,\n      validationErrors: []\n    }\n  },\n\n  methods: {\n    clear() {\n      this.email = this.memberEmail\n      this.reason = ''\n      this.showFlagForm = false\n    },\n\n    createFlagAction({friendlyCaptchaSolution, hcaptchaResponse, recaptchaToken, turnstileToken}) {\n      const flagData = {\n        email: this.email,\n        reason: this.reason\n      }\n\n      return new Promise((resolve, reject) => {\n        ajax.post({\n          url: this.flagCreationUrl,\n          data: {\n            flag: flagData,\n            friendly_captcha_solution: friendlyCaptchaSolution,\n            hcaptcha_response: hcaptchaResponse,\n            recaptcha_token: recaptchaToken,\n            turnstile_token: turnstileToken\n          },\n          successHandler: () => {\n            this.showFlagForm = false\n            this.flagSuccessfullyCreated = true\n            this.validationErrors = []\n            resolve()\n          },\n          errorHandler: ({ info }) => {\n            this.validationErrors = info.errors\n\n            // Prevent the modal from closing\n            reject(this.i18n.t('public.petitions.flag.failed_create'))\n          }\n        })\n      })\n\n    },\n\n    showModalForm() {\n      this.flagSuccessfullyCreated = false\n      this.validationErrors = []\n      this.showFlagForm = true\n    },\n\n    updateEmail(newEmail) {\n      this.email = newEmail\n    },\n\n    updateReason(newReason) {\n      this.reason = newReason\n    }\n  }\n}\n</script>\n","import { render } from \"./flag.vue?vue&type=template&id=b0e74e8e\"\nimport script from \"./flag.vue?vue&type=script&lang=js\"\nexport * from \"./flag.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div class=\"alert\" :class=\"{[`alert-${alertClass}`]: true}\">\n    <slot>\n      {{ message }}\n    </slot>\n  </div>\n</template>\n\n<script>\nexport default {\n  props: {\n    alertClass: {\n      type: String,\n      required: false,\n      default: 'danger'\n    },\n    message: {\n      type: String,\n      required: false\n    }\n  }\n}\n</script>\n","import { render } from \"./alert.vue?vue&type=template&id=713210d2\"\nimport script from \"./alert.vue?vue&type=script&lang=js\"\nexport * from \"./alert.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <div>\n    <span v-for=\"error in errors\" :key=\"error\" class=\"invalid-feedback d-block normal-text\">{{ error }}</span>\n  </div>\n</template>\n\n<script>\nexport default {\n  props: {\n    errors: {\n      type: Array,\n      required: true\n    }\n  }\n}\n</script>\n\n<style scoped lang=\"scss\">\n\n.normal-text {\n  text-transform: none;\n}\n\n</style>\n","import { render } from \"./validation-errors.vue?vue&type=template&id=102b52e8&scoped=true\"\nimport script from \"./validation-errors.vue?vue&type=script&lang=js\"\nexport * from \"./validation-errors.vue?vue&type=script&lang=js\"\n\nimport \"./validation-errors.vue?vue&type=style&index=0&id=102b52e8&scoped=true&lang=scss\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-102b52e8\"]])\n\nexport default __exports__","<template>\n  <button type=\"button\" :disabled=\"disabled\" class=\"btn btn-primary\" @click=\"$emit('click')\">\n    <slot>\n      {{ label }}\n    </slot>\n  </button>\n</template>\n\n<script>\nimport { inject } from 'vue'\n\nexport default {\n  props: {\n    disabled: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    label: {\n      type: String,\n      required: false,\n      default: function() { return inject('i18n').t('administrative.save') }\n    }\n  },\n\n  emits: ['click']\n}\n\n</script>\n","import { render } from \"./primary-button.vue?vue&type=template&id=fa1dbc0e\"\nimport script from \"./primary-button.vue?vue&type=script&lang=js\"\nexport * from \"./primary-button.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <modal ref=\"modal\" :modal-id=\"modalId\" :title=\"title\" :show-on-mount=\"showOnMount\"\n         :size=\"size\" :click-outside-to-close=\"clickOutsideToClose\" @visibility-changed=\"visibilityChanged\">\n    <template #header>\n      <slot name=\"header\" />\n    </template>\n    <template #sub-heading>\n      <slot name=\"sub-heading\" />\n    </template>\n    <template #body>\n      <alert v-if=\"errorMessage\">\n        {{ errorMessage }}\n      </alert>\n      <slot name=\"body\" />\n    </template>\n    <template #footer>\n      <div class=\"footer-buttons\">\n        <button type=\"button\" class=\"btn btn-light\" @click=\"close\">\n          {{ cancelText }}\n        </button>\n\n        <bot-protected-submit-button v-if=\"useBotProtectionIfAvailable\" :form-valid=\"!submitDisabled\"\n                                     :label=\"submitText\" :captcha-action=\"captchaAction\" :invisible-captcha=\"true\"\n                                     :calculate-solution-on-mount=\"true\" :submit-in-progress=\"submitting\"\n                                     @submit=\"onSubmit\" />\n        <submit-button v-else :form-valid=\"!submitDisabled\" :label=\"submitText\" :submit-in-progress=\"submitting\"\n                       @click=\"onSubmit\" />\n      </div>\n    </template>\n    <bot-protection-disclaimer v-if=\"botProtectionEnabled\" />\n  </modal>\n</template>\n\n<script>\nimport Alert from '../components/alert'\nimport BotProtectedSubmitButton from './buttons/bot-protected-submit-button'\nimport BotProtectionDisclaimer from './inputs/bot-protection-disclaimer'\nimport { inject } from 'vue'\nimport Modal from './modal'\nimport SubmitButton from './buttons/submit-button'\n\nexport default {\n  components: { Alert, BotProtectedSubmitButton, BotProtectionDisclaimer, Modal, SubmitButton },\n\n  props: {\n    cancelText: {\n      type: String,\n      required: false,\n      default() { return inject('i18n').t('administrative.cancel') }\n    },\n    modalId: {\n      type: String,\n      required: true\n    },\n    submitText: {\n      type: String,\n      required: false,\n      default() { return inject('i18n').t('submit') }\n    },\n    title: {\n      type: String,\n      required: false\n    },\n    showOnMount: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    size: {\n      type: String,\n      required: false,\n      default: 'lg'\n    },\n    clickOutsideToClose: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    captchaAction: {\n      type: String,\n      required: false\n    },\n    submitAction: {\n      type: Function,\n      required: true\n    },\n    submitDisabled: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n    useBotProtectionIfAvailable: {\n      type: Boolean,\n      required: false,\n      default: false\n    }\n  },\n\n  emits: ['clear'],\n\n  data() {\n    return {\n      submitting: false,\n      errorMessage: ''\n    }\n  },\n\n  computed: {\n    botProtectionEnabled() {\n      return this.useBotProtectionIfAvailable && (this.agraConfiguration.botProtection.kind !== 'none')\n    }\n  },\n\n  methods: {\n    clear() {\n      this.$emit('clear')\n      this.submitting = false\n      this.errorMessage = ''\n    },\n    onSubmit: async function(payload) {\n      this.submitting = true\n\n      try {\n        await this.submitAction(payload)\n        this.close()\n      }\n      catch (e) {\n        this.errorMessage = e.message\n        this.submitting = false\n      }\n    },\n\n    // Handles the case where the modal was closed by user clicking outside it, and the case\n    // Cancel button was clicked.\n    visibilityChanged(newState) {\n      if (newState === 'hidden') {\n        this.clear()\n      }\n    },\n\n    // So that consumers can add a ref for this component and have it work on the composed Modal\n    open() {\n      this.$refs.modal.open()\n    },\n    close() { // Also used in Cancel button\n      this.$refs.modal.close()\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.footer-buttons {\n  width: 100%;\n  display: flex;\n  justify-content: space-between;\n}\n</style>\n","import { render } from \"./modal-action-form.vue?vue&type=template&id=7839442b&scoped=true\"\nimport script from \"./modal-action-form.vue?vue&type=script&lang=js\"\nexport * from \"./modal-action-form.vue?vue&type=script&lang=js\"\n\nimport \"./modal-action-form.vue?vue&type=style&index=0&id=7839442b&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7839442b\"]])\n\nexport default __exports__","<template>\n  <button ref=\"button\" type=\"submit\"\n          :disabled=\"buttonDisabled\"\n          class=\"btn btn-primary\"\n          @click.prevent=\"$emit('click', $event)\">\n    <!-- Q: Why set type=submit if we're going to prevent the default behavior of submitting the form?\n         A: Having a submit button at all changes the form behavior by enabling \"Enter to submit\" on text fields -->\n    {{ buttonText }}\n  </button>\n</template>\n\n<script>\nimport { inject } from 'vue'\nimport PrimaryButton from './primary-button'\n\nexport default {\n  extends: PrimaryButton,\n\n  props: {\n    formValid: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n\n    submitInProgress: {\n      type: Boolean,\n      required: false,\n      default: false\n    },\n\n    submittingLabel: {\n      type: String,\n      required: false,\n      default: function() { return inject('i18n').t('submitting') }\n    }\n  },\n\n  emits: ['click'],\n\n  computed: {\n    buttonDisabled() {\n      return !this.formValid || this.submitInProgress\n    },\n\n    buttonText() {\n      if (this.submitInProgress) {\n        return this.submittingLabel\n      } else {\n        return this.label\n      }\n    }\n  },\n\n  methods: {\n    click() {\n      this.$refs.button.click()\n    },\n\n    focus() {\n      this.$refs.button.focus()\n    }\n  }\n}\n</script>\n","import { render } from \"./submit-button.vue?vue&type=template&id=4ae84733\"\nimport script from \"./submit-button.vue?vue&type=script&lang=js\"\nexport * from \"./submit-button.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","<template>\n  <abbr :title=\"i18n.t('simple_form.required.text')\">\n    {{ i18n.t('simple_form.required.mark') }}\n  </abbr>\n</template>\n","import { render } from \"./required.vue?vue&type=template&id=ebbea57e\"\nconst script = {}\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["prototype","raise","errorConstructor","message","name","requestSubmit","submitter","form","HTMLElement","TypeError","type","DOMException","validateSubmitter","this","click","document","createElement","hidden","appendChild","removeChild","HTMLFormElement","class","key","props","modalId","String","required","title","showOnMount","Boolean","default","size","clickOutsideToClose","headerless","paddinglessBody","emits","data","bootstrapModal","transitionInProgress","visibility","computed","backdropSetting","hasFooterSlot","Object","keys","$slots","includes","modalSizeClass","watch","_config","backdrop","mounted","vm","rootElement","$refs","root","addEventListener","$emit","Modal","getOrCreateInstance","open","beforeUnmount","body","attributeStyleMap","delete","dispose","methods","close","hide","show","_createElementBlock","id","$props","ref","tabindex","role","_createElementVNode","_normalizeClass","$options","_hoisted_2","_createCommentVNode","_hoisted_3","_renderSlot","_ctx","_hoisted_4","_createTextVNode","_toDisplayString","i18n","t","onClick","_cache","args","_hoisted_5","_hoisted_6","undefined","_hoisted_7","_hoisted_1","kind","showFixedTopRight","showToast","removeToast","setTimeout","_createBlock","_Transition","appear","_withCtx","$data","_","components","Required","ValidationErrors","value","Number","multiline","validationErrors","Array","additionalInputClasses","autocomplete","disabled","helpText","inputId","inputName","inputType","label","maxLength","minLength","placeholder","readonly","rows","showLabel","showValidationError","length","focus","input","setText","e","target","for","_component_required","innerHTML","minlength","maxlength","onInput","onFocus","$event","onBlur","_component_validation_errors","errors","disclaimerHtml","agraConfiguration","botProtection","hideDisclaimer","SCRIPT_ID","HCAPTCHA_LOAD_FN_NAME","resolveFn","rejectFn","promise","Promise","resolve","reject","loadApiEndpointIfNotAlready","config","window","hcaptcha","getElementById","scriptSrc","apiEndpoint","addQueryParamIfDefined","reCaptchaCompat","language","sentry","custom","endpoint","assethost","imghost","reportapi","getScriptSrc","script","src","async","defer","onerror","event","console","error","head","url","queryName","queryValue","link","encodeURIComponent","_export_sfc","sfc","val","_sfc_main","sitekey","theme","challengeContainer","rqdata","widgetId","renderedCb","then","onApiLoaded","catch","onError","unmounted","teardown","destroyed","reset","remove","opt","onVerify","onExpired","onChallengeExpired","onOpen","onClose","render","$el","setData","onRendered","execute","onExecuted","executeAsync","resolveFn2","promiseFn","onReset","token","getResponse","eKey","getRespKey","$setup","exports","__vccOpts","LinkButton","ModalActionForm","TextInput","Toast","captchaAction","canEditEmail","flagCreationDescriptionContent","flagCreationUrl","memberEmail","useCustomUrlForFlagging","customUrlForFlagging","email","flagSuccessfullyCreated","reason","showFlagForm","clear","createFlagAction","friendlyCaptchaSolution","hcaptchaResponse","recaptchaToken","turnstileToken","flagData","ajax","post","flag","friendly_captcha_solution","hcaptcha_response","recaptcha_token","turnstile_token","successHandler","errorHandler","info","showModalForm","updateEmail","newEmail","updateReason","newReason","_Fragment","href","rel","_component_link_button","_component_modal_action_form","onClear","_createVNode","_component_text_input","onChanged","_component_toast","alertClass","_renderList","inject","Alert","BotProtectedSubmitButton","BotProtectionDisclaimer","SubmitButton","cancelText","submitText","submitAction","Function","submitDisabled","useBotProtectionIfAvailable","submitting","errorMessage","botProtectionEnabled","onSubmit","payload","visibilityChanged","newState","modal","_component_modal","onVisibilityChanged","header","_component_alert","footer","_component_bot_protected_submit_button","_component_submit_button","_component_bot_protection_disclaimer","extends","PrimaryButton","formValid","submitInProgress","submittingLabel","buttonDisabled","buttonText","button","_withModifiers"],"sourceRoot":""}