speechflow 2.2.1 → 2.3.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/{etc/claude.md → AGENTS.md} +8 -3
- package/CHANGELOG.md +98 -1
- package/README.md +28 -4
- package/etc/speechflow.yaml +3 -1
- package/etc/stx.conf +1 -1
- package/package.json +6 -6
- package/speechflow-cli/dst/speechflow-main-api.d.ts +2 -1
- package/speechflow-cli/dst/speechflow-main-api.js +57 -16
- package/speechflow-cli/dst/speechflow-main-api.js.map +1 -1
- package/speechflow-cli/dst/speechflow-main-cli.js +2 -2
- package/speechflow-cli/dst/speechflow-main-config.js +1 -1
- package/speechflow-cli/dst/speechflow-main-graph.js +55 -21
- package/speechflow-cli/dst/speechflow-main-graph.js.map +1 -1
- package/speechflow-cli/dst/speechflow-main-nodes.js +1 -1
- package/speechflow-cli/dst/speechflow-main-status.js +6 -3
- package/speechflow-cli/dst/speechflow-main-status.js.map +1 -1
- package/speechflow-cli/dst/speechflow-main.js +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-compressor-wt.js +17 -19
- package/speechflow-cli/dst/speechflow-node-a2a-compressor-wt.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-compressor.js +25 -8
- package/speechflow-cli/dst/speechflow-node-a2a-compressor.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-expander-wt.js +16 -13
- package/speechflow-cli/dst/speechflow-node-a2a-expander-wt.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-expander.js +6 -5
- package/speechflow-cli/dst/speechflow-node-a2a-expander.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-ffmpeg.js +7 -7
- package/speechflow-cli/dst/speechflow-node-a2a-ffmpeg.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-filler.js +7 -4
- package/speechflow-cli/dst/speechflow-node-a2a-filler.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-gain.js +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-gender.js +21 -16
- package/speechflow-cli/dst/speechflow-node-a2a-gender.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-gtcrn-wt.js +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-gtcrn.js +33 -11
- package/speechflow-cli/dst/speechflow-node-a2a-gtcrn.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-meter.js +2 -2
- package/speechflow-cli/dst/speechflow-node-a2a-meter.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-mute.js +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-pitch.js +4 -3
- package/speechflow-cli/dst/speechflow-node-a2a-pitch.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-rnnoise-wt.js +2 -2
- package/speechflow-cli/dst/speechflow-node-a2a-rnnoise-wt.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-rnnoise.js +19 -11
- package/speechflow-cli/dst/speechflow-node-a2a-rnnoise.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-speex.js +8 -8
- package/speechflow-cli/dst/speechflow-node-a2a-speex.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-vad.js +33 -29
- package/speechflow-cli/dst/speechflow-node-a2a-vad.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2a-wav.js +6 -5
- package/speechflow-cli/dst/speechflow-node-a2a-wav.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2t-amazon.d.ts +2 -1
- package/speechflow-cli/dst/speechflow-node-a2t-amazon.js +42 -23
- package/speechflow-cli/dst/speechflow-node-a2t-amazon.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2t-deepgram.js +13 -5
- package/speechflow-cli/dst/speechflow-node-a2t-deepgram.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2t-google.d.ts +1 -0
- package/speechflow-cli/dst/speechflow-node-a2t-google.js +8 -2
- package/speechflow-cli/dst/speechflow-node-a2t-google.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-a2t-openai.js +33 -27
- package/speechflow-cli/dst/speechflow-node-a2t-openai.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2a-amazon.js +16 -5
- package/speechflow-cli/dst/speechflow-node-t2a-amazon.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2a-elevenlabs.js +17 -5
- package/speechflow-cli/dst/speechflow-node-t2a-elevenlabs.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2a-google.js +17 -5
- package/speechflow-cli/dst/speechflow-node-t2a-google.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2a-kitten.d.ts +15 -0
- package/speechflow-cli/dst/speechflow-node-t2a-kitten.js +194 -0
- package/speechflow-cli/dst/speechflow-node-t2a-kitten.js.map +1 -0
- package/speechflow-cli/dst/speechflow-node-t2a-kokoro.js +24 -10
- package/speechflow-cli/dst/speechflow-node-t2a-kokoro.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2a-openai.js +17 -5
- package/speechflow-cli/dst/speechflow-node-t2a-openai.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2a-supertonic.js +22 -7
- package/speechflow-cli/dst/speechflow-node-t2a-supertonic.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-amazon.js +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-deepl.js +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-format.js +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-google.js +4 -2
- package/speechflow-cli/dst/speechflow-node-t2t-google.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-modify.js +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-opus.js +10 -2
- package/speechflow-cli/dst/speechflow-node-t2t-opus.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-profanity.js +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-punctuation.js +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-sentence.d.ts +3 -0
- package/speechflow-cli/dst/speechflow-node-t2t-sentence.js +160 -57
- package/speechflow-cli/dst/speechflow-node-t2t-sentence.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-spellcheck.js +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-subtitle.js +34 -14
- package/speechflow-cli/dst/speechflow-node-t2t-subtitle.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-summary.js +3 -3
- package/speechflow-cli/dst/speechflow-node-t2t-summary.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-t2t-translate.js +1 -1
- package/speechflow-cli/dst/speechflow-node-x2x-filter.js +3 -2
- package/speechflow-cli/dst/speechflow-node-x2x-filter.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-x2x-trace.js +1 -1
- package/speechflow-cli/dst/speechflow-node-xio-device.js +18 -7
- package/speechflow-cli/dst/speechflow-node-xio-device.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-xio-exec.js +27 -15
- package/speechflow-cli/dst/speechflow-node-xio-exec.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-xio-file.js +13 -7
- package/speechflow-cli/dst/speechflow-node-xio-file.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-xio-mqtt.js +25 -12
- package/speechflow-cli/dst/speechflow-node-xio-mqtt.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-xio-vban.js +32 -20
- package/speechflow-cli/dst/speechflow-node-xio-vban.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-xio-webrtc.d.ts +1 -0
- package/speechflow-cli/dst/speechflow-node-xio-webrtc.js +84 -63
- package/speechflow-cli/dst/speechflow-node-xio-webrtc.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node-xio-websocket.d.ts +1 -0
- package/speechflow-cli/dst/speechflow-node-xio-websocket.js +75 -20
- package/speechflow-cli/dst/speechflow-node-xio-websocket.js.map +1 -1
- package/speechflow-cli/dst/speechflow-node.js +5 -7
- package/speechflow-cli/dst/speechflow-node.js.map +1 -1
- package/speechflow-cli/dst/speechflow-util-audio-wt.js +31 -5
- package/speechflow-cli/dst/speechflow-util-audio-wt.js.map +1 -1
- package/speechflow-cli/dst/speechflow-util-audio.d.ts +1 -1
- package/speechflow-cli/dst/speechflow-util-audio.js +28 -15
- package/speechflow-cli/dst/speechflow-util-audio.js.map +1 -1
- package/speechflow-cli/dst/speechflow-util-error.d.ts +1 -1
- package/speechflow-cli/dst/speechflow-util-error.js +2 -2
- package/speechflow-cli/dst/speechflow-util-error.js.map +1 -1
- package/speechflow-cli/dst/speechflow-util-llm.js +13 -3
- package/speechflow-cli/dst/speechflow-util-llm.js.map +1 -1
- package/speechflow-cli/dst/speechflow-util-misc.d.ts +3 -2
- package/speechflow-cli/dst/speechflow-util-misc.js +63 -6
- package/speechflow-cli/dst/speechflow-util-misc.js.map +1 -1
- package/speechflow-cli/dst/speechflow-util-queue.d.ts +9 -17
- package/speechflow-cli/dst/speechflow-util-queue.js +98 -78
- package/speechflow-cli/dst/speechflow-util-queue.js.map +1 -1
- package/speechflow-cli/dst/speechflow-util-stream.d.ts +1 -1
- package/speechflow-cli/dst/speechflow-util-stream.js +35 -8
- package/speechflow-cli/dst/speechflow-util-stream.js.map +1 -1
- package/speechflow-cli/dst/speechflow-util.js +1 -1
- package/speechflow-cli/dst/speechflow.d.ts +1 -1
- package/speechflow-cli/dst/speechflow.js +1 -1
- package/speechflow-cli/etc/eslint.mjs +1 -1
- package/speechflow-cli/etc/oxlint.jsonc +2 -1
- package/speechflow-cli/etc/stx.conf +8 -2
- package/speechflow-cli/package.d/@ericedouard+vad-node-realtime+0.2.0.patch +2 -1
- package/speechflow-cli/package.d/@typescript-eslint+typescript-estree+8.57.2.patch +12 -0
- package/speechflow-cli/package.d/kitten-tts-js+0.1.2.patch +24 -0
- package/speechflow-cli/package.d/speex-resampler+3.0.1.patch +56 -0
- package/speechflow-cli/package.json +40 -30
- package/speechflow-cli/src/lib.d.ts +19 -1
- package/speechflow-cli/src/speechflow-main-api.ts +64 -19
- package/speechflow-cli/src/speechflow-main-cli.ts +2 -2
- package/speechflow-cli/src/speechflow-main-config.ts +1 -1
- package/speechflow-cli/src/speechflow-main-graph.ts +56 -22
- package/speechflow-cli/src/speechflow-main-nodes.ts +1 -1
- package/speechflow-cli/src/speechflow-main-status.ts +6 -3
- package/speechflow-cli/src/speechflow-main.ts +1 -1
- package/speechflow-cli/src/speechflow-node-a2a-compressor-wt.ts +19 -20
- package/speechflow-cli/src/speechflow-node-a2a-compressor.ts +31 -13
- package/speechflow-cli/src/speechflow-node-a2a-expander-wt.ts +17 -13
- package/speechflow-cli/src/speechflow-node-a2a-expander.ts +6 -5
- package/speechflow-cli/src/speechflow-node-a2a-ffmpeg.ts +9 -8
- package/speechflow-cli/src/speechflow-node-a2a-filler.ts +8 -4
- package/speechflow-cli/src/speechflow-node-a2a-gain.ts +1 -1
- package/speechflow-cli/src/speechflow-node-a2a-gender.ts +22 -18
- package/speechflow-cli/src/speechflow-node-a2a-gtcrn-wt.ts +1 -1
- package/speechflow-cli/src/speechflow-node-a2a-gtcrn.ts +43 -16
- package/speechflow-cli/src/speechflow-node-a2a-meter.ts +2 -2
- package/speechflow-cli/src/speechflow-node-a2a-mute.ts +1 -1
- package/speechflow-cli/src/speechflow-node-a2a-pitch.ts +4 -3
- package/speechflow-cli/src/speechflow-node-a2a-rnnoise-wt.ts +2 -2
- package/speechflow-cli/src/speechflow-node-a2a-rnnoise.ts +24 -12
- package/speechflow-cli/src/speechflow-node-a2a-speex.ts +10 -9
- package/speechflow-cli/src/speechflow-node-a2a-vad.ts +38 -31
- package/speechflow-cli/src/speechflow-node-a2a-wav.ts +6 -5
- package/speechflow-cli/src/speechflow-node-a2t-amazon.ts +47 -25
- package/speechflow-cli/src/speechflow-node-a2t-deepgram.ts +17 -6
- package/speechflow-cli/src/speechflow-node-a2t-google.ts +12 -4
- package/speechflow-cli/src/speechflow-node-a2t-openai.ts +39 -31
- package/speechflow-cli/src/speechflow-node-t2a-amazon.ts +16 -5
- package/speechflow-cli/src/speechflow-node-t2a-elevenlabs.ts +17 -5
- package/speechflow-cli/src/speechflow-node-t2a-google.ts +17 -5
- package/speechflow-cli/src/speechflow-node-t2a-kitten.ts +178 -0
- package/speechflow-cli/src/speechflow-node-t2a-kokoro.ts +24 -10
- package/speechflow-cli/src/speechflow-node-t2a-openai.ts +17 -5
- package/speechflow-cli/src/speechflow-node-t2a-supertonic.ts +22 -7
- package/speechflow-cli/src/speechflow-node-t2t-amazon.ts +1 -1
- package/speechflow-cli/src/speechflow-node-t2t-deepl.ts +1 -1
- package/speechflow-cli/src/speechflow-node-t2t-format.ts +1 -1
- package/speechflow-cli/src/speechflow-node-t2t-google.ts +4 -2
- package/speechflow-cli/src/speechflow-node-t2t-modify.ts +1 -1
- package/speechflow-cli/src/speechflow-node-t2t-opus.ts +10 -2
- package/speechflow-cli/src/speechflow-node-t2t-profanity.ts +1 -1
- package/speechflow-cli/src/speechflow-node-t2t-punctuation.ts +1 -1
- package/speechflow-cli/src/speechflow-node-t2t-sentence.ts +215 -62
- package/speechflow-cli/src/speechflow-node-t2t-spellcheck.ts +1 -1
- package/speechflow-cli/src/speechflow-node-t2t-subtitle.ts +39 -15
- package/speechflow-cli/src/speechflow-node-t2t-summary.ts +3 -3
- package/speechflow-cli/src/speechflow-node-t2t-translate.ts +1 -1
- package/speechflow-cli/src/speechflow-node-x2x-filter.ts +4 -3
- package/speechflow-cli/src/speechflow-node-x2x-trace.ts +1 -1
- package/speechflow-cli/src/speechflow-node-xio-device.ts +21 -7
- package/speechflow-cli/src/speechflow-node-xio-exec.ts +30 -16
- package/speechflow-cli/src/speechflow-node-xio-file.ts +15 -7
- package/speechflow-cli/src/speechflow-node-xio-mqtt.ts +28 -15
- package/speechflow-cli/src/speechflow-node-xio-vban.ts +35 -22
- package/speechflow-cli/src/speechflow-node-xio-webrtc.ts +92 -70
- package/speechflow-cli/src/speechflow-node-xio-websocket.ts +79 -22
- package/speechflow-cli/src/speechflow-node.ts +7 -8
- package/speechflow-cli/src/speechflow-util-audio-wt.ts +46 -7
- package/speechflow-cli/src/speechflow-util-audio.ts +31 -17
- package/speechflow-cli/src/speechflow-util-error.ts +3 -3
- package/speechflow-cli/src/speechflow-util-llm.ts +14 -3
- package/speechflow-cli/src/speechflow-util-misc.ts +63 -6
- package/speechflow-cli/src/speechflow-util-queue.ts +103 -81
- package/speechflow-cli/src/speechflow-util-stream.ts +40 -8
- package/speechflow-cli/src/speechflow-util.ts +1 -1
- package/speechflow-cli/src/speechflow.ts +1 -1
- package/speechflow-ui-db/dst/index.html +1 -1
- package/speechflow-ui-db/dst/index.js +15 -15
- package/speechflow-ui-db/etc/eslint.mjs +1 -1
- package/speechflow-ui-db/etc/oxlint.jsonc +1 -1
- package/speechflow-ui-db/etc/stx.conf +1 -1
- package/speechflow-ui-db/etc/stylelint.js +1 -1
- package/speechflow-ui-db/etc/stylelint.yaml +1 -1
- package/speechflow-ui-db/etc/vite-client.mts +1 -1
- package/speechflow-ui-db/package.d/@typescript-eslint+typescript-estree+8.57.2.patch +12 -0
- package/speechflow-ui-db/package.json +22 -16
- package/speechflow-ui-db/src/app.styl +1 -1
- package/speechflow-ui-db/src/app.vue +1 -1
- package/speechflow-ui-db/src/index.html +1 -1
- package/speechflow-ui-db/src/index.ts +1 -1
- package/speechflow-ui-st/dst/index.html +1 -1
- package/speechflow-ui-st/dst/index.js +31 -31
- package/speechflow-ui-st/etc/eslint.mjs +1 -1
- package/speechflow-ui-st/etc/oxlint.jsonc +1 -1
- package/speechflow-ui-st/etc/stx.conf +1 -1
- package/speechflow-ui-st/etc/stylelint.js +1 -1
- package/speechflow-ui-st/etc/stylelint.yaml +1 -1
- package/speechflow-ui-st/etc/vite-client.mts +1 -1
- package/speechflow-ui-st/package.d/@typescript-eslint+typescript-estree+8.57.2.patch +12 -0
- package/speechflow-ui-st/package.json +23 -17
- package/speechflow-ui-st/src/app.styl +1 -1
- package/speechflow-ui-st/src/app.vue +1 -1
- package/speechflow-ui-st/src/index.html +1 -1
- package/speechflow-ui-st/src/index.ts +1 -1
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
# CLAUDE.md
|
|
2
1
|
|
|
3
|
-
|
|
2
|
+
AGENTS
|
|
3
|
+
======
|
|
4
|
+
|
|
5
|
+
This file provides guidance to AI agents, when working with code in this repository.
|
|
4
6
|
|
|
5
7
|
## Project Overview
|
|
6
8
|
|
|
7
|
-
SpeechFlow is a command-line interface tool for establishing directed
|
|
9
|
+
SpeechFlow is a command-line interface tool for establishing directed
|
|
10
|
+
data flow graphs of audio and text processing nodes. It enables flexible
|
|
11
|
+
speech processing tasks including capturing audio, text-to-speech,
|
|
12
|
+
speech-to-text, and speech-to-speech translation.
|
|
8
13
|
|
|
9
14
|
## Architecture
|
|
10
15
|
|
package/CHANGELOG.md
CHANGED
|
@@ -1,7 +1,104 @@
|
|
|
1
1
|
|
|
2
|
-
|
|
2
|
+
hangeLog
|
|
3
3
|
=========
|
|
4
4
|
|
|
5
|
+
2.3.1 (2026-03-27)
|
|
6
|
+
------------------
|
|
7
|
+
|
|
8
|
+
- BUGFIX: switch to standard textbook formulas for compressor and expander nodes
|
|
9
|
+
- BUGFIX: improve error handling in "xio-websocket" node
|
|
10
|
+
- BUGFIX: improve error handling in "a2t-amazon" node
|
|
11
|
+
- BUGFIX: improve error handling in "a2a-filler" node
|
|
12
|
+
- BUGFIX: improve closing procedure in "a2a-ffmpeg" node
|
|
13
|
+
- BUGFIX: fix "a2a-compressor" node for sidechain mode by correctly connecting to capture node
|
|
14
|
+
- BUGFIX: fix "a2a-compressor" node by using message passing to communicate gain reduction
|
|
15
|
+
- BUGFIX: fix "a2t-google" node by using better timestamp start calculation
|
|
16
|
+
- BUGFIX: fix memory leak in "a2t-supertonic" when re-creating the resampler
|
|
17
|
+
- BUGFIX: fix "xio-webrtc" node by using marker only initially
|
|
18
|
+
- BUGFIX: fix "t2a-kokoro" node by correctly disposing the model on closing
|
|
19
|
+
- BUGFIX: fix capturing audio data in WebAudio utility code
|
|
20
|
+
- BUGFIX: fix garbage collection of bufffers in "a2a-meter" node
|
|
21
|
+
- BUGFIX: fix "t2t-sentence" node by finally using the "timeout" parameter at all
|
|
22
|
+
- BUGFIX: fix "t2t-sentence" node by correctly adjusting timestamp end on merged chunks
|
|
23
|
+
- BUGFIX: fix "t2t-sentence" node by doing a more precide decision for preview chunks
|
|
24
|
+
- BUGFIX: fix "t2t-sentence" node by fixing Queue class to adjust foreign affected pointers on insert/delete
|
|
25
|
+
- BUGFIX: fix "t2t-sentence" node by reducing spurious events during trimming
|
|
26
|
+
- BUGFIX: fix "t2t-sentence" node by applying defensive guards for out-of-bound touches in queue
|
|
27
|
+
- BUGFIX: fix "t2t-sentence" node by avoiding listener accumulation and duplicate chunk pushes
|
|
28
|
+
- BUGFIX: fix "t2t-sentence" node by ensuring its workOffQueue does not drop calls on re-registration
|
|
29
|
+
- IMPROVEMENT: improve "t2t-sentence" node by using a more elaborative punctuation matching to support more edge cases
|
|
30
|
+
- REFACTOR: split work off queue in "t2t-sentence" into outer and inner parts
|
|
31
|
+
- CLEANUP: cleanup result type of audio classification pipeline in gender node
|
|
32
|
+
|
|
33
|
+
2.3.0 (2026-03-27)
|
|
34
|
+
------------------
|
|
35
|
+
|
|
36
|
+
- FEATURE: add a new "t2a-kitten" node which uses Kitten-TTS for text-to-speech
|
|
37
|
+
- REFACTOR: merge SingleQueue into AsyncQueue and use AsyncQueue in all nodes
|
|
38
|
+
- BUGFIX: avoid calling the transform callback twice in "t2a" nodes
|
|
39
|
+
- BUGFIX: avoid applying makeup gain twice in "a2a-compressor" node
|
|
40
|
+
- BUGFIX: fix hard-knee arithmetic in "a2a-expander" node
|
|
41
|
+
- BUGFIX: fix resource handling by tracking pending promises in "a2a" nodes
|
|
42
|
+
- BUGFIX: fix race condition between chunkQueue nulling and stream destruction in MQTT and VBAN nodes
|
|
43
|
+
- BUGFIX: fix start timestamp calculation in "a2t-google" node
|
|
44
|
+
- BUGFIX: fix error message in case a positional parameter does not match
|
|
45
|
+
- BUGFIX: fix shutdown procedure by avoiding double node deactivation
|
|
46
|
+
- BUGFIX: fix I16/F32 conversions in WebAudio and VBAN code
|
|
47
|
+
- BUGFIX: fix envelope double-writes in Compressor/Expander worklets
|
|
48
|
+
- BUGFIX: fix "a2t-openai" node handler by replacing a 50ms sleep with a close-event wait
|
|
49
|
+
- BUGFIX: fix "a2t-openai" node by improving close procedure to not loose results
|
|
50
|
+
- BUGFIX: fix "t2a-openai" node by allowing overlapping speech items to be received
|
|
51
|
+
- BUGFIX: fix "a2t-deepgram" where "open" promise had no error rejection handler
|
|
52
|
+
- BUGFIX: fix "t2a-kokoro" node for a timer leak on model load failure
|
|
53
|
+
- BUGFIX: fix "t2a-supertonic" node for automatically adapting to changing sampling rates
|
|
54
|
+
- BUGFIX: fix "t2t-subtitle" buffer handling for "import" mode
|
|
55
|
+
- BUGFIX: fix "t2t-subtitle" node by parsing VTT lines more correctly
|
|
56
|
+
- BUGFIX: fix "t2t-subtitle" node by checking the WebSocket ready state before sending
|
|
57
|
+
- BUGFIX: fix "t2t-subtitle" node by allowing large hours in parsing SRT format
|
|
58
|
+
- BUGFIX: fix "x2x-filter" node by not stumbling over undefined values
|
|
59
|
+
- BUGFIX: fix "x2x-filter" node by matching integer and float numbers more precisely
|
|
60
|
+
- BUGFIX: fix "xio-websocket" node by closing all client connections on destruction
|
|
61
|
+
- BUGFIX: fix "xio-websocket" node by correctly shutting down internal queue
|
|
62
|
+
- BUGFIX: fix "xio-webrtc" node by catching errors on listening
|
|
63
|
+
- BUGFIX: fix "xio-webrtc" node by catching errors on processing
|
|
64
|
+
- BUGFIX: fix "xio-device" node by shutdown the stream on destruction
|
|
65
|
+
- BUGFIX: fix "a2t-deepgram" chunk kind classification logic
|
|
66
|
+
- BUGFIX: fix StreamWrapper utility class to correctly flush data
|
|
67
|
+
- BUGFIX: fix "a2a-gtcrn" node by short-circuiting procedures in case of shutdown
|
|
68
|
+
- BUGFIX: fix "a2a-expander" node by guarding against IEEE 754 edge case
|
|
69
|
+
- BUGFIX: fix "a2t-amazon" race condition in ensureAudioStreamActive
|
|
70
|
+
- BUGFIX: fix "t2t-summary" node for accumulated results without sentence-ending punctuation
|
|
71
|
+
- BUGFIX: fix "t2t-summary" node for more correct counting of sentences
|
|
72
|
+
- BUGFIX: fix "t2t-google" node by awaiting the close method on shutdown
|
|
73
|
+
- BUGFIX: fix "a2a-filler" node by not terminating stream if a single chunk is invalid
|
|
74
|
+
- BUGFIX: fix "xio-vban" node by awaiting all VBANServer operations
|
|
75
|
+
- BUGFIX: fix "xio-file" node avoid double fs.close() on file descriptor in seekable write mode
|
|
76
|
+
- BUGFIX: fix "xio-file" node by avoiding unhandled promise rejection
|
|
77
|
+
- BUGFIX: fix "a2a-vad" node by avoiding the busy-polling event loop in unplugged mode for consecutive non-speech chunks
|
|
78
|
+
- BUGFIX: fix "a2a-rnnoise" by correctly clamping Int16 values
|
|
79
|
+
- BUGFIX: fix "a2a-gender" by not wasting buffers and fully filling them
|
|
80
|
+
- BUGFIX: fix "a2a-gender" by correctly calculating the duration of audio samples
|
|
81
|
+
- BUGFIX: avoid unbounded active captures memory growth in Audio Worklet
|
|
82
|
+
- BUGFIX: do not throw an exception from Stream::read() operations
|
|
83
|
+
- BUGFIX: signal handlers in main graph code discarded returned Promise and this way caused unhandled rejections
|
|
84
|
+
- BUGFIX: in node graph code avoid mutating a Set during iteration
|
|
85
|
+
- BUGFIX: in node graph code correctly deactivate nodes on shutdown
|
|
86
|
+
- BUGFIX: avoid dangling timers on shutdown by unreferencing sleep/timeout() timers
|
|
87
|
+
- BUGFIX: for SingleQueue.read() avoid conflating "queue empty" with "queue contains undefined"
|
|
88
|
+
- BUGFIX: correctly deep-clone the meta Map of nodes
|
|
89
|
+
- BUGFIX: in many audio transform nodes, clone chunks before mutating the payload to support chunk fan-out to multiple nodes
|
|
90
|
+
- BUGFIX: PromiseSet.awaitAll() can miss concurrently-added promises
|
|
91
|
+
- BUGFIX: In "a2a-speex" and "a2t-deepgram" ensure that Buffer extractions use correct slicing
|
|
92
|
+
- BUGFIX: fix Queue's walkBackwardUntil and searchBackward methods by correctly handling the element at position 0
|
|
93
|
+
- BUGFIX: remove event listeners from graph nodes on stop
|
|
94
|
+
- BUGFIX: honor little endian information in data conversions
|
|
95
|
+
- BUGFIX: in WebAudio code use a ready message instead of a time delay to ensure Worker is ready
|
|
96
|
+
- UPDATE: upgrade NPM dependencies and patches
|
|
97
|
+
- CLEANUP: remove second/dead "open" WebSocket handler in "t2a-openai" node
|
|
98
|
+
- CLEANUP: add missing type definitions for Kitten-TTS
|
|
99
|
+
- CLEANUP: update year in all copyright messages
|
|
100
|
+
- CLEANUP: fix version number and rename file
|
|
101
|
+
|
|
5
102
|
2.2.1 (2026-02-23)
|
|
6
103
|
------------------
|
|
7
104
|
|
package/README.md
CHANGED
|
@@ -58,8 +58,9 @@ speech-to-speech).
|
|
|
58
58
|
[Amazon Polly](https://aws.amazon.com/polly/), or
|
|
59
59
|
[Google Cloud Text-to-Speech](https://cloud.google.com/text-to-speech).
|
|
60
60
|
- local text-to-speech conversion with
|
|
61
|
-
[Kokoro](https://github.com/nazdridoy/kokoro-tts)
|
|
62
|
-
[Supertonic](https://huggingface.co/Supertone/supertonic)
|
|
61
|
+
[Kokoro](https://github.com/nazdridoy/kokoro-tts),
|
|
62
|
+
[Supertonic](https://huggingface.co/Supertone/supertonic), or
|
|
63
|
+
[Kitten-TTS](https://huggingface.co/KittenML/kitten-tts-nano-0.8).
|
|
63
64
|
- local [FFmpeg](https://ffmpeg.org/)-based speech-to-speech conversion,
|
|
64
65
|
- local WAV speech-to-speech decoding/encoding,
|
|
65
66
|
- local text-to-text formatting, regex-based modification,
|
|
@@ -387,7 +388,8 @@ First a short overview of the available processing nodes:
|
|
|
387
388
|
**t2a-elevenlabs**,
|
|
388
389
|
**t2a-google**,
|
|
389
390
|
**t2a-kokoro**,
|
|
390
|
-
**t2a-supertonic
|
|
391
|
+
**t2a-supertonic**,
|
|
392
|
+
**t2a-kitten**.
|
|
391
393
|
- Any-to-Any nodes:
|
|
392
394
|
**x2x-filter**,
|
|
393
395
|
**x2x-trace**.
|
|
@@ -1353,6 +1355,28 @@ The following nodes convert text chunks to audio chunks.
|
|
|
1353
1355
|
| **speed** | 1 | 1.40 | `0.5 <= n <= 2.0` |
|
|
1354
1356
|
| **steps** | 2 | 20 | `1 <= n <= 20` |
|
|
1355
1357
|
|
|
1358
|
+
- Node: **t2a-kitten**<br/>
|
|
1359
|
+
Purpose: **Kitten-TTS Text-to-Speech conversion**<br/>
|
|
1360
|
+
Example: `t2a-kitten(voice: "Bruno", speed: 1.25)`<br/>
|
|
1361
|
+
|
|
1362
|
+
> This node uses Kitten-TTS to perform Text-to-Speech (T2S) conversion,
|
|
1363
|
+
> i.e., it converts the input text stream into an output audio stream.
|
|
1364
|
+
> It is intended to generate speech. The ONNX models are automatically
|
|
1365
|
+
> downloaded from HuggingFace on first use. The node internally operates
|
|
1366
|
+
> at 24KHz sample rate and automatically resamples to SpeechFlow's
|
|
1367
|
+
> internal 48KHz for output. It supports English language only.
|
|
1368
|
+
|
|
1369
|
+
| Port | Payload |
|
|
1370
|
+
| ------- | ----------- |
|
|
1371
|
+
| input | text |
|
|
1372
|
+
| output | audio |
|
|
1373
|
+
|
|
1374
|
+
| Parameter | Position | Default | Requirement |
|
|
1375
|
+
| ------------ | --------- | ----------------------------- | ---------------------- |
|
|
1376
|
+
| **model** | 0 | "KittenML/kitten-tts-nano-0.8"| *none* |
|
|
1377
|
+
| **voice** | 1 | "Bruno" | `/^(?:Bella\|Jasper\|Luna\|Bruno\|Rosie\|Hugo\|Kiki\|Leo)$/` |
|
|
1378
|
+
| **speed** | 2 | 1.25 | `0.5 <= n <= 2.0` |
|
|
1379
|
+
|
|
1356
1380
|
### Any-to-Any Nodes
|
|
1357
1381
|
|
|
1358
1382
|
The following nodes process any type of chunk, i.e., both audio and text chunks.
|
|
@@ -1449,6 +1473,6 @@ time used in production in the msg Filmstudio.
|
|
|
1449
1473
|
Copyright & License
|
|
1450
1474
|
-------------------
|
|
1451
1475
|
|
|
1452
|
-
Copyright © 2024-
|
|
1476
|
+
Copyright © 2024-2026 [Dr. Ralf S. Engelschall](mailto:rse@engelschall.com)<br/>
|
|
1453
1477
|
Licensed under [GPL 3.0](https://spdx.org/licenses/GPL-3.0-only)
|
|
1454
1478
|
|
package/etc/speechflow.yaml
CHANGED
|
@@ -88,7 +88,8 @@ studio-transcription: |
|
|
|
88
88
|
# Real-time studio translation from German to English,
|
|
89
89
|
# including the capturing of all involved inputs and outputs:
|
|
90
90
|
studio-translation: |
|
|
91
|
-
xio-device(device: env.SPEECHFLOW_DEVICE_MIC, mode: "r", chunk: 200) |
|
|
91
|
+
xio-device(device: env.SPEECHFLOW_DEVICE_MIC, mode: "r", chunk: 200) |
|
|
92
|
+
a2a-mute() | {
|
|
92
93
|
a2a-meter(interval: 50, dashboard: "audio-de", mode: "sink"),
|
|
93
94
|
a2t-deepgram(language: "de", model: "nova-3", interim: true, keywords: env.SPEECHFLOW_KEYWORDS) | {
|
|
94
95
|
t2t-profanity(lang: "de") | {
|
|
@@ -121,3 +122,4 @@ studio-translation: |
|
|
|
121
122
|
}
|
|
122
123
|
}
|
|
123
124
|
}
|
|
125
|
+
|
package/etc/stx.conf
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
##
|
|
2
2
|
## SpeechFlow - Speech Processing Flow Graph
|
|
3
|
-
## Copyright (c) 2024-
|
|
3
|
+
## Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
|
|
4
4
|
## Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
|
|
5
5
|
##
|
|
6
6
|
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "speechflow",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"x-stdver": "2.1
|
|
5
|
-
"x-release": "2026-
|
|
3
|
+
"version": "2.3.1",
|
|
4
|
+
"x-stdver": "2.3.1-GA",
|
|
5
|
+
"x-release": "2026-03-27",
|
|
6
6
|
"homepage": "https://github.com/rse/speechflow",
|
|
7
7
|
"description": "Speech Processing Flow Graph",
|
|
8
8
|
"keywords": [ "speech", "audio", "flow", "graph" ],
|
|
@@ -20,14 +20,14 @@
|
|
|
20
20
|
"@rse/stx": "1.1.4"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
|
-
"nodemon": "3.1.
|
|
23
|
+
"nodemon": "3.1.14",
|
|
24
24
|
"watch": "1.0.2",
|
|
25
25
|
"concurrently": "9.2.1",
|
|
26
26
|
"wait-on": "9.0.4",
|
|
27
27
|
"cross-env": "10.1.0",
|
|
28
28
|
"shx": "0.4.0",
|
|
29
|
-
"secretlint": "11.
|
|
30
|
-
"@secretlint/secretlint-rule-preset-recommend": "11.
|
|
29
|
+
"secretlint": "11.4.0",
|
|
30
|
+
"@secretlint/secretlint-rule-preset-recommend": "11.4.0"
|
|
31
31
|
},
|
|
32
32
|
"engines": {
|
|
33
33
|
"npm": ">=10.0.0",
|
|
@@ -6,8 +6,9 @@ export declare class APIServer {
|
|
|
6
6
|
private wsPeers;
|
|
7
7
|
private hapi;
|
|
8
8
|
private sendOSC;
|
|
9
|
+
private graph;
|
|
9
10
|
constructor(cli: CLIio);
|
|
10
11
|
start(args: CLIOptions, graph: NodeGraph): Promise<void>;
|
|
11
12
|
stop(args: CLIOptions): Promise<void>;
|
|
12
|
-
sendErrorToDashboard(time: number, node: string, level: string, message: string):
|
|
13
|
+
sendErrorToDashboard(time: number, node: string, level: string, message: string): void;
|
|
13
14
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*
|
|
3
3
|
** SpeechFlow - Speech Processing Flow Graph
|
|
4
|
-
** Copyright (c) 2024-
|
|
4
|
+
** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
|
|
5
5
|
** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
|
|
6
6
|
*/
|
|
7
7
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
@@ -62,12 +62,15 @@ class APIServer {
|
|
|
62
62
|
wsPeers = new Map();
|
|
63
63
|
hapi = null;
|
|
64
64
|
sendOSC = null;
|
|
65
|
+
graph = null;
|
|
65
66
|
/* creation */
|
|
66
67
|
constructor(cli) {
|
|
67
68
|
this.cli = cli;
|
|
68
69
|
}
|
|
69
70
|
/* start API server service */
|
|
70
71
|
async start(args, graph) {
|
|
72
|
+
/* remember graph for later cleanup */
|
|
73
|
+
this.graph = graph;
|
|
71
74
|
/* define external request/response structure */
|
|
72
75
|
const requestValidator = arktype.type({
|
|
73
76
|
request: "string",
|
|
@@ -89,10 +92,13 @@ class APIServer {
|
|
|
89
92
|
throw new Error(`external request failed: no such node <${name}>`);
|
|
90
93
|
}
|
|
91
94
|
else {
|
|
95
|
+
const ac = new AbortController();
|
|
92
96
|
await Promise.race([
|
|
93
97
|
foundNode.receiveRequest(argList),
|
|
94
|
-
util.timeout(10 * 1000)
|
|
95
|
-
]).
|
|
98
|
+
util.timeout(10 * 1000, "timeout", ac.signal)
|
|
99
|
+
]).finally(() => {
|
|
100
|
+
ac.abort();
|
|
101
|
+
}).catch((err) => {
|
|
96
102
|
this.cli.log("warning", `external request to node <${name}> failed: ${err.message}`);
|
|
97
103
|
throw err;
|
|
98
104
|
});
|
|
@@ -153,8 +159,13 @@ class APIServer {
|
|
|
153
159
|
path: "/api/dashboard",
|
|
154
160
|
handler: (request, h) => {
|
|
155
161
|
const config = [];
|
|
162
|
+
if (args.d === "")
|
|
163
|
+
return h.response(config).code(200);
|
|
156
164
|
for (const block of args.d.split(",")) {
|
|
157
|
-
const
|
|
165
|
+
const parts = block.split(":");
|
|
166
|
+
if (parts.length !== 3)
|
|
167
|
+
continue;
|
|
168
|
+
const [type, id, name] = parts;
|
|
158
169
|
config.push({ type, id, name });
|
|
159
170
|
}
|
|
160
171
|
return h.response(config).code(200);
|
|
@@ -232,7 +243,10 @@ class APIServer {
|
|
|
232
243
|
for (const [peer, info] of this.wsPeers.entries()) {
|
|
233
244
|
this.cli.log("debug", `HAPI: remote peer ${peer}: sending ${data}`);
|
|
234
245
|
if (info.ws.readyState === ws_1.default.OPEN)
|
|
235
|
-
info.ws.send(data)
|
|
246
|
+
info.ws.send(data, (err) => {
|
|
247
|
+
if (err)
|
|
248
|
+
this.cli.log("warning", `HAPI: peer ${peer}: send failed: ${err.message}`);
|
|
249
|
+
});
|
|
236
250
|
}
|
|
237
251
|
});
|
|
238
252
|
}
|
|
@@ -246,12 +260,17 @@ class APIServer {
|
|
|
246
260
|
const port = Number.parseInt(m[2], 10);
|
|
247
261
|
this.sendOSC = (url, ...argList) => {
|
|
248
262
|
const msg = new osc_js_1.default.Message(url, ...argList);
|
|
249
|
-
|
|
263
|
+
try {
|
|
264
|
+
osc.send(msg, { host, port });
|
|
265
|
+
}
|
|
266
|
+
catch (err) {
|
|
267
|
+
this.cli.log("warning", `OSC/UDP send to ${host}:${port} failed: ${err.message}`);
|
|
268
|
+
}
|
|
250
269
|
};
|
|
251
270
|
}
|
|
252
271
|
/* hook for send-dashboard method of nodes */
|
|
253
272
|
for (const node of graph.getGraphNodes()) {
|
|
254
|
-
node.on("send-dashboard", (info) => {
|
|
273
|
+
node.on("send-dashboard", async (info) => {
|
|
255
274
|
const data = JSON.stringify({
|
|
256
275
|
response: "DASHBOARD",
|
|
257
276
|
node: "",
|
|
@@ -260,16 +279,24 @@ class APIServer {
|
|
|
260
279
|
for (const [peer, peerInfo] of this.wsPeers.entries()) {
|
|
261
280
|
this.cli.log("debug", `HAPI: dashboard peer ${peer}: send ${data}`);
|
|
262
281
|
if (peerInfo.ws.readyState === ws_1.default.OPEN)
|
|
263
|
-
peerInfo.ws.send(data)
|
|
282
|
+
peerInfo.ws.send(data, (err) => {
|
|
283
|
+
if (err)
|
|
284
|
+
this.cli.log("warning", `HAPI: dashboard peer ${peer}: send failed: ${err.message}`);
|
|
285
|
+
});
|
|
264
286
|
}
|
|
287
|
+
const promises = [];
|
|
265
288
|
for (const n of graph.getGraphNodes()) {
|
|
266
|
-
|
|
289
|
+
const ac = new AbortController();
|
|
290
|
+
promises.push(Promise.race([
|
|
267
291
|
n.receiveDashboard(info.type, info.id, info.kind, info.value),
|
|
268
|
-
util.timeout(10 * 1000)
|
|
269
|
-
]).
|
|
292
|
+
util.timeout(10 * 1000, "timeout", ac.signal)
|
|
293
|
+
]).finally(() => {
|
|
294
|
+
ac.abort();
|
|
295
|
+
}).catch((err) => {
|
|
270
296
|
this.cli.log("warning", `sending dashboard info to node <${n.id}> failed: ${err.message}`);
|
|
271
|
-
});
|
|
297
|
+
}));
|
|
272
298
|
}
|
|
299
|
+
await Promise.allSettled(promises);
|
|
273
300
|
if (args.o !== "" && this.sendOSC)
|
|
274
301
|
this.sendOSC("/speechflow/dashboard", info.type, info.id, info.kind, info.value);
|
|
275
302
|
});
|
|
@@ -277,6 +304,14 @@ class APIServer {
|
|
|
277
304
|
}
|
|
278
305
|
/* stop API server service */
|
|
279
306
|
async stop(args) {
|
|
307
|
+
/* remove event listeners from graph nodes */
|
|
308
|
+
if (this.graph) {
|
|
309
|
+
for (const node of this.graph.getGraphNodes()) {
|
|
310
|
+
node.removeAllListeners("send-response");
|
|
311
|
+
node.removeAllListeners("send-dashboard");
|
|
312
|
+
}
|
|
313
|
+
this.graph = null;
|
|
314
|
+
}
|
|
280
315
|
/* shutdown HAPI service */
|
|
281
316
|
if (this.hapi) {
|
|
282
317
|
this.cli.log("info", `HAPI: stopping REST/WebSocket network service: http://${args.a}:${args.p}`);
|
|
@@ -302,17 +337,20 @@ class APIServer {
|
|
|
302
337
|
}
|
|
303
338
|
}));
|
|
304
339
|
}
|
|
340
|
+
const ac = new AbortController();
|
|
305
341
|
await Promise.race([
|
|
306
342
|
Promise.all(closePromises),
|
|
307
|
-
util.timeout(5 * 1000)
|
|
308
|
-
]).
|
|
343
|
+
util.timeout(5 * 1000, "timeout", ac.signal)
|
|
344
|
+
]).finally(() => {
|
|
345
|
+
ac.abort();
|
|
346
|
+
}).catch((error) => {
|
|
309
347
|
this.cli.log("warning", `HAPI: WebSockets failed to close: ${util.ensureError(error).message}`);
|
|
310
348
|
});
|
|
311
349
|
this.wsPeers.clear();
|
|
312
350
|
}
|
|
313
351
|
}
|
|
314
352
|
/* send information to dashboard on error */
|
|
315
|
-
|
|
353
|
+
sendErrorToDashboard(time, node, level, message) {
|
|
316
354
|
const data = JSON.stringify({
|
|
317
355
|
response: "HINT",
|
|
318
356
|
node,
|
|
@@ -321,7 +359,10 @@ class APIServer {
|
|
|
321
359
|
for (const [peer, peerInfo] of this.wsPeers.entries()) {
|
|
322
360
|
this.cli.log("debug", `HAPI: dashboard peer ${peer}: send ${data}`);
|
|
323
361
|
if (peerInfo.ws.readyState === ws_1.default.OPEN)
|
|
324
|
-
peerInfo.ws.send(data)
|
|
362
|
+
peerInfo.ws.send(data, (err) => {
|
|
363
|
+
if (err)
|
|
364
|
+
this.cli.log("warning", `HAPI: dashboard peer ${peer}: send failed: ${err.message}`);
|
|
365
|
+
});
|
|
325
366
|
}
|
|
326
367
|
}
|
|
327
368
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speechflow-main-api.js","sourceRoot":"","sources":["../src/speechflow-main-api.ts"],"names":[],"mappings":";AAAA;;;;EAIE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,6BAA6B;AAC7B,0DAAuC;AAGvC,6BAA6B;AAC7B,iDAAwC;AACxC,wDAAyC;AACzC,4CAAgC;AAChC,kFAAmD;AACnD,4EAAgD;AAChD,oDAAoC;AACpC,iDAAqC;AAGrC,6BAA6B;AAC7B,wDAA+C;AAG/C,sEAAgD;AAShD,uEAAuE;AACvE,MAAa,SAAS;IAQN;IAPZ,sBAAsB;IACd,OAAO,GAAmD,IAAI,GAAG,EAAsB,CAAA;IACvF,IAAI,GAAsD,IAAI,CAAA;IAC9D,OAAO,GAAmD,IAAI,CAAA;IAEtE,gBAAgB;IAChB,YACY,GAAU;QAAV,QAAG,GAAH,GAAG,CAAO;IACnB,CAAC;IAEJ,gCAAgC;IAChC,KAAK,CAAC,KAAK,CAAE,IAAgB,EAAE,KAAgB;QAC3C,kDAAkD;QAClD,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,QAAQ;YACjB,IAAI,EAAK,QAAQ;YACjB,IAAI,EAAK,WAAW;SACvB,CAAC,CAAA;QAEF,wDAAwD;QACxD,MAAM,sBAAsB,GAAG,KAAK,EAAE,IAAa,EAAE,EAAE;YACnD,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;YAClC,IAAI,GAAG,YAAY,OAAO,CAAC,IAAI,CAAC,MAAM;gBAClC,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;YACtD,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;gBACzB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;YAClE,MAAM,IAAI,GAAG,GAAG,CAAC,IAAc,CAAA;YAC/B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAa,CAAA;YACjC,MAAM,SAAS,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;YAC3C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC1B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,0CAA0C,IAAI,GAAG,CAAC,CAAA;gBAC1E,MAAM,IAAI,KAAK,CAAC,0CAA0C,IAAI,GAAG,CAAC,CAAA;YACtE,CAAC;iBACI,CAAC;gBACF,MAAM,OAAO,CAAC,IAAI,CAAC;oBACf,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC;oBACjC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC;iBAC1B,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;oBACpB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,6BAA6B,IAAI,aAAa,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;oBACpF,MAAM,GAAG,CAAA;gBACb,CAAC,CAAC,CAAA;YACN,CAAC;QACL,CAAC,CAAA;QAED,oCAAoC;QACpC,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC;YACxB,OAAO,EAAE,IAAI,CAAC,CAAC;YACf,IAAI,EAAK,IAAI,CAAC,CAAC;SAClB,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,eAAK,EAAE,CAAC,CAAA;QAC3C,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,4BAAU,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,GAAG,sBAAG,CAAC,IAAI,IAAI,sBAAG,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;QACnG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,+BAAa,EAAE,CAAC,CAAA;QACnD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,OAAqB,EAAE,EAAE;YACtD,IAAI,QAAQ,GAAG,QAAQ,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAA;YACpD,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAA;YAC9B,IAAI,EAAE,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC1B,MAAM,SAAS,GAAI,EAAE,CAAC,EAAU,CAAC,eAAe;oBAC5C,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,KAAK,CAAA;gBACrD,QAAQ,GAAG,aAAa,SAAS,IAAI,QAAQ,EAAE,CAAA;YACnD,CAAC;YACD,MAAM,GAAG,GACL,SAAS,GAAK,OAAO,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI;gBAC/C,SAAS,GAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,IAAI;gBACjD,MAAM,GAAQ,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI;gBACzC,WAAW,GAAG,QAAQ,GAAG,IAAI;gBAC7B,WAAW,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;YAChG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,kBAAkB,GAAG,EAAE,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAE,OAAO,CAAE,EAAE,EAAE,CAAC,QAAsB,EAAE,KAAwB,EAAE,KAA8B,EAAE,EAAE;YACjJ,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK;gBAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,wBAAwB,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;;gBAEpE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,wBAAwB,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;QACpE,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAoB,EAAE,IAA6B,EAAE,EAAE;YAC/E,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAA;gBACvB,IAAI,GAAG,YAAY,KAAK;oBACpB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;;oBAElD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,GAAG,EAAE,CAAC,CAAA;YAClD,CAAC;QACL,CAAC,CAAC,CAAA;QAEF,2CAA2C;QAC3C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACZ,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE;gBACL,SAAS,EAAE;oBACP,IAAI,EAAE,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4BAA4B,CAAC;oBACxD,eAAe,EAAE,IAAI;oBACrB,KAAK,EAAE,IAAI;iBACd;aACJ;SACJ,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACZ,MAAM,EAAE,KAAK;YACb,IAAI,EAAI,gBAAgB;YACxB,OAAO,EAAE,CAAC,OAAqB,EAAE,CAAuB,EAAE,EAAE;gBACxD,MAAM,MAAM,GAAG,EAAE,CAAA;gBACjB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;oBACpC,MAAM,CAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAE,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;oBAC3C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;gBACnC,CAAC;gBACD,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC;SACJ,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACZ,MAAM,EAAE,KAAK;YACb,IAAI,EAAI,6BAA6B;YACrC,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,CAAC,OAAqB,EAAE,CAAuB,EAAE,EAAE;gBACxD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAA;gBACvC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAgB,IAAI,EAAE,CAAA;gBACpD,IAAI,MAAM,CAAC,MAAM,GAAG,IAAI;oBACpB,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACnF,MAAM,GAAG,GAAG;oBACR,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG;oBAC3B,IAAI,EAAK,OAAO,CAAC,MAAM,CAAC,IAAI;oBAC5B,IAAI,EAAK,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC;iBACzD,CAAA;gBACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,IAAI,UAAU,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACvE,OAAO,sBAAsB,CAAC,GAAG,CAAC;qBAC7B,IAAI,CAAC,GAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;qBACxD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;YACtH,CAAC;SACJ,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACZ,MAAM,EAAE,MAAM;YACd,IAAI,EAAI,MAAM;YACd,OAAO,EAAE;gBACL,OAAO,EAAE;oBACL,MAAM,EAAI,MAAM;oBAChB,KAAK,EAAK,IAAI;oBACd,KAAK,EAAK,kBAAkB;oBAC5B,QAAQ,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;iBAC5B;gBACD,OAAO,EAAE;oBACL,SAAS,EAAE;wBACP,QAAQ,EAAE,EAAE,GAAG,IAAI;wBACnB,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;4BAC1B,MAAM,IAAI,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,CAAA;4BACnE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;4BACf,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;4BACxC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,kCAAkC,IAAI,EAAE,CAAC,CAAA;wBAClE,CAAC;wBACD,UAAU,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE;4BACxB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;4BACrB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;4BACzB,EAAE,CAAC,kBAAkB,EAAE,CAAA;4BACvB,IAAI,EAAE,CAAC,UAAU,KAAK,YAAS,CAAC,IAAI;gCAChC,EAAE,CAAC,KAAK,EAAE,CAAA;4BACd,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,qCAAqC,IAAI,EAAE,CAAC,CAAA;wBACrE,CAAC;qBACJ;iBACJ;aACJ;YACD,OAAO,EAAE,CAAC,OAAqB,EAAE,CAAuB,EAAE,EAAE;gBACxD,qCAAqC;gBACrC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAA;gBACvC,MAAM,GAAG,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAC7C,IAAI,GAAG,YAAY,OAAO,CAAC,IAAI,CAAC,MAAM;oBAClC,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBAC/F,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,IAAI,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACxE,OAAO,sBAAsB,CAAC,GAAG,CAAC;qBAC7B,IAAI,CAAC,GAAc,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;qBAC/D,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;YAC9F,CAAC;SACJ,CAAC,CAAA;QAEF,wCAAwC;QACxC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;QACvB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,wDAAwD,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;QAEhG,6CAA6C;QAC7C,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,OAAc,EAAE,EAAE;gBACxC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;gBACjF,KAAK,MAAM,CAAE,IAAI,EAAE,IAAI,CAAE,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;oBAClD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,qBAAqB,IAAI,aAAa,IAAI,EAAE,CAAC,CAAA;oBACnE,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,KAAK,YAAS,CAAC,IAAI;wBACrC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC1B,CAAC;YACL,CAAC,CAAC,CAAA;QACN,CAAC;QAED,yDAAyD;QACzD,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,IAAI,gBAAG,CAAC,EAAE,MAAM,EAAE,IAAI,gBAAG,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;YACzE,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;YACvC,IAAI,CAAC,KAAK,IAAI;gBACV,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;YAClF,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACjB,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YACtC,IAAI,CAAC,OAAO,GAAG,CAAC,GAAW,EAAE,GAAG,OAAc,EAAE,EAAE;gBAC9C,MAAM,GAAG,GAAG,IAAI,gBAAG,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAA;gBAC5C,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YACjC,CAAC,CAAA;QACL,CAAC;QAED,+CAA+C;QAC/C,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,IAK1B,EAAE,EAAE;gBACD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;oBACxB,QAAQ,EAAE,WAAW;oBACrB,IAAI,EAAM,EAAE;oBACZ,IAAI,EAAM,CAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAE;iBAC1D,CAAC,CAAA;gBACF,KAAK,MAAM,CAAE,IAAI,EAAE,QAAQ,CAAE,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;oBACtD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,wBAAwB,IAAI,UAAU,IAAI,EAAE,CAAC,CAAA;oBACnE,IAAI,QAAQ,CAAC,EAAE,CAAC,UAAU,KAAK,YAAS,CAAC,IAAI;wBACzC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC9B,CAAC;gBACD,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC;oBACpC,OAAO,CAAC,IAAI,CAAC;wBACT,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;wBAC7D,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC;qBAC1B,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;wBACpB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,mCAAmC,CAAC,CAAC,EAAE,aAAa,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;oBAC9F,CAAC,CAAC,CAAA;gBACN,CAAC;gBACD,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,OAAO;oBAC7B,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;YACxF,CAAC,CAAC,CAAA;QACN,CAAC;IACL,CAAC;IAED,+BAA+B;IAC/B,KAAK,CAAC,IAAI,CAAE,IAAgB;QACxB,6BAA6B;QAC7B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,yDAAyD,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;YACjG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3C,CAAC;QAED,mCAAmC;QACnC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,qCAAqC,CAAC,CAAA;YAC3D,MAAM,aAAa,GAAoB,EAAE,CAAA;YACzC,KAAK,MAAM,CAAE,IAAI,EAAE,IAAI,CAAE,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;gBAClD,aAAa,CAAC,IAAI,CAAC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBACrD,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,KAAK,YAAS,CAAC,IAAI;wBACrC,OAAO,EAAE,CAAA;yBACR,CAAC;wBACF,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;4BAC5B,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAA;wBACjD,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;wBACZ,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;4BACvB,YAAY,CAAC,OAAO,CAAC,CAAA;4BACrB,OAAO,EAAE,CAAA;wBACb,CAAC,CAAC,CAAA;wBACF,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;oBACnB,CAAC;gBACL,CAAC,CAAC,CAAC,CAAA;YACP,CAAC;YACD,MAAM,OAAO,CAAC,IAAI,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;gBAC1B,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;aACzB,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACxB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,qCAAqC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;YACnG,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;QACxB,CAAC;IACL,CAAC;IAED,8CAA8C;IAC9C,KAAK,CAAC,oBAAoB,CAAE,IAAY,EAAE,IAAY,EAAE,KAAa,EAAE,OAAe;QAClF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;YACxB,QAAQ,EAAE,MAAM;YAChB,IAAI;YACJ,IAAI,EAAM,CAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAE;SACrC,CAAC,CAAA;QACF,KAAK,MAAM,CAAE,IAAI,EAAE,QAAQ,CAAE,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YACtD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,wBAAwB,IAAI,UAAU,IAAI,EAAE,CAAC,CAAA;YACnE,IAAI,QAAQ,CAAC,EAAE,CAAC,UAAU,KAAK,YAAS,CAAC,IAAI;gBACzC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC;IACL,CAAC;CACJ;AA7RD,8BA6RC"}
|
|
1
|
+
{"version":3,"file":"speechflow-main-api.js","sourceRoot":"","sources":["../src/speechflow-main-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*
|
|
3
3
|
** SpeechFlow - Speech Processing Flow Graph
|
|
4
|
-
** Copyright (c) 2024-
|
|
4
|
+
** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
|
|
5
5
|
** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
|
|
6
6
|
*/
|
|
7
7
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
@@ -198,7 +198,7 @@ class CLIContext {
|
|
|
198
198
|
if (this.args.V) {
|
|
199
199
|
process.stderr.write(`SpeechFlow ${package_json_1.default["x-stdver"]} (${package_json_1.default["x-release"]}) <${package_json_1.default.homepage}>\n`);
|
|
200
200
|
process.stderr.write(`${package_json_1.default.description}\n`);
|
|
201
|
-
process.stderr.write(`Copyright (c) 2024-
|
|
201
|
+
process.stderr.write(`Copyright (c) 2024-2026 ${package_json_1.default.author.name} <${package_json_1.default.author.url}>\n`);
|
|
202
202
|
process.stderr.write(`Licensed under ${package_json_1.default.license} <http://spdx.org/licenses/${package_json_1.default.license}.html>\n`);
|
|
203
203
|
process.exit(0);
|
|
204
204
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*
|
|
3
3
|
** SpeechFlow - Speech Processing Flow Graph
|
|
4
|
-
** Copyright (c) 2024-
|
|
4
|
+
** Copyright (c) 2024-2026 Dr. Ralf S. Engelschall <rse@engelschall.com>
|
|
5
5
|
** Licensed under GPL 3.0 <https://spdx.org/licenses/GPL-3.0-only>
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|