Example links updated and stats recalculated.
This commit is contained in:
1 parent
8342595dca
commit
94c631a928
5 files changed
+6
-6
No files matched your search
@@ -86,4 +86,4 @@ An installation walkthrough, how-to guides for adding new operations, descriptio
|
||||
[5]: https://gchq.github.io/CyberChef/?recipe=%5B%7B%22op%22%3A%22From%20Hexdump%22%2C%22args%22%3A%5B%5D%7D%2C%7B%22op%22%3A%22Gunzip%22%2C%22args%22%3A%5B%5D%7D%5D&input=MDAwMDAwMDAgIDFmIDhiIDA4IDAwIDEyIGJjIGYzIDU3IDAwIGZmIDBkIGM3IGMxIDA5IDAwIDIwICB8Li4uLi6881cu%2Fy7HwS4uIHwKMDAwMDAwMTAgIDA4IDA1IGQwIDU1IGZlIDA0IDJkIGQzIDA0IDFmIGNhIDhjIDQ0IDIxIDViIGZmICB8Li7QVf4uLdMuLsouRCFb%2F3wKMDAwMDAwMjAgIDYwIGM3IGQ3IDAzIDE2IGJlIDQwIDFmIDc4IDRhIDNmIDA5IDg5IDBiIDlhIDdkICB8YMfXLi6%2BQC54Sj8uLi4ufXwKMDAwMDAwMzAgIDRlIGM4IDRlIDZkIDA1IDFlIDAxIDhiIDRjIDI0IDAwIDAwIDAwICAgICAgICAgICB8TshObS4uLi5MJC4uLnw
|
||||
[6]: https://gchq.github.io/CyberChef/?recipe=%5B%7B%22op%22%3A%22Fork%22%2C%22args%22%3A%5B%22%5C%5Cn%22%2C%22%5C%5Cn%22%5D%7D%2C%7B%22op%22%3A%22From%20UNIX%20Timestamp%22%2C%22args%22%3A%5B%22Seconds%20(s)%22%5D%7D%5D&input=OTc4MzQ2ODAwCjEwMTI2NTEyMDAKMTA0NjY5NjQwMAoxMDgxMDg3MjAwCjExMTUzMDUyMDAKMTE0OTYwOTYwMA
|
||||
[7]: https://gchq.github.io/CyberChef/?recipe=%5B%7B%22op%22%3A%22Fork%22%2C%22args%22%3A%5B%22%5C%5Cn%22%2C%22%5C%5Cn%22%5D%7D%2C%7B%22op%22%3A%22Conditional%20Jump%22%2C%22args%22%3A%5B%221%22%2C%222%22%2C%2210%22%5D%7D%2C%7B%22op%22%3A%22To%20Hex%22%2C%22args%22%3A%5B%22Space%22%5D%7D%2C%7B%22op%22%3A%22Return%22%2C%22args%22%3A%5B%5D%7D%2C%7B%22op%22%3A%22To%20Base64%22%2C%22args%22%3A%5B%22A-Za-z0-9%2B%2F%3D%22%5D%7D%5D&input=U29tZSBkYXRhIHdpdGggYSAxIGluIGl0ClNvbWUgZGF0YSB3aXRoIGEgMiBpbiBpdA
|
||||
[8]: https://gchq.github.io/CyberChef/?recipe=%5B%7B%22op%22%3A%22XOR%22%2C%22args%22%3A%5B%22de%20ad%20be%20ef%22%2C%22Hex%22%2Cfalse%2Cfalse%5D%7D%2C%7B%22op%22%3A%22To%20Hexdump%22%2C%22args%22%3A%5B%2216%22%2Cfalse%2Cfalse%5D%7D%5D&input=VGhlIGFuc3dlciB0byB0aGUgdWx0aW1hdGUgcXVlc3Rpb24gb2YgbGlmZSwgdGhlIFVuaXZlcnNlLCBhbmQgZXZlcnl0aGluZyBpcyA0Mi4
|
||||
[8]: https://gchq.github.io/CyberChef/?recipe=%5B%7B%22op%22%3A%22XOR%22%2C%22args%22%3A%5B%7B%22option%22%3A%22Hex%22%2C%22string%22%3A%223a%22%7D%2Cfalse%2Cfalse%5D%7D%2C%7B%22op%22%3A%22To%20Hexdump%22%2C%22args%22%3A%5B%2216%22%2Cfalse%2Cfalse%5D%7D%5D&input=VGhlIGFuc3dlciB0byB0aGUgdWx0aW1hdGUgcXVlc3Rpb24gb2YgbGlmZSwgdGhlIFVuaXZlcnNlLCBhbmQgZXZlcnl0aGluZyBpcyA0Mi4
|
||||
@@ -95,7 +95,7 @@
|
||||
if (navigator.userAgent && navigator.userAgent.match(/MSIE \d\d?\./)) {
|
||||
document.write("Internet Explorer is not supported, please use Firefox or Chrome instead");
|
||||
alert("Internet Explorer is not supported, please use Firefox or Chrome instead");
|
||||
}</script><noscript>JavaScript is not enabled. Good luck.</noscript></span><a href="#" id="support" class="banner-right" data-toggle="modal" data-target="#support-modal">About / Support<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAE1UlEQVR4XoWVC0xT1x/Hv729t7e3LSoqWIRNW6uoARVH5mPGzfcmRvbSacISI5n42Mss25jROd0mOjXO7C9/3XSZdvjIlsxFYCrETWe34nQpD4GIIKgDIaAilpZH+9svJ9BUg/O0n9w2J+fz+55f77nVEREeN2wpWw0AEph7TPW1vMzHLpL/QzYJwGpmKjOM8TMSGJ6rAHCW2cFF6vsSiMR9pMtiMhIcVvMz44eBr0gcaRXzZVcbUXq1AS5PbRd/9gFYxfLDD4ulh6RjAFRqqpzxyco55q83vIwnrAPgKqnD29tP4N0deSgquwl73GAc2LhI2bRqbj9NVfbxulzG1KeYpSqA/LH2IcPz/5du5gVIXevE9kO/o8BdjVstXty67UXhXzXYffRPvP7xjxgcacEve5ZbEh0xswHsflTirZpRic5e96Jup/McPjvwK28/BlvemofjO9Nw7ps3ULBnGQ5uegVL5o1DEMCOHBcO5Rfjq8xUlYMs5XAzQjYiwvD5WZMYrzP3Eh095aHExV9SctoeOna6hB41jhWWUcraHHr+HSeddlfR4ZMesqVkNbLHws5Q4jcnxMeYZj7twC5OoaqKgACccl/F+r1nkLEtF0cKLocCzUq2QdNUaEYDvs31YO7kkUgaHWsGkBLeiqnTkmzcyyp0BwgGRYZqUOA8WYq9P13ClZt3cN8XgKv0Zkgs6yWYNIMQB0iHC+X1mJ48wgRgMnruSSOAJ8dxP8uvNUFR9EJsMMhQZL0oYFQNQpK+YEJIXFLTzFIVRhbzPGob7iLRYdVJkm56b+LxjI/vU1TWNkNmmcJigSgg2oKM1CQkjRoipNcb7yHPXSvSaizledQ1tmHM8CgQ0Zjek3efkXQ6HSTenqzXM5JIK8TMwmkOJI8WB0QInIVXoHBBjgdOCPBbkWWwA/zy94orGLm8pgkJ9iH4g/uoZzEDUYQLjHdEo3ecKa7nggoknuvq6hbFgkHCiLhIXLnezMV0HtEKPo5BAJXl1bcw1h4NTsBIAr2kEwWyj5dgs/MCvvjBg7vt3dA0g+gt70bsTC9LsA/tDw4XDASC58IPyNnzxXWB556ywWiQRQodw1sTpM0ZjRUpCVg2Jx6REUaYNFUIuXXghNB4TaI9CmeKqvwA3OHibe7iOl9R2Q2kp04UYhIQiAjRkSZYB5oQPUADKAifvxPd3QFuQZC/EhZMseO8p47+rvynHMCpkLjn0bdm4/9Pt09OiMPE+BixKBggcQUhNDo6u+HzdcDf0YVO7nF8XH/YrBFYtzuvnduwOPSsJqIQfCQLlmQe7mhobqM8VxUt//wEpW/NpzW7Cum97LP00X4XbfjOTRsPFtGn31+goooGarrjpUUf5Hj5PKwOd0kIG0R4qaj0+pF5q/d7iYLIWjUDrz47CuPsg2BW9TAZJIziH2nmhFisWZiI5tttNHPFPu/Fyzfer8n9MBsPyugBAFisU1a+Zpu/pSVt/VHf/uMXg+7SG9TS2i7g5zEd+PliYGlmjt/+wuby/o4ZswHEMpYwT/g/iLgLIgEMZAYp5qih/WzTZhksUQlqxOB4yOYoHQLBgL+1ydfaUNXZ2lDRWv2bC6AWAHcYvqKefb4+/5pYLgPQGBMT0UM/xsJIjK/ntLb1XL09+ClM9i/zfjVLWKBgfAAAAABJRU5ErkJggg=="></a><a href="#" id="options" class="banner-right">Options<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAD4UlEQVR4XpWTbWxTVRzGn9vhWlnZG1NYlwFLMGCUYfEt2dqwuDBfljGCUZkjgCgZyBeWBQ1ki1TmuvkFkw3JNAw1BhwmOslmtCwZmtDooCs6MCM4m6bQjtEVUtrStds9/s9J7/1wa5f4JE/+Pb25vzzPPedI0OgDEoAjEML75DGbzTaM/ykd0nVk/7v7cPjwITQ0bOsCcL6lpaUWgISFJXHeQmDT8U9PgMkySkwmDofRaBwEwDLBn9nzdfGHJ87JNL/SgiX6Ak+BRLUDHG7v7MJs/AHKysq0qbRQ/p6/bW8dTHlYTuthBSy1trbaALgJflSBWywWSFJaIRnpcl/6rBEulwtvVeZUm1caqkFaRH4oKyurbd/ePdBlZR8E0FpeXo61a9eAMZngEhKz0d95I2pzJT0tMDk5CZ/Ph49+jIJkUqv19vaO12+ue3Lx4oeRTCQIyIQV5eYXoKPDLl7ibVQo4HYefx0V+88iJfPlz7dfUcGUpthgMPz1Uk11/uNPrOMp1b0K37sLAc/LR4e9U8CH/I8t49DR3jfnnms6zVtvIuB/H0leta+v7zJNpnhoaCgxOxtnwekpdud2gMViUXbqVB+jtCwej4spkqeLomUQbwHASu7nZzo0E8TVGzfx8YAX3x+tRVXzgFpdA1DqqsrYhMxODoyKhB6PhzW0fcvOnDnN+DMNULPIcOiDt3x+ZV1UUooLx7ZgV6cDW8wGvLF5E9rb25UNnQYwr7nSmaGv1axB+4GXcWD786C1qP/qs3koLcrBVMDP24Dkp7kOGukWgu6ot0COBLEkPx/V5lwBnxj7FVarFQZ9Nmbu3Fbgbr75GnA69J2t67F760Y4fj6PX1zXAd0izM/NqWeVqmPpI8v4scwI12mhh962oLG2Amd/GMalax5UULqJib+RTMTBFQ6Hg4lE4mkOLyx6FCQVrtfrVbh6NVe9YmdfDv7GQvdjzNbdz3a9d4yd/OlPdvCT71hjcxfjz1fXNK8GkEM2NjU1VRKEybLMbvq8bOfOHeI3/09NTEndzbRB9VXr0X/uAjw+P6wvVIukfu8NXLwuIzk9Zo4FvbkACslLx8fHk+RantxEJ6anp4e3gZD4eCmtXFWKeZlh+pYnDRr5x1EVnBhJpoIU8Ol0OucABCKRyLbu7u5vQqEQKPFoMpm0A5BU8PCIEzNhMza+WIc/rqlQxLwjlQQNavZEVu6Aw+FwkVcAiJLjZLHLAly4vHjD4EX/GEhu8oNYRED1umiVXFByD4ACllLmYqm1TJ4XQGHxm6k3b8PuL8yhqQCHCxmXZK+42t8ypbn3UvpUn8spM+5/AT4U+4f4kq1OAAAAAElFTkSuQmCC"></a></div><div id="wrapper"><div id="operations" class="split split-horizontal no-select"><div class="title no-select">Operations</div><input type="search" class="form-control" id="search" placeholder="Search..." autocomplete="off"><ul class="op_list" id="search-results"></ul><div class="panel-group no-select" id="categories"></div></div><div id="recipe" class="split split-horizontal no-select"><div class="title no-select">Recipe</div><ul id="rec_list" class="no-select"></ul><div id="controls" class="no-select"><div id="operational-controls"><div id="bake-group"><button type="button" class="btn btn-success btn-lg" id="bake"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAGLklEQVR4Xq1XXWxUxxX+7t2769312muE7UCMowSXQDBxHmpo5VQqimQjRaiKlPBQiahKFaG8hCrICc4LT0lDhR8ixXnCElFaAQ9RUWLIgsHgKqCkpBY/TYrruja73nXtrL3e3/v7M5kzMtfRZlcBup/0aWbunXPON+foXp2RGGMgSJKEchw7diza1dV1QpblbgDtq/sq7iU/qxPYjnMLwLRt22f37t37MQC32n4FlSGPjIy8EolEhjs6OsBHBIJBWKYJ07Q4TVi2LdayoiDgDyAQUDgDkCUff64/YxjGM4VC4cXLly+fOHToUOjmzZt6xUCojGAoFBru6elB26ZNCPLgtmWBnwiO48B1XTicNDIiE3NBn0/mghvA7eHz+0FIJpP1qIjqGQiRMzoRnZTmXoq9MqxRU0vImxZ0XYdu6HytolDIT01P/3d8YGBgGID7oAJ8PwwmyzI/mY+EiCzkclkUcjkezBDrcDgsytTa2oKWllZMTf0be/bseRVAmjPDWXpQASKoZVli5LXEwuIictkVmIaJaNM6NESjaICEMA8cqqtDXbAOoWCQKIRyJDkXOI2HyYAzMTHxRwa8KUHyMwAdHZvRsbkDsuKHpmlQOTVVg8QFyjw7PsUvSKBx9dQaPDyYAO3w4cMnAHzO2XDt7zdiyYUMEqkluMwFwCCJ8pR/lhKEIE4PDylA55xfrV/Lmf5d2NbVwmvdhECoCYq/AbISAaR6JGZmcHc2Adex4GcmbDMPx2H/twCXU12lEqiPQjNCsJiMgOVAknUsLi4gHp9HV/dTeGH/87BtF6f/fAFNIQZeDABp3A/uKLine truncated
|
||||
}</script><noscript>JavaScript is not enabled. Good luck.</noscript></span><a href="#" id="support" class="banner-right" data-toggle="modal" data-target="#support-modal">About / Support<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAE1UlEQVR4XoWVC0xT1x/Hv729t7e3LSoqWIRNW6uoARVH5mPGzfcmRvbSacISI5n42Mss25jROd0mOjXO7C9/3XSZdvjIlsxFYCrETWe34nQpD4GIIKgDIaAilpZH+9svJ9BUg/O0n9w2J+fz+55f77nVEREeN2wpWw0AEph7TPW1vMzHLpL/QzYJwGpmKjOM8TMSGJ6rAHCW2cFF6vsSiMR9pMtiMhIcVvMz44eBr0gcaRXzZVcbUXq1AS5PbRd/9gFYxfLDD4ulh6RjAFRqqpzxyco55q83vIwnrAPgKqnD29tP4N0deSgquwl73GAc2LhI2bRqbj9NVfbxulzG1KeYpSqA/LH2IcPz/5du5gVIXevE9kO/o8BdjVstXty67UXhXzXYffRPvP7xjxgcacEve5ZbEh0xswHsflTirZpRic5e96Jup/McPjvwK28/BlvemofjO9Nw7ps3ULBnGQ5uegVL5o1DEMCOHBcO5Rfjq8xUlYMs5XAzQjYiwvD5WZMYrzP3Eh095aHExV9SctoeOna6hB41jhWWUcraHHr+HSeddlfR4ZMesqVkNbLHws5Q4jcnxMeYZj7twC5OoaqKgACccl/F+r1nkLEtF0cKLocCzUq2QdNUaEYDvs31YO7kkUgaHWsGkBLeiqnTkmzcyyp0BwgGRYZqUOA8WYq9P13ClZt3cN8XgKv0Zkgs6yWYNIMQB0iHC+X1mJ48wgRgMnruSSOAJ8dxP8uvNUFR9EJsMMhQZL0oYFQNQpK+YEJIXFLTzFIVRhbzPGob7iLRYdVJkm56b+LxjI/vU1TWNkNmmcJigSgg2oKM1CQkjRoipNcb7yHPXSvSaizledQ1tmHM8CgQ0Zjek3efkXQ6HSTenqzXM5JIK8TMwmkOJI8WB0QInIVXoHBBjgdOCPBbkWWwA/zy94orGLm8pgkJ9iH4g/uoZzEDUYQLjHdEo3ecKa7nggoknuvq6hbFgkHCiLhIXLnezMV0HtEKPo5BAJXl1bcw1h4NTsBIAr2kEwWyj5dgs/MCvvjBg7vt3dA0g+gt70bsTC9LsA/tDw4XDASC58IPyNnzxXWB556ywWiQRQodw1sTpM0ZjRUpCVg2Jx6REUaYNFUIuXXghNB4TaI9CmeKqvwA3OHibe7iOl9R2Q2kp04UYhIQiAjRkSZYB5oQPUADKAifvxPd3QFuQZC/EhZMseO8p47+rvynHMCpkLjn0bdm4/9Pt09OiMPE+BixKBggcQUhNDo6u+HzdcDf0YVO7nF8XH/YrBFYtzuvnduwOPSsJqIQfCQLlmQe7mhobqM8VxUt//wEpW/NpzW7Cum97LP00X4XbfjOTRsPFtGn31+goooGarrjpUUf5Hj5PKwOd0kIG0R4qaj0+pF5q/d7iYLIWjUDrz47CuPsg2BW9TAZJIziH2nmhFisWZiI5tttNHPFPu/Fyzfer8n9MBsPyugBAFisU1a+Zpu/pSVt/VHf/uMXg+7SG9TS2i7g5zEd+PliYGlmjt/+wuby/o4ZswHEMpYwT/g/iLgLIgEMZAYp5qih/WzTZhksUQlqxOB4yOYoHQLBgL+1ydfaUNXZ2lDRWv2bC6AWAHcYvqKefb4+/5pYLgPQGBMT0UM/xsJIjK/ntLb1XL09+ClM9i/zfjVLWKBgfAAAAABJRU5ErkJggg=="></a><a href="#" id="options" class="banner-right">Options<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAD4UlEQVR4XpWTbWxTVRzGn9vhWlnZG1NYlwFLMGCUYfEt2dqwuDBfljGCUZkjgCgZyBeWBQ1ki1TmuvkFkw3JNAw1BhwmOslmtCwZmtDooCs6MCM4m6bQjtEVUtrStds9/s9J7/1wa5f4JE/+Pb25vzzPPedI0OgDEoAjEML75DGbzTaM/ykd0nVk/7v7cPjwITQ0bOsCcL6lpaUWgISFJXHeQmDT8U9PgMkySkwmDofRaBwEwDLBn9nzdfGHJ87JNL/SgiX6Ak+BRLUDHG7v7MJs/AHKysq0qbRQ/p6/bW8dTHlYTuthBSy1trbaALgJflSBWywWSFJaIRnpcl/6rBEulwtvVeZUm1caqkFaRH4oKyurbd/ePdBlZR8E0FpeXo61a9eAMZngEhKz0d95I2pzJT0tMDk5CZ/Ph49+jIJkUqv19vaO12+ue3Lx4oeRTCQIyIQV5eYXoKPDLl7ibVQo4HYefx0V+88iJfPlz7dfUcGUpthgMPz1Uk11/uNPrOMp1b0K37sLAc/LR4e9U8CH/I8t49DR3jfnnms6zVtvIuB/H0leta+v7zJNpnhoaCgxOxtnwekpdud2gMViUXbqVB+jtCwej4spkqeLomUQbwHASu7nZzo0E8TVGzfx8YAX3x+tRVXzgFpdA1DqqsrYhMxODoyKhB6PhzW0fcvOnDnN+DMNULPIcOiDt3x+ZV1UUooLx7ZgV6cDW8wGvLF5E9rb25UNnQYwr7nSmaGv1axB+4GXcWD786C1qP/qs3koLcrBVMDP24Dkp7kOGukWgu6ot0COBLEkPx/V5lwBnxj7FVarFQZ9Nmbu3Fbgbr75GnA69J2t67F760Y4fj6PX1zXAd0izM/NqWeVqmPpI8v4scwI12mhh962oLG2Amd/GMalax5UULqJib+RTMTBFQ6Hg4lE4mkOLyx6FCQVrtfrVbh6NVe9YmdfDv7GQvdjzNbdz3a9d4yd/OlPdvCT71hjcxfjz1fXNK8GkEM2NjU1VRKEybLMbvq8bOfOHeI3/09NTEndzbRB9VXr0X/uAjw+P6wvVIukfu8NXLwuIzk9Zo4FvbkACslLx8fHk+RantxEJ6anp4e3gZD4eCmtXFWKeZlh+pYnDRr5x1EVnBhJpoIU8Ol0OucABCKRyLbu7u5vQqEQKPFoMpm0A5BU8PCIEzNhMza+WIc/rqlQxLwjlQQNavZEVu6Aw+FwkVcAiJLjZLHLAly4vHjD4EX/GEhu8oNYRED1umiVXFByD4ACllLmYqm1TJ4XQGHxm6k3b8PuL8yhqQCHCxmXZK+42t8ypbn3UvpUn8spM+5/AT4U+4f4kq1OAAAAAElFTkSuQmCC"></a></div><div id="wrapper"><div id="operations" class="split split-horizontal no-select"><div class="title no-select">Operations</div><input type="search" class="form-control" id="search" placeholder="Search..." autocomplete="off"><ul class="op_list" id="search-results"></ul><div class="panel-group no-select" id="categories"></div></div><div id="recipe" class="split split-horizontal no-select"><div class="title no-select">Recipe</div><ul id="rec_list" class="no-select"></ul><div id="controls" class="no-select"><div id="operational-controls"><div id="bake-group"><button type="button" class="btn btn-success btn-lg" id="bake"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAGLklEQVR4Xq1XXWxUxxX+7t2769312muE7UCMowSXQDBxHmpo5VQqimQjRaiKlPBQiahKFaG8hCrICc4LT0lDhR8ixXnCElFaAQ9RUWLIgsHgKqCkpBY/TYrruja73nXtrL3e3/v7M5kzMtfRZlcBup/0aWbunXPON+foXp2RGGMgSJKEchw7diza1dV1QpblbgDtq/sq7iU/qxPYjnMLwLRt22f37t37MQC32n4FlSGPjIy8EolEhjs6OsBHBIJBWKYJ07Q4TVi2LdayoiDgDyAQUDgDkCUff64/YxjGM4VC4cXLly+fOHToUOjmzZt6xUCojGAoFBru6elB26ZNCPLgtmWBnwiO48B1XTicNDIiE3NBn0/mghvA7eHz+0FIJpP1qIjqGQiRMzoRnZTmXoq9MqxRU0vImxZ0XYdu6HytolDIT01P/3d8YGBgGID7oAJ8PwwmyzI/mY+EiCzkclkUcjkezBDrcDgsytTa2oKWllZMTf0be/bseRVAmjPDWXpQASKoZVli5LXEwuIictkVmIaJaNM6NESjaICEMA8cqqtDXbAOoWCQKIRyJDkXOI2HyYAzMTHxRwa8KUHyMwAdHZvRsbkDsuKHpmlQOTVVg8QFyjw7PsUvSKBx9dQaPDyYAO3w4cMnAHzO2XDt7zdiyYUMEqkluMwFwCCJ8pR/lhKEIE4PDylA55xfrV/Lmf5d2NbVwmvdhECoCYq/AbISAaR6JGZmcHc2Adex4GcmbDMPx2H/twCXU12lEqiPQjNCsJiMgOVAknUsLi4gHp9HV/dTeGH/87BtF6f/fAFNIQZeDABp3A/uKLine truncated
|
||||
* CyberChef - The Cyber Swiss Army Knife
|
||||
*
|
||||
* @copyright Crown Copyright 2016
|
||||
@@ -361,4 +361,4 @@ c+="Total addresses in range: "+(parseInt(j.join(""),2)+1)+"\n\n"),c},_gen_ipv6_
|
||||
run:FlowControl.run_fork,input_type:"string",output_type:"string",flow_control:!0,args:[{name:"Split delimiter",type:"binary_short_string",value:FlowControl.FORK_DELIM},{name:"Merge delimiter",type:"binary_short_string",value:FlowControl.MERGE_DELIM}]},Merge:{description:"Consolidate all branches back into a single trunk. The opposite of Fork.",run:FlowControl.run_merge,input_type:"string",output_type:"string",flow_control:!0,args:[]},Jump:{description:"Jump forwards or backwards over the specified number of operations.",run:FlowControl.run_jump,input_type:"string",output_type:"string",flow_control:!0,args:[{name:"Number of operations to jump over",type:"number",value:FlowControl.JUMP_NUM},{name:"Maximum jumps (if jumping backwards)",type:"number",value:FlowControl.MAX_JUMPS}]},"Conditional Jump":{description:"Conditionally jump forwards or backwards over the specified number of operations based on whether the data matches the specified regular expression.",run:FlowControl.run_cond_jump,input_type:"string",output_type:"string",flow_control:!0,args:[{name:"Match (regex)",type:"string",value:""},{name:"Number of operations to jump over if match found",type:"number",value:FlowControl.JUMP_NUM},{name:"Maximum jumps (if jumping backwards)",type:"number",value:FlowControl.MAX_JUMPS}]},Return:{description:"End execution of operations at this point in the recipe.",run:FlowControl.run_return,input_type:"string",output_type:"string",flow_control:!0,args:[]},"From Base64":{description:"Base64 is a notation for encoding arbitrary byte data using a restricted set of symbols that can be conveniently used by humans and processed by computers.<br><br>This operation decodes data from an ASCII Base64 string back into its raw format.<br><br>e.g. <code>aGVsbG8=</code> becomes <code>hello</code>",run:Base64.run_from,highlight:Base64.highlight_from,highlight_reverse:Base64.highlight_to,input_type:"string",output_type:"byte_array",args:[{name:"Alphabet",type:"editable_option",value:Base64.ALPHABET_OPTIONS},{name:"Remove non‑alphabet chars",type:"boolean",value:Base64.REMOVE_NON_ALPH_CHARS}]},"To Base64":{description:"Base64 is a notation for encoding arbitrary byte data using a restricted set of symbols that can be conveniently used by humans and processed by computers.<br><br>This operation encodes data in an ASCII Base64 string.<br><br>e.g. <code>hello</code> becomes <code>aGVsbG8=</code>",run:Base64.run_to,highlight:Base64.highlight_to,highlight_reverse:Base64.highlight_from,input_type:"byte_array",output_type:"string",args:[{name:"Alphabet",type:"editable_option",value:Base64.ALPHABET_OPTIONS}]},"From Base32":{description:"Base32 is a notation for encoding arbitrary byte data using a restricted set of symbols that can be conveniently used by humans and processed by computers. It uses a smaller set of characters than Base64, usually the uppercase alphabet and the numbers 2 to 7.",run:Base64.run_from_32,input_type:"string",output_type:"byte_array",args:[{name:"Alphabet",type:"binary_string",value:Base64.BASE32_ALPHABET},{name:"Remove non‑alphabet chars",type:"boolean",value:Base64.REMOVE_NON_ALPH_CHARS}]},"To Base32":{description:"Base32 is a notation for encoding arbitrary byte data using a restricted set of symbols that can be conveniently used by humans and processed by computers. It uses a smaller set of characters than Base64, usually the uppercase alphabet and the numbers 2 to 7.",run:Base64.run_to_32,input_type:"byte_array",output_type:"string",args:[{name:"Alphabet",type:"binary_string",value:Base64.BASE32_ALPHABET}]},"Show Base64 offsets":{description:"When a string is within a block of data and the whole block is Base64'd, the string itself could be represented in Base64 in three distinct ways depending on its offset within the block.<br><br>This operation shows all possible offsets for a given string so that each possible encoding can be considered.",run:Base64.run_offsets,input_type:"byte_array",output_type:"html",args:[{name:"Alphabet",type:"binary_string",value:Base64.ALPHABET},{name:"Show variable chars and padding",type:"boolean",value:Base64.OFFSETS_SHOW_VARIABLE}]},XOR:{description:"XOR the input with the given key.<br>e.g. <code>fe023da5</code><br><br><strong>Options</strong><br><u>Null preserving:</u> If the current byte is 0x00 or the same as the key, skip it.<br><br><u>Differential:</u> Set the key to the value of the previously decoded byte.",run:BitwiseOp.run_xor,highlight:!0,highlight_reverse:!0,input_type:"byte_array",output_type:"byte_array",args:[{name:"Key",type:"toggle_string",value:"",toggle_values:BitwiseOp.KEY_FORMAT},{name:"Null preserving",type:"boolean",value:BitwiseOp.XOR_PRESERVE_NULLS},{name:"Differential",type:"boolean",value:BitwiseOp.XOR_DIFFERENTIAL}]},"XOR Brute Force":{description:"Enumerate all possible XOR solutions. Current maximum key length is 2 due to browser performance.<br><br>Optionally enter a regex string that you expect to find in the plaintext to filter resuLine truncated
|
||||
args:[{name:"Start",type:"number",value:Tidy.DROP_START},{name:"Length",type:"number",value:Tidy.DROP_LENGTH},{name:"Apply to each line",type:"boolean",value:Tidy.APPLY_TO_EACH_LINE}]},"Take bytes":{description:"Takes a slice of the specified number of bytes from the data.",run:Tidy.run_take_bytes,input_type:"byte_array",output_type:"byte_array",args:[{name:"Start",type:"number",value:Tidy.TAKE_START},{name:"Length",type:"number",value:Tidy.TAKE_LENGTH},{name:"Apply to each line",type:"boolean",value:Tidy.APPLY_TO_EACH_LINE}]},"Pad lines":{description:"Add the specified number of the specified character to the beginning or end of each line",run:Tidy.run_pad,input_type:"string",output_type:"string",args:[{name:"Position",type:"option",value:Tidy.PAD_POSITION},{name:"Length",type:"number",value:Tidy.PAD_LENGTH},{name:"Character",type:"binary_short_string",value:Tidy.PAD_CHAR}]},Reverse:{description:"Reverses the input string.",run:SeqUtils.run_reverse,input_type:"byte_array",output_type:"byte_array",args:[{name:"By",type:"option",value:SeqUtils.REVERSE_BY}]},Sort:{description:"Alphabetically sorts strings separated by the specified delimiter.<br><br>The IP address option supports IPv4 only.",run:SeqUtils.run_sort,input_type:"string",output_type:"string",args:[{name:"Delimiter",type:"option",value:SeqUtils.DELIMITER_OPTIONS},{name:"Reverse",type:"boolean",value:SeqUtils.SORT_REVERSE},{name:"Order",type:"option",value:SeqUtils.SORT_ORDER}]},Unique:{description:"Removes duplicate strings from the input.",run:SeqUtils.run_unique,input_type:"string",output_type:"string",args:[{name:"Delimiter",type:"option",value:SeqUtils.DELIMITER_OPTIONS}]},"Count occurrences":{description:"Counts the number of times the provided string occurs in the input.",run:SeqUtils.run_count,input_type:"string",output_type:"number",args:[{name:"Search string",type:"toggle_string",value:"",toggle_values:SeqUtils.SEARCH_TYPE}]},"Add line numbers":{description:"Adds line numbers to the output.",run:SeqUtils.run_add_line_numbers,input_type:"string",output_type:"string",args:[]},"Remove line numbers":{description:"Removes line numbers from the output if they can be trivially detected.",run:SeqUtils.run_remove_line_numbers,input_type:"string",output_type:"string",args:[]},"Find / Replace":{description:"Replaces all occurrences of the first string with the second.<br><br>The three match options are only relevant to regex search strings.",run:StrUtils.run_find_replace,manual_bake:!0,input_type:"string",output_type:"string",args:[{name:"Find",type:"toggle_string",value:"",toggle_values:StrUtils.SEARCH_TYPE},{name:"Replace",type:"binary_string",value:""},{name:"Global match",type:"boolean",value:StrUtils.FIND_REPLACE_GLOBAL},{name:"Case insensitive",type:"boolean",value:StrUtils.FIND_REPLACE_CASE},{name:"Multiline matching",type:"boolean",value:StrUtils.FIND_REPLACE_MULTILINE}]},"To Upper case":{description:"Converts the input string to upper case, optionally limiting scope to only the first character in each word, sentence or paragraph.",run:StrUtils.run_upper,highlight:!0,highlight_reverse:!0,input_type:"string",output_type:"string",args:[{name:"Scope",type:"option",value:StrUtils.CASE_SCOPE}]},"To Lower case":{description:"Converts every character in the input to lower case.",run:StrUtils.run_lower,highlight:!0,highlight_reverse:!0,input_type:"string",output_type:"string",args:[]},Split:{description:"Splits a string into sections around a given delimiter.",run:StrUtils.run_split,input_type:"string",output_type:"string",args:[{name:"Split delimiter",type:"binary_short_string",value:StrUtils.SPLIT_DELIM},{name:"Join delimiter",type:"option",value:StrUtils.DELIMITER_OPTIONS}]},Strings:{description:"Extracts all strings from the input.",run:Extract.run_strings,input_type:"string",output_type:"string",args:[{name:"Minimum length",type:"number",value:Extract.MIN_STRING_LEN},{name:"Display total",type:"boolean",value:Extract.DISPLAY_TOTAL}]},"Extract IP addresses":{description:"Extracts all IPv4 and IPv6 addresses.<br><br>Warning: Given a string <code>710.65.0.456</code>, this will match <code>10.65.0.45</code> so always check the original input!",run:Extract.run_ip,input_type:"string",output_type:"string",args:[{name:"IPv4",type:"boolean",value:Extract.INCLUDE_IPV4},{name:"IPv6",type:"boolean",value:Extract.INCLUDE_IPV6},{name:"Remove local IPv4 addresses",type:"boolean",value:Extract.REMOVE_LOCAL},{name:"Display total",type:"boolean",value:Extract.DISPLAY_TOTAL}]},"Extract email addresses":{description:"Extracts all email addresses from the input.",run:Extract.run_email,input_type:"string",output_type:"string",args:[{name:"Display total",type:"boolean",value:Extract.DISPLAY_TOTAL}]},"Extract MAC addresses":{description:"Extracts all Media Access Control (MAC) addresses from the input.",run:Extract.run_mac,input_type:"string",output_type:"string",args:[{name:"Display total",type:"boolean",value:Extract.DISPLAY_TOTAL}]},"Extract URLs":{description:"ExtLine truncated
|
||||
},ControlsWaiter.prototype.sli_check_change=function(){this.initialise_save_link()},ControlsWaiter.prototype.load_click=function(){this.populate_load_recipes_list(),$("#load-modal").modal()},ControlsWaiter.prototype.save_button_click=function(){var a=document.getElementById("save-name").value,b=document.getElementById("save-text").value;if(!a)return void this.app.alert("Please enter a recipe name","danger",2e3);var c=localStorage.saved_recipes?JSON.parse(localStorage.saved_recipes):[],d=localStorage.recipe_id||0;c.push({id:++d,name:a,recipe:b}),localStorage.saved_recipes=JSON.stringify(c),localStorage.recipe_id=d,this.app.alert('Recipe saved as "'+a+'".',"success",2e3)},ControlsWaiter.prototype.populate_load_recipes_list=function(){for(var a=document.getElementById("load-name"),b=a.options.length;b--;)a.remove(b);var c=localStorage.saved_recipes?JSON.parse(localStorage.saved_recipes):[];for(b=0;b<c.length;b++){var d=document.createElement("option");d.value=c[b].id,d.innerHTML=c[b].name,a.appendChild(d)}document.getElementById("load-text").value=c.length?c[0].recipe:""},ControlsWaiter.prototype.load_delete_click=function(){var a=document.getElementById("load-name").value,b=localStorage.saved_recipes?JSON.parse(localStorage.saved_recipes):[];b=b.filter(function(b){return b.id!=a}),localStorage.saved_recipes=JSON.stringify(b),this.populate_load_recipes_list()},ControlsWaiter.prototype.load_name_change=function(a){var b=a.target,c=localStorage.saved_recipes?JSON.parse(localStorage.saved_recipes):[],d=parseInt(b.value,10),e=c.filter(function(a){return a.id==d})[0];document.getElementById("load-text").value=e.recipe},ControlsWaiter.prototype.load_button_click=function(){try{var a=JSON.parse(document.getElementById("load-text").value);this.app.set_recipe_config(a),$("#rec_list [data-toggle=popover]").popover()}catch(a){this.app.alert("Invalid recipe","danger",2e3)}};var HTMLApp=function(a,b,c,d){this.categories=a,this.operations=b,this.dfavourites=c,this.doptions=d,this.options=Utils.extend({},d),this.chef=new Chef,this.manager=new Manager(this),this.auto_bake_=!1,this.progress=0,this.ing_id=0,window.chef=this.chef};HTMLApp.prototype.setup=function(){document.dispatchEvent(this.manager.appstart),this.initialise_splitter(),this.load_local_storage(),this.populate_operations_list(),this.manager.setup(),this.reset_layout(),this.set_compile_message(),this.load_URI_params()},HTMLApp.prototype.handle_error=function(a){console.error(a);var b=a.display_str||a.toString();this.alert(b,"danger",this.options.error_timeout,!this.options.show_errors)},HTMLApp.prototype.bake=function(a){var b;try{b=this.chef.bake(this.get_input(),this.get_recipe_config(),this.options,this.progress,a)}catch(a){this.handle_error(a)}finally{if(!b)return;b.error&&this.handle_error(b.error),this.options=b.options,this.dish_str="html"==b.type?Utils.strip_html_tags(b.result,!0):b.result,this.progress=b.progress,this.manager.recipe.update_breakpoint_indicator(b.progress),this.manager.output.set(b.result,b.type,b.duration),b.duration>this.options.auto_bake_threshold&&this.auto_bake_&&(this.manager.controls.set_auto_bake(!1),this.alert("Baking took longer than "+this.options.auto_bake_threshold+"ms, Auto Bake has been disabled.","warning",5e3))}},HTMLApp.prototype.auto_bake=function(){this.auto_bake_&&this.bake()},HTMLApp.prototype.silent_bake=function(){var a=(new Date).getTime(),b=this.get_recipe_config();return this.auto_bake_&&this.chef.silent_bake(b),(new Date).getTime()-a},HTMLApp.prototype.get_input=function(){var a=this.manager.input.get();return sessionStorage.setItem("input_length",a.length),sessionStorage.setItem("input",a),a},HTMLApp.prototype.set_input=function(a){sessionStorage.setItem("input_length",a.length),sessionStorage.setItem("input",a),this.manager.input.set(a)},HTMLApp.prototype.populate_operations_list=function(){document.body.appendChild(document.getElementById("edit-favourites"));for(var a="",b=0;b<this.categories.length;b++){for(var c=this.categories[b],d=0===b,e=new HTMLCategory(c.name,d),f=0;f<c.ops.length;f++){var g=c.ops[f],h=new HTMLOperation(g,this.operations[g],this,this.manager);e.add_operation(h)}a+=e.to_html()}document.getElementById("categories").innerHTML=a;var i=document.querySelectorAll("#categories .op_list");for(b=0;b<i.length;b++)i[b].dispatchEvent(this.manager.oplistcreate);document.querySelector("#categories a").appendChild(document.getElementById("edit-favourites"))},HTMLApp.prototype.initialise_splitter=function(){Split(["#operations","#recipe","#IO"],{sizes:[20,30,50],minSize:[240,325,500],gutterSize:4,onDrag:this.manager.controls.adjust_width.bind(this.manager.controls)}),Split(["#input","#output"],{direction:"vertical",gutterSize:4}),this.reset_layout()},HTMLApp.prototype.load_local_storage=function(){var a;void 0!==localStorage.options&&(a=JSON.parse(localStorage.options)),this.manager.options.load(a),this.load_favourites()},HTMLApp.prototype.load_favourites=function(){var a=localStorage.favourites&&locaLine truncated
|
||||
this.add_dynamic_listener(".op_list .op-icon","mouseleave",this.ops.op_icon_mouseleave,this.ops),this.add_dynamic_listener(".op_list","oplistcreate",this.ops.op_list_create,this.ops),this.add_dynamic_listener("li.operation","operationadd",this.recipe.op_add.bind(this.recipe)),this.add_dynamic_listener(".arg","keyup",this.recipe.ing_change,this.recipe),this.add_dynamic_listener(".arg","change",this.recipe.ing_change,this.recipe),this.add_dynamic_listener(".disable-icon","click",this.recipe.disable_click,this.recipe),this.add_dynamic_listener(".breakpoint","click",this.recipe.breakpoint_click,this.recipe),this.add_dynamic_listener("#rec_list li.operation","dblclick",this.recipe.operation_dblclick,this.recipe),this.add_dynamic_listener("#rec_list li.operation > div","dblclick",this.recipe.operation_child_dblclick,this.recipe),this.add_dynamic_listener("#rec_list .input-group .dropdown-menu a","click",this.recipe.dropdown_toggle_click,this.recipe),this.add_dynamic_listener("#rec_list","operationremove",this.recipe.op_remove.bind(this.recipe)),this.add_multi_event_listener("#input-text","keyup paste",this.input.input_change,this.input),document.getElementById("reset-layout").addEventListener("click",this.app.reset_layout.bind(this.app)),document.getElementById("clr-io").addEventListener("click",this.input.clear_io_click.bind(this.input)),document.getElementById("input-text").addEventListener("dragover",this.input.input_dragover.bind(this.input)),document.getElementById("input-text").addEventListener("dragleave",this.input.input_dragleave.bind(this.input)),document.getElementById("input-text").addEventListener("drop",this.input.input_drop.bind(this.input)),document.getElementById("input-text").addEventListener("scroll",this.highlighter.input_scroll.bind(this.highlighter)),document.getElementById("input-text").addEventListener("mouseup",this.highlighter.input_mouseup.bind(this.highlighter)),document.getElementById("input-text").addEventListener("mousemove",this.highlighter.input_mousemove.bind(this.highlighter)),this.add_multi_event_listener("#input-text","mousedown dblclick select",this.highlighter.input_mousedown,this.highlighter),document.getElementById("save-to-file").addEventListener("click",this.output.save_click.bind(this.output)),document.getElementById("switch").addEventListener("click",this.output.switch_click.bind(this.output)),document.getElementById("undo-switch").addEventListener("click",this.output.undo_switch_click.bind(this.output)),document.getElementById("output-text").addEventListener("scroll",this.highlighter.output_scroll.bind(this.highlighter)),document.getElementById("output-text").addEventListener("mouseup",this.highlighter.output_mouseup.bind(this.highlighter)),document.getElementById("output-text").addEventListener("mousemove",this.highlighter.output_mousemove.bind(this.highlighter)),document.getElementById("output-html").addEventListener("mouseup",this.highlighter.output_html_mouseup.bind(this.highlighter)),document.getElementById("output-html").addEventListener("mousemove",this.highlighter.output_html_mousemove.bind(this.highlighter)),this.add_multi_event_listener("#output-text","mousedown dblclick select",this.highlighter.output_mousedown,this.highlighter),this.add_multi_event_listener("#output-html","mousedown dblclick select",this.highlighter.output_html_mousedown,this.highlighter),document.getElementById("options").addEventListener("click",this.options.options_click.bind(this.options)),document.getElementById("reset-options").addEventListener("click",this.options.reset_options_click.bind(this.options)),$(".option-item input:checkbox").on("switchChange.bootstrapSwitch",this.options.switch_change.bind(this.options)),$(".option-item input:checkbox").on("switchChange.bootstrapSwitch",this.options.set_word_wrap.bind(this.options)),this.add_dynamic_listener(".option-item input[type=number]","keyup",this.options.number_change,this.options),this.add_dynamic_listener(".option-item input[type=number]","change",this.options.number_change,this.options),this.add_dynamic_listener(".option-item select","change",this.options.select_change,this.options),document.getElementById("alert-close").addEventListener("click",this.app.alert_close_click.bind(this.app))},Manager.prototype.add_listeners=function(a,b,c,d){d=d||this,[].forEach.call(document.querySelectorAll(a),function(a){a.addEventListener(b,c.bind(d))})},Manager.prototype.add_multi_event_listener=function(a,b,c,d){for(var e=b.split(" "),f=0;f<e.length;f++)document.querySelector(a).addEventListener(e[f],c.bind(d))},Manager.prototype.add_multi_event_listeners=function(a,b,c,d){for(var e=b.split(" "),f=0;f<e.length;f++)this.add_listeners(a,e[f],c,d)},Manager.prototype.add_dynamic_listener=function(a,b,c,d){var e={selector:a,callback:c.bind(d||this)};this.dynamic_handlers.hasOwnProperty(b)?this.dynamic_handlers[b].push(e):(this.dynamic_handlers[b]=[e],document.addEventListener(b,this.dynamic_listener_handler.bind(this)))},Manager.prototype.dynamicLine truncated
|
||||
this.add_dynamic_listener(".op_list .op-icon","mouseleave",this.ops.op_icon_mouseleave,this.ops),this.add_dynamic_listener(".op_list","oplistcreate",this.ops.op_list_create,this.ops),this.add_dynamic_listener("li.operation","operationadd",this.recipe.op_add.bind(this.recipe)),this.add_dynamic_listener(".arg","keyup",this.recipe.ing_change,this.recipe),this.add_dynamic_listener(".arg","change",this.recipe.ing_change,this.recipe),this.add_dynamic_listener(".disable-icon","click",this.recipe.disable_click,this.recipe),this.add_dynamic_listener(".breakpoint","click",this.recipe.breakpoint_click,this.recipe),this.add_dynamic_listener("#rec_list li.operation","dblclick",this.recipe.operation_dblclick,this.recipe),this.add_dynamic_listener("#rec_list li.operation > div","dblclick",this.recipe.operation_child_dblclick,this.recipe),this.add_dynamic_listener("#rec_list .input-group .dropdown-menu a","click",this.recipe.dropdown_toggle_click,this.recipe),this.add_dynamic_listener("#rec_list","operationremove",this.recipe.op_remove.bind(this.recipe)),this.add_multi_event_listener("#input-text","keyup paste",this.input.input_change,this.input),document.getElementById("reset-layout").addEventListener("click",this.app.reset_layout.bind(this.app)),document.getElementById("clr-io").addEventListener("click",this.input.clear_io_click.bind(this.input)),document.getElementById("input-text").addEventListener("dragover",this.input.input_dragover.bind(this.input)),document.getElementById("input-text").addEventListener("dragleave",this.input.input_dragleave.bind(this.input)),document.getElementById("input-text").addEventListener("drop",this.input.input_drop.bind(this.input)),document.getElementById("input-text").addEventListener("scroll",this.highlighter.input_scroll.bind(this.highlighter)),document.getElementById("input-text").addEventListener("mouseup",this.highlighter.input_mouseup.bind(this.highlighter)),document.getElementById("input-text").addEventListener("mousemove",this.highlighter.input_mousemove.bind(this.highlighter)),this.add_multi_event_listener("#input-text","mousedown dblclick select",this.highlighter.input_mousedown,this.highlighter),document.getElementById("save-to-file").addEventListener("click",this.output.save_click.bind(this.output)),document.getElementById("switch").addEventListener("click",this.output.switch_click.bind(this.output)),document.getElementById("undo-switch").addEventListener("click",this.output.undo_switch_click.bind(this.output)),document.getElementById("output-text").addEventListener("scroll",this.highlighter.output_scroll.bind(this.highlighter)),document.getElementById("output-text").addEventListener("mouseup",this.highlighter.output_mouseup.bind(this.highlighter)),document.getElementById("output-text").addEventListener("mousemove",this.highlighter.output_mousemove.bind(this.highlighter)),document.getElementById("output-html").addEventListener("mouseup",this.highlighter.output_html_mouseup.bind(this.highlighter)),document.getElementById("output-html").addEventListener("mousemove",this.highlighter.output_html_mousemove.bind(this.highlighter)),this.add_multi_event_listener("#output-text","mousedown dblclick select",this.highlighter.output_mousedown,this.highlighter),this.add_multi_event_listener("#output-html","mousedown dblclick select",this.highlighter.output_html_mousedown,this.highlighter),document.getElementById("options").addEventListener("click",this.options.options_click.bind(this.options)),document.getElementById("reset-options").addEventListener("click",this.options.reset_options_click.bind(this.options)),$(".option-item input:checkbox").on("switchChange.bootstrapSwitch",this.options.switch_change.bind(this.options)),$(".option-item input:checkbox").on("switchChange.bootstrapSwitch",this.options.set_word_wrap.bind(this.options)),this.add_dynamic_listener(".option-item input[type=number]","keyup",this.options.number_change,this.options),this.add_dynamic_listener(".option-item input[type=number]","change",this.options.number_change,this.options),this.add_dynamic_listener(".option-item select","change",this.options.select_change,this.options),document.getElementById("alert-close").addEventListener("click",this.app.alert_close_click.bind(this.app))},Manager.prototype.add_listeners=function(a,b,c,d){d=d||this,[].forEach.call(document.querySelectorAll(a),function(a){a.addEventListener(b,c.bind(d))})},Manager.prototype.add_multi_event_listener=function(a,b,c,d){for(var e=b.split(" "),f=0;f<e.length;f++)document.querySelector(a).addEventListener(e[f],c.bind(d))},Manager.prototype.add_multi_event_listeners=function(a,b,c,d){for(var e=b.split(" "),f=0;f<e.length;f++)this.add_listeners(a,e[f],c,d)},Manager.prototype.add_dynamic_listener=function(a,b,c,d){var e={selector:a,callback:c.bind(d||this)};this.dynamic_handlers.hasOwnProperty(b)?this.dynamic_handlers[b].push(e):(this.dynamic_handlers[b]=[e],document.addEventListener(b,this.dynamic_listener_handler.bind(this)))},Manager.prototype.dynamicLine truncated
|
||||
@@ -18,4 +18,4 @@
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>CyberChef</title><meta name="copyright" content="Crown Copyright 2016"><meta name="description" content="The Cyber Swiss Army Knife"><meta name="keywords" content="base64, hex, decode, encode, encrypt, decrypt, compress, decompress, regex, regular expressions, hash, crypt, hexadecimal, user agent, url, certificate, x.509, parser, JSON, gzip, md5, sha1, aes, des, blowfish, xor"><link rel="icon" type="image/png" href="images/favicon.ico"><link href="styles.css" rel="stylesheet"></head><body><span id="edit-favourites" class="btn btn-default btn-sm"><img src="images/favourite-16x16.png"> Edit</span><div id="alert" class="alert alert-danger"><button type="button" class="close" id="alert-close">×</button> <span id="alert-content"></span></div><div id="content-wrapper"><div id="banner" class="green"><a href="cyberchef.htm" style="float:left;margin-left:10px;margin-right:80px">Download CyberChef<img src="images/download-24x24.png"></a><span id="notice"><script type="text/javascript">navigator.userAgent&&navigator.userAgent.match(/MSIE \d\d?\./)&&(document.write("Internet Explorer is not supported, please use Firefox or Chrome instead"),alert("Internet Explorer is not supported, please use Firefox or Chrome instead"))</script><noscript>JavaScript is not enabled. Good luck.</noscript></span><a href="#" id="support" class="banner-right" data-toggle="modal" data-target="#support-modal">About / Support<img src="images/help-22x22.png"></a><a href="#" id="options" class="banner-right">Options<img src="images/settings-22x22.png"></a></div><div id="wrapper"><div id="operations" class="split split-horizontal no-select"><div class="title no-select">Operations</div><input type="search" class="form-control" id="search" placeholder="Search..." autocomplete="off"><ul class="op_list" id="search-results"></ul><div class="panel-group no-select" id="categories"></div></div><div id="recipe" class="split split-horizontal no-select"><div class="title no-select">Recipe</div><ul id="rec_list" class="no-select"></ul><div id="controls" class="no-select"><div id="operational-controls"><div id="bake-group"><button type="button" class="btn btn-success btn-lg" id="bake"><img src="images/cook_male-32x32.png"> Bake!</button><label class="btn btn-success btn-lg" id="auto-bake-label"><input type="checkbox" checked="checked" id="auto-bake"><div>Auto Bake</div></label></div><div class="btn-group" style="padding-top:10px"><button type="button" class="btn btn-default" id="step"><img src="images/step-16x16.png"> Step through</button> <button type="button" class="btn btn-default" id="clr-breaks"><img src="images/erase-16x16.png"> Clear breakpoints</button></div></div><div class="btn-group-vertical" id="extra-controls"><button type="button" class="btn btn-default" id="save"><img src="images/save-16x16.png"> Save recipe</button> <button type="button" class="btn btn-default" id="load"><img src="images/open_yellow-16x16.png"> Load recipe</button> <button type="button" class="btn btn-default" id="clr-recipe"><img src="images/clean-16x16.png"> Clear recipe</button></div></div></div><div class="split split-horizontal" id="IO"><div id="input" class="split no-select"><div class="title no-select">Input<div class="btn-group io-btn-group"><button type="button" class="btn btn-default btn-sm" id="clr-io"><img src="images/recycle-16x16.png"> Clear I/O</button> <button type="button" class="btn btn-default btn-sm" id="reset-layout"><img src="images/layout-16x16.png"> Reset layout</button></div><div class="io-info" id="input-info"></div><div class="io-info" id="input-selection-info"></div></div><div class="textarea-wrapper no-select"><div id="input-highlighter" class="no-select"></div><textarea id="input-text"></textarea></div></div><div id="output" class="split"><div class="title no-select">Output<div class="btn-group io-btn-group"><button type="button" class="btn btn-default btn-sm" id="save-to-file"><img src="images/save_as-16x16.png"> Save to file</button> <button type="button" class="btn btn-default btn-sm" id="switch"><img src="images/switch-16x16.png"> Move output to input</button> <button type="button" class="btn btn-default btn-sm" id="undo-switch" disabled="disabled"><img src="images/undo-16x16.png"> Undo</button></div><div class="io-info" id="output-info"></div><div class="io-info" id="output-selection-info"></div></div><div class="textarea-wrapper"><div id="output-highlighter" class="no-select"></div><div id="output-html"></div><textarea id="output-text" readonly="readonly"></textarea></div></div></div></div></div><div class="modal" id="save-modal" tabindex="-1" role="dialog"><div class="modal-dialog modal-lg"><div class="modal-content"><div class="modal-header"><img class="pull-right" src="images/save-22x22.png"><h4 class="modal-title">Save recipe</h4></div><div class="modal-body"><div class="form-group"><label for="save-text">Save your recipe to localLine truncated
|
||||
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>CyberChef</title><meta name="copyright" content="Crown Copyright 2016"><meta name="description" content="The Cyber Swiss Army Knife"><meta name="keywords" content="base64, hex, decode, encode, encrypt, decrypt, compress, decompress, regex, regular expressions, hash, crypt, hexadecimal, user agent, url, certificate, x.509, parser, JSON, gzip, md5, sha1, aes, des, blowfish, xor"><link rel="icon" type="image/png" href="images/favicon.ico"><link href="styles.css" rel="stylesheet"></head><body><span id="edit-favourites" class="btn btn-default btn-sm"><img src="images/favourite-16x16.png"> Edit</span><div id="alert" class="alert alert-danger"><button type="button" class="close" id="alert-close">×</button> <span id="alert-content"></span></div><div id="content-wrapper"><div id="banner" class="green"><a href="cyberchef.htm" style="float:left;margin-left:10px;margin-right:80px">Download CyberChef<img src="images/download-24x24.png"></a><span id="notice"><script type="text/javascript">navigator.userAgent&&navigator.userAgent.match(/MSIE \d\d?\./)&&(document.write("Internet Explorer is not supported, please use Firefox or Chrome instead"),alert("Internet Explorer is not supported, please use Firefox or Chrome instead"))</script><noscript>JavaScript is not enabled. Good luck.</noscript></span><a href="#" id="support" class="banner-right" data-toggle="modal" data-target="#support-modal">About / Support<img src="images/help-22x22.png"></a><a href="#" id="options" class="banner-right">Options<img src="images/settings-22x22.png"></a></div><div id="wrapper"><div id="operations" class="split split-horizontal no-select"><div class="title no-select">Operations</div><input type="search" class="form-control" id="search" placeholder="Search..." autocomplete="off"><ul class="op_list" id="search-results"></ul><div class="panel-group no-select" id="categories"></div></div><div id="recipe" class="split split-horizontal no-select"><div class="title no-select">Recipe</div><ul id="rec_list" class="no-select"></ul><div id="controls" class="no-select"><div id="operational-controls"><div id="bake-group"><button type="button" class="btn btn-success btn-lg" id="bake"><img src="images/cook_male-32x32.png"> Bake!</button><label class="btn btn-success btn-lg" id="auto-bake-label"><input type="checkbox" checked="checked" id="auto-bake"><div>Auto Bake</div></label></div><div class="btn-group" style="padding-top:10px"><button type="button" class="btn btn-default" id="step"><img src="images/step-16x16.png"> Step through</button> <button type="button" class="btn btn-default" id="clr-breaks"><img src="images/erase-16x16.png"> Clear breakpoints</button></div></div><div class="btn-group-vertical" id="extra-controls"><button type="button" class="btn btn-default" id="save"><img src="images/save-16x16.png"> Save recipe</button> <button type="button" class="btn btn-default" id="load"><img src="images/open_yellow-16x16.png"> Load recipe</button> <button type="button" class="btn btn-default" id="clr-recipe"><img src="images/clean-16x16.png"> Clear recipe</button></div></div></div><div class="split split-horizontal" id="IO"><div id="input" class="split no-select"><div class="title no-select">Input<div class="btn-group io-btn-group"><button type="button" class="btn btn-default btn-sm" id="clr-io"><img src="images/recycle-16x16.png"> Clear I/O</button> <button type="button" class="btn btn-default btn-sm" id="reset-layout"><img src="images/layout-16x16.png"> Reset layout</button></div><div class="io-info" id="input-info"></div><div class="io-info" id="input-selection-info"></div></div><div class="textarea-wrapper no-select"><div id="input-highlighter" class="no-select"></div><textarea id="input-text"></textarea></div></div><div id="output" class="split"><div class="title no-select">Output<div class="btn-group io-btn-group"><button type="button" class="btn btn-default btn-sm" id="save-to-file"><img src="images/save_as-16x16.png"> Save to file</button> <button type="button" class="btn btn-default btn-sm" id="switch"><img src="images/switch-16x16.png"> Move output to input</button> <button type="button" class="btn btn-default btn-sm" id="undo-switch" disabled="disabled"><img src="images/undo-16x16.png"> Undo</button></div><div class="io-info" id="output-info"></div><div class="io-info" id="output-selection-info"></div></div><div class="textarea-wrapper"><div id="output-highlighter" class="no-select"></div><div id="output-html"></div><textarea id="output-text" readonly="readonly"></textarea></div></div></div></div></div><div class="modal" id="save-modal" tabindex="-1" role="dialog"><div class="modal-dialog modal-lg"><div class="modal-content"><div class="modal-header"><img class="pull-right" src="images/save-22x22.png"><h4 class="modal-title">Save recipe</h4></div><div class="modal-body"><div class="form-group"><label for="save-text">Save your recipe to localLine truncated
|
||||
@@ -264,4 +264,4 @@ c+="Total addresses in range: "+(parseInt(j.join(""),2)+1)+"\n\n"),c},_gen_ipv6_
|
||||
run:FlowControl.run_fork,input_type:"string",output_type:"string",flow_control:!0,args:[{name:"Split delimiter",type:"binary_short_string",value:FlowControl.FORK_DELIM},{name:"Merge delimiter",type:"binary_short_string",value:FlowControl.MERGE_DELIM}]},Merge:{description:"Consolidate all branches back into a single trunk. The opposite of Fork.",run:FlowControl.run_merge,input_type:"string",output_type:"string",flow_control:!0,args:[]},Jump:{description:"Jump forwards or backwards over the specified number of operations.",run:FlowControl.run_jump,input_type:"string",output_type:"string",flow_control:!0,args:[{name:"Number of operations to jump over",type:"number",value:FlowControl.JUMP_NUM},{name:"Maximum jumps (if jumping backwards)",type:"number",value:FlowControl.MAX_JUMPS}]},"Conditional Jump":{description:"Conditionally jump forwards or backwards over the specified number of operations based on whether the data matches the specified regular expression.",run:FlowControl.run_cond_jump,input_type:"string",output_type:"string",flow_control:!0,args:[{name:"Match (regex)",type:"string",value:""},{name:"Number of operations to jump over if match found",type:"number",value:FlowControl.JUMP_NUM},{name:"Maximum jumps (if jumping backwards)",type:"number",value:FlowControl.MAX_JUMPS}]},Return:{description:"End execution of operations at this point in the recipe.",run:FlowControl.run_return,input_type:"string",output_type:"string",flow_control:!0,args:[]},"From Base64":{description:"Base64 is a notation for encoding arbitrary byte data using a restricted set of symbols that can be conveniently used by humans and processed by computers.<br><br>This operation decodes data from an ASCII Base64 string back into its raw format.<br><br>e.g. <code>aGVsbG8=</code> becomes <code>hello</code>",run:Base64.run_from,highlight:Base64.highlight_from,highlight_reverse:Base64.highlight_to,input_type:"string",output_type:"byte_array",args:[{name:"Alphabet",type:"editable_option",value:Base64.ALPHABET_OPTIONS},{name:"Remove non‑alphabet chars",type:"boolean",value:Base64.REMOVE_NON_ALPH_CHARS}]},"To Base64":{description:"Base64 is a notation for encoding arbitrary byte data using a restricted set of symbols that can be conveniently used by humans and processed by computers.<br><br>This operation encodes data in an ASCII Base64 string.<br><br>e.g. <code>hello</code> becomes <code>aGVsbG8=</code>",run:Base64.run_to,highlight:Base64.highlight_to,highlight_reverse:Base64.highlight_from,input_type:"byte_array",output_type:"string",args:[{name:"Alphabet",type:"editable_option",value:Base64.ALPHABET_OPTIONS}]},"From Base32":{description:"Base32 is a notation for encoding arbitrary byte data using a restricted set of symbols that can be conveniently used by humans and processed by computers. It uses a smaller set of characters than Base64, usually the uppercase alphabet and the numbers 2 to 7.",run:Base64.run_from_32,input_type:"string",output_type:"byte_array",args:[{name:"Alphabet",type:"binary_string",value:Base64.BASE32_ALPHABET},{name:"Remove non‑alphabet chars",type:"boolean",value:Base64.REMOVE_NON_ALPH_CHARS}]},"To Base32":{description:"Base32 is a notation for encoding arbitrary byte data using a restricted set of symbols that can be conveniently used by humans and processed by computers. It uses a smaller set of characters than Base64, usually the uppercase alphabet and the numbers 2 to 7.",run:Base64.run_to_32,input_type:"byte_array",output_type:"string",args:[{name:"Alphabet",type:"binary_string",value:Base64.BASE32_ALPHABET}]},"Show Base64 offsets":{description:"When a string is within a block of data and the whole block is Base64'd, the string itself could be represented in Base64 in three distinct ways depending on its offset within the block.<br><br>This operation shows all possible offsets for a given string so that each possible encoding can be considered.",run:Base64.run_offsets,input_type:"byte_array",output_type:"html",args:[{name:"Alphabet",type:"binary_string",value:Base64.ALPHABET},{name:"Show variable chars and padding",type:"boolean",value:Base64.OFFSETS_SHOW_VARIABLE}]},XOR:{description:"XOR the input with the given key.<br>e.g. <code>fe023da5</code><br><br><strong>Options</strong><br><u>Null preserving:</u> If the current byte is 0x00 or the same as the key, skip it.<br><br><u>Differential:</u> Set the key to the value of the previously decoded byte.",run:BitwiseOp.run_xor,highlight:!0,highlight_reverse:!0,input_type:"byte_array",output_type:"byte_array",args:[{name:"Key",type:"toggle_string",value:"",toggle_values:BitwiseOp.KEY_FORMAT},{name:"Null preserving",type:"boolean",value:BitwiseOp.XOR_PRESERVE_NULLS},{name:"Differential",type:"boolean",value:BitwiseOp.XOR_DIFFERENTIAL}]},"XOR Brute Force":{description:"Enumerate all possible XOR solutions. Current maximum key length is 2 due to browser performance.<br><br>Optionally enter a regex string that you expect to find in the plaintext to filter resuLine truncated
|
||||
args:[{name:"Start",type:"number",value:Tidy.DROP_START},{name:"Length",type:"number",value:Tidy.DROP_LENGTH},{name:"Apply to each line",type:"boolean",value:Tidy.APPLY_TO_EACH_LINE}]},"Take bytes":{description:"Takes a slice of the specified number of bytes from the data.",run:Tidy.run_take_bytes,input_type:"byte_array",output_type:"byte_array",args:[{name:"Start",type:"number",value:Tidy.TAKE_START},{name:"Length",type:"number",value:Tidy.TAKE_LENGTH},{name:"Apply to each line",type:"boolean",value:Tidy.APPLY_TO_EACH_LINE}]},"Pad lines":{description:"Add the specified number of the specified character to the beginning or end of each line",run:Tidy.run_pad,input_type:"string",output_type:"string",args:[{name:"Position",type:"option",value:Tidy.PAD_POSITION},{name:"Length",type:"number",value:Tidy.PAD_LENGTH},{name:"Character",type:"binary_short_string",value:Tidy.PAD_CHAR}]},Reverse:{description:"Reverses the input string.",run:SeqUtils.run_reverse,input_type:"byte_array",output_type:"byte_array",args:[{name:"By",type:"option",value:SeqUtils.REVERSE_BY}]},Sort:{description:"Alphabetically sorts strings separated by the specified delimiter.<br><br>The IP address option supports IPv4 only.",run:SeqUtils.run_sort,input_type:"string",output_type:"string",args:[{name:"Delimiter",type:"option",value:SeqUtils.DELIMITER_OPTIONS},{name:"Reverse",type:"boolean",value:SeqUtils.SORT_REVERSE},{name:"Order",type:"option",value:SeqUtils.SORT_ORDER}]},Unique:{description:"Removes duplicate strings from the input.",run:SeqUtils.run_unique,input_type:"string",output_type:"string",args:[{name:"Delimiter",type:"option",value:SeqUtils.DELIMITER_OPTIONS}]},"Count occurrences":{description:"Counts the number of times the provided string occurs in the input.",run:SeqUtils.run_count,input_type:"string",output_type:"number",args:[{name:"Search string",type:"toggle_string",value:"",toggle_values:SeqUtils.SEARCH_TYPE}]},"Add line numbers":{description:"Adds line numbers to the output.",run:SeqUtils.run_add_line_numbers,input_type:"string",output_type:"string",args:[]},"Remove line numbers":{description:"Removes line numbers from the output if they can be trivially detected.",run:SeqUtils.run_remove_line_numbers,input_type:"string",output_type:"string",args:[]},"Find / Replace":{description:"Replaces all occurrences of the first string with the second.<br><br>The three match options are only relevant to regex search strings.",run:StrUtils.run_find_replace,manual_bake:!0,input_type:"string",output_type:"string",args:[{name:"Find",type:"toggle_string",value:"",toggle_values:StrUtils.SEARCH_TYPE},{name:"Replace",type:"binary_string",value:""},{name:"Global match",type:"boolean",value:StrUtils.FIND_REPLACE_GLOBAL},{name:"Case insensitive",type:"boolean",value:StrUtils.FIND_REPLACE_CASE},{name:"Multiline matching",type:"boolean",value:StrUtils.FIND_REPLACE_MULTILINE}]},"To Upper case":{description:"Converts the input string to upper case, optionally limiting scope to only the first character in each word, sentence or paragraph.",run:StrUtils.run_upper,highlight:!0,highlight_reverse:!0,input_type:"string",output_type:"string",args:[{name:"Scope",type:"option",value:StrUtils.CASE_SCOPE}]},"To Lower case":{description:"Converts every character in the input to lower case.",run:StrUtils.run_lower,highlight:!0,highlight_reverse:!0,input_type:"string",output_type:"string",args:[]},Split:{description:"Splits a string into sections around a given delimiter.",run:StrUtils.run_split,input_type:"string",output_type:"string",args:[{name:"Split delimiter",type:"binary_short_string",value:StrUtils.SPLIT_DELIM},{name:"Join delimiter",type:"option",value:StrUtils.DELIMITER_OPTIONS}]},Strings:{description:"Extracts all strings from the input.",run:Extract.run_strings,input_type:"string",output_type:"string",args:[{name:"Minimum length",type:"number",value:Extract.MIN_STRING_LEN},{name:"Display total",type:"boolean",value:Extract.DISPLAY_TOTAL}]},"Extract IP addresses":{description:"Extracts all IPv4 and IPv6 addresses.<br><br>Warning: Given a string <code>710.65.0.456</code>, this will match <code>10.65.0.45</code> so always check the original input!",run:Extract.run_ip,input_type:"string",output_type:"string",args:[{name:"IPv4",type:"boolean",value:Extract.INCLUDE_IPV4},{name:"IPv6",type:"boolean",value:Extract.INCLUDE_IPV6},{name:"Remove local IPv4 addresses",type:"boolean",value:Extract.REMOVE_LOCAL},{name:"Display total",type:"boolean",value:Extract.DISPLAY_TOTAL}]},"Extract email addresses":{description:"Extracts all email addresses from the input.",run:Extract.run_email,input_type:"string",output_type:"string",args:[{name:"Display total",type:"boolean",value:Extract.DISPLAY_TOTAL}]},"Extract MAC addresses":{description:"Extracts all Media Access Control (MAC) addresses from the input.",run:Extract.run_mac,input_type:"string",output_type:"string",args:[{name:"Display total",type:"boolean",value:Extract.DISPLAY_TOTAL}]},"Extract URLs":{description:"ExtLine truncated
|
||||
},ControlsWaiter.prototype.sli_check_change=function(){this.initialise_save_link()},ControlsWaiter.prototype.load_click=function(){this.populate_load_recipes_list(),$("#load-modal").modal()},ControlsWaiter.prototype.save_button_click=function(){var a=document.getElementById("save-name").value,b=document.getElementById("save-text").value;if(!a)return void this.app.alert("Please enter a recipe name","danger",2e3);var c=localStorage.saved_recipes?JSON.parse(localStorage.saved_recipes):[],d=localStorage.recipe_id||0;c.push({id:++d,name:a,recipe:b}),localStorage.saved_recipes=JSON.stringify(c),localStorage.recipe_id=d,this.app.alert('Recipe saved as "'+a+'".',"success",2e3)},ControlsWaiter.prototype.populate_load_recipes_list=function(){for(var a=document.getElementById("load-name"),b=a.options.length;b--;)a.remove(b);var c=localStorage.saved_recipes?JSON.parse(localStorage.saved_recipes):[];for(b=0;b<c.length;b++){var d=document.createElement("option");d.value=c[b].id,d.innerHTML=c[b].name,a.appendChild(d)}document.getElementById("load-text").value=c.length?c[0].recipe:""},ControlsWaiter.prototype.load_delete_click=function(){var a=document.getElementById("load-name").value,b=localStorage.saved_recipes?JSON.parse(localStorage.saved_recipes):[];b=b.filter(function(b){return b.id!=a}),localStorage.saved_recipes=JSON.stringify(b),this.populate_load_recipes_list()},ControlsWaiter.prototype.load_name_change=function(a){var b=a.target,c=localStorage.saved_recipes?JSON.parse(localStorage.saved_recipes):[],d=parseInt(b.value,10),e=c.filter(function(a){return a.id==d})[0];document.getElementById("load-text").value=e.recipe},ControlsWaiter.prototype.load_button_click=function(){try{var a=JSON.parse(document.getElementById("load-text").value);this.app.set_recipe_config(a),$("#rec_list [data-toggle=popover]").popover()}catch(a){this.app.alert("Invalid recipe","danger",2e3)}};var HTMLApp=function(a,b,c,d){this.categories=a,this.operations=b,this.dfavourites=c,this.doptions=d,this.options=Utils.extend({},d),this.chef=new Chef,this.manager=new Manager(this),this.auto_bake_=!1,this.progress=0,this.ing_id=0,window.chef=this.chef};HTMLApp.prototype.setup=function(){document.dispatchEvent(this.manager.appstart),this.initialise_splitter(),this.load_local_storage(),this.populate_operations_list(),this.manager.setup(),this.reset_layout(),this.set_compile_message(),this.load_URI_params()},HTMLApp.prototype.handle_error=function(a){console.error(a);var b=a.display_str||a.toString();this.alert(b,"danger",this.options.error_timeout,!this.options.show_errors)},HTMLApp.prototype.bake=function(a){var b;try{b=this.chef.bake(this.get_input(),this.get_recipe_config(),this.options,this.progress,a)}catch(a){this.handle_error(a)}finally{if(!b)return;b.error&&this.handle_error(b.error),this.options=b.options,this.dish_str="html"==b.type?Utils.strip_html_tags(b.result,!0):b.result,this.progress=b.progress,this.manager.recipe.update_breakpoint_indicator(b.progress),this.manager.output.set(b.result,b.type,b.duration),b.duration>this.options.auto_bake_threshold&&this.auto_bake_&&(this.manager.controls.set_auto_bake(!1),this.alert("Baking took longer than "+this.options.auto_bake_threshold+"ms, Auto Bake has been disabled.","warning",5e3))}},HTMLApp.prototype.auto_bake=function(){this.auto_bake_&&this.bake()},HTMLApp.prototype.silent_bake=function(){var a=(new Date).getTime(),b=this.get_recipe_config();return this.auto_bake_&&this.chef.silent_bake(b),(new Date).getTime()-a},HTMLApp.prototype.get_input=function(){var a=this.manager.input.get();return sessionStorage.setItem("input_length",a.length),sessionStorage.setItem("input",a),a},HTMLApp.prototype.set_input=function(a){sessionStorage.setItem("input_length",a.length),sessionStorage.setItem("input",a),this.manager.input.set(a)},HTMLApp.prototype.populate_operations_list=function(){document.body.appendChild(document.getElementById("edit-favourites"));for(var a="",b=0;b<this.categories.length;b++){for(var c=this.categories[b],d=0===b,e=new HTMLCategory(c.name,d),f=0;f<c.ops.length;f++){var g=c.ops[f],h=new HTMLOperation(g,this.operations[g],this,this.manager);e.add_operation(h)}a+=e.to_html()}document.getElementById("categories").innerHTML=a;var i=document.querySelectorAll("#categories .op_list");for(b=0;b<i.length;b++)i[b].dispatchEvent(this.manager.oplistcreate);document.querySelector("#categories a").appendChild(document.getElementById("edit-favourites"))},HTMLApp.prototype.initialise_splitter=function(){Split(["#operations","#recipe","#IO"],{sizes:[20,30,50],minSize:[240,325,500],gutterSize:4,onDrag:this.manager.controls.adjust_width.bind(this.manager.controls)}),Split(["#input","#output"],{direction:"vertical",gutterSize:4}),this.reset_layout()},HTMLApp.prototype.load_local_storage=function(){var a;void 0!==localStorage.options&&(a=JSON.parse(localStorage.options)),this.manager.options.load(a),this.load_favourites()},HTMLApp.prototype.load_favourites=function(){var a=localStorage.favourites&&locaLine truncated
|
||||
this.add_dynamic_listener(".op_list .op-icon","mouseleave",this.ops.op_icon_mouseleave,this.ops),this.add_dynamic_listener(".op_list","oplistcreate",this.ops.op_list_create,this.ops),this.add_dynamic_listener("li.operation","operationadd",this.recipe.op_add.bind(this.recipe)),this.add_dynamic_listener(".arg","keyup",this.recipe.ing_change,this.recipe),this.add_dynamic_listener(".arg","change",this.recipe.ing_change,this.recipe),this.add_dynamic_listener(".disable-icon","click",this.recipe.disable_click,this.recipe),this.add_dynamic_listener(".breakpoint","click",this.recipe.breakpoint_click,this.recipe),this.add_dynamic_listener("#rec_list li.operation","dblclick",this.recipe.operation_dblclick,this.recipe),this.add_dynamic_listener("#rec_list li.operation > div","dblclick",this.recipe.operation_child_dblclick,this.recipe),this.add_dynamic_listener("#rec_list .input-group .dropdown-menu a","click",this.recipe.dropdown_toggle_click,this.recipe),this.add_dynamic_listener("#rec_list","operationremove",this.recipe.op_remove.bind(this.recipe)),this.add_multi_event_listener("#input-text","keyup paste",this.input.input_change,this.input),document.getElementById("reset-layout").addEventListener("click",this.app.reset_layout.bind(this.app)),document.getElementById("clr-io").addEventListener("click",this.input.clear_io_click.bind(this.input)),document.getElementById("input-text").addEventListener("dragover",this.input.input_dragover.bind(this.input)),document.getElementById("input-text").addEventListener("dragleave",this.input.input_dragleave.bind(this.input)),document.getElementById("input-text").addEventListener("drop",this.input.input_drop.bind(this.input)),document.getElementById("input-text").addEventListener("scroll",this.highlighter.input_scroll.bind(this.highlighter)),document.getElementById("input-text").addEventListener("mouseup",this.highlighter.input_mouseup.bind(this.highlighter)),document.getElementById("input-text").addEventListener("mousemove",this.highlighter.input_mousemove.bind(this.highlighter)),this.add_multi_event_listener("#input-text","mousedown dblclick select",this.highlighter.input_mousedown,this.highlighter),document.getElementById("save-to-file").addEventListener("click",this.output.save_click.bind(this.output)),document.getElementById("switch").addEventListener("click",this.output.switch_click.bind(this.output)),document.getElementById("undo-switch").addEventListener("click",this.output.undo_switch_click.bind(this.output)),document.getElementById("output-text").addEventListener("scroll",this.highlighter.output_scroll.bind(this.highlighter)),document.getElementById("output-text").addEventListener("mouseup",this.highlighter.output_mouseup.bind(this.highlighter)),document.getElementById("output-text").addEventListener("mousemove",this.highlighter.output_mousemove.bind(this.highlighter)),document.getElementById("output-html").addEventListener("mouseup",this.highlighter.output_html_mouseup.bind(this.highlighter)),document.getElementById("output-html").addEventListener("mousemove",this.highlighter.output_html_mousemove.bind(this.highlighter)),this.add_multi_event_listener("#output-text","mousedown dblclick select",this.highlighter.output_mousedown,this.highlighter),this.add_multi_event_listener("#output-html","mousedown dblclick select",this.highlighter.output_html_mousedown,this.highlighter),document.getElementById("options").addEventListener("click",this.options.options_click.bind(this.options)),document.getElementById("reset-options").addEventListener("click",this.options.reset_options_click.bind(this.options)),$(".option-item input:checkbox").on("switchChange.bootstrapSwitch",this.options.switch_change.bind(this.options)),$(".option-item input:checkbox").on("switchChange.bootstrapSwitch",this.options.set_word_wrap.bind(this.options)),this.add_dynamic_listener(".option-item input[type=number]","keyup",this.options.number_change,this.options),this.add_dynamic_listener(".option-item input[type=number]","change",this.options.number_change,this.options),this.add_dynamic_listener(".option-item select","change",this.options.select_change,this.options),document.getElementById("alert-close").addEventListener("click",this.app.alert_close_click.bind(this.app))},Manager.prototype.add_listeners=function(a,b,c,d){d=d||this,[].forEach.call(document.querySelectorAll(a),function(a){a.addEventListener(b,c.bind(d))})},Manager.prototype.add_multi_event_listener=function(a,b,c,d){for(var e=b.split(" "),f=0;f<e.length;f++)document.querySelector(a).addEventListener(e[f],c.bind(d))},Manager.prototype.add_multi_event_listeners=function(a,b,c,d){for(var e=b.split(" "),f=0;f<e.length;f++)this.add_listeners(a,e[f],c,d)},Manager.prototype.add_dynamic_listener=function(a,b,c,d){var e={selector:a,callback:c.bind(d||this)};this.dynamic_handlers.hasOwnProperty(b)?this.dynamic_handlers[b].push(e):(this.dynamic_handlers[b]=[e],document.addEventListener(b,this.dynamic_listener_handler.bind(this)))},Manager.prototype.dynamicLine truncated
|
||||
this.add_dynamic_listener(".op_list .op-icon","mouseleave",this.ops.op_icon_mouseleave,this.ops),this.add_dynamic_listener(".op_list","oplistcreate",this.ops.op_list_create,this.ops),this.add_dynamic_listener("li.operation","operationadd",this.recipe.op_add.bind(this.recipe)),this.add_dynamic_listener(".arg","keyup",this.recipe.ing_change,this.recipe),this.add_dynamic_listener(".arg","change",this.recipe.ing_change,this.recipe),this.add_dynamic_listener(".disable-icon","click",this.recipe.disable_click,this.recipe),this.add_dynamic_listener(".breakpoint","click",this.recipe.breakpoint_click,this.recipe),this.add_dynamic_listener("#rec_list li.operation","dblclick",this.recipe.operation_dblclick,this.recipe),this.add_dynamic_listener("#rec_list li.operation > div","dblclick",this.recipe.operation_child_dblclick,this.recipe),this.add_dynamic_listener("#rec_list .input-group .dropdown-menu a","click",this.recipe.dropdown_toggle_click,this.recipe),this.add_dynamic_listener("#rec_list","operationremove",this.recipe.op_remove.bind(this.recipe)),this.add_multi_event_listener("#input-text","keyup paste",this.input.input_change,this.input),document.getElementById("reset-layout").addEventListener("click",this.app.reset_layout.bind(this.app)),document.getElementById("clr-io").addEventListener("click",this.input.clear_io_click.bind(this.input)),document.getElementById("input-text").addEventListener("dragover",this.input.input_dragover.bind(this.input)),document.getElementById("input-text").addEventListener("dragleave",this.input.input_dragleave.bind(this.input)),document.getElementById("input-text").addEventListener("drop",this.input.input_drop.bind(this.input)),document.getElementById("input-text").addEventListener("scroll",this.highlighter.input_scroll.bind(this.highlighter)),document.getElementById("input-text").addEventListener("mouseup",this.highlighter.input_mouseup.bind(this.highlighter)),document.getElementById("input-text").addEventListener("mousemove",this.highlighter.input_mousemove.bind(this.highlighter)),this.add_multi_event_listener("#input-text","mousedown dblclick select",this.highlighter.input_mousedown,this.highlighter),document.getElementById("save-to-file").addEventListener("click",this.output.save_click.bind(this.output)),document.getElementById("switch").addEventListener("click",this.output.switch_click.bind(this.output)),document.getElementById("undo-switch").addEventListener("click",this.output.undo_switch_click.bind(this.output)),document.getElementById("output-text").addEventListener("scroll",this.highlighter.output_scroll.bind(this.highlighter)),document.getElementById("output-text").addEventListener("mouseup",this.highlighter.output_mouseup.bind(this.highlighter)),document.getElementById("output-text").addEventListener("mousemove",this.highlighter.output_mousemove.bind(this.highlighter)),document.getElementById("output-html").addEventListener("mouseup",this.highlighter.output_html_mouseup.bind(this.highlighter)),document.getElementById("output-html").addEventListener("mousemove",this.highlighter.output_html_mousemove.bind(this.highlighter)),this.add_multi_event_listener("#output-text","mousedown dblclick select",this.highlighter.output_mousedown,this.highlighter),this.add_multi_event_listener("#output-html","mousedown dblclick select",this.highlighter.output_html_mousedown,this.highlighter),document.getElementById("options").addEventListener("click",this.options.options_click.bind(this.options)),document.getElementById("reset-options").addEventListener("click",this.options.reset_options_click.bind(this.options)),$(".option-item input:checkbox").on("switchChange.bootstrapSwitch",this.options.switch_change.bind(this.options)),$(".option-item input:checkbox").on("switchChange.bootstrapSwitch",this.options.set_word_wrap.bind(this.options)),this.add_dynamic_listener(".option-item input[type=number]","keyup",this.options.number_change,this.options),this.add_dynamic_listener(".option-item input[type=number]","change",this.options.number_change,this.options),this.add_dynamic_listener(".option-item select","change",this.options.select_change,this.options),document.getElementById("alert-close").addEventListener("click",this.app.alert_close_click.bind(this.app))},Manager.prototype.add_listeners=function(a,b,c,d){d=d||this,[].forEach.call(document.querySelectorAll(a),function(a){a.addEventListener(b,c.bind(d))})},Manager.prototype.add_multi_event_listener=function(a,b,c,d){for(var e=b.split(" "),f=0;f<e.length;f++)document.querySelector(a).addEventListener(e[f],c.bind(d))},Manager.prototype.add_multi_event_listeners=function(a,b,c,d){for(var e=b.split(" "),f=0;f<e.length;f++)this.add_listeners(a,e[f],c,d)},Manager.prototype.add_dynamic_listener=function(a,b,c,d){var e={selector:a,callback:c.bind(d||this)};this.dynamic_handlers.hasOwnProperty(b)?this.dynamic_handlers[b].push(e):(this.dynamic_handlers[b]=[e],document.addEventListener(b,this.dynamic_listener_handler.bind(this)))},Manager.prototype.dynamicLine truncated
|
||||
@@ -1,6 +1,6 @@
|
||||
202 source files
|
||||
104190 lines
|
||||
size
|
||||
4.0M size
|
||||
|
||||
136 JavaScript source files
|
||||
95118 lines
|
||||
|
||||
Reference in new issue
Block a user