Skip to content

Commit

Permalink
updated conversationStarter dom to support icons
Browse files Browse the repository at this point in the history
  • Loading branch information
somebodyawesome-dev authored and salmenus committed Jun 19, 2024
1 parent 377c2be commit f41b37f
Showing 1 changed file with 34 additions and 14 deletions.
Original file line number Diff line number Diff line change
@@ -1,20 +1,40 @@
import {ConversationStarter} from '../../../../types/conversationStarter';
import { ConversationStarter } from "../../../../types/conversationStarter";

export const createConversationStartersDom = (conversationStarters: ConversationStarter[]): HTMLElement => {
const conversationStartersContainer = document.createElement('div');
conversationStartersContainer.classList.add('nlux-comp-conversationStarters');
export const createConversationStartersDom = (
conversationStarters: ConversationStarter[]
): HTMLElement => {
const conversationStartersContainer = document.createElement("div");
conversationStartersContainer.classList.add("nlux-comp-conversationStarters");

conversationStarters.forEach((item, index) => {
const conversationStarter = document.createElement('button');
conversationStarter.classList.add('nlux-comp-conversationStarter');
conversationStarters.forEach((item, index) => {
const conversationStarter = document.createElement("button");
conversationStarter.classList.add("nlux-comp-conversationStarter");

const conversationStarterText = document.createElement('span');
conversationStarterText.classList.add('nlux-comp-conversationStarter-prompt');
conversationStarterText.textContent = item.prompt;
// start with empty html tag
let conversationStarterIcon: HTMLElement = document.createElement("div");
if (item.icon) {
// if icon is specified
// check if it is a string
if (typeof item.icon === "string") {
conversationStarterIcon = document.createElement("img");
conversationStarterIcon.setAttribute("src", item.icon);
conversationStarterIcon.setAttribute("width", "20px");
} else {
// if not, icon must be a html element
conversationStarterIcon = item.icon;
}
}

conversationStarter.appendChild(conversationStarterText);
conversationStartersContainer.appendChild(conversationStarter);
});
const conversationStarterText = document.createElement("span");
conversationStarterText.classList.add(
"nlux-comp-conversationStarter-prompt"
);
conversationStarterText.textContent = item.prompt;

return conversationStartersContainer;
conversationStarter.appendChild(conversationStarterIcon);
conversationStarter.appendChild(conversationStarterText);
conversationStartersContainer.appendChild(conversationStarter);
});

return conversationStartersContainer;
};

0 comments on commit f41b37f

Please sign in to comment.