# src/js/enqueues/vendor In this directory you'll find vendor JavaScript packages that cannot be installed through NPM, but are included in WordPress. Below we've documented the sources for those packages. ## Folder dependencies - codemirror: https://github.com/codemirror/CodeMirror - crop: http://www.defusion.org.uk/code/javascript-image-cropper-ui-using-prototype-scriptaculous/download-zip/ - imgareaselect: https://github.com/odyniec/imgareaselect - jcrop: https://github.com/tapmodo/Jcrop - mediaelement: https://github.com/mediaelement/mediaelement - plupload: https://github.com/moxiecode/plupload - swfupload: https://github.com/WordPress/secure-swfupload - thickbox: http://codylindley.com/thickbox/ - tinymce: https://www.tiny.cloud/get-tiny/self-hosted/ - Download "TinyMCE Dev Package". This package is needed because it includes the `compat3x` plugin. - Open the package and go to `js/tinymce`. - Replace all the following files and folders: * license.txt * plugins * charmap * colorpicker * compat3x * directionality * fullscreen * hr * image * link * lists * media * paste * tabfocus * textcolor * skins * lightgray * themes * inlite * modern * tinymce.js * tinymce.min.js - Go to the `compat3x` plugin folder and move `tiny_mce_popup.js` and `utils` to the root directory. Delete the `img` folder. Revert `css/dialog.css`. - Go to the `lightgray` skin folder and delete `content.mobile.min.css`, `fonts/tinymce-mobile.woff`, `skin.min.css.map`, `skin.mobile.min.css` and `skin.mobile.min.css.map`. - After all these steps, there should normally not be any file additions or deletions when you run `svn status`, only file modifications. If there are, make sure it's intentional. - Update the TinyMCE version in `src/wp-includes/version.php`. Use the following format: - Major version number. - Minor version number. - Patch version number, holding 2 places. - A dash "-". - The date: YYYYMMDD. ## Single file dependencies - colorpicker: http://www.mattkruse.com/javascript/colorpicker/ - deprecated/suggest: Patched by Mark Jaquith with Alexander Dick's "multiple items" patch to allow for auto-suggesting of more than one tag before submitting. See documentation in `suggest.js`. - farbtastic: https://github.com/mattfarina/farbtastic - iris: https://github.com/Automattic/Iris - json2: https://github.com/douglascrockford/JSON-js - jquery/jquery.color: https://github.com/jquery/jquery-color. Package is on NPM but not published by maintainer. - jquery/jquery.hotkeys: https://github.com/tzuryby/jquery.hotkeys - jquery/jquery.masonry: Old version for BC purposes, can't include two versions with NPM. The newer version is included through NPM and built to `wp-includes/js/masonry.min.js` - jquery/jquery.query: https://github.com/blairmitchelmore/jquery.plugins/blob/master/jquery.query.js - jquery/jquery.schedule: https://github.com/rse/jquery-schedule - jquery/jquery.serializeobject: https://github.com/cowboy/jquery-misc/blob/master/jquery.ba-serializeobject.js - jquery/jquery.table-hotkeys: WP version can be downloaded at https://code.google.com/archive/p/js-hotkeys/downloads?page=2. A newer version is available at https://github.com/jeresig/jquery.hotkeys. - jquery/jquery.ui.touch-punch.js https://github.com/furf/jquery-ui-touch-punch/blob/master/jquery.ui.touch-punch.js - swfobject: https://github.com/swfobject/swfobject - tw-sack: https://github.com/abritinthebay/simpleajaxcodekit - zxcvbn: https://github.com/dropbox/zxcvbn cannot automatically be installed as the frequency lists need to be manually ROT13 transformed.