Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
189 commits
Select commit Hold shift + click to select a range
2aa8dbb
[181] 'fix' dev to get started
valdelaseras Apr 16, 2023
3102adc
[#181] update pane-controls display
valdelaseras Apr 16, 2023
daf2c68
[#181] add justify-content: space-between to the banner
valdelaseras Apr 16, 2023
32d8ce7
[#181] update some css to shorthand
valdelaseras Apr 16, 2023
e998324
[#181] comment out edit-favourites for now
valdelaseras Apr 16, 2023
3608d4a
[#181] set up mobile UI, unsorted CSS blocks ( will move them to appr…
valdelaseras Apr 16, 2023
8ca5cfa
[#181] add generic default as per the norm
valdelaseras Apr 16, 2023
683c323
[#181] add this.breakpoint and move some user layout choices into an …
valdelaseras Apr 16, 2023
a1d8946
[#181] update breakpoint to 768, add a TODO
valdelaseras Apr 16, 2023
ab996c3
[#181] update breakpoint for .desktop-only
valdelaseras Apr 16, 2023
3e76bc5
[#181] update template for mobile UI. I will incorporate / probably r…
valdelaseras Apr 16, 2023
d5b5eb0
desktop only for input - add tab button / functionality
valdelaseras Apr 16, 2023
894c4a2
align auto-bake-label to vertical middle
valdelaseras Apr 16, 2023
bd10dca
fix input/output title vertical alignment ( set lineheight to revert )
valdelaseras Apr 16, 2023
4a7008e
fix overflow issues causing some inconsistencies in alignments
valdelaseras Apr 16, 2023
5d25276
[#181] clean up some inconstencies in alignments, add a little bit mo…
valdelaseras Apr 16, 2023
6da34bc
[#181] tidy up changes so far ( move css blocks to their appropriate …
valdelaseras Apr 17, 2023
c1a5b67
Set favourites icon in pane controls following a consistent template …
valdelaseras Apr 17, 2023
b872ac6
line up all icons and paddings with consistency, return auto bake che…
valdelaseras Apr 17, 2023
0e49d52
tidy up code, add controls-height var and implement across stylesheet…
valdelaseras Apr 17, 2023
55695cb
revert cursor grab for mobile UI
valdelaseras Apr 17, 2023
7648c6d
[#181] add some rudimentary code to open and close operations at the …
valdelaseras Apr 17, 2023
2093dac
[#181] remove scattered todos and aggregate in temporary todo.txt fil…
valdelaseras Apr 18, 2023
4eff339
[#181] add todo file, add split CSS files
valdelaseras Apr 18, 2023
5ed5d58
make nice TODO.md file for readability
valdelaseras Apr 18, 2023
475568c
TODO update
valdelaseras Apr 18, 2023
4507d47
fix up banner links for consistency
valdelaseras Apr 18, 2023
b4c0378
[#181] move stylesheets from layout to organised components/, leave o…
valdelaseras Apr 18, 2023
e74d799
[#181] resetOperations on escape key
valdelaseras Apr 18, 2023
f1340f1
[#181] move edit-favourites button to original place in the template,…
valdelaseras Apr 18, 2023
6e4a813
[#181] set mobile and desktop UI on init and window resize without er…
valdelaseras Apr 19, 2023
44aa223
update todo
valdelaseras Apr 19, 2023
0ab31ac
minor 'typo' fix in OperationsWaiter setVisibility doc
valdelaseras Apr 19, 2023
c56ffef
[#181] some minor verbosity adjustments across some vars/selectors
valdelaseras Apr 19, 2023
58d4eb8
[#181] restore overall desktop UI
valdelaseras Apr 19, 2023
bc12a19
[#181] place controls in correct position on mobile and desktop, upda…
valdelaseras Apr 19, 2023
c779d39
[#181] resolve lingering layout issues window resizing, update todos
valdelaseras Apr 19, 2023
f6b23ec
[#181] mobile layout: set heights of all components to make up 100vh
valdelaseras Apr 19, 2023
12116e5
[#181] move setVisibility to App.mjs since it's pretty generic and co…
valdelaseras Apr 19, 2023
4faaae3
TODO update
valdelaseras Apr 19, 2023
7ae22ff
[#181] resolve operations-dropdown behaviour: search-result are at th…
valdelaseras Apr 20, 2023
a40a5c8
[#181] Desktop: operations-dropdown is open and always visible ( on c…
valdelaseras Apr 20, 2023
432f2e4
[#181] cm-panels border color in IO input/output
valdelaseras Apr 20, 2023
caa57ae
[#181] rename hideOperations / resetOperations to more semantic name
valdelaseras Apr 20, 2023
3d03a31
[#181] refactor some of the event handler in OperationsWaiter
valdelaseras Apr 20, 2023
a547935
[#181] resolve favourites cat closing on initial opening mobile UI, u…
valdelaseras Apr 20, 2023
1fd7236
[#181] remove calcControlsHeight as the component is always 70px in h…
valdelaseras Apr 20, 2023
79bbea9
[#181] remove comments in template, update todos
valdelaseras Apr 20, 2023
d3eac1b
[#181] update todo ( no need for prefixes, autoprefixer is installed )
valdelaseras Apr 20, 2023
f1008cf
[#181] remove double border in Operations - search. Update todo ( sta…
valdelaseras Apr 20, 2023
d0e8863
[#181] a few cosmetic touch ups, todo update
valdelaseras Apr 20, 2023
a252c34
[#181] add disabling of popovers on small screens, update todos and o…
valdelaseras Apr 22, 2023
4a76167
[#181] disable popovers on mobile UI on init and resizing events
valdelaseras Apr 23, 2023
6a1501e
[#181] fix glitchy modal popover ( popovers get reinitialised after d…
valdelaseras Apr 24, 2023
f3ab78d
[#181] remove obsolete functions
valdelaseras Apr 24, 2023
51aec97
[#181] add data-title attribute to stubHtml operation so we can add i…
valdelaseras Apr 24, 2023
cff0dbc
[#181] add 'draggable' bool param to createSortableList so we can dis…
valdelaseras Apr 24, 2023
2a9080f
[#181] update opListCreate with new draggable param for mobile, updat…
valdelaseras Apr 24, 2023
455e99d
[#181] update window resizing according to updates
valdelaseras Apr 24, 2023
ec45d95
[#181] add 'selected' class on double click, which is not visible on …
valdelaseras Apr 24, 2023
ccc5095
[#181] remove obsolete func, some debugging > updating todos with obs…
valdelaseras Apr 24, 2023
5e9aa5c
[#181] fix selected / checkmark classes on operation list, based on t…
valdelaseras Apr 26, 2023
5d82ca6
[#181] handle checkmarks on window resizing
valdelaseras Apr 26, 2023
8d693a7
[#181] tidying up with docs and notes for tomorrow :)
valdelaseras Apr 26, 2023
bc93969
[#181] correctly handle checkmarks after favourites updates and reset…
valdelaseras Apr 27, 2023
c6cc998
[#181] fix search result data-name issues ( purging html only for dat…
valdelaseras Apr 27, 2023
89c1ab1
[#181] update opListCreate to desktopOpListCreate ( to always include…
valdelaseras Apr 27, 2023
093a3c4
[#181] change default panel heights based on some user feedback
valdelaseras May 1, 2023
4c2c934
[#181] add maximiser icons to recipe, input and output, and handle ma…
valdelaseras May 2, 2023
5916251
[#181] fix output loading gears for mobile, add a _structure css file…
valdelaseras May 2, 2023
7fff6f5
[#181] use 'regular' listeners for the maximiser icons, left a note f…
valdelaseras May 2, 2023
8bed81c
[#181] disable tooltips on mobile UI
valdelaseras May 2, 2023
f80284c
[#181] adjust Sortable recipe list for a nice mobile experience ('lon…
valdelaseras May 3, 2023
ee9ea05
[#181] handle the correct resetting of layouts in any maximised pane …
valdelaseras May 9, 2023
793acb5
[#181] position rigt hand side icons in status_bar so the dropups are…
valdelaseras May 9, 2023
f1257ea
bit of refactoring
valdelaseras May 9, 2023
5362f9f
[#181] add
valdelaseras May 9, 2023
222bb62
[#181] decrease size of controls for mobile UI
valdelaseras May 10, 2023
0868d97
[#181] adjust #controls panel template and css so it will automatical…
valdelaseras May 10, 2023
fefb98e
[#181] add splitter column minimal widths to prevent unwanted overflo…
valdelaseras May 10, 2023
a27de41
[#181] reduce title-height from 48 to 40
valdelaseras May 10, 2023
d774a50
[#181] set mobile ops-dropdown to fill all space except ops and banne…
valdelaseras May 10, 2023
997f26e
[#181] add breakpoint check in HTMLOperation so desktop doesn't get o…
valdelaseras May 10, 2023
a7a76ec
[#181] update README, run / fix lint
valdelaseras May 10, 2023
9fbef2c
[#181] cleanup to prep draft PR for PR
valdelaseras May 10, 2023
b805253
return imports to original ( assert {type:json}). This stops local de…
valdelaseras May 10, 2023
6242738
typo fix
valdelaseras May 10, 2023
2c08ccf
revert imports for development
valdelaseras May 10, 2023
0bb3a43
[#181] update Chrome driver to 113 ( latest stable ) in order for Nig…
valdelaseras May 10, 2023
6259e4b
[#181] bump nightwatch version
valdelaseras May 10, 2023
6b61567
setting up mobile tests
valdelaseras May 11, 2023
984ce61
revert nightwatch paths to original test
valdelaseras May 11, 2023
41d511a
[#181] check if localStorage has favourites at all to prevent errors …
valdelaseras May 11, 2023
5b25b74
optimise
valdelaseras May 11, 2023
02a4dd5
add local storage availability check, prep for code review
valdelaseras May 12, 2023
5d46d76
set columnSplitter minSize operations to 360 to avoid confusion
valdelaseras May 12, 2023
5b39d0f
change updateVisibility func name to setElementVisbility
valdelaseras May 12, 2023
ec259dd
replace ternary with for cleaner code
valdelaseras May 12, 2023
6a1514d
rename functions to better adhere to conventions
valdelaseras May 12, 2023
df781be
add function to check for window width and use that throughout the ap…
valdelaseras May 12, 2023
8ece851
remove unneccesary array length checks
valdelaseras May 12, 2023
8649b90
optimise addSelectedClass func
valdelaseras May 12, 2023
9a7ec25
rename recipeList var to recipeListItems ( since we are selecting lis…
valdelaseras May 12, 2023
8283725
fix selected class bug messed up after refactoring
valdelaseras May 15, 2023
9ec902a
add a different background color on op selected, based on user test f…
valdelaseras May 15, 2023
f5f0e91
update colours for better UX and implement AA minimum contrast
valdelaseras May 15, 2023
4b030c7
on user test request: when the recipe pane is maximised but the rec-l…
valdelaseras May 15, 2023
6e6d6e0
update some docs, todo.txt
valdelaseras May 15, 2023
4e67556
[#181] update function name
valdelaseras May 23, 2023
3a10e4a
[#181] update some function names and documentation
valdelaseras May 23, 2023
0aab3bd
[#181] add a note for later refactoring
valdelaseras May 23, 2023
2fe5cdc
[#181] update function names and make the linter happy
valdelaseras May 23, 2023
51aa931
[#181] move isFavourite check up in toStubHtml to be able to add 'fav…
valdelaseras May 23, 2023
bff22d4
[#181] refactor favourites updating: rather than building all of the …
valdelaseras May 23, 2023
8d14dfa
[#181] add some functions that allow for an individual Category to be…
valdelaseras May 23, 2023
1e5190c
[#181] a few classname and selector updates
valdelaseras May 23, 2023
b1b0be2
introducing and refactoring to using custom components for building c…
valdelaseras Jun 16, 2023
6f6e9cc
add c-operation-list so any of these elements ( category list, catego…
valdelaseras Jun 16, 2023
6b0b368
A few border touch ups for a cleaner and consistent look
valdelaseras Jul 20, 2023
5f32df8
A few annotations and event listener removals on disconnectedCallback
valdelaseras Jul 20, 2023
840b615
Handle selected, favourite classes and rerendering of the favcat acco…
valdelaseras Jul 20, 2023
1562c86
updateFavourites to handle selected and favourite classes across the …
valdelaseras Jul 24, 2023
e40df1f
use mutation observer to observe fav class and update its icon accord…
valdelaseras Jul 24, 2023
7967bd4
remove unused function
valdelaseras Jul 24, 2023
a3fa46e
remove listeners from Manager
valdelaseras Jul 24, 2023
0830ece
fix selector, remove some unused code
valdelaseras Jul 24, 2023
4ecd2bd
remove some lines and annotations moved to other files
valdelaseras Jul 24, 2023
b3ad5bb
function name change
valdelaseras Jul 24, 2023
d9ea487
add option to c-op-list to create a sortable list
valdelaseras Jul 24, 2023
95c9c88
add popover functionality to c-op-li, handle enabling and disabling o…
valdelaseras Jul 24, 2023
1092382
disable all li.operation popovers on mobile and enable and disable on…
valdelaseras Jul 24, 2023
7340ebd
remove unused / moved code
valdelaseras Jul 24, 2023
f80fe0f
remove listener
valdelaseras Jul 24, 2023
90c66bb
add some args so favCat is expanded after resetting or saving new fav…
valdelaseras Jul 24, 2023
ebc7ba0
fix includes
valdelaseras Jul 24, 2023
6ee0ef8
remove pointer events line to enable the popup of 'already added fav'
valdelaseras Jul 24, 2023
4dcf6d1
reduce selector complexity a little
valdelaseras Jul 25, 2023
8ebce91
remove oplistcreate references, reorder arguments for COpList
valdelaseras Jul 25, 2023
1fc5ca6
add option to c-operation-list to set op-list to isCloneable to recipe
valdelaseras Jul 25, 2023
21ed26e
update params
valdelaseras Jul 25, 2023
4a07d52
restore recipe on refresh
valdelaseras Aug 2, 2023
ede69a7
restore recipe list ordering, properly removing c-ingredient-li and u…
valdelaseras Aug 2, 2023
4ba3123
fix drag & drop settings mobile vs desktop
valdelaseras Aug 2, 2023
85fff21
search results functionality
valdelaseras Aug 3, 2023
f176a11
search result highlighted strings, do not add op to recipe on escape
valdelaseras Aug 7, 2023
daac91d
completing all documentation and other such maintenance
valdelaseras Aug 14, 2023
eb53667
fix all ESlint errors
valdelaseras Aug 14, 2023
8afcfa0
minor cosmetic consistency fixes with original 'design'
valdelaseras Aug 14, 2023
5e6327a
[#181] fix some event issues ( dragging and dropping, mobile taps ), …
valdelaseras Aug 14, 2023
421ea9e
remove bootstrap x on search input as its not needed and just adding …
valdelaseras Aug 14, 2023
6caaf1d
some manual test observations
valdelaseras Aug 14, 2023
21eb177
fix 'undefined' list item clone bug, hitboxes for recipe icons more c…
valdelaseras Aug 14, 2023
3622438
rename c-ingredient-li to c-recipe-li, update TODOs
valdelaseras Aug 14, 2023
b7e0518
move operation removal from recipe list to c-recipe-li and remove all…
valdelaseras Aug 14, 2023
5d876fb
move disable-icon click functionality to c-recipe-li
valdelaseras Aug 15, 2023
4947f80
move breakpoint icon functionality into c-recipe-li, upgrade code a b…
valdelaseras Aug 15, 2023
c110e5a
fix 'clear all
valdelaseras Aug 15, 2023
6a11d14
move and remove some redundant code
valdelaseras Aug 15, 2023
4dc4645
remove listItemUpdate related classes into c-operation-list and simpl…
valdelaseras Aug 15, 2023
47c8af7
rename some vars for readability
valdelaseras Aug 15, 2023
bf27cbb
fuse desktop/mobile splitters into one function, update accordingly a…
valdelaseras Aug 15, 2023
9ea785f
replace the checkbox bootstrap styles with bootstap material v4. Not …
valdelaseras Aug 15, 2023
ab8b48c
eslint fixes
valdelaseras Aug 15, 2023
6a375c6
disable tooltips on mobile, update todos
valdelaseras Aug 15, 2023
e5e8203
resolve conflicts, merge master
valdelaseras Aug 15, 2023
1171f0a
some final modularising of the CSS
valdelaseras Aug 15, 2023
e77ded4
fix gh-code-scanning bot remark
valdelaseras Aug 15, 2023
15252ee
implement change requests
valdelaseras Aug 15, 2023
047750f
fix one more constructor build() dupe
valdelaseras Aug 16, 2023
9656593
set UI breakpoint to 1024 to ensure smooth UX for tablet users. Updat…
valdelaseras Aug 16, 2023
590da18
eslint
valdelaseras Aug 16, 2023
d07502d
fix CodeQL observation, UI test update
valdelaseras Aug 16, 2023
c9f4092
eslint, rec-list dragging indices
valdelaseras Aug 16, 2023
4612a11
CodeQL again
valdelaseras Aug 16, 2023
4740c5d
...codeQL
valdelaseras Aug 16, 2023
b589d3c
00_nightwatch mobile test
valdelaseras Aug 16, 2023
b90fab3
test for 01_io_mobile
valdelaseras Aug 16, 2023
3815216
prune mobile tests for redundancy to reduce test run time
valdelaseras Aug 16, 2023
829f809
eslint
valdelaseras Aug 16, 2023
b51a298
Merge branch 'master' into 181-responsive-ui
a3957273 Feb 3, 2024
cf59bd3
[#181] returns banner height to original 30 pixels
valdelaseras Feb 3, 2024
a7bb81a
[#181] adds 1px to position of #operations-dropdown to display the se…
valdelaseras Feb 3, 2024
fd15e76
[#181] set initial Recipe and IO widths to 30 and 50 (from 40 and 40)…
valdelaseras Feb 3, 2024
85b1dee
[181] resolve undefined operation name on drag event to recipe list
valdelaseras May 31, 2024
9d3567e
Merge remote-tracking branch 'origin/master' into 181-responsive-ui
mattnotmitt Feb 6, 2026
d020c53
Update to support added features since last master merge
mattnotmitt Feb 6, 2026
470c549
Merge remote-tracking branch 'upstream/master' into 181-responsive-ui
mattnotmitt Feb 9, 2026
eae6d2d
Merge branch 'master' into 181-responsive-ui
mattnotmitt Feb 9, 2026
af1e0ae
linting
mattnotmitt Feb 9, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,4 @@ src/node/index.mjs
**/*.DS_Store
tests/browser/output/*
.node-version
.idea
1 change: 1 addition & 0 deletions Gruntfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,7 @@ module.exports = function (grunt) {
},
devServer: {
port: grunt.option("port") || 8080,
host: "0.0.0.0",
client: {
logging: "error",
overlay: true
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ There are four main areas in CyberChef:

1. The **input** box in the top right, where you can paste, type or drag the text or file you want to operate on.
2. The **output** box in the bottom right, where the outcome of your processing will be displayed.
3. The **operations** list on the far left, where you can find all the operations that CyberChef is capable of in categorised lists, or by searching.
3. The **operations** list on the far left ( or in the dropdown at the top on mobile ), where you can find all the operations that CyberChef is capable of in categorised lists, or by searching.
4. The **recipe** area in the middle, where you can drag the operations that you want to use and specify arguments and options.

You can use as many operations as you like in simple or complex ways. Some examples are as follows:
Expand All @@ -80,6 +80,7 @@ You can use as many operations as you like in simple or complex ways. Some examp
- Drag and drop
- Operations can be dragged in and out of the recipe list, or reorganised.
- Files up to 2GB can be dragged over the input box to load them directly into the browser.
- On mobile devices, double-click the operations to add them to the recipe list.
- Auto Bake
- Whenever you modify the input or the recipe, CyberChef will automatically "bake" for you and produce the output immediately.
- This can be turned off and operated manually if it is affecting performance (if the input is very large, for instance).
Expand Down Expand Up @@ -120,8 +121,7 @@ CyberChef is built to support

## Node.js support

CyberChef is built to fully support Node.js `v16`. For more information, see the ["Node API" wiki page](https://github.com/gchq/CyberChef/wiki/Node-API)

CyberChef is built to fully support Node.js `v18`. For more information, see the Node API page in the project ["Node API" wiki page](https://github.com/gchq/CyberChef/wiki/Node-API)

## Contributing

Expand Down
1 change: 0 additions & 1 deletion nightwatch.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
"prod": {
"launch_url": "http://localhost:8000/index.html"
}

}
}

1 change: 0 additions & 1 deletion src/core/Recipe.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ let modules = null;
* The Recipe controls a list of Operations and the Dish they operate on.
*/
class Recipe {

/**
* Recipe constructor
*
Expand Down
Loading