vignaesh01 / sfdx-package-generator

Salesforce Package.xml Generator Extension for VS Code
https://marketplace.visualstudio.com/items?itemName=VignaeshRamA.sfdx-package-xml-generator
Other
62 stars 31 forks source link

two Enhance requests: 1) Cant stop the plugin from processing therefore must close vscode to stop. 2) Support multiple/parallel filename generation #33

Open peternoges opened 4 years ago

peternoges commented 4 years ago

Hey Vignaesh,

Great plugin. I wish there was a way to stop processing (notifs), and also support multi filename generates in parallel. A suggestion is to extend your ui to be tabular where each tab is named/renamed after the desired packagexml filename output and each tab offers its own selection page (instance of your current app). In my opinion let the user dictate how many packages they want to create and give them a new "Choose Metadata Components" page instance for each tab.

stop feature: The cancel button doesnt solve my need when many types are being processed because it cancels 1 type and probably does not cancel all 'remaining-to-be-processed' types. To reproduce: Click Select All and before it finishes try to stop the notifications and processing. I believe there is no way to "stop the process early" other than exiting vscode. I know clicking Clear All doesnt stop processing, but is there no 'stop' button?

"parallel" filename generation feature: , perhaps the concept of saving|renaming|dragging|searching tabnames whereby a tabname would have its own instance of your app, and each tabname could generate its own package.xml file.

At first I thought maybe a cheap workaround would be to enhance the "clear all" button (if clicked, stop processing). But In hindsight this would not be good because maybe when its processing i want to clear all and start building a new package as the first one runs/processes. Is that on the roadmap? (To support multiple tabs where I can build multiple package.xml file names at one time?)

Suggestion (not feasibility-checked): As your app starts to iterating through metadata types (& displaying toast notifs, etc) note a start timestamp (and which tab/filename theyre building). Then also note the timestamp the user last clicks "Stop" (and the tab/filename theyre building). Validate/prevent dupe tabname/package name / file names. Finally enhance the loop logic where you process and display toast notifs and halt/exit if "stop" was clicked sooner than the start timestamp not globally in the app but in the context of the filename/tabname/packagename.