This PR introduces a new channel type for voice conversations. ref: #11481 ## Changes - Add database migration for channel_voice table with phone_number and provider_config - Create Channel::Voice model with E.164 phone number validation and Twilio config validation - Add voice channel association to Account model - Extend inbox helpers and types to support voice channels - Add voice channel setup UI with Twilio configuration form - Include voice channel in channel factory and list components - Add API routes and store actions for voice channel creation - Add comprehensive translations for voice channel management --------- Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com> Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com> Co-authored-by: iamsivin <iamsivin@gmail.com>
40 lines
902 B
Vue
40 lines
902 B
Vue
<script>
|
|
export default {
|
|
props: {
|
|
title: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
src: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
},
|
|
};
|
|
</script>
|
|
|
|
<template>
|
|
<button
|
|
class="bg-white dark:bg-slate-900 cursor-pointer flex flex-col justify-end transition-all duration-200 ease-in -m-px py-4 px-0 items-center border border-solid border-slate-25 dark:border-slate-800 hover:border-woot-500 dark:hover:border-woot-500 hover:shadow-md hover:z-50 disabled:opacity-60"
|
|
>
|
|
<img :src="src" :alt="title" draggable="false" class="w-1/2 my-4 mx-auto" />
|
|
<h3
|
|
class="text-slate-800 dark:text-slate-100 text-base text-center capitalize"
|
|
>
|
|
{{ title }}
|
|
</h3>
|
|
</button>
|
|
</template>
|
|
|
|
<style scoped lang="scss">
|
|
.inactive {
|
|
img {
|
|
filter: grayscale(100%);
|
|
}
|
|
|
|
&:hover {
|
|
@apply border-transparent shadow-none cursor-not-allowed;
|
|
}
|
|
}
|
|
</style>
|