2.0.0 • Published 1 month ago

@sackmanson/quill-image-uploader v2.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 month ago

Quill ImageHandler Module

A module for Quill rich text editor to allow images to be uploaded to a server instead of being base64 encoded. Adds a button to the toolbar for users to click, also handles drag,dropped and pasted images.

Demo

Image of Yaktocat

Install

Install with npm:

npm install quill-image-uploader --save

Webpack/ES6

import Quill from "quill";
import ImageUploader from "quill-image-uploader";

import 'quill-image-uploader/dist/quill.imageUploader.min.css';

Quill.register("modules/imageUploader", ImageUploader);

const quill = new Quill(editor, {
  // ...
  modules: {
    // ...
    imageUploader: {
      upload: (file) => {
        return new Promise((resolve, reject) => {
          setTimeout(() => {
            resolve(
              "https://upload.wikimedia.org/wikipedia/commons/thumb/6/6a/JavaScript-logo.png/480px-JavaScript-logo.png"
            );
          }, 3500);
        });
      },
    },
  },
});

Quickstart (React with react-quill)

React Example on CodeSandbox

Quickstart (script tag)

Example on CodeSandbox

// A link to quill.js
<script src="/dist/quill.js"></script>
<script src="/dist/quill.imageUploader.min.js"></script>

Quill.register("modules/imageUploader", ImageUploader);

var quill = new Quill(editor, {
  // ...
  modules: {
    // ...
    imageUploader: {
      upload: file => {
        return new Promise((resolve, reject) => {
          setTimeout(() => {
            resolve(
              "https://upload.wikimedia.org/wikipedia/commons/thumb/6/6a/JavaScript-logo.png/480px-JavaScript-logo.png"
            );
          }, 3500);
        });
      }
    }
  }
});
ajv-errorsaggregate-errorajvajv-keywordsansi-regexacorn-jsxansi-colorsacornaprobaacceptsansi-stylesansi-escapesarr-diffargparsearr-flattenarr-unionanymatchansi-html-communityaria-queryarray-flattenarray-uniquearray-includesarray-unionarray-uniqassign-symbolsassertasn1.jsatobasync-limiterarray.prototype.flatasyncast-types-flowbabel-generatorbabel-helper-builder-binary-assignment-operator-visitorbabel-helper-call-delegatebabel-helper-explode-assignable-expressionbabel-helper-define-mapbabel-helper-get-function-aritybabel-helper-function-namebabel-helper-regexbabel-helper-optimise-call-expressionbabel-code-framebabel-helper-hoist-variablesbabel-helper-replace-supersbabel-messagesbabel-helpersbabel-plugin-syntax-async-functionsbabel-plugin-syntax-exponentiation-operatorbabel-plugin-check-es2015-constantsbabel-helper-remap-async-to-generatorbabel-plugin-transform-es2015-block-scoped-functionsbabel-plugin-transform-es2015-block-scopingasync-eachbabel-plugin-transform-es2015-classesbabel-plugin-syntax-trailing-function-commasbabel-plugin-transform-es2015-arrow-functionsbabel-plugin-transform-async-to-generatorbabel-plugin-transform-es2015-destructuringbabel-plugin-transform-es2015-duplicate-keysbabel-plugin-transform-es2015-for-ofbabel-plugin-transform-es2015-function-namebabel-plugin-transform-es2015-computed-propertiesaxobject-querybabel-plugin-transform-es2015-modules-commonjsbabel-plugin-transform-es2015-literalsbabel-plugin-transform-es2015-object-superbabel-plugin-transform-es2015-modules-amdbabel-plugin-transform-es2015-shorthand-propertiesbabel-plugin-transform-es2015-spreadbabel-plugin-transform-es2015-unicode-regexbabel-plugin-transform-es2015-template-literalsbabel-plugin-transform-es2015-typeof-symbolbabel-plugin-transform-es2015-sticky-regexbabel-plugin-transform-regeneratorbabel-plugin-transform-exponentiation-operatorbabel-plugin-transform-es2015-modules-systemjsbabel-plugin-transform-strict-modebabel-registerbabel-traversebabel-runtimebabel-templatebabel-plugin-transform-es2015-parametersbabylonbabel-plugin-transform-es2015-modules-umdbalanced-matchbaseastral-regexbabel-typesbluebirdbatchbig.jsbinary-extensionsbase64-jsbrace-expansionbindingsbracesbonjourbn.jsbrorandbody-parserbrowserify-zlibbrowserify-aesbrowserslistbrowserify-rsabrowserify-cipherbrowserify-signbufferbuffer-frombuffer-xorcacachebrowserify-desbuffer-indexofcamelcasecache-basechownrchalkbuiltin-status-codesbyteschardetclean-stackcall-bindcallsitesclass-utilschokidarchrome-trace-eventcipher-baseclicli-cursorcollection-visitcocaniuse-litecli-widthcolor-namecomponent-emittercommondircliuicolor-convertconfusing-browser-globalscompressionconsole-browserifyconcat-streamconstants-browserifyconvert-source-mapconnect-history-api-fallbackcommandercontent-typecopy-concurrentlycompressiblecontent-dispositionconcat-mapcookie-signaturecore-jscore-util-iscontains-pathcopy-descriptorcore-js-purecssesccross-spawncyclistdebugcrypto-browserifycreate-hashdecode-uri-componentdate-nowcreate-hmaccookiedecamelizedeep-isdefault-gatewaycreate-ecdhdepddamerau-levenshteindetect-filedeldetect-indentdefine-propertydeep-equaldetect-nodedefine-propertiesdes.jsdomain-browserdns-equaldns-txtdiffie-hellmandns-packetdoctrinedom-serializerdestroydomelementtypeee-firstelectron-to-chromiumemojis-listenhanced-resolvedomutilsencodeurlerror-exend-of-streamdomhandlerentitiesduplexifyerrnoemoji-regexescape-htmles-abstractescaladeeslint-import-resolver-nodeellipticeslint-plugin-react-hookseslint-scopeeslint-visitor-keyseslint-module-utilsesrecursees-to-primitiveestraverseesutilsespreeescape-string-regexpeventseslint-utilsexecaesprimaesqueryetageventemitter3expand-bracketsevp_bytestokeyextend-shallowextglobfast-deep-equalfast-json-stable-stringifyexternal-editorexitexpand-tildeexpressfiggy-puddingeventsourcefast-levenshteinfind-upfill-rangefast-difffaye-websocketfile-uri-to-pathfind-cache-dirfindup-syncfiguresfile-entry-cachefinalhandlerflattedfor-inflat-cachefragment-cachefrom2fs.realpathfs-minipassfs-write-stream-atomicfseventsfollow-redirectsfunction-bindfunctional-red-black-treeget-valueforwardedfreshget-caller-fileglobflush-write-streamglob-parentglobalsgensyncglobal-prefixgraceful-fsglobbyget-intrinsichas-ansiget-streamhas-flaghas-valuehash.jsglobal-moduleshandle-thinghomedir-polyfillhas-valueshome-or-tmphmac-drbghpack.jshtmlparser2hashttp-deceiverhosted-git-infohas-symbolshtml-entitieshash-basehttps-browserifyiferrhttp-parser-jshttp-errorsicss-utilsimport-localindent-stringiconv-liteimurmurhashhttp-proxyieee754inheritsiniindexes-ofinterprethttp-proxy-middlewareinvariantinvert-kvinflightipignoreipaddr.jsinternal-ipis-accessor-descriptorinternal-slotinquirerip-regexinfer-owneris-bufferis-data-descriptoris-extendableimport-freshis-arrayishis-descriptoris-extglobis-finiteis-absolute-urlis-globis-plain-objectis-fullwidth-code-pointis-binary-pathis-date-objectis-callableis-numberis-path-cwdis-path-insideis-promiseis-wslis-windowsisarrayisexejs-tokensjest-workerjs-yamljson-schema-traverseis-streamisobjectis-path-in-cwdjson-parse-better-errorsjson5json-stable-stringify-without-jsonifykillablejsescis-stringis-regexloader-utilskind-oflevnload-json-fileloader-runnerlcidlodashlocate-pathis-symbolmap-age-cleanerlru-cachelodash-esmake-dirlodash.clonedeeploglevelmap-visitjsx-ast-utilsmemmedia-typermd5.jsmerge-streammicromatchloose-envifymap-cachelodash.isequalminimatchmerge-descriptorsmethodsmimeminimalistic-assertmimic-fnmemory-fsminipassminipass-collectminipass-pipelinemixin-deepminimalistic-crypto-utilsmime-typesmississippimkdirpminipass-flushminimistmsmiller-rabinnanmulticast-dnsneo-asyncmulticast-dns-service-typesmove-concurrentlymime-dbnice-trymute-streamnode-libs-browsernatural-comparenormalize-pathnormalize-package-datananomatchobject-assignobject-copynpm-run-pathnegotiatorobject.assignnode-forgeobject-visitobject.pickobject-keysnode-releasesobufobject.fromentriesonetimeobject.valuesopnos-localeoptionatorobject-inspectos-homedirp-is-promisep-finallyobject.entriesp-deferon-finishedp-locatep-maponcep-limitos-browserifyos-tmpdirp-retryon-headerspakoparallel-transformp-trypascalcaseparchmentpath-browserifyparse-asn1path-dirnamepath-is-absoluteparse-passwdparseurlpath-parseparse-jsonpicocolorsparent-modulepath-is-insidepath-keypkg-dirpath-typepbkdf2path-existspostcssposix-character-classespifypinkiepostcss-modules-extract-importspostcss-value-parserpath-to-regexppostcss-modules-scopepostcss-modules-local-by-defaultpostcss-modules-valuesprocesspromise-inflightprivatepinkie-promiseportfinderpostcss-selector-parserpumpprrprop-typesprocess-nextick-argsprelude-lsprogresspunycodequerystring-es3proxy-addrpumpifyquerystringquerystringifyqsquill-deltapublic-encryptrandomfillreact-isrange-parserquillreadable-streamread-pkgraw-bodyread-pkg-uprandombytesregenerator-transformregenerateregjsgenregex-notregexpu-corereaddirpregjsparserrepeat-elementrepeatingrepeat-stringregenerator-runtimeremove-trailing-separatorrequires-portresolve-fromrequire-directoryresolve-dirresolveregexp.prototype.flagsrequire-main-filenameretregexppresolve-cwdresolve-urlrestore-cursorrun-queuesafe-bufferripemd160select-hoserun-asyncserialize-javascriptretryrimrafsafer-buffersafe-regexsemverset-valueset-blockingsetimmediateserve-indexselfsignedshebang-regexshebang-commandsignal-exitslashsetprototypeofrxjssha.jsserve-staticsource-list-mapsnapdragonside-channelsnapdragon-nodeslice-ansisource-map-resolvesource-mapspdx-correctsockjs-clientsource-map-urlshelljsspdx-expression-parsesnapdragon-utilspdy-transportsource-map-supportspdx-exceptionssockjsstatic-extendsplit-stringschema-utilssprintf-jsstatusessendspdystream-httpstring-widthstream-shiftspdx-license-idsssristream-eachstream-browserifystring.prototype.matchallstrip-ansistring_decodersupports-colorstring.prototype.trimrightstring.prototype.trimleftstrip-eofstring.prototype.trimendtapableterserstrip-bomthroughstring.prototype.trimstartthunkythrough2timers-browserifytmptext-tableto-arraybufferto-object-pathtrim-rightto-fast-propertiesstrip-json-commentstty-browserifytoidentifiertype-festto-regexunion-valuetype-isuniqto-regex-rangeunique-filenameunpipetype-checkunset-valueunique-slugurixtsliburi-jstableusetypedarrayupathurlutil-deprecateutilutils-mergevalidate-npm-package-licensewatchpackvm-browserifyv8-compile-cachewbufvarywebpack-sourceswebpack-dev-middlewareuuidwebpack-logwebsocket-extensionswebsocket-driverwhich-moduleword-wrapwrappyworker-farmy18nwrap-ansiwhichxregexpurl-parseyargs-parserwsyallistyargswritextend
2.0.0

1 month ago