SYMBOL INDEX (118 symbols across 20 files) FILE: dev.py function quiz (line 74) | def quiz(question, options, max_attempts=3): function yes_no_quiz (line 113) | def yes_no_quiz(question, max_attempts=3): function replace_contents_or_not (line 122) | def replace_contents_or_not(path): function from_terminal (line 136) | def from_terminal(subject): function create_files (line 146) | def create_files(name): function delete (line 194) | def delete(abs_path, disp_path): function clean (line 204) | def clean(): function docs (line 254) | def docs(): function vagrant (line 261) | def vagrant(): function run_vagrant (line 266) | def run_vagrant(): function docker (line 272) | def docker(): function run_docker (line 277) | def run_docker(): function npm (line 283) | def npm(): function no_container (line 288) | def no_container(): function pip_install (line 293) | def pip_install(*packages): function main (line 299) | def main(): FILE: docs/js/theme.js function t (line 2) | function t(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{... FILE: docs/search/main.js function getSearchTermFromLocation (line 1) | function getSearchTermFromLocation() { function joinUrl (line 12) | function joinUrl (base, path) { function escapeHtml (line 24) | function escapeHtml (value) { function formatResult (line 31) | function formatResult (location, title, summary) { function displayResults (line 35) | function displayResults (results) { function doSearch (line 55) | function doSearch () { function initSearch (line 69) | function initSearch () { function onWorkerMessage (line 81) | function onWorkerMessage (e) { FILE: docs/search/worker.js function getScript (line 8) | function getScript(script, callback) { function getScriptsInOrder (line 17) | function getScriptsInOrder(scripts, callback) { function loadScripts (line 27) | function loadScripts(urls, callback) { function onJSONLoaded (line 36) | function onJSONLoaded () { function onScriptsLoaded (line 59) | function onScriptsLoaded () { function init (line 95) | function init () { function search (line 106) | function search (query) { FILE: markdownx/admin.py class MarkdownxModelAdmin (line 7) | class MarkdownxModelAdmin(admin.ModelAdmin): FILE: markdownx/exceptions.py class MarkdownxImageUploadError (line 5) | class MarkdownxImageUploadError(ValidationError): method not_uploaded (line 11) | def not_uploaded(cls): method unsupported_format (line 24) | def unsupported_format(cls): method invalid_size (line 39) | def invalid_size(cls, current, expected): FILE: markdownx/fields.py class MarkdownxFormField (line 6) | class MarkdownxFormField(forms.CharField): method __init__ (line 11) | def __init__(self, *args, **kwargs): FILE: markdownx/forms.py class ImageForm (line 23) | class ImageForm(forms.Form): method save (line 34) | def save(self, commit=True): method _save (line 87) | def _save(self, image, file_name, commit): method _process_raster (line 116) | def _process_raster(image, extension): method get_unique_file_name (line 141) | def get_unique_file_name(file_name): method clean (line 161) | def clean(self): FILE: markdownx/models.py class MarkdownxField (line 6) | class MarkdownxField(models.TextField): method formfield (line 46) | def formfield(self, **kwargs): FILE: markdownx/settings.py function _mdx (line 22) | def _mdx(var, default): FILE: markdownx/static/markdownx/js/markdownx.js function r (line 2) | function r(e, n, t) { function getHeight (line 124) | function getHeight(element) { function updateHeight (line 127) | function updateHeight(editor) { function getCookie (line 370) | function getCookie(name) { function zip (line 389) | function zip() { function mountEvents (line 411) | function mountEvents() { function preparePostData (line 423) | function preparePostData(data, csrf) { function AJAXRequest (line 439) | function AJAXRequest() { function Request (line 454) | function Request(url, data) { function triggerEvent (line 497) | function triggerEvent(element, type) { function triggerCustomEvent (line 503) | function triggerCustomEvent(type, element, args) { function addClass (line 516) | function addClass(element) { function removeClass (line 530) | function removeClass(element) { FILE: markdownx/tests/models.py class MyModel (line 6) | class MyModel(models.Model): class Meta (line 12) | class Meta: FILE: markdownx/tests/tests.py class SimpleTest (line 7) | class SimpleTest(TestCase): method test_upload (line 9) | def test_upload(self): FILE: markdownx/tests/views.py class TestView (line 5) | class TestView(CreateView): FILE: markdownx/utils.py function markdownify (line 11) | def markdownify(content): function _crop (line 28) | def _crop(im, target_x, target_y): function _scale (line 62) | def _scale(im, x, y): function scale_and_crop (line 82) | def scale_and_crop(image, size, crop=False, upscale=False, quality=None): function xml_has_javascript (line 137) | def xml_has_javascript(data): FILE: markdownx/views.py class MarkdownifyView (line 13) | class MarkdownifyView(View): method post (line 18) | def post(self, request, *args, **kwargs): class ImageUploadView (line 33) | class ImageUploadView(BaseFormView): method form_invalid (line 42) | def form_invalid(self, form): method form_valid (line 58) | def form_valid(self, form): FILE: markdownx/widgets.py class MarkdownxWidget (line 21) | class MarkdownxWidget(forms.Textarea): method get_context (line 29) | def get_context(self, name, value, attrs=None): method render (line 40) | def render(self, name, value, attrs=None, renderer=None): method add_markdownx_attrs (line 50) | def add_markdownx_attrs(attrs): class Media (line 76) | class Media: class AdminMarkdownxWidget (line 82) | class AdminMarkdownxWidget(MarkdownxWidget, widgets.AdminTextareaWidget): class Media (line 88) | class Media: FILE: setup.py function get_meta (line 49) | def get_meta(): function get_requirements (line 74) | def get_requirements(): function readme (line 79) | def readme(): FILE: static-src/markdownx/js/markdownx.ts type ImageUploadResponse (line 25) | interface ImageUploadResponse { type HandlerFunction (line 31) | interface HandlerFunction { type KeyboardEvents (line 39) | interface KeyboardEvents { type EventHandlers (line 57) | interface EventHandlers { type MarkdownxProperties (line 62) | interface MarkdownxProperties { constant UPLOAD_URL_ATTRIBUTE (line 78) | const UPLOAD_URL_ATTRIBUTE: string = "data-markdownx-upload-urls-path", constant PROCESSING_URL_ATTRIBUTE (line 78) | const UPLOAD_URL_ATTRIBUTE: string = "data-markdownx-upload-urls-path", constant RESIZABILITY_ATTRIBUTE (line 78) | const UPLOAD_URL_ATTRIBUTE: string = "data-markdownx-upload-urls-path", constant LATENCY_ATTRIBUTE (line 78) | const UPLOAD_URL_ATTRIBUTE: string = "data-markdownx-upload-urls-path", constant LATENCY_MINIMUM (line 78) | const UPLOAD_URL_ATTRIBUTE: string = "data-markdownx-upload-urls-path", constant XHR_RESPONSE_ERROR (line 78) | const UPLOAD_URL_ATTRIBUTE: string = "data-markdownx-upload-urls-path", constant UPLOAD_START_OPACITY (line 78) | const UPLOAD_URL_ATTRIBUTE: string = "data-markdownx-upload-urls-path", constant NORMAL_OPACITY (line 78) | const UPLOAD_URL_ATTRIBUTE: string = "data-markdownx-upload-urls-path", function getHeight (line 437) | function getHeight (element: HTMLElement): number { function updateHeight (line 453) | function updateHeight(editor: HTMLTextAreaElement): HTMLTextAreaElement { FILE: static-src/markdownx/js/utils.ts type EventListener (line 3) | interface EventListener { type RequestBase (line 15) | interface RequestBase { function getCookie (line 33) | function getCookie (name: string): string | null { function zip (line 67) | function zip (...rows: any[]) { function mountEvents (line 86) | function mountEvents (...collections: EventListener[]): any[] { function preparePostData (line 109) | function preparePostData(data: Object, csrf: Boolean=true) { function AJAXRequest (line 131) | function AJAXRequest () : XMLHttpRequest { class Request (line 164) | class Request implements RequestBase { method constructor (line 175) | constructor(url: string, data: FormData) { method progress (line 186) | progress(event: any): void { method error (line 199) | error(response: any): void { method success (line 209) | success(response: any): void { method send (line 218) | send (): void { function triggerEvent (line 273) | function triggerEvent(element: Element, type: string): void { function triggerCustomEvent (line 289) | function triggerCustomEvent(type:string, element: Element | Document=doc... function addClass (line 303) | function addClass (element: Element, ...className: string[]): void { function removeClass (line 328) | function removeClass (element: Element, ...className: string[]): void {