[New Plugin] Bdk Utilities

Will do and add it to the demo page :+1:

1 Like

Hey Gaurav, Iā€™m sure your super busy but have you happened to add Converting Json to a list of things to the Demo yet??

Hey @chad will do it this weekend

Thanks Mate. Legend!!

1 Like

Added Demos 6 & 7 for transformlist. Feel free to check out the demo and editor @chad

I have used couple of your plugins ā€¦ awesome :slightly_smiling_face:

1 Like

I can process text lists with list processor but I canā€™t process numbers. Does anyone else have this issue? EDIT - I canā€™t even add numbers to an easy list. (but adding text is easy)

Maybe I am missing something, but how do you remove an item from an easy list? I feel like this should be an obvious feature. But I am new, so I could totally be missing something.

Yep youā€™re right. Iā€™ll add this in the next update

2 Likes

@gaurav i am using Transform List to JSON

using JS

var itemJson = {};
var keys = listItem.listProperties();
keys.forEach( (key) => {
itemJson[key] = listItem.get(key)
});
return JSON.stringify(itemJson);

WOuld you know or could you provide a pointer on if its possible to included a list nested items

1 Like

Hi @gaurav,

I have one challenge with the Easylist that stops me from using it in some cases. As far as I can tell, the list, once populated, can never return an empty result. I.e. if it contains a list, and you clear it, it will still report the last list it contained.

Is this intentional, and/or am I doing it wrong? I used it to combine different lists on a search page with lots of different filters, but had to change it into an RG instead as I couldnā€™t get it to respond with an empty list if the filter was cleared.

hi @Bubbleboy,
To my understanding, bubble restricts using the get(key) function on things that were passed through the data source in the editor. So in this code (or via any plugin), the max you will be able to get to is the bubble unique id of the item stored in a given field of the object.

If you would like to build a nested json, I think it would require using server side data api of bubble i.e. running code in a server side plugin / a microservice provider like lambda.

Best,
Gaurav

1 Like

Hi @petter,
If i recall correctly, if you use the ā€˜Set to itemā€™ action on the list with a empty value it sets it to blank. Let me know if this isnā€™t working as expected?

2 Likes

Thanks @gaurav

1 Like

Hello @gaurav,

What happened to your plugin Transform List? I canā€™t find it.

Never mind. I see itā€™s part of BDK_Utilities. Just purchased.

Thanks,
George

Hi @gaurav,

Your demo 4 for the Transform list doesnā€™t show any data when the button is clicked. ??

Hi there Mr. @Bubbleboy, and @gaurav

I just used the List Processor to create a JSON string for each row of data. Doing so I was able to include nested data. When the List Processor was finished running I joined the start and end of a JSON list string and used that as the JSON document I sent through api to generate 244 page perfectly formatted document.

Playing around with it I ran it with up to 2,000 rows of data with no failures. It only takes a couple minutes to generate a list that largeā€¦ Just a couple hundred rows is almost instantaneous.

Great plugin.

2 Likes

@gnelson ive been using this plugin for months nowā€¦you buy it and have nested data working within 24 hrsā€¦ amazing. Can you eleborate on specifically how please?

1 Like

@gaurav

Thanks for getting back to me! I meant lists that are auto-populated with the initial content field. Iā€™m using the Easylists basically to replace RGā€™s to store temporary information (without relying on actions).

Iā€™m realizing I may be misunderstanding the use of the Easylist element, and that itā€™s meant to be based around manipulating lists with actions, rather than as a replacement for a hidden RG. And that the Initial Content field is just that ā€“ initial. Not a live-updated data source.

Am I right about this? If so, it may simply not be the right plugin for this exact case.

@Bubbleboy

Sure. Iā€™ll bet @gaurav can improve on my novice method, but hereā€™s how Iā€™m getting it done for the moment with the plugins EasyList and ListProcessor.

I start out with two multiline inputs to handle the beginning and the end of the string.
image

Then when the ListProcessor runs, it creates the string for each row of data that goes into the Easylist.

Youā€™ll notice this includes nested data.

image

Then when the ListProcessor is done I combine the first multiline input and the EasyList value and the second multiline input.

Which results in:

image

Works great. I discovered this quite by accident after spending DAYS working on a different strategy.

For @gaurav, I have a question. Is there a way to run this in the background? The reason Iā€™m asking, is only for extremely long lists. Letā€™s say a user runs this to generate a report that will be delivered by email from the service that received the api call, but after clicking the button or whatever, to execute, they navigate away from the page? Theyā€™ll never receive the report.

Personally, I think waiting 90 seconds is actually very quick to receive something with 2,000 rows of data. (Typical use wonā€™t be anywhere near that, Iā€™m just looking at extremes) I can put a notice that the user needs to wait until they get the ā€œALL DONEā€ popup before they go do anything else. I just know how some people are. LOL

BTW, you build some awesome plugins!!

Thanks,
George

4 Likes