[PLUGIN] Communicator by SuperStack

Proud to share a small but helpful plugin to send data and trigger events from reusable elements and repeating group cells to the “outside world”!

:sparkles: Features

:white_check_mark: Send anything from inside a reusable element or a RG cell.

:white_check_mark: Use conditionals such as “when hovered” to trigger the sending of data / triggering an event on the main page!

:white_check_mark: The reusable element can be within a repeating group.

There are two elements, both are non-visible in run mode.

  • The “Sender” sits inside the reusable element / RG cell and provides a new workflow option “Publish value” which lets you send a value / thing outside to the “Receiver” element. The Sender can also run in “conditional mode” which lets you trigger the sending of data when a condition is true such as a RG cell being hovered (see demo for setup).

  • The “Receiver” sits outside of the reusable element. This provides a state called “received thing” to access what was sent from the reusable element. It also provides a “When Updated” event to allow you to trigger other workflows.

:warning: Note, the “Receiver” element cannot be placed inside a repeating group.

Any questions do drop a note here!

:gear: Demo

:sparkles: Plugin page

:books: Manual

All the best.
Rob.

10 Likes

Hey, that’s a cool idea. Good one.

1 Like

Cheers Keith :slightly_smiling_face:

1 Like

Great idea, its a pain to do this natively.

Can the reusable you are sending from, be inside a RG?

1 Like

Thanks @andy.i. Yep, the reusable can be inside an RG. I often use it for context menus within RG cells.

2 Likes

:sparkles:UPDATE!

You can now fire events / send data based on a condition occurring! E.g. when a repeating group cell is hovered. Check out the demo here!

image

2 Likes

This is cool!

2 Likes

Hi can this item read data from inside a nested RG - so mean can I see a state from inside my 2nd RG, out of the box I can’t do that?

thx
DOM

Hey Dom,

Yes that should work. E.g. the “sender” is placed within a nested RG, and the “receiver” is placed outside all RGs. Could you share some screenshots if this is not working please.

Cheers
Rob

Hey @robhblake thanks for making this - takes using reusable elements to a new level.

I’m getting this error message suddenly - TypeError: cannot set property ‘a’ of undefined. It also seems to be lagging, I started changing the ID in case it was an issue with the id I used (I only tried a1, A and a on both sides) but the error message shows me the id I used a few tries ago in case that adds any context. Any help would be appreciated!
errorsuperstack

Hey Jasmin

Thanks for trying it out, glad you’re finding it helpful. :slightly_smiling_face:

Seems odd. Could you try deleting the element and putting a new one on the page? If that doesn’t work would you mind DMing me some screenshots of your setup showing both elements and I’ll take a look.

Bests
Rob

Thanks for responding Rob, just sent you a DM with screenshots and notes!

Hi Jasmin @dtry101

Thanks for your message. The issue is that you have the receiver inside the popup. The receiver actually needs to be on the page . This is since Bubble does not included the items in the popup in the DOM until the popup is shown, hence you get the error that the ID is not defined.

If you cut the receiver and paste it somewhere on your page that should work :slight_smile:

Bests
Rob.

1 Like

WOOOOOO that worked thank you @robhblake :pray:t5:

1 Like

Dear @robhblake and the SuperStack team,

I keep on getting this error… I don’t know why?

The plugin Communicator | SuperStack / action Publish value a Super Communicator Sender threw the following error: TypeError: Cannot set property ‘a’ of undefined
at eval (PLUGIN_Communicator—SuperStack-element_action–Super-Communicator-Sender-Publish-value-.js:3:87)
at https://dhtiece9044ep.cloudfront.net/package/run_debug_js/97da1fcfe8a7ee4c9f78eb4f64d1d17eabf5fc2ed55260dafbd50cdcfb616c96/xfalse/x14:6:2065438 (please report this to the plugin author)

Any idea?

Hi @peter11

Can you confirm where the “receiver” is placed? It should be placed on the page (as opposed to inside a popup or a hidden element)

If that doesn’t fix it can you please send some screenshots of your setup (private message)

Bests
Rob

Yes, It’s placed on the page as well as on a reusable element.

Here is a screenshot of the error
SuperStack

Hi @robhblake

I have a reusable element that contains a menu system that is used on several pages. The RE contains a GroupFocus … which contains a Repeating Group. I want to be able to detect when something in the RG is hovered and fire off a workflow.

I have tried putting the ‘receiver’ both on the page and in the Reusable Element, but it seems no data is transferred. Have I gone too far by embedding the ‘sender’ in a RG, inside a GroupFocus, inside a Reusable?

Thanks in advance

Works well, simple to use :+1:

I think an example with reusable component inside RG would be a great addition to the demo editor since it’s probably a very common use case.

Hello @robhblake

The plugin is working quite well but sometime we got unexpexcted and uneasy to uderstand plugin errors.

Here is one, it was working well few minutes ago and we didn’t change anything.

The plugin Communicator | SuperStack / action Publish value a Super Communicator Sender threw the following error: TypeError: Cannot set properties of undefined (setting 'a') at eval (PLUGIN_1617636751763x546780613340823550/Communicator---SuperStack-element_action--Super-Communicator-Sender-Publish-value-.js:3:87) at https://dhtiece9044ep.cloudfront.net/package/run_debug_js/dde9e99b0c4183f9b58b70498dca59f8cd712302a3dfcd29d116cc62c733df28/xfalse/x15/run_debug.js:6:2301093 (please report this to the plugin author)

Recording : Recordit: Record screencasts fast & free! with GIF Support!

Can you help us understand what it means, how does it happen ?

Thanks,

@nicolasoro1

Edit : It started working again a few minutes ago, without any change on anything that is part of the SuperCommunicator components or workflow.