[New Plugin] bdk RepeatingGroup tools

Hi Gaurav,

I frequently place “data storage” elements in a popup to keep them from view, but as you say, the RGExtractor will only work when visible. Is this a Bubble limitation, or do you know if there’s some way around this (apart from showing/hiding the popup)?

In general, are Bubble’s elements the only ones that update when they’re not visible?

Hi @petter,

Yep bubble’s plugin elements require visibility for proper working. Its a limitation of bubble’s plugin builder. So (in my opinion) in general its a bad idea to place elements in a popup / reusable for sure. Because their initialisation function runs pretty randomly vs. actual dom rendering.

Personally I do a very simple thing which solves all these problems of visibility, design etc…
I have a group (say ‘storage group’) which is as wide as your page and small height (say 20px) at the very top of page and behind all elements. Its set to be visible, and a min width of 0

Now you can put all your storage, env, if then etc. type of elements in there. Just place them side by side (I have each like 20x20). The only thing special to do is make their all min width to be 0 and align each one to left in responsive tab.

Your elements will be visible. They will not mess with your design at all. They will also be there on the page but invisible to the user’s eye. And they will be rendered before most elements.

Hope that helps!

7 Likes

Hi @gaurav,

Yes, that’s very helpful, thank you!

I still have some learning to do when it comes to dom rendering and how it affects plugins and other elements, so appreciate your input!

1 Like

Hi @gaurav , Thanks for the plugin , i have a couple of questions please :
1- For the Demo1 , can this plugin work if i want to add (Message 1+ message 2 …etc ) in the same current cell , let’s say each cell will display (message 1)+( message 2) +( message 2 ) …
2- Can the plugin handle the heavy server-side workflows in case many users add multiple texts at the same time ?
BR

Hi @ciscotreasure,
Great question!

The plugin is purely client-side i.e. it doesn’t even use the capacity of your bubble app. Re: #2, Since it doesn’t rely on bubble server, it is indifferent to your server-side workflows. As soon as the data comes in the repeating group, it will anchor it to bottom. :slight_smile:

Re: #1, It can anchor to bottom (i.e. Demo 1) any vertical scrolling type of group, regardless of the contents of the cell.

Cheers,
Gaurav

2 Likes

Thanks for the information, , i have purchased the plugin but am facing 2 issues , kindly support ( check the image )

:
1- I don’t know how i can add 2 different input values to display in the same cells ?
2- How i can delete this cell ?

@ciscotreasure,
That has nothing to do with the plugin actually.

Its’ related to using bubble repeating groups & dynamic expressions. I have answered your question below however:

  1. From the screenshot you’re adding two texts one after another to the list.
  2. If you want to join the texts first and then add a single text, create a input (make it hidden) whose value is ‘input name’s value input add number’s value’. Then add this inputs value to the repeating group list of texts instead of what you have currently in the screenshot.
2 Likes

Hello @gaurav!

I need some assistance with refreshing data in the RGData component.

See below - I have two tables. Table #1 (repeating group) at the top grabs the amount needed in Table #2 (also repeating group) at the bottom and sums it when the CASH account dropdown (table 2) = the funding source (table 1)

In the editor, in Table #1 at the top, I have a RG Data A component in each cell - With the name of the Funding Source name.

In the editor, in Table #2 at the bottom, I have a corresponding Extractor - With the name of the CASH account dropdown (which corresponds with the Funding Source in Table 1).

When I load the page, it works perfect - If the CASH Account dropdown = The funding Source, it adds up the data.

AND, if I change the CASH Dropdown to something new, it updates Table 1 appropriately! See screenshot: I changed the 3rd Pending Loan to have the Cash Account “Texas Advantage”. It updates instantly. (which is exactly why I bought this plugin… Database was slow)

The Issue: Veritex still holds the $37,500 value… Even though all of the extractors below are not pulling Veritex anymore. When I look at the list in RG Data, I notice that it keeps the $37,500.

Now, of course, if I refresh the page, all is right with the world again.

So it looks like I can dynamically ADD to the RG Data lists, but it won’t REMOVE from that list. I tried resetting with a group above it, no dice (As an aside, I reset the group using @vini_brito orchestra plugin… Allowed me to individually reset each group in each row of Table #1)

Any ideas?

1 Like

As an aside, I do get an error - Not sure if it’s related?

@gaurav It’s been a difficult few hours, but I figured out a hack. Now, when I update the Extractor, it works. :slight_smile: I did it by using a conditional that takes the original extractor name (stored in a state), zeroes out the column, and then adds a new extractor name with a fresh column number.

It’s a nasty implementation I concocted frankly. But it’s super fast! And I haven’t gotten it to fail yet (knock on wood).

Here’s a screenshot of before and after I change the dropdown!

Before:


After:


Note that it now SUBTRACTS the amount from Veritex FIRST before then adding the new amount to Moody.

Not sure what the solution is from the plugin perspective - It’s almost like it needs a “RG Extractor” refresh? Or perhaps it’s just the error in my last post that was causing all of this to begin with.

Anywho, if you need any more details, reach out to me. Overall, still very happy with the plugin. Beyond my crazy implementation, I can see many more uses for it in other MVPs.

Hi @w.fly,
Not sure what you’re trying there (I got confused by all the screenshot and explanations :laughing:) but the refresh is fully automatic… The extractor name should not be dynamic. Another thing to note is that the ‘Limit to max’ should be the count of the RG in which the corresponding RGData element is there.

No worries! I figured this was quite an edge case - I have one repeating group at the top that aggregates data from another repeating group at the bottom based on a dynamic dropdown - If the dropdown in the bottom repeating group equals the current cell of the top repeating group, add the number, otherwise, don’t.

It’s complicated because the extractor is conditional - Only add an amount IF the dropdown = a particular field. I didn’t want to have to create tons of extractors to pull each of my funding sources - As those funding sources are also dynamic. Sick.

I’m 99% sure that I’ve overcomplicated it - Usually if I’m having issues explaining something, it’s usually for that reason. haha…

It’s working fantastic, even w/ dynamic extractor names - If you want to take a look at my app, I have no problem giving you access, just if your curious. :slight_smile:

Hello @gaurav. I’ve purchased your plugins (they are awesome, thank you), and Im having a few problem here. I build the list using the Extractor… they are nested repeating groups, and they are working up perfectly. I run a workflow to create new things based on this final nested RG.

The problem is that this nested RGs shouldnt appear to the user. While I’m using the full list on the RGs, I have no problem. But when I change to vertical scroll, it doesnt work as expected (it process only what is visible).

I didnt figure it how to make the nested RG invisible for the user and still process everything with no errors. I tried what was suggested above, but didnt work.

To resume, Im performing an workflow using data in nested RGs using the plugin. However, if this nested RG is not on full list mode, it doesnt work. Any work arounds here pls??

Hi @felipe,

Thank you for the feedback!! Much appreciated :smiley:

So unfortunately that’s a bubble limitation for plugins. A plugin element only gets initialized when its visible. A good thing however is that elements can have any dimensions including the plugin element, repeating groups etc. So the workaround is sorta 'its really visible but user can’t see anything different from what they would have if it wasn’t visible.

A workaround is to have the nested repeating group visible but blank with no UI elements inside it other than extractor (which doesnt actually show on page anyways). Have no border boxshadow etc. on it either. Add the extractor element and have like 50 columns etc. so that it doesn’t cause the cell to increase in height with long lists. And just make it full list and reduce the size to like 1x1.

Best,
Gaurav

@gaurav I’m working with the anchor to bottom plugin but it’s throwing this error:

The plugin bdk RepeatingGroup Tools / element Anchor to bottom threw the following error: TypeError: Failed to execute ‘observe’ on ‘MutationObserver’: parameter 1 is not of type ‘Node’.
at eval (PLUGIN_bdk-RepeatingGroup-Tools-update–Anchor-to-bottom-.js:16:25)

And the repeating group is anchored in the center of the page.

The element is on the page itself behind a number of groups and not inside of any group.

Can you please let me know why this is happening?

Yep, did that, it works! :wink: Thank you again gaurav… soon I’ll be purchasing the native app service with you! Cheers.

Thanks for the awesome plugin @gaurav!
I’m having an issue extracting values when a RG is nested within a RG.
I have a dropdown in the nested RG whose values I want to extract:

Here is the extractor in the “inner” group, Column 2 captures the item selected in the dropdown:

Here is the “RG Data” component for the “inner” RG:

This is the extractor for the “outer” group, in this case the column I want has become column 3 because the “outer” extractor also adds a piece of data:

This is the RG Data component of the “outer” group:

This is the workflow step where I set the list of a “thing” to the list from the extractor

When the workflow runs, it doesn’t actually capture any of the data selected in the dropdowns, as shown by this screenshot:

Here is a link to the project: Planmymeals | Bubble Editor

The extractor and data items are in a popup called “Popup Set For Week”.

Hope someone can assist!

@gaurav I’m trying to use this plugin to anchor a repeating group to the bottom of the page in the lower right hand corner that floats while the page is scrolled (a chat box / widget at the page level).

I tried setting this up, but it never anchored to the bottom of the page itself, or floated.

Is this not setup to work on a repeating group at the page level?

Hi @JustinC,
Is the repeating group of a type other than vertical scrolling. The anchor to bottom is meant only for vertical scrolling type of repeating groups as for other types bubble dynamically adds data and stretches the element height. You can check out the demo page & its editor (links in the plugin documentation). They have an example where you can see how its set up.

Sorry, noob question here, how can I tell if my RG extractor is pulling the data? I keep getting an empty list even though I think I have it setup correctly. The repeating group is bottom and my list for each column is just above it in a simple text field…I keep getting empty sets though?