cabbage-react 1.0.0-beta.31 → 1.0.0-beta.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.
@@ -1 +1 @@
1
- {"version":3,"file":"useCabbageState.d.ts","sourceRoot":"","sources":["../../src/hooks/useCabbageState.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,WAAW,MAAM,YAAY,MAAM;;yBAM9B,CAAC;CAkEtC,CAAC"}
1
+ {"version":3,"file":"useCabbageState.d.ts","sourceRoot":"","sources":["../../src/hooks/useCabbageState.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,WAAW,MAAM,YAAY,MAAM;;yBAM9B,CAAC;CAsFtC,CAAC"}
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react");console.log("Cabbage: loading cabbage.js");class p{static sendParameterUpdate(s,e=null){const a={command:"parameterChange",obj:JSON.stringify(s)};e!==null?e.postMessage(a):(console.log("Cabbage: sending parameter change from UI",a),window.sendMessageFromUI(a))}static sendCustomCommand(s,e=null){const a={command:s,text:JSON.stringify({})};console.log("Cabbage: sending custom command from UI",a),e!==null?e.postMessage(a):window.sendMessageFromUI(a)}static sendWidgetUpdate(s,e=null){console.log("Cabbage: sending widget update from UI",s.props);const a={command:"widgetStateUpdate",obj:JSON.stringify(s.props)};e!==null?e.postMessage(a):window.sendMessageFromUI(a)}static sendMidiMessageFromUI(s,e,a,t=null){var o={statusByte:s,dataByte1:e,dataByte2:a};const l={command:"midiMessage",obj:JSON.stringify(o)};console.log("Cabbage: sending midi message from UI",o),t!==null?t.postMessage(l):window.sendMessageFromUI(l)}static MidiMessageFromHost(s,e,a){console.log("Cabbage: Got MIDI Message"+s+":"+e+":"+a)}static triggerFileOpenDialog(s,e){var a={channel:e};const t={command:"fileOpen",obj:JSON.stringify(a)};s!==null?s.postMessage(t):window.sendMessageFromUI(t)}}const C=i=>{const[s,e]=d.useState();return d.useEffect(()=>{const a=t=>{const{data:o}=t;if(o.channel===i&&o.data&&o.command==="widgetUpdate"){const l=JSON.parse(o.data);console.log(`[Cabbage-React] ${o.command}: Received properties for channel: ${o.channel}`,l),e(l)}};return window.addEventListener("message",a),()=>{window.removeEventListener("message",a)}},[]),{properties:s}},w=(i,s)=>{const{properties:e}=C(i),[a,t]=d.useState(),[o,l]=d.useState(),M=g=>{t(g);const r={paramIdx:s,channelType:o,channel:i,value:g};p.sendParameterUpdate(r,null)};return d.useEffect(()=>{var r;if((e==null?void 0:e.channel)!==i)return;const g=(r=e==null?void 0:e.range)==null?void 0:r.defaultValue;a===void 0&&g!==void 0&&(console.log(`[Cabbage-React]: Received initial value for channel "${e==null?void 0:e.channel}"`,g),t(g),typeof g=="number"?l("number"):typeof g=="string"&&l("string"))},[e]),d.useEffect(()=>{const g=r=>{var c,m,u,b,f;const{data:n}=r;((c=n.data)==null?void 0:c.paramIdx)===s&&n.command==="parameterChange"&&((m=n==null?void 0:n.data)==null?void 0:m.value)!==void 0&&(console.log(`[Cabbage-React] ${n.command}: Received value change for paramIdx: ${(u=n.data)==null?void 0:u.paramIdx}`,(b=n==null?void 0:n.data)==null?void 0:b.value),t((f=n==null?void 0:n.data)==null?void 0:f.value))};return window.addEventListener("message",g),()=>{window.removeEventListener("message",g)}},[]),{value:a,setValue:M}};exports.Cabbage=p;exports.useCabbageProperties=C;exports.useCabbageState=w;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react");console.log("Cabbage: loading cabbage.js");class p{static sendParameterUpdate(n,e=null){const a={command:"parameterChange",obj:JSON.stringify(n)};e!==null?e.postMessage(a):(console.log("Cabbage: sending parameter change from UI",a),window.sendMessageFromUI(a))}static sendCustomCommand(n,e=null){const a={command:n,text:JSON.stringify({})};console.log("Cabbage: sending custom command from UI",a),e!==null?e.postMessage(a):window.sendMessageFromUI(a)}static sendWidgetUpdate(n,e=null){console.log("Cabbage: sending widget update from UI",n.props);const a={command:"widgetStateUpdate",obj:JSON.stringify(n.props)};e!==null?e.postMessage(a):window.sendMessageFromUI(a)}static sendMidiMessageFromUI(n,e,a,t=null){var o={statusByte:n,dataByte1:e,dataByte2:a};const i={command:"midiMessage",obj:JSON.stringify(o)};console.log("Cabbage: sending midi message from UI",o),t!==null?t.postMessage(i):window.sendMessageFromUI(i)}static MidiMessageFromHost(n,e,a){console.log("Cabbage: Got MIDI Message"+n+":"+e+":"+a)}static triggerFileOpenDialog(n,e){var a={channel:e};const t={command:"fileOpen",obj:JSON.stringify(a)};n!==null?n.postMessage(t):window.sendMessageFromUI(t)}}const v=g=>{const[n,e]=d.useState();return d.useEffect(()=>{const a=t=>{const{data:o}=t;if(o.channel===g&&o.data&&o.command==="widgetUpdate"){const i=JSON.parse(o.data);console.log(`[Cabbage-React] ${o.command}: Received properties for channel: ${o.channel}`,i),e(i)}};return window.addEventListener("message",a),()=>{window.removeEventListener("message",a)}},[]),{properties:n}},w=(g,n)=>{const{properties:e}=v(g),[a,t]=d.useState(),[o,i]=d.useState(),C=l=>{t(l);const r={paramIdx:n,channelType:o,channel:g,value:l};p.sendParameterUpdate(r,null)};return d.useEffect(()=>{var r;if((e==null?void 0:e.channel)!==g)return;const l=(r=e==null?void 0:e.range)==null?void 0:r.defaultValue;a===void 0&&l!==void 0&&(console.log(`[Cabbage-React]: Received initial value for channel "${e==null?void 0:e.channel}"`,l),t(l),typeof l=="number"?i("number"):typeof l=="string"&&i("string"))},[e]),d.useEffect(()=>{const l=r=>{var c,m,u,f,b;const{data:s}=r;if(s.command==="widgetUpdate"){if(s.channel!==g)return;console.log(`[Cabbage-React] ${s.command}: Received initial value for channel "${s.channel}"`,s.value),s.value!==void 0&&(t(s.value),typeof s.value=="number"?i("number"):typeof s.value=="string"&&i("string"))}((c=s.data)==null?void 0:c.paramIdx)===n&&s.command==="parameterChange"&&((m=s==null?void 0:s.data)==null?void 0:m.value)!==void 0&&(console.log(`[Cabbage-React] ${s.command}: Received value change for paramIdx: ${(u=s.data)==null?void 0:u.paramIdx}`,(f=s==null?void 0:s.data)==null?void 0:f.value),t((b=s==null?void 0:s.data)==null?void 0:b.value))};return window.addEventListener("message",l),()=>{window.removeEventListener("message",l)}},[]),{value:a,setValue:C}};exports.Cabbage=p;exports.useCabbageProperties=v;exports.useCabbageState=w;
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { useState as r, useEffect as m } from "react";
2
2
  console.log("Cabbage: loading cabbage.js");
3
- class C {
3
+ class w {
4
4
  static sendParameterUpdate(s, e = null) {
5
5
  const a = {
6
6
  command: "parameterChange",
@@ -29,11 +29,11 @@ class C {
29
29
  dataByte1: e,
30
30
  dataByte2: a
31
31
  };
32
- const g = {
32
+ const i = {
33
33
  command: "midiMessage",
34
34
  obj: JSON.stringify(o)
35
35
  };
36
- console.log("Cabbage: sending midi message from UI", o), t !== null ? t.postMessage(g) : window.sendMessageFromUI(g);
36
+ console.log("Cabbage: sending midi message from UI", o), t !== null ? t.postMessage(i) : window.sendMessageFromUI(i);
37
37
  }
38
38
  static MidiMessageFromHost(s, e, a) {
39
39
  console.log("Cabbage: Got MIDI Message" + s + ":" + e + ":" + a);
@@ -49,17 +49,17 @@ class C {
49
49
  s !== null ? s.postMessage(t) : window.sendMessageFromUI(t);
50
50
  }
51
51
  }
52
- const M = (i) => {
52
+ const C = (g) => {
53
53
  const [s, e] = r();
54
54
  return m(() => {
55
55
  const a = (t) => {
56
56
  const { data: o } = t;
57
- if (o.channel === i && o.data && o.command === "widgetUpdate") {
58
- const g = JSON.parse(o.data);
57
+ if (o.channel === g && o.data && o.command === "widgetUpdate") {
58
+ const i = JSON.parse(o.data);
59
59
  console.log(
60
60
  `[Cabbage-React] ${o.command}: Received properties for channel: ${o.channel}`,
61
- g
62
- ), e(g);
61
+ i
62
+ ), e(i);
63
63
  }
64
64
  };
65
65
  return window.addEventListener("message", a), () => {
@@ -68,29 +68,36 @@ const M = (i) => {
68
68
  }, []), {
69
69
  properties: s
70
70
  };
71
- }, v = (i, s) => {
72
- const { properties: e } = M(i), [a, t] = r(), [o, g] = r(), w = (l) => {
71
+ }, M = (g, s) => {
72
+ const { properties: e } = C(g), [a, t] = r(), [o, i] = r(), v = (l) => {
73
73
  t(l);
74
74
  const d = {
75
75
  paramIdx: s,
76
76
  channelType: o,
77
- channel: i,
77
+ channel: g,
78
78
  value: l
79
79
  };
80
- C.sendParameterUpdate(d, null);
80
+ w.sendParameterUpdate(d, null);
81
81
  };
82
82
  return m(() => {
83
83
  var d;
84
- if ((e == null ? void 0 : e.channel) !== i) return;
84
+ if ((e == null ? void 0 : e.channel) !== g) return;
85
85
  const l = (d = e == null ? void 0 : e.range) == null ? void 0 : d.defaultValue;
86
86
  a === void 0 && l !== void 0 && (console.log(
87
87
  `[Cabbage-React]: Received initial value for channel "${e == null ? void 0 : e.channel}"`,
88
88
  l
89
- ), t(l), typeof l == "number" ? g("number") : typeof l == "string" && g("string"));
89
+ ), t(l), typeof l == "number" ? i("number") : typeof l == "string" && i("string"));
90
90
  }, [e]), m(() => {
91
91
  const l = (d) => {
92
92
  var c, u, f, b, p;
93
93
  const { data: n } = d;
94
+ if (n.command === "widgetUpdate") {
95
+ if (n.channel !== g) return;
96
+ console.log(
97
+ `[Cabbage-React] ${n.command}: Received initial value for channel "${n.channel}"`,
98
+ n.value
99
+ ), n.value !== void 0 && (t(n.value), typeof n.value == "number" ? i("number") : typeof n.value == "string" && i("string"));
100
+ }
94
101
  ((c = n.data) == null ? void 0 : c.paramIdx) === s && n.command === "parameterChange" && ((u = n == null ? void 0 : n.data) == null ? void 0 : u.value) !== void 0 && (console.log(
95
102
  `[Cabbage-React] ${n.command}: Received value change for paramIdx: ${(f = n.data) == null ? void 0 : f.paramIdx}`,
96
103
  (b = n == null ? void 0 : n.data) == null ? void 0 : b.value
@@ -101,11 +108,11 @@ const M = (i) => {
101
108
  };
102
109
  }, []), {
103
110
  value: a,
104
- setValue: w
111
+ setValue: v
105
112
  };
106
113
  };
107
114
  export {
108
- C as Cabbage,
109
- M as useCabbageProperties,
110
- v as useCabbageState
115
+ w as Cabbage,
116
+ C as useCabbageProperties,
117
+ M as useCabbageState
111
118
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cabbage-react",
3
- "version": "1.0.0-beta.31",
3
+ "version": "1.0.0-beta.32",
4
4
  "type": "module",
5
5
  "keywords": [
6
6
  "cabbage",