@glissade/scene 0.39.0 → 0.40.0-pre.0

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 (2) hide show
  1. package/dist/describe.js +7 -1
  2. package/package.json +2 -2
package/dist/describe.js CHANGED
@@ -23,7 +23,7 @@ import { easings, listValueTypes } from "@glissade/core";
23
23
  * never pulled onto the base embed path — a scene that never calls `describe()`
24
24
  * pays zero bytes for it.
25
25
  */
26
- const RAW_VERSION = "0.39.0";
26
+ const RAW_VERSION = "0.40.0-pre.0";
27
27
  const PACKAGE_VERSION = RAW_VERSION.includes("GLISSADE_".concat("VERSION")) ? "0.0.0-dev" : RAW_VERSION;
28
28
  /** Arity of a value type's numeric repr: vec2/vec2-arc → 2, number → 1; others (color/paint/path/string/boolean) carry no scalar arity. */
29
29
  function arityOf(type) {
@@ -435,6 +435,12 @@ const HELPERS = [
435
435
  import: "@glissade/scene/component",
436
436
  usage: "defineComponent({ name, props: { <p>: { type, required? } }, build(props, childId): Group }): (props & { id }) => { node: Group, id, childId(sub?), targets(child, prop) }"
437
437
  },
438
+ {
439
+ name: "exprTrack",
440
+ summary: "Expr (0.40): drive a numeric prop by a FORMULA of the playhead t instead of keyframes — exprTrack(\"orb/position.y\", \"200 + 80*sin(t*2)\"), fed via tl.tracks(...). Pure function of t: constants (PI/TAU/E), a math whitelist (sin/cos/clamp/lerp/smoothstep/min/max/mod/floor/…), and seeded rand(x) — no Date/Math.random. Compile-validated, byte-identical determinism to keyframes. On the tree-shakeable @glissade/core/expr subpath (off the base embed).",
441
+ import: "@glissade/core/expr",
442
+ usage: "exprTrack(target: string, formula: string): Track // tl.tracks([exprTrack(\"orb/opacity\", \"0.5 + 0.5*cos(t)\")])"
443
+ },
438
444
  {
439
445
  name: "Gauge",
440
446
  summary: "Build-time radial gauge (data-viz, like Chart): a spec → N categorical stroked-arc zones + boundary ticks + a needle + separate labels, returning a Group. Angle deg: 0=up, +=clockwise. Needle takes AUTHORED keys (tl on targets(\"needle\",\"rotation\")) OR value→angle (Meter mode). Zones/ticks/needle/labels are each addressable sub-ids (zone-{i}, tick-{i}, needle, label-{i}, glow); labels draw z-above zones so a zone dim never crushes a label. Tree-shaken off the base scene index.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@glissade/scene",
3
- "version": "0.39.0",
3
+ "version": "0.40.0-pre.0",
4
4
  "description": "glissade scene graph: nodes, transforms, DisplayList emission. Renderer-agnostic; zero DOM/Node dependencies.",
5
5
  "license": "Apache-2.0",
6
6
  "engines": {
@@ -77,7 +77,7 @@
77
77
  ],
78
78
  "dependencies": {
79
79
  "yoga-layout": "^3.2.1",
80
- "@glissade/core": "0.39.0"
80
+ "@glissade/core": "0.40.0-pre.0"
81
81
  },
82
82
  "repository": {
83
83
  "type": "git",