@cadenza.io/core 3.4.1 → 3.5.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/dist/index.d.mts +3 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.js +21 -7
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +21 -7
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -46,6 +46,7 @@ var SignalBroker = class _SignalBroker {
|
|
|
46
46
|
constructor() {
|
|
47
47
|
this.debug = false;
|
|
48
48
|
this.verbose = false;
|
|
49
|
+
// TODO: Signals should be a class with a the observers, registered flag and other data.
|
|
49
50
|
this.signalObservers = /* @__PURE__ */ new Map();
|
|
50
51
|
this.emitStacks = /* @__PURE__ */ new Map();
|
|
51
52
|
this.addSignal("meta.signal_broker.added");
|
|
@@ -111,13 +112,27 @@ var SignalBroker = class _SignalBroker {
|
|
|
111
112
|
"Executes queued signals and clears the stack"
|
|
112
113
|
).doOn("meta.process_signal_queue_requested").emits("meta.signal_broker.queue_empty");
|
|
113
114
|
this.getSignalsTask = Cadenza.createMetaTask("Get signals", (ctx) => {
|
|
115
|
+
const uniqueSignals = Array.from(this.signalObservers.keys()).filter(
|
|
116
|
+
(s) => !s.includes(":")
|
|
117
|
+
);
|
|
118
|
+
const processedSignals = uniqueSignals.map((signal) => ({
|
|
119
|
+
signal,
|
|
120
|
+
data: {
|
|
121
|
+
registered: this.signalObservers.get(signal)?.registered ?? false
|
|
122
|
+
}
|
|
123
|
+
}));
|
|
114
124
|
return {
|
|
115
|
-
__signals:
|
|
116
|
-
([signal, data]) => ({ signal, data })
|
|
117
|
-
),
|
|
125
|
+
__signals: processedSignals,
|
|
118
126
|
...ctx
|
|
119
127
|
};
|
|
120
128
|
});
|
|
129
|
+
this.registerSignalTask = Cadenza.createMetaTask(
|
|
130
|
+
"Register signal",
|
|
131
|
+
(ctx) => {
|
|
132
|
+
const { __signalName } = ctx;
|
|
133
|
+
this.signalObservers.get(__signalName).registered = true;
|
|
134
|
+
}
|
|
135
|
+
).doOn("meta.signal.registered");
|
|
121
136
|
}
|
|
122
137
|
/**
|
|
123
138
|
* Observes a signal with a routine/task.
|
|
@@ -157,6 +172,7 @@ var SignalBroker = class _SignalBroker {
|
|
|
157
172
|
if (!this.emitStacks.has(execId)) this.emitStacks.set(execId, /* @__PURE__ */ new Map());
|
|
158
173
|
const stack = this.emitStacks.get(execId);
|
|
159
174
|
stack.set(signal, context);
|
|
175
|
+
this.addSignal(signal);
|
|
160
176
|
let executed = false;
|
|
161
177
|
try {
|
|
162
178
|
executed = this.execute(signal, context);
|
|
@@ -947,8 +963,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
947
963
|
});
|
|
948
964
|
}
|
|
949
965
|
}
|
|
950
|
-
emitWithMetadata(signal,
|
|
951
|
-
const data = { ...ctx };
|
|
966
|
+
emitWithMetadata(signal, data) {
|
|
952
967
|
if (!this.task?.isHidden) {
|
|
953
968
|
data.__signalEmission = {
|
|
954
969
|
taskName: this.task.name,
|
|
@@ -964,8 +979,7 @@ var GraphNode = class _GraphNode extends SignalEmitter {
|
|
|
964
979
|
}
|
|
965
980
|
this.emit(signal, data);
|
|
966
981
|
}
|
|
967
|
-
emitMetricsWithMetadata(signal,
|
|
968
|
-
const data = { ...ctx };
|
|
982
|
+
emitMetricsWithMetadata(signal, data) {
|
|
969
983
|
if (!this.task?.isHidden) {
|
|
970
984
|
data.__signalEmission = {
|
|
971
985
|
taskName: this.task.name,
|