@zaflun/lumio-protocol 0.2.3 → 0.2.4

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/CHANGELOG.md ADDED
@@ -0,0 +1,45 @@
1
+ # Changelog
2
+
3
+ All notable changes to `@zaflun/lumio-protocol` are documented here.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## 0.2.4
9
+
10
+ Wire-format types for the Lumio Extension Platform — the contract for
11
+ communication between extension iframes/workers and the Lumio host. Ships as an
12
+ ESM build with generated `.d.ts` declarations; `zod` is a runtime dependency for
13
+ the validated schemas.
14
+
15
+ ### Exports
16
+
17
+ - **Events** (`src/events.ts`)
18
+ - `LUMIO_EVENT_TYPES` — 54 platform event types across Twitch, YouTube, Kick,
19
+ Trovo, Spotify, StreamElements, and per-platform + cross-platform chat, with
20
+ `LumioEventType` and the `lumioEventTypeSchema` Zod enum.
21
+ - `ACTION_TYPES` — 21 action types (Chat, OBS, Spotify, Events, Overlay), with
22
+ `LumioActionType` and `lumioActionTypeSchema`.
23
+ - Sound-system event payloads `SoundPlayEvent` / `SoundStopEvent`.
24
+ - `STORAGE_SCOPES` (`instance`, `overlay`, `account`, `global`) with
25
+ `StorageScope` and `storageScopeSchema`.
26
+ - **Messages** (`src/messages.ts`)
27
+ - Theme schemas (`themeSchema`, colors/fonts/border-radius) and
28
+ `extensionConfigSchema`.
29
+ - `MESSAGE_TYPES` — 10 host↔iframe message types, individual per-type Zod
30
+ schemas, and the `lumioMessageSchema` discriminated union with `LumioMessage`.
31
+ - **Components** (`src/components.ts`)
32
+ - `LUMIO_COMPONENT_TYPES` — 30 serialized-UI component types with
33
+ `LumioComponentType` and the `LumioComponentNode` tree interface.
34
+ - JSON-RPC 2.0 wire types (`JsonRpcRequest` / `JsonRpcResponse` /
35
+ `JsonRpcNotification`), worker↔host param interfaces, the `Sound` data type,
36
+ and the `WORKER_METHODS` / `HOST_METHODS` method-name constants (including
37
+ `sound.play` / `sound.stop` / `sound.list`).
38
+
39
+ ### Notes
40
+
41
+ - Adds the sound-system surface (`SoundPlayEvent` / `SoundStopEvent`, `Sound`,
42
+ and the `SOUND_PLAY` / `SOUND_STOP` / `SOUND_LIST` worker methods) that mirrors
43
+ the host sound-management contract.
44
+ - First release published with a changelog. Prior public releases: `0.2.3`,
45
+ `0.1.1`, `0.1.0`.
package/README.md CHANGED
@@ -10,10 +10,10 @@ npm install @zaflun/lumio-protocol
10
10
 
11
11
  ## What's included
12
12
 
13
- - **49 Event Types** — Twitch, YouTube, Kick, Trovo, Spotify, StreamElements, Chat
13
+ - **54 Event Types** — Twitch, YouTube, Kick, Trovo, Spotify, StreamElements, Chat
14
14
  - **21 Action Types** — Chat, OBS, Spotify, Events, Overlay
15
15
  - **Message Schemas** — JSON-RPC 2.0 wire format (Zod validated)
16
- - **Component Types** — `LumioComponentNode` for serialized UI trees
16
+ - **30 Component Types** — `LumioComponentNode` for serialized UI trees
17
17
 
18
18
  ## Usage
19
19
 
package/dist/index.d.ts CHANGED
@@ -464,6 +464,7 @@ interface Sound {
464
464
  file_size: number;
465
465
  duration_ms: number | null;
466
466
  created_at: string;
467
+ source_extension_name: string | null;
467
468
  }
468
469
  interface LifecycleInitParams {
469
470
  extensionId: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zaflun/lumio-protocol",
3
- "version": "0.2.3",
3
+ "version": "0.2.4",
4
4
  "description": "Wire-format types for Lumio extension iframe-to-host communication",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -15,7 +15,8 @@
15
15
  "access": "public"
16
16
  },
17
17
  "files": [
18
- "dist"
18
+ "dist",
19
+ "CHANGELOG.md"
19
20
  ],
20
21
  "dependencies": {
21
22
  "zod": "^4.3.6"