UNPKG

@dialpad/dialtone

Version:

Dialpad's Dialtone design system monorepo

75 lines (74 loc) 2.48 kB
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); const vue3 = require("@dialpad/dialtone-icons/vue3"); const unread_pill_constants = require("./unread_pill_constants.cjs"); const vue = require("vue"); const _pluginVue_exportHelper = require("../../../_virtual/_plugin-vue_export-helper.cjs"); const _sfc_main = { compatConfig: { MODE: 3 }, name: "DtRecipeUnreadPill", components: { DtIconArrowUp: vue3.DtIconArrowUp, DtIconArrowDown: vue3.DtIconArrowDown }, props: { /** * The kind of unread pill which determines the styling * @values 'mentions', 'messages' **/ kind: { type: String, required: true, validator: (kind) => unread_pill_constants.UNREAD_PILL_KINDS.includes(kind) }, /** * The direction of the arrow icon * @values 'up', 'down' **/ direction: { type: String, required: true, validator: (dir) => unread_pill_constants.UNREAD_PILL_DIRECTIONS.includes(dir) } }, emits: [ /** * Native click event * * @event click * @type {PointerEvent | KeyboardEvent} */ "click" ], computed: { unreadChipListeners() { return { click: (event) => this.$emit("click", event) }; } } }; const _hoisted_1 = { "data-qa": "dt-recipe-leftbar-unread-pill__label" }; function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { const _component_dt_icon_arrow_up = vue.resolveComponent("dt-icon-arrow-up"); const _component_dt_icon_arrow_down = vue.resolveComponent("dt-icon-arrow-down"); return vue.openBlock(), vue.createElementBlock("button", vue.mergeProps({ class: ["d-recipe-leftbar-unread-pill", `d-recipe-leftbar-unread-pill-${$props.kind}`], type: "button", "data-qa": "dt-recipe-leftbar-unread-pill" }, vue.toHandlers($options.unreadChipListeners, true)), [ $props.direction === "up" ? (vue.openBlock(), vue.createBlock(_component_dt_icon_arrow_up, { key: 0, size: "300" })) : (vue.openBlock(), vue.createBlock(_component_dt_icon_arrow_down, { key: 1, size: "300" })), vue.createElementVNode("span", _hoisted_1, [ vue.renderSlot(_ctx.$slots, "default") ]) ], 16); } const unread_pill = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["render", _sfc_render]]); exports.default = unread_pill; //# sourceMappingURL=unread_pill.vue.cjs.map