{"version":3,"file":"emoji-row.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    >\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            {{ reactionLabel(reaction) }}\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=\"reactionLabel(reaction)\"\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    <!-- TODO: Replace picker slot with a button with localized text and emit any event needed -->\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';\nimport { DialtoneLocalization } from '@/localization';\n\nexport default {\n  compatConfig: { MODE: 3 },\n  name: 'DtRecipeEmojiRow',\n\n  components: { DtTooltip, DtButton, DtEmoji, DtEmojiTextWrapper },\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);\n          if (!validInput) return false;\n        }\n        return true;\n      },\n    },\n  },\n\n  emits: [\n    'emoji-clicked',\n    'emoji-hovered',\n  ],\n\n  data () {\n    return {\n      i18n: new DialtoneLocalization(),\n    };\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    reactionLabel (reaction) {\n      return this.i18n.$t('DIALTONE_EMOJI_ROW_REACTION_LABEL', {\n        names: reaction.names,\n        reaction: reaction.emojiUnicodeOrShortname,\n      });\n    },\n  },\n};\n</script>\n"],"names":["_sfc_main","DtTooltip","DtButton","DtEmoji","DtEmojiTextWrapper","reactions","reaction","REACTIONS_ATTRIBUTES","attribute","DialtoneLocalization","state","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_openBlock","_createElementBlock","_Fragment","_renderList","$props","_createVNode","_component_dt_tooltip","shown","$options","_withCtx","attrs","_component_dt_button","_normalizeClass","$event","_createElementVNode","_component_dt_emoji","_toDisplayString","_component_dt_emoji_text_wrapper","_createTextVNode","_renderSlot","_ctx"],"mappings":"8aAyDKA,EAAU,CACb,aAAc,CAAE,KAAM,GACtB,KAAM,mBAEN,WAAY,CAAA,UAAEC,EAAAA,QAAS,SAAEC,UAAQ,QAAEC,EAAAA,QAAO,mBAAEC,EAAAA,OAAiB,EAE7D,MAAO,CAIL,UAAW,CACT,KAAM,MACN,QAAS,IAAM,CAAA,EACf,UAAYC,GAAc,CACxB,UAAWC,KAAYD,EAErB,GAAI,CADeE,EAAAA,qBAAqB,MAAOC,GAAcF,EAASE,CAAS,IAAM,MAAS,EAC7E,MAAO,GAE1B,MAAO,EACT,IAIJ,MAAO,CACL,gBACA,iBAGF,MAAQ,CACN,MAAO,CACL,KAAM,IAAIC,EAAAA,qBAEd,EAEA,QAAS,CACP,aAAcH,EAAU,CACtB,KAAK,MAAM,gBAAiBA,EAAS,uBAAuB,CAC9D,EAEA,aAAcA,EAAUI,EAAO,CAC7B,KAAK,MAAM,gBAAiB,CAC1B,SAAUJ,EAAS,wBACnB,MAAAI,CACF,CAAC,CACH,EAEA,cAAeJ,EAAU,CACvB,OAAO,KAAK,KAAK,GAAG,oCAAqC,CACvD,MAAOA,EAAS,MAChB,SAAUA,EAAS,uBACrB,CAAC,CACH,EAEJ,EA7GQK,EAAA,CAAA,MAAM,oBAAoB,EAWpBC,EAAA,CAAA,cAAY,MAAM,EAkBdC,EAAA,CAAA,MAAM,2BAA2B,EAMjCC,EAAA,CAAA,MAAM,qCAAqC,oLAnC3D,OAAAC,YAAA,EAAAC,qBA6CO,OA7CPL,EA6CO,EA5CLI,YAAA,EAAA,EAAAC,EAAAA,mBAwCOC,EAAAA,SAAA,KA1CXC,EAAAA,WAGyBC,EAAA,UAAZb,kBADTU,EAAAA,mBAwCO,OAAA,CAtCJ,IAAKV,EAAS,gBAEfc,EAAAA,YAmCaC,EAAA,CAlCX,MAAM,8BACN,gBAAc,sCACd,OAAO,SACN,QAAQC,GAAUC,eAAajB,EAAUgB,CAAK,IAOpC,OAAME,EAAAA,QACf,CAqBY,CAtBO,MAAAC,KAAK,CACxBL,EAAAA,YAqBYM,EAAA,CApBV,WAAW,QACX,KAAK,KACL,UAAQ,4BACP,MAtBbC,EAAAA,eAAA,gCAsBkFrB,EAAS,WAAU,yCAAA,KAIxF,aAAYiB,EAAA,cAAcjB,CAAQ,EAClC,MAAOmB,EACP,QAAKG,GAAEL,EAAA,aAAajB,CAAQ,IA5BzC,QAAAkB,EAAAA,QA8BY,IAKO,CALPK,EAAAA,mBAKO,OALPhB,EAKO,CAJLO,EAAAA,YAGEU,EAAA,CAFA,KAAK,MACJ,KAAMxB,EAAS,4CAGpBuB,EAAAA,mBAEO,OAFPf,EAEOiB,EAAAA,gBADFzB,EAAS,GAAG,EAAA,CAAA,IArC7B,EAAA,oDAAA,QAAAkB,EAAAA,QAYQ,IAIO,CAJPK,EAAAA,mBAIO,OAJPjB,EAIO,CAHLQ,EAAAA,YAEwBY,EAAA,CAFD,KAAK,KAAK,EAAA,CAb3C,QAAAR,EAAAA,QAcY,IAA6B,CAdzCS,EAAAA,gBAAAF,EAAAA,gBAceR,EAAA,cAAcjB,CAAQ,CAAA,EAAA,CAAA,IAdrC,EAAA,aAAA,EAAA,+BA6CI4B,aAAsBC,EAAA,OAAA,QAAA"}