{"version":3,"file":"emoji_row.vue.cjs","sources":["../../../../recipes/conversation_view/emoji_row/emoji_row.vue"],"sourcesContent":["<template>\n  <span class=\"d-recipe-emoji-row\">\n    <span\n      v-for=\"reaction in reactions\"\n      :key=\"reaction.unicodeOutput\"\n      :reaction=\"reaction\"\n    >\n      <dt-tooltip\n        class=\"d-recipe-emoji-row__tooltip\"\n        content-class=\"d-recipe-emoji-row__tooltip-content\"\n        sticky=\"popper\"\n        @shown=\"(shown) => emojiHovered(reaction, shown)\"\n      >\n        <span aria-hidden=\"true\">\n          <dt-emoji-text-wrapper size=\"200\">\n            {{ reaction.tooltip }}\n          </dt-emoji-text-wrapper>\n        </span>\n        <template #anchor=\"{ attrs }\">\n          <dt-button\n            importance=\"clear\"\n            size=\"sm\"\n            data-qa=\"feed-item-reaction-button\"\n            :class=\"[\n              'd-recipe-emoji-row__reaction',\n              reaction.isSelected ? 'd-recipe-emoji-row__reaction--selected' : '',\n            ]\"\n            :aria-label=\"reaction.ariaLabel\"\n            :attrs=\"attrs\"\n            @click=\"emojiClicked(reaction)\"\n          >\n            <span class=\"d-recipe-emoji-row__emoji\">\n              <dt-emoji\n                size=\"200\"\n                :code=\"reaction.emojiUnicodeOrShortname\"\n              />\n            </span>\n            <span class=\"d-recipe-emoji-row__reaction-number\">\n              {{ reaction.num }}\n            </span>\n          </dt-button>\n        </template>\n      </dt-tooltip>\n    </span>\n    <!-- @slot Slot for emoji picker component, including the anchor. -->\n    <slot name=\"picker\" />\n  </span>\n</template>\n\n<script>\nimport { REACTIONS_ATTRIBUTES } from './emoji_row_constants.js';\nimport { DtButton } from '../../../components/button';\nimport { DtTooltip } from '../../../components/tooltip';\nimport { DtEmoji } from '../../../components/emoji';\nimport { DtEmojiTextWrapper } from '../../../components/emoji_text_wrapper';\n\nexport default {\n  compatConfig: { MODE: 3 },\n  name: 'DtRecipeEmojiRow',\n\n  components: { DtTooltip, DtButton, DtEmoji, DtEmojiTextWrapper },\n\n  mixins: [],\n\n  props: {\n    /**\n     * Provide an array of reaction objects to be shown.\n     */\n    reactions: {\n      type: Array,\n      default: () => [],\n      validator: (reactions) => {\n        for (const reaction of reactions) {\n          const validInput = REACTIONS_ATTRIBUTES.every((attribute) => reaction[attribute] !== undefined ?? false);\n          if (!validInput) return false;\n        }\n        return true;\n      },\n    },\n  },\n\n  emits: [\n    'emoji-clicked',\n    'emoji-hovered',\n  ],\n\n  methods: {\n    emojiClicked (reaction) {\n      this.$emit('emoji-clicked', reaction.emojiUnicodeOrShortname);\n    },\n\n    emojiHovered (reaction, state) {\n      this.$emit('emoji-hovered', {\n        reaction: reaction.emojiUnicodeOrShortname,\n        state,\n      });\n    },\n  },\n};\n</script>\n"],"names":["DtTooltip","DtButton","DtEmoji","DtEmojiTextWrapper","REACTIONS_ATTRIBUTES","_openBlock","_createElementBlock","_Fragment","_renderList","_createVNode","_withCtx","_normalizeClass","_createElementVNode","_toDisplayString","_createTextVNode","_renderSlot"],"mappings":";;;;;;;;;AAwDA,MAAK,YAAU;AAAA,EACb,cAAc,EAAE,MAAM,EAAG;AAAA,EACzB,MAAM;AAAA,EAEN,YAAY,EAAA,WAAEA,QAAS,SAAA,UAAEC,gBAAUC,SAAAA,MAAAA,SAASC,oBAAAA,mBAAAA,QAAoB;AAAA,EAEhE,QAAQ,CAAE;AAAA,EAEV,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS,MAAM,CAAE;AAAA,MACjB,WAAW,CAAC,cAAc;AACxB,mBAAW,YAAY,WAAW;AAChC,gBAAM,aAAaC,yCAAqB,MAAM,CAAC,cAAc,SAAS,SAAS,MAAM,MAAkB;AACvG,cAAI,CAAC,WAAY,QAAO;AAAA,QAC1B;AACA,eAAO;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAAA,EAED,OAAO;AAAA,IACL;AAAA,IACA;AAAA,EACD;AAAA,EAED,SAAS;AAAA,IACP,aAAc,UAAU;AACtB,WAAK,MAAM,iBAAiB,SAAS,uBAAuB;AAAA,IAC7D;AAAA,IAED,aAAc,UAAU,OAAO;AAC7B,WAAK,MAAM,iBAAiB;AAAA,QAC1B,UAAU,SAAS;AAAA,QACnB;AAAA,MACF,CAAC;AAAA,IACF;AAAA,EACF;AACH;AAjGQ,MAAA,aAAA,EAAA,OAAM,qBAAoB;AADlC,MAAA,aAAA,CAAA,UAAA;AAac,MAAA,aAAA,EAAA,eAAY,OAAM;AAkBd,MAAA,aAAA,EAAA,OAAM,4BAA2B;AAMjC,MAAA,aAAA,EAAA,OAAM,sCAAqC;;;;;;AApC3D,SAAAC,cAAA,GAAAC,uBA6CO,QA7CP,YA6CO;AAAA,KA5CLD,cAAA,IAAA,GAAAC,IAAAA,mBAyCOC,IA3CX,UAAA,MAAAC,IAAAA,WAGyB,OAAS,WAHlC,CAGa,aAAQ;8BADjBF,IAyCO,mBAAA,QAAA;AAAA,QAvCJ,KAAK,SAAS;AAAA,QACd;AAAA;QAEDG,IAAAA,YAmCa,uBAAA;AAAA,UAlCX,OAAM;AAAA,UACN,iBAAc;AAAA,UACd,QAAO;AAAA,UACN,UAAQ,UAAU,sBAAa,UAAU,KAAK;AAAA;UAOpC,QAAMC,IAAA,QACf,CAqBY,EAtBO,YAAK;AAAA,YACxBD,IAAAA,YAqBY,sBAAA;AAAA,cApBV,YAAW;AAAA,cACX,MAAK;AAAA,cACL,WAAQ;AAAA,cACP,OAvBbE,IAAAA,eAAA;AAAA;gBAuBkF,SAAS,aAAU,2CAAA;AAAA;cAIxF,cAAY,SAAS;AAAA,cACrB;AAAA,cACA,SAAK,YAAE,SAAY,aAAC,QAAQ;AAAA;cA7BzC,SAAAD,IAAA,QA+BY,MAKO;AAAA,gBALPE,IAAA,mBAKO,QALP,YAKO;AAAA,kBAJLH,IAAAA,YAGE,qBAAA;AAAA,oBAFA,MAAK;AAAA,oBACJ,MAAM,SAAS;AAAA;;gBAGpBG,IAAA,mBAEO,QAFP,YACKC,IAAAA,gBAAA,SAAS,GAAG,GAAA,CAAA;AAAA;cAtC7B,GAAA;AAAA;;UAAA,SAAAH,IAAA,QAaQ,MAIO;AAAA,YAJPE,IAAA,mBAIO,QAJP,YAIO;AAAA,cAHLH,IAAAA,YAEwB,kCAAA,EAFD,MAAK,MAAK,GAAA;AAAA,gBAd3C,SAAAC,IAAA,QAeY,MAAsB;AAAA,kBAflCI,IAAAA,gBAeeD,IAAAA,gBAAA,SAAS,OAAO,GAAA,CAAA;AAAA;gBAf/B,GAAA;AAAA;;;UAAA,GAAA;AAAA;MAAA,GAAA,GAAA,UAAA;AAAA;IA6CIE,eAAsB,KAAA,QAAA,QAAA;AAAA;;;;"}