privateboard 0.1.31 → 0.1.32
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/boot.js +5 -1
- package/dist/boot.js.map +1 -1
- package/dist/cli.js +5 -1
- package/dist/cli.js.map +1 -1
- package/dist/server.js +5 -1
- package/dist/server.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +2 -1
- package/public/app.js +9 -108
- package/public/home.html +1 -1
- package/public/i18n.js +8 -8
- package/public/index.html +88 -168
- package/public/onboarding.css +8 -0
- package/public/themes.css +37 -6
- package/public/typing-sfx.js +32 -2
- package/public/vendor/mp4-muxer.min.js +1904 -0
- package/public/voice-3d-banner.js +21 -0
- package/public/voice-onboarding.css +7 -0
- package/public/voice-recorder.js +427 -81
|
@@ -78,6 +78,27 @@
|
|
|
78
78
|
// VS3D.mount returns false on WebGL init failure. Bail to
|
|
79
79
|
// the poster fallback if so.
|
|
80
80
|
if (!VS3D.mount(host, { camera: CAMERA_OPTS })) return null;
|
|
81
|
+
|
|
82
|
+
// Pre-paint the floor and wall tone synchronously · without
|
|
83
|
+
// this, the scene starts as walls + table on a transparent
|
|
84
|
+
// background and the user sees a near-black canvas while
|
|
85
|
+
// home-3d-mock.js network-fetches on first visit (~100-500 ms).
|
|
86
|
+
// Second visit it's cached so the scene comes up fast, hence the
|
|
87
|
+
// "first time black, works on retry" symptom. Calling update()
|
|
88
|
+
// with an empty seat list is cheap and idempotent — the mock
|
|
89
|
+
// driver below issues another update() with the full cast, which
|
|
90
|
+
// populates seats over the already-built floor.
|
|
91
|
+
try {
|
|
92
|
+
VS3D.update({
|
|
93
|
+
mode: "brainstorm",
|
|
94
|
+
positions: [],
|
|
95
|
+
speakerId: null,
|
|
96
|
+
speakerState: null,
|
|
97
|
+
userWait: false,
|
|
98
|
+
labels: { speaking: "speaking", thinking: "thinking" },
|
|
99
|
+
votePop: "",
|
|
100
|
+
});
|
|
101
|
+
} catch (_) { /* update is best-effort · mount already succeeded */ }
|
|
81
102
|
} catch (_) {
|
|
82
103
|
return null;
|
|
83
104
|
}
|
|
@@ -190,6 +190,13 @@
|
|
|
190
190
|
height: 100% !important;
|
|
191
191
|
display: block;
|
|
192
192
|
}
|
|
193
|
+
/* Director nameplates collide on this compact banner · they're laid
|
|
194
|
+
out around a tight arc and the mono-caps plates overlap into an
|
|
195
|
+
unreadable blob. Hide them here and let the rotating speaker pulse
|
|
196
|
+
carry the carousel. Mirrors the marketing hero rule
|
|
197
|
+
(`.hero-3d .rt-name-director { display: none !important }`) and the
|
|
198
|
+
identical scoping under `.onb-voice-banner-stage` in onboarding.css. */
|
|
199
|
+
.vonb-banner-stage .rt-name-director { display: none !important; }
|
|
193
200
|
/* 3D round-table poster · static fallback when WebGL/motion is
|
|
194
201
|
unavailable. Same artwork as the marketing homepage hero scene.
|
|
195
202
|
`<picture>` swaps WebP / JPEG; the img cover-fills the banner
|