For testing
For testing, you can replicate messages from the parent platform
// WARNING!!
// These are examples for testing, parent platform may use a
// different format for message passing in the future without notice.
addEventListener('message', (event) => {
if (typeof event.data !== 'string') return;
if (!event.data.startsWith('layer:')) return;
console.log(event.data);
});
// pass in a set of JSON stringified parameters,
// field names and values should be consistent with your parameters
postMessage('layer:parameters:{"number_parameter_id":"1"}', '*');
postMessage('layer:paramchange:{"id":"number_parameter_id","value":"2"}', '*');
// trigger preview recording
postMessage('layer:preview', '*');
// setting '?controlled=true' on the URL will activate `$layer.controlled`