Feature request: Multiple files improvement - Select what input is being processed/used for a step
- Dominant language
- JavaScript
- Stars
- 35.8k
- Forks
- 4.1k
- Avg merge
- 2d 26m
- Merged PRs (30d)
- 33
Description
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. E.g. I'm always frustrated when [...]
I think the best way to explain this, is to compare it to something - in Word you're able to define a template and produce multiple version by combining it with data from example an Excel file.
This feature request is about the same, sort of, you can currently define multiple inputs, but each input goes fully through the recipe - what I want to request is the ability to use inputs for different parts in the recipe, for example, InputA is a file in which you want to replace a certain string with another - the string it needs to be replaced with will be put into InputB as a list of replacers - so in the end you'll end up with multiple outputs, one for each line in InputB
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
The option to select which input to use per recipe step, maybe allow multiple recipes - as to process a second file to further process the main file - this woud allow combining multiple inputs, to produce multiple outputs.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
Re-doing the same recipe by manually changing the parameter for replacement or whatever needs to be changed each cycle - gets really cumbersome if you have to do it a lot.
Second thing I've considered is using the NodeJs API but this makes it really hard to share with others, especially ones with no coding experience
**Additional context**
Add any other context or screenshots about the feature request here.
Samples of inputs, corresponding to above:
INPUTA:
```HTML
Hello World!
```
INPUTB:
```TXT
Earth
Mars
Jupiter
```
RECIPE:
INPUTA: https://gchq.github.io/CyberChef/#recipe=Find_/_Replace(%7B'option':'Regex','string':'World'%7D,'%7BINPUT:2%7D',true,false,true,false)&input=PHA%2BCiAgSGVsbG8gV29ybGQhCjwvcD4
INPUTB: https://gchq.github.io/CyberChef/#recipe=Find_/_Replace(%7B'option':'Regex','string':'World'%7D,'%7BINPUT:2%7D',true,false,true,false)&input=RWFydGgKTWFycwpKdXBpdGVy
Expected results (multiple files):
```HTML
Hello Earth!
-------------------------
Hello Mars!
-------------------------
Hello Jupiter!
```
Contributor guide
Research direction
The issue does not name files, tests, or entry points. Start by tracing how CyberChef currently handles multiple inputs through a recipe, then compare the behavior with the INPUTA, INPUTB, and expected multiple-output examples; done means selected inputs can be used by different recipe steps to produce one output per replacement value.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100