@botonic/plugin-flow-builder 0.21.0-alpha.3 → 0.21.0-alpha.5

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.
@@ -2,7 +2,6 @@ import { ActionRequest } from '@botonic/react';
2
2
  import React from 'react';
3
3
  import { FlowContent } from './content-fields/content-base';
4
4
  import { HtHandoffNode } from './hubtype-models';
5
- export declare const START = "08c7df06-0c7c-4f06-b8c1-4157582efeb2";
6
5
  declare type FlowBuilderActionProps = {
7
6
  content?: FlowContent[];
8
7
  handoffMsg?: HtHandoffNode;
package/lib/cjs/action.js CHANGED
@@ -1,28 +1,30 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.START = void 0;
4
3
  const tslib_1 = require("tslib");
5
4
  const react_1 = require("@botonic/react");
6
5
  const react_2 = tslib_1.__importDefault(require("react"));
7
6
  const handoff_1 = require("./handoff");
8
- // TODO: remove this from here and use the new "start" attribute in the flow
9
- exports.START = '08c7df06-0c7c-4f06-b8c1-4157582efeb2';
10
7
  class FlowBuilderAction extends react_2.default.Component {
11
8
  static async botonicInit(request) {
12
- const flowBuilderPlugin = request.plugins.hubtypeFlowBuilder;
13
- let payload = request.input.payload ? request.input.payload : exports.START;
9
+ console.log(request);
10
+ const flowBuilderPlugin = request.plugins
11
+ .flowBuilder;
12
+ const locale = flowBuilderPlugin.getLocale(request.session);
13
+ let payload = request.input.payload
14
+ ? request.input.payload
15
+ : await flowBuilderPlugin.getStartId();
14
16
  if (!request.input.payload) {
15
- const intentPayload = await flowBuilderPlugin.getPayloadByInput(request.input, 'es-ES');
17
+ const intentPayload = await flowBuilderPlugin.getPayloadByInput(request.input, locale);
16
18
  if (intentPayload) {
17
19
  payload = intentPayload;
18
20
  }
19
- const keywordPayload = await flowBuilderPlugin.getPayloadByKeyword(request.input, 'es-ES');
21
+ const keywordPayload = await flowBuilderPlugin.getPayloadByKeyword(request.input, locale);
20
22
  if (keywordPayload) {
21
23
  payload = keywordPayload;
22
24
  }
23
25
  }
24
26
  // We use only Spanish because they are the backend examples
25
- const content = await flowBuilderPlugin.getContents(payload, 'es-ES');
27
+ const content = await flowBuilderPlugin.getContents(payload, locale);
26
28
  if (content.length == 0) {
27
29
  const handoffMsg = await handoff_1.doHandoff(request);
28
30
  return { handoffMsg };
@@ -1 +1 @@
1
- {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/action.tsx"],"names":[],"mappings":";;;;AAAA,0CAAoE;AACpE,0DAAyB;AAGzB,uCAAqC;AAGrC,4EAA4E;AAC/D,QAAA,KAAK,GAAG,sCAAsC,CAAA;AAO3D,MAAqB,iBAAkB,SAAQ,eAAK,CAAC,SAAiC;IAGpF,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAsB;QAC7C,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,kBAAyB,CAAA;QAEnE,IAAI,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,aAAK,CAAA;QACnE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE;YAC1B,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,CAC7D,OAAO,CAAC,KAAK,EACb,OAAO,CACR,CAAA;YACD,IAAI,aAAa,EAAE;gBACjB,OAAO,GAAG,aAAa,CAAA;aACxB;YACD,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,mBAAmB,CAChE,OAAO,CAAC,KAAK,EACb,OAAO,CACR,CAAA;YACD,IAAI,cAAc,EAAE;gBAClB,OAAO,GAAG,cAAc,CAAA;aACzB;SACF;QACD,4DAA4D;QAC5D,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAErE,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;YACvB,MAAM,UAAU,GAAG,MAAM,mBAAS,CAAC,OAAO,CAAC,CAAA;YAC3C,OAAO,EAAE,UAAU,EAAE,CAAA;SACtB;QACD,OAAO,EAAE,OAAO,EAAE,CAAA;IACpB,CAAC;IAED,MAAM;QACJ,aAAa;QACb,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QACpD,IAAI,UAAU,EAAE;YACd,aAAa;YACb,OAAO,8BAAC,YAAI,QAAE,UAAU,CAAQ,CAAA;SACjC;aAAM;YACL,OAAO,QAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;SACnE;IACH,CAAC;;AA1CH,oCA2CC;AA1CQ,6BAAW,GAAG,sBAAc,CAAA"}
1
+ {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/action.tsx"],"names":[],"mappings":";;;AAAA,0CAAoE;AACpE,0DAAyB;AAGzB,uCAAqC;AASrC,MAAqB,iBAAkB,SAAQ,eAAK,CAAC,SAAiC;IAGpF,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAsB;QAC7C,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACpB,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO;aACtC,WAAuC,CAAA;QAE1C,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAE3D,IAAI,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO;YACjC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO;YACvB,CAAC,CAAC,MAAM,iBAAiB,CAAC,UAAU,EAAE,CAAA;QAExC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE;YAC1B,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,CAC7D,OAAO,CAAC,KAAK,EACb,MAAM,CACP,CAAA;YACD,IAAI,aAAa,EAAE;gBACjB,OAAO,GAAG,aAAa,CAAA;aACxB;YACD,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,mBAAmB,CAChE,OAAO,CAAC,KAAK,EACb,MAAM,CACP,CAAA;YACD,IAAI,cAAc,EAAE;gBAClB,OAAO,GAAG,cAAc,CAAA;aACzB;SACF;QACD,4DAA4D;QAC5D,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAEpE,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;YACvB,MAAM,UAAU,GAAG,MAAM,mBAAS,CAAC,OAAO,CAAC,CAAA;YAC3C,OAAO,EAAE,UAAU,EAAE,CAAA;SACtB;QACD,OAAO,EAAE,OAAO,EAAE,CAAA;IACpB,CAAC;IAED,MAAM;QACJ,aAAa;QACb,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QACpD,IAAI,UAAU,EAAE;YACd,aAAa;YACb,OAAO,8BAAC,YAAI,QAAE,UAAU,CAAQ,CAAA;SACjC;aAAM;YACL,OAAO,QAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;SACnE;IACH,CAAC;;AAjDH,oCAkDC;AAjDQ,6BAAW,GAAG,sBAAc,CAAA"}
@@ -1,3 +1,3 @@
1
- export declare function conditionalQueueStatus({ queueId }: {
2
- queueId: any;
1
+ export declare function conditionalQueueStatus({ queue_id }: {
2
+ queue_id: any;
3
3
  }): Promise<string>;
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.conditionalQueueStatus = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const axios_1 = tslib_1.__importDefault(require("axios"));
6
- async function conditionalQueueStatus({ queueId }) {
7
- const response = await axios_1.default.get(`https://api.hubtype.com/v1/queues/${queueId}/availability/`);
6
+ async function conditionalQueueStatus({ queue_id }) {
7
+ const response = await axios_1.default.get(`https://api.hubtype.com/v1/queues/${queue_id}/availability/`);
8
8
  const isAvailable = response.data.available;
9
9
  return isAvailable ? 'open' : 'closed';
10
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conditional-queue-status.js","sourceRoot":"","sources":["../../../src/functions/conditional-queue-status.ts"],"names":[],"mappings":";;;;AAAA,0DAAyB;AAElB,KAAK,UAAU,sBAAsB,CAAC,EAAE,OAAO,EAAE;IACtD,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAC9B,qCAAqC,OAAO,gBAAgB,CAC7D,CAAA;IACD,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAA;IAC3C,OAAO,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;AACxC,CAAC;AAND,wDAMC"}
1
+ {"version":3,"file":"conditional-queue-status.js","sourceRoot":"","sources":["../../../src/functions/conditional-queue-status.ts"],"names":[],"mappings":";;;;AAAA,0DAAyB;AAElB,KAAK,UAAU,sBAAsB,CAAC,EAAE,QAAQ,EAAE;IACvD,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAC9B,qCAAqC,QAAQ,gBAAgB,CAC9D,CAAA;IACD,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAA;IAC3C,OAAO,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;AACxC,CAAC;AAND,wDAMC"}
@@ -25,7 +25,7 @@ export declare enum MediaContentType {
25
25
  ASSET = "asset"
26
26
  }
27
27
  export declare enum StartFieldsType {
28
- STARTUP = "startUp"
28
+ START_UP = "start-up"
29
29
  }
30
30
  export declare enum InputContentType {
31
31
  INPUT = "user-input"
@@ -55,8 +55,16 @@ export interface HtNodeLink {
55
55
  id: string;
56
56
  type: NodeContentType;
57
57
  }
58
- export interface HtBaseNode {
58
+ export interface HtStartReference {
59
59
  id: string;
60
+ type: NodeContentType;
61
+ target: HtNodeLink;
62
+ }
63
+ export interface HtBase {
64
+ id: string;
65
+ type: NodeContentType | StartFieldsType;
66
+ }
67
+ export interface HtBaseNode extends HtBase {
60
68
  code: string;
61
69
  meta: {
62
70
  x: number;
@@ -35,7 +35,7 @@ var MediaContentType;
35
35
  })(MediaContentType = exports.MediaContentType || (exports.MediaContentType = {}));
36
36
  var StartFieldsType;
37
37
  (function (StartFieldsType) {
38
- StartFieldsType["STARTUP"] = "startUp";
38
+ StartFieldsType["START_UP"] = "start-up";
39
39
  })(StartFieldsType = exports.StartFieldsType || (exports.StartFieldsType = {}));
40
40
  var InputContentType;
41
41
  (function (InputContentType) {
@@ -1 +1 @@
1
- {"version":3,"file":"hubtype-models.js","sourceRoot":"","sources":["../../src/hubtype-models.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,0CAA2B,CAAA;AAC7B,CAAC,EAHW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAGtB;AAED,IAAY,kBAQX;AARD,WAAY,kBAAkB;IAC5B,2CAAqB,CAAA;IACrB,qCAAe,CAAA;IACf,mCAAa,CAAA;IACb,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;IACnB,2CAAqB,CAAA;IACrB,uCAAiB,CAAA;AACnB,CAAC,EARW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAQ7B;AAED,iCAAiC;AACjC,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,0CAAiB,CAAA;IACjB,4CAAmB,CAAA;IACnB,wCAAe,CAAA;IACf,oCAAW,CAAA;AACb,CAAC,EALW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAKhC;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;AACrB,CAAC,EAHW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAGzB;AAED,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,mCAAe,CAAA;AACjB,CAAC,EAFW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAE3B;AAED,IAAY,eAEX;AAFD,WAAY,eAAe;IACzB,sCAAmB,CAAA;AACrB,CAAC,EAFW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAE1B;AAED,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,wCAAoB,CAAA;AACtB,CAAC,EAFW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAE3B;AAED,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,kCAAqB,CAAA;AACvB,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AAEY,QAAA,eAAe,mCACvB,kBAAkB,GAClB,gBAAgB,EACpB"}
1
+ {"version":3,"file":"hubtype-models.js","sourceRoot":"","sources":["../../src/hubtype-models.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,0CAA2B,CAAA;AAC7B,CAAC,EAHW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAGtB;AAED,IAAY,kBAQX;AARD,WAAY,kBAAkB;IAC5B,2CAAqB,CAAA;IACrB,qCAAe,CAAA;IACf,mCAAa,CAAA;IACb,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;IACnB,2CAAqB,CAAA;IACrB,uCAAiB,CAAA;AACnB,CAAC,EARW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAQ7B;AAED,iCAAiC;AACjC,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,0CAAiB,CAAA;IACjB,4CAAmB,CAAA;IACnB,wCAAe,CAAA;IACf,oCAAW,CAAA;AACb,CAAC,EALW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAKhC;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;AACrB,CAAC,EAHW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAGzB;AAED,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,mCAAe,CAAA;AACjB,CAAC,EAFW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAE3B;AAED,IAAY,eAEX;AAFD,WAAY,eAAe;IACzB,wCAAqB,CAAA;AACvB,CAAC,EAFW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAE1B;AAED,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,wCAAoB,CAAA;AACtB,CAAC,EAFW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAE3B;AAED,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,kCAAqB,CAAA;AACvB,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AAEY,QAAA,eAAe,mCACvB,kBAAkB,GAClB,gBAAgB,EACpB"}
@@ -1,10 +1,11 @@
1
- import { Input, Plugin, PluginPostRequest, PluginPreRequest } from '@botonic/core';
1
+ import { Input, Plugin, PluginPostRequest, PluginPreRequest, Session } from '@botonic/core';
2
2
  import { FlowContent } from './content-fields/content-base';
3
3
  import { HtFlowBuilderData, HtFunctionNode, HtHandoffNode, HtIntentNode, HtKeywordNode, HtNodeComponent } from './hubtype-models';
4
4
  declare type BotonicPluginFlowBuilderOptions = {
5
5
  flowUrl: string;
6
6
  flow: any;
7
7
  customFunctions: Record<any, any>;
8
+ getLocale: (session: Session) => string;
8
9
  };
9
10
  export default class BotonicPluginFlowBuilder implements Plugin {
10
11
  readonly options: BotonicPluginFlowBuilderOptions;
@@ -12,6 +13,7 @@ export default class BotonicPluginFlowBuilder implements Plugin {
12
13
  private flow;
13
14
  private functions;
14
15
  private currentRequest;
16
+ getLocale: (session: Session) => string;
15
17
  constructor(options: BotonicPluginFlowBuilderOptions);
16
18
  readFlowContent(): Promise<HtFlowBuilderData>;
17
19
  pre(request: PluginPreRequest): Promise<void>;
@@ -19,6 +21,7 @@ export default class BotonicPluginFlowBuilder implements Plugin {
19
21
  getContent(id: string): Promise<HtNodeComponent>;
20
22
  getHandoffContent(): Promise<HtHandoffNode>;
21
23
  getFlowContent(hubtypeContent: HtNodeComponent, locale: string): FlowContent | undefined;
24
+ getStartId(): Promise<string>;
22
25
  getContents(id: string, locale: string, prevContents?: FlowContent[]): Promise<FlowContent[]>;
23
26
  getPayloadByInput(input: Input, locale: string): Promise<string | undefined>;
24
27
  hasIntent(node: HtIntentNode, intent: string, locale: string): boolean;
package/lib/cjs/index.js CHANGED
@@ -14,6 +14,7 @@ class BotonicPluginFlowBuilder {
14
14
  this.flow = options.flow || this.readFlowContent();
15
15
  const customFunctions = options.customFunctions || {};
16
16
  this.functions = Object.assign(Object.assign({}, functions_1.DEFAULT_FUNCTIONS), customFunctions);
17
+ this.getLocale = options.getLocale;
17
18
  }
18
19
  async readFlowContent() {
19
20
  const response = await axios_1.default.get(this.flowUrl);
@@ -52,6 +53,14 @@ class BotonicPluginFlowBuilder {
52
53
  return undefined;
53
54
  }
54
55
  }
56
+ async getStartId() {
57
+ const flow = await this.flow;
58
+ const startNode = flow.nodes.find((node) => (node === null || node === void 0 ? void 0 : node.type) === hubtype_models_1.StartFieldsType.START_UP);
59
+ if (!startNode) {
60
+ throw new Error('start-up id must be defined');
61
+ }
62
+ return startNode.target.id;
63
+ }
55
64
  async getContents(id, locale, prevContents) {
56
65
  const contents = prevContents || [];
57
66
  const hubtypeContent = await this.getContent(id);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@ import { ActionRequest } from '@botonic/react';
2
2
  import React from 'react';
3
3
  import { FlowContent } from './content-fields/content-base';
4
4
  import { HtHandoffNode } from './hubtype-models';
5
- export declare const START = "08c7df06-0c7c-4f06-b8c1-4157582efeb2";
6
5
  declare type FlowBuilderActionProps = {
7
6
  content?: FlowContent[];
8
7
  handoffMsg?: HtHandoffNode;
package/lib/esm/action.js CHANGED
@@ -1,24 +1,27 @@
1
1
  import { RequestContext, Text } from '@botonic/react';
2
2
  import React from 'react';
3
3
  import { doHandoff } from './handoff';
4
- // TODO: remove this from here and use the new "start" attribute in the flow
5
- export const START = '08c7df06-0c7c-4f06-b8c1-4157582efeb2';
6
4
  export default class FlowBuilderAction extends React.Component {
7
5
  static async botonicInit(request) {
8
- const flowBuilderPlugin = request.plugins.hubtypeFlowBuilder;
9
- let payload = request.input.payload ? request.input.payload : START;
6
+ console.log(request);
7
+ const flowBuilderPlugin = request.plugins
8
+ .flowBuilder;
9
+ const locale = flowBuilderPlugin.getLocale(request.session);
10
+ let payload = request.input.payload
11
+ ? request.input.payload
12
+ : await flowBuilderPlugin.getStartId();
10
13
  if (!request.input.payload) {
11
- const intentPayload = await flowBuilderPlugin.getPayloadByInput(request.input, 'es-ES');
14
+ const intentPayload = await flowBuilderPlugin.getPayloadByInput(request.input, locale);
12
15
  if (intentPayload) {
13
16
  payload = intentPayload;
14
17
  }
15
- const keywordPayload = await flowBuilderPlugin.getPayloadByKeyword(request.input, 'es-ES');
18
+ const keywordPayload = await flowBuilderPlugin.getPayloadByKeyword(request.input, locale);
16
19
  if (keywordPayload) {
17
20
  payload = keywordPayload;
18
21
  }
19
22
  }
20
23
  // We use only Spanish because they are the backend examples
21
- const content = await flowBuilderPlugin.getContents(payload, 'es-ES');
24
+ const content = await flowBuilderPlugin.getContents(payload, locale);
22
25
  if (content.length == 0) {
23
26
  const handoffMsg = await doHandoff(request);
24
27
  return { handoffMsg };
@@ -1 +1 @@
1
- {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/action.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACpE,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAGrC,4EAA4E;AAC5E,MAAM,CAAC,MAAM,KAAK,GAAG,sCAAsC,CAAA;AAO3D,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,KAAK,CAAC,SAAiC;IAGpF,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAsB;QAC7C,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,kBAAyB,CAAA;QAEnE,IAAI,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;QACnE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE;YAC1B,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,CAC7D,OAAO,CAAC,KAAK,EACb,OAAO,CACR,CAAA;YACD,IAAI,aAAa,EAAE;gBACjB,OAAO,GAAG,aAAa,CAAA;aACxB;YACD,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,mBAAmB,CAChE,OAAO,CAAC,KAAK,EACb,OAAO,CACR,CAAA;YACD,IAAI,cAAc,EAAE;gBAClB,OAAO,GAAG,cAAc,CAAA;aACzB;SACF;QACD,4DAA4D;QAC5D,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAErE,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;YACvB,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAA;YAC3C,OAAO,EAAE,UAAU,EAAE,CAAA;SACtB;QACD,OAAO,EAAE,OAAO,EAAE,CAAA;IACpB,CAAC;IAED,MAAM;QACJ,aAAa;QACb,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QACpD,IAAI,UAAU,EAAE;YACd,aAAa;YACb,OAAO,oBAAC,IAAI,QAAE,UAAU,CAAQ,CAAA;SACjC;aAAM;YACL,OAAO,QAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;SACnE;IACH,CAAC;;AAzCM,6BAAW,GAAG,cAAc,CAAA"}
1
+ {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/action.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACpE,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AASrC,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,KAAK,CAAC,SAAiC;IAGpF,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAsB;QAC7C,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACpB,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO;aACtC,WAAuC,CAAA;QAE1C,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAE3D,IAAI,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO;YACjC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO;YACvB,CAAC,CAAC,MAAM,iBAAiB,CAAC,UAAU,EAAE,CAAA;QAExC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE;YAC1B,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,CAC7D,OAAO,CAAC,KAAK,EACb,MAAM,CACP,CAAA;YACD,IAAI,aAAa,EAAE;gBACjB,OAAO,GAAG,aAAa,CAAA;aACxB;YACD,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,mBAAmB,CAChE,OAAO,CAAC,KAAK,EACb,MAAM,CACP,CAAA;YACD,IAAI,cAAc,EAAE;gBAClB,OAAO,GAAG,cAAc,CAAA;aACzB;SACF;QACD,4DAA4D;QAC5D,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAEpE,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;YACvB,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAA;YAC3C,OAAO,EAAE,UAAU,EAAE,CAAA;SACtB;QACD,OAAO,EAAE,OAAO,EAAE,CAAA;IACpB,CAAC;IAED,MAAM;QACJ,aAAa;QACb,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QACpD,IAAI,UAAU,EAAE;YACd,aAAa;YACb,OAAO,oBAAC,IAAI,QAAE,UAAU,CAAQ,CAAA;SACjC;aAAM;YACL,OAAO,QAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;SACnE;IACH,CAAC;;AAhDM,6BAAW,GAAG,cAAc,CAAA"}
@@ -1,3 +1,3 @@
1
- export declare function conditionalQueueStatus({ queueId }: {
2
- queueId: any;
1
+ export declare function conditionalQueueStatus({ queue_id }: {
2
+ queue_id: any;
3
3
  }): Promise<string>;
@@ -1,6 +1,6 @@
1
1
  import axios from 'axios';
2
- export async function conditionalQueueStatus({ queueId }) {
3
- const response = await axios.get(`https://api.hubtype.com/v1/queues/${queueId}/availability/`);
2
+ export async function conditionalQueueStatus({ queue_id }) {
3
+ const response = await axios.get(`https://api.hubtype.com/v1/queues/${queue_id}/availability/`);
4
4
  const isAvailable = response.data.available;
5
5
  return isAvailable ? 'open' : 'closed';
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conditional-queue-status.js","sourceRoot":"","sources":["../../../src/functions/conditional-queue-status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,EAAE,OAAO,EAAE;IACtD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAC9B,qCAAqC,OAAO,gBAAgB,CAC7D,CAAA;IACD,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAA;IAC3C,OAAO,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;AACxC,CAAC"}
1
+ {"version":3,"file":"conditional-queue-status.js","sourceRoot":"","sources":["../../../src/functions/conditional-queue-status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,EAAE,QAAQ,EAAE;IACvD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAC9B,qCAAqC,QAAQ,gBAAgB,CAC9D,CAAA;IACD,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAA;IAC3C,OAAO,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;AACxC,CAAC"}
@@ -25,7 +25,7 @@ export declare enum MediaContentType {
25
25
  ASSET = "asset"
26
26
  }
27
27
  export declare enum StartFieldsType {
28
- STARTUP = "startUp"
28
+ START_UP = "start-up"
29
29
  }
30
30
  export declare enum InputContentType {
31
31
  INPUT = "user-input"
@@ -55,8 +55,16 @@ export interface HtNodeLink {
55
55
  id: string;
56
56
  type: NodeContentType;
57
57
  }
58
- export interface HtBaseNode {
58
+ export interface HtStartReference {
59
59
  id: string;
60
+ type: NodeContentType;
61
+ target: HtNodeLink;
62
+ }
63
+ export interface HtBase {
64
+ id: string;
65
+ type: NodeContentType | StartFieldsType;
66
+ }
67
+ export interface HtBaseNode extends HtBase {
60
68
  code: string;
61
69
  meta: {
62
70
  x: number;
@@ -32,7 +32,7 @@ export var MediaContentType;
32
32
  })(MediaContentType || (MediaContentType = {}));
33
33
  export var StartFieldsType;
34
34
  (function (StartFieldsType) {
35
- StartFieldsType["STARTUP"] = "startUp";
35
+ StartFieldsType["START_UP"] = "start-up";
36
36
  })(StartFieldsType || (StartFieldsType = {}));
37
37
  export var InputContentType;
38
38
  (function (InputContentType) {
@@ -1 +1 @@
1
- {"version":3,"file":"hubtype-models.js","sourceRoot":"","sources":["../../src/hubtype-models.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,0CAA2B,CAAA;AAC7B,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;AAED,MAAM,CAAN,IAAY,kBAQX;AARD,WAAY,kBAAkB;IAC5B,2CAAqB,CAAA;IACrB,qCAAe,CAAA;IACf,mCAAa,CAAA;IACb,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;IACnB,2CAAqB,CAAA;IACrB,uCAAiB,CAAA;AACnB,CAAC,EARW,kBAAkB,KAAlB,kBAAkB,QAQ7B;AAED,iCAAiC;AACjC,MAAM,CAAN,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,0CAAiB,CAAA;IACjB,4CAAmB,CAAA;IACnB,wCAAe,CAAA;IACf,oCAAW,CAAA;AACb,CAAC,EALW,qBAAqB,KAArB,qBAAqB,QAKhC;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;AACrB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,mCAAe,CAAA;AACjB,CAAC,EAFW,gBAAgB,KAAhB,gBAAgB,QAE3B;AAED,MAAM,CAAN,IAAY,eAEX;AAFD,WAAY,eAAe;IACzB,sCAAmB,CAAA;AACrB,CAAC,EAFW,eAAe,KAAf,eAAe,QAE1B;AAED,MAAM,CAAN,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,wCAAoB,CAAA;AACtB,CAAC,EAFW,gBAAgB,KAAhB,gBAAgB,QAE3B;AAED,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,kCAAqB,CAAA;AACvB,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AAED,MAAM,CAAC,MAAM,eAAe,mCACvB,kBAAkB,GAClB,gBAAgB,CACpB,CAAA"}
1
+ {"version":3,"file":"hubtype-models.js","sourceRoot":"","sources":["../../src/hubtype-models.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,0CAA2B,CAAA;AAC7B,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;AAED,MAAM,CAAN,IAAY,kBAQX;AARD,WAAY,kBAAkB;IAC5B,2CAAqB,CAAA;IACrB,qCAAe,CAAA;IACf,mCAAa,CAAA;IACb,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;IACnB,2CAAqB,CAAA;IACrB,uCAAiB,CAAA;AACnB,CAAC,EARW,kBAAkB,KAAlB,kBAAkB,QAQ7B;AAED,iCAAiC;AACjC,MAAM,CAAN,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,0CAAiB,CAAA;IACjB,4CAAmB,CAAA;IACnB,wCAAe,CAAA;IACf,oCAAW,CAAA;AACb,CAAC,EALW,qBAAqB,KAArB,qBAAqB,QAKhC;AAED,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;AACrB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,mCAAe,CAAA;AACjB,CAAC,EAFW,gBAAgB,KAAhB,gBAAgB,QAE3B;AAED,MAAM,CAAN,IAAY,eAEX;AAFD,WAAY,eAAe;IACzB,wCAAqB,CAAA;AACvB,CAAC,EAFW,eAAe,KAAf,eAAe,QAE1B;AAED,MAAM,CAAN,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,wCAAoB,CAAA;AACtB,CAAC,EAFW,gBAAgB,KAAhB,gBAAgB,QAE3B;AAED,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,kCAAqB,CAAA;AACvB,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AAED,MAAM,CAAC,MAAM,eAAe,mCACvB,kBAAkB,GAClB,gBAAgB,CACpB,CAAA"}
@@ -1,10 +1,11 @@
1
- import { Input, Plugin, PluginPostRequest, PluginPreRequest } from '@botonic/core';
1
+ import { Input, Plugin, PluginPostRequest, PluginPreRequest, Session } from '@botonic/core';
2
2
  import { FlowContent } from './content-fields/content-base';
3
3
  import { HtFlowBuilderData, HtFunctionNode, HtHandoffNode, HtIntentNode, HtKeywordNode, HtNodeComponent } from './hubtype-models';
4
4
  declare type BotonicPluginFlowBuilderOptions = {
5
5
  flowUrl: string;
6
6
  flow: any;
7
7
  customFunctions: Record<any, any>;
8
+ getLocale: (session: Session) => string;
8
9
  };
9
10
  export default class BotonicPluginFlowBuilder implements Plugin {
10
11
  readonly options: BotonicPluginFlowBuilderOptions;
@@ -12,6 +13,7 @@ export default class BotonicPluginFlowBuilder implements Plugin {
12
13
  private flow;
13
14
  private functions;
14
15
  private currentRequest;
16
+ getLocale: (session: Session) => string;
15
17
  constructor(options: BotonicPluginFlowBuilderOptions);
16
18
  readFlowContent(): Promise<HtFlowBuilderData>;
17
19
  pre(request: PluginPreRequest): Promise<void>;
@@ -19,6 +21,7 @@ export default class BotonicPluginFlowBuilder implements Plugin {
19
21
  getContent(id: string): Promise<HtNodeComponent>;
20
22
  getHandoffContent(): Promise<HtHandoffNode>;
21
23
  getFlowContent(hubtypeContent: HtNodeComponent, locale: string): FlowContent | undefined;
24
+ getStartId(): Promise<string>;
22
25
  getContents(id: string, locale: string, prevContents?: FlowContent[]): Promise<FlowContent[]>;
23
26
  getPayloadByInput(input: Input, locale: string): Promise<string | undefined>;
24
27
  hasIntent(node: HtIntentNode, intent: string, locale: string): boolean;
package/lib/esm/index.js CHANGED
@@ -3,7 +3,7 @@ import { FlowCarousel } from './content-fields/carousel';
3
3
  import { FlowImage } from './content-fields/image';
4
4
  import { FlowText } from './content-fields/text';
5
5
  import { DEFAULT_FUNCTIONS } from './functions';
6
- import { MessageContentType, } from './hubtype-models';
6
+ import { MessageContentType, StartFieldsType, } from './hubtype-models';
7
7
  export default class BotonicPluginFlowBuilder {
8
8
  constructor(options) {
9
9
  this.options = options;
@@ -11,6 +11,7 @@ export default class BotonicPluginFlowBuilder {
11
11
  this.flow = options.flow || this.readFlowContent();
12
12
  const customFunctions = options.customFunctions || {};
13
13
  this.functions = Object.assign(Object.assign({}, DEFAULT_FUNCTIONS), customFunctions);
14
+ this.getLocale = options.getLocale;
14
15
  }
15
16
  async readFlowContent() {
16
17
  const response = await axios.get(this.flowUrl);
@@ -49,6 +50,14 @@ export default class BotonicPluginFlowBuilder {
49
50
  return undefined;
50
51
  }
51
52
  }
53
+ async getStartId() {
54
+ const flow = await this.flow;
55
+ const startNode = flow.nodes.find((node) => (node === null || node === void 0 ? void 0 : node.type) === StartFieldsType.START_UP);
56
+ if (!startNode) {
57
+ throw new Error('start-up id must be defined');
58
+ }
59
+ return startNode.target.id;
60
+ }
52
61
  async getContents(id, locale, prevContents) {
53
62
  const contents = prevContents || [];
54
63
  const hubtypeContent = await this.getContent(id);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAUL,kBAAkB,EAClB,eAAe,GAChB,MAAM,kBAAkB,CAAA;AASzB,MAAM,CAAC,OAAO,OAAO,wBAAwB;IAO3C,YAAqB,OAAwC;QAAxC,YAAO,GAAP,OAAO,CAAiC;QAC3D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAC9B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe,EAAE,CAAA;QAClD,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,EAAE,CAAA;QACrD,IAAI,CAAC,SAAS,mCAAQ,iBAAiB,GAAK,eAAe,CAAE,CAAA;QAC7D,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC9C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAA;QAChC,YAAY;QACZ,OAAO,OAAO,CAAC,OAAO,CAAC,IAAyB,CAAC,CAAA;IACnD,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAyB;QACjC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAA;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAA2B,IAAkB,CAAC;IAEzD,KAAK,CAAC,UAAU,CAAC,EAAU;QACzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAA;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QAC/D,IAAI,CAAC,OAAO;YAAE,MAAM,KAAK,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAA;QAC5D,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAA;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAC7B,CAAC,CAAkB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAC5B,CAAA;QAClB,IAAI,CAAC,OAAO;YAAE,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACnD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,cAAc,CACZ,cAA+B,EAC/B,MAAc;QAEd,QAAQ,cAAc,CAAC,IAAI,EAAE;YAC3B,KAAK,kBAAkB,CAAC,IAAI;gBAC1B,OAAO,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;YACxD,KAAK,kBAAkB,CAAC,KAAK;gBAC3B,OAAO,SAAS,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;YACzD,KAAK,kBAAkB,CAAC,QAAQ;gBAC9B,OAAO,YAAY,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;YAC5D;gBACE,OAAO,SAAS,CAAA;SACnB;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAA;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAC/B,CAAC,IAAY,EAAE,EAAE,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,MAAK,eAAe,CAAC,QAAQ,CAC1D,CAAA;QAED,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;SAC/C;QAED,OAAQ,SAA8B,CAAC,MAAM,CAAC,EAAE,CAAA;IAClD,CAAC;IAED,KAAK,CAAC,WAAW,CACf,EAAU,EACV,MAAc,EACd,YAA4B;QAE5B,MAAM,QAAQ,GAAG,YAAY,IAAI,EAAE,CAAA;QACnC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QAChD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;QACjE,IAAI,cAAc,CAAC,IAAI,KAAK,kBAAkB,CAAC,QAAQ,EAAE;YACvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CACtC,cAAgC,EAChC,MAAM,CACP,CAAA;YACD,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;SACpD;aAAM;YACL,IAAI,OAAO;gBAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACnC,yCAAyC;YACzC,IAAI,cAAc,CAAC,SAAS;gBAC1B,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;SACzE;QACD,mBAAmB;QACnB,4EAA4E;QAC5E,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,KAAY,EACZ,MAAc;;QAEd,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAA;YAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAC/B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,MAAM,CAC7B,CAAA;YACnB,IAAI,KAAK,CAAC,MAAM,EAAE;gBAChB,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;gBAC3C,YAAY;gBACZ,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAC3C,CAAA;gBACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC7B,OAAO,MAAA,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,0CAAE,EAAE,CAAA;iBACpC;aACF;SACF;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAA;SACzD;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,SAAS,CAAC,IAAkB,EAAE,MAAc,EAAE,MAAc;QAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CACtD,CAAA;QACD,OAAO,OAAO,CAAC,MAAM,CAAC,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,KAAY,EACZ,MAAc;;QAEd,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAA;YAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CACpC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,OAAO,CAC7B,CAAA;YACpB,MAAM,mBAAmB,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACrD,YAAY;YACZ,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAC7C,CAAA;YACD,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE;gBAClC,OAAO,MAAA,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,0CAAE,EAAE,CAAA;aACzC;SACF;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAA;SACzD;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,aAAa,CAAC,IAAmB,EAAE,KAAa,EAAE,MAAc;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CACvC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CACtE,CAAA;QACD,OAAO,OAAO,CAAC,MAAM,CAAC,CAAA;IACxB,CAAC;IAED,mBAAmB,CAAC,KAAa,EAAE,QAAkB;QACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACxC,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC/B,OAAO,IAAI,CAAA;aACZ;SACF;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,YAA4B,EAC5B,MAAc;QAEd,kDAAkD;QAClD,gCAAgC;QAChC,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS;aAC9C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC;aAClC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QACvD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CACxB;YACE,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO;YACpC,OAAO,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;SAClE,EACD,GAAG,UAAU,CACd,CAAA;QACD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CACtE,IAAI,CACL,CAAA;QACD,0CAA0C;QAC1C,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CACrD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,cAAc,CACjC,CAAA;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAA;IACzB,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/plugin-flow-builder",
3
- "version": "0.21.0-alpha.3",
3
+ "version": "0.21.0-alpha.5",
4
4
  "main": "./lib/cjs/index.js",
5
5
  "module": "./lib/esm/index.js",
6
6
  "description": "Use Flow Builder to show your contents",
package/src/action.tsx CHANGED
@@ -4,9 +4,7 @@ import React from 'react'
4
4
  import { FlowContent } from './content-fields/content-base'
5
5
  import { doHandoff } from './handoff'
6
6
  import { HtHandoffNode } from './hubtype-models'
7
-
8
- // TODO: remove this from here and use the new "start" attribute in the flow
9
- export const START = '08c7df06-0c7c-4f06-b8c1-4157582efeb2'
7
+ import BotonicPluginFlowBuilder from './index'
10
8
 
11
9
  type FlowBuilderActionProps = {
12
10
  content?: FlowContent[]
@@ -17,27 +15,34 @@ export default class FlowBuilderAction extends React.Component<FlowBuilderAction
17
15
  static contextType = RequestContext
18
16
 
19
17
  static async botonicInit(request: ActionRequest): Promise<any> {
20
- const flowBuilderPlugin = request.plugins.hubtypeFlowBuilder as any
18
+ console.log(request)
19
+ const flowBuilderPlugin = request.plugins
20
+ .flowBuilder as BotonicPluginFlowBuilder
21
+
22
+ const locale = flowBuilderPlugin.getLocale(request.session)
23
+
24
+ let payload = request.input.payload
25
+ ? request.input.payload
26
+ : await flowBuilderPlugin.getStartId()
21
27
 
22
- let payload = request.input.payload ? request.input.payload : START
23
28
  if (!request.input.payload) {
24
29
  const intentPayload = await flowBuilderPlugin.getPayloadByInput(
25
30
  request.input,
26
- 'es-ES'
31
+ locale
27
32
  )
28
33
  if (intentPayload) {
29
34
  payload = intentPayload
30
35
  }
31
36
  const keywordPayload = await flowBuilderPlugin.getPayloadByKeyword(
32
37
  request.input,
33
- 'es-ES'
38
+ locale
34
39
  )
35
40
  if (keywordPayload) {
36
41
  payload = keywordPayload
37
42
  }
38
43
  }
39
44
  // We use only Spanish because they are the backend examples
40
- const content = await flowBuilderPlugin.getContents(payload, 'es-ES')
45
+ const content = await flowBuilderPlugin.getContents(payload, locale)
41
46
 
42
47
  if (content.length == 0) {
43
48
  const handoffMsg = await doHandoff(request)
@@ -1,8 +1,8 @@
1
1
  import axios from 'axios'
2
2
 
3
- export async function conditionalQueueStatus({ queueId }): Promise<string> {
3
+ export async function conditionalQueueStatus({ queue_id }): Promise<string> {
4
4
  const response = await axios.get(
5
- `https://api.hubtype.com/v1/queues/${queueId}/availability/`
5
+ `https://api.hubtype.com/v1/queues/${queue_id}/availability/`
6
6
  )
7
7
  const isAvailable = response.data.available
8
8
  return isAvailable ? 'open' : 'closed'
@@ -31,7 +31,7 @@ export enum MediaContentType {
31
31
  }
32
32
 
33
33
  export enum StartFieldsType {
34
- STARTUP = 'startUp',
34
+ START_UP = 'start-up',
35
35
  }
36
36
 
37
37
  export enum InputContentType {
@@ -62,8 +62,18 @@ export interface HtNodeLink {
62
62
  type: NodeContentType
63
63
  }
64
64
 
65
- export interface HtBaseNode {
65
+ export interface HtStartReference {
66
66
  id: string
67
+ type: NodeContentType
68
+ target: HtNodeLink
69
+ }
70
+
71
+ export interface HtBase {
72
+ id: string
73
+ type: NodeContentType | StartFieldsType
74
+ }
75
+
76
+ export interface HtBaseNode extends HtBase {
67
77
  code: string
68
78
  meta: {
69
79
  x: number
package/src/index.ts CHANGED
@@ -3,6 +3,7 @@ import {
3
3
  Plugin,
4
4
  PluginPostRequest,
5
5
  PluginPreRequest,
6
+ Session,
6
7
  } from '@botonic/core'
7
8
  import axios from 'axios'
8
9
 
@@ -12,6 +13,7 @@ import { FlowImage } from './content-fields/image'
12
13
  import { FlowText } from './content-fields/text'
13
14
  import { DEFAULT_FUNCTIONS } from './functions'
14
15
  import {
16
+ HtBase,
15
17
  HtBaseNode,
16
18
  HtFlowBuilderData,
17
19
  HtFunctionNode,
@@ -19,13 +21,16 @@ import {
19
21
  HtIntentNode,
20
22
  HtKeywordNode,
21
23
  HtNodeComponent,
24
+ HtStartReference,
22
25
  MessageContentType,
26
+ StartFieldsType,
23
27
  } from './hubtype-models'
24
28
 
25
29
  type BotonicPluginFlowBuilderOptions = {
26
30
  flowUrl: string
27
31
  flow: any
28
32
  customFunctions: Record<any, any>
33
+ getLocale: (session: Session) => string
29
34
  }
30
35
 
31
36
  export default class BotonicPluginFlowBuilder implements Plugin {
@@ -33,12 +38,14 @@ export default class BotonicPluginFlowBuilder implements Plugin {
33
38
  private flow: Promise<HtFlowBuilderData>
34
39
  private functions: Record<any, any>
35
40
  private currentRequest: PluginPreRequest
41
+ public getLocale: (session: Session) => string
36
42
 
37
43
  constructor(readonly options: BotonicPluginFlowBuilderOptions) {
38
44
  this.flowUrl = options.flowUrl
39
45
  this.flow = options.flow || this.readFlowContent()
40
46
  const customFunctions = options.customFunctions || {}
41
47
  this.functions = { ...DEFAULT_FUNCTIONS, ...customFunctions }
48
+ this.getLocale = options.getLocale
42
49
  }
43
50
 
44
51
  async readFlowContent() {
@@ -87,6 +94,19 @@ export default class BotonicPluginFlowBuilder implements Plugin {
87
94
  }
88
95
  }
89
96
 
97
+ async getStartId(): Promise<string> {
98
+ const flow = await this.flow
99
+ const startNode = flow.nodes.find(
100
+ (node: HtBase) => node?.type === StartFieldsType.START_UP
101
+ )
102
+
103
+ if (!startNode) {
104
+ throw new Error('start-up id must be defined')
105
+ }
106
+
107
+ return (startNode as HtStartReference).target.id
108
+ }
109
+
90
110
  async getContents(
91
111
  id: string,
92
112
  locale: string,