UNPKG

chatbot-frontend-package

Version:
127 lines (99 loc) 3.87 kB
# Offshorly - AI Chatbot NPM Package ## Available Props ### Chatbot Component Props - `filename` (required): The filename of the dataset used for the Chatbot. - `dataset_id` (required): The ID of the dataset. - `project_id` (required): The ID of the project. - `customStyles` (optional): Takes in a file name to apply custom CSS styles for the chatbot Chat and Summary Component. - `createQuickMessagesUrl` (optional): The URL for create quick messages endpoint, defaults to `backend-dataset-services` endpoint. ### Chat Component Props - `createDatasetPromptUrl` (optional): The URL for create dataset prompts, endpoint, defaults to `backend-dataset-services` endpoint. - `createDatasetStepsUrl` (optional): The URL for create dataset steps endpoint, defaults to `backend-dataset-services` endpoint. - `clearConversationUrl` (optional): The URL for clear conversation history endpoint, defaults to `backend-dataset-services` endpoint. - `audioToTextUrl` (optional): The URL for audio to text endpoint, defaults to `backend-dataset-services` endpoint. ### Summary Component Props - `getSummaryUrl` (optional): The URL for get summary endpoint, defaults to `backend-dataset-services` endpoint. - `createSummaryUrl` (optional): The URL for create summary endpoint, defaults to `backend-dataset-services` endpoint. ## Custom Styling Custom styling may be applied to the Chat and Summary component by passing the filename of a JSON file in the `public` folder of your project to the `customStyles` prop of the Chatbot component. Custom Styles JSON File Format - customize the HSL values in the `colors` class according to your preferred theme ``` { "classes": { "--background": "--background", "--foreground": "--foreground", "--primary": "-primary", "--primary-foreground": "--primary-foreground", "--secondary": "--secondary", "--secondary-foreground": "--secondary-foreground", "--muted": "--muted", "--muted-foreground": "--muted-foreground", "--accent": "--accent", "--accent-foreground": "--accent-foreground", "--destructive": "--destructive", "--destructive-foreground": "--destructive-foreground", "--border": "--border", "--input": "--input", "--ring": "--ring" }, "colors": { "--background": "222.2 84% 4.9%", "--foreground": "210 40% 98%", "--primary": "210 40% 98%", "--primary-foreground": "222.2 47.4% 11.2%", "--secondary": "217.2 32.6% 17.5%", "--secondary-foreground": "210 40% 98%", "--muted": "217.2 32.6% 17.5%", "--muted-foreground": "217.2 32.6% 17.5%", "--accent": "217.2 32.6% 17.5%", "--accent-foreground": "210 40% 98%", "--destructive": "0 62.8% 30.6%", "--destructive-foreground": "210 40% 98%", "--border": "217.2 32.6% 17.5%", "--input": "217.2 32.6% 17.5%", "--ring": "212.7 26.8% 83.9%" } } ``` ## Sample Usage ``` import Chatbot from 'chatbot-frontend-package' import 'chatbot-frontend-package/dist/chatbot-frontend-package.css'; <Chatbot filename={filename} dataset_id={datasetId} project_id={projectId} createQuickMessagesUrl={createQuickMessagesUrl} customStyles={'sample_theme.json'} > <Chatbot.Chat datasetName={datasetName} audioToTextUrl={audioToTextUrl} clearConversationUrl={clearConversationUrl} createDatasetPromptUrl={createDatasetPromptUrl} createDatasetStepsUrl={createDatasetStepsUrl} /> </Chatbot> <Chatbot filename={filename} dataset_id={datasetId} project_id={projectId} createQuickMessagesUrl={createQuickMessagesUrl} customStyles={'sample_theme.json'} > <Chatbot.Summary getSummaryUrl={getSummaryUrl} createSummaryUrl={createSummaryUrl} /> </Chatbot> ``` ``` <Chatbot filename={filename} dataset_id={datasetId} project_id={projectId} > <Chatbot.Chat /> <Chatbot.Summary /> </Chatbot> ```