{"version":3,"file":"discourse-authentication-validations.js","names":["define","_exports","_component","_tracking","_component2","_service","_pluginApi","_discourseI18n","_adminFormRow","_valueList","_multiSelect","_templateFactory","Object","defineProperty","value","default","CustomUserFields","static","dt7948","g","this","prototype","service","site","i","tracked","user_fields","filter","userField","id","args","outletArgs","userFieldsMinusCurrent","constructor","super","arguments","withPluginApi","api","forEach","property","includeUserFieldPropertyOnSave","setComponentTemplate","createTemplateFactory","block","moduleName","scope","Input","i18n","isStrictMode","_helper","_setupUserFieldValidation","Validations","userFieldValidations","totalCustomValidationFields","userFields","filterBy","length","hash","SetupUserFieldValidation","compute","_ref","object","setValidation","field","_object","name","initialize","addCustomUserFieldValidationCallback","has_custom_validation","value_validation_regex","RegExp","test","create","failed","reason","user_field_name","element","_runloop","UserFieldValidations","currentCustomValidationFieldCount","_bumpTotalCustomValidationFields","next","crossCheckValidations","hideNestedCustomValidations","n","action","_shouldShow","nestedUserFields","target_user_field_ids","includes","flatMap","nestedField","_clearUserField","_updateTargets","map","userFieldIds","shouldShow","find","className","toLowerCase","replace","userFieldElement","document","querySelector","style","display","stringValue","toString","show_values","field_type","checked","selectedIndex"],"sources":["discourse/plugins/discourse-authentication-validations/discourse/connectors/after-admin-user-fields/custom-user-fields.js","discourse/plugins/discourse-authentication-validations/discourse/connectors/create-account-after-user-fields/validations.js","discourse/plugins/discourse-authentication-validations/discourse/helpers/setup-user-field-validation.js","discourse/plugins/discourse-authentication-validations/discourse/initializers/user-field-validation.js","discourse/plugins/discourse-authentication-validations/discourse/services/user-field-validations.js"],"sourcesContent":["define(\"discourse/plugins/discourse-authentication-validations/discourse/connectors/after-admin-user-fields/custom-user-fields\", [\"exports\", \"@glimmer/component\", \"@glimmer/tracking\", \"@ember/component\", \"@ember/service\", \"discourse/lib/plugin-api\", \"discourse-i18n\", \"admin/components/admin-form-row\", \"admin/components/value-list\", \"select-kit/components/multi-select\", \"@ember/template-factory\"], function (_exports, _component, _tracking, _component2, _service, _pluginApi, _discourseI18n, _adminFormRow, _valueList, _multiSelect, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class CustomUserFields extends _component.default {\n    static #_ = (() => dt7948.g(this.prototype, \"site\", [_service.service]))();\n    #site = (() => (dt7948.i(this, \"site\"), void 0))();\n    static #_2 = (() => dt7948.g(this.prototype, \"userFieldsMinusCurrent\", [_tracking.tracked], function () {\n      return this.site.user_fields.filter(userField => userField.id !== this.args.outletArgs.userField.id);\n    }))();\n    #userFieldsMinusCurrent = (() => (dt7948.i(this, \"userFieldsMinusCurrent\"), void 0))();\n    constructor() {\n      super(...arguments);\n      (0, _pluginApi.withPluginApi)(\"1.21.0\", api => {\n        [\"has_custom_validation\", \"show_values\", \"target_user_field_ids\", \"value_validation_regex\"].forEach(property => api.includeUserFieldPropertyOnSave(property));\n      });\n    }\n    static #_3 = (() => (0, _component2.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n    /*\n      \n        <AdminFormRow @wrapLabel=\"true\" @type=\"checkbox\">\n          <Input\n            @type=\"checkbox\"\n            @checked={{@outletArgs.userField.has_custom_validation}}\n            class=\"has-custom-validation-checkbox\"\n          />\n          <span>\n            {{i18n \"discourse_authentication_validations.has_custom_validation\"}}\n          </span>\n        </AdminFormRow>\n    \n        {{#if @outletArgs.userField.has_custom_validation}}\n          <@outletArgs.form.Field\n            @name=\"value_validation_regex\"\n            @title={{i18n\n              \"discourse_authentication_validations.value_validation_regex.label\"\n            }}\n            @format=\"large\"\n            as |field|\n          >\n            <field.Input />\n          </@outletArgs.form.Field>\n    \n          <@outletArgs.form.Field\n            @name=\"show_values\"\n            @title={{i18n \"discourse_authentication_validations.show_values.label\"}}\n            @description={{i18n\n              \"discourse_authentication_validations.show_values.description\"\n            }}\n            @format=\"large\"\n            as |field|\n          >\n            <field.Custom>\n              <ValueList\n                @values={{@outletArgs.userField.show_values}}\n                @inputType=\"array\"\n                @onChange={{field.set}}\n              />\n            </field.Custom>\n          </@outletArgs.form.Field>\n    \n          <@outletArgs.form.Field\n            @name=\"target_user_field_ids\"\n            @title={{i18n\n              \"discourse_authentication_validations.target_user_field_ids.label\"\n            }}\n            @format=\"large\"\n            as |field|\n          >\n            <field.Custom>\n              <MultiSelect\n                @id={{field.id}}\n                @onChange={{field.set}}\n                @value={{field.value}}\n                @content={{this.userFieldsMinusCurrent}}\n                class=\"target-user-field-ids-input\"\n              />\n            </field.Custom>\n          </@outletArgs.form.Field>\n        {{/if}}\n      \n    */\n    {\n      \"id\": \"BjFJT3Rv\",\n      \"block\": \"[[[1,\\\"\\\\n    \\\"],[8,[32,0],null,[[\\\"@wrapLabel\\\",\\\"@type\\\"],[\\\"true\\\",\\\"checkbox\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n      \\\"],[8,[32,1],[[24,0,\\\"has-custom-validation-checkbox\\\"]],[[\\\"@type\\\",\\\"@checked\\\"],[\\\"checkbox\\\",[30,1,[\\\"userField\\\",\\\"has_custom_validation\\\"]]]],null],[1,\\\"\\\\n      \\\"],[10,1],[12],[1,\\\"\\\\n        \\\"],[1,[28,[32,2],[\\\"discourse_authentication_validations.has_custom_validation\\\"],null]],[1,\\\"\\\\n      \\\"],[13],[1,\\\"\\\\n    \\\"]],[]]]]],[1,\\\"\\\\n\\\\n\\\"],[41,[30,1,[\\\"userField\\\",\\\"has_custom_validation\\\"]],[[[1,\\\"      \\\"],[8,[30,1,[\\\"form\\\",\\\"Field\\\"]],null,[[\\\"@name\\\",\\\"@title\\\",\\\"@format\\\"],[\\\"value_validation_regex\\\",[28,[32,2],[\\\"discourse_authentication_validations.value_validation_regex.label\\\"],null],\\\"large\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n        \\\"],[8,[30,2,[\\\"Input\\\"]],null,null,null],[1,\\\"\\\\n      \\\"]],[2]]]]],[1,\\\"\\\\n\\\\n      \\\"],[8,[30,1,[\\\"form\\\",\\\"Field\\\"]],null,[[\\\"@name\\\",\\\"@title\\\",\\\"@description\\\",\\\"@format\\\"],[\\\"show_values\\\",[28,[32,2],[\\\"discourse_authentication_validations.show_values.label\\\"],null],[28,[32,2],[\\\"discourse_authentication_validations.show_values.description\\\"],null],\\\"large\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n        \\\"],[8,[30,3,[\\\"Custom\\\"]],null,null,[[\\\"default\\\"],[[[[1,\\\"\\\\n          \\\"],[8,[32,3],null,[[\\\"@values\\\",\\\"@inputType\\\",\\\"@onChange\\\"],[[30,1,[\\\"userField\\\",\\\"show_values\\\"]],\\\"array\\\",[30,3,[\\\"set\\\"]]]],null],[1,\\\"\\\\n        \\\"]],[]]]]],[1,\\\"\\\\n      \\\"]],[3]]]]],[1,\\\"\\\\n\\\\n      \\\"],[8,[30,1,[\\\"form\\\",\\\"Field\\\"]],null,[[\\\"@name\\\",\\\"@title\\\",\\\"@format\\\"],[\\\"target_user_field_ids\\\",[28,[32,2],[\\\"discourse_authentication_validations.target_user_field_ids.label\\\"],null],\\\"large\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n        \\\"],[8,[30,4,[\\\"Custom\\\"]],null,null,[[\\\"default\\\"],[[[[1,\\\"\\\\n          \\\"],[8,[32,4],[[24,0,\\\"target-user-field-ids-input\\\"]],[[\\\"@id\\\",\\\"@onChange\\\",\\\"@value\\\",\\\"@content\\\"],[[30,4,[\\\"id\\\"]],[30,4,[\\\"set\\\"]],[30,4,[\\\"value\\\"]],[30,0,[\\\"userFieldsMinusCurrent\\\"]]]],null],[1,\\\"\\\\n        \\\"]],[]]]]],[1,\\\"\\\\n      \\\"]],[4]]]]],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"  \\\"]],[\\\"@outletArgs\\\",\\\"field\\\",\\\"field\\\",\\\"field\\\"],false,[\\\"if\\\"]]\",\n      \"moduleName\": \"/var/www/discourse/app/assets/javascripts/discourse/discourse/plugins/discourse-authentication-validations/discourse/connectors/after-admin-user-fields/custom-user-fields.js\",\n      \"scope\": () => [_adminFormRow.default, _component2.Input, _discourseI18n.i18n, _valueList.default, _multiSelect.default],\n      \"isStrictMode\": true\n    }), this))();\n  }\n  _exports.default = CustomUserFields;\n});","define(\"discourse/plugins/discourse-authentication-validations/discourse/connectors/create-account-after-user-fields/validations\", [\"exports\", \"@glimmer/component\", \"@ember/helper\", \"@ember/service\", \"discourse/plugins/discourse-authentication-validations/discourse/helpers/setup-user-field-validation\", \"@ember/component\", \"@ember/template-factory\"], function (_exports, _component, _helper, _service, _setupUserFieldValidation, _component2, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class Validations extends _component.default {\n    static #_ = (() => dt7948.g(this.prototype, \"userFieldValidations\", [_service.service]))();\n    #userFieldValidations = (() => (dt7948.i(this, \"userFieldValidations\"), void 0))();\n    constructor() {\n      super(...arguments);\n      this.userFieldValidations.totalCustomValidationFields = this.args.outletArgs.userFields.filterBy(\"field.hasCustomValidation\").length;\n    }\n    static #_2 = (() => (0, _component2.setComponentTemplate)((0, _templateFactory.createTemplateFactory)(\n    /*\n      \n        {{#each @outletArgs.userFields as |field|}}\n          {{#if field.field.has_custom_validation}}\n            {{setupUserFieldValidation (hash field=field.field value=field.value)}}\n          {{/if}}\n        {{/each}}\n      \n    */\n    {\n      \"id\": \"pJV56UKi\",\n      \"block\": \"[[[1,\\\"\\\\n\\\"],[42,[28,[31,1],[[28,[31,1],[[30,1,[\\\"userFields\\\"]]],null]],null],null,[[[41,[30,2,[\\\"field\\\",\\\"has_custom_validation\\\"]],[[[1,\\\"        \\\"],[1,[28,[32,0],[[28,[32,1],null,[[\\\"field\\\",\\\"value\\\"],[[30,2,[\\\"field\\\"]],[30,2,[\\\"value\\\"]]]]]],null]],[1,\\\"\\\\n\\\"]],[]],null]],[2]],null],[1,\\\"  \\\"]],[\\\"@outletArgs\\\",\\\"field\\\"],false,[\\\"each\\\",\\\"-track-array\\\",\\\"if\\\"]]\",\n      \"moduleName\": \"/var/www/discourse/app/assets/javascripts/discourse/discourse/plugins/discourse-authentication-validations/discourse/connectors/create-account-after-user-fields/validations.js\",\n      \"scope\": () => [_setupUserFieldValidation.default, _helper.hash],\n      \"isStrictMode\": true\n    }), this))();\n  }\n  _exports.default = Validations;\n});","define(\"discourse/plugins/discourse-authentication-validations/discourse/helpers/setup-user-field-validation\", [\"exports\", \"@ember/component/helper\", \"@ember/service\"], function (_exports, _helper, _service) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class SetupUserFieldValidation extends _helper.default {\n    static #_ = (() => dt7948.g(this.prototype, \"userFieldValidations\", [_service.service]))();\n    #userFieldValidations = (() => (dt7948.i(this, \"userFieldValidations\"), void 0))();\n    compute(_ref) {\n      let [object] = _ref;\n      this.userFieldValidations.setValidation(object.field, object.value);\n    }\n  }\n  _exports.default = SetupUserFieldValidation;\n});","define(\"discourse/plugins/discourse-authentication-validations/discourse/initializers/user-field-validation\", [\"exports\", \"@ember/object\", \"discourse/lib/plugin-api\", \"discourse-i18n\"], function (_exports, _object, _pluginApi, _discourseI18n) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = {\n    name: \"user-field-validation\",\n    initialize() {\n      (0, _pluginApi.withPluginApi)(\"1.33.0\", api => {\n        api.addCustomUserFieldValidationCallback(userField => {\n          if (userField.field.has_custom_validation && userField.field.value_validation_regex && userField.value) {\n            if (!new RegExp(userField.field.value_validation_regex).test(userField.value)) {\n              return _object.default.create({\n                failed: true,\n                reason: (0, _discourseI18n.i18n)(\"discourse_authentication_validations.value_validation_error_message\", {\n                  user_field_name: userField.field.name\n                }),\n                element: userField.field.element\n              });\n            }\n          }\n        });\n      });\n    }\n  };\n});","define(\"discourse/plugins/discourse-authentication-validations/discourse/services/user-field-validations\", [\"exports\", \"@glimmer/tracking\", \"@ember/object\", \"@ember/runloop\", \"@ember/service\"], function (_exports, _tracking, _object, _runloop, _service) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  class UserFieldValidations extends _service.default {\n    static #_ = (() => dt7948.g(this.prototype, \"site\", [_service.service]))();\n    #site = (() => (dt7948.i(this, \"site\"), void 0))();\n    static #_2 = (() => dt7948.g(this.prototype, \"totalCustomValidationFields\", [_tracking.tracked], function () {\n      return 0;\n    }))();\n    #totalCustomValidationFields = (() => (dt7948.i(this, \"totalCustomValidationFields\"), void 0))();\n    currentCustomValidationFieldCount = 0;\n    setValidation(userField, value) {\n      this._bumpTotalCustomValidationFields();\n      if (this.currentCustomValidationFieldCount === this.totalCustomValidationFields) {\n        (0, _runloop.next)(() => {\n          this.crossCheckValidations(userField, value);\n          this.hideNestedCustomValidations(userField, value);\n        });\n      }\n    }\n    static #_3 = (() => dt7948.n(this.prototype, \"setValidation\", [_object.action]))();\n    hideNestedCustomValidations(userField, value) {\n      if (!this._shouldShow(userField, value)) {\n        const nestedUserFields = this.site.user_fields.filter(field => userField.target_user_field_ids.includes(field.id)).flatMap(nestedField => this.site.user_fields.filter(field => nestedField.target_user_field_ids.includes(field.id)));\n\n        // Clear and hide nested fields\n        nestedUserFields.forEach(field => this._clearUserField(field));\n        this._updateTargets(nestedUserFields.map(field => field.id), false);\n      }\n    }\n    static #_4 = (() => dt7948.n(this.prototype, \"hideNestedCustomValidations\", [_object.action]))();\n    crossCheckValidations(userField, value) {\n      this._updateTargets(userField.target_user_field_ids, this._shouldShow(userField, value));\n    }\n    static #_5 = (() => dt7948.n(this.prototype, \"crossCheckValidations\", [_object.action]))();\n    _updateTargets(userFieldIds, shouldShow) {\n      userFieldIds.forEach(id => {\n        const userField = this.site.user_fields.find(field => field.id === id);\n        const className = `user-field-${userField.name.toLowerCase().replace(/\\s+/g, \"-\")}`;\n        const userFieldElement = document.querySelector(`.${className}`);\n        if (userFieldElement && !shouldShow) {\n          // Clear and hide nested fields\n          userFieldElement.style.display = \"none\";\n          this._clearUserField(userField);\n        } else {\n          userFieldElement.style.display = \"\";\n        }\n      });\n    }\n    _shouldShow(userField, value) {\n      let stringValue = value?.toString(); // Account for checkbox boolean values and `null`\n      let shouldShow = userField.show_values.includes(stringValue);\n      if (value === null && userField.show_values.includes(\"null\")) {\n        shouldShow = true;\n      }\n      return shouldShow;\n    }\n    _clearUserField(userField) {\n      switch (userField.field_type) {\n        case \"confirm\":\n          userField.element.checked = false;\n          break;\n        case \"dropdown\":\n          userField.element.selectedIndex = 0;\n          break;\n        default:\n          userField.element.value = \"\";\n          break;\n      }\n    }\n    _bumpTotalCustomValidationFields() {\n      if (this.totalCustomValidationFields !== this.currentCustomValidationFieldCount) {\n        this.currentCustomValidationFieldCount += 1;\n      }\n    }\n  }\n  _exports.default = UserFieldValidations;\n});"],"mappings":"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","ignoreList":[]}