0.0.2 • Published 1 year ago
test-molecules v0.0.2
Features
- 😎 Best Practices: The best practice for chat interaction based on our experience of Alime Chatbot
- 🛡 TypeScript: Written in TypeScript with predictable static types
- 📱 Responsive: Responsive design to adapt automatically to whatever device
- ♿ Accessibility: Accessibility support and get the certification from Accessibility Research Association
- 🎨 Theming: Powerful theme customization in every detail
- 🌍 International: Internationalization support for dozens of languages
Environment Support
- Modern browsers (support CSS Variables)
- Internet Explorer 11 (with polyfills and CSS Variables Polyfill / css-vars-ponyfill)
| Edge | Firefox | Chrome | Safari | iOS Safari | Android WebView | 
|---|---|---|---|---|---|
| 16+ | 31+ | 49+ | 9.1+ | 9.3+ | 6+ | 
Install
npm install @samagra-x/stencil-chatuiyarn add @samagra-x/stencil-chatuiUsage
import Chat, { Bubble, useMessages } from '@samagra-x/stencil-chatui';
import '@samagra-x/stencil-chatui/dist/index.css';
const App = () => {
  const { messages, appendMsg, setTyping } = useMessages([]);
  function handleSend(type, val) {
    if (type === 'text' && val.trim()) {
      appendMsg({
        type: 'text',
        content: { text: val },
        position: 'right',
      });
      setTyping(true);
      setTimeout(() => {
        appendMsg({
          type: 'text',
          content: { text: 'Bala bala' },
        });
      }, 1000);
    }
  }
  function renderMessageContent(msg) {
    const { content } = msg;
    return <Bubble content={content.text} />;
  }
  return (
    <Chat
      navbar={{ title: 'Assistant' }}
      messages={messages}
      renderMessageContent={renderMessageContent}
      onSend={handleSend}
    />
  );
};Development
cd storybook
npm i
npm run storybookLicense
MIT