From a35c3e4c06dab6baa489b87cdf1cbfeb2a973cb2 Mon Sep 17 00:00:00 2001
From: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
Date: Wed, 29 Oct 2025 17:06:32 +0530
Subject: [PATCH] feat: Template types components (#12714)
# Pull Request Template
## Description
Fixes
https://linear.app/chatwoot/issue/CW-5806/create-the-story-book-components-for-template-typestext-media-list
**Pending**
Need to standardize the structure to match the template/campaigns.
## Type of change
- [x] New feature (non-breaking change which adds functionality)
## How Has This Been Tested?
### Screenshots
## Checklist:
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [ ] I have commented on my code, particularly in hard-to-understand
areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged and published in downstream
modules
Co-authored-by: Muhsin Keloth
---
.../message/bubbles/Template/CallToAction.vue | 29 ++++++++
.../message/bubbles/Template/Card.vue | 32 +++++++++
.../message/bubbles/Template/ListPicker.vue | 25 +++++++
.../message/bubbles/Template/Media.vue | 20 ++++++
.../message/bubbles/Template/QuickReply.vue | 68 +++++++++++++++++++
.../message/bubbles/Template/Text.vue | 14 ++++
.../stories/Template/CallToAction.story.vue | 21 ++++++
.../message/stories/Template/Card.story.vue | 23 +++++++
.../stories/Template/ListPicker.story.vue | 21 ++++++
.../message/stories/Template/Media.story.vue | 23 +++++++
.../stories/Template/QuickReply.story.vue | 21 ++++++
.../message/stories/Template/Text.story.vue | 20 ++++++
12 files changed, 317 insertions(+)
create mode 100644 app/javascript/dashboard/components-next/message/bubbles/Template/CallToAction.vue
create mode 100644 app/javascript/dashboard/components-next/message/bubbles/Template/Card.vue
create mode 100644 app/javascript/dashboard/components-next/message/bubbles/Template/ListPicker.vue
create mode 100644 app/javascript/dashboard/components-next/message/bubbles/Template/Media.vue
create mode 100644 app/javascript/dashboard/components-next/message/bubbles/Template/QuickReply.vue
create mode 100644 app/javascript/dashboard/components-next/message/bubbles/Template/Text.vue
create mode 100644 app/javascript/dashboard/components-next/message/stories/Template/CallToAction.story.vue
create mode 100644 app/javascript/dashboard/components-next/message/stories/Template/Card.story.vue
create mode 100644 app/javascript/dashboard/components-next/message/stories/Template/ListPicker.story.vue
create mode 100644 app/javascript/dashboard/components-next/message/stories/Template/Media.story.vue
create mode 100644 app/javascript/dashboard/components-next/message/stories/Template/QuickReply.story.vue
create mode 100644 app/javascript/dashboard/components-next/message/stories/Template/Text.story.vue
diff --git a/app/javascript/dashboard/components-next/message/bubbles/Template/CallToAction.vue b/app/javascript/dashboard/components-next/message/bubbles/Template/CallToAction.vue
new file mode 100644
index 000000000..ae6f733c8
--- /dev/null
+++ b/app/javascript/dashboard/components-next/message/bubbles/Template/CallToAction.vue
@@ -0,0 +1,29 @@
+
+
+
+