@positronic/core 0.0.8 → 0.0.9

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.
@@ -410,13 +410,12 @@ export var Brain = /*#__PURE__*/ function() {
410
410
  _define_property(this, "description", void 0);
411
411
  _define_property(this, "blocks", void 0);
412
412
  _define_property(this, "type", void 0);
413
- _define_property(this, "defaultOptions", void 0);
414
413
  _define_property(this, "services", void 0);
414
+ _define_property(this, "optionsSchema", void 0);
415
415
  this.title = title;
416
416
  this.description = description;
417
417
  this.blocks = [];
418
418
  this.type = 'brain';
419
- this.defaultOptions = {};
420
419
  this.services = {};
421
420
  }
422
421
  _create_class(Brain, [
@@ -444,23 +443,24 @@ export var Brain = /*#__PURE__*/ function() {
444
443
  };
445
444
  }
446
445
  },
447
- {
448
- // New method to specify default options
449
- key: "withOptions",
450
- value: function withOptions(options) {
451
- this.defaultOptions = _object_spread({}, this.defaultOptions, options);
452
- return this;
453
- }
454
- },
455
446
  {
456
447
  // New method to add services
457
448
  key: "withServices",
458
449
  value: function withServices(services) {
459
450
  var nextBrain = new Brain(this.title, this.description).withBlocks(this.blocks);
460
- // Copy default options
461
- nextBrain.withOptions(this.defaultOptions);
462
451
  // Set services
463
452
  nextBrain.services = services;
453
+ // Copy optionsSchema to maintain it through the chain
454
+ nextBrain.optionsSchema = this.optionsSchema;
455
+ return nextBrain;
456
+ }
457
+ },
458
+ {
459
+ key: "withOptionsSchema",
460
+ value: function withOptionsSchema(schema) {
461
+ var nextBrain = new Brain(this.title, this.description).withBlocks(this.blocks);
462
+ nextBrain.optionsSchema = schema;
463
+ nextBrain.services = this.services;
464
464
  return nextBrain;
465
465
  }
466
466
  },
@@ -564,19 +564,27 @@ export var Brain = /*#__PURE__*/ function() {
564
564
  value: // Implementation signature
565
565
  function run(params) {
566
566
  return _wrap_async_generator(function() {
567
- var _this, title, description, blocks, mergedOptions, stream;
567
+ var _this, title, description, blocks, validatedOptions, stream;
568
568
  return _ts_generator(this, function(_state) {
569
569
  switch(_state.label){
570
570
  case 0:
571
571
  _this = this, title = _this.title, description = _this.description, blocks = _this.blocks;
572
- // Merge default options with provided options
573
- mergedOptions = _object_spread({}, this.defaultOptions, params.options || {});
572
+ if (this.optionsSchema) {
573
+ // Just call parse - Zod handles defaults automatically
574
+ validatedOptions = this.optionsSchema.parse(params.options || {});
575
+ } else {
576
+ // If no schema is defined but options are provided, throw error
577
+ if (params.options && Object.keys(params.options).length > 0) {
578
+ throw new Error("Brain '".concat(this.title, "' received options but no schema was defined. Use withOptionsSchema() to define a schema for options."));
579
+ }
580
+ validatedOptions = {};
581
+ }
574
582
  stream = new BrainEventStream(_object_spread_props(_object_spread({
575
583
  title: title,
576
584
  description: description,
577
585
  blocks: blocks
578
586
  }, params), {
579
- options: mergedOptions,
587
+ options: validatedOptions,
580
588
  services: this.services
581
589
  }));
582
590
  return [
@@ -605,10 +613,10 @@ export var Brain = /*#__PURE__*/ function() {
605
613
  value: function nextBrain() {
606
614
  // Pass default options to the next brain
607
615
  var nextBrain = new Brain(this.title, this.description).withBlocks(this.blocks);
608
- // Copy default options to the next brain
609
- nextBrain.withOptions(this.defaultOptions);
610
616
  // Copy services to the next brain
611
617
  nextBrain.services = this.services;
618
+ // Copy optionsSchema to the next brain
619
+ nextBrain.optionsSchema = this.optionsSchema;
612
620
  return nextBrain;
613
621
  }
614
622
  }
@@ -1,5 +1,6 @@
1
1
  import type { BrainEvent } from '../dsl/brain.js';
2
- export interface Adapter<Options extends object = any> {
2
+ import type { JsonObject } from '../dsl/types.js';
3
+ export interface Adapter<Options extends JsonObject = any> {
3
4
  dispatch(event: BrainEvent<Options>): void | Promise<void>;
4
5
  }
5
6
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/adapters/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,WAAW,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,GAAG;IACnD,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/adapters/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,WAAW,OAAO,CAAC,OAAO,SAAS,UAAU,GAAG,GAAG;IACvD,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D"}
@@ -1,6 +1,6 @@
1
1
  import type { Adapter } from '../adapters/types.js';
2
2
  import type { SerializedStep, Brain } from './brain.js';
3
- import type { State } from './types.js';
3
+ import type { State, JsonObject } from './types.js';
4
4
  import type { ObjectGenerator } from '../clients/types.js';
5
5
  import type { Resources } from '../resources/resources.js';
6
6
  export declare class BrainRunner {
@@ -13,7 +13,7 @@ export declare class BrainRunner {
13
13
  withAdapters(adapters: Adapter[]): BrainRunner;
14
14
  withClient(client: ObjectGenerator): BrainRunner;
15
15
  withResources(resources: Resources): BrainRunner;
16
- run<TOptions extends object = {}, TState extends State = {}>(brain: Brain<TOptions, TState, any>, { initialState, options, initialCompletedSteps, brainRunId, endAfter, }?: {
16
+ run<TOptions extends JsonObject = {}, TState extends State = {}>(brain: Brain<TOptions, TState, any>, { initialState, options, initialCompletedSteps, brainRunId, endAfter, }?: {
17
17
  initialState?: TState;
18
18
  options?: TOptions;
19
19
  initialCompletedSteps?: SerializedStep[] | never;
@@ -1 +1 @@
1
- {"version":3,"file":"brain-runner.d.ts","sourceRoot":"","sources":["../../../src/dsl/brain-runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,qBAAa,WAAW;IAEpB,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE;QACf,QAAQ,EAAE,OAAO,EAAE,CAAC;QACpB,MAAM,EAAE,eAAe,CAAC;QACxB,SAAS,CAAC,EAAE,SAAS,CAAC;KACvB;IAGH,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,WAAW;IAQ9C,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,WAAW;IAOhD,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,WAAW;IAO1C,GAAG,CAAC,QAAQ,SAAS,MAAM,GAAG,EAAE,EAAE,MAAM,SAAS,KAAK,GAAG,EAAE,EAC/D,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EACnC,EACE,YAA2B,EAC3B,OAAO,EACP,qBAAqB,EACrB,UAAU,EACV,QAAQ,GACT,GAAE;QACD,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,QAAQ,CAAC;QACnB,qBAAqB,CAAC,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;QACjD,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;KACd,GACL,OAAO,CAAC,MAAM,CAAC;CAwDnB"}
1
+ {"version":3,"file":"brain-runner.d.ts","sourceRoot":"","sources":["../../../src/dsl/brain-runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,qBAAa,WAAW;IAEpB,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE;QACf,QAAQ,EAAE,OAAO,EAAE,CAAC;QACpB,MAAM,EAAE,eAAe,CAAC;QACxB,SAAS,CAAC,EAAE,SAAS,CAAC;KACvB;IAGH,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,WAAW;IAQ9C,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,WAAW;IAOhD,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,WAAW;IAO1C,GAAG,CAAC,QAAQ,SAAS,UAAU,GAAG,EAAE,EAAE,MAAM,SAAS,KAAK,GAAG,EAAE,EACnE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EACnC,EACE,YAA2B,EAC3B,OAAO,EACP,qBAAqB,EACrB,UAAU,EACV,QAAQ,GACT,GAAE;QACD,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,QAAQ,CAAC;QACnB,qBAAqB,CAAC,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;QACjD,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;KACd,GACL,OAAO,CAAC,MAAM,CAAC;CAwDnB"}
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import type { ObjectGenerator } from '../clients/types.js';
3
- import type { State, JsonPatch } from './types.js';
3
+ import type { State, JsonPatch, JsonObject } from './types.js';
4
4
  import { STATUS, BRAIN_EVENTS } from './constants.js';
5
5
  import type { Resources } from '../resources/resources.js';
6
6
  export type SerializedError = {
@@ -8,47 +8,47 @@ export type SerializedError = {
8
8
  message: string;
9
9
  stack?: string;
10
10
  };
11
- interface BaseEvent<TOptions extends object = object> {
11
+ interface BaseEvent<TOptions extends JsonObject = JsonObject> {
12
12
  type: (typeof BRAIN_EVENTS)[keyof typeof BRAIN_EVENTS];
13
13
  options: TOptions;
14
14
  brainRunId: string;
15
15
  }
16
- interface BrainBaseEvent<TOptions extends object = object> extends BaseEvent<TOptions> {
16
+ interface BrainBaseEvent<TOptions extends JsonObject = JsonObject> extends BaseEvent<TOptions> {
17
17
  brainTitle: string;
18
18
  brainDescription?: string;
19
19
  }
20
- export interface BrainStartEvent<TOptions extends object = object> extends BrainBaseEvent<TOptions> {
20
+ export interface BrainStartEvent<TOptions extends JsonObject = JsonObject> extends BrainBaseEvent<TOptions> {
21
21
  type: typeof BRAIN_EVENTS.START | typeof BRAIN_EVENTS.RESTART;
22
22
  initialState: State;
23
23
  status: typeof STATUS.RUNNING;
24
24
  }
25
- export interface BrainCompleteEvent<TOptions extends object = object> extends BrainBaseEvent<TOptions> {
25
+ export interface BrainCompleteEvent<TOptions extends JsonObject = JsonObject> extends BrainBaseEvent<TOptions> {
26
26
  type: typeof BRAIN_EVENTS.COMPLETE;
27
27
  status: typeof STATUS.COMPLETE;
28
28
  }
29
- export interface BrainErrorEvent<TOptions extends object = object> extends BrainBaseEvent<TOptions> {
29
+ export interface BrainErrorEvent<TOptions extends JsonObject = JsonObject> extends BrainBaseEvent<TOptions> {
30
30
  type: typeof BRAIN_EVENTS.ERROR;
31
31
  status: typeof STATUS.ERROR;
32
32
  error: SerializedError;
33
33
  }
34
- export interface StepStatusEvent<TOptions extends object = object> extends BaseEvent<TOptions> {
34
+ export interface StepStatusEvent<TOptions extends JsonObject = JsonObject> extends BaseEvent<TOptions> {
35
35
  type: typeof BRAIN_EVENTS.STEP_STATUS;
36
36
  steps: SerializedStepStatus[];
37
37
  }
38
- export interface StepStartedEvent<TOptions extends object = object> extends BaseEvent<TOptions> {
38
+ export interface StepStartedEvent<TOptions extends JsonObject = JsonObject> extends BaseEvent<TOptions> {
39
39
  type: typeof BRAIN_EVENTS.STEP_START;
40
40
  status: typeof STATUS.RUNNING;
41
41
  stepTitle: string;
42
42
  stepId: string;
43
43
  }
44
- export interface StepCompletedEvent<TOptions extends object = object> extends BaseEvent<TOptions> {
44
+ export interface StepCompletedEvent<TOptions extends JsonObject = JsonObject> extends BaseEvent<TOptions> {
45
45
  type: typeof BRAIN_EVENTS.STEP_COMPLETE;
46
46
  status: typeof STATUS.RUNNING;
47
47
  stepTitle: string;
48
48
  stepId: string;
49
49
  patch: JsonPatch;
50
50
  }
51
- export type BrainEvent<TOptions extends object = object> = BrainStartEvent<TOptions> | BrainCompleteEvent<TOptions> | BrainErrorEvent<TOptions> | StepStatusEvent<TOptions> | StepStartedEvent<TOptions> | StepCompletedEvent<TOptions>;
51
+ export type BrainEvent<TOptions extends JsonObject = JsonObject> = BrainStartEvent<TOptions> | BrainCompleteEvent<TOptions> | BrainErrorEvent<TOptions> | StepStatusEvent<TOptions> | StepStartedEvent<TOptions> | StepCompletedEvent<TOptions>;
52
52
  export interface SerializedStep {
53
53
  title: string;
54
54
  status: (typeof STATUS)[keyof typeof STATUS];
@@ -66,37 +66,37 @@ export interface BrainStructure {
66
66
  }>;
67
67
  }
68
68
  export interface BrainFactory {
69
- <TOptions extends object = object, TState extends State = object, TServices extends object = object>(brainConfig: string | {
69
+ <TOptions extends JsonObject = JsonObject, TState extends State = object, TServices extends object = object>(brainConfig: string | {
70
70
  title: string;
71
71
  description?: string;
72
72
  }): Brain<TOptions, TState, TServices>;
73
73
  }
74
- interface BaseRunParams<TOptions extends object = object> {
74
+ interface BaseRunParams<TOptions extends JsonObject = JsonObject> {
75
75
  client: ObjectGenerator;
76
76
  resources?: Resources;
77
77
  options?: TOptions;
78
78
  }
79
- export interface InitialRunParams<TOptions extends object = object> extends BaseRunParams<TOptions> {
79
+ export interface InitialRunParams<TOptions extends JsonObject = JsonObject> extends BaseRunParams<TOptions> {
80
80
  initialState?: State;
81
81
  initialCompletedSteps?: never;
82
82
  brainRunId?: string;
83
83
  }
84
- export interface RerunParams<TOptions extends object = object> extends BaseRunParams<TOptions> {
84
+ export interface RerunParams<TOptions extends JsonObject = JsonObject> extends BaseRunParams<TOptions> {
85
85
  initialState: State;
86
86
  initialCompletedSteps: SerializedStep[];
87
87
  brainRunId: string;
88
88
  }
89
- export declare class Brain<TOptions extends object = object, TState extends State = object, TServices extends object = object> {
89
+ export declare class Brain<TOptions extends JsonObject = JsonObject, TState extends State = object, TServices extends object = object> {
90
90
  readonly title: string;
91
91
  private description?;
92
92
  private blocks;
93
93
  type: 'brain';
94
- private defaultOptions;
95
94
  private services;
95
+ private optionsSchema?;
96
96
  constructor(title: string, description?: string | undefined);
97
97
  get structure(): BrainStructure;
98
- withOptions(options: Partial<TOptions>): this;
99
98
  withServices<TNewServices extends object>(services: TNewServices): Brain<TOptions, TState, TNewServices>;
99
+ withOptionsSchema<TSchema extends z.ZodSchema>(schema: TSchema): Brain<z.infer<TSchema>, TState, TServices>;
100
100
  step<TNewState extends State>(title: string, action: (params: {
101
101
  state: TState;
102
102
  options: TOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"brain.d.ts","sourceRoot":"","sources":["../../../src/dsl/brain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAIF,UAAU,SAAS,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM;IAClD,IAAI,EAAE,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;IACvD,OAAO,EAAE,QAAQ,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAGD,UAAU,cAAc,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CACvD,SAAQ,SAAS,CAAC,QAAQ,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CAC/D,SAAQ,cAAc,CAAC,QAAQ,CAAC;IAChC,IAAI,EAAE,OAAO,YAAY,CAAC,KAAK,GAAG,OAAO,YAAY,CAAC,OAAO,CAAC;IAC9D,YAAY,EAAE,KAAK,CAAC;IACpB,MAAM,EAAE,OAAO,MAAM,CAAC,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CAClE,SAAQ,cAAc,CAAC,QAAQ,CAAC;IAChC,IAAI,EAAE,OAAO,YAAY,CAAC,QAAQ,CAAC;IACnC,MAAM,EAAE,OAAO,MAAM,CAAC,QAAQ,CAAC;CAChC;AAED,MAAM,WAAW,eAAe,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CAC/D,SAAQ,cAAc,CAAC,QAAQ,CAAC;IAChC,IAAI,EAAE,OAAO,YAAY,CAAC,KAAK,CAAC;IAChC,MAAM,EAAE,OAAO,MAAM,CAAC,KAAK,CAAC;IAC5B,KAAK,EAAE,eAAe,CAAC;CACxB;AAGD,MAAM,WAAW,eAAe,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CAC/D,SAAQ,SAAS,CAAC,QAAQ,CAAC;IAC3B,IAAI,EAAE,OAAO,YAAY,CAAC,WAAW,CAAC;IACtC,KAAK,EAAE,oBAAoB,EAAE,CAAC;CAC/B;AAGD,MAAM,WAAW,gBAAgB,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CAChE,SAAQ,SAAS,CAAC,QAAQ,CAAC;IAC3B,IAAI,EAAE,OAAO,YAAY,CAAC,UAAU,CAAC;IACrC,MAAM,EAAE,OAAO,MAAM,CAAC,OAAO,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CAClE,SAAQ,SAAS,CAAC,QAAQ,CAAC;IAC3B,IAAI,EAAE,OAAO,YAAY,CAAC,aAAa,CAAC;IACxC,MAAM,EAAE,OAAO,MAAM,CAAC,OAAO,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;CAClB;AAGD,MAAM,MAAM,UAAU,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,IACnD,eAAe,CAAC,QAAQ,CAAC,GACzB,kBAAkB,CAAC,QAAQ,CAAC,GAC5B,eAAe,CAAC,QAAQ,CAAC,GACzB,eAAe,CAAC,QAAQ,CAAC,GACzB,gBAAgB,CAAC,QAAQ,CAAC,GAC1B,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AAEjC,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,MAAM,CAAC,CAAC;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAGD,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;AAGjE,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,cAAc,CAAC;KAC7B,CAAC,CAAC;CACJ;AAGD,MAAM,WAAW,YAAY;IAC3B,CACE,QAAQ,SAAS,MAAM,GAAG,MAAM,EAChC,MAAM,SAAS,KAAK,GAAG,MAAM,EAC7B,SAAS,SAAS,MAAM,GAAG,MAAM,EAEjC,WAAW,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAC5D,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;CACvC;AA+CD,UAAU,aAAa,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM;IACtD,MAAM,EAAE,eAAe,CAAC;IACxB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,OAAO,CAAC,EAAE,QAAQ,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CAChE,SAAQ,aAAa,CAAC,QAAQ,CAAC;IAC/B,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,qBAAqB,CAAC,EAAE,KAAK,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CAC3D,SAAQ,aAAa,CAAC,QAAQ,CAAC;IAC/B,YAAY,EAAE,KAAK,CAAC;IACpB,qBAAqB,EAAE,cAAc,EAAE,CAAC;IACxC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,KAAK,CAChB,QAAQ,SAAS,MAAM,GAAG,MAAM,EAChC,MAAM,SAAS,KAAK,GAAG,MAAM,EAC7B,SAAS,SAAS,MAAM,GAAG,MAAM;aAOL,KAAK,EAAE,MAAM;IAAE,OAAO,CAAC,WAAW,CAAC;IAL/D,OAAO,CAAC,MAAM,CAA8C;IACrD,IAAI,EAAE,OAAO,CAAW;IAC/B,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,QAAQ,CAA8B;gBAElB,KAAK,EAAE,MAAM,EAAU,WAAW,CAAC,EAAE,MAAM,YAAA;IAEvE,IAAI,SAAS,IAAI,cAAc,CAoB9B;IAGD,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI;IAM7C,YAAY,CAAC,YAAY,SAAS,MAAM,EACtC,QAAQ,EAAE,YAAY,GACrB,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC;IAexC,IAAI,CAAC,SAAS,SAAS,KAAK,EAC1B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,CACN,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,QAAQ,CAAC;QAClB,MAAM,EAAE,eAAe,CAAC;QACxB,SAAS,EAAE,SAAS,CAAC;KACtB,GAAG,SAAS,KACV,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAWrC,KAAK,CAAC,WAAW,SAAS,KAAK,EAAE,SAAS,SAAS,KAAK,EACtD,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,CAAC,EACnD,MAAM,EAAE,CAAC,MAAM,EAAE;QACf,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,WAAW,CAAC;QACxB,QAAQ,EAAE,SAAS,CAAC;KACrB,KAAK,SAAS,EACf,YAAY,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC;IAwBnD,MAAM,CACJ,YAAY,SAAS,MAAM,GAAG;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,MAAM,CAAA;KAAE,EAChE,OAAO,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAChC,SAAS,SAAS,KAAK,GAAG,MAAM,GAAG;SAChC,CAAC,IAAI,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;KACtC,EAED,KAAK,EAAE,MAAM,EACb,MAAM,EAAE;QACN,QAAQ,EAAE,CACR,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,KACjB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9B,YAAY,EAAE;YACZ,MAAM,EAAE,OAAO,CAAC;YAChB,IAAI,EAAE,YAAY,GAAG,CAAC,MAAM,SAAS,YAAY,GAAG,KAAK,GAAG,OAAO,CAAC,CAAC;SACtE,CAAC;QACF,MAAM,CAAC,EAAE,eAAe,CAAC;KAC1B,EACD,MAAM,CAAC,EAAE,CACP,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3B,OAAO,EAAE,QAAQ,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,SAAS,CAAC;KACtB,GAAG,SAAS,KACV,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IA2CrC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7E,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IA0BxE,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,SAAS;CAmBlB;AAoTD,eAAO,MAAM,KAAK,EAAE,YAkBnB,CAAC"}
1
+ {"version":3,"file":"brain.d.ts","sourceRoot":"","sources":["../../../src/dsl/brain.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@positronic/core",
3
- "version": "0.0.8",
3
+ "version": "0.0.9",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -17,10 +17,6 @@
17
17
  ".": {
18
18
  "types": "./dist/types/index.d.ts",
19
19
  "import": "./dist/src/index.js"
20
- },
21
- "./testing": {
22
- "types": "./dist/types/testing.d.ts",
23
- "import": "./dist/src/testing.js"
24
20
  }
25
21
  },
26
22
  "scripts": {
@@ -1,413 +0,0 @@
1
- function _array_like_to_array(arr, len) {
2
- if (len == null || len > arr.length) len = arr.length;
3
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
- return arr2;
5
- }
6
- function _array_without_holes(arr) {
7
- if (Array.isArray(arr)) return _array_like_to_array(arr);
8
- }
9
- function _async_iterator(iterable) {
10
- var method, async, sync, retry = 2;
11
- for("undefined" != typeof Symbol && (async = Symbol.asyncIterator, sync = Symbol.iterator); retry--;){
12
- if (async && null != (method = iterable[async])) return method.call(iterable);
13
- if (sync && null != (method = iterable[sync])) return new AsyncFromSyncIterator(method.call(iterable));
14
- async = "@@asyncIterator", sync = "@@iterator";
15
- }
16
- throw new TypeError("Object is not async iterable");
17
- }
18
- function AsyncFromSyncIterator(s) {
19
- function AsyncFromSyncIteratorContinuation(r) {
20
- if (Object(r) !== r) return Promise.reject(new TypeError(r + " is not an object."));
21
- var done = r.done;
22
- return Promise.resolve(r.value).then(function(value) {
23
- return {
24
- value: value,
25
- done: done
26
- };
27
- });
28
- }
29
- return AsyncFromSyncIterator = function(s) {
30
- this.s = s, this.n = s.next;
31
- }, AsyncFromSyncIterator.prototype = {
32
- s: null,
33
- n: null,
34
- next: function() {
35
- return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments));
36
- },
37
- return: function(value) {
38
- var ret = this.s.return;
39
- return void 0 === ret ? Promise.resolve({
40
- value: value,
41
- done: !0
42
- }) : AsyncFromSyncIteratorContinuation(ret.apply(this.s, arguments));
43
- },
44
- throw: function(value) {
45
- var thr = this.s.return;
46
- return void 0 === thr ? Promise.reject(value) : AsyncFromSyncIteratorContinuation(thr.apply(this.s, arguments));
47
- }
48
- }, new AsyncFromSyncIterator(s);
49
- }
50
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
51
- try {
52
- var info = gen[key](arg);
53
- var value = info.value;
54
- } catch (error) {
55
- reject(error);
56
- return;
57
- }
58
- if (info.done) {
59
- resolve(value);
60
- } else {
61
- Promise.resolve(value).then(_next, _throw);
62
- }
63
- }
64
- function _async_to_generator(fn) {
65
- return function() {
66
- var self = this, args = arguments;
67
- return new Promise(function(resolve, reject) {
68
- var gen = fn.apply(self, args);
69
- function _next(value) {
70
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
71
- }
72
- function _throw(err) {
73
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
74
- }
75
- _next(undefined);
76
- });
77
- };
78
- }
79
- function _define_property(obj, key, value) {
80
- if (key in obj) {
81
- Object.defineProperty(obj, key, {
82
- value: value,
83
- enumerable: true,
84
- configurable: true,
85
- writable: true
86
- });
87
- } else {
88
- obj[key] = value;
89
- }
90
- return obj;
91
- }
92
- function _instanceof(left, right) {
93
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
94
- return !!right[Symbol.hasInstance](left);
95
- } else {
96
- return left instanceof right;
97
- }
98
- }
99
- function _iterable_to_array(iter) {
100
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
101
- }
102
- function _non_iterable_spread() {
103
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
104
- }
105
- function _object_spread(target) {
106
- for(var i = 1; i < arguments.length; i++){
107
- var source = arguments[i] != null ? arguments[i] : {};
108
- var ownKeys = Object.keys(source);
109
- if (typeof Object.getOwnPropertySymbols === "function") {
110
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
111
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
112
- }));
113
- }
114
- ownKeys.forEach(function(key) {
115
- _define_property(target, key, source[key]);
116
- });
117
- }
118
- return target;
119
- }
120
- function ownKeys(object, enumerableOnly) {
121
- var keys = Object.keys(object);
122
- if (Object.getOwnPropertySymbols) {
123
- var symbols = Object.getOwnPropertySymbols(object);
124
- if (enumerableOnly) {
125
- symbols = symbols.filter(function(sym) {
126
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
127
- });
128
- }
129
- keys.push.apply(keys, symbols);
130
- }
131
- return keys;
132
- }
133
- function _object_spread_props(target, source) {
134
- source = source != null ? source : {};
135
- if (Object.getOwnPropertyDescriptors) {
136
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
137
- } else {
138
- ownKeys(Object(source)).forEach(function(key) {
139
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
140
- });
141
- }
142
- return target;
143
- }
144
- function _to_consumable_array(arr) {
145
- return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
146
- }
147
- function _unsupported_iterable_to_array(o, minLen) {
148
- if (!o) return;
149
- if (typeof o === "string") return _array_like_to_array(o, minLen);
150
- var n = Object.prototype.toString.call(o).slice(8, -1);
151
- if (n === "Object" && o.constructor) n = o.constructor.name;
152
- if (n === "Map" || n === "Set") return Array.from(n);
153
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
154
- }
155
- function _ts_generator(thisArg, body) {
156
- var f, y, t, _ = {
157
- label: 0,
158
- sent: function() {
159
- if (t[0] & 1) throw t[1];
160
- return t[1];
161
- },
162
- trys: [],
163
- ops: []
164
- }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
165
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
166
- return this;
167
- }), g;
168
- function verb(n) {
169
- return function(v) {
170
- return step([
171
- n,
172
- v
173
- ]);
174
- };
175
- }
176
- function step(op) {
177
- if (f) throw new TypeError("Generator is already executing.");
178
- while(g && (g = 0, op[0] && (_ = 0)), _)try {
179
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
180
- if (y = 0, t) op = [
181
- op[0] & 2,
182
- t.value
183
- ];
184
- switch(op[0]){
185
- case 0:
186
- case 1:
187
- t = op;
188
- break;
189
- case 4:
190
- _.label++;
191
- return {
192
- value: op[1],
193
- done: false
194
- };
195
- case 5:
196
- _.label++;
197
- y = op[1];
198
- op = [
199
- 0
200
- ];
201
- continue;
202
- case 7:
203
- op = _.ops.pop();
204
- _.trys.pop();
205
- continue;
206
- default:
207
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
208
- _ = 0;
209
- continue;
210
- }
211
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
212
- _.label = op[1];
213
- break;
214
- }
215
- if (op[0] === 6 && _.label < t[1]) {
216
- _.label = t[1];
217
- t = op;
218
- break;
219
- }
220
- if (t && _.label < t[2]) {
221
- _.label = t[2];
222
- _.ops.push(op);
223
- break;
224
- }
225
- if (t[2]) _.ops.pop();
226
- _.trys.pop();
227
- continue;
228
- }
229
- op = body.call(thisArg, _);
230
- } catch (e) {
231
- op = [
232
- 6,
233
- e
234
- ];
235
- y = 0;
236
- } finally{
237
- f = t = 0;
238
- }
239
- if (op[0] & 5) throw op[1];
240
- return {
241
- value: op[0] ? op[1] : void 0,
242
- done: true
243
- };
244
- }
245
- }
246
- import { BRAIN_EVENTS } from './dsl/constants.js';
247
- import { applyPatches } from './dsl/json-patch.js';
248
- export function createMockClient() {
249
- var responses = [];
250
- var responseIndex = 0;
251
- var generateObject = jest.fn(function() {
252
- return _async_to_generator(function() {
253
- return _ts_generator(this, function(_state) {
254
- if (responseIndex >= responses.length) {
255
- throw new Error('No more mock responses available');
256
- }
257
- return [
258
- 2,
259
- responses[responseIndex++]
260
- ];
261
- });
262
- })();
263
- });
264
- return {
265
- generateObject: generateObject,
266
- mockResponses: function() {
267
- for(var _len = arguments.length, newResponses = new Array(_len), _key = 0; _key < _len; _key++){
268
- newResponses[_key] = arguments[_key];
269
- }
270
- var _responses;
271
- (_responses = responses).push.apply(_responses, _to_consumable_array(newResponses));
272
- },
273
- clearMocks: function() {
274
- responses.length = 0;
275
- responseIndex = 0;
276
- generateObject.mockClear();
277
- }
278
- };
279
- }
280
- export function runBrainTest(brain, options) {
281
- return _async_to_generator(function() {
282
- var events, finalState, error, completed, runOptions, _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, event, err, err1;
283
- return _ts_generator(this, function(_state) {
284
- switch(_state.label){
285
- case 0:
286
- events = [];
287
- finalState = (options === null || options === void 0 ? void 0 : options.initialState) || {};
288
- error = null;
289
- completed = false;
290
- _state.label = 1;
291
- case 1:
292
- _state.trys.push([
293
- 1,
294
- 14,
295
- ,
296
- 15
297
- ]);
298
- runOptions = _object_spread_props(_object_spread({}, options), {
299
- state: options === null || options === void 0 ? void 0 : options.initialState
300
- });
301
- _iteratorAbruptCompletion = false, _didIteratorError = false;
302
- _state.label = 2;
303
- case 2:
304
- _state.trys.push([
305
- 2,
306
- 7,
307
- 8,
308
- 13
309
- ]);
310
- _iterator = _async_iterator(brain.run(runOptions));
311
- _state.label = 3;
312
- case 3:
313
- return [
314
- 4,
315
- _iterator.next()
316
- ];
317
- case 4:
318
- if (!(_iteratorAbruptCompletion = !(_step = _state.sent()).done)) return [
319
- 3,
320
- 6
321
- ];
322
- _value = _step.value;
323
- event = _value;
324
- events.push(event);
325
- if (event.type === BRAIN_EVENTS.STEP_COMPLETE) {
326
- finalState = applyPatches(finalState, [
327
- event.patch
328
- ]);
329
- } else if (event.type === BRAIN_EVENTS.ERROR) {
330
- error = new Error(event.error.message);
331
- } else if (event.type === BRAIN_EVENTS.COMPLETE) {
332
- completed = true;
333
- }
334
- _state.label = 5;
335
- case 5:
336
- _iteratorAbruptCompletion = false;
337
- return [
338
- 3,
339
- 3
340
- ];
341
- case 6:
342
- return [
343
- 3,
344
- 13
345
- ];
346
- case 7:
347
- err = _state.sent();
348
- _didIteratorError = true;
349
- _iteratorError = err;
350
- return [
351
- 3,
352
- 13
353
- ];
354
- case 8:
355
- _state.trys.push([
356
- 8,
357
- ,
358
- 11,
359
- 12
360
- ]);
361
- if (!(_iteratorAbruptCompletion && _iterator.return != null)) return [
362
- 3,
363
- 10
364
- ];
365
- return [
366
- 4,
367
- _iterator.return()
368
- ];
369
- case 9:
370
- _state.sent();
371
- _state.label = 10;
372
- case 10:
373
- return [
374
- 3,
375
- 12
376
- ];
377
- case 11:
378
- if (_didIteratorError) {
379
- throw _iteratorError;
380
- }
381
- return [
382
- 7
383
- ];
384
- case 12:
385
- return [
386
- 7
387
- ];
388
- case 13:
389
- return [
390
- 3,
391
- 15
392
- ];
393
- case 14:
394
- err1 = _state.sent();
395
- error = _instanceof(err1, Error) ? err1 : new Error(String(err1));
396
- return [
397
- 3,
398
- 15
399
- ];
400
- case 15:
401
- return [
402
- 2,
403
- {
404
- completed: completed,
405
- error: error,
406
- finalState: finalState,
407
- events: events
408
- }
409
- ];
410
- }
411
- });
412
- })();
413
- }
@@ -1,19 +0,0 @@
1
- import type { ObjectGenerator } from './clients/types.js';
2
- import type { BrainEvent } from './dsl/brain.js';
3
- export interface MockClient extends ObjectGenerator {
4
- mockResponses: (...responses: any[]) => void;
5
- clearMocks: () => void;
6
- }
7
- export declare function createMockClient(): MockClient;
8
- export interface BrainTestResult<TState> {
9
- completed: boolean;
10
- error: Error | null;
11
- finalState: TState;
12
- events: BrainEvent<any>[];
13
- }
14
- export declare function runBrainTest<TOptions extends object, TState extends object>(brain: any, options?: {
15
- client?: ObjectGenerator;
16
- initialState?: Partial<TState>;
17
- resources?: any;
18
- }): Promise<BrainTestResult<TState>>;
19
- //# sourceMappingURL=testing.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../src/testing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIjD,MAAM,WAAW,UAAW,SAAQ,eAAe;IACjD,aAAa,EAAE,CAAC,GAAG,SAAS,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAC7C,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,wBAAgB,gBAAgB,IAAI,UAAU,CAsB7C;AAED,MAAM,WAAW,eAAe,CAAC,MAAM;IACrC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;CAC3B;AAED,wBAAsB,YAAY,CAAC,QAAQ,SAAS,MAAM,EAAE,MAAM,SAAS,MAAM,EAC/E,KAAK,EAAE,GAAG,EACV,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,GAAG,CAAC;CACjB,GACA,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAiClC"}