@positronic/core 0.0.8 → 0.0.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.
- package/dist/src/dsl/brain.js +26 -18
- package/dist/types/adapters/types.d.ts +2 -1
- package/dist/types/adapters/types.d.ts.map +1 -1
- package/dist/types/dsl/brain-runner.d.ts +2 -2
- package/dist/types/dsl/brain-runner.d.ts.map +1 -1
- package/dist/types/dsl/brain.d.ts +17 -17
- package/dist/types/dsl/brain.d.ts.map +1 -1
- package/package.json +1 -5
- package/dist/src/testing.js +0 -413
- package/dist/types/testing.d.ts +0 -19
- package/dist/types/testing.d.ts.map +0 -1
package/dist/src/dsl/brain.js
CHANGED
|
@@ -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,
|
|
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
|
-
|
|
573
|
-
|
|
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:
|
|
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
|
-
|
|
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,
|
|
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
|
|
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;
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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;
|
|
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.
|
|
3
|
+
"version": "0.0.11",
|
|
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": {
|
package/dist/src/testing.js
DELETED
|
@@ -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
|
-
}
|
package/dist/types/testing.d.ts
DELETED
|
@@ -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"}
|