@botpress/runtime 1.13.9 → 1.13.11

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.
Files changed (36) hide show
  1. package/dist/define-config.d.ts +23 -1
  2. package/dist/define-config.d.ts.map +1 -1
  3. package/dist/definition.js +438 -293
  4. package/dist/definition.js.map +4 -4
  5. package/dist/internal.js +532 -387
  6. package/dist/internal.js.map +4 -4
  7. package/dist/library.d.ts +4 -2
  8. package/dist/library.d.ts.map +1 -1
  9. package/dist/library.js +465 -287
  10. package/dist/library.js.map +4 -4
  11. package/dist/primitives/conversation.d.ts +24 -11
  12. package/dist/primitives/conversation.d.ts.map +1 -1
  13. package/dist/primitives/data-sources/source-base.d.ts +1 -1
  14. package/dist/primitives/data-sources/source-base.d.ts.map +1 -1
  15. package/dist/primitives/index.d.ts +1 -1
  16. package/dist/primitives/workflow-instance.d.ts +45 -1
  17. package/dist/primitives/workflow-instance.d.ts.map +1 -1
  18. package/dist/primitives/workflow.d.ts +3 -2
  19. package/dist/primitives/workflow.d.ts.map +1 -1
  20. package/dist/runtime/autonomous.d.ts +1 -0
  21. package/dist/runtime/autonomous.d.ts.map +1 -1
  22. package/dist/runtime/context/context.d.ts +21 -0
  23. package/dist/runtime/context/context.d.ts.map +1 -1
  24. package/dist/runtime/context/handlers.d.ts.map +1 -1
  25. package/dist/runtime/handlers/event.d.ts.map +1 -1
  26. package/dist/runtime/handlers/trigger.d.ts.map +1 -1
  27. package/dist/runtime/handlers/workflow.d.ts.map +1 -1
  28. package/dist/runtime/tracked-tags.d.ts +2 -0
  29. package/dist/runtime/tracked-tags.d.ts.map +1 -1
  30. package/dist/runtime.js +503 -317
  31. package/dist/runtime.js.map +4 -4
  32. package/dist/utilities/events.d.ts +28 -0
  33. package/dist/utilities/events.d.ts.map +1 -1
  34. package/dist/utilities/validate-event-name.d.ts +20 -0
  35. package/dist/utilities/validate-event-name.d.ts.map +1 -0
  36. package/package.json +1 -1
@@ -1,5 +1,14 @@
1
1
  import { Event, Message } from '@botpress/client';
2
2
  import { WorkflowCallbackEventType } from '../runtime/events';
3
+ import type { EventName, EventPayload } from '../_types/events';
4
+ /**
5
+ * Type for a typed event with a specific event name and corresponding payload.
6
+ * This is used as the return type for isEventOfType type guard.
7
+ */
8
+ export type TypedEvent<T extends EventName> = Event & {
9
+ type: T;
10
+ payload: EventPayload<T>;
11
+ };
3
12
  export declare function isEvent(event: unknown): event is Event;
4
13
  export declare function isEventMessage(event: Event): event is Event & {
5
14
  type: 'message_created';
@@ -9,4 +18,23 @@ export declare function isEventMessage(event: Event): event is Event & {
9
18
  };
10
19
  export declare function isWorkflowCallback(event: unknown): event is WorkflowCallbackEventType;
11
20
  export declare function isMessage(message: unknown): message is Message;
21
+ /**
22
+ * Type guard to check if an event matches a specific event type.
23
+ * Works with both custom events and integration events.
24
+ *
25
+ * @example
26
+ * // Custom event
27
+ * if (isEventOfType(event, 'orderPlaced')) {
28
+ * // event.payload is typed as the orderPlaced schema
29
+ * console.log(event.payload.orderId)
30
+ * }
31
+ *
32
+ * @example
33
+ * // Integration event
34
+ * if (isEventOfType(event, 'slack:reactionAdded')) {
35
+ * // event.payload is typed as the slack reactionAdded event payload
36
+ * console.log(event.payload.reaction)
37
+ * }
38
+ */
39
+ export declare function isEventOfType<T extends EventName>(event: unknown, eventName: T): event is TypedEvent<T>;
12
40
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/utilities/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAI7D,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,KAAK,CAEtD;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,KAAK,GACX,KAAK,IAAI,KAAK,GAAG;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAA;CAAE,CAQ7E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,yBAAyB,CAUrF;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,OAAO,CAE9D"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/utilities/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAI/D;;;GAGG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,SAAS,IAAI,KAAK,GAAG;IACpD,IAAI,EAAE,CAAC,CAAA;IACP,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;CACzB,CAAA;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,KAAK,CAEtD;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,KAAK,GACX,KAAK,IAAI,KAAK,GAAG;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAA;CAAE,CAQ7E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,yBAAyB,CAUrF;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,OAAO,CAE9D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,CAAC,CAEvG"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Validates an event name according to ADK rules:
3
+ * - Only alphanumeric characters (A-Z, a-z, 0-9) and underscores
4
+ * - Maximum 100 characters
5
+ * - Must start with a letter
6
+ * - No special characters
7
+ */
8
+ export declare function validateEventName(name: string): {
9
+ valid: boolean;
10
+ error?: string;
11
+ };
12
+ /**
13
+ * Validates all event names in an events definition object
14
+ * Throws an error if any event name is invalid
15
+ */
16
+ export declare function validateEventDefinitions(events: Record<string, {
17
+ schema?: unknown;
18
+ description?: string | undefined;
19
+ }>, context: string): void;
20
+ //# sourceMappingURL=validate-event-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-event-name.d.ts","sourceRoot":"","sources":["../../src/utilities/validate-event-name.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAqBlF;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC,EAC9E,OAAO,EAAE,MAAM,GACd,IAAI,CAON"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botpress/runtime",
3
- "version": "1.13.9",
3
+ "version": "1.13.11",
4
4
  "description": "Lightweight runtime library for ADK-based Botpress agents",
5
5
  "type": "module",
6
6
  "files": [