{"version":3,"file":"js/5683-d7185d902824290b198b.chunk.js","mappings":"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","sources":["webpack://agra/./app/javascript/components/confirm-your-email-modal.vue","webpack://agra/./app/javascript/components/confirm-your-email-modal.vue?e8cd","webpack://agra/./app/javascript/components/generic-error-modal.vue","webpack://agra/./app/javascript/components/generic-error-modal.vue?78c3","webpack://agra/./app/javascript/components/inputs/authenticity-token-field.vue","webpack://agra/./app/javascript/components/inputs/authenticity-token-field.vue?6a8d","webpack://agra/./app/javascript/components/inputs/bot-protection-disclaimer.vue","webpack://agra/./app/javascript/components/inputs/bot-protection-disclaimer.vue?7a0d","webpack://agra/./app/javascript/users/facebook-sign-in.vue","webpack://agra/./app/javascript/users/facebook-sign-in.vue?95ae","webpack://agra/./app/javascript/users/google-sign-in.vue","webpack://agra/./app/javascript/users/google-sign-in.vue?7bc3","webpack://agra/./app/javascript/users/sign-up-form.vue","webpack://agra/./app/javascript/components/inputs/accept-terms-of-service.vue","webpack://agra/./app/javascript/components/inputs/accept-terms-of-service.vue?231a","webpack://agra/./app/javascript/components/inputs/unmaskable-password-field.vue","webpack://agra/./app/javascript/components/inputs/unmaskable-password-field.vue?2e39","webpack://agra/./app/javascript/users/sign-up-form.vue?a86b"],"sourcesContent":["<template>\n  <modal :show-on-mount=\"true\" :click-outside-to-close=\"false\" :headerless=\"true\"\n         size=\"sm\" modal-id=\"confirm-your-email-modal\">\n    <template #body>\n      <div class=\"text-center\">\n        <h2 class=\"mt-3 title\">\n          {{ i18n.t('public.confirm_your_email_modal.title') }}\n        </h2>\n        <p>\n          <span>\n            {{ emailSentMessage }}\n          </span>\n\n          <span v-if=\"warningMessage\" class=\"text-danger\">\n            {{ warningMessage }}\n          </span>\n        </p>\n        <p v-if=\"emailAddress\">\n          <span class=\"d-block\">{{ i18n.t('public.confirm_your_email_modal.sent_to') }}</span>\n          <strong>{{ emailAddress }}</strong>\n        </p>\n      </div>\n    </template>\n  </modal>\n</template>\n\n<script>\nimport Modal from '../components/modal'\n\nexport default {\n  components: { Modal },\n\n  props: {\n    emailAddress: {\n      type: String,\n      required: false\n    },\n\n    emailSentMessage: {\n      type: String,\n      required: true\n    },\n\n    warningMessage: {\n      type: String,\n      required: false\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.title {\n  font-size: 32px;\n  font-weight: 500;\n}\n</style>\n","import { render } from \"./confirm-your-email-modal.vue?vue&type=template&id=7590f5b8&scoped=true\"\nimport script from \"./confirm-your-email-modal.vue?vue&type=script&lang=js\"\nexport * from \"./confirm-your-email-modal.vue?vue&type=script&lang=js\"\n\nimport \"./confirm-your-email-modal.vue?vue&type=style&index=0&id=7590f5b8&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-7590f5b8\"]])\n\nexport default __exports__","<template>\n  <modal :show-on-mount=\"true\" :click-outside-to-close=\"false\" :headerless=\"true\"\n         size=\"sm\" modal-id=\"generic-error-modal\">\n    <template #body>\n      <div class=\"text-center\">\n        <p v-html=\"errorMessage\" />\n      </div>\n    </template>\n  </modal>\n</template>\n\n<script>\nimport Modal from './modal'\n\nexport default {\n  components: { Modal },\n\n  props: {\n    errorMessage: {\n      type: String,\n      required: true\n    }\n  }\n}\n</script>\n","import { render } from \"./generic-error-modal.vue?vue&type=template&id=4d8774dd\"\nimport script from \"./generic-error-modal.vue?vue&type=script&lang=js\"\nexport * from \"./generic-error-modal.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  <input type=\"hidden\" name=\"authenticity_token\" :value=\"csrfToken\">\n</template>\n\n<script>\nexport default {\n  data() {\n    return {\n      csrfToken: null\n    }\n  },\n\n  mounted() {\n    const tokenElement = document.querySelector('meta[name=\"csrf-token\"]')\n    if (tokenElement) {\n      this.csrfToken = tokenElement.getAttribute('content')\n    }\n  }\n}\n</script>\n","import { render } from \"./authenticity-token-field.vue?vue&type=template&id=51a10cfc\"\nimport script from \"./authenticity-token-field.vue?vue&type=script&lang=js\"\nexport * from \"./authenticity-token-field.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__","<template>\n  <form :action=\"loginUrl\" method=\"post\" class=\"d-grid\">\n    <authenticity-token-field />\n    <button type=\"submit\" class=\"btn\">\n      <img src=\"../images/icons/facebook.svg\">\n      <span>{{ i18n.t('users.shared.facebook_login.log_in_with_facebook') }}</span>\n    </button>\n  </form>\n</template>\n\n<script>\nimport AuthenticityTokenField from '../components/inputs/authenticity-token-field'\n\nexport default {\n  components: { AuthenticityTokenField },\n\n  props: {\n    loginUrl: {\n      type: String,\n      required: true\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n$facebook-blue: #1977f2;\n\nbutton {\n  background-color: $facebook-blue;\n  color: white;\n  border-color: $facebook-blue;\n  text-transform: none;\n  height: 50px;\n  font-size: 16px;\n  font-weight: 500;\n\n  &:hover, &:active, &:focus {\n    color: white !important;\n    background-color: $facebook-blue !important;\n  }\n}\n\nimg {\n  height: 20px;\n  padding-right: 16px;\n  margin-top: -4px; // center icon with text\n}\n</style>\n","import { render } from \"./facebook-sign-in.vue?vue&type=template&id=20b6af62&scoped=true\"\nimport script from \"./facebook-sign-in.vue?vue&type=script&lang=js\"\nexport * from \"./facebook-sign-in.vue?vue&type=script&lang=js\"\n\nimport \"./facebook-sign-in.vue?vue&type=style&index=0&id=20b6af62&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-20b6af62\"]])\n\nexport default __exports__","<template>\n  <form :action=\"loginUrl\" method=\"post\" class=\"d-grid\">\n    <authenticity-token-field />\n    <button type=\"submit\" class=\"btn btn-light\">\n      <img src=\"../images/icons/google-sign-in.svg\">\n      <span>{{ i18n.t('users.shared.google_login.sign_in_with_google') }}</span>\n    </button>\n  </form>\n</template>\n\n<script>\nimport AuthenticityTokenField from '../components/inputs/authenticity-token-field'\n\nexport default {\n  components: { AuthenticityTokenField },\n\n  props: {\n    loginUrl: {\n      type: String,\n      required: true\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\nbutton {\n  text-transform: none;\n  height: 50px;\n  font-size: 16px;\n  font-weight: 500;\n}\n\nimg {\n  height: 20px;\n  padding-right: 16px;\n  margin-top: -2px; // center icon with text\n}\n</style>\n","import { render } from \"./google-sign-in.vue?vue&type=template&id=287396a8&scoped=true\"\nimport script from \"./google-sign-in.vue?vue&type=script&lang=js\"\nexport * from \"./google-sign-in.vue?vue&type=script&lang=js\"\n\nimport \"./google-sign-in.vue?vue&type=style&index=0&id=287396a8&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-287396a8\"]])\n\nexport default __exports__","<template>\n  <form class=\"d-grid gap-3 pb-3\">\n    <email-input :value=\"userData.email\" :disabled=\"acceptingInvitation\" required\n                 entity-name=\"user\" :validation-errors=\"validationErrors['email']\"\n                 @changed=\"(value) => fieldChanged('email', value)\" />\n\n    <unmaskable-password-field :validation-errors=\"validationErrors['password']\" :value=\"userData.password\"\n                               @input=\"(value) => fieldChanged('password', value)\" />\n    <first-name-field :value=\"userData.firstName\" entity-name=\"user\" required :validation-errors=\"validationErrors['first_name']\"\n                      @changed=\"(value) => fieldChanged('firstName', value)\" />\n    <last-name-field :value=\"userData.lastName\" entity-name=\"user\" required :validation-errors=\"validationErrors['last_name']\"\n                     @changed=\"(value) => fieldChanged('lastName', value)\" />\n    <postcode-field v-if=\"askForPostcode\" :label=\"postcodeLabel\" :value=\"userData.postcode\" required entity-name=\"user\"\n                    :validation-errors=\"validationErrors['postcode']\"\n                    @changed=\"(value) => fieldChanged('postcode', value)\" />\n    <phone-number-field :label=\"phoneNumberLabel\" :value=\"userData.phoneNumber\" entity-name=\"user\"\n                        :required=\"phoneNumberMandatory\" :validation-errors=\"validationErrors['phone_number']\"\n                        @changed=\"(value) => fieldChanged('phoneNumber', value)\" />\n\n    <sms-opt-in-input v-if=\"askForSmsOptIn\" :label=\"smsOptInLabel\" :phone-number-present=\"!!userData.phoneNumber\"\n                      :sms-opt-in-type-data=\"smsOptInTypeData\" :validation-errors=\"validationErrors['opt_in_sms']\"\n                      entity-name=\"user\" @changed=\"updateSmsOptIn\" />\n\n    <country-select v-if=\"askForCountry\" input-name=\"user[country]\" input-id=\"user-country-select\" :label=\"countryLabel\"\n                    :country-options=\"countryOptions\" :geoip-hostname=\"geoipHostname\"\n                    :validation-errors=\"validationErrors['country']\" :value=\"userData.country\" required\n                    @changed=\"(value) => fieldChanged('country', value)\" />\n\n    <additional-field v-for=\"config of additionalFieldConfigs\" v-show=\"shouldShowAdditionalField(config)\"\n                      v-bind=\"additionalFieldConfig(config)\" :key=\"config.name\" entity-name=\"user\"\n                      :validation-errors=\"validationErrors[config.name]\"\n                      @changed=\"(value) => additionalFieldChanged(config.name, value)\" />\n\n    <email-opt-in-input :email-opt-in-type-data=\"emailOptInTypeData\" entity-name=\"user\" :label=\"emailOptInLabel\"\n                        :value=\"userData.joinOrganisation\" :validation-errors=\"validationErrors['join_organisation']\"\n                        @changed=\"emailOptInChanged\" />\n\n    <accept-terms-of-service input-name=\"user[accept_tos]\" :label=\"acceptTermsOfServiceLabel\" :terms-of-service-explicit=\"termsOfServiceExplicit\"\n                             :value=\"userData.acceptTos\" :validation-errors=\"validationErrors['accept_tos']\"\n                             @changed=\"(value) => fieldChanged('acceptTos', value)\" />\n\n    <eu-data-processing-consent v-if=\"includeEuDataProcessingConsent\"\n                                v-show=\"showEuDataProcessingConsent\"\n                                entity-name=\"user\"\n                                :explicit-consent-required=\"euDataProcessingConsentData.explicitConsentRequired\"\n                                :label=\"euDataProcessingConsentData.label\"\n                                :show-label=\"showDataProcessingConsentLabelOnForm\"\n                                input-name=\"user[eu_data_processing_consent]\"\n                                :value=\"userData.euDataProcessingConsent\"\n                                :validation-errors=\"validationErrors['eu_data_processing_consent?']\"\n                                @changed=\"(value) => fieldChanged('euDataProcessingConsent', value)\" />\n\n    <div class=\"mt-1 small-text\" v-html=\"newAccountDisclaimer\" />\n\n    <bot-protected-submit-button :label=\"submitButtonText\" captcha-action=\"user_create\" :button-class=\"w-100\"\n                                 :validation-errors=\"validationErrorsCamelCase\" @submit=\"submit\" />\n\n    <div v-if=\"showDataProcessingConsentAfterSubmit\" class=\"small-text mt-2\"\n         v-html=\"euDataProcessingConsentData.label\" />\n\n    <bot-protection-disclaimer v-if=\"botProtectionEnabled\" />\n  </form>\n</template>\n\n<script>\nimport ajax from '@/helpers/ajax'\nimport { objectKeysToCamelCase, objectKeysToSnakeCase } from '@/helpers/transform-object-keys'\nimport AcceptTermsOfService from '@/components/inputs/accept-terms-of-service'\nimport AdditionalField from '@/components/inputs/additional-field'\nimport BotProtectedSubmitButton from '@/components/buttons/bot-protected-submit-button'\nimport BotProtectionDisclaimer from '@/components/inputs/bot-protection-disclaimer'\nimport CountrySelect from '@/components/inputs/country-select'\nimport EmailInput from '@/components/inputs/email-input-with-mailcheck'\nimport EmailOptInInput from '@/components/inputs/email-opt-in-input'\nimport { EU_COUNTRIES } from '@/eu-countries'\nimport EuDataProcessingConsent from '@/components/inputs/eu-data-processing-consent.vue'\nimport FirstNameField from '@/components/inputs/first-name-field'\nimport HasAdditionalFields from '@/mixins/has-additional-fields'\nimport { inject } from 'vue'\nimport LastNameField from '@/components/inputs/last-name-field'\nimport PhoneNumberField from '@/components/inputs/phone-number-field'\nimport PostcodeField from '@/components/inputs/postcode-field'\nimport SmsOptInInput from '@/components/inputs/sms-opt-in-input'\nimport UnmaskablePasswordField from '@/components/inputs/unmaskable-password-field.vue'\n\nexport default {\n  components: { AcceptTermsOfService, AdditionalField, BotProtectedSubmitButton, BotProtectionDisclaimer, CountrySelect,\n                EmailInput, EmailOptInInput, EuDataProcessingConsent, FirstNameField, LastNameField, PhoneNumberField,\n                PostcodeField, SmsOptInInput, UnmaskablePasswordField },\n\n  mixins: [ HasAdditionalFields ],\n\n  props: {\n    acceptTermsOfServiceLabel: {\n      type: String,\n      required: true\n    },\n\n    additionalFieldConfigs: {\n      type: Array,\n      required: true\n    },\n\n    askForCountry: {\n      type: Boolean,\n      required: true\n    },\n\n    askForPostcode: {\n      type: Boolean,\n      required: true\n    },\n\n    askForSmsOptIn: {\n      type: Boolean,\n      required: true\n    },\n\n    countryLabel: {\n      type: String,\n      required: false\n    },\n\n    countryOptions: {\n      type: Array,\n      required: false\n    },\n\n    countryTogglesEuDataProcessingConsent: {\n      type: Boolean,\n      required: false\n    },\n\n    emailOptInTypeData: {\n      type: Object,\n      required: true\n    },\n\n    emailOptInLabel: {\n      type: String,\n      required: true\n    },\n\n    euDataProcessingConsentData: {\n      type: Object,\n      required: false\n    },\n\n    includeEuDataProcessingConsent: {\n      type: Boolean,\n      required: true\n    },\n\n    invitation: {\n      type: Object,\n      required: false\n    },\n\n    newAccountDisclaimer: {\n      type: String,\n      required: false\n    },\n\n    phoneNumberLabel: {\n      type: String,\n      required: false,\n      default() { return inject('i18n').t('simple_form.labels.defaults.phone_number') }\n    },\n\n    phoneNumberMandatory: {\n      type: Boolean,\n      required: true\n    },\n\n    postcodeLabel: {\n      type: String,\n      required: false,\n      default() { return inject('i18n').t('activerecord.attributes.user.postcode') }\n    },\n\n    signUpPath: {\n      type: String,\n      required: true\n    },\n\n    smsOptInLabel: {\n      type: String,\n      required: false\n    },\n\n    smsOptInTypeData: {\n      type: Object,\n      required: false\n    },\n\n    submitButtonText: {\n      type: String,\n      required: true\n    },\n\n    termsOfServiceExplicit: {\n      type: Boolean,\n      required: true\n    }\n  },\n\n  emits: ['authenticated', 'awaitingEmailConfirmation', 'errorOnSignUp', 'mfa-setup-required'],\n\n  data() {\n    const userData = {\n      acceptTos: null,\n      country: null,\n      email: this.invitation ? this.invitation.email : null,\n      emailOptInTypeId: null,\n      euDataProcessingConsent: null,\n      firstName: null,\n      joinOrganisation: null,\n      lastName: null,\n      optInSms: null,\n      password: null,\n      phoneNumber: null,\n      postcode: null,\n      smsOptInTypeId: null\n    }\n\n    if (this.additionalFieldConfigs.length > 0) {\n      userData.additionalFields = {}\n    }\n\n    return {\n      userData,\n      validationErrors: {}\n    }\n  },\n\n  computed: {\n    acceptingInvitation() {\n      return !!this.invitation\n    },\n\n    botProtectionEnabled() {\n      return this.agraConfiguration.botProtection.kind !== 'none'\n    },\n\n    geoipHostname() {\n      return this.agraConfiguration.geoipHostname\n    },\n\n    showDataProcessingConsentAfterSubmit() {\n      if (!this.showEuDataProcessingConsent) {\n        return false\n      }\n\n      if (this.euDataProcessingConsentData.explicitConsentRequired) {\n        return false\n      } else {\n        return this.euDataProcessingConsentData.messagePosition === 'after_submit'\n      }\n    },\n\n    showDataProcessingConsentLabelOnForm() {\n      if (this.euDataProcessingConsentData.explicitConsentRequired) {\n        return true\n      } else {\n        return this.euDataProcessingConsentData.messagePosition === 'before_submit'\n      }\n    },\n\n    showEuDataProcessingConsent() {\n      if (this.countryTogglesEuDataProcessingConsent) {\n        return EU_COUNTRIES.includes(this.userData.country)\n      } else {\n        return this.includeEuDataProcessingConsent\n      }\n    },\n\n    validationErrorsCamelCase() {\n      return objectKeysToCamelCase(this.validationErrors)\n    }\n  },\n\n  methods: {\n    additionalFieldConfig(config) {\n      return {\n        initialValue: this.additionalFieldValue(config.name),\n        fieldName: config.name,\n        ...config.validations,\n        ...config\n      }\n    },\n\n    additionalFieldChanged(fieldName, value) {\n      this.userData.additionalFields[fieldName] = value\n    },\n\n    additionalFieldValue(fieldName) {\n      return this.userData.additionalFields[fieldName]\n    },\n\n    emailOptInChanged(value) {\n      this.userData['emailOptInTypeId'] = value.emailOptInTypeId\n      this.userData['joinOrganisation'] = value.joinOrganisation\n    },\n\n    fieldChanged(fieldName, value) {\n      this.userData[fieldName] = value\n    },\n\n    submit({ friendlyCaptchaSolution, hcaptchaResponse, recaptchaToken, turnstileToken }) {\n      const data = { user: objectKeysToSnakeCase(this.userData) }\n      if (this.acceptingInvitation) {\n        data.invitation_token = this.invitation.token\n      }\n      if (friendlyCaptchaSolution) {\n        data.friendly_captcha_solution = friendlyCaptchaSolution\n      }\n      if (hcaptchaResponse) {\n        data.hcaptcha_response = hcaptchaResponse\n      }\n      if (recaptchaToken) {\n        data.recaptcha_token = recaptchaToken\n      }\n      if (turnstileToken) {\n        data.turnstile_token = turnstileToken\n      }\n\n      ajax.post({\n        url: this.signUpPath,\n        data,\n        camelCaseResponse: false,\n        successHandler: (response) => {\n          if (response.success) {\n            if (response.requiresEmailConfirmation) {\n              this.$emit('awaitingEmailConfirmation', { userEmail: this.userData.email, userToken: response.userToken })\n            }\n            else if (response.requiresMfaSetup) {\n              this.$emit('mfa-setup-required', {\n                enableMfaPath: response.enableMfaPath\n              })\n            }\n            else {\n              this.$emit('authenticated', {\n                afterSignInRedirect: response.afterSignInRedirect,\n                userMenu: response.userMenu\n              })\n            }\n          } else {\n            // Handle non recoverable errors (i.e.: banned member causes new user account to be disabled)\n            this.$emit('errorOnSignUp', { errorMessage: response.errorMessage })\n          }\n        },\n        errorHandler: ({ info }) => {\n          this.validationErrors = info.errors\n        }\n      })\n    },\n\n    updateSmsOptIn(value) {\n      this.userData.optInSms = value.optInSms\n      this.userData.smsOptInTypeId = value.smsOptInTypeId\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@use \"~common_styles/breakpoints\" as breakpoints;\n\n// TODO: DRY with sign-in-form\n::v-deep(input:not([type=checkbox],[type=radio])),\n::v-deep(select) {\n  height: 58px;\n\n  @include breakpoints.screen-mobile-only {\n    height: 50px;\n  }\n\n}\n\n.btn-primary {\n  text-transform: none;\n  height: 56px;\n  border-radius: 8px;\n\n  @include breakpoints.screen-mobile-only {\n    height: 50px;\n  }\n}\n</style>\n\n","<template>\n  <div>\n    <checkbox-input v-if=\"termsOfServiceExplicit\" checkbox-id=\"accept-tos\" :input-name=\"inputName\" :label=\"label\"\n                    :validation-errors=\"validationErrors\" @change=\"changed\" />\n    <div v-else>\n      <div class=\"mt-3 small-text\">\n        <input type=\"hidden\" :name=\"inputName\" value=\"1\">\n        <span v-html=\"label\" />\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport CheckboxInput from './checkbox-input'\n\nexport default {\n  components: { CheckboxInput },\n\n  props: {\n    inputName: {\n      type: String,\n      required: true\n    },\n\n    label: {\n      type: String,\n      required: true\n    },\n\n    termsOfServiceExplicit: {\n      type: Boolean,\n      required: true\n    },\n\n    validationErrors: {\n      type: Array,\n      required: false\n    }\n  },\n\n  emits: ['changed'],\n\n  mounted() {\n    // If ToS consent is required implicitly we need to emit the changed event when component\n    // is just loaded so the parent is notified and the value is set on the model\n    if (!this.termsOfServiceExplicit) {\n      this.changed(true)\n    }\n  },\n\n  methods: {\n    changed(value) {\n      this.$emit('changed', value)\n    }\n  }\n}\n</script>\n","import { render } from \"./accept-terms-of-service.vue?vue&type=template&id=7a6ec9d8\"\nimport script from \"./accept-terms-of-service.vue?vue&type=script&lang=js\"\nexport * from \"./accept-terms-of-service.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=\"{ 'is-invalid': showValidationError }\">\n    <label :for=\"inputId\">\n      <required v-if=\"required\" />\n      {{ i18n.t('activerecord.attributes.user.password') }}\n    </label>\n    <div class=\"input-group\">\n      <input :id=\"inputId\" :type=\"inputType\" :name=\"inputName\" autocomplete=\"new-password\"\n             :class=\"['form-control form-control-lg', {'is-invalid': showValidationError}]\" :value=\"value\" @input=\"setValue\">\n      <button id=\"password-unmask-button\" type=\"button\" :class=\"['btn', {'is-invalid': showValidationError}]\"\n              @click=\"toggle\">\n        {{ buttonText }}\n      </button>\n    </div>\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    inputId: {\n      type: String,\n      required: false,\n      default: 'user_password'\n    },\n    inputName: {\n      type: String,\n      required: false,\n      default: 'user[password]'\n    },\n    required: {\n      type: Boolean,\n      required: false,\n      default: true\n    },\n    validationErrors: {\n      type: Array,\n      required: false\n    },\n    value: {\n      type: String,\n      required: false\n    }\n  },\n\n  emits: ['input'],\n\n  data() {\n    return {\n      shown: false\n    }\n  },\n\n  computed: {\n    buttonText() {\n      if (this.shown) {\n        return this.i18n.t('administrative.hide')\n      } else {\n        return this.i18n.t('buttons.show')\n      }\n    },\n\n    inputType() {\n      return this.shown ? 'text' : 'password'\n    },\n\n    showValidationError() {\n      return this.validationErrors && this.validationErrors.length > 0\n    }\n  },\n\n  methods: {\n    setValue(e) {\n      this.$emit('input', e.target.value)\n    },\n\n    toggle() {\n      this.shown = !this.shown\n    }\n  }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n// TODO: Move styles from app/assets/stylesheets/phoenix/_login.css.scss into the component.\n// We currently cannot do this because the styles depend on the theme's SASS variables\n// that are not available in webpack context.\n#password-unmask-button.is-invalid {\n  border-color: #dc3545;\n}\n</style>\n","import { render } from \"./unmaskable-password-field.vue?vue&type=template&id=04606624&scoped=true\"\nimport script from \"./unmaskable-password-field.vue?vue&type=script&lang=js\"\nexport * from \"./unmaskable-password-field.vue?vue&type=script&lang=js\"\n\nimport \"./unmaskable-password-field.vue?vue&type=style&index=0&id=04606624&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-04606624\"]])\n\nexport default __exports__","import { render } from \"./sign-up-form.vue?vue&type=template&id=74ef002a&scoped=true\"\nimport script from \"./sign-up-form.vue?vue&type=script&lang=js\"\nexport * from \"./sign-up-form.vue?vue&type=script&lang=js\"\n\nimport \"./sign-up-form.vue?vue&type=style&index=0&id=74ef002a&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-74ef002a\"]])\n\nexport default __exports__"],"names":["class","key","components","Modal","props","emailAddress","type","String","required","emailSentMessage","warningMessage","_createBlock","_component_modal","headerless","size","body","_withCtx","_createElementVNode","_hoisted_1","_hoisted_2","_toDisplayString","_ctx","i18n","t","_createTextVNode","$props","_createElementBlock","_hoisted_3","_createCommentVNode","_hoisted_4","_hoisted_5","_","errorMessage","innerHTML","data","csrfToken","mounted","tokenElement","document","querySelector","this","getAttribute","name","value","$data","computed","disclaimerHtml","agraConfiguration","botProtection","kind","hideDisclaimer","_normalizeClass","$options","AuthenticityTokenField","loginUrl","action","method","_createVNode","_component_authenticity_token_field","src","_imports_0","CheckboxInput","inputName","label","termsOfServiceExplicit","Boolean","validationErrors","Array","emits","changed","methods","$emit","_component_checkbox_input","onChange","Required","ValidationErrors","inputId","default","shown","buttonText","inputType","showValidationError","length","setValue","e","target","toggle","for","_component_required","id","autocomplete","onInput","_cache","args","onClick","_component_validation_errors","errors","AcceptTermsOfService","AdditionalField","BotProtectedSubmitButton","BotProtectionDisclaimer","CountrySelect","EmailInput","EmailOptInInput","EuDataProcessingConsent","FirstNameField","LastNameField","PhoneNumberField","PostcodeField","SmsOptInInput","UnmaskablePasswordField","mixins","HasAdditionalFields","acceptTermsOfServiceLabel","additionalFieldConfigs","askForCountry","askForPostcode","askForSmsOptIn","countryLabel","countryOptions","countryTogglesEuDataProcessingConsent","emailOptInTypeData","Object","emailOptInLabel","euDataProcessingConsentData","includeEuDataProcessingConsent","invitation","newAccountDisclaimer","phoneNumberLabel","inject","phoneNumberMandatory","postcodeLabel","signUpPath","smsOptInLabel","smsOptInTypeData","submitButtonText","userData","acceptTos","country","email","emailOptInTypeId","euDataProcessingConsent","firstName","joinOrganisation","lastName","optInSms","password","phoneNumber","postcode","smsOptInTypeId","additionalFields","acceptingInvitation","botProtectionEnabled","geoipHostname","showDataProcessingConsentAfterSubmit","showEuDataProcessingConsent","explicitConsentRequired","messagePosition","showDataProcessingConsentLabelOnForm","EU_COUNTRIES","includes","validationErrorsCamelCase","objectKeysToCamelCase","additionalFieldConfig","config","initialValue","additionalFieldValue","fieldName","validations","additionalFieldChanged","emailOptInChanged","fieldChanged","submit","friendlyCaptchaSolution","hcaptchaResponse","recaptchaToken","turnstileToken","user","objectKeysToSnakeCase","invitation_token","token","friendly_captcha_solution","hcaptcha_response","recaptcha_token","turnstile_token","ajax","post","url","camelCaseResponse","successHandler","response","success","requiresEmailConfirmation","userEmail","userToken","requiresMfaSetup","enableMfaPath","afterSignInRedirect","userMenu","errorHandler","info","updateSmsOptIn","_component_email_input","disabled","onChanged","_component_unmaskable_password_field","_component_first_name_field","_component_last_name_field","_component_postcode_field","_component_phone_number_field","_component_sms_opt_in_input","_component_country_select","_Fragment","_renderList","_component_additional_field","_mergeProps","ref_for","shouldShowAdditionalField","_component_email_opt_in_input","_component_accept_terms_of_service","_component_eu_data_processing_consent","_component_bot_protected_submit_button","w","onSubmit","_component_bot_protection_disclaimer"],"sourceRoot":""}