UNPKG

@botonic/react

Version:

Build Chatbots using React

34 lines 1.46 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ReactBot = void 0; const tslib_1 = require("tslib"); const jsx_runtime_1 = require("react/jsx-runtime"); const esm_1 = require("@botonic/core/lib/esm"); const react_1 = tslib_1.__importDefault(require("react")); const text_1 = require("./components/text"); const contexts_1 = require("./contexts"); class ReactBot extends esm_1.CoreBot { constructor(options) { super(Object.assign({ defaultRoutes: [ { path: '404', action: () => (0, jsx_runtime_1.jsx)(text_1.Text, { children: "I don't understand you" }), // eslint-disable-line }, ], renderer: args => this.renderReactActions(args) }, options)); } async renderReactActions({ request, actions }) { const renderedActions = []; let props; let renderedAction; for (const Action of actions) { if (Action) { props = Action.botonicInit ? await Action.botonicInit(request) : {}; renderedAction = ((0, jsx_runtime_1.jsx)(contexts_1.RequestContext.Provider, Object.assign({ value: request }, { children: (0, jsx_runtime_1.jsx)(Action, Object.assign({}, props)) }))); renderedActions.push(renderedAction); } } return renderedActions; } } exports.ReactBot = ReactBot; //# sourceMappingURL=react-bot.js.map