@botonic/core 0.25.0-alpha.1 → 0.25.0-alpha.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/core-bot.js +76 -99
- package/lib/cjs/core-bot.js.map +1 -1
- package/lib/cjs/data-provider/dynamodb-data-provider.js +69 -52
- package/lib/cjs/data-provider/dynamodb-data-provider.js.map +1 -1
- package/lib/cjs/data-provider/dynamodb-utils.js +2 -15
- package/lib/cjs/data-provider/dynamodb-utils.js.map +1 -1
- package/lib/cjs/data-provider/local-data-provider.js +7 -8
- package/lib/cjs/data-provider/local-data-provider.js.map +1 -1
- package/lib/cjs/debug/inspector.js +0 -3
- package/lib/cjs/debug/inspector.js.map +1 -1
- package/lib/cjs/handoff.js +124 -120
- package/lib/cjs/handoff.js.map +1 -1
- package/lib/cjs/hubtype-service.js +37 -47
- package/lib/cjs/hubtype-service.js.map +1 -1
- package/lib/cjs/output-parser/botonic-output-parser.js +7 -8
- package/lib/cjs/output-parser/botonic-output-parser.js.map +1 -1
- package/lib/cjs/output-parser/parsers.js +17 -60
- package/lib/cjs/output-parser/parsers.js.map +1 -1
- package/lib/cjs/plugins.js +23 -20
- package/lib/cjs/plugins.js.map +1 -1
- package/lib/cjs/routing/router-utils.js +15 -13
- package/lib/cjs/routing/router-utils.js.map +1 -1
- package/lib/cjs/routing/router.js +16 -22
- package/lib/cjs/routing/router.js.map +1 -1
- package/lib/cjs/utils.js +3 -2
- package/lib/cjs/utils.js.map +1 -1
- package/lib/esm/constants.js +4 -7
- package/lib/esm/constants.js.map +1 -1
- package/lib/esm/core-bot.js +88 -115
- package/lib/esm/core-bot.js.map +1 -1
- package/lib/esm/data-provider/dynamodb-data-provider.js +76 -63
- package/lib/esm/data-provider/dynamodb-data-provider.js.map +1 -1
- package/lib/esm/data-provider/dynamodb-utils.js +40 -60
- package/lib/esm/data-provider/dynamodb-utils.js.map +1 -1
- package/lib/esm/data-provider/factory.js +10 -14
- package/lib/esm/data-provider/factory.js.map +1 -1
- package/lib/esm/data-provider/index.js +4 -20
- package/lib/esm/data-provider/index.js.map +1 -1
- package/lib/esm/data-provider/local-data-provider.js +11 -16
- package/lib/esm/data-provider/local-data-provider.js.map +1 -1
- package/lib/esm/debug/index.js +1 -17
- package/lib/esm/debug/index.js.map +1 -1
- package/lib/esm/debug/inspector.js +4 -14
- package/lib/esm/debug/inspector.js.map +1 -1
- package/lib/esm/handoff.js +131 -141
- package/lib/esm/handoff.js.map +1 -1
- package/lib/esm/hubtype-service.js +43 -59
- package/lib/esm/hubtype-service.js.map +1 -1
- package/lib/esm/i18n.js +1 -5
- package/lib/esm/i18n.js.map +1 -1
- package/lib/esm/index.js +11 -27
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/models/events/base-event.js +2 -5
- package/lib/esm/models/events/base-event.js.map +1 -1
- package/lib/esm/models/events/botonic-event.js +1 -2
- package/lib/esm/models/events/connections/connection-event.js +2 -5
- package/lib/esm/models/events/connections/connection-event.js.map +1 -1
- package/lib/esm/models/events/connections/index.js +1 -17
- package/lib/esm/models/events/connections/index.js.map +1 -1
- package/lib/esm/models/events/index.js +4 -20
- package/lib/esm/models/events/index.js.map +1 -1
- package/lib/esm/models/events/message/buttons.js +1 -2
- package/lib/esm/models/events/message/carousel.js +1 -2
- package/lib/esm/models/events/message/contact.js +1 -2
- package/lib/esm/models/events/message/custom.js +1 -2
- package/lib/esm/models/events/message/form.js +1 -2
- package/lib/esm/models/events/message/index.js +11 -27
- package/lib/esm/models/events/message/index.js.map +1 -1
- package/lib/esm/models/events/message/location.js +1 -2
- package/lib/esm/models/events/message/media.js +6 -9
- package/lib/esm/models/events/message/media.js.map +1 -1
- package/lib/esm/models/events/message/message-event.js +6 -9
- package/lib/esm/models/events/message/message-event.js.map +1 -1
- package/lib/esm/models/events/message/missed.js +1 -2
- package/lib/esm/models/events/message/postback.js +1 -2
- package/lib/esm/models/events/message/replies.js +1 -2
- package/lib/esm/models/events/message/text.js +1 -2
- package/lib/esm/models/index.js +3 -19
- package/lib/esm/models/index.js.map +1 -1
- package/lib/esm/models/legacy-types.js +9 -12
- package/lib/esm/models/legacy-types.js.map +1 -1
- package/lib/esm/models/user.js +1 -2
- package/lib/esm/output-parser/botonic-output-parser.js +14 -19
- package/lib/esm/output-parser/botonic-output-parser.js.map +1 -1
- package/lib/esm/output-parser/factory.js +22 -26
- package/lib/esm/output-parser/factory.js.map +1 -1
- package/lib/esm/output-parser/index.js +3 -19
- package/lib/esm/output-parser/index.js.map +1 -1
- package/lib/esm/output-parser/parsers.js +41 -104
- package/lib/esm/output-parser/parsers.js.map +1 -1
- package/lib/esm/plugins.js +24 -26
- package/lib/esm/plugins.js.map +1 -1
- package/lib/esm/pusher-utils.js +3 -7
- package/lib/esm/pusher-utils.js.map +1 -1
- package/lib/esm/routing/index.js +2 -18
- package/lib/esm/routing/index.js.map +1 -1
- package/lib/esm/routing/router-utils.js +28 -36
- package/lib/esm/routing/router-utils.js.map +1 -1
- package/lib/esm/routing/router.js +37 -47
- package/lib/esm/routing/router.js.map +1 -1
- package/lib/esm/utils.js +12 -22
- package/lib/esm/utils.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,23 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const constants_1 = require("../constants");
|
|
5
|
-
class NoMatchingRouteError extends Error {
|
|
6
|
-
input;
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { EMPTY_ACTION_PATH, NOT_FOUND_PATH, PATH_PAYLOAD_IDENTIFIER, PATH_PAYLOAD_REGEXP, } from '../constants';
|
|
3
|
+
export class NoMatchingRouteError extends Error {
|
|
7
4
|
constructor(input) {
|
|
8
|
-
super(`No route found for input '${JSON.stringify(input)}' and no ${
|
|
5
|
+
super(`No route found for input '${JSON.stringify(input)}' and no ${NOT_FOUND_PATH} route defined`);
|
|
9
6
|
this.input = input;
|
|
10
7
|
}
|
|
11
8
|
}
|
|
12
|
-
|
|
13
|
-
function isPathPayload(payload) {
|
|
9
|
+
export function isPathPayload(payload) {
|
|
14
10
|
if (!payload)
|
|
15
11
|
return false;
|
|
16
|
-
const isPathPayload =
|
|
12
|
+
const isPathPayload = PATH_PAYLOAD_REGEXP.exec(payload);
|
|
17
13
|
return Boolean(isPathPayload);
|
|
18
14
|
}
|
|
19
|
-
|
|
20
|
-
function getPathParamsFromPathPayload(payload) {
|
|
15
|
+
export function getPathParamsFromPathPayload(payload) {
|
|
21
16
|
const defaultPathParams = {
|
|
22
17
|
path: null,
|
|
23
18
|
params: {},
|
|
@@ -27,20 +22,19 @@ function getPathParamsFromPathPayload(payload) {
|
|
|
27
22
|
if (!isPathPayload(payload))
|
|
28
23
|
return defaultPathParams;
|
|
29
24
|
try {
|
|
30
|
-
const pathWithParams = payload.split(
|
|
25
|
+
const pathWithParams = payload.split(PATH_PAYLOAD_IDENTIFIER)[1];
|
|
31
26
|
if (!pathWithParams) {
|
|
32
|
-
throw `${
|
|
27
|
+
throw `${PATH_PAYLOAD_IDENTIFIER} is empty`;
|
|
33
28
|
}
|
|
34
29
|
const [path, params] = pathWithParams.split('?');
|
|
35
|
-
return { path: path
|
|
30
|
+
return { path: path !== null && path !== void 0 ? path : null, params: pathParamsToParams(params) };
|
|
36
31
|
}
|
|
37
32
|
catch (e) {
|
|
38
33
|
console.error('Error getting path and params from input.payload:', e);
|
|
39
34
|
return defaultPathParams;
|
|
40
35
|
}
|
|
41
36
|
}
|
|
42
|
-
|
|
43
|
-
function pathParamsToParams(pathParams) {
|
|
37
|
+
export function pathParamsToParams(pathParams) {
|
|
44
38
|
if (!pathParams)
|
|
45
39
|
return {};
|
|
46
40
|
try {
|
|
@@ -55,36 +49,34 @@ function pathParamsToParams(pathParams) {
|
|
|
55
49
|
return {};
|
|
56
50
|
}
|
|
57
51
|
}
|
|
58
|
-
|
|
59
|
-
function getEmptyAction(childRoutes) {
|
|
52
|
+
export function getEmptyAction(childRoutes) {
|
|
60
53
|
if (!childRoutes)
|
|
61
54
|
return null;
|
|
62
|
-
const emptyActionRoute = childRoutes.find(r => r.path ===
|
|
55
|
+
const emptyActionRoute = childRoutes.find(r => r.path === EMPTY_ACTION_PATH);
|
|
63
56
|
if (!emptyActionRoute)
|
|
64
57
|
return null;
|
|
65
58
|
return emptyActionRoute.action;
|
|
66
59
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
const notFoundActionRoute = routes.find(r => r.path === constants_1.NOT_FOUND_PATH);
|
|
60
|
+
export function getNotFoundAction(input, routes) {
|
|
61
|
+
const notFoundActionRoute = routes.find(r => r.path === NOT_FOUND_PATH);
|
|
70
62
|
if (!notFoundActionRoute)
|
|
71
63
|
throw new NoMatchingRouteError(input);
|
|
72
64
|
return notFoundActionRoute.action;
|
|
73
65
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
for (const [key, route] of Object.entries(routes)) {
|
|
80
|
-
if (route.childRoutes && route.childRoutes instanceof Function) {
|
|
81
|
-
routes[key].childRoutes = await getComputedRoutes(await route.childRoutes(request), request);
|
|
66
|
+
export function getComputedRoutes(routes, request) {
|
|
67
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
if (routes instanceof Function) {
|
|
69
|
+
return yield getComputedRoutes(yield routes(request), request);
|
|
82
70
|
}
|
|
83
|
-
|
|
84
|
-
|
|
71
|
+
for (const [key, route] of Object.entries(routes)) {
|
|
72
|
+
if (route.childRoutes && route.childRoutes instanceof Function) {
|
|
73
|
+
routes[key].childRoutes = yield getComputedRoutes(yield route.childRoutes(request), request);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
routes[key] = route;
|
|
77
|
+
}
|
|
85
78
|
}
|
|
86
|
-
|
|
87
|
-
|
|
79
|
+
return routes;
|
|
80
|
+
});
|
|
88
81
|
}
|
|
89
|
-
exports.getComputedRoutes = getComputedRoutes;
|
|
90
82
|
//# sourceMappingURL=router-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router-utils.js","sourceRoot":"","sources":["../../../src/routing/router-utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"router-utils.js","sourceRoot":"","sources":["../../../src/routing/router-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const utils_1 = require("../utils");
|
|
7
|
-
const router_utils_1 = require("./router-utils");
|
|
8
|
-
class Router {
|
|
9
|
-
routes;
|
|
10
|
-
routeInspector;
|
|
1
|
+
import { NOT_FOUND_PATH } from '../constants';
|
|
2
|
+
import { RouteInspector } from '../debug/inspector';
|
|
3
|
+
import { cloneObject } from '../utils';
|
|
4
|
+
import { getEmptyAction, getNotFoundAction, getPathParamsFromPathPayload, isPathPayload, } from './router-utils';
|
|
5
|
+
export class Router {
|
|
11
6
|
constructor(routes, routeInspector = undefined) {
|
|
12
7
|
this.routes = routes;
|
|
13
|
-
this.routeInspector = routeInspector || new
|
|
8
|
+
this.routeInspector = routeInspector || new RouteInspector();
|
|
14
9
|
}
|
|
15
10
|
/**
|
|
16
11
|
* Processes an input and return a representation of the new bot state.
|
|
@@ -24,11 +19,12 @@ class Router {
|
|
|
24
19
|
*/
|
|
25
20
|
// eslint-disable-next-line complexity
|
|
26
21
|
processInput(input, session, lastRoutePath = null) {
|
|
27
|
-
|
|
22
|
+
var _a, _b, _c, _d, _e;
|
|
23
|
+
session.__retries = (_a = session === null || session === void 0 ? void 0 : session.__retries) !== null && _a !== void 0 ? _a : 0;
|
|
28
24
|
// 1. Getting the current routing state.
|
|
29
25
|
const { currentRoute, matchedRoute, params, isFlowBroken } = this.getRoutingState(input, session, lastRoutePath);
|
|
30
|
-
const currentRoutePath = currentRoute
|
|
31
|
-
const matchedRoutePath = matchedRoute
|
|
26
|
+
const currentRoutePath = (_b = currentRoute === null || currentRoute === void 0 ? void 0 : currentRoute.path) !== null && _b !== void 0 ? _b : null;
|
|
27
|
+
const matchedRoutePath = (_c = matchedRoute === null || matchedRoute === void 0 ? void 0 : matchedRoute.path) !== null && _c !== void 0 ? _c : null;
|
|
32
28
|
// 2. Given a routing state, resolve the different possible scenarios and return the new bot state.
|
|
33
29
|
/**
|
|
34
30
|
* Redirect Scenario:
|
|
@@ -42,7 +38,7 @@ class Router {
|
|
|
42
38
|
if (redirectionRoute) {
|
|
43
39
|
return {
|
|
44
40
|
action: redirectionRoute.action,
|
|
45
|
-
emptyAction:
|
|
41
|
+
emptyAction: getEmptyAction(redirectionRoute.childRoutes),
|
|
46
42
|
fallbackAction: null,
|
|
47
43
|
lastRoutePath: matchedRoute.redirect,
|
|
48
44
|
params,
|
|
@@ -51,7 +47,7 @@ class Router {
|
|
|
51
47
|
return {
|
|
52
48
|
action: null,
|
|
53
49
|
emptyAction: null,
|
|
54
|
-
fallbackAction:
|
|
50
|
+
fallbackAction: getNotFoundAction(input, this.routes),
|
|
55
51
|
lastRoutePath: null,
|
|
56
52
|
params,
|
|
57
53
|
};
|
|
@@ -64,7 +60,7 @@ class Router {
|
|
|
64
60
|
session.__retries = 0;
|
|
65
61
|
return {
|
|
66
62
|
action: matchedRoute.action,
|
|
67
|
-
emptyAction:
|
|
63
|
+
emptyAction: getEmptyAction(matchedRoute.childRoutes),
|
|
68
64
|
fallbackAction: null,
|
|
69
65
|
lastRoutePath: matchedRoutePath,
|
|
70
66
|
params,
|
|
@@ -80,19 +76,19 @@ class Router {
|
|
|
80
76
|
currentRoute.retry &&
|
|
81
77
|
session.__retries < currentRoute.retry) {
|
|
82
78
|
session.__retries = session.__retries !== 0 ? session.__retries + 1 : 1;
|
|
83
|
-
if (matchedRoute && matchedRoutePath !==
|
|
79
|
+
if (matchedRoute && matchedRoutePath !== NOT_FOUND_PATH) {
|
|
84
80
|
return {
|
|
85
81
|
action: currentRoute.action,
|
|
86
|
-
emptyAction:
|
|
82
|
+
emptyAction: getEmptyAction(matchedRoute.childRoutes),
|
|
87
83
|
fallbackAction: matchedRoute.action,
|
|
88
84
|
lastRoutePath: currentRoutePath,
|
|
89
85
|
params,
|
|
90
86
|
};
|
|
91
87
|
}
|
|
92
88
|
return {
|
|
93
|
-
action: currentRoute.action
|
|
94
|
-
emptyAction:
|
|
95
|
-
fallbackAction:
|
|
89
|
+
action: (_d = currentRoute.action) !== null && _d !== void 0 ? _d : null,
|
|
90
|
+
emptyAction: getEmptyAction(currentRoute.childRoutes),
|
|
91
|
+
fallbackAction: getNotFoundAction(input, this.routes),
|
|
96
92
|
lastRoutePath: currentRoutePath,
|
|
97
93
|
params,
|
|
98
94
|
};
|
|
@@ -106,10 +102,10 @@ class Router {
|
|
|
106
102
|
* Matching Route Scenario:
|
|
107
103
|
* We have matched a route, so we return the new bot state.
|
|
108
104
|
*/
|
|
109
|
-
if (matchedRoute && matchedRoutePath !==
|
|
105
|
+
if (matchedRoute && matchedRoutePath !== NOT_FOUND_PATH) {
|
|
110
106
|
return {
|
|
111
|
-
action: matchedRoute.action
|
|
112
|
-
emptyAction:
|
|
107
|
+
action: (_e = matchedRoute.action) !== null && _e !== void 0 ? _e : null,
|
|
108
|
+
emptyAction: getEmptyAction(matchedRoute.childRoutes),
|
|
113
109
|
fallbackAction: null,
|
|
114
110
|
lastRoutePath: matchedRoutePath,
|
|
115
111
|
params,
|
|
@@ -122,7 +118,7 @@ class Router {
|
|
|
122
118
|
return {
|
|
123
119
|
action: null,
|
|
124
120
|
emptyAction: null,
|
|
125
|
-
fallbackAction:
|
|
121
|
+
fallbackAction: getNotFoundAction(input, this.routes),
|
|
126
122
|
params,
|
|
127
123
|
lastRoutePath: currentRoutePath,
|
|
128
124
|
};
|
|
@@ -140,14 +136,14 @@ class Router {
|
|
|
140
136
|
try {
|
|
141
137
|
if (match !== null && typeof match !== 'boolean' && match.groups) {
|
|
142
138
|
// Strip '[Object: null prototype]' from groups result: https://stackoverflow.com/a/62945609/6237608
|
|
143
|
-
params = {
|
|
139
|
+
params = Object.assign({}, match.groups);
|
|
144
140
|
}
|
|
145
141
|
}
|
|
146
142
|
catch (e) { }
|
|
147
143
|
return Boolean(match);
|
|
148
144
|
}));
|
|
149
145
|
if (route)
|
|
150
|
-
return { route:
|
|
146
|
+
return { route: cloneObject(route), params };
|
|
151
147
|
return null;
|
|
152
148
|
}
|
|
153
149
|
/**
|
|
@@ -168,10 +164,10 @@ class Router {
|
|
|
168
164
|
const computedRoute = this.getRouteByPath(childPath.join('/'), route.childRoutes);
|
|
169
165
|
// IMPORTANT: Returning a new object to avoid modifying dev routes and introduce side effects
|
|
170
166
|
if (computedRoute)
|
|
171
|
-
return
|
|
167
|
+
return cloneObject(computedRoute);
|
|
172
168
|
}
|
|
173
169
|
else if (childPath.length === 0) {
|
|
174
|
-
return
|
|
170
|
+
return cloneObject(route); // last action and found route
|
|
175
171
|
}
|
|
176
172
|
}
|
|
177
173
|
}
|
|
@@ -229,7 +225,7 @@ class Router {
|
|
|
229
225
|
const currentRoute = this.getRouteByPath(lastRoutePath);
|
|
230
226
|
if (currentRoute && lastRoutePath)
|
|
231
227
|
currentRoute.path = lastRoutePath;
|
|
232
|
-
if (typeof input.payload === 'string' &&
|
|
228
|
+
if (typeof input.payload === 'string' && isPathPayload(input.payload)) {
|
|
233
229
|
return this.getRoutingStateFromPathPayload(currentRoute, input.payload);
|
|
234
230
|
}
|
|
235
231
|
return this.getRoutingStateFromInput(currentRoute, input, session);
|
|
@@ -238,18 +234,16 @@ class Router {
|
|
|
238
234
|
* Given a non path payload input, try to run it against the routes, update matching routes information in consequence and dictamine if the flow has been broken.
|
|
239
235
|
* */
|
|
240
236
|
getRoutingStateFromInput(currentRoute, input, session) {
|
|
237
|
+
var _a, _b, _c;
|
|
241
238
|
// get route depending of current ChildRoutes
|
|
242
239
|
if (currentRoute && currentRoute.childRoutes) {
|
|
243
240
|
const routeParams = this.getRoute(input, currentRoute.childRoutes, session, currentRoute.path);
|
|
244
241
|
if (routeParams) {
|
|
245
242
|
return {
|
|
246
243
|
currentRoute,
|
|
247
|
-
matchedRoute: {
|
|
248
|
-
...routeParams.route,
|
|
249
|
-
path: routeParams.route && currentRoute.path
|
|
244
|
+
matchedRoute: Object.assign(Object.assign({}, routeParams.route), { path: routeParams.route && currentRoute.path
|
|
250
245
|
? `${currentRoute.path}/${routeParams.route.path}`
|
|
251
|
-
: currentRoute.path,
|
|
252
|
-
},
|
|
246
|
+
: currentRoute.path }),
|
|
253
247
|
params: routeParams.params,
|
|
254
248
|
isFlowBroken: false,
|
|
255
249
|
};
|
|
@@ -259,15 +253,12 @@ class Router {
|
|
|
259
253
|
* we couldn't find a route in the state of the currentRoute childRoutes,
|
|
260
254
|
* so let's find in the general routes
|
|
261
255
|
*/
|
|
262
|
-
const routeParams = this.getRoute(input, this.routes, session, currentRoute
|
|
263
|
-
const isFlowBroken = Boolean(currentRoute
|
|
264
|
-
if (routeParams
|
|
256
|
+
const routeParams = this.getRoute(input, this.routes, session, (_a = currentRoute === null || currentRoute === void 0 ? void 0 : currentRoute.path) !== null && _a !== void 0 ? _a : null);
|
|
257
|
+
const isFlowBroken = Boolean(currentRoute === null || currentRoute === void 0 ? void 0 : currentRoute.path);
|
|
258
|
+
if (routeParams === null || routeParams === void 0 ? void 0 : routeParams.route) {
|
|
265
259
|
return {
|
|
266
260
|
currentRoute,
|
|
267
|
-
matchedRoute: {
|
|
268
|
-
...routeParams.route,
|
|
269
|
-
path: routeParams.route?.path ?? null,
|
|
270
|
-
},
|
|
261
|
+
matchedRoute: Object.assign(Object.assign({}, routeParams.route), { path: (_c = (_b = routeParams.route) === null || _b === void 0 ? void 0 : _b.path) !== null && _c !== void 0 ? _c : null }),
|
|
271
262
|
params: routeParams.params,
|
|
272
263
|
isFlowBroken,
|
|
273
264
|
};
|
|
@@ -283,7 +274,7 @@ class Router {
|
|
|
283
274
|
* Given a path payload input, try to run the path against the routes, update matching routes information in consequence and dictamine if the flow has been broken.
|
|
284
275
|
* */
|
|
285
276
|
getRoutingStateFromPathPayload(currentRoute, pathPayload) {
|
|
286
|
-
const { path, params } =
|
|
277
|
+
const { path, params } = getPathParamsFromPathPayload(pathPayload);
|
|
287
278
|
/**
|
|
288
279
|
* shorthand function to update the matching information given a path
|
|
289
280
|
*/
|
|
@@ -299,7 +290,7 @@ class Router {
|
|
|
299
290
|
}
|
|
300
291
|
return {
|
|
301
292
|
currentRoute,
|
|
302
|
-
matchedRoute: {
|
|
293
|
+
matchedRoute: Object.assign(Object.assign({}, matchedRoute), { path: seekPath }),
|
|
303
294
|
params,
|
|
304
295
|
isFlowBroken: false,
|
|
305
296
|
};
|
|
@@ -308,7 +299,7 @@ class Router {
|
|
|
308
299
|
* Given a valid path: 'Flow1/Subflow1' we are in one of the two scenarios below.
|
|
309
300
|
*/
|
|
310
301
|
// 1. Received __PATH_PAYLOAD__Subflow2, so we need to first try to concatenate it with Flow1 (lastRoutePath)
|
|
311
|
-
if (currentRoute
|
|
302
|
+
if (currentRoute === null || currentRoute === void 0 ? void 0 : currentRoute.path) {
|
|
312
303
|
const routingState = getRoutingStateFromPath(`${currentRoute.path}/${path}`);
|
|
313
304
|
if (routingState.matchedRoute)
|
|
314
305
|
return routingState;
|
|
@@ -317,5 +308,4 @@ class Router {
|
|
|
317
308
|
return getRoutingStateFromPath(path);
|
|
318
309
|
}
|
|
319
310
|
}
|
|
320
|
-
exports.Router = Router;
|
|
321
311
|
//# sourceMappingURL=router.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/routing/router.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/routing/router.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/utils.js
CHANGED
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.dirname = exports.join = exports.params2queryString = exports.cloneObject = exports.isFunction = exports.isMobile = exports.isBrowser = exports.isNode = void 0;
|
|
4
|
-
const isNode = () => {
|
|
1
|
+
export const isNode = () => {
|
|
5
2
|
// @ts-ignore
|
|
6
3
|
return typeof IS_NODE !== 'undefined'
|
|
7
4
|
? // @ts-ignore
|
|
@@ -10,19 +7,18 @@ const isNode = () => {
|
|
|
10
7
|
process.versions !== null &&
|
|
11
8
|
process.versions.node !== null;
|
|
12
9
|
};
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
export const isBrowser = () => {
|
|
11
|
+
var _a, _b;
|
|
15
12
|
// @ts-ignore
|
|
16
13
|
return typeof IS_BROWSER !== 'undefined'
|
|
17
14
|
? // @ts-ignore
|
|
18
15
|
IS_BROWSER
|
|
19
16
|
: typeof window !== 'undefined' &&
|
|
20
17
|
typeof window.document !== 'undefined' &&
|
|
21
|
-
!window.process
|
|
18
|
+
!((_b = (_a = window.process) === null || _a === void 0 ? void 0 : _a.versions) === null || _b === void 0 ? void 0 : _b.node);
|
|
22
19
|
};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
if ((0, exports.isBrowser)()) {
|
|
20
|
+
export const isMobile = (mobileBreakpoint = 460) => {
|
|
21
|
+
if (isBrowser()) {
|
|
26
22
|
const w = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);
|
|
27
23
|
if (w < mobileBreakpoint) {
|
|
28
24
|
return true;
|
|
@@ -30,25 +26,21 @@ const isMobile = (mobileBreakpoint = 460) => {
|
|
|
30
26
|
}
|
|
31
27
|
return false;
|
|
32
28
|
};
|
|
33
|
-
|
|
34
|
-
function isFunction(o) {
|
|
29
|
+
export function isFunction(o) {
|
|
35
30
|
return typeof o === 'function';
|
|
36
31
|
}
|
|
37
|
-
|
|
38
|
-
function cloneObject(object) {
|
|
32
|
+
export function cloneObject(object) {
|
|
39
33
|
if (!object)
|
|
40
34
|
return {};
|
|
41
|
-
return {
|
|
35
|
+
return Object.assign({}, object);
|
|
42
36
|
}
|
|
43
|
-
|
|
44
|
-
const params2queryString = (params) => Object.entries(params)
|
|
37
|
+
export const params2queryString = (params) => Object.entries(params)
|
|
45
38
|
.map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(v)}`)
|
|
46
39
|
.join('&');
|
|
47
|
-
exports.params2queryString = params2queryString;
|
|
48
40
|
// Joins path segments. Preserves initial "/" and resolves ".." and "."
|
|
49
41
|
// Does not support using ".." to go above/outside the root.
|
|
50
42
|
// This means that join("foo", "../../bar") will not resolve to "../bar"
|
|
51
|
-
const join = (...segments) => {
|
|
43
|
+
export const join = (...segments) => {
|
|
52
44
|
// Split the inputs into a list of path commands.
|
|
53
45
|
let parts = [];
|
|
54
46
|
for (let i = 0, l = segments.length; i < l; i++) {
|
|
@@ -76,9 +68,7 @@ const join = (...segments) => {
|
|
|
76
68
|
// Turn back into a single string path.
|
|
77
69
|
return newParts.join('/') || (newParts.length ? '/' : '.');
|
|
78
70
|
};
|
|
79
|
-
exports.join = join;
|
|
80
71
|
// A simple function to get the dirname of a path
|
|
81
72
|
// Trailing slashes are ignored. Leading slash is preserved.
|
|
82
|
-
const dirname = (path) =>
|
|
83
|
-
exports.dirname = dirname;
|
|
73
|
+
export const dirname = (path) => join(path, '..');
|
|
84
74
|
//# sourceMappingURL=utils.js.map
|
package/lib/esm/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@botonic/core",
|
|
3
|
-
"version": "0.25.0-alpha.
|
|
3
|
+
"version": "0.25.0-alpha.2",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Build Chatbots using React",
|
|
6
6
|
"main": "./lib/cjs/index.js",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"axios": "^1.6.7",
|
|
35
35
|
"decode": "^0.3.0",
|
|
36
36
|
"dynamodb-toolbox": "^0.3.4",
|
|
37
|
-
"fast-xml-parser": "
|
|
37
|
+
"fast-xml-parser": "3.19.0",
|
|
38
38
|
"html-entities": "^2.4.0",
|
|
39
39
|
"node-json-db": "^1.6.0",
|
|
40
40
|
"pako": "^2.1.0",
|