Welcome to mirror list, hosted at ThFree Co, Russian Federation.

user-status-modal-user-status-modal.js.map « dist - github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 396f910d9486ad9475d2aa8d3283ac0869c2d61d (plain)
1
2
3
4
5
<<<<<<< HEAD
{"version":3,"file":"user-status-modal-user-status-modal.js?v=6a32fa31da9cdc6321d2","sources":["webpack:///nextcloud/apps/user_status/src/filters/clearAtFilter.js","webpack:///nextcloud/apps/user_status/src/services/clearAtOptionsService.js","webpack:///nextcloud/apps/user_status/src/services/statusOptionsService.js","webpack:///nextcloud/apps/user_status/src/components/ClearAtSelect.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/CustomMessageInput.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/OnlineStatusSelect.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatus.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatusesList.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/SetStatusModal.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/ClearAtSelect.vue?vue&type=style&index=0&id=16308054&lang=scss&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/CustomMessageInput.vue?vue&type=style&index=0&id=f8ff5dac&lang=scss&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/OnlineStatusSelect.vue?vue&type=style&index=0&id=08b51a17&lang=scss&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatus.vue?vue&type=style&index=0&id=2b4a822e&lang=scss&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatusesList.vue?vue&type=style&index=0&id=31790e1a&lang=scss&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/SetStatusModal.vue?vue&type=style&index=0&id=1a4980a2&lang=scss&scoped=true&","webpack://nextcloud/./apps/user_status/src/components/ClearAtSelect.vue?2db7","webpack://nextcloud/./apps/user_status/src/components/CustomMessageInput.vue?9801","webpack://nextcloud/./apps/user_status/src/components/OnlineStatusSelect.vue?16ea","webpack://nextcloud/./apps/user_status/src/components/PredefinedStatus.vue?e97c","webpack://nextcloud/./apps/user_status/src/components/PredefinedStatusesList.vue?9d19","webpack://nextcloud/./apps/user_status/src/components/SetStatusModal.vue?9478","webpack:///nextcloud/apps/user_status/src/components/ClearAtSelect.vue","webpack:///nextcloud/apps/user_status/src/components/CustomMessageInput.vue","webpack:///nextcloud/apps/user_status/src/components/OnlineStatusSelect.vue","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatus.vue","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatusesList.vue","webpack:///nextcloud/apps/user_status/src/components/SetStatusModal.vue","webpack://nextcloud/./apps/user_status/src/components/ClearAtSelect.vue?65bb","webpack://nextcloud/./apps/user_status/src/components/CustomMessageInput.vue?8a67","webpack://nextcloud/./apps/user_status/src/components/OnlineStatusSelect.vue?0785","webpack://nextcloud/./apps/user_status/src/components/PredefinedStatus.vue?3443","webpack://nextcloud/./apps/user_status/src/components/PredefinedStatusesList.vue?17e0","webpack://nextcloud/./apps/user_status/src/components/SetStatusModal.vue?6451","webpack:///nextcloud/apps/user_status/src/components/ClearAtSelect.vue?vue&type=template&id=16308054&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/CustomMessageInput.vue?vue&type=template&id=f8ff5dac&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/OnlineStatusSelect.vue?vue&type=template&id=08b51a17&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatus.vue?vue&type=template&id=2b4a822e&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatusesList.vue?vue&type=template&id=31790e1a&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/SetStatusModal.vue?vue&type=template&id=1a4980a2&scoped=true&"],"sourcesContent":["/**\n * @copyright Copyright (c) 2020 Georg Ehrke\n *\n * @author Georg Ehrke <oc.list@georgehrke.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport moment from '@nextcloud/moment';\nimport { dateFactory } from '../services/dateService';\n/**\n * Formats a clearAt object to be human readable\n *\n * @param {object} clearAt The clearAt object\n * @return {string|null}\n */\n\nvar clearAtFilter = function clearAtFilter(clearAt) {\n  if (clearAt === null) {\n    return t('user_status', 'Don\\'t clear');\n  }\n\n  if (clearAt.type === 'end-of') {\n    switch (clearAt.time) {\n      case 'day':\n        return t('user_status', 'Today');\n\n      case 'week':\n        return t('user_status', 'This week');\n\n      default:\n        return null;\n    }\n  }\n\n  if (clearAt.type === 'period') {\n    return moment.duration(clearAt.time * 1000).humanize();\n  } // This is not an officially supported type\n  // but only used internally to show the remaining time\n  // in the Set Status Modal\n\n\n  if (clearAt.type === '_time') {\n    var momentNow = moment(dateFactory());\n    var momentClearAt = moment(clearAt.time, 'X');\n    return moment.duration(momentNow.diff(momentClearAt)).humanize();\n  }\n\n  return null;\n};\n\nexport { clearAtFilter };","/**\n * @copyright Copyright (c) 2020 Georg Ehrke\n *\n * @author Georg Ehrke <oc.list@georgehrke.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\n/**\n * Returns an array\n *\n * @return {object[]}\n */\n\nvar getAllClearAtOptions = function getAllClearAtOptions() {\n  return [{\n    label: t('user_status', 'Don\\'t clear'),\n    clearAt: null\n  }, {\n    label: t('user_status', '30 minutes'),\n    clearAt: {\n      type: 'period',\n      time: 1800\n    }\n  }, {\n    label: t('user_status', '1 hour'),\n    clearAt: {\n      type: 'period',\n      time: 3600\n    }\n  }, {\n    label: t('user_status', '4 hours'),\n    clearAt: {\n      type: 'period',\n      time: 14400\n    }\n  }, {\n    label: t('user_status', 'Today'),\n    clearAt: {\n      type: 'end-of',\n      time: 'day'\n    }\n  }, {\n    label: t('user_status', 'This week'),\n    clearAt: {\n      type: 'end-of',\n      time: 'week'\n    }\n  }];\n};\n\nexport { getAllClearAtOptions };","/**\n * @copyright Copyright (c) 2020 Georg Ehrke\n *\n * @author Georg Ehrke <oc.list@georgehrke.com>\n * @author Jan C. Borchardt <hey@jancborchardt.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\n/**\n * Returns a list of all user-definable statuses\n *\n * @return {object[]}\n */\n\nvar getAllStatusOptions = function getAllStatusOptions() {\n  return [{\n    type: 'online',\n    label: t('user_status', 'Online'),\n    icon: 'icon-user-status-online'\n  }, {\n    type: 'away',\n    label: t('user_status', 'Away'),\n    icon: 'icon-user-status-away'\n  }, {\n    type: 'dnd',\n    label: t('user_status', 'Do not disturb'),\n    subline: t('user_status', 'Mute all notifications'),\n    icon: 'icon-user-status-dnd'\n  }, {\n    type: 'invisible',\n    label: t('user_status', 'Invisible'),\n    subline: t('user_status', 'Appear offline'),\n    icon: 'icon-user-status-invisible'\n  }];\n};\n\nexport { getAllStatusOptions };","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport Multiselect from '@nextcloud/vue/dist/Components/Multiselect';\nimport { getAllClearAtOptions } from '../services/clearAtOptionsService';\nimport { clearAtFilter } from '../filters/clearAtFilter';\nexport default {\n  name: 'ClearAtSelect',\n  components: {\n    Multiselect: Multiselect\n  },\n  props: {\n    clearAt: {\n      type: Object,\n      default: null\n    }\n  },\n  data: function data() {\n    return {\n      options: getAllClearAtOptions()\n    };\n  },\n  computed: {\n    /**\n     * Returns an object of the currently selected option\n     *\n     * @return {object}\n     */\n    option: function option() {\n      return {\n        clearAt: this.clearAt,\n        label: clearAtFilter(this.clearAt)\n      };\n    }\n  },\n  methods: {\n    /**\n     * Triggered when the user selects a new option.\n     *\n     * @param {object=} option The new selected option\n     */\n    select: function select(option) {\n      if (!option) {\n        return;\n      }\n\n      this.$emit('select-clear-at', option.clearAt);\n    }\n  }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n  name: 'CustomMessageInput',\n  props: {\n    message: {\n      type: String,\n      required: true,\n      default: function _default() {\n        return '';\n      }\n    },\n    disabled: {\n      type: Boolean,\n      default: false\n    }\n  },\n  methods: {\n    focus: function focus() {\n      this.$refs.input.focus();\n    },\n\n    /**\n     * Notifies the parent component about a changed input\n     *\n     * @param {Event} event The Change Event\n     */\n    change: function change(event) {\n      this.$emit('change', event.target.value);\n    },\n    submit: function submit(event) {\n      this.$emit('submit', event.target.value);\n    }\n  }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n  name: 'OnlineStatusSelect',\n  props: {\n    checked: {\n      type: Boolean,\n      default: false\n    },\n    icon: {\n      type: String,\n      required: true\n    },\n    type: {\n      type: String,\n      required: true\n    },\n    label: {\n      type: String,\n      required: true\n    },\n    subline: {\n      type: String,\n      default: null\n    }\n  },\n  computed: {\n    id: function id() {\n      return \"user-status-online-status-\".concat(this.type);\n    }\n  },\n  methods: {\n    onChange: function onChange() {\n      this.$emit('select', this.type);\n    }\n  }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { clearAtFilter } from '../filters/clearAtFilter';\nexport default {\n  name: 'PredefinedStatus',\n  filters: {\n    clearAtFilter: clearAtFilter\n  },\n  props: {\n    messageId: {\n      type: String,\n      required: true\n    },\n    icon: {\n      type: String,\n      required: true\n    },\n    message: {\n      type: String,\n      required: true\n    },\n    clearAt: {\n      type: Object,\n      required: false,\n      default: null\n    }\n  },\n  methods: {\n    /**\n     * Emits an event when the user clicks the row\n     */\n    select: function select() {\n      this.$emit('select');\n    }\n  }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport PredefinedStatus from './PredefinedStatus';\nimport { mapState } from 'vuex';\nexport default {\n  name: 'PredefinedStatusesList',\n  components: {\n    PredefinedStatus: PredefinedStatus\n  },\n  computed: _objectSpread(_objectSpread({}, mapState({\n    predefinedStatuses: function predefinedStatuses(state) {\n      return state.predefinedStatuses.predefinedStatuses;\n    }\n  })), {}, {\n    /**\n     * Indicator whether the predefined statuses have already been loaded\n     *\n     * @return {boolean}\n     */\n    hasLoaded: function hasLoaded() {\n      return this.predefinedStatuses.length > 0;\n    }\n  }),\n\n  /**\n   * Loads all predefined statuses from the server\n   * when this component is mounted\n   */\n  mounted: function mounted() {\n    this.$store.dispatch('loadAllPredefinedStatuses');\n  },\n  methods: {\n    /**\n     * Emits an event when the user selects a status\n     *\n     * @param {object} status The selected status\n     */\n    selectStatus: function selectStatus(status) {\n      this.$emit('select-status', status);\n    }\n  }\n};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { showError } from '@nextcloud/dialogs';\nimport EmojiPicker from '@nextcloud/vue/dist/Components/EmojiPicker';\nimport Modal from '@nextcloud/vue/dist/Components/Modal';\nimport { getAllStatusOptions } from '../services/statusOptionsService';\nimport OnlineStatusMixin from '../mixins/OnlineStatusMixin';\nimport PredefinedStatusesList from './PredefinedStatusesList';\nimport CustomMessageInput from './CustomMessageInput';\nimport ClearAtSelect from './ClearAtSelect';\nimport OnlineStatusSelect from './OnlineStatusSelect';\nexport default {\n  name: 'SetStatusModal',\n  components: {\n    ClearAtSelect: ClearAtSelect,\n    CustomMessageInput: CustomMessageInput,\n    EmojiPicker: EmojiPicker,\n    Modal: Modal,\n    OnlineStatusSelect: OnlineStatusSelect,\n    PredefinedStatusesList: PredefinedStatusesList\n  },\n  mixins: [OnlineStatusMixin],\n  data: function data() {\n    return {\n      clearAt: null,\n      icon: null,\n      message: '',\n      messageId: '',\n      isSavingStatus: false,\n      statuses: getAllStatusOptions()\n    };\n  },\n  computed: {\n    /**\n     * Returns the user-set icon or a smiley in case no icon is set\n     *\n     * @return {string}\n     */\n    visibleIcon: function visibleIcon() {\n      return this.icon || '😀';\n    }\n  },\n\n  /**\n   * Loads the current status when a user opens dialog\n   */\n  mounted: function mounted() {\n    this.messageId = this.$store.state.userStatus.messageId;\n    this.icon = this.$store.state.userStatus.icon;\n    this.message = this.$store.state.userStatus.message || '';\n\n    if (this.$store.state.userStatus.clearAt !== null) {\n      this.clearAt = {\n        type: '_time',\n        time: this.$store.state.userStatus.clearAt\n      };\n    }\n  },\n  methods: {\n    /**\n     * Closes the Set Status modal\n     */\n    closeModal: function closeModal() {\n      this.$emit('close');\n    },\n\n    /**\n     * Sets a new icon\n     *\n     * @param {string} icon The new icon\n     */\n    setIcon: function setIcon(icon) {\n      var _this = this;\n\n      this.messageId = null;\n      this.icon = icon;\n      this.$nextTick(function () {\n        _this.$refs.customMessageInput.focus();\n      });\n    },\n\n    /**\n     * Sets a new message\n     *\n     * @param {string} message The new message\n     */\n    setMessage: function setMessage(message) {\n      this.messageId = null;\n      this.message = message;\n    },\n\n    /**\n     * Sets a new clearAt value\n     *\n     * @param {object} clearAt The new clearAt object\n     */\n    setClearAt: function setClearAt(clearAt) {\n      this.clearAt = clearAt;\n    },\n\n    /**\n     * Sets new icon/message/clearAt based on a predefined message\n     *\n     * @param {object} status The predefined status object\n     */\n    selectPredefinedMessage: function selectPredefinedMessage(status) {\n      this.messageId = status.id;\n      this.clearAt = status.clearAt;\n      this.icon = status.icon;\n      this.message = status.message;\n    },\n\n    /**\n     * Saves the status and closes the\n     *\n     * @return {Promise<void>}\n     */\n    saveStatus: function saveStatus() {\n      var _this2 = this;\n\n      return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n        return regeneratorRuntime.wrap(function _callee$(_context) {\n          while (1) {\n            switch (_context.prev = _context.next) {\n              case 0:\n                if (!_this2.isSavingStatus) {\n                  _context.next = 2;\n                  break;\n                }\n\n                return _context.abrupt(\"return\");\n\n              case 2:\n                _context.prev = 2;\n                _this2.isSavingStatus = true;\n\n                if (!(_this2.messageId !== undefined && _this2.messageId !== null)) {\n                  _context.next = 9;\n                  break;\n                }\n\n                _context.next = 7;\n                return _this2.$store.dispatch('setPredefinedMessage', {\n                  messageId: _this2.messageId,\n                  clearAt: _this2.clearAt\n                });\n\n              case 7:\n                _context.next = 11;\n                break;\n\n              case 9:\n                _context.next = 11;\n                return _this2.$store.dispatch('setCustomMessage', {\n                  message: _this2.message,\n                  icon: _this2.icon,\n                  clearAt: _this2.clearAt\n                });\n\n              case 11:\n                _context.next = 19;\n                break;\n\n              case 13:\n                _context.prev = 13;\n                _context.t0 = _context[\"catch\"](2);\n                showError(_this2.$t('user_status', 'There was an error saving the status'));\n                console.debug(_context.t0);\n                _this2.isSavingStatus = false;\n                return _context.abrupt(\"return\");\n\n              case 19:\n                _this2.isSavingStatus = false;\n\n                _this2.closeModal();\n\n              case 21:\n              case \"end\":\n                return _context.stop();\n            }\n          }\n        }, _callee, null, [[2, 13]]);\n      }))();\n    },\n\n    /**\n     *\n     * @return {Promise<void>}\n     */\n    clearStatus: function clearStatus() {\n      var _this3 = this;\n\n      return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n        return regeneratorRuntime.wrap(function _callee2$(_context2) {\n          while (1) {\n            switch (_context2.prev = _context2.next) {\n              case 0:\n                _context2.prev = 0;\n                _this3.isSavingStatus = true;\n                _context2.next = 4;\n                return _this3.$store.dispatch('clearMessage');\n\n              case 4:\n                _context2.next = 12;\n                break;\n\n              case 6:\n                _context2.prev = 6;\n                _context2.t0 = _context2[\"catch\"](0);\n                showError(_this3.$t('user_status', 'There was an error clearing the status'));\n                console.debug(_context2.t0);\n                _this3.isSavingStatus = false;\n                return _context2.abrupt(\"return\");\n\n              case 12:\n                _this3.isSavingStatus = false;\n\n                _this3.closeModal();\n\n              case 14:\n              case \"end\":\n                return _context2.stop();\n            }\n          }\n        }, _callee2, null, [[0, 6]]);\n      }))();\n    }\n  }\n};","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".clear-at-select[data-v-16308054] {\\n  display: flex;\\n  margin-bottom: 10px;\\n  align-items: center;\\n}\\n.clear-at-select__label[data-v-16308054] {\\n  margin-right: 10px;\\n}\\n.clear-at-select .multiselect[data-v-16308054] {\\n  flex-grow: 1;\\n  min-width: 130px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".custom-input__form[data-v-f8ff5dac] {\\n  flex-grow: 1;\\n}\\n.custom-input__form input[data-v-f8ff5dac] {\\n  width: 100%;\\n  border-radius: 0 var(--border-radius) var(--border-radius) 0;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".user-status-online-select__input[data-v-08b51a17] {\\n  position: absolute;\\n  top: auto;\\n  left: -10000px;\\n  overflow: hidden;\\n  width: 1px;\\n  height: 1px;\\n}\\n.user-status-online-select__label[data-v-08b51a17] {\\n  display: block;\\n  margin: 8px;\\n  padding: 8px;\\n  padding-left: 40px;\\n  border: 2px solid var(--color-main-background);\\n  border-radius: var(--border-radius-large);\\n  background-color: var(--color-background-hover);\\n  background-position: 8px center;\\n  background-size: 24px;\\n}\\n.user-status-online-select__label span[data-v-08b51a17], .user-status-online-select__label[data-v-08b51a17] {\\n  cursor: pointer;\\n}\\n.user-status-online-select__input:checked + .user-status-online-select__label[data-v-08b51a17], .user-status-online-select__input:focus + .user-status-online-select__label[data-v-08b51a17], .user-status-online-select__label[data-v-08b51a17]:hover {\\n  border-color: var(--color-primary);\\n}\\n.user-status-online-select__subline[data-v-08b51a17] {\\n  display: block;\\n  color: var(--color-text-lighter);\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".predefined-status[data-v-2b4a822e] {\\n  display: flex;\\n  flex-wrap: nowrap;\\n  justify-content: flex-start;\\n  flex-basis: 100%;\\n  border-radius: var(--border-radius);\\n  align-items: center;\\n  min-height: 44px;\\n}\\n.predefined-status[data-v-2b4a822e]:hover, .predefined-status[data-v-2b4a822e]:focus {\\n  background-color: var(--color-background-hover);\\n}\\n.predefined-status__icon[data-v-2b4a822e] {\\n  flex-basis: 40px;\\n  text-align: center;\\n}\\n.predefined-status__message[data-v-2b4a822e] {\\n  font-weight: bold;\\n  padding: 0 6px;\\n}\\n.predefined-status__clear-at[data-v-2b4a822e] {\\n  opacity: 0.7;\\n}\\n.predefined-status__clear-at[data-v-2b4a822e]::before {\\n  content: \\\" - \\\";\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".predefined-statuses-list[data-v-31790e1a] {\\n  display: flex;\\n  flex-direction: column;\\n  margin-bottom: 10px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"[data-v-1a4980a2] .modal-wrapper .prev,[data-v-1a4980a2] .modal-wrapper .next {\\n  display: none !important;\\n}\\n[data-v-1a4980a2] .modal-wrapper .modal-container {\\n  max-height: 100% !important;\\n}\\n[data-v-1a4980a2] .modal-header .modal-title {\\n  display: none;\\n}\\n.set-status-modal[data-v-1a4980a2] {\\n  min-height: 200px;\\n  padding: 8px 20px 20px 20px;\\n  max-height: 95vh;\\n  overflow: auto;\\n}\\n.set-status-modal__header[data-v-1a4980a2] {\\n  text-align: center;\\n  font-weight: bold;\\n}\\n.set-status-modal__online-status[data-v-1a4980a2] {\\n  display: grid;\\n  margin-bottom: 40px;\\n  grid-template-columns: 1fr 1fr;\\n}\\n.set-status-modal__custom-input[data-v-1a4980a2] {\\n  display: flex;\\n  width: 100%;\\n  margin-bottom: 10px;\\n}\\n.set-status-modal__custom-input .custom-input__emoji-button[data-v-1a4980a2] {\\n  flex-basis: 40px;\\n  flex-grow: 0;\\n  width: 40px;\\n  height: 34px;\\n  margin-right: 0;\\n  border-right: none;\\n  border-radius: var(--border-radius) 0 0 var(--border-radius);\\n}\\n.set-status-modal .status-buttons[data-v-1a4980a2] {\\n  display: flex;\\n}\\n.set-status-modal .status-buttons button[data-v-1a4980a2] {\\n  flex-basis: 50%;\\n}\\n@media only screen and (max-width: 500px) {\\n.set-status-modal__online-status[data-v-1a4980a2] {\\n    grid-template-columns: none !important;\\n}\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClearAtSelect.vue?vue&type=style&index=0&id=16308054&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomMessageInput.vue?vue&type=style&index=0&id=f8ff5dac&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OnlineStatusSelect.vue?vue&type=style&index=0&id=08b51a17&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatus.vue?vue&type=style&index=0&id=2b4a822e&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatusesList.vue?vue&type=style&index=0&id=31790e1a&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SetStatusModal.vue?vue&type=style&index=0&id=1a4980a2&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import { render, staticRenderFns } from \"./ClearAtSelect.vue?vue&type=template&id=16308054&scoped=true&\"\nimport script from \"./ClearAtSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./ClearAtSelect.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ClearAtSelect.vue?vue&type=style&index=0&id=16308054&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"16308054\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/srv/www/htdocs/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('16308054')) {\n      api.createRecord('16308054', component.options)\n    } else {\n      api.reload('16308054', component.options)\n    }\n    module.hot.accept(\"./ClearAtSelect.vue?vue&type=template&id=16308054&scoped=true&\", function () {\n      api.rerender('16308054', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/ClearAtSelect.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./CustomMessageInput.vue?vue&type=template&id=f8ff5dac&scoped=true&\"\nimport script from \"./CustomMessageInput.vue?vue&type=script&lang=js&\"\nexport * from \"./CustomMessageInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CustomMessageInput.vue?vue&type=style&index=0&id=f8ff5dac&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"f8ff5dac\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/srv/www/htdocs/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('f8ff5dac')) {\n      api.createRecord('f8ff5dac', component.options)\n    } else {\n      api.reload('f8ff5dac', component.options)\n    }\n    module.hot.accept(\"./CustomMessageInput.vue?vue&type=template&id=f8ff5dac&scoped=true&\", function () {\n      api.rerender('f8ff5dac', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/CustomMessageInput.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./OnlineStatusSelect.vue?vue&type=template&id=08b51a17&scoped=true&\"\nimport script from \"./OnlineStatusSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./OnlineStatusSelect.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OnlineStatusSelect.vue?vue&type=style&index=0&id=08b51a17&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"08b51a17\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/srv/www/htdocs/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('08b51a17')) {\n      api.createRecord('08b51a17', component.options)\n    } else {\n      api.reload('08b51a17', component.options)\n    }\n    module.hot.accept(\"./OnlineStatusSelect.vue?vue&type=template&id=08b51a17&scoped=true&\", function () {\n      api.rerender('08b51a17', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/OnlineStatusSelect.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./PredefinedStatus.vue?vue&type=template&id=2b4a822e&scoped=true&\"\nimport script from \"./PredefinedStatus.vue?vue&type=script&lang=js&\"\nexport * from \"./PredefinedStatus.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PredefinedStatus.vue?vue&type=style&index=0&id=2b4a822e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"2b4a822e\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/srv/www/htdocs/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('2b4a822e')) {\n      api.createRecord('2b4a822e', component.options)\n    } else {\n      api.reload('2b4a822e', component.options)\n    }\n    module.hot.accept(\"./PredefinedStatus.vue?vue&type=template&id=2b4a822e&scoped=true&\", function () {\n      api.rerender('2b4a822e', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/PredefinedStatus.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./PredefinedStatusesList.vue?vue&type=template&id=31790e1a&scoped=true&\"\nimport script from \"./PredefinedStatusesList.vue?vue&type=script&lang=js&\"\nexport * from \"./PredefinedStatusesList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PredefinedStatusesList.vue?vue&type=style&index=0&id=31790e1a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"31790e1a\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/srv/www/htdocs/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('31790e1a')) {\n      api.createRecord('31790e1a', component.options)\n    } else {\n      api.reload('31790e1a', component.options)\n    }\n    module.hot.accept(\"./PredefinedStatusesList.vue?vue&type=template&id=31790e1a&scoped=true&\", function () {\n      api.rerender('31790e1a', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/PredefinedStatusesList.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./SetStatusModal.vue?vue&type=template&id=1a4980a2&scoped=true&\"\nimport script from \"./SetStatusModal.vue?vue&type=script&lang=js&\"\nexport * from \"./SetStatusModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SetStatusModal.vue?vue&type=style&index=0&id=1a4980a2&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"1a4980a2\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/srv/www/htdocs/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('1a4980a2')) {\n      api.createRecord('1a4980a2', component.options)\n    } else {\n      api.reload('1a4980a2', component.options)\n    }\n    module.hot.accept(\"./SetStatusModal.vue?vue&type=template&id=1a4980a2&scoped=true&\", function () {\n      api.rerender('1a4980a2', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/SetStatusModal.vue\"\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClearAtSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClearAtSelect.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomMessageInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomMessageInput.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OnlineStatusSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OnlineStatusSelect.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatus.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatusesList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatusesList.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SetStatusModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SetStatusModal.vue?vue&type=script&lang=js&\"","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\n    \"div\",\n    { staticClass: \"clear-at-select\" },\n    [\n      _c(\"span\", { staticClass: \"clear-at-select__label\" }, [\n        _vm._v(\n          \"\\n\\t\\t\" +\n            _vm._s(_vm.$t(\"user_status\", \"Clear status message after\")) +\n            \"\\n\\t\"\n        ),\n      ]),\n      _vm._v(\" \"),\n      _c(\"Multiselect\", {\n        attrs: {\n          label: \"label\",\n          value: _vm.option,\n          options: _vm.options,\n          \"open-direction\": \"top\",\n        },\n        on: { select: _vm.select },\n      }),\n    ],\n    1\n  )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\n    \"form\",\n    {\n      staticClass: \"custom-input__form\",\n      on: {\n        submit: function ($event) {\n          $event.preventDefault()\n        },\n      },\n    },\n    [\n      _c(\"input\", {\n        ref: \"input\",\n        attrs: {\n          maxlength: \"80\",\n          disabled: _vm.disabled,\n          placeholder: _vm.$t(\"user_status\", \"What is your status?\"),\n          type: \"text\",\n        },\n        domProps: { value: _vm.message },\n        on: {\n          change: _vm.change,\n          keyup: [\n            _vm.change,\n            function ($event) {\n              if (\n                !$event.type.indexOf(\"key\") &&\n                _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")\n              ) {\n                return null\n              }\n              return _vm.submit.apply(null, arguments)\n            },\n          ],\n          paste: _vm.change,\n        },\n      }),\n    ]\n  )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\"div\", { staticClass: \"user-status-online-select\" }, [\n    _c(\"input\", {\n      staticClass: \"user-status-online-select__input\",\n      attrs: { id: _vm.id, type: \"radio\", name: \"user-status-online\" },\n      domProps: { checked: _vm.checked },\n      on: { change: _vm.onChange },\n    }),\n    _vm._v(\" \"),\n    _c(\n      \"label\",\n      {\n        staticClass: \"user-status-online-select__label\",\n        class: _vm.icon,\n        attrs: { for: _vm.id },\n      },\n      [\n        _vm._v(\"\\n\\t\\t\" + _vm._s(_vm.label) + \"\\n\\t\\t\"),\n        _c(\"em\", { staticClass: \"user-status-online-select__subline\" }, [\n          _vm._v(_vm._s(_vm.subline)),\n        ]),\n      ]\n    ),\n  ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\n    \"div\",\n    {\n      staticClass: \"predefined-status\",\n      attrs: { tabindex: \"0\" },\n      on: {\n        keyup: [\n          function ($event) {\n            if (\n              !$event.type.indexOf(\"key\") &&\n              _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")\n            ) {\n              return null\n            }\n            return _vm.select.apply(null, arguments)\n          },\n          function ($event) {\n            if (\n              !$event.type.indexOf(\"key\") &&\n              _vm._k($event.keyCode, \"space\", 32, $event.key, [\" \", \"Spacebar\"])\n            ) {\n              return null\n            }\n            return _vm.select.apply(null, arguments)\n          },\n        ],\n        click: _vm.select,\n      },\n    },\n    [\n      _c(\"span\", { staticClass: \"predefined-status__icon\" }, [\n        _vm._v(\"\\n\\t\\t\" + _vm._s(_vm.icon) + \"\\n\\t\"),\n      ]),\n      _vm._v(\" \"),\n      _c(\"span\", { staticClass: \"predefined-status__message\" }, [\n        _vm._v(\"\\n\\t\\t\" + _vm._s(_vm.message) + \"\\n\\t\"),\n      ]),\n      _vm._v(\" \"),\n      _c(\"span\", { staticClass: \"predefined-status__clear-at\" }, [\n        _vm._v(\n          \"\\n\\t\\t\" + _vm._s(_vm._f(\"clearAtFilter\")(_vm.clearAt)) + \"\\n\\t\"\n        ),\n      ]),\n    ]\n  )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _vm.hasLoaded\n    ? _c(\n        \"div\",\n        { staticClass: \"predefined-statuses-list\" },\n        _vm._l(_vm.predefinedStatuses, function (status) {\n          return _c(\"PredefinedStatus\", {\n            key: status.id,\n            attrs: {\n              \"message-id\": status.id,\n              icon: status.icon,\n              message: status.message,\n              \"clear-at\": status.clearAt,\n            },\n            on: {\n              select: function ($event) {\n                return _vm.selectStatus(status)\n              },\n            },\n          })\n        }),\n        1\n      )\n    : _c(\"div\", { staticClass: \"predefined-statuses-list\" }, [\n        _c(\"div\", { staticClass: \"icon icon-loading-small\" }),\n      ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\n    \"Modal\",\n    {\n      attrs: { size: \"normal\", title: _vm.$t(\"user_status\", \"Set status\") },\n      on: { close: _vm.closeModal },\n    },\n    [\n      _c(\n        \"div\",\n        { staticClass: \"set-status-modal\" },\n        [\n          _c(\"div\", { staticClass: \"set-status-modal__header\" }, [\n            _c(\"h3\", [_vm._v(_vm._s(_vm.$t(\"user_status\", \"Online status\")))]),\n          ]),\n          _vm._v(\" \"),\n          _c(\n            \"div\",\n            { staticClass: \"set-status-modal__online-status\" },\n            _vm._l(_vm.statuses, function (status) {\n              return _c(\n                \"OnlineStatusSelect\",\n                _vm._b(\n                  {\n                    key: status.type,\n                    attrs: { checked: status.type === _vm.statusType },\n                    on: { select: _vm.changeStatus },\n                  },\n                  \"OnlineStatusSelect\",\n                  status,\n                  false\n                )\n              )\n            }),\n            1\n          ),\n          _vm._v(\" \"),\n          _c(\"div\", { staticClass: \"set-status-modal__header\" }, [\n            _c(\"h3\", [_vm._v(_vm._s(_vm.$t(\"user_status\", \"Status message\")))]),\n          ]),\n          _vm._v(\" \"),\n          _c(\n            \"div\",\n            { staticClass: \"set-status-modal__custom-input\" },\n            [\n              _c(\"EmojiPicker\", { on: { select: _vm.setIcon } }, [\n                _c(\"button\", { staticClass: \"custom-input__emoji-button\" }, [\n                  _vm._v(\n                    \"\\n\\t\\t\\t\\t\\t\" + _vm._s(_vm.visibleIcon) + \"\\n\\t\\t\\t\\t\"\n                  ),\n                ]),\n              ]),\n              _vm._v(\" \"),\n              _c(\"CustomMessageInput\", {\n                ref: \"customMessageInput\",\n                attrs: { message: _vm.message },\n                on: { change: _vm.setMessage, submit: _vm.saveStatus },\n              }),\n            ],\n            1\n          ),\n          _vm._v(\" \"),\n          _c(\"PredefinedStatusesList\", {\n            on: { selectStatus: _vm.selectPredefinedMessage },\n          }),\n          _vm._v(\" \"),\n          _c(\"ClearAtSelect\", {\n            attrs: { \"clear-at\": _vm.clearAt },\n            on: { selectClearAt: _vm.setClearAt },\n          }),\n          _vm._v(\" \"),\n          _c(\"div\", { staticClass: \"status-buttons\" }, [\n            _c(\n              \"button\",\n              {\n                staticClass: \"status-buttons__select\",\n                attrs: { disabled: _vm.isSavingStatus },\n                on: { click: _vm.clearStatus },\n              },\n              [\n                _vm._v(\n                  \"\\n\\t\\t\\t\\t\" +\n                    _vm._s(_vm.$t(\"user_status\", \"Clear status message\")) +\n                    \"\\n\\t\\t\\t\"\n                ),\n              ]\n            ),\n            _vm._v(\" \"),\n            _c(\n              \"button\",\n              {\n                staticClass: \"status-buttons__primary primary\",\n                attrs: { disabled: _vm.isSavingStatus },\n                on: { click: _vm.saveStatus },\n              },\n              [\n                _vm._v(\n                  \"\\n\\t\\t\\t\\t\" +\n                    _vm._s(_vm.$t(\"user_status\", \"Set status message\")) +\n                    \"\\n\\t\\t\\t\"\n                ),\n              ]\n            ),\n          ]),\n        ],\n        1\n      ),\n    ]\n  )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;ACxEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;;;;;;;;;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;AC/SA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;ACvCA;;A;;;;;;;;;;;ACAA;;A;;;;;;;;;;;ACAA;;A;;;;;;;;;;;ACAA;;A;;;;;;;;;;;ACAA;;A;;;;;;;;;;;ACAA;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;A","sourceRoot":""}
=======
{"version":3,"file":"user-status-modal-user-status-modal.js?v=c52a56aeed3681614f38","sources":["webpack:///nextcloud/apps/user_status/src/filters/clearAtFilter.js","webpack:///nextcloud/apps/user_status/src/services/clearAtOptionsService.js","webpack:///nextcloud/apps/user_status/src/services/statusOptionsService.js","webpack:///nextcloud/apps/user_status/src/components/ClearAtSelect.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/CustomMessageInput.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/OnlineStatusSelect.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatus.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatusesList.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/SetStatusModal.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/user_status/src/components/ClearAtSelect.vue?vue&type=style&index=0&id=16308054&lang=scss&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/CustomMessageInput.vue?vue&type=style&index=0&id=f8ff5dac&lang=scss&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/OnlineStatusSelect.vue?vue&type=style&index=0&id=08b51a17&lang=scss&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatus.vue?vue&type=style&index=0&id=2b4a822e&lang=scss&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatusesList.vue?vue&type=style&index=0&id=31790e1a&lang=scss&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/SetStatusModal.vue?vue&type=style&index=0&id=1a4980a2&lang=scss&scoped=true&","webpack://nextcloud/./apps/user_status/src/components/ClearAtSelect.vue?2db7","webpack://nextcloud/./apps/user_status/src/components/CustomMessageInput.vue?9801","webpack://nextcloud/./apps/user_status/src/components/OnlineStatusSelect.vue?16ea","webpack://nextcloud/./apps/user_status/src/components/PredefinedStatus.vue?e97c","webpack://nextcloud/./apps/user_status/src/components/PredefinedStatusesList.vue?9d19","webpack://nextcloud/./apps/user_status/src/components/SetStatusModal.vue?9478","webpack:///nextcloud/apps/user_status/src/components/ClearAtSelect.vue","webpack:///nextcloud/apps/user_status/src/components/CustomMessageInput.vue","webpack:///nextcloud/apps/user_status/src/components/OnlineStatusSelect.vue","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatus.vue","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatusesList.vue","webpack:///nextcloud/apps/user_status/src/components/SetStatusModal.vue","webpack://nextcloud/./apps/user_status/src/components/ClearAtSelect.vue?65bb","webpack://nextcloud/./apps/user_status/src/components/CustomMessageInput.vue?8a67","webpack://nextcloud/./apps/user_status/src/components/OnlineStatusSelect.vue?0785","webpack://nextcloud/./apps/user_status/src/components/PredefinedStatus.vue?3443","webpack://nextcloud/./apps/user_status/src/components/PredefinedStatusesList.vue?17e0","webpack://nextcloud/./apps/user_status/src/components/SetStatusModal.vue?6451","webpack:///nextcloud/apps/user_status/src/components/ClearAtSelect.vue?vue&type=template&id=16308054&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/CustomMessageInput.vue?vue&type=template&id=f8ff5dac&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/OnlineStatusSelect.vue?vue&type=template&id=08b51a17&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatus.vue?vue&type=template&id=2b4a822e&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/PredefinedStatusesList.vue?vue&type=template&id=31790e1a&scoped=true&","webpack:///nextcloud/apps/user_status/src/components/SetStatusModal.vue?vue&type=template&id=1a4980a2&scoped=true&"],"sourcesContent":["/**\n * @copyright Copyright (c) 2020 Georg Ehrke\n *\n * @author Georg Ehrke <oc.list@georgehrke.com>\n *\n * @license  GPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport moment from '@nextcloud/moment';\nimport { dateFactory } from '../services/dateService';\n/**\n * Formats a clearAt object to be human readable\n *\n * @param {object} clearAt The clearAt object\n * @return {string|null}\n */\n\nvar clearAtFilter = function clearAtFilter(clearAt) {\n  if (clearAt === null) {\n    return t('user_status', 'Don\\'t clear');\n  }\n\n  if (clearAt.type === 'end-of') {\n    switch (clearAt.time) {\n      case 'day':\n        return t('user_status', 'Today');\n\n      case 'week':\n        return t('user_status', 'This week');\n\n      default:\n        return null;\n    }\n  }\n\n  if (clearAt.type === 'period') {\n    return moment.duration(clearAt.time * 1000).humanize();\n  } // This is not an officially supported type\n  // but only used internally to show the remaining time\n  // in the Set Status Modal\n\n\n  if (clearAt.type === '_time') {\n    var momentNow = moment(dateFactory());\n    var momentClearAt = moment(clearAt.time, 'X');\n    return moment.duration(momentNow.diff(momentClearAt)).humanize();\n  }\n\n  return null;\n};\n\nexport { clearAtFilter };","/**\n * @copyright Copyright (c) 2020 Georg Ehrke\n *\n * @author Georg Ehrke <oc.list@georgehrke.com>\n *\n * @license  GPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\n/**\n * Returns an array\n *\n * @return {object[]}\n */\n\nvar getAllClearAtOptions = function getAllClearAtOptions() {\n  return [{\n    label: t('user_status', 'Don\\'t clear'),\n    clearAt: null\n  }, {\n    label: t('user_status', '30 minutes'),\n    clearAt: {\n      type: 'period',\n      time: 1800\n    }\n  }, {\n    label: t('user_status', '1 hour'),\n    clearAt: {\n      type: 'period',\n      time: 3600\n    }\n  }, {\n    label: t('user_status', '4 hours'),\n    clearAt: {\n      type: 'period',\n      time: 14400\n    }\n  }, {\n    label: t('user_status', 'Today'),\n    clearAt: {\n      type: 'end-of',\n      time: 'day'\n    }\n  }, {\n    label: t('user_status', 'This week'),\n    clearAt: {\n      type: 'end-of',\n      time: 'week'\n    }\n  }];\n};\n\nexport { getAllClearAtOptions };","/**\n * @copyright Copyright (c) 2020 Georg Ehrke\n *\n * @author Georg Ehrke <oc.list@georgehrke.com>\n * @author Jan C. Borchardt <hey@jancborchardt.net>\n *\n * @license  GPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\n/**\n * Returns a list of all user-definable statuses\n *\n * @return {object[]}\n */\n\nvar getAllStatusOptions = function getAllStatusOptions() {\n  return [{\n    type: 'online',\n    label: t('user_status', 'Online'),\n    icon: 'icon-user-status-online'\n  }, {\n    type: 'away',\n    label: t('user_status', 'Away'),\n    icon: 'icon-user-status-away'\n  }, {\n    type: 'dnd',\n    label: t('user_status', 'Do not disturb'),\n    subline: t('user_status', 'Mute all notifications'),\n    icon: 'icon-user-status-dnd'\n  }, {\n    type: 'invisible',\n    label: t('user_status', 'Invisible'),\n    subline: t('user_status', 'Appear offline'),\n    icon: 'icon-user-status-invisible'\n  }];\n};\n\nexport { getAllStatusOptions };","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport Multiselect from '@nextcloud/vue/dist/Components/Multiselect';\nimport { getAllClearAtOptions } from '../services/clearAtOptionsService';\nimport { clearAtFilter } from '../filters/clearAtFilter';\nexport default {\n  name: 'ClearAtSelect',\n  components: {\n    Multiselect: Multiselect\n  },\n  props: {\n    clearAt: {\n      type: Object,\n      default: null\n    }\n  },\n  data: function data() {\n    return {\n      options: getAllClearAtOptions()\n    };\n  },\n  computed: {\n    /**\n     * Returns an object of the currently selected option\n     *\n     * @return {object}\n     */\n    option: function option() {\n      return {\n        clearAt: this.clearAt,\n        label: clearAtFilter(this.clearAt)\n      };\n    }\n  },\n  methods: {\n    /**\n     * Triggered when the user selects a new option.\n     *\n     * @param {object=} option The new selected option\n     */\n    select: function select(option) {\n      if (!option) {\n        return;\n      }\n\n      this.$emit('select-clear-at', option.clearAt);\n    }\n  }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n  name: 'CustomMessageInput',\n  props: {\n    message: {\n      type: String,\n      required: true,\n      default: function _default() {\n        return '';\n      }\n    },\n    disabled: {\n      type: Boolean,\n      default: false\n    }\n  },\n  methods: {\n    focus: function focus() {\n      this.$refs.input.focus();\n    },\n\n    /**\n     * Notifies the parent component about a changed input\n     *\n     * @param {Event} event The Change Event\n     */\n    change: function change(event) {\n      this.$emit('change', event.target.value);\n    },\n    submit: function submit(event) {\n      this.$emit('submit', event.target.value);\n    }\n  }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nexport default {\n  name: 'OnlineStatusSelect',\n  props: {\n    checked: {\n      type: Boolean,\n      default: false\n    },\n    icon: {\n      type: String,\n      required: true\n    },\n    type: {\n      type: String,\n      required: true\n    },\n    label: {\n      type: String,\n      required: true\n    },\n    subline: {\n      type: String,\n      default: null\n    }\n  },\n  computed: {\n    id: function id() {\n      return \"user-status-online-status-\".concat(this.type);\n    }\n  },\n  methods: {\n    onChange: function onChange() {\n      this.$emit('select', this.type);\n    }\n  }\n};","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { clearAtFilter } from '../filters/clearAtFilter';\nexport default {\n  name: 'PredefinedStatus',\n  filters: {\n    clearAtFilter: clearAtFilter\n  },\n  props: {\n    messageId: {\n      type: String,\n      required: true\n    },\n    icon: {\n      type: String,\n      required: true\n    },\n    message: {\n      type: String,\n      required: true\n    },\n    clearAt: {\n      type: Object,\n      required: false,\n      default: null\n    }\n  },\n  methods: {\n    /**\n     * Emits an event when the user clicks the row\n     */\n    select: function select() {\n      this.$emit('select');\n    }\n  }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport PredefinedStatus from './PredefinedStatus';\nimport { mapState } from 'vuex';\nexport default {\n  name: 'PredefinedStatusesList',\n  components: {\n    PredefinedStatus: PredefinedStatus\n  },\n  computed: _objectSpread(_objectSpread({}, mapState({\n    predefinedStatuses: function predefinedStatuses(state) {\n      return state.predefinedStatuses.predefinedStatuses;\n    }\n  })), {}, {\n    /**\n     * Indicator whether the predefined statuses have already been loaded\n     *\n     * @return {boolean}\n     */\n    hasLoaded: function hasLoaded() {\n      return this.predefinedStatuses.length > 0;\n    }\n  }),\n\n  /**\n   * Loads all predefined statuses from the server\n   * when this component is mounted\n   */\n  mounted: function mounted() {\n    this.$store.dispatch('loadAllPredefinedStatuses');\n  },\n  methods: {\n    /**\n     * Emits an event when the user selects a status\n     *\n     * @param {object} status The selected status\n     */\n    selectStatus: function selectStatus(status) {\n      this.$emit('select-status', status);\n    }\n  }\n};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport { showError } from '@nextcloud/dialogs';\nimport EmojiPicker from '@nextcloud/vue/dist/Components/EmojiPicker';\nimport Modal from '@nextcloud/vue/dist/Components/Modal';\nimport { getAllStatusOptions } from '../services/statusOptionsService';\nimport OnlineStatusMixin from '../mixins/OnlineStatusMixin';\nimport PredefinedStatusesList from './PredefinedStatusesList';\nimport CustomMessageInput from './CustomMessageInput';\nimport ClearAtSelect from './ClearAtSelect';\nimport OnlineStatusSelect from './OnlineStatusSelect';\nexport default {\n  name: 'SetStatusModal',\n  components: {\n    ClearAtSelect: ClearAtSelect,\n    CustomMessageInput: CustomMessageInput,\n    EmojiPicker: EmojiPicker,\n    Modal: Modal,\n    OnlineStatusSelect: OnlineStatusSelect,\n    PredefinedStatusesList: PredefinedStatusesList\n  },\n  mixins: [OnlineStatusMixin],\n  data: function data() {\n    return {\n      clearAt: null,\n      icon: null,\n      message: '',\n      messageId: '',\n      isSavingStatus: false,\n      statuses: getAllStatusOptions()\n    };\n  },\n  computed: {\n    /**\n     * Returns the user-set icon or a smiley in case no icon is set\n     *\n     * @return {string}\n     */\n    visibleIcon: function visibleIcon() {\n      return this.icon || '😀';\n    }\n  },\n\n  /**\n   * Loads the current status when a user opens dialog\n   */\n  mounted: function mounted() {\n    this.messageId = this.$store.state.userStatus.messageId;\n    this.icon = this.$store.state.userStatus.icon;\n    this.message = this.$store.state.userStatus.message || '';\n\n    if (this.$store.state.userStatus.clearAt !== null) {\n      this.clearAt = {\n        type: '_time',\n        time: this.$store.state.userStatus.clearAt\n      };\n    }\n  },\n  methods: {\n    /**\n     * Closes the Set Status modal\n     */\n    closeModal: function closeModal() {\n      this.$emit('close');\n    },\n\n    /**\n     * Sets a new icon\n     *\n     * @param {string} icon The new icon\n     */\n    setIcon: function setIcon(icon) {\n      var _this = this;\n\n      this.messageId = null;\n      this.icon = icon;\n      this.$nextTick(function () {\n        _this.$refs.customMessageInput.focus();\n      });\n    },\n\n    /**\n     * Sets a new message\n     *\n     * @param {string} message The new message\n     */\n    setMessage: function setMessage(message) {\n      this.messageId = null;\n      this.message = message;\n    },\n\n    /**\n     * Sets a new clearAt value\n     *\n     * @param {object} clearAt The new clearAt object\n     */\n    setClearAt: function setClearAt(clearAt) {\n      this.clearAt = clearAt;\n    },\n\n    /**\n     * Sets new icon/message/clearAt based on a predefined message\n     *\n     * @param {object} status The predefined status object\n     */\n    selectPredefinedMessage: function selectPredefinedMessage(status) {\n      this.messageId = status.id;\n      this.clearAt = status.clearAt;\n      this.icon = status.icon;\n      this.message = status.message;\n    },\n\n    /**\n     * Saves the status and closes the\n     *\n     * @return {Promise<void>}\n     */\n    saveStatus: function saveStatus() {\n      var _this2 = this;\n\n      return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n        return regeneratorRuntime.wrap(function _callee$(_context) {\n          while (1) {\n            switch (_context.prev = _context.next) {\n              case 0:\n                if (!_this2.isSavingStatus) {\n                  _context.next = 2;\n                  break;\n                }\n\n                return _context.abrupt(\"return\");\n\n              case 2:\n                _context.prev = 2;\n                _this2.isSavingStatus = true;\n\n                if (!(_this2.messageId !== undefined && _this2.messageId !== null)) {\n                  _context.next = 9;\n                  break;\n                }\n\n                _context.next = 7;\n                return _this2.$store.dispatch('setPredefinedMessage', {\n                  messageId: _this2.messageId,\n                  clearAt: _this2.clearAt\n                });\n\n              case 7:\n                _context.next = 11;\n                break;\n\n              case 9:\n                _context.next = 11;\n                return _this2.$store.dispatch('setCustomMessage', {\n                  message: _this2.message,\n                  icon: _this2.icon,\n                  clearAt: _this2.clearAt\n                });\n\n              case 11:\n                _context.next = 19;\n                break;\n\n              case 13:\n                _context.prev = 13;\n                _context.t0 = _context[\"catch\"](2);\n                showError(_this2.$t('user_status', 'There was an error saving the status'));\n                console.debug(_context.t0);\n                _this2.isSavingStatus = false;\n                return _context.abrupt(\"return\");\n\n              case 19:\n                _this2.isSavingStatus = false;\n\n                _this2.closeModal();\n\n              case 21:\n              case \"end\":\n                return _context.stop();\n            }\n          }\n        }, _callee, null, [[2, 13]]);\n      }))();\n    },\n\n    /**\n     *\n     * @return {Promise<void>}\n     */\n    clearStatus: function clearStatus() {\n      var _this3 = this;\n\n      return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n        return regeneratorRuntime.wrap(function _callee2$(_context2) {\n          while (1) {\n            switch (_context2.prev = _context2.next) {\n              case 0:\n                _context2.prev = 0;\n                _this3.isSavingStatus = true;\n                _context2.next = 4;\n                return _this3.$store.dispatch('clearMessage');\n\n              case 4:\n                _context2.next = 12;\n                break;\n\n              case 6:\n                _context2.prev = 6;\n                _context2.t0 = _context2[\"catch\"](0);\n                showError(_this3.$t('user_status', 'There was an error clearing the status'));\n                console.debug(_context2.t0);\n                _this3.isSavingStatus = false;\n                return _context2.abrupt(\"return\");\n\n              case 12:\n                _this3.isSavingStatus = false;\n\n                _this3.closeModal();\n\n              case 14:\n              case \"end\":\n                return _context2.stop();\n            }\n          }\n        }, _callee2, null, [[0, 6]]);\n      }))();\n    }\n  }\n};","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".clear-at-select[data-v-16308054] {\\n  display: flex;\\n  margin-bottom: 10px;\\n  align-items: center;\\n}\\n.clear-at-select__label[data-v-16308054] {\\n  margin-right: 10px;\\n}\\n.clear-at-select .multiselect[data-v-16308054] {\\n  flex-grow: 1;\\n  min-width: 130px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".custom-input__form[data-v-f8ff5dac] {\\n  flex-grow: 1;\\n}\\n.custom-input__form input[data-v-f8ff5dac] {\\n  width: 100%;\\n  border-radius: 0 var(--border-radius) var(--border-radius) 0;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".user-status-online-select__input[data-v-08b51a17] {\\n  position: absolute;\\n  top: auto;\\n  left: -10000px;\\n  overflow: hidden;\\n  width: 1px;\\n  height: 1px;\\n}\\n.user-status-online-select__label[data-v-08b51a17] {\\n  display: block;\\n  margin: 8px;\\n  padding: 8px;\\n  padding-left: 40px;\\n  border: 2px solid var(--color-main-background);\\n  border-radius: var(--border-radius-large);\\n  background-color: var(--color-background-hover);\\n  background-position: 8px center;\\n  background-size: 24px;\\n}\\n.user-status-online-select__label span[data-v-08b51a17], .user-status-online-select__label[data-v-08b51a17] {\\n  cursor: pointer;\\n}\\n.user-status-online-select__input:checked + .user-status-online-select__label[data-v-08b51a17], .user-status-online-select__input:focus + .user-status-online-select__label[data-v-08b51a17], .user-status-online-select__label[data-v-08b51a17]:hover {\\n  border-color: var(--color-primary);\\n}\\n.user-status-online-select__subline[data-v-08b51a17] {\\n  display: block;\\n  color: var(--color-text-lighter);\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".predefined-status[data-v-2b4a822e] {\\n  display: flex;\\n  flex-wrap: nowrap;\\n  justify-content: flex-start;\\n  flex-basis: 100%;\\n  border-radius: var(--border-radius);\\n  align-items: center;\\n  min-height: 44px;\\n}\\n.predefined-status[data-v-2b4a822e]:hover, .predefined-status[data-v-2b4a822e]:focus {\\n  background-color: var(--color-background-hover);\\n}\\n.predefined-status__icon[data-v-2b4a822e] {\\n  flex-basis: 40px;\\n  text-align: center;\\n}\\n.predefined-status__message[data-v-2b4a822e] {\\n  font-weight: bold;\\n  padding: 0 6px;\\n}\\n.predefined-status__clear-at[data-v-2b4a822e] {\\n  opacity: 0.7;\\n}\\n.predefined-status__clear-at[data-v-2b4a822e]::before {\\n  content: \\\" - \\\";\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".predefined-statuses-list[data-v-31790e1a] {\\n  display: flex;\\n  flex-direction: column;\\n  margin-bottom: 10px;\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]});\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"[data-v-1a4980a2] .modal-wrapper .prev,[data-v-1a4980a2] .modal-wrapper .next {\\n  display: none !important;\\n}\\n[data-v-1a4980a2] .modal-wrapper .modal-container {\\n  max-height: 100% !important;\\n}\\n[data-v-1a4980a2] .modal-header .modal-title {\\n  display: none;\\n}\\n.set-status-modal[data-v-1a4980a2] {\\n  min-height: 200px;\\n  padding: 8px 20px 20px 20px;\\n  max-height: 95vh;\\n  overflow: auto;\\n}\\n.set-status-modal__header[data-v-1a4980a2] {\\n  text-align: center;\\n  font-weight: bold;\\n}\\n.set-status-modal__online-status[data-v-1a4980a2] {\\n  display: grid;\\n  margin-bottom: 40px;\\n  grid-template-columns: 1fr 1fr;\\n}\\n.set-status-modal__custom-input[data-v-1a4980a2] {\\n  display: flex;\\n  width: 100%;\\n  margin-bottom: 10px;\\n}\\n.set-status-modal__custom-input .custom-input__emoji-button[data-v-1a4980a2] {\\n  flex-basis: 40px;\\n  flex-grow: 0;\\n  width: 40px;\\n  height: 34px;\\n  margin-right: 0;\\n  border-right: none;\\n  border-radius: var(--border-radius) 0 0 var(--border-radius);\\n}\\n.set-status-modal .status-buttons[data-v-1a4980a2] {\\n  display: flex;\\n}\\n.set-status-modal .status-buttons button[data-v-1a4980a2] {\\n  flex-basis: 50%;\\n}\\n@media only screen and (max-width: 500px) {\\n.set-status-modal__online-status[data-v-1a4980a2] {\\n    grid-template-columns: none !important;\\n}\\n}\", \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClearAtSelect.vue?vue&type=style&index=0&id=16308054&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomMessageInput.vue?vue&type=style&index=0&id=f8ff5dac&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OnlineStatusSelect.vue?vue&type=style&index=0&id=08b51a17&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatus.vue?vue&type=style&index=0&id=2b4a822e&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatusesList.vue?vue&type=style&index=0&id=31790e1a&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SetStatusModal.vue?vue&type=style&index=0&id=1a4980a2&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import { render, staticRenderFns } from \"./ClearAtSelect.vue?vue&type=template&id=16308054&scoped=true&\"\nimport script from \"./ClearAtSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./ClearAtSelect.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ClearAtSelect.vue?vue&type=style&index=0&id=16308054&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"16308054\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/home/louis/workspace/nextcloud/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('16308054')) {\n      api.createRecord('16308054', component.options)\n    } else {\n      api.reload('16308054', component.options)\n    }\n    module.hot.accept(\"./ClearAtSelect.vue?vue&type=template&id=16308054&scoped=true&\", function () {\n      api.rerender('16308054', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/ClearAtSelect.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./CustomMessageInput.vue?vue&type=template&id=f8ff5dac&scoped=true&\"\nimport script from \"./CustomMessageInput.vue?vue&type=script&lang=js&\"\nexport * from \"./CustomMessageInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CustomMessageInput.vue?vue&type=style&index=0&id=f8ff5dac&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"f8ff5dac\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/home/louis/workspace/nextcloud/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('f8ff5dac')) {\n      api.createRecord('f8ff5dac', component.options)\n    } else {\n      api.reload('f8ff5dac', component.options)\n    }\n    module.hot.accept(\"./CustomMessageInput.vue?vue&type=template&id=f8ff5dac&scoped=true&\", function () {\n      api.rerender('f8ff5dac', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/CustomMessageInput.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./OnlineStatusSelect.vue?vue&type=template&id=08b51a17&scoped=true&\"\nimport script from \"./OnlineStatusSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./OnlineStatusSelect.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OnlineStatusSelect.vue?vue&type=style&index=0&id=08b51a17&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"08b51a17\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/home/louis/workspace/nextcloud/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('08b51a17')) {\n      api.createRecord('08b51a17', component.options)\n    } else {\n      api.reload('08b51a17', component.options)\n    }\n    module.hot.accept(\"./OnlineStatusSelect.vue?vue&type=template&id=08b51a17&scoped=true&\", function () {\n      api.rerender('08b51a17', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/OnlineStatusSelect.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./PredefinedStatus.vue?vue&type=template&id=2b4a822e&scoped=true&\"\nimport script from \"./PredefinedStatus.vue?vue&type=script&lang=js&\"\nexport * from \"./PredefinedStatus.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PredefinedStatus.vue?vue&type=style&index=0&id=2b4a822e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"2b4a822e\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/home/louis/workspace/nextcloud/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('2b4a822e')) {\n      api.createRecord('2b4a822e', component.options)\n    } else {\n      api.reload('2b4a822e', component.options)\n    }\n    module.hot.accept(\"./PredefinedStatus.vue?vue&type=template&id=2b4a822e&scoped=true&\", function () {\n      api.rerender('2b4a822e', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/PredefinedStatus.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./PredefinedStatusesList.vue?vue&type=template&id=31790e1a&scoped=true&\"\nimport script from \"./PredefinedStatusesList.vue?vue&type=script&lang=js&\"\nexport * from \"./PredefinedStatusesList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PredefinedStatusesList.vue?vue&type=style&index=0&id=31790e1a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"31790e1a\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/home/louis/workspace/nextcloud/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('31790e1a')) {\n      api.createRecord('31790e1a', component.options)\n    } else {\n      api.reload('31790e1a', component.options)\n    }\n    module.hot.accept(\"./PredefinedStatusesList.vue?vue&type=template&id=31790e1a&scoped=true&\", function () {\n      api.rerender('31790e1a', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/PredefinedStatusesList.vue\"\nexport default component.exports","import { render, staticRenderFns } from \"./SetStatusModal.vue?vue&type=template&id=1a4980a2&scoped=true&\"\nimport script from \"./SetStatusModal.vue?vue&type=script&lang=js&\"\nexport * from \"./SetStatusModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SetStatusModal.vue?vue&type=style&index=0&id=1a4980a2&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"1a4980a2\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/home/louis/workspace/nextcloud/server/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('1a4980a2')) {\n      api.createRecord('1a4980a2', component.options)\n    } else {\n      api.reload('1a4980a2', component.options)\n    }\n    module.hot.accept(\"./SetStatusModal.vue?vue&type=template&id=1a4980a2&scoped=true&\", function () {\n      api.rerender('1a4980a2', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/user_status/src/components/SetStatusModal.vue\"\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClearAtSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ClearAtSelect.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomMessageInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomMessageInput.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OnlineStatusSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OnlineStatusSelect.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatus.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatusesList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PredefinedStatusesList.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SetStatusModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SetStatusModal.vue?vue&type=script&lang=js&\"","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\n    \"div\",\n    { staticClass: \"clear-at-select\" },\n    [\n      _c(\"span\", { staticClass: \"clear-at-select__label\" }, [\n        _vm._v(\n          \"\\n\\t\\t\" +\n            _vm._s(_vm.$t(\"user_status\", \"Clear status message after\")) +\n            \"\\n\\t\"\n        ),\n      ]),\n      _vm._v(\" \"),\n      _c(\"Multiselect\", {\n        attrs: {\n          label: \"label\",\n          value: _vm.option,\n          options: _vm.options,\n          \"open-direction\": \"top\",\n        },\n        on: { select: _vm.select },\n      }),\n    ],\n    1\n  )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\n    \"form\",\n    {\n      staticClass: \"custom-input__form\",\n      on: {\n        submit: function ($event) {\n          $event.preventDefault()\n        },\n      },\n    },\n    [\n      _c(\"input\", {\n        ref: \"input\",\n        attrs: {\n          maxlength: \"80\",\n          disabled: _vm.disabled,\n          placeholder: _vm.$t(\"user_status\", \"What is your status?\"),\n          type: \"text\",\n        },\n        domProps: { value: _vm.message },\n        on: {\n          change: _vm.change,\n          keyup: [\n            _vm.change,\n            function ($event) {\n              if (\n                !$event.type.indexOf(\"key\") &&\n                _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")\n              ) {\n                return null\n              }\n              return _vm.submit.apply(null, arguments)\n            },\n          ],\n          paste: _vm.change,\n        },\n      }),\n    ]\n  )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\"div\", { staticClass: \"user-status-online-select\" }, [\n    _c(\"input\", {\n      staticClass: \"user-status-online-select__input\",\n      attrs: { id: _vm.id, type: \"radio\", name: \"user-status-online\" },\n      domProps: { checked: _vm.checked },\n      on: { change: _vm.onChange },\n    }),\n    _vm._v(\" \"),\n    _c(\n      \"label\",\n      {\n        staticClass: \"user-status-online-select__label\",\n        class: _vm.icon,\n        attrs: { for: _vm.id },\n      },\n      [\n        _vm._v(\"\\n\\t\\t\" + _vm._s(_vm.label) + \"\\n\\t\\t\"),\n        _c(\"em\", { staticClass: \"user-status-online-select__subline\" }, [\n          _vm._v(_vm._s(_vm.subline)),\n        ]),\n      ]\n    ),\n  ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\n    \"div\",\n    {\n      staticClass: \"predefined-status\",\n      attrs: { tabindex: \"0\" },\n      on: {\n        keyup: [\n          function ($event) {\n            if (\n              !$event.type.indexOf(\"key\") &&\n              _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")\n            ) {\n              return null\n            }\n            return _vm.select.apply(null, arguments)\n          },\n          function ($event) {\n            if (\n              !$event.type.indexOf(\"key\") &&\n              _vm._k($event.keyCode, \"space\", 32, $event.key, [\" \", \"Spacebar\"])\n            ) {\n              return null\n            }\n            return _vm.select.apply(null, arguments)\n          },\n        ],\n        click: _vm.select,\n      },\n    },\n    [\n      _c(\"span\", { staticClass: \"predefined-status__icon\" }, [\n        _vm._v(\"\\n\\t\\t\" + _vm._s(_vm.icon) + \"\\n\\t\"),\n      ]),\n      _vm._v(\" \"),\n      _c(\"span\", { staticClass: \"predefined-status__message\" }, [\n        _vm._v(\"\\n\\t\\t\" + _vm._s(_vm.message) + \"\\n\\t\"),\n      ]),\n      _vm._v(\" \"),\n      _c(\"span\", { staticClass: \"predefined-status__clear-at\" }, [\n        _vm._v(\n          \"\\n\\t\\t\" + _vm._s(_vm._f(\"clearAtFilter\")(_vm.clearAt)) + \"\\n\\t\"\n        ),\n      ]),\n    ]\n  )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _vm.hasLoaded\n    ? _c(\n        \"div\",\n        { staticClass: \"predefined-statuses-list\" },\n        _vm._l(_vm.predefinedStatuses, function (status) {\n          return _c(\"PredefinedStatus\", {\n            key: status.id,\n            attrs: {\n              \"message-id\": status.id,\n              icon: status.icon,\n              message: status.message,\n              \"clear-at\": status.clearAt,\n            },\n            on: {\n              select: function ($event) {\n                return _vm.selectStatus(status)\n              },\n            },\n          })\n        }),\n        1\n      )\n    : _c(\"div\", { staticClass: \"predefined-statuses-list\" }, [\n        _c(\"div\", { staticClass: \"icon icon-loading-small\" }),\n      ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\n    \"Modal\",\n    {\n      attrs: { size: \"normal\", title: _vm.$t(\"user_status\", \"Set status\") },\n      on: { close: _vm.closeModal },\n    },\n    [\n      _c(\n        \"div\",\n        { staticClass: \"set-status-modal\" },\n        [\n          _c(\"div\", { staticClass: \"set-status-modal__header\" }, [\n            _c(\"h3\", [_vm._v(_vm._s(_vm.$t(\"user_status\", \"Online status\")))]),\n          ]),\n          _vm._v(\" \"),\n          _c(\n            \"div\",\n            { staticClass: \"set-status-modal__online-status\" },\n            _vm._l(_vm.statuses, function (status) {\n              return _c(\n                \"OnlineStatusSelect\",\n                _vm._b(\n                  {\n                    key: status.type,\n                    attrs: { checked: status.type === _vm.statusType },\n                    on: { select: _vm.changeStatus },\n                  },\n                  \"OnlineStatusSelect\",\n                  status,\n                  false\n                )\n              )\n            }),\n            1\n          ),\n          _vm._v(\" \"),\n          _c(\"div\", { staticClass: \"set-status-modal__header\" }, [\n            _c(\"h3\", [_vm._v(_vm._s(_vm.$t(\"user_status\", \"Status message\")))]),\n          ]),\n          _vm._v(\" \"),\n          _c(\n            \"div\",\n            { staticClass: \"set-status-modal__custom-input\" },\n            [\n              _c(\"EmojiPicker\", { on: { select: _vm.setIcon } }, [\n                _c(\"button\", { staticClass: \"custom-input__emoji-button\" }, [\n                  _vm._v(\n                    \"\\n\\t\\t\\t\\t\\t\" + _vm._s(_vm.visibleIcon) + \"\\n\\t\\t\\t\\t\"\n                  ),\n                ]),\n              ]),\n              _vm._v(\" \"),\n              _c(\"CustomMessageInput\", {\n                ref: \"customMessageInput\",\n                attrs: { message: _vm.message },\n                on: { change: _vm.setMessage, submit: _vm.saveStatus },\n              }),\n            ],\n            1\n          ),\n          _vm._v(\" \"),\n          _c(\"PredefinedStatusesList\", {\n            on: { selectStatus: _vm.selectPredefinedMessage },\n          }),\n          _vm._v(\" \"),\n          _c(\"ClearAtSelect\", {\n            attrs: { \"clear-at\": _vm.clearAt },\n            on: { selectClearAt: _vm.setClearAt },\n          }),\n          _vm._v(\" \"),\n          _c(\"div\", { staticClass: \"status-buttons\" }, [\n            _c(\n              \"button\",\n              {\n                staticClass: \"status-buttons__select\",\n                attrs: { disabled: _vm.isSavingStatus },\n                on: { click: _vm.clearStatus },\n              },\n              [\n                _vm._v(\n                  \"\\n\\t\\t\\t\\t\" +\n                    _vm._s(_vm.$t(\"user_status\", \"Clear status message\")) +\n                    \"\\n\\t\\t\\t\"\n                ),\n              ]\n            ),\n            _vm._v(\" \"),\n            _c(\n              \"button\",\n              {\n                staticClass: \"status-buttons__primary primary\",\n                attrs: { disabled: _vm.isSavingStatus },\n                on: { click: _vm.saveStatus },\n              },\n              [\n                _vm._v(\n                  \"\\n\\t\\t\\t\\t\" +\n                    _vm._s(_vm.$t(\"user_status\", \"Set status message\")) +\n                    \"\\n\\t\\t\\t\"\n                ),\n              ]\n            ),\n          ]),\n        ],\n        1\n      ),\n    ]\n  )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;ACxEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;;;;;;;;;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;AC/SA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;A;;;;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;;;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;A;;;;;;;;;;;ACvCA;;A;;;;;;;;;;;ACAA;;A;;;;;;;;;;;ACAA;;A;;;;;;;;;;;ACAA;;A;;;;;;;;;;;ACAA;;A;;;;;;;;;;;ACAA;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;;;;A;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;;;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;A;;A","sourceRoot":""}
>>>>>>> 5f2027f1e1 (Typing corrections)