@memberjunction/actions 5.51.0 → 6.1.0-edge.1
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/LICENSE +7 -0
- package/dist/entity-actions/EntityActionDispatchGuard.d.ts +58 -0
- package/dist/entity-actions/EntityActionDispatchGuard.d.ts.map +1 -0
- package/dist/entity-actions/EntityActionDispatchGuard.js +148 -0
- package/dist/entity-actions/EntityActionDispatchGuard.js.map +1 -0
- package/dist/entity-actions/EntityActionInvocationTypes.d.ts +10 -1
- package/dist/entity-actions/EntityActionInvocationTypes.d.ts.map +1 -1
- package/dist/entity-actions/EntityActionInvocationTypes.js +45 -4
- package/dist/entity-actions/EntityActionInvocationTypes.js.map +1 -1
- package/dist/generic/ActionEngine.d.ts +72 -6
- package/dist/generic/ActionEngine.d.ts.map +1 -1
- package/dist/generic/ActionEngine.js +162 -27
- package/dist/generic/ActionEngine.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +18 -17
package/LICENSE
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
ISC License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 MemberJunction
|
|
4
|
+
|
|
5
|
+
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
|
|
6
|
+
|
|
7
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { BaseSingleton } from '@memberjunction/global';
|
|
2
|
+
/** What the guard decided to do with a dispatch. */
|
|
3
|
+
export type EntityActionDispatchOutcome =
|
|
4
|
+
/** It ran (possibly followed by coalesced reruns). */
|
|
5
|
+
'Ran'
|
|
6
|
+
/** The action was re-entering itself on the same record; dropped. */
|
|
7
|
+
| 'Suppressed'
|
|
8
|
+
/** A run for this key was already in flight; folded into one pending rerun. */
|
|
9
|
+
| 'Coalesced';
|
|
10
|
+
/**
|
|
11
|
+
* The identity a dispatch is guarded by. Record-level rather than entity-level on purpose: two
|
|
12
|
+
* different invoices changing at once are unrelated events and must not block each other.
|
|
13
|
+
*/
|
|
14
|
+
export declare function BuildEntityActionDispatchKey(entityActionID: string, entityID: string, recordKey: string): string;
|
|
15
|
+
/**
|
|
16
|
+
* Guards automatic entity-action dispatch against self-triggering and save bursts.
|
|
17
|
+
*
|
|
18
|
+
* Process-scoped. Two servers behind a load balancer each hold their own view, which is correct for
|
|
19
|
+
* the burst case (each coalesces its own traffic) and is the reason the durable case needs the
|
|
20
|
+
* explicit marker rather than this.
|
|
21
|
+
*/
|
|
22
|
+
export declare class EntityActionDispatchGuard extends BaseSingleton<EntityActionDispatchGuard> {
|
|
23
|
+
static get Instance(): EntityActionDispatchGuard;
|
|
24
|
+
/**
|
|
25
|
+
* The set of dispatch keys currently executing *above* this point in the async call tree.
|
|
26
|
+
* A set rather than a single value because actions legitimately chain: A on record 1 may save
|
|
27
|
+
* record 2 and fire B, and B must still be able to detect re-entry into A.
|
|
28
|
+
*/
|
|
29
|
+
private originStack;
|
|
30
|
+
private inFlight;
|
|
31
|
+
/** True when this key is already executing somewhere up the current async call tree. */
|
|
32
|
+
IsSelfTriggered(key: string): boolean;
|
|
33
|
+
/** True when a run for this key is executing anywhere in this process. */
|
|
34
|
+
IsInFlight(key: string): boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Run an automatic entity-action dispatch under the guard.
|
|
37
|
+
*
|
|
38
|
+
* @param key from {@link BuildEntityActionDispatchKey}
|
|
39
|
+
* @param run the dispatch itself; invoked at most once per call, possibly later than the call
|
|
40
|
+
* @returns what the guard decided. `'Ran'` resolves only after the run and any coalesced
|
|
41
|
+
* reruns have finished, so a caller that awaits it awaits the whole settled chain.
|
|
42
|
+
*/
|
|
43
|
+
Dispatch(key: string, run: () => Promise<unknown>): Promise<EntityActionDispatchOutcome>;
|
|
44
|
+
/** Run `fn` with `key` pushed onto the ambient origin stack. */
|
|
45
|
+
private runWithOrigin;
|
|
46
|
+
/**
|
|
47
|
+
* Run whatever queued up while the slot was busy, until nothing is left.
|
|
48
|
+
*
|
|
49
|
+
* Deliberately uncapped: each iteration means real dispatches arrived while the previous run was
|
|
50
|
+
* executing, so stopping early would silently drop work. It terminates because arrivals stop —
|
|
51
|
+
* and the case that would *not* terminate, an action re-triggering itself, never reaches here
|
|
52
|
+
* (it is suppressed above). The threshold log exists so a chain that does run away is visible.
|
|
53
|
+
*/
|
|
54
|
+
private drain;
|
|
55
|
+
/** Drops all in-flight bookkeeping. For tests — never call this from application code. */
|
|
56
|
+
ResetForTesting(): void;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=EntityActionDispatchGuard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntityActionDispatchGuard.d.ts","sourceRoot":"","sources":["../../src/entity-actions/EntityActionDispatchGuard.ts"],"names":[],"mappings":"AAoCA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,oDAAoD;AACpD,MAAM,MAAM,2BAA2B;AACnC,sDAAsD;AACpD,KAAK;AACP,qEAAqE;GACnE,YAAY;AACd,+EAA+E;GAC7E,WAAW,CAAC;AAElB;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEhH;AAeD;;;;;;GAMG;AACH,qBAAa,yBAA0B,SAAQ,aAAa,CAAC,yBAAyB,CAAC;IACnF,WAAkB,QAAQ,IAAI,yBAAyB,CAEtD;IAED;;;;OAIG;IACH,OAAO,CAAC,WAAW,CAAgD;IAEnE,OAAO,CAAC,QAAQ,CAAoC;IAEpD,wFAAwF;IACjF,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI5C,0EAA0E;IACnE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIvC;;;;;;;OAOG;IACU,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA6BrG,gEAAgE;IAChE,OAAO,CAAC,aAAa;IAOrB;;;;;;;OAOG;YACW,KAAK;IAmBnB,0FAA0F;IACnF,eAAe,IAAI,IAAI;CAGjC"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Re-entrancy and burst control for automatically-dispatched entity actions.
|
|
3
|
+
*
|
|
4
|
+
* **The problem.** An entity action that runs on `AfterUpdate` and writes back to the record that
|
|
5
|
+
* triggered it re-fires itself, forever. This is not an exotic case — it is the *normal* shape of
|
|
6
|
+
* every enrich-and-write-back automation: "when a ticket changes, summarize it and store the
|
|
7
|
+
* summary" saves the ticket. The same is true of a workflow bound to an entity-change trigger whose
|
|
8
|
+
* graph touches the record it was started by.
|
|
9
|
+
*
|
|
10
|
+
* A second, quieter problem shares the same key: a record saved ten times in a second launches ten
|
|
11
|
+
* overlapping runs of the same after-save action, each reading a state the next one invalidates.
|
|
12
|
+
*
|
|
13
|
+
* **The mechanism.** Every automatic dispatch is keyed by
|
|
14
|
+
* `(entity action, entity, record)` — the identity that both problems are about.
|
|
15
|
+
*
|
|
16
|
+
* - **Self-trigger → suppress.** A dispatch that arrives while its own key is on the origin stack
|
|
17
|
+
* is the action re-entering itself, and is dropped. Deferring it instead would turn an infinite
|
|
18
|
+
* loop into an infinite *sequence*, which is no better.
|
|
19
|
+
* - **Overlap → coalesce, latest wins.** A dispatch for a key that is merely in flight (not on the
|
|
20
|
+
* origin stack — so it came from somewhere else) does not stack. It sets a rerun flag, and one
|
|
21
|
+
* more run happens after the current one finishes. A burst of saves collapses to at most one
|
|
22
|
+
* pending run, and that run sees the final state rather than a stale one.
|
|
23
|
+
*
|
|
24
|
+
* Origin tracking uses `AsyncLocalStorage`, so it propagates through every `await` inside an
|
|
25
|
+
* action — including an agent run, its sub-agents, and any action they invoke — without a single
|
|
26
|
+
* call site having to pass anything down.
|
|
27
|
+
*
|
|
28
|
+
* **Known limit: a durable hop escapes the ambient context.** When work detaches to another process
|
|
29
|
+
* or a later moment (a task graph handed to the dispatcher, a queued job), the origin stack does not
|
|
30
|
+
* travel with it, so a write-back from there is indistinguishable from a user's edit. For those
|
|
31
|
+
* paths the origin must be declared explicitly — `EntitySaveOptions.OriginatingEntityActionIDs`
|
|
32
|
+
* exists for exactly that, and carries the same meaning.
|
|
33
|
+
*
|
|
34
|
+
* @module @memberjunction/actions
|
|
35
|
+
*/
|
|
36
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
37
|
+
import { BaseSingleton } from '@memberjunction/global';
|
|
38
|
+
import { LogStatus } from '@memberjunction/core';
|
|
39
|
+
/**
|
|
40
|
+
* The identity a dispatch is guarded by. Record-level rather than entity-level on purpose: two
|
|
41
|
+
* different invoices changing at once are unrelated events and must not block each other.
|
|
42
|
+
*/
|
|
43
|
+
export function BuildEntityActionDispatchKey(entityActionID, entityID, recordKey) {
|
|
44
|
+
return `${entityActionID}|${entityID}|${recordKey}`.toLowerCase();
|
|
45
|
+
}
|
|
46
|
+
/** Reruns after which a sustained rerun chain is worth a log line. Not a cap — see `drain`. */
|
|
47
|
+
const RERUN_WARN_THRESHOLD = 10;
|
|
48
|
+
/**
|
|
49
|
+
* Guards automatic entity-action dispatch against self-triggering and save bursts.
|
|
50
|
+
*
|
|
51
|
+
* Process-scoped. Two servers behind a load balancer each hold their own view, which is correct for
|
|
52
|
+
* the burst case (each coalesces its own traffic) and is the reason the durable case needs the
|
|
53
|
+
* explicit marker rather than this.
|
|
54
|
+
*/
|
|
55
|
+
export class EntityActionDispatchGuard extends BaseSingleton {
|
|
56
|
+
constructor() {
|
|
57
|
+
super(...arguments);
|
|
58
|
+
/**
|
|
59
|
+
* The set of dispatch keys currently executing *above* this point in the async call tree.
|
|
60
|
+
* A set rather than a single value because actions legitimately chain: A on record 1 may save
|
|
61
|
+
* record 2 and fire B, and B must still be able to detect re-entry into A.
|
|
62
|
+
*/
|
|
63
|
+
this.originStack = new AsyncLocalStorage();
|
|
64
|
+
this.inFlight = new Map();
|
|
65
|
+
}
|
|
66
|
+
static get Instance() {
|
|
67
|
+
return super.getInstance();
|
|
68
|
+
}
|
|
69
|
+
/** True when this key is already executing somewhere up the current async call tree. */
|
|
70
|
+
IsSelfTriggered(key) {
|
|
71
|
+
return this.originStack.getStore()?.has(key) ?? false;
|
|
72
|
+
}
|
|
73
|
+
/** True when a run for this key is executing anywhere in this process. */
|
|
74
|
+
IsInFlight(key) {
|
|
75
|
+
return this.inFlight.has(key);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Run an automatic entity-action dispatch under the guard.
|
|
79
|
+
*
|
|
80
|
+
* @param key from {@link BuildEntityActionDispatchKey}
|
|
81
|
+
* @param run the dispatch itself; invoked at most once per call, possibly later than the call
|
|
82
|
+
* @returns what the guard decided. `'Ran'` resolves only after the run and any coalesced
|
|
83
|
+
* reruns have finished, so a caller that awaits it awaits the whole settled chain.
|
|
84
|
+
*/
|
|
85
|
+
async Dispatch(key, run) {
|
|
86
|
+
if (this.IsSelfTriggered(key)) {
|
|
87
|
+
// The action wrote back to the record that triggered it. Dropping the dispatch is the
|
|
88
|
+
// only outcome that terminates; queuing it would just move the loop.
|
|
89
|
+
return 'Suppressed';
|
|
90
|
+
}
|
|
91
|
+
const existing = this.inFlight.get(key);
|
|
92
|
+
if (existing) {
|
|
93
|
+
// Latest wins: whatever was pending is replaced, because the newer dispatch reflects a
|
|
94
|
+
// newer state of the record and running both would only re-read the same final row.
|
|
95
|
+
existing.RerunPending = true;
|
|
96
|
+
existing.LatestRun = run;
|
|
97
|
+
return 'Coalesced';
|
|
98
|
+
}
|
|
99
|
+
const entry = { RerunPending: false, LatestRun: null, RerunCount: 0 };
|
|
100
|
+
this.inFlight.set(key, entry);
|
|
101
|
+
try {
|
|
102
|
+
await this.runWithOrigin(key, run);
|
|
103
|
+
await this.drain(key, entry);
|
|
104
|
+
}
|
|
105
|
+
finally {
|
|
106
|
+
// Released only here — arrivals during the drain coalesce onto this same slot, which is
|
|
107
|
+
// what keeps a burst collapsed instead of alternating run/queue/run.
|
|
108
|
+
this.inFlight.delete(key);
|
|
109
|
+
}
|
|
110
|
+
return 'Ran';
|
|
111
|
+
}
|
|
112
|
+
/** Run `fn` with `key` pushed onto the ambient origin stack. */
|
|
113
|
+
runWithOrigin(key, fn) {
|
|
114
|
+
const parent = this.originStack.getStore();
|
|
115
|
+
const scope = new Set(parent ?? []);
|
|
116
|
+
scope.add(key);
|
|
117
|
+
return this.originStack.run(scope, fn);
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Run whatever queued up while the slot was busy, until nothing is left.
|
|
121
|
+
*
|
|
122
|
+
* Deliberately uncapped: each iteration means real dispatches arrived while the previous run was
|
|
123
|
+
* executing, so stopping early would silently drop work. It terminates because arrivals stop —
|
|
124
|
+
* and the case that would *not* terminate, an action re-triggering itself, never reaches here
|
|
125
|
+
* (it is suppressed above). The threshold log exists so a chain that does run away is visible.
|
|
126
|
+
*/
|
|
127
|
+
async drain(key, entry) {
|
|
128
|
+
while (entry.RerunPending) {
|
|
129
|
+
entry.RerunPending = false;
|
|
130
|
+
const next = entry.LatestRun;
|
|
131
|
+
entry.LatestRun = null;
|
|
132
|
+
if (!next) {
|
|
133
|
+
break;
|
|
134
|
+
}
|
|
135
|
+
entry.RerunCount++;
|
|
136
|
+
if (entry.RerunCount === RERUN_WARN_THRESHOLD) {
|
|
137
|
+
LogStatus(`[EntityActionDispatchGuard] ${RERUN_WARN_THRESHOLD} coalesced reruns for ${key} — ` +
|
|
138
|
+
`the record is being saved faster than its after-save action completes.`);
|
|
139
|
+
}
|
|
140
|
+
await this.runWithOrigin(key, next);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
/** Drops all in-flight bookkeeping. For tests — never call this from application code. */
|
|
144
|
+
ResetForTesting() {
|
|
145
|
+
this.inFlight.clear();
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=EntityActionDispatchGuard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntityActionDispatchGuard.js","sourceRoot":"","sources":["../../src/entity-actions/EntityActionDispatchGuard.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MJActionParamEntity, MJEntityActionParamEntity } from "@memberjunction/core-entities";
|
|
2
2
|
import { BaseEntity } from "@memberjunction/core";
|
|
3
|
-
import { ActionParam, ActionResult, EntityActionInvocationParams, EntityActionResult } from "@memberjunction/actions-base";
|
|
3
|
+
import { ActionInvocationProvenance, ActionParam, ActionResult, EntityActionInvocationParams, EntityActionResult } from "@memberjunction/actions-base";
|
|
4
4
|
/**
|
|
5
5
|
* Base class for invocation of any entity action invocation type
|
|
6
6
|
*/
|
|
@@ -13,6 +13,15 @@ export declare abstract class EntityActionInvocationBase {
|
|
|
13
13
|
*/
|
|
14
14
|
FindActionParam(allParams: MJActionParamEntity[], valueType: "Scalar" | "Simple Object" | "BaseEntity Sub-Class" | "Other"): MJActionParamEntity;
|
|
15
15
|
MapActionResultToEntityActionResult(result: ActionResult): EntityActionResult;
|
|
16
|
+
/**
|
|
17
|
+
* Builds the {@link ActionInvocationProvenance} for a dispatch: which binding fired, from which
|
|
18
|
+
* lifecycle event, against which record. Stamped onto `ActionExecutionLog` so a workflow failure is
|
|
19
|
+
* diagnosable without correlating by timestamp, and used by the redaction rules — the binding's
|
|
20
|
+
* `EntityActionParam` rows are what carry `ValueType` and the per-binding `LogValue` override.
|
|
21
|
+
*
|
|
22
|
+
* @param entityObject the record the run operates on; omitted for a dispatch not yet resolved to one.
|
|
23
|
+
*/
|
|
24
|
+
BuildProvenance(params: EntityActionInvocationParams, entityObject?: BaseEntity): ActionInvocationProvenance;
|
|
16
25
|
/**
|
|
17
26
|
* This method will map the Entity Action Params to the Action Params and where needed evaluate scripts to get the run-time values that need
|
|
18
27
|
* to get passed to the Action.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityActionInvocationTypes.d.ts","sourceRoot":"","sources":["../../src/entity-actions/EntityActionInvocationTypes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,4BAA4B,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"EntityActionInvocationTypes.d.ts","sourceRoot":"","sources":["../../src/entity-actions/EntityActionInvocationTypes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAqB,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,0BAA0B,EAAE,WAAW,EAAE,YAAY,EAAE,4BAA4B,EAAE,kBAAkB,EAA2D,MAAM,8BAA8B,CAAC;AAGhN;;GAEG;AACH,8BAAsB,0BAA0B;aAC5B,YAAY,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAE/F;;;;OAIG;IACI,eAAe,CAAC,SAAS,EAAE,mBAAmB,EAAE,EAAE,SAAS,EAAE,QAAQ,GAAG,eAAe,GAAG,sBAAsB,GAAG,OAAO,GAAG,mBAAmB;IAIhJ,mCAAmC,CAAC,MAAM,EAAE,YAAY,GAAG,kBAAkB;IAUpF;;;;;;;OAOG;IACI,eAAe,CAAC,MAAM,EAAE,4BAA4B,EAAE,YAAY,CAAC,EAAE,UAAU,GAAG,0BAA0B;IAcnH;;;;;;;OAOG;IACU,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,EAAE,YAAY,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IA8CxJ,OAAO,CAAC,YAAY,CAAuF;IAE3G;;;;;;OAMG;IACU,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;CAyBlH;AAED;;GAEG;AACH,qBAQa,kCAAmC,SAAQ,0BAA0B;IACjE,cAAc,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,OAAO,CAAC;IAQtE,YAAY,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAqC/F;AAED;;;;;GAKG;AACH,qBAEa,qCAAsC,SAAQ,0BAA0B;IACpE,cAAc,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBtE,YAAY,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAyC5F;;;OAGG;cACa,aAAa,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAW1F,0DAA0D;cAC1C,kBAAkB,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAY/F,mFAAmF;cACnE,kBAAkB,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAwC/F,4FAA4F;IAC5F,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAItD;AAED;;GAEG;AACH,qBACa,8BAA+B,SAAQ,kCAAkC;IAC5D,YAAY,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAwBxG"}
|
|
@@ -6,6 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { MJGlobal, MJLruCache, RegisterClass, SafeJSONParse, UUIDsEqual } from "@memberjunction/global";
|
|
8
8
|
import { Metadata, RunView } from "@memberjunction/core";
|
|
9
|
+
import { IsEntityActionInScope, ResolveEntityActionScopeResolver } from "@memberjunction/actions-base";
|
|
9
10
|
import { ActionEngineServer } from "../generic/ActionEngine.js";
|
|
10
11
|
/**
|
|
11
12
|
* Base class for invocation of any entity action invocation type
|
|
@@ -32,6 +33,27 @@ export class EntityActionInvocationBase {
|
|
|
32
33
|
LogEntry: result.LogEntry
|
|
33
34
|
};
|
|
34
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Builds the {@link ActionInvocationProvenance} for a dispatch: which binding fired, from which
|
|
38
|
+
* lifecycle event, against which record. Stamped onto `ActionExecutionLog` so a workflow failure is
|
|
39
|
+
* diagnosable without correlating by timestamp, and used by the redaction rules — the binding's
|
|
40
|
+
* `EntityActionParam` rows are what carry `ValueType` and the per-binding `LogValue` override.
|
|
41
|
+
*
|
|
42
|
+
* @param entityObject the record the run operates on; omitted for a dispatch not yet resolved to one.
|
|
43
|
+
*/
|
|
44
|
+
BuildProvenance(params, entityObject) {
|
|
45
|
+
return {
|
|
46
|
+
EntityActionID: params.EntityAction?.ID,
|
|
47
|
+
EntityActionInvocationTypeID: params.InvocationType?.ID,
|
|
48
|
+
TargetEntityID: params.EntityAction?.EntityID,
|
|
49
|
+
// ToConcatenatedString(), not ToString(): "ID|abc123" is MJ's canonical serialized
|
|
50
|
+
// record-ID format (the same one RecordChange.RecordID uses), so TargetRecordID lines
|
|
51
|
+
// up with every other persisted record pointer. ToString() is a display format.
|
|
52
|
+
TargetRecordID: entityObject?.PrimaryKey?.ToConcatenatedString(),
|
|
53
|
+
LoggingMode: params.EntityAction?.LoggingMode,
|
|
54
|
+
EntityActionParams: params.EntityAction?.Params
|
|
55
|
+
};
|
|
56
|
+
}
|
|
35
57
|
/**
|
|
36
58
|
* This method will map the Entity Action Params to the Action Params and where needed evaluate scripts to get the run-time values that need
|
|
37
59
|
* to get passed to the Action.
|
|
@@ -58,6 +80,12 @@ export class EntityActionInvocationBase {
|
|
|
58
80
|
case 'Entity Object':
|
|
59
81
|
value = entityObject;
|
|
60
82
|
break;
|
|
83
|
+
case 'Entity Object Data':
|
|
84
|
+
// The record's field values as a plain object. BaseEntity fields are getters, not
|
|
85
|
+
// enumerable own properties, so an action that spreads or JSON-serializes an
|
|
86
|
+
// 'Entity Object' value gets `{}` — GetAll() is what actually carries the data.
|
|
87
|
+
value = entityObject.GetAll();
|
|
88
|
+
break;
|
|
61
89
|
case 'Entity Field':
|
|
62
90
|
value = entityObject[eap.Value];
|
|
63
91
|
break;
|
|
@@ -118,12 +146,20 @@ let EntityActionInvocationSingleRecord = class EntityActionInvocationSingleRecor
|
|
|
118
146
|
async InvokeAction(params) {
|
|
119
147
|
// for this type of invocation we need to validate that the EntityObject is not null
|
|
120
148
|
if (this.ValidateParams(params)) {
|
|
149
|
+
// A binding narrowed to one configuration record (ScopeEntityID/ScopeRecordID) only fires for
|
|
150
|
+
// records that fall under it. Checked HERE rather than at each dispatch site because every
|
|
151
|
+
// path — provider lifecycle hooks, List/View fan-out, direct invocation — funnels through
|
|
152
|
+
// single-record invocation, so this is the one place the check cannot be forgotten.
|
|
153
|
+
const inScope = await IsEntityActionInScope(params.EntityAction, params.EntityObject, name => ResolveEntityActionScopeResolver(name));
|
|
154
|
+
if (!inScope) {
|
|
155
|
+
return null;
|
|
156
|
+
}
|
|
121
157
|
// now do the work
|
|
122
158
|
// get the class that is derived from BaseAction for the Action Name
|
|
123
159
|
await ActionEngineServer.Instance.Config(false, params.ContextUser);
|
|
124
160
|
// prepare the variables for the action
|
|
125
161
|
const action = ActionEngineServer.Instance.Actions.find(a => UUIDsEqual(a.ID, params.EntityAction.ActionID));
|
|
126
|
-
const internalParams = await this.MapParams(action.Params, params.EntityAction.Params, params.EntityObject);
|
|
162
|
+
const internalParams = await this.MapParams([...action.Params.Items], params.EntityAction.Params, params.EntityObject);
|
|
127
163
|
const filters = params.EntityAction.Filters.map(f => {
|
|
128
164
|
const filter = ActionEngineServer.Instance.ActionFilters.find(fi => UUIDsEqual(fi.ID, f.ActionFilterID));
|
|
129
165
|
return filter;
|
|
@@ -132,7 +168,8 @@ let EntityActionInvocationSingleRecord = class EntityActionInvocationSingleRecor
|
|
|
132
168
|
Action: action,
|
|
133
169
|
ContextUser: params.ContextUser,
|
|
134
170
|
Filters: filters,
|
|
135
|
-
Params: internalParams
|
|
171
|
+
Params: internalParams,
|
|
172
|
+
Provenance: this.BuildProvenance(params, params.EntityObject)
|
|
136
173
|
});
|
|
137
174
|
return result;
|
|
138
175
|
}
|
|
@@ -192,7 +229,11 @@ let EntityActionInvocationMultipleRecords = class EntityActionInvocationMultiple
|
|
|
192
229
|
const innerParams = { ...params };
|
|
193
230
|
innerParams.EntityObject = record;
|
|
194
231
|
const result = await invocationInstance.InvokeAction(innerParams);
|
|
195
|
-
|
|
232
|
+
if (result) {
|
|
233
|
+
// null means the binding is scoped and this record falls outside it — not a failure,
|
|
234
|
+
// so it must not drag the consolidated Success down.
|
|
235
|
+
results.push(result);
|
|
236
|
+
}
|
|
196
237
|
}
|
|
197
238
|
const consolidatedResult = {
|
|
198
239
|
Success: results.every(r => r.Success),
|
|
@@ -290,7 +331,7 @@ let EntityActionInvocationValidate = class EntityActionInvocationValidate extend
|
|
|
290
331
|
// make sure the action engine is good to go, the below won't do anything if it was already configured
|
|
291
332
|
await ActionEngineServer.Instance.Config(false, params.ContextUser);
|
|
292
333
|
const action = ActionEngineServer.Instance.Actions.find(a => UUIDsEqual(a.ID, params.EntityAction.ActionID));
|
|
293
|
-
const internalParams = await this.MapParams(action.Params, params.EntityAction.Params, params.EntityObject);
|
|
334
|
+
const internalParams = await this.MapParams([...action.Params.Items], params.EntityAction.Params, params.EntityObject);
|
|
294
335
|
const result = await ActionEngineServer.Instance.RunAction({
|
|
295
336
|
Action: action,
|
|
296
337
|
ContextUser: params.ContextUser,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityActionInvocationTypes.js","sourceRoot":"","sources":["../../src/entity-actions/EntityActionInvocationTypes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EntityActionInvocationTypes.js","sourceRoot":"","sources":["../../src/entity-actions/EntityActionInvocationTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,20 @@ import { UserInfo, IMetadataProvider } from "@memberjunction/core";
|
|
|
2
2
|
import { MJActionExecutionLogEntity, MJActionCategoryEntity, MJActionFilterEntity, MJActionLibraryEntity, MJActionParamEntity, MJActionResultCodeEntity } from "@memberjunction/core-entities";
|
|
3
3
|
import { BaseSingleton } from "@memberjunction/global";
|
|
4
4
|
import { MJActionEntityExtended, ActionParam, ActionResult, ActionResultSimple, RunActionParams } from "@memberjunction/actions-base";
|
|
5
|
+
/**
|
|
6
|
+
* Execution context handed to an Action Filter's `Code` when the engine evaluates it inline
|
|
7
|
+
* (i.e. when no {@link BaseActionFilter} subclass is registered for the filter). The code runs
|
|
8
|
+
* with this object bound as `ActionFilterContext` and signals its verdict either by returning
|
|
9
|
+
* a boolean or by assigning `ActionFilterContext.result`.
|
|
10
|
+
*/
|
|
11
|
+
export interface ActionFilterContext {
|
|
12
|
+
/** The full parameters of the action run being gated, including Action, Params, and ContextUser. */
|
|
13
|
+
params: RunActionParams;
|
|
14
|
+
/** The filter row being evaluated. */
|
|
15
|
+
filter: MJActionFilterEntity;
|
|
16
|
+
/** Alternative verdict channel: filter code may assign true (allow) / false (prevent) here instead of returning. */
|
|
17
|
+
result: boolean | null;
|
|
18
|
+
}
|
|
5
19
|
/**
|
|
6
20
|
* Base class for executing actions. This class can be sub-classed if desired if you would like to modify the logic across ALL actions. To do so, sub-class this class and use the
|
|
7
21
|
* @RegisterClass decorator from the @memberjunction/global package to register your sub-class with the ClassFactory. This will cause your sub-class to be used instead of this base class when the Metadata object insantiates the ActionEngine.
|
|
@@ -81,7 +95,7 @@ export declare class ActionEngineServer extends BaseSingleton<ActionEngineServer
|
|
|
81
95
|
* (e.g. when being run from a Runtime-action bridge that has its own
|
|
82
96
|
* abort), we chain to it so either source can trigger cancellation.
|
|
83
97
|
*/
|
|
84
|
-
protected RunActionWithTimeout(params: RunActionParams): Promise<ActionResult>;
|
|
98
|
+
protected RunActionWithTimeout(params: RunActionParams, inputSnapshot?: string): Promise<ActionResult>;
|
|
85
99
|
protected GetActionParamsForAction(action: MJActionEntityExtended): ActionParam[];
|
|
86
100
|
/**
|
|
87
101
|
* This method handles input validation. Subclasses can override this method to provide custom input validation.
|
|
@@ -92,12 +106,29 @@ export declare class ActionEngineServer extends BaseSingleton<ActionEngineServer
|
|
|
92
106
|
*/
|
|
93
107
|
protected RunFilters(params: RunActionParams): Promise<boolean>;
|
|
94
108
|
/**
|
|
95
|
-
*
|
|
109
|
+
* Bounded cache of compiled filter functions. Keyed by filter ID + row version so an edited
|
|
110
|
+
* filter's Code is recompiled on next use instead of serving the stale compilation.
|
|
111
|
+
*/
|
|
112
|
+
private _filterCache;
|
|
113
|
+
/**
|
|
114
|
+
* Runs a single Action Filter and returns whether the action should proceed.
|
|
96
115
|
*
|
|
97
|
-
*
|
|
116
|
+
* Resolution order:
|
|
117
|
+
* 1. A {@link BaseActionFilter} subclass registered with the ClassFactory under the filter's ID
|
|
118
|
+
* (the CodeGen / custom-subclass pattern documented on BaseActionFilter) wins when present.
|
|
119
|
+
* 2. Otherwise the filter's `Code` column — JavaScript that evaluates to true (allow) or
|
|
120
|
+
* false (prevent), per the column contract — is compiled once per filter row version and
|
|
121
|
+
* executed with an {@link ActionFilterContext} argument. The code may `return` its verdict
|
|
122
|
+
* or assign `ActionFilterContext.result`.
|
|
123
|
+
*
|
|
124
|
+
* Failure semantics are FAIL-CLOSED: a filter that throws, yields a non-boolean, or has no
|
|
125
|
+
* evaluable logic prevents the action and logs the reason. A broken gate must not silently
|
|
126
|
+
* allow execution — silently allowing everything is precisely the pre-fix bug this replaces.
|
|
127
|
+
*
|
|
128
|
+
* Subclasses can still override this method entirely to provide custom filter logic.
|
|
98
129
|
*/
|
|
99
130
|
protected RunSingleFilter(params: RunActionParams, filter: MJActionFilterEntity): Promise<boolean>;
|
|
100
|
-
protected InternalRunAction(params: RunActionParams): Promise<ActionResult>;
|
|
131
|
+
protected InternalRunAction(params: RunActionParams, inputSnapshot?: string): Promise<ActionResult>;
|
|
101
132
|
/**
|
|
102
133
|
* Resolves and runs a Custom / Generated action via the ClassFactory.
|
|
103
134
|
* This is the pre-existing path — factored out of `InternalRunAction` so
|
|
@@ -121,8 +152,43 @@ export declare class ActionEngineServer extends BaseSingleton<ActionEngineServer
|
|
|
121
152
|
* rejects with a "handler not registered" error from the worker pool.
|
|
122
153
|
*/
|
|
123
154
|
protected RunRuntimeAction(params: RunActionParams): Promise<ActionResultSimple>;
|
|
124
|
-
|
|
155
|
+
/**
|
|
156
|
+
* The as-called input parameters, redacted and serialized, for `ActionExecutionLog.Params`.
|
|
157
|
+
*
|
|
158
|
+
* Taken **once, at the top of {@link RunAction}**, before the action can mutate its own parameter
|
|
159
|
+
* array. Custom and Generated actions write outputs back into the very array they were handed, so a
|
|
160
|
+
* snapshot taken any later — inside `StartActionLog`, or on the timeout path — is a post-hoc capture
|
|
161
|
+
* of a mutated array masquerading as "what it was called with".
|
|
162
|
+
*
|
|
163
|
+
* Every value passes through {@link RedactParamsToJSON} first: this method is the only producer of
|
|
164
|
+
* the `Params` column, so redaction here is what makes the column safe by construction.
|
|
165
|
+
*/
|
|
166
|
+
protected SnapshotInputParams(params: RunActionParams): string;
|
|
167
|
+
/**
|
|
168
|
+
* The `ActionParam` definition rows for the action being run — the source of each parameter's
|
|
169
|
+
* `LogValue` flag. Read from the shared ActionEngineBase cache rather than off `params.Action`,
|
|
170
|
+
* which is typed as the plain entity and carries no params collection.
|
|
171
|
+
*/
|
|
172
|
+
protected ParamDefinitionsFor(params: RunActionParams): MJActionParamEntity[];
|
|
173
|
+
/**
|
|
174
|
+
* How much of this run to log, from the Entity Action binding that dispatched it. Direct
|
|
175
|
+
* invocations have no binding and therefore always log — the pre-existing behaviour.
|
|
176
|
+
*/
|
|
177
|
+
protected ResolveLoggingMode(params: RunActionParams): 'All' | 'FailuresOnly' | 'None';
|
|
178
|
+
/**
|
|
179
|
+
* Whether a completed run should leave a log row, honouring both the caller's `SkipActionLog` and
|
|
180
|
+
* the binding's `LoggingMode`. `FailuresOnly` exists for high-frequency bindings whose successful
|
|
181
|
+
* runs would otherwise dominate the log table; a failure is always written.
|
|
182
|
+
*/
|
|
183
|
+
protected ShouldLogOutcome(params: RunActionParams, result: ActionResult): boolean;
|
|
184
|
+
protected StartActionLog(params: RunActionParams, saveRecord?: boolean, inputSnapshot?: string): Promise<MJActionExecutionLogEntity>;
|
|
125
185
|
protected EndActionLog(logEntity: MJActionExecutionLogEntity, params: RunActionParams, result: ActionResult): Promise<void>;
|
|
126
|
-
protected StartAndEndActionLog(params: RunActionParams, result: ActionResult): Promise<MJActionExecutionLogEntity>;
|
|
186
|
+
protected StartAndEndActionLog(params: RunActionParams, result: ActionResult, inputSnapshot?: string): Promise<MJActionExecutionLogEntity>;
|
|
187
|
+
/**
|
|
188
|
+
* Writes the Entity Action provenance onto a log row: which binding fired, from which lifecycle
|
|
189
|
+
* event, against which record. All four columns are NULL for a direct invocation, and that NULL is
|
|
190
|
+
* meaningful — it is how "nobody configured this, some code called it" reads in the log.
|
|
191
|
+
*/
|
|
192
|
+
protected StampProvenance(logEntity: MJActionExecutionLogEntity, params: RunActionParams): void;
|
|
127
193
|
}
|
|
128
194
|
//# sourceMappingURL=ActionEngine.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionEngine.d.ts","sourceRoot":"","sources":["../../src/generic/ActionEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuD,QAAQ,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACxH,OAAO,EAAE,0BAA0B,EAA8C,sBAAsB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC3O,OAAO,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"ActionEngine.d.ts","sourceRoot":"","sources":["../../src/generic/ActionEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuD,QAAQ,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACxH,OAAO,EAAE,0BAA0B,EAA8C,sBAAsB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC3O,OAAO,EAAE,aAAa,EAAmD,MAAM,wBAAwB,CAAC;AAGxG,OAAO,EAEH,sBAAsB,EACtB,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,eAAe,EAIlB,MAAM,8BAA8B,CAAC;AAMtC;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IACjC,oGAAoG;IACpG,MAAM,EAAE,eAAe,CAAC;IACxB,sCAAsC;IACtC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,oHAAoH;IACpH,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;CACzB;AAED;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,aAAa,CAAC,kBAAkB,CAAC;IAGtE,WAAkB,QAAQ,IAAI,kBAAkB,CAE/C;IAED;;;;;;;;;OASG;IACH,OAAO,KAAK,IAAI,GAEf;IAED;;;;OAIG;IACH,OAAO,CAAC,YAAY,CAAC,CAAW;IAEhC;;;OAGG;IACU,MAAM,CAAC,YAAY,GAAE,OAAe,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvH,kEAAkE;IAClE,IAAW,MAAM,IAAI,OAAO,CAA6B;IAEzD,IAAW,WAAW,IAAI,QAAQ,CAAqE;IACvG,IAAW,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAgC;IAGtE,IAAW,OAAO,IAAI,sBAAsB,EAAE,CAA8B;IAC5E,IAAW,gBAAgB,IAAI,sBAAsB,EAAE,CAAuC;IAC9F,IAAW,YAAY,IAAI,mBAAmB,EAAE,CAAmC;IACnF,IAAW,aAAa,IAAI,oBAAoB,EAAE,CAAoC;IACtF,IAAW,iBAAiB,IAAI,wBAAwB,EAAE,CAAwC;IAClG,IAAW,eAAe,IAAI,qBAAqB,EAAE,CAAsC;IAC3F,IAAW,WAAW,IAAI,sBAAsB,EAAE,CAAkC;IACpF,IAAW,cAAc,IAAI,sBAAsB,EAAE,CAAqC;IAC1F,IAAW,yBAAyB,IAAI,MAAM,CAAgD;IAGvF,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO;IACxE,YAAY,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO;IACrD,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IACjD,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS;IAE9E;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;IAEvD;;;;;;OAMG;IACH,SAAS,KAAK,sBAAsB,IAAI,MAAM,CAE7C;IAEY,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC;IAyCtE;;;;;;;;;;;OAWG;cACa,oBAAoB,CAAC,MAAM,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAgF5G,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,sBAAsB,GAAG,WAAW,EAAE;IAqCjF;;OAEG;cACa,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC;IAIzE;;OAEG;cACa,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC;IAWrE;;;OAGG;IACH,OAAO,CAAC,YAAY,CAAiG;IAErH;;;;;;;;;;;;;;;;OAgBG;cACa,eAAe,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;cA6CxF,iBAAiB,CAAC,MAAM,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAkEzG;;;;OAIG;cACa,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAYzF;;;;;;;;;;;;;;;OAeG;cACa,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA8FtF;;;;;;;;;;OAUG;IACH,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM;IAI9D;;;;OAIG;IACH,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,mBAAmB,EAAE;IAI7E;;;OAGG;IACH,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,KAAK,GAAG,cAAc,GAAG,MAAM;IAItF;;;;OAIG;IACH,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO;cAWlE,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE,UAAU,GAAE,OAAc,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC;cA0BhI,YAAY,CAAC,SAAS,EAAE,0BAA0B,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;cA8BjH,oBAAoB,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAOhJ;;;;OAIG;IACH,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,0BAA0B,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI;CAUjG"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { BaseEntitySaveQueue, LogError, LogErrorEx, Metadata } from "@memberjunction/core";
|
|
2
|
-
import { BaseSingleton, MJGlobal, SafeJSONParse, UUIDsEqual } from "@memberjunction/global";
|
|
2
|
+
import { BaseSingleton, MJGlobal, MJLruCache, SafeJSONParse, UUIDsEqual } from "@memberjunction/global";
|
|
3
3
|
import { BaseAction } from "./BaseAction.js";
|
|
4
|
-
import {
|
|
4
|
+
import { BaseActionFilter } from "./BaseActionFilter.js";
|
|
5
|
+
import { ActionEngineBase, RuntimeActionConfigurationSchema, RuntimeActionBridgeBuilder, RedactParamsToJSON } from "@memberjunction/actions-base";
|
|
5
6
|
import { RuntimeActionExecutor } from "@memberjunction/action-runtime";
|
|
6
7
|
/**
|
|
7
8
|
* Base class for executing actions. This class can be sub-classed if desired if you would like to modify the logic across ALL actions. To do so, sub-class this class and use the
|
|
@@ -23,6 +24,11 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
23
24
|
* long-lived singleton.
|
|
24
25
|
*/
|
|
25
26
|
this._logQueue = new BaseEntitySaveQueue();
|
|
27
|
+
/**
|
|
28
|
+
* Bounded cache of compiled filter functions. Keyed by filter ID + row version so an edited
|
|
29
|
+
* filter's Code is recompiled on next use instead of serving the stale compilation.
|
|
30
|
+
*/
|
|
31
|
+
this._filterCache = new MJLruCache({ maxSize: 1000 });
|
|
26
32
|
}
|
|
27
33
|
static get Instance() {
|
|
28
34
|
return super.getInstance();
|
|
@@ -80,6 +86,10 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
80
86
|
return 2 * 60 * 60 * 1000;
|
|
81
87
|
}
|
|
82
88
|
async RunAction(params) {
|
|
89
|
+
// Snapshot the inputs BEFORE anything can run — see SnapshotInputParams. Threaded down every
|
|
90
|
+
// path (validation failure, filter refusal, timeout, normal run) so all four write the same
|
|
91
|
+
// as-called values into ActionExecutionLog.Params.
|
|
92
|
+
const inputSnapshot = this.SnapshotInputParams(params);
|
|
83
93
|
const validInputs = await this.ValidateInputs(params);
|
|
84
94
|
if (!validInputs) {
|
|
85
95
|
const result = {
|
|
@@ -89,8 +99,8 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
89
99
|
Params: params.Params,
|
|
90
100
|
RunParams: params
|
|
91
101
|
};
|
|
92
|
-
if (
|
|
93
|
-
result.LogEntry = await this.StartAndEndActionLog(params, result);
|
|
102
|
+
if (this.ShouldLogOutcome(params, result)) {
|
|
103
|
+
result.LogEntry = await this.StartAndEndActionLog(params, result, inputSnapshot);
|
|
94
104
|
}
|
|
95
105
|
return result;
|
|
96
106
|
}
|
|
@@ -104,11 +114,11 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
104
114
|
Params: params.Params,
|
|
105
115
|
RunParams: params
|
|
106
116
|
};
|
|
107
|
-
if (
|
|
108
|
-
result.LogEntry = await this.StartAndEndActionLog(params, result);
|
|
117
|
+
if (this.ShouldLogOutcome(params, result)) {
|
|
118
|
+
result.LogEntry = await this.StartAndEndActionLog(params, result, inputSnapshot);
|
|
109
119
|
}
|
|
110
120
|
}
|
|
111
|
-
return await this.RunActionWithTimeout(params);
|
|
121
|
+
return await this.RunActionWithTimeout(params, inputSnapshot);
|
|
112
122
|
}
|
|
113
123
|
/**
|
|
114
124
|
* Wraps `InternalRunAction()` with a universal wall-clock timeout
|
|
@@ -122,7 +132,7 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
122
132
|
* (e.g. when being run from a Runtime-action bridge that has its own
|
|
123
133
|
* abort), we chain to it so either source can trigger cancellation.
|
|
124
134
|
*/
|
|
125
|
-
async RunActionWithTimeout(params) {
|
|
135
|
+
async RunActionWithTimeout(params, inputSnapshot) {
|
|
126
136
|
const actionTimeoutMS = params.Action.MaxExecutionTimeMS ?? this.DefaultActionTimeoutMS;
|
|
127
137
|
// Chain with any upstream AbortSignal (e.g. Runtime-action bridge).
|
|
128
138
|
const controller = new AbortController();
|
|
@@ -156,7 +166,7 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
156
166
|
}, { once: true });
|
|
157
167
|
});
|
|
158
168
|
try {
|
|
159
|
-
return await Promise.race([this.InternalRunAction(params), timeoutPromise]);
|
|
169
|
+
return await Promise.race([this.InternalRunAction(params, inputSnapshot), timeoutPromise]);
|
|
160
170
|
}
|
|
161
171
|
catch (err) {
|
|
162
172
|
// Timeout or upstream abort — return a standard TIMEOUT result.
|
|
@@ -175,8 +185,8 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
175
185
|
RunParams: params,
|
|
176
186
|
Result: undefined
|
|
177
187
|
};
|
|
178
|
-
if (
|
|
179
|
-
timeoutResult.LogEntry = await this.StartAndEndActionLog(params, timeoutResult);
|
|
188
|
+
if (this.ShouldLogOutcome(params, timeoutResult)) {
|
|
189
|
+
timeoutResult.LogEntry = await this.StartAndEndActionLog(params, timeoutResult, inputSnapshot);
|
|
180
190
|
}
|
|
181
191
|
return timeoutResult;
|
|
182
192
|
}
|
|
@@ -194,7 +204,7 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
194
204
|
}
|
|
195
205
|
}
|
|
196
206
|
GetActionParamsForAction(action) {
|
|
197
|
-
const params = action.Params.map((param) => {
|
|
207
|
+
const params = action.Params.Items.map((param) => {
|
|
198
208
|
let value = null;
|
|
199
209
|
switch (param.ValueType) {
|
|
200
210
|
case 'Scalar':
|
|
@@ -246,18 +256,70 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
246
256
|
return true; // if we get here we either had no filters or passed them all
|
|
247
257
|
}
|
|
248
258
|
/**
|
|
249
|
-
*
|
|
259
|
+
* Runs a single Action Filter and returns whether the action should proceed.
|
|
260
|
+
*
|
|
261
|
+
* Resolution order:
|
|
262
|
+
* 1. A {@link BaseActionFilter} subclass registered with the ClassFactory under the filter's ID
|
|
263
|
+
* (the CodeGen / custom-subclass pattern documented on BaseActionFilter) wins when present.
|
|
264
|
+
* 2. Otherwise the filter's `Code` column — JavaScript that evaluates to true (allow) or
|
|
265
|
+
* false (prevent), per the column contract — is compiled once per filter row version and
|
|
266
|
+
* executed with an {@link ActionFilterContext} argument. The code may `return` its verdict
|
|
267
|
+
* or assign `ActionFilterContext.result`.
|
|
250
268
|
*
|
|
251
|
-
*
|
|
269
|
+
* Failure semantics are FAIL-CLOSED: a filter that throws, yields a non-boolean, or has no
|
|
270
|
+
* evaluable logic prevents the action and logs the reason. A broken gate must not silently
|
|
271
|
+
* allow execution — silently allowing everything is precisely the pre-fix bug this replaces.
|
|
272
|
+
*
|
|
273
|
+
* Subclasses can still override this method entirely to provide custom filter logic.
|
|
252
274
|
*/
|
|
253
275
|
async RunSingleFilter(params, filter) {
|
|
254
|
-
|
|
255
|
-
|
|
276
|
+
try {
|
|
277
|
+
const registered = MJGlobal.Instance.ClassFactory.GetAllRegistrations(BaseActionFilter, filter.ID);
|
|
278
|
+
if (registered && registered.length > 0) {
|
|
279
|
+
const instance = MJGlobal.Instance.ClassFactory.CreateInstance(BaseActionFilter, filter.ID);
|
|
280
|
+
if (instance) {
|
|
281
|
+
return await instance.Run(params, filter) === true;
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
const code = filter.Code?.trim();
|
|
285
|
+
if (!code) {
|
|
286
|
+
LogError(`Action Filter ${filter.ID} has no Code and no registered BaseActionFilter subclass — failing closed, action prevented.`);
|
|
287
|
+
return false;
|
|
288
|
+
}
|
|
289
|
+
const cacheKey = `${filter.ID}:${filter.__mj_UpdatedAt instanceof Date ? filter.__mj_UpdatedAt.getTime() : ''}`;
|
|
290
|
+
let filterFunction = this._filterCache.Get(cacheKey);
|
|
291
|
+
if (!filterFunction) {
|
|
292
|
+
filterFunction = new Function('ActionFilterContext', `
|
|
293
|
+
return (async () => {
|
|
294
|
+
${code}
|
|
295
|
+
})();
|
|
296
|
+
`);
|
|
297
|
+
this._filterCache.Set(cacheKey, filterFunction);
|
|
298
|
+
}
|
|
299
|
+
const context = { params, filter, result: null };
|
|
300
|
+
const returned = await filterFunction(context);
|
|
301
|
+
const verdict = returned ?? context.result;
|
|
302
|
+
if (typeof verdict !== 'boolean') {
|
|
303
|
+
LogError(`Action Filter ${filter.ID} evaluated to a non-boolean verdict (${String(verdict)}) — failing closed, action prevented.`);
|
|
304
|
+
return false;
|
|
305
|
+
}
|
|
306
|
+
return verdict;
|
|
307
|
+
}
|
|
308
|
+
catch (e) {
|
|
309
|
+
LogErrorEx({
|
|
310
|
+
message: `Action Filter ${filter.ID} threw during evaluation — failing closed, action prevented.`,
|
|
311
|
+
error: e instanceof Error ? e : new Error(String(e))
|
|
312
|
+
});
|
|
313
|
+
return false;
|
|
314
|
+
}
|
|
256
315
|
}
|
|
257
|
-
async InternalRunAction(params) {
|
|
316
|
+
async InternalRunAction(params, inputSnapshot) {
|
|
317
|
+
const loggingMode = this.ResolveLoggingMode(params);
|
|
258
318
|
let logEntry;
|
|
259
|
-
if (!params.SkipActionLog) {
|
|
260
|
-
|
|
319
|
+
if (!params.SkipActionLog && loggingMode !== 'None') {
|
|
320
|
+
// Under 'FailuresOnly' the row is built but the 'started' INSERT is withheld: if the run
|
|
321
|
+
// succeeds nothing is ever written, and if it fails EndActionLog's force-persist inserts it.
|
|
322
|
+
logEntry = await this.StartActionLog(params, loggingMode === 'All', inputSnapshot);
|
|
261
323
|
}
|
|
262
324
|
try {
|
|
263
325
|
// Branch by Action.Type. Runtime actions go through the sandboxed
|
|
@@ -277,9 +339,14 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
277
339
|
Params: simpleResult.Params || params.Params,
|
|
278
340
|
Result: resultCodeEntity
|
|
279
341
|
};
|
|
280
|
-
if (logEntry) {
|
|
342
|
+
if (logEntry && this.ShouldLogOutcome(params, result)) {
|
|
281
343
|
await this.EndActionLog(logEntry, params, result);
|
|
282
344
|
}
|
|
345
|
+
else if (logEntry) {
|
|
346
|
+
// 'FailuresOnly' + success: the row was never inserted, so drop it rather than return a
|
|
347
|
+
// LogEntry pointing at a row that does not exist.
|
|
348
|
+
result.LogEntry = undefined;
|
|
349
|
+
}
|
|
283
350
|
return result;
|
|
284
351
|
}
|
|
285
352
|
catch (e) {
|
|
@@ -297,6 +364,8 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
297
364
|
Result: undefined
|
|
298
365
|
};
|
|
299
366
|
if (logEntry) {
|
|
367
|
+
// An exception is always a failure, so every logging mode except 'None' records it —
|
|
368
|
+
// and 'None' never produced a logEntry in the first place.
|
|
300
369
|
await this.EndActionLog(logEntry, params, result);
|
|
301
370
|
}
|
|
302
371
|
return result;
|
|
@@ -408,7 +477,51 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
408
477
|
Params: execResult.params
|
|
409
478
|
};
|
|
410
479
|
}
|
|
411
|
-
|
|
480
|
+
/**
|
|
481
|
+
* The as-called input parameters, redacted and serialized, for `ActionExecutionLog.Params`.
|
|
482
|
+
*
|
|
483
|
+
* Taken **once, at the top of {@link RunAction}**, before the action can mutate its own parameter
|
|
484
|
+
* array. Custom and Generated actions write outputs back into the very array they were handed, so a
|
|
485
|
+
* snapshot taken any later — inside `StartActionLog`, or on the timeout path — is a post-hoc capture
|
|
486
|
+
* of a mutated array masquerading as "what it was called with".
|
|
487
|
+
*
|
|
488
|
+
* Every value passes through {@link RedactParamsToJSON} first: this method is the only producer of
|
|
489
|
+
* the `Params` column, so redaction here is what makes the column safe by construction.
|
|
490
|
+
*/
|
|
491
|
+
SnapshotInputParams(params) {
|
|
492
|
+
return RedactParamsToJSON(params.Params, this.ParamDefinitionsFor(params), params.Provenance?.EntityActionParams);
|
|
493
|
+
}
|
|
494
|
+
/**
|
|
495
|
+
* The `ActionParam` definition rows for the action being run — the source of each parameter's
|
|
496
|
+
* `LogValue` flag. Read from the shared ActionEngineBase cache rather than off `params.Action`,
|
|
497
|
+
* which is typed as the plain entity and carries no params collection.
|
|
498
|
+
*/
|
|
499
|
+
ParamDefinitionsFor(params) {
|
|
500
|
+
return params.Action ? this.ActionParams.filter(p => UUIDsEqual(p.ActionID, params.Action.ID)) : [];
|
|
501
|
+
}
|
|
502
|
+
/**
|
|
503
|
+
* How much of this run to log, from the Entity Action binding that dispatched it. Direct
|
|
504
|
+
* invocations have no binding and therefore always log — the pre-existing behaviour.
|
|
505
|
+
*/
|
|
506
|
+
ResolveLoggingMode(params) {
|
|
507
|
+
return params.Provenance?.LoggingMode ?? 'All';
|
|
508
|
+
}
|
|
509
|
+
/**
|
|
510
|
+
* Whether a completed run should leave a log row, honouring both the caller's `SkipActionLog` and
|
|
511
|
+
* the binding's `LoggingMode`. `FailuresOnly` exists for high-frequency bindings whose successful
|
|
512
|
+
* runs would otherwise dominate the log table; a failure is always written.
|
|
513
|
+
*/
|
|
514
|
+
ShouldLogOutcome(params, result) {
|
|
515
|
+
if (params.SkipActionLog) {
|
|
516
|
+
return false;
|
|
517
|
+
}
|
|
518
|
+
const mode = this.ResolveLoggingMode(params);
|
|
519
|
+
if (mode === 'None') {
|
|
520
|
+
return false;
|
|
521
|
+
}
|
|
522
|
+
return mode !== 'FailuresOnly' || !result.Success;
|
|
523
|
+
}
|
|
524
|
+
async StartActionLog(params, saveRecord = true, inputSnapshot) {
|
|
412
525
|
// this is where the log entry for the action run will be created
|
|
413
526
|
const md = params.Provider ?? new Metadata();
|
|
414
527
|
const logEntity = await md.GetEntityObject('MJ: Action Execution Logs', this.ContextUser);
|
|
@@ -416,8 +529,11 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
416
529
|
logEntity.ActionID = params.Action.ID;
|
|
417
530
|
logEntity.StartedAt = new Date();
|
|
418
531
|
logEntity.UserID = this.ContextUser.ID;
|
|
419
|
-
//
|
|
420
|
-
|
|
532
|
+
// The as-called inputs. Written once and never overwritten — EndActionLog writes the final
|
|
533
|
+
// merged set to ResultParams instead. `inputSnapshot` is supplied by RunAction; the fallback
|
|
534
|
+
// covers callers that reach StartActionLog directly.
|
|
535
|
+
logEntity.Params = inputSnapshot ?? this.SnapshotInputParams(params);
|
|
536
|
+
this.StampProvenance(logEntity, params);
|
|
421
537
|
if (saveRecord) {
|
|
422
538
|
// Fire-and-forget the 'started' INSERT (unless the caller opts out) — the action runs
|
|
423
539
|
// immediately, off the DB round-trip critical path. The ID is already assigned by NewRecord(),
|
|
@@ -435,7 +551,11 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
435
551
|
// from the sandbox executor that lives on `result.Params`, so logging `params.Params` would lose
|
|
436
552
|
// every new output key. Custom/Generated actions mutate `params.Params` in place, and
|
|
437
553
|
// `result.Params` falls back to that same reference, so they remain equivalent.
|
|
438
|
-
|
|
554
|
+
//
|
|
555
|
+
// This goes to ResultParams, NOT Params: Params holds the as-called inputs captured at the top of
|
|
556
|
+
// RunAction and is deliberately never overwritten, so a run's inputs stay recoverable even though
|
|
557
|
+
// the action mutated the array they arrived in.
|
|
558
|
+
const finalParams = RedactParamsToJSON(result.Params ?? params.Params, this.ParamDefinitionsFor(params), params.Provenance?.EntityActionParams);
|
|
439
559
|
const resultCode = result.Result?.ResultCode;
|
|
440
560
|
const message = result.Message;
|
|
441
561
|
// Fire-and-forget — the action's caller never blocks on the 'ended' UPDATE. The mutation runs
|
|
@@ -443,16 +563,31 @@ export class ActionEngineServer extends BaseSingleton {
|
|
|
443
563
|
// the INSERT's reload. The queue is self-bounding, so no flush is needed on this long-lived singleton.
|
|
444
564
|
this._logQueue.Update(logEntity, () => {
|
|
445
565
|
logEntity.EndedAt = endedAt;
|
|
446
|
-
logEntity.
|
|
566
|
+
logEntity.ResultParams = finalParams;
|
|
447
567
|
logEntity.ResultCode = resultCode;
|
|
448
568
|
logEntity.Message = message;
|
|
449
569
|
});
|
|
450
570
|
}
|
|
451
|
-
async StartAndEndActionLog(params, result) {
|
|
571
|
+
async StartAndEndActionLog(params, result, inputSnapshot) {
|
|
452
572
|
// No separate INSERT — the single 'ended' UPDATE (force-persist on a never-inserted NewRecord) inserts.
|
|
453
|
-
const logEntity = await this.StartActionLog(params, false);
|
|
573
|
+
const logEntity = await this.StartActionLog(params, false, inputSnapshot);
|
|
454
574
|
await this.EndActionLog(logEntity, params, result);
|
|
455
575
|
return logEntity;
|
|
456
576
|
}
|
|
577
|
+
/**
|
|
578
|
+
* Writes the Entity Action provenance onto a log row: which binding fired, from which lifecycle
|
|
579
|
+
* event, against which record. All four columns are NULL for a direct invocation, and that NULL is
|
|
580
|
+
* meaningful — it is how "nobody configured this, some code called it" reads in the log.
|
|
581
|
+
*/
|
|
582
|
+
StampProvenance(logEntity, params) {
|
|
583
|
+
const provenance = params.Provenance;
|
|
584
|
+
if (!provenance) {
|
|
585
|
+
return;
|
|
586
|
+
}
|
|
587
|
+
logEntity.EntityActionID = provenance.EntityActionID ?? null;
|
|
588
|
+
logEntity.EntityActionInvocationTypeID = provenance.EntityActionInvocationTypeID ?? null;
|
|
589
|
+
logEntity.TargetEntityID = provenance.TargetEntityID ?? null;
|
|
590
|
+
logEntity.TargetRecordID = provenance.TargetRecordID ?? null;
|
|
591
|
+
}
|
|
457
592
|
}
|
|
458
593
|
//# sourceMappingURL=ActionEngine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionEngine.js","sourceRoot":"","sources":["../../src/generic/ActionEngine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ActionEngine.js","sourceRoot":"","sources":["../../src/generic/ActionEngine.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export * from './generic/BaseActionFilter.js';
|
|
|
3
3
|
export * from './generic/BaseOAuthAction.js';
|
|
4
4
|
export * from './generic/ActionEngine.js';
|
|
5
5
|
export * from './generic/OAuth2Manager.js';
|
|
6
|
+
export * from './entity-actions/EntityActionDispatchGuard.js';
|
|
6
7
|
export * from './entity-actions/EntityActionEngine.js';
|
|
7
8
|
export * from './entity-actions/EntityActionInvocationTypes.js';
|
|
8
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AAExC,cAAc,qCAAqC,CAAC;AACpD,cAAc,8CAA8C,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AAExC,cAAc,4CAA4C,CAAC;AAC3D,cAAc,qCAAqC,CAAC;AACpD,cAAc,8CAA8C,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,6 +3,7 @@ export * from './generic/BaseActionFilter.js';
|
|
|
3
3
|
export * from './generic/BaseOAuthAction.js';
|
|
4
4
|
export * from './generic/ActionEngine.js';
|
|
5
5
|
export * from './generic/OAuth2Manager.js';
|
|
6
|
+
export * from './entity-actions/EntityActionDispatchGuard.js';
|
|
6
7
|
export * from './entity-actions/EntityActionEngine.js';
|
|
7
8
|
export * from './entity-actions/EntityActionInvocationTypes.js';
|
|
8
9
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AAExC,cAAc,qCAAqC,CAAC;AACpD,cAAc,8CAA8C,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AAExC,cAAc,4CAA4C,CAAC;AAC3D,cAAc,qCAAqC,CAAC;AACpD,cAAc,8CAA8C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,37 +1,38 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/actions",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "6.1.0-edge.1",
|
|
5
5
|
"description": "Main library for MemberJunction Actions. This library is only intended to be imported on the server side.",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
8
|
"files": [
|
|
9
9
|
"/dist"
|
|
10
10
|
],
|
|
11
|
-
"scripts": {
|
|
12
|
-
"start": "ts-node-dev src/index.ts",
|
|
13
|
-
"build": "tsc && tsc-alias -f",
|
|
14
|
-
"test": "vitest run",
|
|
15
|
-
"test:watch": "vitest"
|
|
16
|
-
},
|
|
17
11
|
"author": "MemberJunction.com",
|
|
18
12
|
"license": "ISC",
|
|
19
13
|
"devDependencies": {
|
|
20
14
|
"ts-node-dev": "^2.0.0",
|
|
21
|
-
"typescript": "^5.9.3"
|
|
15
|
+
"typescript": "^5.9.3",
|
|
16
|
+
"vitest": "^3.1.1"
|
|
22
17
|
},
|
|
23
18
|
"dependencies": {
|
|
24
|
-
"@memberjunction/action-runtime": "
|
|
25
|
-
"@memberjunction/actions-base": "
|
|
26
|
-
"@memberjunction/ai": "
|
|
27
|
-
"@memberjunction/code-execution": "
|
|
28
|
-
"@memberjunction/core": "
|
|
29
|
-
"@memberjunction/core-entities": "
|
|
30
|
-
"@memberjunction/doc-utils": "
|
|
31
|
-
"@memberjunction/global": "
|
|
19
|
+
"@memberjunction/action-runtime": "6.1.0-edge.1",
|
|
20
|
+
"@memberjunction/actions-base": "6.1.0-edge.1",
|
|
21
|
+
"@memberjunction/ai": "6.1.0-edge.1",
|
|
22
|
+
"@memberjunction/code-execution": "6.1.0-edge.1",
|
|
23
|
+
"@memberjunction/core": "6.1.0-edge.1",
|
|
24
|
+
"@memberjunction/core-entities": "6.1.0-edge.1",
|
|
25
|
+
"@memberjunction/doc-utils": "6.1.0-edge.1",
|
|
26
|
+
"@memberjunction/global": "6.1.0-edge.1"
|
|
32
27
|
},
|
|
33
28
|
"repository": {
|
|
34
29
|
"type": "git",
|
|
35
30
|
"url": "https://github.com/MemberJunction/MJ"
|
|
31
|
+
},
|
|
32
|
+
"scripts": {
|
|
33
|
+
"start": "ts-node-dev src/index.ts",
|
|
34
|
+
"build": "tsc && tsc-alias -f",
|
|
35
|
+
"test": "vitest run",
|
|
36
|
+
"test:watch": "vitest"
|
|
36
37
|
}
|
|
37
|
-
}
|
|
38
|
+
}
|