@kieransimkin/dancemoves 3.0.4 → 3.0.5
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/README.md +6 -3
- package/docs/api/effects.md +6 -4
- package/docs/api/styling.md +1 -1
- package/docs/javascript-api.md +1 -1
- package/docs/wordpress-shared-runtime.md +6 -1
- package/lib/build-manifest.json +9 -9
- package/lib/dancemoves.min.js +1 -1
- package/lib/index.cjs +7 -6
- package/lib/index.mjs +7 -6
- package/lib/wordpress.js +3 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
**DanceFlow musical motion by Kieran Simkin.** One JavaScript runtime for plain
|
|
4
4
|
websites, React, Next.js and the separately packaged WordPress adapter.
|
|
5
5
|
|
|
6
|
-
**3.0.
|
|
7
|
-
It
|
|
8
|
-
restoring the duplicate raw-script layout removed in 3.0.
|
|
6
|
+
**3.0.5 release candidate** based on the published 3.0.4 shared-library release.
|
|
7
|
+
It preserves the shared three-slot lyric stage used by existing WordPress EPKs
|
|
8
|
+
without restoring the duplicate raw-script layout removed in 3.0. Public ready
|
|
9
|
+
events now bubble, and WordPress compatibility mode can find the body-level
|
|
10
|
+
lyric popover while ordinary module and React mounts stay scoped.
|
|
9
11
|
|
|
10
12
|
## Shared JavaScript library and WordPress
|
|
11
13
|
|
|
@@ -881,6 +883,7 @@ shell errors or resolved development incidents.
|
|
|
881
883
|
| Cues or lyrics do not appear | Verify the selected UTF-8 timing attachment, bracketed timestamps, successful fetch and master-duration match. Call `discoverAudio()` for deliberately inserted players. A final status of `none` can mask a fetch failure: inspect the request and entry counts. | [Audio discovery](docs/api/javascript.md#audio-discovery-and-playback) |
|
|
882
884
|
| A chapter landing or resumed section has the wrong visual state | Core LRC subscriptions arm one cue within 50 ms. Shared timelines instead reconstruct active intervals and default to no landing callbacks; use their render state for persistent section styling. Do not replay skipped transient cues to restore a section. | [Cue timelines](docs/api/effects.md#cuetimelineoptions) |
|
|
883
885
|
| Custom lyric styling fails, or remains visible on pause | The generated layer is a direct child of `body`, not `.ks-epk`. Use `nextVisible*` only for a nonblank preview; preserve blank clear cues. Custom renderers must handle pause/end separately. | [Lyric styling](docs/api/styling.md), [lyric events](docs/api/javascript.md) |
|
|
886
|
+
| A document-level adapter never mounts, or `lyricStage()` stays `waiting-for-popover` while the popover exists | Versions before 3.0.5 could keep scoped readiness events from document listeners and could confine WordPress compatibility lookups to the EPK root even though the lyric popover is under `body`. Use 3.0.5 or later; verify a bubbling `dance-moves-*-ready` event, native document lookup in WordPress mode, three generated lyric lines and the adapter-specific ready marker. | [Shared effects loading](docs/api/effects.md#loading-and-ready-event) |
|
|
884
887
|
| Phone motion is absent | Check the adapter's root, mobile/sensor/secure-context gates, user permission and reduced-motion state. Verify real sensor events on the intended device; a synthetic event is not physical-device evidence. | [Orientation runtime](docs/api/adapters.md) |
|
|
885
888
|
| Paper planes are absent or obscure the hero | Save Ambient effect = Paper planes, provide `.ks-epk .epk-hero`, verify the atlas request and hero containment/stacking. Reduced-motion and forced-colour CSS intentionally hide decoration; offscreen/hidden state pauses flight. | [Paper-plane requirements](docs/api/paper-planes.md) |
|
|
886
889
|
| Animation slows down or quality appears stuck | Measure the full visible page after load, inspect the active controller's snapshot and remove duplicate effect owners. Shared `quality()` and Clay/Stars use different thresholds and recovery rules; neither is a physical refresh-rate detector. | [Shared quality](docs/api/effects.md#qualityoptions), [Clay/Stars](docs/api/adapters.md) |
|
package/docs/api/effects.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
[Release adapters](adapters.md) · [CSS/HTML](styling.md)
|
|
5
5
|
|
|
6
6
|
Source: [assets/dance-moves-effects.js](../../assets/dance-moves-effects.js).
|
|
7
|
-
Current shared-library baseline: **3.0.
|
|
7
|
+
Current shared-library baseline: **3.0.5**. Historical 2.7/2.8 notes below
|
|
8
8
|
identify when the earlier primitives were introduced.
|
|
9
9
|
|
|
10
10
|
This is the reusable, page-independent layer introduced in 2.7 and extended with
|
|
@@ -21,9 +21,11 @@ catalogue adopter. The module installs only if `window.DanceMoves` already exist
|
|
|
21
21
|
and `window.DanceMovesEffects` does not. It does not retry a missing dependency.
|
|
22
22
|
Its `version` property copies `DanceMoves.version`.
|
|
23
23
|
|
|
24
|
-
After installation it dispatches **`dance-moves-effects-ready`**
|
|
25
|
-
|
|
26
|
-
`
|
|
24
|
+
After installation it dispatches **`dance-moves-effects-ready`** from the scoped
|
|
25
|
+
EPK root, or from `document` in WordPress compatibility mode, with
|
|
26
|
+
`detail: { api: window.DanceMovesEffects, version: string }`. It is a native
|
|
27
|
+
`CustomEvent` with `bubbles: true` and `cancelable: false`, so established
|
|
28
|
+
document-level adapters receive it in either mode. It fires once
|
|
27
29
|
per successful installation; a late listener does not receive a replay.
|
|
28
30
|
|
|
29
31
|
```js
|
package/docs/api/styling.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
[Documentation index](../README.md) · [JavaScript](javascript.md) ·
|
|
4
4
|
[Adapters](adapters.md)
|
|
5
5
|
|
|
6
|
-
Current shared-library baseline: DanceMoves 3.0.
|
|
6
|
+
Current shared-library baseline: DanceMoves 3.0.5.
|
|
7
7
|
Sources: [core JavaScript](../../assets/dance-moves-core.js),
|
|
8
8
|
[core stylesheet](../../assets/dance-moves-core.css),
|
|
9
9
|
[catalogue adopter](../../assets/dance-moves-catalogue-timing.js),
|
package/docs/javascript-api.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Shared JavaScript API
|
|
2
2
|
|
|
3
|
-
Package: `@kieransimkin/dancemoves`, release candidate 3.0.
|
|
3
|
+
Package: `@kieransimkin/dancemoves`, release candidate 3.0.5.
|
|
4
4
|
This guide describes the public shared module; [WordPress](wordpress-shared-runtime.md)
|
|
5
5
|
loads the same runtime through its adapter.
|
|
6
6
|
|
|
@@ -24,7 +24,7 @@ if ($LASTEXITCODE -ne 0) { throw "WordPress build failed" }
|
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
The build machine needs Node, npm and Python. The WordPress server needs neither
|
|
27
|
-
Node, npm, a C++ compiler nor an external CDN. Install `dist/DanceMoves-wordpress-3.0.
|
|
27
|
+
Node, npm, a C++ compiler nor an external CDN. Install `dist/DanceMoves-wordpress-3.0.5.zip`
|
|
28
28
|
through Plugins → Add New → Upload Plugin, preserving a backup and the prior
|
|
29
29
|
working archive. Do not upload the npm tarball, web ZIP, repository source ZIP
|
|
30
30
|
or a downloaded patch bundle.
|
|
@@ -71,6 +71,11 @@ the compatibility path for existing three-line lyric treatments: the plugin owns
|
|
|
71
71
|
the LRC/audio clock and all lifecycle listeners while page code owns only the
|
|
72
72
|
release-scoped render callbacks and CSS.
|
|
73
73
|
|
|
74
|
+
From 3.0.5, public `dance-moves-*-ready` events bubble for compatibility with
|
|
75
|
+
document-level page adapters. WordPress compatibility mode also keeps native
|
|
76
|
+
document-wide selectors, allowing the body-level lyric popover to be found from
|
|
77
|
+
the scoped runtime. Root-scoped module and React mounts remain isolated.
|
|
78
|
+
|
|
74
79
|
```php
|
|
75
80
|
add_action('wp_enqueue_scripts', function () {
|
|
76
81
|
if (!is_page(260)) { return; } // Your actual Arcadians Page ID.
|
package/lib/build-manifest.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema": "dancemoves-library-build/v1",
|
|
3
3
|
"name": "@kieransimkin/dancemoves",
|
|
4
|
-
"version": "3.0.
|
|
4
|
+
"version": "3.0.5",
|
|
5
5
|
"homepage": "https://kieransimkin.co.uk/my-songs/",
|
|
6
6
|
"files": [
|
|
7
7
|
{
|
|
@@ -31,13 +31,13 @@
|
|
|
31
31
|
},
|
|
32
32
|
{
|
|
33
33
|
"path": "dancemoves.min.js",
|
|
34
|
-
"bytes":
|
|
35
|
-
"sha256": "
|
|
34
|
+
"bytes": 168228,
|
|
35
|
+
"sha256": "2ea4074d6f31f8d9527c13a4379bb6832a760641b900493449840935e0b65cb1"
|
|
36
36
|
},
|
|
37
37
|
{
|
|
38
38
|
"path": "index.cjs",
|
|
39
|
-
"bytes":
|
|
40
|
-
"sha256": "
|
|
39
|
+
"bytes": 276314,
|
|
40
|
+
"sha256": "4e7a6049c0dd68dd9d78836ceb4fe14216c27132ac3264b4d53b27c633e8c597"
|
|
41
41
|
},
|
|
42
42
|
{
|
|
43
43
|
"path": "index.d.ts",
|
|
@@ -46,8 +46,8 @@
|
|
|
46
46
|
},
|
|
47
47
|
{
|
|
48
48
|
"path": "index.mjs",
|
|
49
|
-
"bytes":
|
|
50
|
-
"sha256": "
|
|
49
|
+
"bytes": 275229,
|
|
50
|
+
"sha256": "ad1b4c0a98f3461d6e3d98db3dc8eff7fac2ea6d437ee1650f26341e9bd9eb9c"
|
|
51
51
|
},
|
|
52
52
|
{
|
|
53
53
|
"path": "react.cjs",
|
|
@@ -111,8 +111,8 @@
|
|
|
111
111
|
},
|
|
112
112
|
{
|
|
113
113
|
"path": "wordpress.js",
|
|
114
|
-
"bytes":
|
|
115
|
-
"sha256": "
|
|
114
|
+
"bytes": 167016,
|
|
115
|
+
"sha256": "c6ee5db0eddcc4ea605ed5e091384c857ff888ee062e9f81dd73feaa21ee8bd4"
|
|
116
116
|
}
|
|
117
117
|
]
|
|
118
118
|
}
|