Commit Graph
58 Commits
Author SHA1 Message Date
toby a5f1c430a3 Add "HTTP request" operation 2017-06-07 22:46:05 -04:00
toby 51e195ed17 Add repo option to Travis 2017-05-20 23:56:58 -04:00
toby dd3b42fb53 Fix bug with UTF16LE in Encode/Decode ops 2017-05-19 16:11:08 -04:00
toby 0e285151f3 Add codepage numbers to CharEnc IO_FORMAT 2017-05-17 18:22:04 -04:00
toby f800fab1a3 Add author tags to Encode text & Decode text ops 2017-05-17 17:31:28 -04:00
toby dc61aeeeb8 Improve format of en/decoding text descriptions 2017-05-17 17:18:08 -04:00
toby 4b1d0fd011 Merge branch 'feature-ebcdic' of github.com:tlwr/CyberChef into feature-ebcdic 2017-05-17 11:30:20 -04:00
toby 2b7ba594fc Split "Text encoding" op into two ops
This commit splits "Text encoding" into two operations:
+ Encode text `string -> byteArray`
+ Decode text `byteArray -> string`

Base64 and Hex support are removed "Encode text" and "Decode text" as
they have their own operations.

Encode and decode operations now have support for the following
encodings:
+ IBM EBCDIC US-Canada
+ IBM EBCDIC International
+ Windows-874 Thai
+ Japanese Shift-JIS
+ Simplified Chinese GBK
+ Korean
+ Traditional Chinese Big5
+ UTF-16, little endian
+ UTF-16, big endian
+ Windows-1250 Central European
+ Windows-1251 Cyrillic
+ Windows-1252 Latin
+ Windows-1253 Greek
+ Windows-1254 Turkish
+ Windows-1255 Hebrew
+ Windows-1256 Arabic
+ Windows-1257 Baltic
+ Windows-1258 Vietnam
+ US-ASCII
+ Russian Cyrillic KOI8-R
+ Simplified Chinese GB2312
+ KOI8-U Ukrainian Cyrillic
+ ISO-8859-1 Latin 1 (Western European)
+ ISO-8859-2 Latin 2 (Central European)
+ ISO-8859-3 Latin 3
+ ISO-8859-4 Baltic
+ ISO-8859-5 Cyrillic
+ ISO-8859-6 Arabic
+ ISO-8859-7 Greek
+ ISO-8859-8 Hebrew
+ ISO-8859-9 Turkish
+ ISO-8859-10 Latin 6
+ ISO-8859-11 Latin (Thai)
+ ISO-8859-13 Latin 7 (Estonian)
+ ISO-8859-14 Latin 8 (Celtic)
+ ISO-8859-15 Latin 9
+ ISO-8859-16 Latin 10
+ ISO-2022 JIS Japanese
+ EUC Japanese
+ EUC Korean
+ Simplified Chinese GB18030
+ UTF-7
+ UTF-8
2017-05-17 11:17:11 -04:00
toby 82d28242cc Add JSDoc to the runEXIF function in Image.js 2017-05-09 15:34:18 -04:00
toby 60fddf837d Change let to const in "Extract EXIF" 2017-05-08 12:49:13 -04:00
toby ee25df0c28 Add desc and fix error message for "Extract EXIF" 2017-05-08 12:48:43 -04:00
toby 478af40359 Fix "Extract EXIF" tests 2017-05-08 12:45:42 -04:00
toby 3c15bd9e29 Add "{To,From} EBCDIC" operations
This adds operations
+ "To EBCDIC"
+ "From EBCDIC"

This makes use of the npm codepage package but it is not installed as a
dependency.

Instead I used the `make.sh` script to export pages 37 and 500.

To my knowledge there is no way currently to only import individual code pages
from the npm package (hence the included script).

If we were to import the package directly it increases the build size by
2.7MB.
2017-05-07 18:07:56 -04:00
toby 71796e3dbf Merge remote-tracking branch 'upstream/master' into feature-exif 2017-05-06 23:38:04 -04:00
toby 274e1139fa Remove debounce from Utils 2017-05-03 10:43:30 -04:00
toby 6122e33f4f Removed debounced autobake & stop disabling input 2017-05-03 10:35:15 -04:00
toby 98bc68c2bf Update descriptions to explain context awareness 2017-05-02 12:17:43 -04:00
toby 116c0680a2 Make camel,etc smart and add tests 2017-05-02 11:51:33 -04:00
toby 1b8a25ec88 Add "Extract EXIF" operation 2017-04-29 16:06:16 -04:00
toby d5def01a9d Add operations To {Snake,Camel,Kebab} case 2017-04-29 13:42:07 -04:00
toby 50784f2600 Debounce autobake in the web app.
Added debounce with guidance from the underscore.js implementation:
https://github.com/jashkenas/underscore/blob/e944e0275abb3e1f366417ba8facb5754a7ad273/underscore.js#L880
2017-04-23 13:41:28 -04:00
toby 21c0fed833 Fix bug: baking error did not reset baking status 2017-04-23 13:14:59 -04:00
toby dea214bd2e Add Head and Tail operations 2017-04-21 23:10:34 -04:00
toby a13e2468db Added UI loading indications to the HTML app 2017-04-21 20:04:12 -04:00
toby 3fb660d816 Add jsdoc-babel plugin
This is to stop jsdoc parsing errors.

More information in this thread:
https://github.com/jsdoc3/jsdoc/issues/555
2017-04-21 18:05:30 -04:00
toby 9f60dc3dd6 Change ecmaVersion to 8 to make eslint happy 2017-04-21 17:56:16 -04:00
toby 02f855ff09 Add more tests for flow control ops 2017-04-21 17:49:10 -04:00
toby c39622ed1e Add support for async ops using async/await 2017-04-21 17:48:42 -04:00
toby 78abacdadc Add download button for displayFilesAsHTML files
+ Added bytes attribute for "file objects" in untar and unzip
+ Added download button on files displayed by displayFilesAsHTML
2017-03-12 14:03:40 -04:00
toby 3a90244af0 Convert test runner to headless 2017-02-24 18:50:17 -05:00
toby 04df7a51d2 Handle case when expected error and receives none 2017-02-23 14:30:19 -05:00
toby 3d89881373 Fix typo in TestRegister.js 2017-02-23 14:04:50 -05:00
toby d680b4a06f Merge remote-tracking branch 'upstream/master' into tests 2017-02-23 14:04:30 -05:00
toby 500522bdeb Initial work on in-browser test runner
Run `grunt test` and open up the `build/test/index.html` to run the
tests.
2017-02-23 13:59:58 -05:00
toby 11e972ff26 Change description in Base58.js 2017-02-10 13:45:20 -05:00
toby 9125d74fa2 Merge branch 'base58' 2017-02-10 13:34:21 -05:00
toby e26e6a4961 Add "To Base58" and "From Base58" operations 2017-02-10 13:31:59 -05:00
toby 0fd2550190 Improve and fix examples for padBytesRight 2017-02-09 13:37:30 -05:00
toby 0eef1d972a Add padBytesRight author & displayFilesAsHTML desc 2017-02-09 13:22:27 -05:00
toby 6cc5806486 Remove obsolete line from displayFilesAsHTML 2017-02-09 13:20:44 -05:00
toby bbc93af2ae Remove padLeft & move zeroFillBytes to Utils
+ `padLeft was changed to use `Utils.padLeft`
+ Moved `zeroFillBytes` to `Utils.padBytesRight`
2017-02-09 13:07:46 -05:00
toby 037540c9a8 Fix description for Tar operation
Changed "unpack" to "pack"
2017-02-09 13:04:46 -05:00
toby 3bd585cabf Update Unzip to use displayFilesAsHTML 2017-02-09 12:00:36 -05:00
toby 6b8ab2bf16 Add file count to displayFilesAsHTML 2017-02-09 11:59:47 -05:00
toby c67957da81 Code styling changes to pass grunt prod 2017-02-09 11:38:20 -05:00
toby e751825a49 Merge branch 'master' of github.com:tlwr/CyberChef 2017-02-09 11:37:49 -05:00
toby a4283554cf Merge remote-tracking branch 'upstream/master' 2017-02-09 11:35:14 -05:00
toby d26cf4ca9d Merge remote-tracking branch 'upstream/master' 2017-02-09 11:31:15 -05:00
toby 616cebff5a Fix "A lone zero block at ##" bug
Before, the tar operation would write the incorrect number of bytes to
indicate the end of the tar file. It should have been 2 blocks of 512
ascii zeros, but it would write 529 zeros instead.

The new implementation of `writeEndBlocks` is nicer and we can reuse
code with the `addEmptyBlock` function.
2017-02-09 11:25:09 -05:00
toby d5796706e4 Change Tar block padding to 2 blocks 2017-02-08 23:52:59 -05:00
toby 1653cbf817 Fix JSDoc return type for displayFilesAsHTML 2017-02-08 23:36:09 -05:00
toby 442dd560c0 Implement the Tar operation 2017-02-08 23:35:54 -05:00
toby 281a83bbc3 Add author to runTar, runUntar, displayFilesAsHTML 2017-02-08 12:51:54 -05:00
toby 6f077a9c50 Rename to runTar, runUntar, displayFilesAsHTML 2017-02-08 12:51:18 -05:00
toby e809deb914 Initial functionality of untar
+ Added skeleton "Tar" operation with no functionality
+ Added intial functionality of "Untar"
+ Added a function in `Utils` `HTMLFormat` to generalize HTML generation
of files and folders (could later be used in Unzip).

I had a brief search for a small library for tar and untar operations,
however they were mostly for node (if anyone finds one we can drop in
that would be appreciated) or unmaintained. Luckily the tar spec is
relatively easy to understand just from Wikipedia.
2017-02-08 00:05:52 -05:00
toby b9f1cf968f Make translateTo faster and aware of line breaks
Speed improvement is due to using a function regex instead of multiple
find/replace calls.
2017-02-03 18:34:46 -05:00
toby 9bf0d66b88 Fix casing for Morse code operations + description 2017-02-03 18:00:27 -05:00
toby 230ba5ff67 Add initial functionality
Added "To Morse Code" and "From More Code" functions under the category
"Encryption / Encoding".

"To Morse Code" accepts 3 arguments:
1. Format options: e.g. ./- or Dot/Dash
2. Letter delimiter e.g. <space> or <newline>
3. Word delimiter e.g. <newline>

"From Morse Code" accepts 2 arguments:
1. Letter delimiter
2. Word delimiter
2017-02-03 16:43:30 -05:00