@botonic/core 1.0.0-alpha.0 → 1.0.0-dev.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/constants.d.ts +4 -0
- package/lib/cjs/constants.js +8 -0
- package/lib/cjs/constants.js.map +1 -0
- package/lib/cjs/core-bot.d.ts +36 -0
- package/lib/cjs/core-bot.js +96 -0
- package/lib/cjs/core-bot.js.map +1 -0
- package/lib/cjs/debug/index.d.ts +1 -0
- package/lib/cjs/debug/index.js +5 -0
- package/lib/cjs/debug/index.js.map +1 -0
- package/lib/cjs/debug/inspector.d.ts +24 -0
- package/lib/{debug → cjs/debug}/inspector.js +5 -3
- package/lib/cjs/debug/inspector.js.map +1 -0
- package/lib/cjs/handoff.d.ts +67 -0
- package/lib/{handoff.js → cjs/handoff.js} +25 -12
- package/lib/cjs/handoff.js.map +1 -0
- package/lib/cjs/hubtype-service.d.ts +69 -0
- package/lib/{hubtype-service.js → cjs/hubtype-service.js} +17 -14
- package/lib/cjs/hubtype-service.js.map +1 -0
- package/lib/cjs/i18n.d.ts +2 -0
- package/lib/{i18n.js → cjs/i18n.js} +0 -1
- package/lib/cjs/i18n.js.map +1 -0
- package/lib/cjs/index.d.ts +11 -0
- package/lib/cjs/index.js +15 -0
- package/lib/cjs/index.js.map +1 -0
- package/lib/cjs/models/bot-state.d.ts +11 -0
- package/lib/cjs/models/bot-state.js +3 -0
- package/lib/cjs/models/bot-state.js.map +1 -0
- package/lib/cjs/models/channels.d.ts +9 -0
- package/lib/cjs/models/channels.js +14 -0
- package/lib/cjs/models/channels.js.map +1 -0
- package/lib/cjs/models/events/base-event.d.ts +20 -0
- package/lib/{models/events/index.js → cjs/models/events/base-event.js} +7 -1
- package/lib/cjs/models/events/base-event.js.map +1 -0
- package/lib/cjs/models/events/botonic-event.d.ts +4 -0
- package/lib/cjs/models/events/botonic-event.js +3 -0
- package/lib/cjs/models/events/botonic-event.js.map +1 -0
- package/lib/{models/events/connections/index.d.ts → cjs/models/events/connection/connection-event.d.ts} +1 -1
- package/lib/{models/events/connections/index.js → cjs/models/events/connection/connection-event.js} +1 -1
- package/lib/cjs/models/events/connection/connection-event.js.map +1 -0
- package/lib/cjs/models/events/connection/index.d.ts +1 -0
- package/lib/cjs/models/events/connection/index.js +5 -0
- package/lib/cjs/models/events/connection/index.js.map +1 -0
- package/lib/cjs/models/events/index.d.ts +4 -0
- package/lib/cjs/models/events/index.js +8 -0
- package/lib/cjs/models/events/index.js.map +1 -0
- package/lib/cjs/models/events/integration/index.d.ts +1 -0
- package/lib/cjs/models/events/integration/index.js +5 -0
- package/lib/cjs/models/events/integration/index.js.map +1 -0
- package/lib/cjs/models/events/integration/integration-event.d.ts +6 -0
- package/lib/cjs/models/events/integration/integration-event.js +3 -0
- package/lib/cjs/models/events/integration/integration-event.js.map +1 -0
- package/lib/{models → cjs/models}/events/message/buttons.d.ts +0 -0
- package/lib/{models → cjs/models}/events/message/buttons.js +0 -0
- package/lib/cjs/models/events/message/buttons.js.map +1 -0
- package/lib/{models → cjs/models}/events/message/carousel.d.ts +1 -1
- package/lib/{models → cjs/models}/events/message/carousel.js +0 -0
- package/lib/cjs/models/events/message/carousel.js.map +1 -0
- package/lib/{models → cjs/models}/events/message/custom.d.ts +2 -2
- package/lib/{models → cjs/models}/events/message/custom.js +0 -0
- package/lib/cjs/models/events/message/custom.js.map +1 -0
- package/lib/cjs/models/events/message/index.d.ts +9 -0
- package/lib/cjs/models/events/message/index.js +13 -0
- package/lib/cjs/models/events/message/index.js.map +1 -0
- package/lib/{models → cjs/models}/events/message/location.d.ts +1 -1
- package/lib/{models → cjs/models}/events/message/location.js +0 -0
- package/lib/cjs/models/events/message/location.js.map +1 -0
- package/lib/{models → cjs/models}/events/message/media.d.ts +1 -1
- package/lib/cjs/models/events/message/media.js +11 -0
- package/lib/cjs/models/events/message/media.js.map +1 -0
- package/lib/{models/events/message/index.d.ts → cjs/models/events/message/message-event.d.ts} +2 -1
- package/lib/{models/events/message/index.js → cjs/models/events/message/message-event.js} +5 -1
- package/lib/cjs/models/events/message/message-event.js.map +1 -0
- package/lib/cjs/models/events/message/postback.d.ts +4 -0
- package/lib/cjs/models/events/message/postback.js +3 -0
- package/lib/cjs/models/events/message/postback.js.map +1 -0
- package/lib/{models → cjs/models}/events/message/replies.d.ts +0 -0
- package/lib/{models → cjs/models}/events/message/replies.js +0 -0
- package/lib/cjs/models/events/message/replies.js.map +1 -0
- package/lib/{models → cjs/models}/events/message/text.d.ts +1 -1
- package/lib/{models → cjs/models}/events/message/text.js +0 -0
- package/lib/cjs/models/events/message/text.js.map +1 -0
- package/lib/cjs/models/index.d.ts +6 -0
- package/lib/cjs/models/index.js +10 -0
- package/lib/cjs/models/index.js.map +1 -0
- package/lib/cjs/models/legacy-types.d.ts +184 -0
- package/lib/cjs/models/legacy-types.js +59 -0
- package/lib/cjs/models/legacy-types.js.map +1 -0
- package/lib/cjs/models/session.d.ts +3 -0
- package/lib/cjs/models/session.js +3 -0
- package/lib/cjs/models/session.js.map +1 -0
- package/lib/cjs/models/user.d.ts +14 -0
- package/lib/{models → cjs/models}/user.js +0 -0
- package/lib/{models → cjs/models}/user.js.map +1 -1
- package/lib/cjs/output-parser/botonic-output-parser.d.ts +16 -0
- package/lib/{output-parser/index.js → cjs/output-parser/botonic-output-parser.js} +8 -2
- package/lib/cjs/output-parser/botonic-output-parser.js.map +1 -0
- package/lib/{output-parser → cjs/output-parser}/factory.d.ts +1 -1
- package/lib/{output-parser → cjs/output-parser}/factory.js +9 -7
- package/lib/cjs/output-parser/factory.js.map +1 -0
- package/lib/cjs/output-parser/index.d.ts +3 -0
- package/lib/cjs/output-parser/index.js +7 -0
- package/lib/cjs/output-parser/index.js.map +1 -0
- package/lib/{output-parser → cjs/output-parser}/parsers.d.ts +4 -8
- package/lib/{output-parser → cjs/output-parser}/parsers.js +41 -26
- package/lib/cjs/output-parser/parsers.js.map +1 -0
- package/lib/cjs/plugins.d.ts +6 -0
- package/lib/{plugins.js → cjs/plugins.js} +10 -6
- package/lib/cjs/plugins.js.map +1 -0
- package/lib/cjs/routing/index.d.ts +2 -0
- package/lib/cjs/routing/index.js +6 -0
- package/lib/cjs/routing/index.js.map +1 -0
- package/lib/cjs/routing/router-utils.d.ts +11 -0
- package/lib/cjs/routing/router-utils.js +89 -0
- package/lib/cjs/routing/router-utils.js.map +1 -0
- package/lib/cjs/routing/router.d.ts +54 -0
- package/lib/cjs/routing/router.js +319 -0
- package/lib/cjs/routing/router.js.map +1 -0
- package/lib/cjs/utils.d.ts +11 -0
- package/lib/{utils.js → cjs/utils.js} +14 -5
- package/lib/cjs/utils.js.map +1 -0
- package/lib/esm/constants.d.ts +4 -0
- package/lib/esm/constants.js +5 -0
- package/lib/esm/constants.js.map +1 -0
- package/lib/esm/core-bot.d.ts +36 -0
- package/lib/esm/core-bot.js +92 -0
- package/lib/esm/core-bot.js.map +1 -0
- package/lib/esm/debug/index.d.ts +1 -0
- package/lib/esm/debug/index.js +2 -0
- package/lib/esm/debug/index.js.map +1 -0
- package/lib/esm/debug/inspector.d.ts +24 -0
- package/lib/esm/debug/inspector.js +65 -0
- package/lib/esm/debug/inspector.js.map +1 -0
- package/lib/esm/handoff.d.ts +67 -0
- package/lib/esm/handoff.js +173 -0
- package/lib/esm/handoff.js.map +1 -0
- package/lib/esm/hubtype-service.d.ts +69 -0
- package/lib/esm/hubtype-service.js +185 -0
- package/lib/esm/hubtype-service.js.map +1 -0
- package/lib/esm/i18n.d.ts +2 -0
- package/lib/esm/i18n.js +7 -0
- package/lib/esm/i18n.js.map +1 -0
- package/lib/esm/index.d.ts +11 -0
- package/lib/esm/index.js +12 -0
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/models/bot-state.d.ts +11 -0
- package/lib/esm/models/bot-state.js +2 -0
- package/lib/esm/models/bot-state.js.map +1 -0
- package/lib/esm/models/channels.d.ts +9 -0
- package/lib/esm/models/channels.js +11 -0
- package/lib/esm/models/channels.js.map +1 -0
- package/lib/esm/models/events/base-event.d.ts +20 -0
- package/lib/esm/models/events/base-event.js +14 -0
- package/lib/esm/models/events/base-event.js.map +1 -0
- package/lib/esm/models/events/botonic-event.d.ts +4 -0
- package/lib/esm/models/events/botonic-event.js +2 -0
- package/lib/esm/models/events/botonic-event.js.map +1 -0
- package/lib/esm/models/events/connection/connection-event.d.ts +9 -0
- package/lib/esm/models/events/connection/connection-event.js +6 -0
- package/lib/esm/models/events/connection/connection-event.js.map +1 -0
- package/lib/esm/models/events/connection/index.d.ts +1 -0
- package/lib/esm/models/events/connection/index.js +2 -0
- package/lib/esm/models/events/connection/index.js.map +1 -0
- package/lib/esm/models/events/index.d.ts +4 -0
- package/lib/esm/models/events/index.js +5 -0
- package/lib/esm/models/events/index.js.map +1 -0
- package/lib/esm/models/events/integration/index.d.ts +1 -0
- package/lib/esm/models/events/integration/index.js +2 -0
- package/lib/esm/models/events/integration/index.js.map +1 -0
- package/lib/esm/models/events/integration/integration-event.d.ts +6 -0
- package/lib/esm/models/events/integration/integration-event.js +2 -0
- package/lib/esm/models/events/integration/integration-event.js.map +1 -0
- package/lib/esm/models/events/message/buttons.d.ts +18 -0
- package/lib/esm/models/events/message/buttons.js +2 -0
- package/lib/esm/models/events/message/buttons.js.map +1 -0
- package/lib/esm/models/events/message/carousel.d.ts +11 -0
- package/lib/esm/models/events/message/carousel.js +2 -0
- package/lib/esm/models/events/message/carousel.js.map +1 -0
- package/lib/esm/models/events/message/custom.d.ts +6 -0
- package/lib/esm/models/events/message/custom.js +2 -0
- package/lib/esm/models/events/message/custom.js.map +1 -0
- package/lib/esm/models/events/message/index.d.ts +9 -0
- package/lib/esm/models/events/message/index.js +10 -0
- package/lib/esm/models/events/message/index.js.map +1 -0
- package/lib/esm/models/events/message/location.d.ts +6 -0
- package/lib/esm/models/events/message/location.js +2 -0
- package/lib/esm/models/events/message/location.js.map +1 -0
- package/lib/esm/models/events/message/media.d.ts +18 -0
- package/lib/esm/models/events/message/media.js +8 -0
- package/lib/esm/models/events/message/media.js.map +1 -0
- package/lib/esm/models/events/message/message-event.d.ts +30 -0
- package/lib/esm/models/events/message/message-event.js +29 -0
- package/lib/esm/models/events/message/message-event.js.map +1 -0
- package/lib/esm/models/events/message/postback.d.ts +4 -0
- package/lib/esm/models/events/message/postback.js +2 -0
- package/lib/esm/models/events/message/postback.js.map +1 -0
- package/lib/esm/models/events/message/replies.d.ts +7 -0
- package/lib/esm/models/events/message/replies.js +2 -0
- package/lib/esm/models/events/message/replies.js.map +1 -0
- package/lib/esm/models/events/message/text.d.ts +8 -0
- package/lib/esm/models/events/message/text.js +2 -0
- package/lib/esm/models/events/message/text.js.map +1 -0
- package/lib/esm/models/index.d.ts +6 -0
- package/lib/esm/models/index.js +7 -0
- package/lib/esm/models/index.js.map +1 -0
- package/lib/esm/models/legacy-types.d.ts +184 -0
- package/lib/esm/models/legacy-types.js +56 -0
- package/lib/esm/models/legacy-types.js.map +1 -0
- package/lib/esm/models/session.d.ts +3 -0
- package/lib/esm/models/session.js +2 -0
- package/lib/esm/models/session.js.map +1 -0
- package/lib/esm/models/user.d.ts +14 -0
- package/lib/esm/models/user.js +2 -0
- package/lib/esm/models/user.js.map +1 -0
- package/lib/esm/output-parser/botonic-output-parser.d.ts +16 -0
- package/lib/esm/output-parser/botonic-output-parser.js +33 -0
- package/lib/esm/output-parser/botonic-output-parser.js.map +1 -0
- package/lib/esm/output-parser/factory.d.ts +4 -0
- package/lib/esm/output-parser/factory.js +28 -0
- package/lib/esm/output-parser/factory.js.map +1 -0
- package/lib/esm/output-parser/index.d.ts +3 -0
- package/lib/esm/output-parser/index.js +4 -0
- package/lib/esm/output-parser/index.js.map +1 -0
- package/lib/esm/output-parser/parsers.d.ts +22 -0
- package/lib/esm/output-parser/parsers.js +130 -0
- package/lib/esm/output-parser/parsers.js.map +1 -0
- package/lib/esm/plugins.d.ts +6 -0
- package/lib/esm/plugins.js +43 -0
- package/lib/esm/plugins.js.map +1 -0
- package/lib/esm/routing/index.d.ts +2 -0
- package/lib/esm/routing/index.js +3 -0
- package/lib/esm/routing/index.js.map +1 -0
- package/lib/esm/routing/router-utils.d.ts +11 -0
- package/lib/esm/routing/router-utils.js +79 -0
- package/lib/esm/routing/router-utils.js.map +1 -0
- package/lib/esm/routing/router.d.ts +54 -0
- package/lib/esm/routing/router.js +315 -0
- package/lib/esm/routing/router.js.map +1 -0
- package/lib/esm/utils.d.ts +11 -0
- package/lib/esm/utils.js +78 -0
- package/lib/esm/utils.js.map +1 -0
- package/package.json +15 -8
- package/src/constants.ts +6 -0
- package/src/core-bot.ts +181 -0
- package/src/{types/debug/index.d.ts → debug/index.ts} +0 -0
- package/src/debug/{inspector.js → inspector.ts} +39 -14
- package/src/{handoff.js → handoff.ts} +103 -26
- package/src/{hubtype-service.js → hubtype-service.ts} +77 -35
- package/src/{i18n.js → i18n.ts} +7 -1
- package/src/index.ts +11 -0
- package/src/models/bot-state.ts +12 -0
- package/src/models/channels.ts +9 -0
- package/src/models/events/base-event.ts +22 -0
- package/src/models/events/botonic-event.ts +26 -0
- package/src/models/events/{connections/index.ts → connection/connection-event.ts} +1 -1
- package/src/models/events/connection/index.ts +1 -0
- package/src/models/events/index.ts +4 -37
- package/src/models/events/integration/index.ts +1 -0
- package/src/models/events/integration/integration-event.ts +13 -0
- package/src/models/events/message/carousel.ts +1 -1
- package/src/models/events/message/custom.ts +2 -2
- package/src/models/events/message/index.ts +9 -33
- package/src/models/events/message/location.ts +1 -1
- package/src/models/events/message/media.ts +1 -1
- package/src/models/events/message/message-event.ts +37 -0
- package/src/models/events/message/postback.ts +5 -0
- package/src/models/events/message/text.ts +1 -1
- package/src/models/index.ts +6 -0
- package/src/models/legacy-types.ts +262 -0
- package/src/models/session.ts +3 -0
- package/src/models/user.ts +10 -3
- package/src/output-parser/botonic-output-parser.ts +38 -0
- package/src/output-parser/factory.ts +5 -3
- package/src/output-parser/index.ts +3 -32
- package/src/output-parser/parsers.ts +45 -18
- package/src/{plugins.js → plugins.ts} +28 -13
- package/src/routing/index.ts +2 -0
- package/src/routing/router-utils.ts +100 -0
- package/src/routing/router.ts +415 -0
- package/src/{utils.js → utils.ts} +26 -13
- package/index.d.ts +0 -1
- package/lib/constants.d.ts +0 -15
- package/lib/constants.js +0 -19
- package/lib/constants.js.map +0 -1
- package/lib/core-bot.d.ts +0 -40
- package/lib/core-bot.js +0 -80
- package/lib/core-bot.js.map +0 -1
- package/lib/debug/index.d.ts +0 -1
- package/lib/debug/index.js +0 -9
- package/lib/debug/index.js.map +0 -1
- package/lib/debug/inspector.d.ts +0 -20
- package/lib/debug/inspector.js.map +0 -1
- package/lib/debug/inspector.test.d.ts +0 -1
- package/lib/debug/inspector.test.js +0 -8
- package/lib/debug/inspector.test.js.map +0 -1
- package/lib/errors.d.ts +0 -4
- package/lib/errors.js +0 -11
- package/lib/errors.js.map +0 -1
- package/lib/handoff.d.ts +0 -34
- package/lib/handoff.js.map +0 -1
- package/lib/handoff.test.d.ts +0 -1
- package/lib/handoff.test.js +0 -62
- package/lib/handoff.test.js.map +0 -1
- package/lib/hubtype-service.d.ts +0 -58
- package/lib/hubtype-service.js.map +0 -1
- package/lib/hubtype-service.test.d.ts +0 -1
- package/lib/hubtype-service.test.js +0 -21
- package/lib/hubtype-service.test.js.map +0 -1
- package/lib/i18n.d.ts +0 -1
- package/lib/i18n.js.map +0 -1
- package/lib/index.d.ts +0 -48
- package/lib/index.js +0 -58
- package/lib/index.js.map +0 -1
- package/lib/models/events/connections/index.js.map +0 -1
- package/lib/models/events/index.d.ts +0 -20
- package/lib/models/events/index.js.map +0 -1
- package/lib/models/events/message/buttons.js.map +0 -1
- package/lib/models/events/message/carousel.js.map +0 -1
- package/lib/models/events/message/custom.js.map +0 -1
- package/lib/models/events/message/index.js.map +0 -1
- package/lib/models/events/message/location.js.map +0 -1
- package/lib/models/events/message/media.js +0 -11
- package/lib/models/events/message/media.js.map +0 -1
- package/lib/models/events/message/replies.js.map +0 -1
- package/lib/models/events/message/text.js.map +0 -1
- package/lib/models/user.d.ts +0 -9
- package/lib/output-parser/factory.js.map +0 -1
- package/lib/output-parser/index.d.ts +0 -11
- package/lib/output-parser/index.js.map +0 -1
- package/lib/output-parser/parsers.js.map +0 -1
- package/lib/output-parser/util.d.ts +0 -2
- package/lib/output-parser/util.js +0 -14
- package/lib/output-parser/util.js.map +0 -1
- package/lib/plugins.d.ts +0 -2
- package/lib/plugins.js.map +0 -1
- package/lib/router.d.ts +0 -55
- package/lib/router.js +0 -268
- package/lib/router.js.map +0 -1
- package/lib/router.test.d.ts +0 -1
- package/lib/router.test.js +0 -273
- package/lib/router.test.js.map +0 -1
- package/lib/utils.d.ts +0 -8
- package/lib/utils.js.map +0 -1
- package/src/constants.js +0 -15
- package/src/core-bot.js +0 -106
- package/src/debug/index.js +0 -6
- package/src/debug/inspector.test.js +0 -6
- package/src/errors.js +0 -8
- package/src/handoff.test.js +0 -61
- package/src/hubtype-service.test.js +0 -23
- package/src/index.js +0 -51
- package/src/output-parser/util.ts +0 -8
- package/src/router.js +0 -273
- package/src/router.test.js +0 -347
- package/src/types/constants.d.ts +0 -14
- package/src/types/core-bot.d.ts +0 -45
- package/src/types/debug/inspector.d.ts +0 -33
- package/src/types/handoff.d.ts +0 -75
- package/src/types/hubtype-service.d.ts +0 -52
- package/src/types/i18n.d.ts +0 -8
- package/src/types/index.d.ts +0 -226
- package/src/types/plugins.d.ts +0 -13
- package/src/types/router.d.ts +0 -57
- package/src/types/utils.d.ts +0 -12
package/lib/router.test.js
DELETED
|
@@ -1,273 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const errors_1 = require("./errors");
|
|
4
|
-
const index_1 = require("./index");
|
|
5
|
-
const router_1 = require("./router");
|
|
6
|
-
/** @type Input */
|
|
7
|
-
const textInput = { type: 'text', data: 'hi' };
|
|
8
|
-
/** @type Input */
|
|
9
|
-
const textInputComplex = { type: 'text', data: 'Cömplêx input &% 🚀' };
|
|
10
|
-
/** @type Input */
|
|
11
|
-
const textPayloadInput = { type: 'text', data: 'hi', payload: 'foo' };
|
|
12
|
-
/** @type Input */
|
|
13
|
-
const postbackInput = { type: 'postback', payload: 'foo' };
|
|
14
|
-
const requestInput = {
|
|
15
|
-
input: textInput,
|
|
16
|
-
session: { organization: 'myOrg' },
|
|
17
|
-
lastRoutePath: 'initial',
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* @return {Route}
|
|
21
|
-
*/
|
|
22
|
-
function testRoute() {
|
|
23
|
-
return {};
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* @return {Session}
|
|
27
|
-
*/
|
|
28
|
-
function testSession() {
|
|
29
|
-
return {
|
|
30
|
-
user: { id: 'userid', provider: index_1.PROVIDER.DEV },
|
|
31
|
-
bot: { id: 'bot_id' },
|
|
32
|
-
is_first_interaction: true,
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
describe('Bad router initialization', () => {
|
|
36
|
-
test('empty routes throw TypeError', () => {
|
|
37
|
-
const router = new router_1.Router([]);
|
|
38
|
-
expect(() => router.processInput(textInput, testSession())).toThrow(errors_1.NoMatchingRouteError);
|
|
39
|
-
});
|
|
40
|
-
test('null routes throw TypeError', () => {
|
|
41
|
-
// @ts-ignore
|
|
42
|
-
const router = new router_1.Router();
|
|
43
|
-
expect(() => router.processInput(textInput, testSession())).toThrow(TypeError);
|
|
44
|
-
});
|
|
45
|
-
});
|
|
46
|
-
test('Router returns 404', () => {
|
|
47
|
-
const router = new router_1.Router([{ path: '404', action: '404Action' }]);
|
|
48
|
-
const { action } = router.processInput(textInput, testSession());
|
|
49
|
-
expect(action).toBe('404Action');
|
|
50
|
-
});
|
|
51
|
-
describe('Match route by MATCHER <> INPUT', () => {
|
|
52
|
-
const router = new router_1.Router([]);
|
|
53
|
-
const matchTextProp = (matcher, textInput) => router.matchRoute(testRoute(), 'text', matcher, textInput, testSession());
|
|
54
|
-
const matchPayloadProp = (matcher, payload) => router.matchRoute(testRoute(), 'payload', matcher, payload, testSession());
|
|
55
|
-
const matchRequestProp = (matcher, request) => router.matchRoute(testRoute(), 'request', matcher, request.input, request.session, request.lastRoutePath);
|
|
56
|
-
test('text <> text', () => {
|
|
57
|
-
expect(matchTextProp('hi', textInput)).toBeTruthy();
|
|
58
|
-
expect(matchTextProp('hii', textInput)).toBeFalsy();
|
|
59
|
-
expect(matchTextProp('bye', textInput)).toBeFalsy();
|
|
60
|
-
expect(matchTextProp('', textInput)).toBeFalsy();
|
|
61
|
-
expect(matchTextProp(null, textInput)).toBeFalsy();
|
|
62
|
-
expect(matchTextProp('Cömplêx input &% 🚀', textInputComplex)).toBeTruthy();
|
|
63
|
-
expect(matchTextProp(' Cömplêx input &% 🚀', textInputComplex)).toBeFalsy(); // has a space at the beginning
|
|
64
|
-
});
|
|
65
|
-
test('regex <> text', () => {
|
|
66
|
-
expect(matchTextProp(/hi/, textInput)).toBeTruthy();
|
|
67
|
-
expect(matchTextProp(/bye/, textInput)).toBeFalsy();
|
|
68
|
-
expect(matchTextProp(/🚀/, textInputComplex)).toBeTruthy();
|
|
69
|
-
expect(matchTextProp(/complex/, textInputComplex)).toBeFalsy();
|
|
70
|
-
});
|
|
71
|
-
test('function <> text', () => {
|
|
72
|
-
expect(matchTextProp(v => v.startsWith('hi'), textInput)).toBeTruthy();
|
|
73
|
-
expect(matchTextProp(v => !v.startsWith('hi'), textInput)).toBeFalsy();
|
|
74
|
-
});
|
|
75
|
-
test('input <> text', () => {
|
|
76
|
-
expect(router.matchRoute(testRoute(), 'input', i => i.data.startsWith('hi'), textInput, testSession())).toBeTruthy();
|
|
77
|
-
expect(router.matchRoute(testRoute(), 'input', i => !i.data.startsWith('hi'), textInput, testSession())).toBeFalsy();
|
|
78
|
-
});
|
|
79
|
-
test('text <> text payload', () => {
|
|
80
|
-
expect(matchPayloadProp('foo', textPayloadInput)).toBeTruthy();
|
|
81
|
-
expect(matchPayloadProp('fooo', textPayloadInput)).toBeFalsy();
|
|
82
|
-
expect(matchPayloadProp('bar', textPayloadInput)).toBeFalsy();
|
|
83
|
-
expect(matchPayloadProp('', textPayloadInput)).toBeFalsy();
|
|
84
|
-
expect(matchPayloadProp(null, textPayloadInput)).toBeFalsy();
|
|
85
|
-
});
|
|
86
|
-
test('regex <> text payload', () => {
|
|
87
|
-
expect(matchPayloadProp(/foo/, textPayloadInput)).toBeTruthy();
|
|
88
|
-
expect(matchPayloadProp(/bar/, textPayloadInput)).toBeFalsy();
|
|
89
|
-
});
|
|
90
|
-
test('function <> text payload', () => {
|
|
91
|
-
expect(matchPayloadProp(v => v.startsWith('fo'), textPayloadInput)).toBeTruthy();
|
|
92
|
-
expect(matchPayloadProp(v => !v.startsWith('fo'), textPayloadInput)).toBeFalsy();
|
|
93
|
-
});
|
|
94
|
-
test('text <> postback', () => {
|
|
95
|
-
expect(matchPayloadProp('foo', postbackInput)).toBeTruthy();
|
|
96
|
-
expect(matchPayloadProp('fooo', postbackInput)).toBeFalsy();
|
|
97
|
-
expect(matchPayloadProp('bar', postbackInput)).toBeFalsy();
|
|
98
|
-
expect(matchPayloadProp('', postbackInput)).toBeFalsy();
|
|
99
|
-
expect(matchPayloadProp(null, postbackInput)).toBeFalsy();
|
|
100
|
-
});
|
|
101
|
-
test('regex <> postback', () => {
|
|
102
|
-
expect(matchPayloadProp(/foo/, postbackInput)).toBeTruthy();
|
|
103
|
-
expect(matchPayloadProp(/bar/, postbackInput)).toBeFalsy();
|
|
104
|
-
});
|
|
105
|
-
test('function <> postback', () => {
|
|
106
|
-
expect(matchPayloadProp(v => v.startsWith('fo'), postbackInput)).toBeTruthy();
|
|
107
|
-
expect(matchPayloadProp(v => !v.startsWith('fo'), postbackInput)).toBeFalsy();
|
|
108
|
-
});
|
|
109
|
-
test('function <> request', () => {
|
|
110
|
-
expect(matchRequestProp(request => request.input.data === 'hi' &&
|
|
111
|
-
request.session.organization === 'myOrg' &&
|
|
112
|
-
request.lastRoutePath === 'initial', requestInput)).toBeTruthy();
|
|
113
|
-
expect(matchRequestProp(request => request.input.data === 'hello' &&
|
|
114
|
-
request.session.organization === 'myOrg' &&
|
|
115
|
-
request.lastRoutePath === 'initial', requestInput)).toBeFalsy();
|
|
116
|
-
});
|
|
117
|
-
});
|
|
118
|
-
describe('Get route by path', () => {
|
|
119
|
-
const externalRoutes = [
|
|
120
|
-
{ path: '', action: 'DefaultAction' },
|
|
121
|
-
{ path: 'child', action: 'ChildAction' },
|
|
122
|
-
];
|
|
123
|
-
const router = new router_1.Router([
|
|
124
|
-
{ path: 'initial', action: 'Initial' },
|
|
125
|
-
{
|
|
126
|
-
path: 'flow-1',
|
|
127
|
-
action: 'Flow1',
|
|
128
|
-
childRoutes: [
|
|
129
|
-
{
|
|
130
|
-
path: '1',
|
|
131
|
-
action: 'Flow1.1',
|
|
132
|
-
childRoutes: [
|
|
133
|
-
{ path: '1', action: 'Flow1.1.1' },
|
|
134
|
-
{ path: '2', action: 'Flow1.1.2' },
|
|
135
|
-
{ path: '3', action: 'Flow1.1.3' },
|
|
136
|
-
],
|
|
137
|
-
},
|
|
138
|
-
{ path: '2', action: 'Flow1.2', childRoutes: externalRoutes },
|
|
139
|
-
{
|
|
140
|
-
path: '3',
|
|
141
|
-
action: 'Flow1.3',
|
|
142
|
-
childRoutes: [
|
|
143
|
-
{ path: '1', action: 'Flow1.3.1' },
|
|
144
|
-
{ path: '2', action: 'Flow1.3.2' },
|
|
145
|
-
{ path: '3', action: 'Flow1.3.3' },
|
|
146
|
-
],
|
|
147
|
-
},
|
|
148
|
-
],
|
|
149
|
-
},
|
|
150
|
-
{ path: '404', action: '404Action' },
|
|
151
|
-
]);
|
|
152
|
-
function getRouteActionByPath(path) {
|
|
153
|
-
// @ts-ignore
|
|
154
|
-
return router.getRouteByPath(path).action;
|
|
155
|
-
}
|
|
156
|
-
test('path exists', () => {
|
|
157
|
-
expect(getRouteActionByPath('initial')).toBe('Initial');
|
|
158
|
-
expect(getRouteActionByPath('flow-1/1')).toBe('Flow1.1');
|
|
159
|
-
expect(getRouteActionByPath('flow-1/3/2')).toBe('Flow1.3.2');
|
|
160
|
-
});
|
|
161
|
-
test('path exists in composed child routes', () => {
|
|
162
|
-
expect(getRouteActionByPath('flow-1/2')).toBe('Flow1.2');
|
|
163
|
-
expect(getRouteActionByPath('flow-1/2/child')).toBe('ChildAction');
|
|
164
|
-
});
|
|
165
|
-
test('path does not exist', () => {
|
|
166
|
-
expect(router.getRouteByPath('')).toBeNull();
|
|
167
|
-
expect(router.getRouteByPath('foo')).toBeNull();
|
|
168
|
-
expect(router.getRouteByPath('flow-1/3/2/6')).toBeNull();
|
|
169
|
-
});
|
|
170
|
-
});
|
|
171
|
-
describe('Process input (v<0.9)', () => {
|
|
172
|
-
const externalRoutes = [
|
|
173
|
-
{ path: '', action: 'DefaultAction' },
|
|
174
|
-
{ path: 'child', action: 'ChildAction' },
|
|
175
|
-
];
|
|
176
|
-
const router = new router_1.Router([
|
|
177
|
-
{ path: 'help', payload: 'help', action: 'Help' },
|
|
178
|
-
{
|
|
179
|
-
path: 'initial',
|
|
180
|
-
intent: /greeting/,
|
|
181
|
-
action: 'Flow1',
|
|
182
|
-
childRoutes: [
|
|
183
|
-
{
|
|
184
|
-
path: '1',
|
|
185
|
-
payload: '1',
|
|
186
|
-
action: 'Flow1.1',
|
|
187
|
-
childRoutes: [
|
|
188
|
-
{ path: '1', payload: '1', action: 'Flow1.1.1' },
|
|
189
|
-
{ path: '2', payload: '2', action: 'Flow1.1.2' },
|
|
190
|
-
{ path: '3', payload: '3', action: 'Flow1.1.3' },
|
|
191
|
-
],
|
|
192
|
-
},
|
|
193
|
-
{
|
|
194
|
-
path: '2',
|
|
195
|
-
payload: '2',
|
|
196
|
-
action: 'Flow1.2',
|
|
197
|
-
childRoutes: externalRoutes,
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
path: '3',
|
|
201
|
-
payload: '3',
|
|
202
|
-
action: 'Flow1.3',
|
|
203
|
-
childRoutes: [
|
|
204
|
-
{ path: '1', payload: '1', action: 'Flow1.3.1' },
|
|
205
|
-
{ path: '2', payload: '2', action: 'Flow1.3.2' },
|
|
206
|
-
{ path: '3', payload: '3', action: 'Flow1.3.3' },
|
|
207
|
-
],
|
|
208
|
-
},
|
|
209
|
-
],
|
|
210
|
-
},
|
|
211
|
-
{ path: '404', action: '404Action' },
|
|
212
|
-
]);
|
|
213
|
-
test('text input, root level route', () => {
|
|
214
|
-
/** @type Input */
|
|
215
|
-
const input = { type: 'text', data: 'hi', intent: 'greeting' };
|
|
216
|
-
const lastRoutePath = null;
|
|
217
|
-
expect(router.processInput(input, testSession(), lastRoutePath).action).toBe('Flow1');
|
|
218
|
-
});
|
|
219
|
-
test('payload input, 2nd level route', () => {
|
|
220
|
-
/** @type Input */
|
|
221
|
-
const input = { type: 'postback', payload: '2' };
|
|
222
|
-
const lastRoutePath = 'initial';
|
|
223
|
-
expect(router.processInput(input, testSession(), lastRoutePath).action).toBe('Flow1.2');
|
|
224
|
-
});
|
|
225
|
-
test('old protocol:path payload input, root level route', () => {
|
|
226
|
-
/** @type Input */
|
|
227
|
-
const input = { type: 'postback', payload: '__PATH_PAYLOAD__initial' };
|
|
228
|
-
const lastRoutePath = '';
|
|
229
|
-
expect(router.processInput(input, testSession(), lastRoutePath).action).toBe('Flow1');
|
|
230
|
-
});
|
|
231
|
-
test('old protocol:path payload input, root level route with composed path', () => {
|
|
232
|
-
/** @type Input */
|
|
233
|
-
const input = { type: 'postback', path: 'initial/2' };
|
|
234
|
-
const lastRoutePath = '';
|
|
235
|
-
expect(router.processInput(input, testSession(), lastRoutePath).action).toBe('Flow1.2');
|
|
236
|
-
});
|
|
237
|
-
test('old protocol: path payload input, 2nd level route with lastRoutePath', () => {
|
|
238
|
-
/** @type Input */
|
|
239
|
-
const input = { type: 'postback', payload: '__PATH_PAYLOAD__2' };
|
|
240
|
-
const lastRoutePath = 'initial';
|
|
241
|
-
expect(router.processInput(input, testSession(), lastRoutePath).action).toBe('Flow1.2');
|
|
242
|
-
});
|
|
243
|
-
test('path payload input with deprecated protocol, root level route', () => {
|
|
244
|
-
/** @type Input */
|
|
245
|
-
const input = { type: 'postback', payload: '__PATH_PAYLOAD__initial/2' };
|
|
246
|
-
const lastRoutePath = '';
|
|
247
|
-
expect(router.processInput(input, testSession(), lastRoutePath).action).toBe('Flow1.2');
|
|
248
|
-
});
|
|
249
|
-
test('old protocol:path payload input with deprecated protocol, 2nd level route', () => {
|
|
250
|
-
/** @type Input */
|
|
251
|
-
const input = { type: 'postback', payload: '__PATH_PAYLOAD__initial/2' };
|
|
252
|
-
const lastRoutePath = 'initial';
|
|
253
|
-
expect(router.processInput(input, testSession(), lastRoutePath).action).toBe('Flow1.2');
|
|
254
|
-
});
|
|
255
|
-
});
|
|
256
|
-
test.each([
|
|
257
|
-
[undefined, undefined, undefined],
|
|
258
|
-
['', undefined, undefined],
|
|
259
|
-
['bad_input', undefined, undefined],
|
|
260
|
-
['__PATH_PAYLOAD__', '', undefined],
|
|
261
|
-
['xx__PATH_PAYLOAD__path1', 'path1', undefined],
|
|
262
|
-
['xx__PATH_PAYLOAD__path1?path1', 'path1', 'path1'],
|
|
263
|
-
])('getOnFinishParams(%s)=>%s', (inputPayload, expectedPath, expectedParams) => {
|
|
264
|
-
const router = new router_1.Router([]);
|
|
265
|
-
/** @type Input */
|
|
266
|
-
const input = { type: 'postback', payload: inputPayload };
|
|
267
|
-
expect(router.getOnFinishParams(input)).toEqual(expectedParams);
|
|
268
|
-
expect(input.path).toEqual(expectedPath);
|
|
269
|
-
if (input.path) {
|
|
270
|
-
expect(input.payload).toBeUndefined();
|
|
271
|
-
}
|
|
272
|
-
});
|
|
273
|
-
//# sourceMappingURL=router.test.js.map
|
package/lib/router.test.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"router.test.js","sourceRoot":"","sources":["../src/router.test.js"],"names":[],"mappings":"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"}
|
package/lib/utils.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export function getWebpackEnvVar(webpackEnvVar: any, name: any, defaultValue: any): any;
|
|
2
|
-
export function isFunction(o: any): boolean;
|
|
3
|
-
export function isNode(): any;
|
|
4
|
-
export function isBrowser(): any;
|
|
5
|
-
export function isMobile(mobileBreakpoint?: number): boolean;
|
|
6
|
-
export function params2queryString(params: any): string;
|
|
7
|
-
export function join(...segments: any[]): string;
|
|
8
|
-
export function dirname(path: any): string;
|
package/lib/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.js"],"names":[],"mappings":"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"}
|
package/src/constants.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export const Providers = Object.freeze({
|
|
2
|
-
Messaging: {
|
|
3
|
-
TELEGRAM: 'telegram',
|
|
4
|
-
WECHAT: 'wechat',
|
|
5
|
-
FACEBOOK: 'facebook',
|
|
6
|
-
INTERCOM: 'intercom',
|
|
7
|
-
GENERIC: 'generic',
|
|
8
|
-
TWITTER: 'twitter',
|
|
9
|
-
WHATSAPP: 'whatsapp',
|
|
10
|
-
SMOOCH: 'smooch',
|
|
11
|
-
SMOOCH_WEB: 'smooch_web',
|
|
12
|
-
IMBEE: 'imbee',
|
|
13
|
-
WEBCHAT: 'webchat',
|
|
14
|
-
},
|
|
15
|
-
})
|
package/src/core-bot.js
DELETED
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { Inspector } from './debug/inspector'
|
|
2
|
-
import { getString } from './i18n'
|
|
3
|
-
import { BotonicOutputParser } from './output-parser/'
|
|
4
|
-
import { loadPlugins, runPlugins } from './plugins'
|
|
5
|
-
import { Router } from './router'
|
|
6
|
-
import { isFunction } from './utils'
|
|
7
|
-
|
|
8
|
-
export class CoreBot {
|
|
9
|
-
constructor({
|
|
10
|
-
renderer,
|
|
11
|
-
routes,
|
|
12
|
-
locales,
|
|
13
|
-
theme,
|
|
14
|
-
plugins,
|
|
15
|
-
appId,
|
|
16
|
-
defaultTyping,
|
|
17
|
-
defaultDelay,
|
|
18
|
-
defaultRoutes,
|
|
19
|
-
inspector,
|
|
20
|
-
}) {
|
|
21
|
-
this.renderer = renderer
|
|
22
|
-
this.plugins = loadPlugins(plugins)
|
|
23
|
-
this.theme = theme || {}
|
|
24
|
-
this.defaultTyping =
|
|
25
|
-
typeof defaultTyping !== 'undefined' ? defaultTyping : 0.6
|
|
26
|
-
this.defaultDelay = typeof defaultDelay !== 'undefined' ? defaultDelay : 0.4
|
|
27
|
-
this.locales = locales
|
|
28
|
-
if (appId) {
|
|
29
|
-
this.appId = appId
|
|
30
|
-
return
|
|
31
|
-
}
|
|
32
|
-
this.rootElement = null
|
|
33
|
-
this.inspector = inspector || new Inspector()
|
|
34
|
-
this.routes = routes
|
|
35
|
-
this.defaultRoutes = defaultRoutes || []
|
|
36
|
-
this.router = isFunction(this.routes)
|
|
37
|
-
? null
|
|
38
|
-
: new Router(
|
|
39
|
-
[...this.routes, ...this.defaultRoutes],
|
|
40
|
-
this.inspector.routeInspector
|
|
41
|
-
)
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
getString(stringID, session) {
|
|
45
|
-
return getString(this.locales, session.__locale, stringID)
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
setLocale(locale, session) {
|
|
49
|
-
session.__locale = locale
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
async input({ input, session, lastRoutePath }) {
|
|
53
|
-
session = session || {}
|
|
54
|
-
if (!session.__locale) session.__locale = 'en'
|
|
55
|
-
|
|
56
|
-
if (this.plugins) {
|
|
57
|
-
await runPlugins(this.plugins, 'pre', input, session, lastRoutePath)
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
if (isFunction(this.routes)) {
|
|
61
|
-
this.router = new Router(
|
|
62
|
-
[
|
|
63
|
-
...(await this.routes({ input, session, lastRoutePath })),
|
|
64
|
-
...this.defaultRoutes,
|
|
65
|
-
],
|
|
66
|
-
this.inspector.routeInspector
|
|
67
|
-
)
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
const output = this.router.processInput(input, session, lastRoutePath)
|
|
71
|
-
|
|
72
|
-
const request = {
|
|
73
|
-
getString: stringId => this.getString(stringId, session),
|
|
74
|
-
setLocale: locale => this.setLocale(locale, session),
|
|
75
|
-
session: session || {},
|
|
76
|
-
params: output.params || {},
|
|
77
|
-
input: input,
|
|
78
|
-
plugins: this.plugins,
|
|
79
|
-
defaultTyping: this.defaultTyping,
|
|
80
|
-
defaultDelay: this.defaultDelay,
|
|
81
|
-
lastRoutePath,
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
const actions = [output.action, output.retryAction, output.defaultAction]
|
|
85
|
-
|
|
86
|
-
const response = await this.renderer({ request, actions })
|
|
87
|
-
const parsedResponse = new BotonicOutputParser().xmlToMessageEvents(
|
|
88
|
-
response
|
|
89
|
-
)
|
|
90
|
-
lastRoutePath = output.lastRoutePath
|
|
91
|
-
if (this.plugins) {
|
|
92
|
-
await runPlugins(
|
|
93
|
-
this.plugins,
|
|
94
|
-
'post',
|
|
95
|
-
input,
|
|
96
|
-
session,
|
|
97
|
-
lastRoutePath,
|
|
98
|
-
response,
|
|
99
|
-
parsedResponse
|
|
100
|
-
)
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
session.is_first_interaction = false
|
|
104
|
-
return { input, response, parsedResponse, session, lastRoutePath }
|
|
105
|
-
}
|
|
106
|
-
}
|
package/src/debug/index.js
DELETED
package/src/errors.js
DELETED
package/src/handoff.test.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { HandOffBuilder, humanHandOff } from './handoff'
|
|
2
|
-
|
|
3
|
-
describe('handOff', () => {
|
|
4
|
-
test.each([
|
|
5
|
-
[
|
|
6
|
-
`create_case:{
|
|
7
|
-
"queue":"q1",
|
|
8
|
-
"on_finish":"payload1"
|
|
9
|
-
}`,
|
|
10
|
-
'q1',
|
|
11
|
-
{ payload: 'payload1' },
|
|
12
|
-
],
|
|
13
|
-
[
|
|
14
|
-
`create_case:{
|
|
15
|
-
"on_finish":"__PATH_PAYLOAD__path1"
|
|
16
|
-
}`,
|
|
17
|
-
'',
|
|
18
|
-
{ path: 'path1' },
|
|
19
|
-
],
|
|
20
|
-
])('humanHandOff', (expected, queue, onFinish) => {
|
|
21
|
-
const session = {}
|
|
22
|
-
humanHandOff(session, queue, onFinish)
|
|
23
|
-
expect(session._botonic_action).toEqual(expected.replace(/[ \n]/g, ''))
|
|
24
|
-
})
|
|
25
|
-
|
|
26
|
-
test.each([
|
|
27
|
-
[
|
|
28
|
-
`create_case:` +
|
|
29
|
-
JSON.stringify({
|
|
30
|
-
queue: 'q1',
|
|
31
|
-
agent_email: 'email1',
|
|
32
|
-
case_info: '{}{:::: m"ho menjo tot}',
|
|
33
|
-
note: '{}{:::: m"ho menjo tot2}',
|
|
34
|
-
on_finish: 'payload1',
|
|
35
|
-
}),
|
|
36
|
-
new HandOffBuilder({})
|
|
37
|
-
.withQueue('q1')
|
|
38
|
-
.withOnFinishPayload('payload1')
|
|
39
|
-
.withAgentEmail('email1')
|
|
40
|
-
.withCaseInfo('{}{:::: m"ho menjo tot}')
|
|
41
|
-
.withNote('{}{:::: m"ho menjo tot2}'),
|
|
42
|
-
],
|
|
43
|
-
[
|
|
44
|
-
`create_case:` +
|
|
45
|
-
JSON.stringify({
|
|
46
|
-
on_finish: '__PATH_PAYLOAD__path1',
|
|
47
|
-
}),
|
|
48
|
-
new HandOffBuilder({}).withOnFinishPath('path1'),
|
|
49
|
-
],
|
|
50
|
-
[
|
|
51
|
-
`create_case:` +
|
|
52
|
-
JSON.stringify({
|
|
53
|
-
agent_id: '1234',
|
|
54
|
-
}),
|
|
55
|
-
new HandOffBuilder({}).withAgentId('1234'),
|
|
56
|
-
],
|
|
57
|
-
])('HandOffBuilder', (expected, builder) => {
|
|
58
|
-
builder.handOff()
|
|
59
|
-
expect(builder._session._botonic_action).toEqual(expected)
|
|
60
|
-
})
|
|
61
|
-
})
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { HubtypeService } from './hubtype-service'
|
|
2
|
-
|
|
3
|
-
describe('HubtypeService', () => {
|
|
4
|
-
test.each([
|
|
5
|
-
[{ user: { id: 'userId' } }],
|
|
6
|
-
[{ appId: 'appId' }],
|
|
7
|
-
[{ appId: '', user: { id: 'userId' } }],
|
|
8
|
-
[{ appId: 'appId', user: { id: undefined } }],
|
|
9
|
-
])('init fails if user or appid are empty: %s', async args => {
|
|
10
|
-
const sut = new HubtypeService(args)
|
|
11
|
-
|
|
12
|
-
await expect(sut.init()).rejects.toEqual(
|
|
13
|
-
'No User or appId. Clear cache and reload'
|
|
14
|
-
)
|
|
15
|
-
})
|
|
16
|
-
|
|
17
|
-
test('init timeouts when it cannot connect to hubtype', async () => {
|
|
18
|
-
const sut = new HubtypeService({ appId: 'appId', user: { id: 'userId' } })
|
|
19
|
-
sut.PUSHER_CONNECT_TIMEOUT_MS = 20
|
|
20
|
-
// will fail because _HUBTYPE_API_URL_ is not configured for unit tests
|
|
21
|
-
await expect(sut.init()).rejects.toEqual('Connection Timeout')
|
|
22
|
-
})
|
|
23
|
-
})
|
package/src/index.js
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
export { Providers } from './constants'
|
|
2
|
-
export { CoreBot } from './core-bot'
|
|
3
|
-
export * from './debug'
|
|
4
|
-
export * from './handoff'
|
|
5
|
-
export { HubtypeService } from './hubtype-service'
|
|
6
|
-
export { getString } from './i18n'
|
|
7
|
-
export { Router } from './router'
|
|
8
|
-
export * from './utils'
|
|
9
|
-
|
|
10
|
-
export const PROVIDER = Object.freeze({
|
|
11
|
-
DEV: 'dev',
|
|
12
|
-
FACEBOOK: 'facebook',
|
|
13
|
-
GENERIC: 'generic',
|
|
14
|
-
INTERCOM: 'intercom',
|
|
15
|
-
SMOOCH: 'smooch',
|
|
16
|
-
TELEGRAM: 'telegram',
|
|
17
|
-
TWITTER: 'twitter',
|
|
18
|
-
WEBCHAT: 'webchat',
|
|
19
|
-
WECHAT: 'wechat',
|
|
20
|
-
WHATSAPP: 'whatsapp',
|
|
21
|
-
})
|
|
22
|
-
|
|
23
|
-
export const INPUT = Object.freeze({
|
|
24
|
-
TEXT: 'text',
|
|
25
|
-
POSTBACK: 'postback',
|
|
26
|
-
AUDIO: 'audio',
|
|
27
|
-
IMAGE: 'image',
|
|
28
|
-
VIDEO: 'video',
|
|
29
|
-
DOCUMENT: 'document',
|
|
30
|
-
LOCATION: 'location',
|
|
31
|
-
CONTACT: 'contact',
|
|
32
|
-
BUTTON_MESSAGE: 'buttonmessage',
|
|
33
|
-
CAROUSEL: 'carousel',
|
|
34
|
-
CUSTOM: 'custom',
|
|
35
|
-
WEBCHAT_SETTINGS: 'webchatsettings',
|
|
36
|
-
WHATSAPP_TEMPLATE: 'whatsapptemplate',
|
|
37
|
-
})
|
|
38
|
-
|
|
39
|
-
export const CASE_STATUS = Object.freeze({
|
|
40
|
-
WAITING: 'status_waiting',
|
|
41
|
-
ATTENDING: 'status_attending',
|
|
42
|
-
IDLE: 'status_idle',
|
|
43
|
-
RESOLVED: 'status_resolved',
|
|
44
|
-
})
|
|
45
|
-
|
|
46
|
-
export const CASE_RESOLUTION = Object.freeze({
|
|
47
|
-
OK: 'result_ok',
|
|
48
|
-
NOK: 'result_nok',
|
|
49
|
-
NOT_SOLVED: 'result_not_solved',
|
|
50
|
-
BANNED: 'result_banned',
|
|
51
|
-
})
|