@minicode-dev/chat 0.1.13 → 0.1.15
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 +112 -5
- package/README.md +401 -312
- package/assets/sounds/effects/avalanche.mp3 +0 -0
- package/assets/sounds/racing/car_boost.mp3 +0 -0
- package/assets/sounds/racing/car_boost.ogg +0 -0
- package/assets/sounds/racing/car_bump.mp3 +0 -0
- package/assets/sounds/racing/car_bump.ogg +0 -0
- package/assets/sounds/racing/car_drift_loop.mp3 +0 -0
- package/assets/sounds/racing/car_drift_loop.ogg +0 -0
- package/assets/sounds/racing/car_engine_loop.mp3 +0 -0
- package/assets/sounds/racing/car_engine_loop.ogg +0 -0
- package/assets/sounds/racing/car_engine_start.mp3 +0 -0
- package/assets/sounds/racing/car_engine_start.ogg +0 -0
- package/assets/sounds/racing/countdown_beep.mp3 +0 -0
- package/assets/sounds/racing/countdown_beep.ogg +0 -0
- package/assets/sounds/racing/countdown_go.mp3 +0 -0
- package/assets/sounds/racing/countdown_go.ogg +0 -0
- package/assets/sounds/racing/final_lap.mp3 +0 -0
- package/assets/sounds/racing/final_lap.ogg +0 -0
- package/assets/sounds/racing/finish_line.mp3 +0 -0
- package/assets/sounds/racing/finish_line.ogg +0 -0
- package/assets/sounds/racing/lap_complete.mp3 +0 -0
- package/assets/sounds/racing/lap_complete.ogg +0 -0
- package/assets/sounds/racing/music_circuit.mp3 +0 -0
- package/assets/sounds/racing/music_circuit.ogg +0 -0
- package/assets/sounds/racing/music_final_lap.mp3 +0 -0
- package/assets/sounds/racing/music_final_lap.ogg +0 -0
- package/assets/sounds/racing/race_defeat.mp3 +0 -0
- package/assets/sounds/racing/race_defeat.ogg +0 -0
- package/assets/sounds/racing/race_victory.mp3 +0 -0
- package/assets/sounds/racing/race_victory.ogg +0 -0
- package/assets/sounds/tanks/barrel_explode.mp3 +0 -0
- package/assets/sounds/tanks/barrel_explode.ogg +0 -0
- package/assets/sounds/tanks/crate_break.mp3 +0 -0
- package/assets/sounds/tanks/crate_break.ogg +0 -0
- package/assets/sounds/tanks/health_pickup.mp3 +0 -0
- package/assets/sounds/tanks/health_pickup.ogg +0 -0
- package/assets/sounds/tanks/last_life.mp3 +0 -0
- package/assets/sounds/tanks/last_life.ogg +0 -0
- package/assets/sounds/tanks/life_lost.mp3 +0 -0
- package/assets/sounds/tanks/life_lost.ogg +0 -0
- package/assets/sounds/tanks/respawn.mp3 +0 -0
- package/assets/sounds/tanks/respawn.ogg +0 -0
- package/assets/sounds/tanks/shield_end.mp3 +0 -0
- package/assets/sounds/tanks/shield_end.ogg +0 -0
- package/assets/sounds/tanks/shield_loop.mp3 +0 -0
- package/assets/sounds/tanks/shield_loop.ogg +0 -0
- package/assets/sounds/tanks/wall_hit.mp3 +0 -0
- package/assets/sounds/tanks/wall_hit.ogg +0 -0
- package/dist/chunks/{BattleshipGameCard-iRk8d4vR.js → BattleshipGameCard-8H-sBCsv.js} +146 -144
- package/dist/chunks/{BattleshipGameCard-iRk8d4vR.js.map → BattleshipGameCard-8H-sBCsv.js.map} +1 -1
- package/dist/chunks/{ChatContext-DjIEifGY.js → ChatContext-CVW58bzC.js} +2 -2
- package/dist/chunks/{ChatContext-DjIEifGY.js.map → ChatContext-CVW58bzC.js.map} +1 -1
- package/dist/chunks/RacingLiveGameCard-8j9QLnxW.js +1654 -0
- package/dist/chunks/RacingLiveGameCard-8j9QLnxW.js.map +1 -0
- package/dist/chunks/{TanksGameCard-GrqmdwJ7.js → TanksGameCard-DnCufSH6.js} +168 -166
- package/dist/chunks/{TanksGameCard-GrqmdwJ7.js.map → TanksGameCard-DnCufSH6.js.map} +1 -1
- package/dist/chunks/TanksLiveGameCard-D_27Jomp.js +1274 -0
- package/dist/chunks/TanksLiveGameCard-D_27Jomp.js.map +1 -0
- package/dist/chunks/avalancheScene3d-CIE2WKQn.js +1300 -0
- package/dist/chunks/avalancheScene3d-CIE2WKQn.js.map +1 -0
- package/dist/chunks/cars-D1PM7mVD.js +340 -0
- package/dist/chunks/cars-D1PM7mVD.js.map +1 -0
- package/dist/chunks/connect4Sounds-BqEHULjv.js +235 -0
- package/dist/chunks/connect4Sounds-BqEHULjv.js.map +1 -0
- package/dist/chunks/connectionStore-DwgIUl30.js +13 -0
- package/dist/chunks/connectionStore-DwgIUl30.js.map +1 -0
- package/dist/chunks/createLiveScene-MTGRv8rx.js +758 -0
- package/dist/chunks/createLiveScene-MTGRv8rx.js.map +1 -0
- package/dist/chunks/createRaceScene-BiEtQsVs.js +306 -0
- package/dist/chunks/createRaceScene-BiEtQsVs.js.map +1 -0
- package/dist/chunks/{createTankScene-6asWHKFf.js → createTankScene-yhX6la27.js} +125 -123
- package/dist/chunks/{createTankScene-6asWHKFf.js.map → createTankScene-yhX6la27.js.map} +1 -1
- package/dist/chunks/decor-CyyCnmct.js +418 -0
- package/dist/chunks/decor-CyyCnmct.js.map +1 -0
- package/dist/chunks/fx-1ZwzmPWj.js +458 -0
- package/dist/chunks/fx-1ZwzmPWj.js.map +1 -0
- package/dist/chunks/fx-DhXerGyt.js +248 -0
- package/dist/chunks/fx-DhXerGyt.js.map +1 -0
- package/dist/chunks/gameStatus-BChd29yI.js +62 -0
- package/dist/chunks/gameStatus-BChd29yI.js.map +1 -0
- package/dist/chunks/games-Bl_8raG6.js +3681 -0
- package/dist/chunks/games-Bl_8raG6.js.map +1 -0
- package/dist/chunks/rolldown-runtime-CGnMp29N.js +10 -0
- package/dist/chunks/tank-DjEQ4FXF.js +553 -0
- package/dist/chunks/tank-DjEQ4FXF.js.map +1 -0
- package/dist/chunks/tanks-live-BcKmrhnV.js +261 -0
- package/dist/chunks/tanks-live-BcKmrhnV.js.map +1 -0
- package/dist/chunks/{tanksSounds-CUNDIOal.js → tanksSounds-DTnidbiq.js} +44 -12
- package/dist/chunks/tanksSounds-DTnidbiq.js.map +1 -0
- package/dist/chunks/track-BcnnpnAm.js +259 -0
- package/dist/chunks/track-BcnnpnAm.js.map +1 -0
- package/dist/chunks/util-DwI9bfS7.js +57 -0
- package/dist/chunks/util-DwI9bfS7.js.map +1 -0
- package/dist/index.js +822 -635
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/index.d.ts +3 -1
- package/package.json +1 -1
- package/dist/chunks/TanksLiveGameCard-DSmQcUMh.js +0 -1225
- package/dist/chunks/TanksLiveGameCard-DSmQcUMh.js.map +0 -1
- package/dist/chunks/avalancheScene3d-Dnl2E3EA.js +0 -1878
- package/dist/chunks/avalancheScene3d-Dnl2E3EA.js.map +0 -1
- package/dist/chunks/connect4Sounds-Cv0q31VW.js +0 -3245
- package/dist/chunks/connect4Sounds-Cv0q31VW.js.map +0 -1
- package/dist/chunks/createLiveScene-819NWv84.js +0 -365
- package/dist/chunks/createLiveScene-819NWv84.js.map +0 -1
- package/dist/chunks/fx-BNJvJYOu.js +0 -871
- package/dist/chunks/fx-BNJvJYOu.js.map +0 -1
- package/dist/chunks/gameStatus-Cu1Z8un9.js +0 -69
- package/dist/chunks/gameStatus-Cu1Z8un9.js.map +0 -1
- package/dist/chunks/tank-DIn6Jyt8.js +0 -605
- package/dist/chunks/tank-DIn6Jyt8.js.map +0 -1
- package/dist/chunks/tanksSounds-CUNDIOal.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,7 +2,103 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to `@minicode-dev/chat` (owner: Minicode, project: LIRA).
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Dates are npm publish dates (UTC). Changes are matched to each version by commit time and publish time; a release
|
|
6
|
+
may also include work that was still uncommitted when it was published.
|
|
7
|
+
|
|
8
|
+
## 0.1.13 — 2026-10-28
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- Avalancha effect (`avalanche`, 🚀): a 7-second 3D shower of low-poly money, cars, tanks and confetti that fall,
|
|
13
|
+
bounce and pile up before a bill-sweep finale. Uses the optional `three` peer (lazy) and falls back to a CSS emoji
|
|
14
|
+
animation without WebGL, after a lost WebGL context or with reduced motion. Also available as a countdown final effect.
|
|
15
|
+
- Approved recording `assets/sounds/effects/avalanche.mp3` (7.0 s). Hosts must serve it with the other effect sounds.
|
|
16
|
+
- `ChatEffectId` now includes `'avalanche'`.
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
|
|
20
|
+
- Internal documentation moved to `docs/` (not included in the package).
|
|
21
|
+
|
|
22
|
+
## 0.1.12 — 2026-10-26
|
|
23
|
+
|
|
24
|
+
### Added
|
|
25
|
+
|
|
26
|
+
- Manual TURN recovery inside Tanques LIVE: one player pastes temporary `iceServers` (or a Cloudflare TURN response)
|
|
27
|
+
and both peers reconnect. The configuration travels through the private chat signaling encrypted with ephemeral
|
|
28
|
+
ECDH/AES-GCM, applies to the current match only and is never persisted. Includes connection diagnostics and a
|
|
29
|
+
relay-only debugging option.
|
|
30
|
+
|
|
31
|
+
## 0.1.11 — 2026-10-26
|
|
32
|
+
|
|
33
|
+
### Added
|
|
34
|
+
|
|
35
|
+
- Countdown messages (`[minicode-countdown:v1]`): quick or custom durations up to 24 hours, a hidden final effect
|
|
36
|
+
revealed at zero, optional sound and an effect preview. Older clients show a readable fallback.
|
|
37
|
+
|
|
38
|
+
## 0.1.10 — 2026-10-23
|
|
39
|
+
|
|
40
|
+
### Fixed
|
|
41
|
+
|
|
42
|
+
- UUIDs for messages, games and notifications are generated on plain-HTTP LAN origins, where
|
|
43
|
+
`crypto.randomUUID` is unavailable.
|
|
44
|
+
- Tanques LIVE shows connection diagnostics (signaling vs. ICE) and can retry the link without resetting tanks or HP.
|
|
45
|
+
|
|
46
|
+
## 0.1.9 — 2026-10-23
|
|
47
|
+
|
|
48
|
+
### Changed
|
|
49
|
+
|
|
50
|
+
- Emoji autocomplete resolves familiar emoticons (case and nose variants) and ignores URLs, paths, times and
|
|
51
|
+
completed tokens.
|
|
52
|
+
|
|
53
|
+
## 0.1.8 — 2026-10-23
|
|
54
|
+
|
|
55
|
+
### Added
|
|
56
|
+
|
|
57
|
+
- WebRTC peer links signaled through chat text (`LIRA_WEBRTC_V1:`): two negotiated DataChannels, ACK/retransmit,
|
|
58
|
+
deduplication, glare handling, ICE restart and reconnection. Signaling frames are never shown, stored or counted as
|
|
59
|
+
unread. No backend changes.
|
|
60
|
+
- Public exports `createPeerLink`, `createChatSignaling`, `rtcSignals`, `withSignalFaults`, `DEFAULT_ICE_SERVERS`,
|
|
61
|
+
`WEBRTC_PREFIX`, `MAX_SIGNAL_LENGTH`, `isWebrtcMessage`, `encodeSignal`, `decodeSignal` and the lazy `WebRtcLab`.
|
|
62
|
+
- Tanques LIVE 3D (`tanks_live`): real-time 1 vs. 1 tank combat over WebRTC, hits resolved by the inviting host,
|
|
63
|
+
3D scene with Canvas 2D fallback, desktop and touch controls, rematch. Behind `features.games.tanksLive` (off by default).
|
|
64
|
+
- `config.webrtc` (`iceServers`, `iceTransportPolicy`).
|
|
65
|
+
|
|
66
|
+
## 0.1.7 — 2026-10-23
|
|
67
|
+
|
|
68
|
+
### Added
|
|
69
|
+
|
|
70
|
+
- Tanques de guerra 3D (`tanks`), a turn-based tank duel: deterministic integer physics, seeded maps, craters and
|
|
71
|
+
three ammo types; lockstep sync over `LIRA_GAME_V1` with state hashes, resync and reload restore; lazy `three`
|
|
72
|
+
scene with a playable Canvas 2D fallback; 12-sound pack in `assets/sounds/tanks/`. Behind `features.games.tanks`
|
|
73
|
+
(off by default).
|
|
74
|
+
- Games are dispatched through a per-game registry, so new games never fall into the Connect 4 path.
|
|
75
|
+
|
|
76
|
+
### Fixed
|
|
77
|
+
|
|
78
|
+
- `decodeAudioData` rejections for missing sound files no longer surface as unhandled errors.
|
|
79
|
+
|
|
80
|
+
## 0.1.6 — 2026-10-23
|
|
81
|
+
|
|
82
|
+
### Added
|
|
83
|
+
|
|
84
|
+
- Effect sounds play in background tabs and closed chats; returning to the conversation within `maxAgeMs` replays
|
|
85
|
+
the full effect. New `effects.backgroundSound` option (default `true`).
|
|
86
|
+
|
|
87
|
+
## 0.1.5 — 2026-10-23
|
|
88
|
+
|
|
89
|
+
### Changed
|
|
90
|
+
|
|
91
|
+
- Nudge becomes a three.js electric storm (Canvas 2D fallback) and confetti a 3D party (CSS fallback), both synced
|
|
92
|
+
to new 7-second recordings with a per-effect volume level and lighter budgets on mobile.
|
|
93
|
+
|
|
94
|
+
## 0.1.4 — 2026-10-23
|
|
95
|
+
|
|
96
|
+
### Changed
|
|
97
|
+
|
|
98
|
+
- Incoming effects autoplay by default in visible conversations, with a 5-second cooldown and no window-focus requirement.
|
|
99
|
+
- New incoming effects can replace an active animation; confetti now fills the panel with 220 responsive particles.
|
|
100
|
+
|
|
101
|
+
## 0.1.3 — 2026-10-23
|
|
6
102
|
|
|
7
103
|
### Added
|
|
8
104
|
|
|
@@ -14,13 +110,24 @@ All notable changes to `@minicode-dev/chat` (owner: Minicode, project: LIRA).
|
|
|
14
110
|
|
|
15
111
|
### Changed
|
|
16
112
|
|
|
17
|
-
- Incoming effects autoplay by default in visible conversations, with a 5-second cooldown and no window-focus requirement.
|
|
18
|
-
- New incoming effects can replace an active animation; confetti now fills the panel with 220 responsive particles.
|
|
19
|
-
|
|
20
113
|
- Effects respect mute, reduced motion, cooldowns and manual replay; old messages and duplicates do not autoplay.
|
|
21
114
|
- Standalone development and release documentation. Host applications must update their served sound assets.
|
|
22
115
|
|
|
23
|
-
## 0.1.
|
|
116
|
+
## 0.1.2 — 2026-10-23
|
|
117
|
+
|
|
118
|
+
- Published one minute after 0.1.1, with no separate commit; no changes recorded.
|
|
119
|
+
|
|
120
|
+
## 0.1.1 — 2026-10-23
|
|
121
|
+
|
|
122
|
+
### Added
|
|
123
|
+
|
|
124
|
+
- `npm run release` script: version bump, build, package content validation and publish.
|
|
125
|
+
|
|
126
|
+
### Changed
|
|
127
|
+
|
|
128
|
+
- `publishConfig.access` is now `public` (it was `restricted`).
|
|
129
|
+
|
|
130
|
+
## 0.1.0 — 2026-10-22
|
|
24
131
|
|
|
25
132
|
First release extracted from LIRA.
|
|
26
133
|
|