gulp-mu-gulp-api 0.3.9 → 0.3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +24 -0
  2. package/package.json +1 -1
  3. package/src/index.mjs +843 -770
package/README.md CHANGED
@@ -37,6 +37,16 @@ The module is deliberately **dependency-free** and knows nothing about µGulp™
37
37
  npm install gulp-mu-gulp-api
38
38
  ```
39
39
 
40
+ ### 0.3.11
41
+
42
+ - **Added** `ShowModalMessage({ variant?, title?, message?, buttons?, presentation? })` — blocking modal (info/warning/error) in the µGulp dashboard glass panel, or native VS Code/Cursor dialogs when `presentation` is `ide`/`auto` (host setting `microgulp.modalPresentation`).
43
+ - **Added** `ShowConfirmMessage({ title?, message?, variant?, style?, presentation? })` — Yes/No or OK/Cancel confirmation; resolves with `{ button: 'yes'|'no'|'ok'|'cancel'|… }`.
44
+ - Outside µGulp both helpers fall back to readline prompts (TTY) or the primary/default button (CI).
45
+
46
+ ### 0.3.10
47
+
48
+ - **Fixed** `IsMicroGulp()` / `IsµGulp()` — returns `true` only when `MICROGULP=1` **and** `typeof process.send === 'function'`. Child processes that inherit `MICROGULP` without an IPC channel (nested gulp runs, test subprocesses) no longer crash on `process.send`.
49
+
40
50
  ### 0.3.8
41
51
 
42
52
  - **Added** structured log elements rendered directly in the run log (JSON payloads, Content-Security-Policy safe, no plugin/iframe needed): `LogCallout()` (info/success/warning/error box), `LogKeyValue()` (metrics/summary list), `LogBadges()` (status chips), `LogCode()` (monospace code block) and `LogChart()` (inline-SVG bar chart).
@@ -153,6 +163,8 @@ let values = await RequestForm({
153
163
  | `StopSound(sample)` | Stops a looping sample started with `PlaySound(sample, { loop: true })` |
154
164
  | `Speak(text, options?)` | Speech output in the dashboard; `options`: `{ rate?, pitch?, volume? }` per-call overrides |
155
165
  | `RequestForm(form)` | Request a complete form; resolves with `{ fieldId: value, … }` |
166
+ | `ShowModalMessage(spec)` | Blocking modal (`info`/`warning`/`error`); `presentation`: `webview` \| `ide` \| `auto` |
167
+ | `ShowConfirmMessage(spec)` | Yes/No or OK/Cancel (`style`); resolves with `{ button }` |
156
168
  | `RequestTextInput(options)` | Single text field (with `validate` rules) |
157
169
  | `RequestColorInput(options)` | Color picker, returns `#rrggbb` |
158
170
  | `RequestFontInput(options)` | Font selection (`options`: font list) |
@@ -269,6 +281,16 @@ Das Modul ist bewusst **abhängigkeitsfrei** und kennt keine µGulp™-Interna:
269
281
  npm install gulp-mu-gulp-api
270
282
  ```
271
283
 
284
+ ### 0.3.11
285
+
286
+ - **Neu** `ShowModalMessage({ variant?, title?, message?, buttons?, presentation? })` — blockierendes Modal (info/warning/error) als Dashboard-Glaspanel oder natives VS-Code-/Cursor-Dialogfenster bei `presentation` `ide`/`auto` (Host-Setting `microgulp.modalPresentation`).
287
+ - **Neu** `ShowConfirmMessage({ title?, message?, variant?, style?, presentation? })` — Ja/Nein- oder OK/Abbrechen-Bestätigung; Ergebnis `{ button: 'yes'|'no'|'ok'|'cancel'|… }`.
288
+ - Außerhalb von µGulp Fallback auf readline (TTY) oder den Primary-/Default-Button (CI).
289
+
290
+ ### 0.3.10
291
+
292
+ - **Fixed** `IsMicroGulp()` / `IsµGulp()` — returns `true` only when `MICROGULP=1` **and** `typeof process.send === 'function'`. Child processes that inherit `MICROGULP` without an IPC channel (nested gulp runs, test subprocesses) no longer crash on `process.send`.
293
+
272
294
  ### 0.3.8
273
295
 
274
296
  - **Neu** strukturierte Log-Elemente, die direkt im Run-Log gerendert werden (JSON-Payloads, Content-Security-Policy-sicher, ohne Plugin/iframe): `LogCallout()` (Info/Success/Warning/Error-Box), `LogKeyValue()` (Metriken/Zusammenfassung), `LogBadges()` (Status-Chips), `LogCode()` (Monospace-Codeblock) und `LogChart()` (Inline-SVG-Balkendiagramm).
@@ -385,6 +407,8 @@ let values = await RequestForm({
385
407
  | `StopSound(sample)` | Stoppt eine Schleife von `PlaySound(sample, { loop: true })` |
386
408
  | `Speak(text, options?)` | Sprachausgabe im Dashboard; `options`: `{ rate?, pitch?, volume? }` je Aufruf |
387
409
  | `RequestForm(form)` | Komplettes Formular anfordern; löst mit `{ fieldId: value, … }` auf |
410
+ | `ShowModalMessage(spec)` | Blockierendes Modal (`info`/`warning`/`error`); `presentation`: `webview` \| `ide` \| `auto` |
411
+ | `ShowConfirmMessage(spec)` | Ja/Nein oder OK/Abbrechen (`style`); löst mit `{ button }` auf |
388
412
  | `RequestTextInput(options)` | Einzelnes Textfeld (mit `validate`-Regeln) |
389
413
  | `RequestColorInput(options)` | Farbwähler, Rückgabe `#rrggbb` |
390
414
  | `RequestFontInput(options)` | Schriftart-Auswahl (`options`: Font-Liste) |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gulp-mu-gulp-api",
3
- "version": "0.3.9",
3
+ "version": "0.3.11",
4
4
  "description": "Public task API for the µGulp orchestrator: progress reporting, sound signals, speech output, localized console output (i18x) and interactive UI inputs (text, password, number, textarea, color, font, select, radio, multi-select checkbox, range slider, date/time, file) from within gulp tasks — with graceful CLI fallbacks when running without µGulp.",
5
5
  "type": "module",
6
6
  "main": "src/index.mjs",