@vueup/vue-quill 1.1.1 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,13 +1,13 @@
1
1
  /*!
2
- * VueQuill @vueup/vue-quill v1.1.1
2
+ * VueQuill @vueup/vue-quill v1.2.1
3
3
  * https://vueup.github.io/vue-quill/
4
4
  *
5
5
  * Includes quill v1.3.7
6
6
  * https://quilljs.com/
7
7
  *
8
- * Copyright (c) 2023 Ahmad Luthfi Masruri
8
+ * Copyright (c) 2026 Ahmad Luthfi Masruri
9
9
  * Released under the MIT license
10
- * Date: 2023-03-08T12:39:52.151Z
10
+ * Date: 2026-06-01T03:41:54.233Z
11
11
  */
12
12
  'use strict';
13
13
 
@@ -130,6 +130,14 @@ const QuillEditor = vue.defineComponent({
130
130
  let quill;
131
131
  let options;
132
132
  const editor = vue.ref();
133
+ // Register Module if not already registered
134
+ const registerModule = (moduleName, module) => {
135
+ const quillImports = Quill__default.imports;
136
+ if (quillImports && moduleName in quillImports) {
137
+ return;
138
+ }
139
+ Quill__default.register(moduleName, module);
140
+ };
133
141
  // Initialize Quill
134
142
  const initialize = () => {
135
143
  var _a;
@@ -140,11 +148,11 @@ const QuillEditor = vue.defineComponent({
140
148
  if (props.modules) {
141
149
  if (Array.isArray(props.modules)) {
142
150
  for (const module of props.modules) {
143
- Quill__default.register(`modules/${module.name}`, module.module);
151
+ registerModule(`modules/${module.name}`, module.module);
144
152
  }
145
153
  }
146
154
  else {
147
- Quill__default.register(`modules/${props.modules.name}`, props.modules.module);
155
+ registerModule(`modules/${props.modules.name}`, props.modules.module);
148
156
  }
149
157
  }
150
158
  // Create new Quill instance
@@ -281,7 +289,7 @@ const QuillEditor = vue.defineComponent({
281
289
  if (quill)
282
290
  return quill;
283
291
  else
284
- throw `The quill editor hasn't been instantiated yet,
292
+ throw `The quill editor hasn't been instantiated yet,
285
293
  make sure to call this method when the editor ready
286
294
  or use v-on:ready="onReady(quill)" event instead.`;
287
295
  };
@@ -331,6 +339,9 @@ const QuillEditor = vue.defineComponent({
331
339
  if (delta)
332
340
  quill === null || quill === void 0 ? void 0 : quill.setContents(delta, source);
333
341
  };
342
+ const focus = () => {
343
+ quill === null || quill === void 0 ? void 0 : quill.focus();
344
+ };
334
345
  const reinit = () => {
335
346
  vue.nextTick(() => {
336
347
  var _a;
@@ -363,6 +374,7 @@ const QuillEditor = vue.defineComponent({
363
374
  getHTML,
364
375
  setHTML,
365
376
  pasteHTML,
377
+ focus,
366
378
  getText,
367
379
  setText,
368
380
  reinit,
@@ -1,12 +1,12 @@
1
1
  /*!
2
- * VueQuill @vueup/vue-quill v1.1.1
2
+ * VueQuill @vueup/vue-quill v1.2.1
3
3
  * https://vueup.github.io/vue-quill/
4
4
  *
5
5
  * Includes quill v1.3.7
6
6
  * https://quilljs.com/
7
7
  *
8
- * Copyright (c) 2023 Ahmad Luthfi Masruri
8
+ * Copyright (c) 2026 Ahmad Luthfi Masruri
9
9
  * Released under the MIT license
10
- * Date: 2023-03-08T12:39:52.151Z
10
+ * Date: 2026-06-01T03:41:54.233Z
11
11
  */
12
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("quill"),t=require("quill-delta"),o=require("vue");function l(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var n=l(e),r=l(t);const i={essential:[[{header:[1,2,3,4,5,6,!1]}],["bold","italic","underline"],[{list:"ordered"},{list:"bullet"},{align:[]}],["blockquote","code-block","link"],[{color:[]},"clean"]],minimal:[[{header:1},{header:2}],["bold","italic","underline"],[{list:"ordered"},{list:"bullet"},{align:[]}]],full:[["bold","italic","underline","strike"],["blockquote","code-block"],[{header:1},{header:2}],[{list:"ordered"},{list:"bullet"}],[{script:"sub"},{script:"super"}],[{indent:"-1"},{indent:"+1"}],[{direction:"rtl"}],[{size:["small",!1,"large","huge"]}],[{header:[1,2,3,4,5,6,!1]}],[{color:[]},{background:[]}],[{font:[]}],[{align:[]}],["link","video","image"],["clean"]]},a=o.defineComponent({name:"QuillEditor",inheritAttrs:!1,props:{content:{type:[String,Object]},contentType:{type:String,default:"delta",validator:e=>["delta","html","text"].includes(e)},enable:{type:Boolean,default:!0},readOnly:{type:Boolean,default:!1},placeholder:{type:String,required:!1},theme:{type:String,default:"snow",validator:e=>["snow","bubble",""].includes(e)},toolbar:{type:[String,Array,Object],required:!1,validator:e=>"string"!=typeof e||""===e||("#"===e.charAt(0)||-1!==Object.keys(i).indexOf(e))},modules:{type:Object,required:!1},options:{type:Object,required:!1},globalOptions:{type:Object,required:!1}},emits:["textChange","selectionChange","editorChange","update:content","focus","blur","ready"],setup:(e,t)=>{let l,a;o.onMounted((()=>{d()})),o.onBeforeUnmount((()=>{l=null}));const s=o.ref(),d=()=>{var o;if(s.value){if(a=u(),e.modules)if(Array.isArray(e.modules))for(const t of e.modules)n.register(`modules/${t.name}`,t.module);else n.register(`modules/${e.modules.name}`,e.modules.module);l=new n(s.value,a),y(e.content),l.on("text-change",m),l.on("selection-change",g),l.on("editor-change",v),"bubble"!==e.theme&&s.value.classList.remove("ql-bubble"),"snow"!==e.theme&&s.value.classList.remove("ql-snow"),null===(o=l.getModule("toolbar"))||void 0===o||o.container.addEventListener("mousedown",(e=>{e.preventDefault()})),t.emit("ready",l)}},u=()=>{const t={};if(""!==e.theme&&(t.theme=e.theme),e.readOnly&&(t.readOnly=e.readOnly),e.placeholder&&(t.placeholder=e.placeholder),e.toolbar&&""!==e.toolbar&&(t.modules={toolbar:(()=>{if("object"==typeof e.toolbar)return e.toolbar;if("string"==typeof e.toolbar){return"#"===e.toolbar.charAt(0)?e.toolbar:i[e.toolbar]}})()}),e.modules){const o=(()=>{var t,o;const l={};if(Array.isArray(e.modules))for(const n of e.modules)l[n.name]=null!==(t=n.options)&&void 0!==t?t:{};else l[e.modules.name]=null!==(o=e.modules.options)&&void 0!==o?o:{};return l})();t.modules=Object.assign({},t.modules,o)}return Object.assign({},e.globalOptions,e.options,t)},c=e=>"object"==typeof e&&e?e.slice():e;let b;const p=e=>{if(typeof b==typeof e){if(e===b)return!0;if("object"==typeof e&&e&&"object"==typeof b&&b)return t=b.diff(e),!Object.values(t.ops).some((e=>!e.retain||1!==Object.keys(e).length))}var t;return!1},m=(o,l,n)=>{b=c(f()),p(e.content)||t.emit("update:content",b),t.emit("textChange",{delta:o,oldContents:l,source:n})},h=o.ref(),g=(e,o,n)=>{h.value=!!(null==l?void 0:l.hasFocus()),t.emit("selectionChange",{range:e,oldRange:o,source:n})};o.watch(h,(e=>{t.emit(e?"focus":"blur",s)}));const v=(...e)=>{"text-change"===e[0]&&t.emit("editorChange",{name:e[0],delta:e[1],oldContents:e[2],source:e[3]}),"selection-change"===e[0]&&t.emit("editorChange",{name:e[0],range:e[1],oldRange:e[2],source:e[3]})},f=(t,o)=>"html"===e.contentType?O():"text"===e.contentType?T(t,o):null==l?void 0:l.getContents(t,o),y=(t,o="api")=>{const n=t||("delta"===e.contentType?new r:"");"html"===e.contentType?j(n):"text"===e.contentType?x(n,o):null==l||l.setContents(n,o),b=c(n)},T=(e,t)=>{var o;return null!==(o=null==l?void 0:l.getText(e,t))&&void 0!==o?o:""},x=(e,t="api")=>{null==l||l.setText(e,t)},O=()=>{var e;return null!==(e=null==l?void 0:l.root.innerHTML)&&void 0!==e?e:""},j=e=>{l&&(l.root.innerHTML=e)};return o.watch((()=>e.content),(e=>{if(!l||!e||p(e))return;const t=l.getSelection();t&&o.nextTick((()=>null==l?void 0:l.setSelection(t))),y(e)}),{deep:!0}),o.watch((()=>e.enable),(e=>{l&&l.enable(e)})),{editor:s,getEditor:()=>s.value,getToolbar:()=>{var e;return null===(e=null==l?void 0:l.getModule("toolbar"))||void 0===e?void 0:e.container},getQuill:()=>{if(l)return l;throw'The quill editor hasn\'t been instantiated yet, \n make sure to call this method when the editor ready\n or use v-on:ready="onReady(quill)" event instead.'},getContents:f,setContents:y,getHTML:O,setHTML:j,pasteHTML:(e,t="api")=>{const o=null==l?void 0:l.clipboard.convert(e);o&&(null==l||l.setContents(o,t))},getText:T,setText:x,reinit:()=>{o.nextTick((()=>{var e;!t.slots.toolbar&&l&&(null===(e=l.getModule("toolbar"))||void 0===e||e.container.remove()),d()}))}}},render(){var e,t;return[null===(t=(e=this.$slots).toolbar)||void 0===t?void 0:t.call(e),o.h("div",{ref:"editor",...this.$attrs})]}});exports.Quill=n,exports.Delta=r,exports.QuillEditor=a;
12
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("quill"),t=require("quill-delta"),o=require("vue");function l(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var n=l(e),r=l(t);const i={essential:[[{header:[1,2,3,4,5,6,!1]}],["bold","italic","underline"],[{list:"ordered"},{list:"bullet"},{align:[]}],["blockquote","code-block","link"],[{color:[]},"clean"]],minimal:[[{header:1},{header:2}],["bold","italic","underline"],[{list:"ordered"},{list:"bullet"},{align:[]}]],full:[["bold","italic","underline","strike"],["blockquote","code-block"],[{header:1},{header:2}],[{list:"ordered"},{list:"bullet"}],[{script:"sub"},{script:"super"}],[{indent:"-1"},{indent:"+1"}],[{direction:"rtl"}],[{size:["small",!1,"large","huge"]}],[{header:[1,2,3,4,5,6,!1]}],[{color:[]},{background:[]}],[{font:[]}],[{align:[]}],["link","video","image"],["clean"]]},a=o.defineComponent({name:"QuillEditor",inheritAttrs:!1,props:{content:{type:[String,Object]},contentType:{type:String,default:"delta",validator:e=>["delta","html","text"].includes(e)},enable:{type:Boolean,default:!0},readOnly:{type:Boolean,default:!1},placeholder:{type:String,required:!1},theme:{type:String,default:"snow",validator:e=>["snow","bubble",""].includes(e)},toolbar:{type:[String,Array,Object],required:!1,validator:e=>"string"!=typeof e||""===e||("#"===e.charAt(0)||-1!==Object.keys(i).indexOf(e))},modules:{type:Object,required:!1},options:{type:Object,required:!1},globalOptions:{type:Object,required:!1}},emits:["textChange","selectionChange","editorChange","update:content","focus","blur","ready"],setup:(e,t)=>{let l,a;o.onMounted((()=>{u()})),o.onBeforeUnmount((()=>{l=null}));const s=o.ref(),d=(e,t)=>{const o=n.imports;o&&e in o||n.register(e,t)},u=()=>{var o;if(s.value){if(a=c(),e.modules)if(Array.isArray(e.modules))for(const t of e.modules)d(`modules/${t.name}`,t.module);else d(`modules/${e.modules.name}`,e.modules.module);l=new n(s.value,a),T(e.content),l.on("text-change",h),l.on("selection-change",f),l.on("editor-change",g),"bubble"!==e.theme&&s.value.classList.remove("ql-bubble"),"snow"!==e.theme&&s.value.classList.remove("ql-snow"),null===(o=l.getModule("toolbar"))||void 0===o||o.container.addEventListener("mousedown",(e=>{e.preventDefault()})),t.emit("ready",l)}},c=()=>{const t={};if(""!==e.theme&&(t.theme=e.theme),e.readOnly&&(t.readOnly=e.readOnly),e.placeholder&&(t.placeholder=e.placeholder),e.toolbar&&""!==e.toolbar&&(t.modules={toolbar:(()=>{if("object"==typeof e.toolbar)return e.toolbar;if("string"==typeof e.toolbar){return"#"===e.toolbar.charAt(0)?e.toolbar:i[e.toolbar]}})()}),e.modules){const o=(()=>{var t,o;const l={};if(Array.isArray(e.modules))for(const n of e.modules)l[n.name]=null!==(t=n.options)&&void 0!==t?t:{};else l[e.modules.name]=null!==(o=e.modules.options)&&void 0!==o?o:{};return l})();t.modules=Object.assign({},t.modules,o)}return Object.assign({},e.globalOptions,e.options,t)},b=e=>"object"==typeof e&&e?e.slice():e;let p;const m=e=>{if(typeof p==typeof e){if(e===p)return!0;if("object"==typeof e&&e&&"object"==typeof p&&p)return t=p.diff(e),!Object.values(t.ops).some((e=>!e.retain||1!==Object.keys(e).length))}var t;return!1},h=(o,l,n)=>{p=b(y()),m(e.content)||t.emit("update:content",p),t.emit("textChange",{delta:o,oldContents:l,source:n})},v=o.ref(),f=(e,o,n)=>{v.value=!!(null==l?void 0:l.hasFocus()),t.emit("selectionChange",{range:e,oldRange:o,source:n})};o.watch(v,(e=>{t.emit(e?"focus":"blur",s)}));const g=(...e)=>{"text-change"===e[0]&&t.emit("editorChange",{name:e[0],delta:e[1],oldContents:e[2],source:e[3]}),"selection-change"===e[0]&&t.emit("editorChange",{name:e[0],range:e[1],oldRange:e[2],source:e[3]})},y=(t,o)=>"html"===e.contentType?j():"text"===e.contentType?x(t,o):null==l?void 0:l.getContents(t,o),T=(t,o="api")=>{const n=t||("delta"===e.contentType?new r:"");"html"===e.contentType?q(n):"text"===e.contentType?O(n,o):null==l||l.setContents(n,o),p=b(n)},x=(e,t)=>{var o;return null!==(o=null==l?void 0:l.getText(e,t))&&void 0!==o?o:""},O=(e,t="api")=>{null==l||l.setText(e,t)},j=()=>{var e;return null!==(e=null==l?void 0:l.root.innerHTML)&&void 0!==e?e:""},q=e=>{l&&(l.root.innerHTML=e)};return o.watch((()=>e.content),(e=>{if(!l||!e||m(e))return;const t=l.getSelection();t&&o.nextTick((()=>null==l?void 0:l.setSelection(t))),T(e)}),{deep:!0}),o.watch((()=>e.enable),(e=>{l&&l.enable(e)})),{editor:s,getEditor:()=>s.value,getToolbar:()=>{var e;return null===(e=null==l?void 0:l.getModule("toolbar"))||void 0===e?void 0:e.container},getQuill:()=>{if(l)return l;throw'The quill editor hasn\'t been instantiated yet,\n make sure to call this method when the editor ready\n or use v-on:ready="onReady(quill)" event instead.'},getContents:y,setContents:T,getHTML:j,setHTML:q,pasteHTML:(e,t="api")=>{const o=null==l?void 0:l.clipboard.convert(e);o&&(null==l||l.setContents(o,t))},focus:()=>{null==l||l.focus()},getText:x,setText:O,reinit:()=>{o.nextTick((()=>{var e;!t.slots.toolbar&&l&&(null===(e=l.getModule("toolbar"))||void 0===e||e.container.remove()),u()}))}}},render(){var e,t;return[null===(t=(e=this.$slots).toolbar)||void 0===t?void 0:t.call(e),o.h("div",{ref:"editor",...this.$attrs})]}});exports.Quill=n,exports.Delta=r,exports.QuillEditor=a;
@@ -76,6 +76,7 @@ setContents: (content: ContentPropType, source?: Sources) => void;
76
76
  getHTML: () => string;
77
77
  setHTML: (html: string) => void;
78
78
  pasteHTML: (html: string, source?: Sources) => void;
79
+ focus: () => void;
79
80
  getText: (index?: number, length?: number) => string;
80
81
  setText: (text: string, source?: Sources) => void;
81
82
  reinit: () => void;
@@ -1,13 +1,13 @@
1
1
  /*!
2
- * VueQuill @vueup/vue-quill v1.1.1
2
+ * VueQuill @vueup/vue-quill v1.2.1
3
3
  * https://vueup.github.io/vue-quill/
4
4
  *
5
5
  * Includes quill v1.3.7
6
6
  * https://quilljs.com/
7
7
  *
8
- * Copyright (c) 2023 Ahmad Luthfi Masruri
8
+ * Copyright (c) 2026 Ahmad Luthfi Masruri
9
9
  * Released under the MIT license
10
- * Date: 2023-03-08T12:39:52.151Z
10
+ * Date: 2026-06-01T03:41:54.233Z
11
11
  */
12
12
  import { defineComponent, onMounted, onBeforeUnmount, ref, watch, nextTick, h } from 'vue';
13
13
 
@@ -18523,6 +18523,14 @@ const QuillEditor = defineComponent({
18523
18523
  let quill;
18524
18524
  let options;
18525
18525
  const editor = ref();
18526
+ // Register Module if not already registered
18527
+ const registerModule = (moduleName, module) => {
18528
+ const quillImports = Quill.imports;
18529
+ if (quillImports && moduleName in quillImports) {
18530
+ return;
18531
+ }
18532
+ Quill.register(moduleName, module);
18533
+ };
18526
18534
  // Initialize Quill
18527
18535
  const initialize = () => {
18528
18536
  var _a;
@@ -18533,11 +18541,11 @@ const QuillEditor = defineComponent({
18533
18541
  if (props.modules) {
18534
18542
  if (Array.isArray(props.modules)) {
18535
18543
  for (const module of props.modules) {
18536
- Quill.register(`modules/${module.name}`, module.module);
18544
+ registerModule(`modules/${module.name}`, module.module);
18537
18545
  }
18538
18546
  }
18539
18547
  else {
18540
- Quill.register(`modules/${props.modules.name}`, props.modules.module);
18548
+ registerModule(`modules/${props.modules.name}`, props.modules.module);
18541
18549
  }
18542
18550
  }
18543
18551
  // Create new Quill instance
@@ -18674,7 +18682,7 @@ const QuillEditor = defineComponent({
18674
18682
  if (quill)
18675
18683
  return quill;
18676
18684
  else
18677
- throw `The quill editor hasn't been instantiated yet,
18685
+ throw `The quill editor hasn't been instantiated yet,
18678
18686
  make sure to call this method when the editor ready
18679
18687
  or use v-on:ready="onReady(quill)" event instead.`;
18680
18688
  };
@@ -18724,6 +18732,9 @@ const QuillEditor = defineComponent({
18724
18732
  if (delta)
18725
18733
  quill === null || quill === void 0 ? void 0 : quill.setContents(delta, source);
18726
18734
  };
18735
+ const focus = () => {
18736
+ quill === null || quill === void 0 ? void 0 : quill.focus();
18737
+ };
18727
18738
  const reinit = () => {
18728
18739
  nextTick(() => {
18729
18740
  var _a;
@@ -18756,6 +18767,7 @@ const QuillEditor = defineComponent({
18756
18767
  getHTML,
18757
18768
  setHTML,
18758
18769
  pasteHTML,
18770
+ focus,
18759
18771
  getText,
18760
18772
  setText,
18761
18773
  reinit,