@gesslar/actioneer 0.2.9 → 0.4.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gesslar/actioneer",
3
- "version": "0.2.9",
3
+ "version": "0.4.0",
4
4
  "description": "Ready? Set?? ACTION!! pew! pew! pew!",
5
5
  "main": "./src/index.js",
6
6
  "type": "module",
@@ -56,6 +56,6 @@
56
56
  "typescript": "^5.9.3"
57
57
  },
58
58
  "dependencies": {
59
- "@gesslar/toolkit": "^2.2.1"
59
+ "@gesslar/toolkit": "^2.7.1"
60
60
  }
61
61
  }
@@ -225,6 +225,27 @@ export default class ActionBuilder {
225
225
  return this
226
226
  }
227
227
 
228
+ /**
229
+ * Configure the action instance if not already set.
230
+ * Used to propagate parent action context to nested builders.
231
+ *
232
+ * @param {ActionBuilderAction} action The action instance to inherit.
233
+ * @returns {ActionBuilder} The builder instance for chaining.
234
+ */
235
+ withAction(action) {
236
+ if(!this.#action && action) {
237
+ this.#action = action
238
+
239
+ // Update all existing activity definitions that don't have an action
240
+ for(const [, def] of this.#activities) {
241
+ if(!def.action)
242
+ def.action = action
243
+ }
244
+ }
245
+
246
+ return this
247
+ }
248
+
228
249
  /**
229
250
  * Validates that an activity name has not been reused.
230
251
  *
@@ -129,8 +129,9 @@ export default class ActionRunner extends Piper {
129
129
  let settled
130
130
 
131
131
  if(activity.opKind === "ActionBuilder") {
132
- // Use parallel execution for ActionBuilder with concurrency control
133
- // pipe() now returns settled results
132
+ if(activity.action)
133
+ activity.op.withAction(activity.action)
134
+
134
135
  if(activity.hooks)
135
136
  activity.op.withHooks(activity.hooks)
136
137
 
@@ -188,6 +189,9 @@ export default class ActionRunner extends Piper {
188
189
  const opKind = activity.opKind
189
190
 
190
191
  if(opKind === "ActionBuilder") {
192
+ if(activity.action)
193
+ activity.op.withAction(activity.action)
194
+
191
195
  if(activity.hooks)
192
196
  activity.op.withHooks(activity.hooks)
193
197
 
@@ -205,6 +209,9 @@ export default class ActionRunner extends Piper {
205
209
  const result = await activity.run(context)
206
210
 
207
211
  if(Data.isType(result, "ActionBuilder")) {
212
+ if(activity.action)
213
+ result.withAction(activity.action)
214
+
208
215
  if(activity.hooks)
209
216
  result.withHooks(activity.hooks)
210
217
 
@@ -154,7 +154,7 @@ export default class Activity {
154
154
  await this.#hooks?.callHook("before", this.#name, context)
155
155
 
156
156
  // not a hook
157
- const result = await this.#op.call(this.#action,context)
157
+ const result = await this.#op.call(this.#action, context)
158
158
 
159
159
  // after hook
160
160
  await this.#hooks?.callHook("after", this.#name, context)
@@ -53,12 +53,14 @@ export default class ActionBuilder {
53
53
  * @param {ActionBuilderConfig} [config] Options
54
54
  */
55
55
  constructor(action?: ActionBuilderAction, { tag, debug }?: ActionBuilderConfig)
56
+ get tag(): symbol | null
56
57
  /**
57
58
  * Register an activity that the runner can execute.
58
59
  *
59
60
  * Overloads:
60
61
  * - do(name, op)
61
62
  * - do(name, kind, pred, opOrWrapper)
63
+ * - do(name, kind, splitter, rejoiner, opOrWrapper)
62
64
  *
63
65
  * @overload
64
66
  * @param {string|symbol} name Activity name
@@ -75,6 +77,16 @@ export default class ActionBuilder {
75
77
  * @returns {ActionBuilder}
76
78
  */
77
79
  do(name: string | symbol, kind: number, pred: (context: unknown) => boolean | Promise<boolean>, op: ActionFunction | import('./ActionWrapper.js').default): ActionBuilder
80
+ /**
81
+ * @overload
82
+ * @param {string|symbol} name Activity name
83
+ * @param {number} kind ACTIVITY.SPLIT flag.
84
+ * @param {(context: unknown) => unknown} splitter Splitter function for SPLIT mode.
85
+ * @param {(originalContext: unknown, splitResults: unknown) => unknown} rejoiner Rejoiner function for SPLIT mode.
86
+ * @param {ActionFunction|import("./ActionWrapper.js").default} op Operation or nested wrapper to execute.
87
+ * @returns {ActionBuilder}
88
+ */
89
+ do(name: string | symbol, kind: number, splitter: (context: unknown) => unknown, rejoiner: (originalContext: unknown, splitResults: unknown) => unknown, op: ActionFunction | import('./ActionWrapper.js').default): ActionBuilder
78
90
  /**
79
91
  * Configure hooks to be loaded from a file when the action is built.
80
92
  *
@@ -92,6 +104,14 @@ export default class ActionBuilder {
92
104
  * @throws {Sass} If hooks have already been configured with a different instance.
93
105
  */
94
106
  withHooks(hooks: import('./ActionHooks.js').default): ActionBuilder
107
+ /**
108
+ * Configure the action instance if not already set.
109
+ * Used to propagate parent action context to nested builders.
110
+ *
111
+ * @param {ActionBuilderAction} action The action instance to inherit.
112
+ * @returns {ActionBuilder} The builder instance for chaining.
113
+ */
114
+ withAction(action: ActionBuilderAction): ActionBuilder
95
115
  /**
96
116
  * Finalises the builder and returns a payload that can be consumed by the
97
117
  * runner.
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBuilder.d.ts","sourceRoot":"","sources":["../../lib/ActionBuilder.js"],"names":[],"mappings":"AAKA,kEAAkE;AAClE,uEAAuE;AAEvE;;GAEG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;;;;;GAQG;AAEH;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AACH;IAaE;;;;;OAKG;IACH,qBAHW,mBAAmB,mBACnB,mBAAmB,EAe7B;;;;;;;;;;;;;IASE,SACQ,MAAM,GAAC,MAAM,MACb,cAAc,GACZ,aAAa,CACzB;;;;;;;;;IAGE,SACQ,MAAM,GAAC,MAAM,QACb,MAAM,QACN,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC,MAC9C,cAAc,GAAC,OAAO,oBAAoB,EAAE,OAAO,GACjD,aAAa,CACzB;IA4CD;;;;;;;OAOG;IACH,yBALW,MAAM,aACN,MAAM,GACJ,aAAa,CAYzB;IAED;;;;;;OAMG;IACH,iBAJW,OAAO,kBAAkB,EAAE,OAAO,GAChC,aAAa,CAWzB;IAeD;;;;;OAKG;IACH,SAFa,OAAO,CAAC,OAAO,oBAAoB,EAAE,OAAO,CAAC,CAmBzD;;CAeF;2BA9Oa,OAAO,mBAAmB,EAAE,OAAO;4BACnC,cAAc,eAAe,EAAE,QAAQ;sBAGxC,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI;;;;;WAKjE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI;;;;;;;;;;;;;;;;;;;;YAYhC,mBAAmB,GAAC,IAAI;;;;WACxB,OAAO,GAAC,IAAI;;;;UACZ,MAAM,GAAC,MAAM;;;;QACb,cAAc,GAAC,OAAO,oBAAoB,EAAE,OAAO;;;;;;;;sBAEzC,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC;;6BAI/C,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC"}
1
+ {"version":3,"file":"ActionBuilder.d.ts","sourceRoot":"","sources":["../../lib/ActionBuilder.js"],"names":[],"mappings":"AAMA,kEAAkE;AAClE,uEAAuE;AAEvE;;GAEG;AAEH;;;;GAIG;AAEH;;;;GAIG;AAEH;;;;;;;;GAQG;AAEH;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AACH;IAaE;;;;;OAKG;IACH,qBAHW,mBAAmB,mBACnB,mBAAmB,EAe7B;IAED,yBAEC;;;;;;;;;;;;;;IAUE,SACQ,MAAM,GAAC,MAAM,MACb,cAAc,GACZ,aAAa,CACzB;;;;;;;;;IAGE,SACQ,MAAM,GAAC,MAAM,QACb,MAAM,QACN,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC,MAC9C,cAAc,GAAC,OAAO,oBAAoB,EAAE,OAAO,GACjD,aAAa,CACzB;;;;;;;;;;IAGE,SACQ,MAAM,GAAC,MAAM,QACb,MAAM,YACN,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,YAC7B,CAAC,eAAe,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,KAAK,OAAO,MAC5D,cAAc,GAAC,OAAO,oBAAoB,EAAE,OAAO,GACjD,aAAa,CACzB;IA0DD;;;;;;;OAOG;IACH,yBALW,MAAM,aACN,MAAM,GACJ,aAAa,CAYzB;IAED;;;;;;OAMG;IACH,iBAJW,OAAO,kBAAkB,EAAE,OAAO,GAChC,aAAa,CAgBzB;IAED;;;;;;OAMG;IACH,mBAHW,mBAAmB,GACjB,aAAa,CAczB;IAeD;;;;;OAKG;IACH,SAFa,OAAO,CAAC,OAAO,oBAAoB,EAAE,OAAO,CAAC,CAmBzD;;CAqBF;2BA3Sa,OAAO,mBAAmB,EAAE,OAAO;4BACnC,cAAc,eAAe,EAAE,QAAQ;sBAGxC,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI;;;;;WAKjE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI;;;;;;;;;;;;;;;;;;;;YAYhC,mBAAmB,GAAC,IAAI;;;;WACxB,OAAO,GAAC,IAAI;;;;UACZ,MAAM,GAAC,MAAM;;;;QACb,cAAc,GAAC,OAAO,oBAAoB,EAAE,OAAO;;;;;;;;sBAEzC,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC;;6BAI/C,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC"}
@@ -22,10 +22,12 @@ export default class ActionRunner extends Piper {
22
22
  constructor(actionBuilder: import('./ActionBuilder.js').default | null, { debug }?: ActionRunnerOptions)
23
23
  /**
24
24
  * Executes the configured action pipeline.
25
+ * Builds the ActionWrapper on first run and caches it for subsequent calls.
26
+ * Supports WHILE, UNTIL, and SPLIT activity kinds.
25
27
  *
26
28
  * @param {unknown} context - Seed value passed to the first activity.
27
- * @returns {Promise<unknown>} Final value produced by the pipeline, or null when a parallel stage reports failures.
28
- * @throws {Sass} When no activities are registered or required parallel builders are missing.
29
+ * @returns {Promise<unknown>} Final value produced by the pipeline.
30
+ * @throws {Sass} When no activities are registered, conflicting activity kinds are used, or execution fails.
29
31
  */
30
32
  run(context: unknown): Promise<unknown>
31
33
  #private
@@ -1 +1 @@
1
- {"version":3,"file":"ActionRunner.d.ts","sourceRoot":"","sources":["../../lib/ActionRunner.js"],"names":[],"mappings":"AAMA;;GAEG;AAEH;;;GAGG;AACH;;;;;;GAMG;AACH;IAUE;;;;;OAKG;IACH,2BAHW,OAAO,oBAAoB,EAAE,OAAO,GAAC,IAAI,cACzC,mBAAmB,EAgB7B;IAED;;;;;;OAMG;IACH,aAJW,OAAO,GACL,OAAO,CAAC,OAAO,CAAC,CA+C5B;;CA2CF;sBA5IY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI;;;;;;;kBAH7D,YAAY"}
1
+ {"version":3,"file":"ActionRunner.d.ts","sourceRoot":"","sources":["../../lib/ActionRunner.js"],"names":[],"mappings":"AAMA;;GAEG;AAEH;;;GAGG;AACH;;;;;;GAMG;AACH;IAaE;;;;;OAKG;IACH,2BAHW,OAAO,oBAAoB,EAAE,OAAO,GAAC,IAAI,cACzC,mBAAmB,EAkB7B;IAED;;;;;;;;OAQG;IACH,aAJW,OAAO,GACL,OAAO,CAAC,OAAO,CAAC,CAuG5B;;CA0FF;sBA1PY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI;;;;;;;kBAH7D,YAAY"}
@@ -1,6 +1,5 @@
1
1
  /**
2
- * Activity bit flags recognised by the builder. The flag decides
3
- * loop semantics for an activity.
2
+ *
4
3
  */
5
4
  export type ACTIVITY = number
6
5
  /** @typedef {import("./ActionHooks.js").default} ActionHooks */
@@ -10,24 +9,38 @@ export type ACTIVITY = number
10
9
  *
11
10
  * @readonly
12
11
  * @enum {number}
12
+ * @property {number} WHILE - Execute activity while predicate returns true (2)
13
+ * @property {number} UNTIL - Execute activity until predicate returns true (4)
14
+ * @property {number} SPLIT - Execute activity with split/rejoin pattern for parallel execution (8)
13
15
  */
14
16
  export const ACTIVITY: Readonly<{
15
17
  WHILE: number;
16
18
  UNTIL: number;
19
+ SPLIT: number;
17
20
  }>
18
21
  export default class Activity {
19
22
  /**
20
23
  * Construct an Activity definition wrapper.
21
24
  *
22
- * @param {{action: unknown, name: string, op: (context: unknown) => unknown|Promise<unknown>|unknown, kind?: number, pred?: (context: unknown) => boolean|Promise<boolean>, hooks?: ActionHooks}} init - Initial properties describing the activity operation, loop semantics, and predicate
25
+ * @param {object} init - Initial properties describing the activity operation, loop semantics, and predicate
26
+ * @param {unknown} init.action - Parent action instance
27
+ * @param {string|symbol} init.name - Activity identifier
28
+ * @param {(context: unknown) => unknown|Promise<unknown>|import("./ActionBuilder.js").default} init.op - Operation to execute
29
+ * @param {number} [init.kind] - Optional loop semantics flags
30
+ * @param {(context: unknown) => boolean|Promise<boolean>} [init.pred] - Optional predicate for WHILE/UNTIL
31
+ * @param {ActionHooks} [init.hooks] - Optional hooks instance
32
+ * @param {(context: unknown) => unknown} [init.splitter] - Optional splitter function for SPLIT activities
33
+ * @param {(originalContext: unknown, splitResults: unknown) => unknown} [init.rejoiner] - Optional rejoiner function for SPLIT activities
23
34
  */
24
- constructor({ action, name, op, kind, pred, hooks }: {
35
+ constructor({ action, name, op, kind, pred, hooks, splitter, rejoiner }: {
25
36
  action: unknown;
26
- name: string;
27
- op: (context: unknown) => unknown | Promise<unknown> | unknown;
28
- kind?: number;
29
- pred?: (context: unknown) => boolean | Promise<boolean>;
30
- hooks?: ActionHooks;
37
+ name: string | symbol;
38
+ op: (context: unknown) => unknown | Promise<unknown> | import('./ActionBuilder.js').default;
39
+ kind?: number | undefined;
40
+ pred?: ((context: unknown) => boolean | Promise<boolean>) | undefined;
41
+ hooks?: import('./ActionHooks.js').default | undefined;
42
+ splitter?: ((context: unknown) => unknown) | undefined;
43
+ rejoiner?: ((originalContext: unknown, splitResults: unknown) => unknown) | undefined;
31
44
  })
32
45
  /**
33
46
  * The activity name.
@@ -48,17 +61,35 @@ export default class Activity {
48
61
  */
49
62
  get pred(): (context: unknown) => boolean | Promise<boolean> | undefined
50
63
  /**
51
- * The operator kind name (Function or ActionWrapper).
64
+ * The current context (if set).
65
+ *
66
+ * @returns {unknown} Current context value
67
+ */
68
+ get context(): unknown
69
+ /**
70
+ * The operator kind name (Function or ActionBuilder).
52
71
  *
53
72
  * @returns {string} - Kind name extracted via Data.typeOf
54
73
  */
55
74
  get opKind(): string
56
75
  /**
57
- * The operator to execute (function or nested wrapper).
76
+ * The operator to execute (function or nested ActionBuilder).
58
77
  *
59
- * @returns {unknown} - Activity operation
78
+ * @returns {(context: unknown) => unknown|Promise<unknown>|import("./ActionBuilder.js").default} - Activity operation
60
79
  */
61
- get op(): unknown
80
+ get op(): (context: unknown) => unknown | Promise<unknown> | import('./ActionBuilder.js').default
81
+ /**
82
+ * The splitter function for SPLIT activities.
83
+ *
84
+ * @returns {((context: unknown) => unknown)|null} Splitter function or null
85
+ */
86
+ get splitter(): ((context: unknown) => unknown) | null
87
+ /**
88
+ * The rejoiner function for SPLIT activities.
89
+ *
90
+ * @returns {((originalContext: unknown, splitResults: unknown) => unknown)|null} Rejoiner function or null
91
+ */
92
+ get rejoiner(): ((originalContext: unknown, splitResults: unknown) => unknown) | null
62
93
  /**
63
94
  * The action instance this activity belongs to.
64
95
  *
@@ -69,18 +100,22 @@ export default class Activity {
69
100
  * Execute the activity with before/after hooks.
70
101
  *
71
102
  * @param {unknown} context - Mutable context flowing through the pipeline
72
- * @returns {Promise<{activityResult: unknown}>} - Activity result wrapper with new context
103
+ * @returns {Promise<unknown>} - Activity result
73
104
  */
74
- run(context: unknown): Promise<{
75
- activityResult: unknown;
76
- }>
105
+ run(context: unknown): Promise<unknown>
77
106
  /**
78
107
  * Attach hooks to this activity instance.
79
108
  *
80
- * @param {unknown} hooks - Hooks instance with optional before$/after$ methods
109
+ * @param {ActionHooks} hooks - Hooks instance with optional before$/after$ methods
81
110
  * @returns {this} - This activity for chaining
82
111
  */
83
- setActionHooks(hooks: unknown): this
112
+ setActionHooks(hooks: ActionHooks): this
113
+ /**
114
+ * Get the hooks instance attached to this activity.
115
+ *
116
+ * @returns {ActionHooks|null} The hooks instance or null
117
+ */
118
+ get hooks(): ActionHooks | null
84
119
  #private
85
120
  }
86
121
  export type ActionHooks = import('./ActionHooks.js').default
@@ -1 +1 @@
1
- {"version":3,"file":"Activity.d.ts","sourceRoot":"","sources":["../../lib/Activity.js"],"names":[],"mappings":";;;;uBASU,MAAM;AAPhB,gEAAgE;AAEhE;;;;;;GAMG;AACH;;;GAGE;AAEF;IAQE;;;;OAIG;IACH,qDAFW;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC,GAAC,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAAC,KAAK,CAAC,EAAE,WAAW,CAAA;KAAC,EAShM;IAED;;;;OAIG;IACH,YAFa,MAAM,CAIlB;IAED;;;;OAIG;IACH,YAFa,MAAM,GAAC,IAAI,CAIvB;IAED;;;;OAIG;IACH,YAFa,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC,GAAC,SAAS,CAIpE;IAED;;;;OAIG;IACH,cAFa,MAAM,CAIlB;IAED;;;;OAIG;IACH,UAFa,OAAO,CAInB;IAED;;;;OAIG;IACH,cAFa,OAAO,CAInB;IAED;;;;;OAKG;IACH,aAHW,OAAO,GACL,OAAO,CAAC;QAAC,cAAc,EAAE,OAAO,CAAA;KAAC,CAAC,CAa9C;IAED;;;;;OAKG;IACH,sBAHW,OAAO,GACL,IAAI,CAOhB;;CACF;0BAzHa,OAAO,kBAAkB,EAAE,OAAO"}
1
+ {"version":3,"file":"Activity.d.ts","sourceRoot":"","sources":["../../lib/Activity.js"],"names":[],"mappings":";;;uBASU,MAAM;AAPhB,gEAAgE;AAEhE;;;;;;;;;GASG;AACH;;;;GAIE;AAEF;IAoBE;;;;;;;;;;;;OAYG;IACH,yEATG;QAAsB,MAAM,EAApB,OAAO;QACa,IAAI,EAAxB,MAAM,GAAC,MAAM;QAC6E,EAAE,EAA5F,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC,GAAC,OAAO,oBAAoB,EAAE,OAAO;QACrE,IAAI;QACoC,IAAI,cAAhD,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC;QAC3B,KAAK;QACa,QAAQ,cAAnC,OAAO,KAAK,OAAO;QACuC,QAAQ,sBAA1D,OAAO,gBAAgB,OAAO,KAAK,OAAO;KACtE,EAUA;IAED;;;;OAIG;IACH,YAFa,MAAM,CAIlB;IAED;;;;OAIG;IACH,YAFa,MAAM,GAAC,IAAI,CAIvB;IAED;;;;OAIG;IACH,YAFa,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC,GAAC,SAAS,CAIpE;IAED;;;;OAIG;IACH,eAFa,OAAO,CAInB;IAED;;;;OAIG;IACH,cAFa,MAAM,CAIlB;IAED;;;;OAIG;IACH,UAFa,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,GAAC,OAAO,CAAC,OAAO,CAAC,GAAC,OAAO,oBAAoB,EAAE,OAAO,CAI/F;IAED;;;;OAIG;IACH,gBAFa,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,GAAC,IAAI,CAIhD;IAED;;;;OAIG;IACH,gBAFa,CAAC,CAAC,eAAe,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,KAAK,OAAO,CAAC,GAAC,IAAI,CAI/E;IAED;;;;OAIG;IACH,cAFa,OAAO,CAInB;IAED;;;;;OAKG;IACH,aAHW,OAAO,GACL,OAAO,CAAC,OAAO,CAAC,CAa5B;IAED;;;;;OAKG;IACH,sBAHW,WAAW,GACT,IAAI,CAOhB;IAED;;;;OAIG;IACH,aAFa,WAAW,GAAC,IAAI,CAI5B;;CACF;0BAvLa,OAAO,kBAAkB,EAAE,OAAO"}
@@ -40,9 +40,13 @@ export default class Piper {
40
40
  *
41
41
  * @param {Array<unknown>|unknown} items - Items to process
42
42
  * @param {number} maxConcurrent - Maximum concurrent items to process
43
- * @returns {Promise<Array<unknown>>} - Collected results from steps
43
+ * @returns {Promise<Array<{status: string, value?: unknown, reason?: unknown}>>} - Settled results from processing
44
44
  */
45
- pipe(items: Array<unknown> | unknown, maxConcurrent?: number): Promise<Array<unknown>>
45
+ pipe(items: Array<unknown> | unknown, maxConcurrent?: number): Promise<Array<{
46
+ status: string;
47
+ value?: unknown;
48
+ reason?: unknown;
49
+ }>>
46
50
  #private
47
51
  }
48
52
  //# sourceMappingURL=Piper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Piper.d.ts","sourceRoot":"","sources":["../../lib/Piper.js"],"names":[],"mappings":"AAaA;IASE;;;;OAIG;IACH,wBAFW;QAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,CAAA;KAAC,EAItF;IAED;;;;;;;OAOG;IACH,YALW,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,GAAC,OAAO,YAC9C;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAC,YACnC,OAAO,GACL,KAAK,CAWjB;IAED;;;;;;OAMG;IACH,aAJW,MAAM,OAAO,CAAC,IAAI,CAAC,GAAC,IAAI,YACxB,OAAO,GACL,KAAK,CAMjB;IAED;;;;;;OAMG;IACH,eAJW,MAAM,OAAO,CAAC,IAAI,CAAC,GAAC,IAAI,YACxB,OAAO,GACL,KAAK,CAMjB;IAED;;;;;;OAMG;IACH,YAJW,KAAK,CAAC,OAAO,CAAC,GAAC,OAAO,kBACtB,MAAM,GACJ,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAiDnC;;CAwCF"}
1
+ {"version":3,"file":"Piper.d.ts","sourceRoot":"","sources":["../../lib/Piper.js"],"names":[],"mappings":"AAaA;IASE;;;;OAIG;IACH,wBAFW;QAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,CAAA;KAAC,EAItF;IAED;;;;;;;OAOG;IACH,YALW,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,GAAC,OAAO,YAC9C;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAC,YACnC,OAAO,GACL,KAAK,CAWjB;IAED;;;;;;OAMG;IACH,aAJW,MAAM,OAAO,CAAC,IAAI,CAAC,GAAC,IAAI,YACxB,OAAO,GACL,KAAK,CAMjB;IAED;;;;;;OAMG;IACH,eAJW,MAAM,OAAO,CAAC,IAAI,CAAC,GAAC,IAAI,YACxB,OAAO,GACL,KAAK,CAMjB;IAED;;;;;;OAMG;IACH,YAJW,KAAK,CAAC,OAAO,CAAC,GAAC,OAAO,kBACtB,MAAM,GACJ,OAAO,CAAC,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAC,CAAC,CAAC,CAuD/E;;CAyCF"}