quill-table-up 0.1.1 → 0.1.2
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.
- package/README.md +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ interface ToolOptionBreak {
|
|
|
13
13
|
type Tool = ToolOption | ToolOptionBreak;
|
|
14
14
|
interface TableSelectionOptions {
|
|
15
15
|
selectColor: string;
|
|
16
|
+
tipText?: boolean;
|
|
16
17
|
tools: Tool[];
|
|
17
18
|
}
|
|
18
19
|
interface TableTextOptions {
|
|
@@ -47,6 +48,7 @@ declare class TableSelection {
|
|
|
47
48
|
constructor(tableModule: TableUp, quill: Quill, options?: Partial<TableSelectionOptions>);
|
|
48
49
|
resolveOptions: (options: Partial<TableSelectionOptions>) => {
|
|
49
50
|
selectColor: string;
|
|
51
|
+
tipText: boolean;
|
|
50
52
|
tools: Tool[];
|
|
51
53
|
} & Partial<TableSelectionOptions>;
|
|
52
54
|
buildTools: () => HTMLDivElement;
|
|
@@ -74,6 +76,7 @@ declare class TableUp extends TableModule {
|
|
|
74
76
|
colText: string;
|
|
75
77
|
notPositiveNumberError: string;
|
|
76
78
|
} & Record<string, string>;
|
|
79
|
+
selection: {};
|
|
77
80
|
} & Record<string, any>;
|
|
78
81
|
resolveTexts: (options: Record<string, string>) => {
|
|
79
82
|
customBtn: string;
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"quill";const t=(e,t)=>{t.type||(t.type="text"),t.value||(t.value="");const s=document.createElement("div");if(s.classList.add("input__item"),e){const t=document.createElement("span");t.classList.add("input__label"),t.textContent=e,s.appendChild(t)}const o=document.createElement("div");o.classList.add("input__input");const l=document.createElement("input");for(const e in t)l.setAttribute(e,t[e]);(t.max||t.min)&&l.addEventListener("blur",(()=>{t.max&&t.max<=Number(l.value)&&(l.value=String(t.max)),t.min&&t.min>=Number(l.value)&&(l.value=String(t.min))})),o.appendChild(l),s.appendChild(o),l.addEventListener("focus",(()=>{o.classList.add("focus")})),l.addEventListener("blur",(()=>{o.classList.remove("focus")}));return{item:s,input:l,errorTip:e=>{let t;o.classList.contains("error")?t=o.querySelector(".input__error-tip"):(t=document.createElement("span"),t.classList.add("input__error-tip"),o.appendChild(t)),t.textContent=e,o.classList.add("error");return{removeError:()=>{o.classList.remove("error"),t.remove()}}}}};let s=8e3;const o=async(e={})=>{const o=document.createElement("div");o.classList.add("table-creator");const l=document.createElement("div");l.classList.add("table-creator__input");const{item:i,input:n,errorTip:r}=t(e.rowText||"行数",{type:"number",value:String(e.row||""),max:99}),{item:a,input:c,errorTip:d}=t(e.colText||"列数",{type:"number",value:String(e.col||""),max:99});l.appendChild(i),l.appendChild(a),o.appendChild(l);const h=document.createElement("div");h.classList.add("table-creator__control");const m=document.createElement("button");m.classList.add("table-creator__btn","confirm"),m.textContent=e.confirmText||"Confirm";const u=document.createElement("button");return u.classList.add("table-creator__btn","cancel"),u.textContent=e.cancelText||"Cancel",h.appendChild(m),h.appendChild(u),o.appendChild(h),new Promise(((t,l)=>{const{close:i}=(({child:e,target:t=document.body,beforeClose:o=()=>{}}={})=>{const l=t,i=document.createElement("div");i.classList.add("dialog"),i.style.zIndex=String(s);const n=document.createElement("div");if(n.classList.add("dialog__overlay"),i.appendChild(n),e){const t=document.createElement("div");t.classList.add("dialog__content"),t.appendChild(e),n.appendChild(t),t.addEventListener("click",(e=>{e.stopPropagation()}))}const r=getComputedStyle(l).overflow;l.style.overflow="hidden",l.appendChild(i);const a=()=>{o(),i.remove(),l.style.overflow=r};return i.addEventListener("click",a),s+=1,{dialog:i,close:a}})({child:o,beforeClose:l});m.addEventListener("click",(async()=>{const s=Number(n.value),o=Number(c.value);return Number.isNaN(s)||s<=0?r(e.notPositiveNumberError||"请输入正整数"):Number.isNaN(o)||o<=0?d(e.notPositiveNumberError||"请输入正整数"):(t({row:s,col:o}),void i())})),u.addEventListener("click",(()=>{i()}))}))},l=(e,t={})=>{const{msg:s="",delay:o=0}=t,l=document.createElement("div");if(l.classList.add("tool-tip"),l.appendChild(e),s){const e=document.createElement("div");e.classList.add("tool-tip__text"),e.classList.add("hidden"),e.textContent=s,l.appendChild(e);let t=null;l.addEventListener("mouseenter",(()=>{t&&clearTimeout(t),t=setTimeout((()=>{e.classList.remove("hidden")}),o)})),l.addEventListener("mouseleave",(()=>{t&&clearTimeout(t),t=setTimeout((()=>{e.classList.add("hidden"),t=null}),o)}))}return l},i=e=>"function"==typeof e;const n=e.import("formats/table"),r=[{name:"InsertTop",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 3h14a2 2 0 0 1 2 2v7.08a6 6 0 0 0-4.32.92H12v4h1.08c-.11.68-.11 1.35 0 2H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2m0 4v4h6V7zm8 0v4h6V7zm-8 6v4h6v-4zm17.94 4.5h-2v4h-2v-4h-2l3-3z"/></svg>',tip:"向上插入一行",handle:e=>{e.insertRow(0)}},{name:"InsertRight",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 3h14a2 2 0 0 1 2 2v7.08a6 6 0 0 0-4.32.92H12v4h1.08c-.11.68-.11 1.35 0 2H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2m0 4v4h6V7zm8 0v4h6V7zm-8 6v4h6v-4zm15.44 8v-2h-4v-2h4v-2l3 3z"/></svg>',tip:"向右插入一列",handle:e=>{e.insertColumn(1)}},{name:"InsertBottom",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 3h14a2 2 0 0 1 2 2v7.08a6 6 0 0 0-4.32.92H12v4h1.08c-.11.68-.11 1.35 0 2H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2m0 4v4h6V7zm8 0v4h6V7zm-8 6v4h6v-4zm11.94 5.5h2v-4h2v4h2l-3 3z"/></svg>',tip:"向下插入一行",handle:e=>{e.insertRow(1)}},{name:"InsertLeft",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 3h14a2 2 0 0 1 2 2v7.08a6 6 0 0 0-4.32.92H12v4h1.08c-.11.68-.11 1.35 0 2H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2m0 4v4h6V7zm8 0v4h6V7zm-8 6v4h6v-4zm14.44 2v2h4v2h-4v2l-3-3z"/></svg>',tip:"向左插入一列",handle:e=>{e.insertColumn(0)}},{name:"break"},{name:"DeleteRow",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M9.41 13L12 15.59L14.59 13L16 14.41L13.41 17L16 19.59L14.59 21L12 18.41L9.41 21L8 19.59L10.59 17L8 14.41zM22 9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2zM4 9h4V6H4zm6 0h4V6h-4zm6 0h4V6h-4z"/></svg>',tip:"删除当前行",handle:e=>{e.deleteRow()}},{name:"DeleteColumn",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 2h7a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2m0 8v4h7v-4zm0 6v4h7v-4zM4 4v4h7V4zm13.59 8L15 9.41L16.41 8L19 10.59L21.59 8L23 9.41L20.41 12L23 14.59L21.59 16L19 13.41L16.41 16L15 14.59z"/></svg>',tip:"删除当前列",handle:e=>{e.deleteColumn()}},{name:"DeleteTable",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="m15.46 15.88l1.42-1.42L19 16.59l2.12-2.13l1.42 1.42L20.41 18l2.13 2.12l-1.42 1.42L19 19.41l-2.12 2.13l-1.42-1.42L17.59 18zM4 3h14a2 2 0 0 1 2 2v7.08a6 6 0 0 0-4.32.92H12v4h1.08c-.11.68-.11 1.35 0 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2m0 4v4h6V7zm8 0v4h6V7zm-8 6v4h6v-4z"/></svg>',tip:"删除当前表格",handle:e=>{e.deleteTable()}},{name:"break"},{name:"Background",icon:'<label class="table-color-picker" style="display: flex"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m11 7l6 6M4 16L15.7 4.3a1 1 0 0 1 1.4 0l2.6 2.6a1 1 0 0 1 0 1.4L8 20H4z"/></svg></label>',tip:"设置背景颜色",handle:e=>{const t=e.selection.selectTool.querySelector(".table-color-picker");if(!t)return;let s=t.querySelector("input");s||(s=document.createElement("input"),s.type="color",Object.assign(s.style,{width:0,height:0,padding:0,border:0}),s.addEventListener("input",(()=>{e.setBackgroundColor(s.value)})),t.appendChild(s))}}],a=e=>{const t=Number.parseFloat(e);return Number.isNaN(t)?0:t};class c{tableModule;quill;options;tableBlot=null;selectTd=null;cellSelect;boundary=null;selectTool;constructor(t,s,o={}){this.tableModule=t,this.quill=s,this.options=this.resolveOptions(o),this.cellSelect=this.quill.addContainer("ql-table-selection"),this.selectTool=this.buildTools(),this.quill.root.addEventListener("scroll",this.destory),this.quill.on(e.events.EDITOR_CHANGE,(()=>{this.updateSelectBox()}))}resolveOptions=e=>Object.assign({selectColor:"#0589f3",tools:r},e);buildTools=()=>{const e=this.quill.addContainer("ql-table-selection-tool");for(const t of this.options.tools){const{name:s,icon:o,handle:n,tip:r=""}=t;let a=document.createElement("span");a.classList.add("ql-table-selection-item"),"break"===s?a.classList.add("break"):(a.classList.add("icon"),a.innerHTML=o,i(n)&&a.addEventListener("click",(e=>{this.quill.focus(),n(this.tableModule,e)})),r&&(a=l(a,{msg:r,delay:150}))),e.appendChild(a)}return e};remove=()=>{Object.assign(this.cellSelect.style,{display:"none"}),Object.assign(this.selectTool.style,{display:"none"}),this.selectTd=null};destory=()=>{this.remove(),this.tableBlot=null};updateSelectBox=()=>{const e=this.quill.getSelection();if(!e)return this.destory();const[t]=this.quill.scroll.descendant(n,e.index);if(!t)return this.destory();if(this.selectTd=t,!this.selectTd)return this.destory();const s=this.quill.container.getBoundingClientRect();this.boundary=((e,t)=>({x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}))(this.selectTd.domNode.getBoundingClientRect(),s),Object.assign(this.cellSelect.style,{"border-color":this.options.selectColor,display:"block",left:this.boundary.x-1+"px",top:this.boundary.y-1+"px",width:`${this.boundary.width+1}px`,height:`${this.boundary.height+1}px`}),Object.assign(this.selectTool.style,{display:"flex",left:this.boundary.x+this.boundary.width/2-1+"px",top:`${this.boundary.y+this.boundary.height}px`,transform:"translate(-50%, 20%)"});const{paddingLeft:o,paddingRight:l}=getComputedStyle(this.quill.root),i=this.selectTool.getBoundingClientRect();i.right>s.right-a(l)?Object.assign(this.selectTool.style,{left:s.right-s.left-i.width-a(l)-1-12+"px",transform:"translate(0%, 100%)"}):i.left<a(o)&&Object.assign(this.selectTool.style,{left:`${a(o)+1+12}px`,transform:"translate(0%, 100%)"})}}const d=e.import("parchment"),h=new d.StyleAttributor("block-background-color","background-color",{scope:d.Scope.BLOCK}),m=e.import("ui/icons"),u=e.import("modules/table");class p extends u{static register(){super.register(),e.register({"formats/block-background-color":h},!0)}constructor(e,t){super(e,t),this.options=this.resolveOptions(t||{});const s=this.quill.getModule("toolbar"),[,o]=(s.controls||[]).find((([e])=>"table"===e))||[];if(o&&"select"===o.tagName.toLocaleLowerCase()){if(this.picker=this.quill.theme.pickers.find((e=>e.select===o)),!this.picker)return;this.picker.label.innerHTML=m.table,this.buildCustomSelect(this.options.customSelect),this.picker.label.addEventListener("mousedown",this.handleInViewport)}this.selection=new c(this,this.quill,this.options.selection)}handleInViewport=()=>{if(this.selector.getBoundingClientRect().right>=window.innerWidth){const e=this.picker.label.getBoundingClientRect();this.picker.options.style.transform=`translateX(calc(-100% + ${e.width}px))`}else this.picker.options.style.transform=void 0};resolveOptions=e=>Object.assign({isCustom:!0,texts:this.resolveTexts(e.texts||{})},e);resolveTexts=e=>Object.assign({customBtn:"自定义行列数",confirmText:"确认",cancelText:"取消",rowText:"行数",colText:"列数",notPositiveNumberError:"请输入正整数"},e);buildCustomSelect=async e=>{const t=document.createElement("div");t.classList.add("ql-custom-select"),this.selector=e&&i(e)?await e(this):this.createSelect(),t.appendChild(this.selector),this.picker.options.appendChild(t)};createSelect=()=>((e={})=>{const t=document.createElement("div");t.classList.add("select-box");const s=document.createElement("div");s.classList.add("select-box__block");for(let t=0;t<(e.row||8);t++)for(let o=0;o<(e.col||8);o++){const e=document.createElement("div");e.classList.add("select-box__item"),e.dataset.row=String(t+1),e.dataset.col=String(o+1),s.appendChild(e)}const l=()=>{const{row:e,col:o}=t.dataset;for(const e of Array.from(s.querySelectorAll(".active")))e.classList.remove("active");if(!e||!o)return;const l=Array.from(s.children);for(let t=0;t<l.length;t++){const{row:s,col:i}=l[t].dataset;if(s>e&&i>o)return;s<=e&&i<=o?l[t].classList.add("active"):l[t].classList.remove("active")}};if(s.addEventListener("mousemove",(e=>{if(!e.target)return;const{row:s,col:o}=e.target.dataset;s&&o&&(t.dataset.row=s,t.dataset.col=o,l())})),s.addEventListener("mouseleave",(()=>{t.removeAttribute("data-row"),t.removeAttribute("data-col"),l()})),s.addEventListener("click",(()=>{const{row:s,col:o}=t.dataset;s&&o&&e.onSelect&&e.onSelect(Number(s),Number(o))})),t.appendChild(s),e.isCustom){const s=e.texts||{},l=document.createElement("div");l.classList.add("select-box__custom"),l.textContent=s.customBtnText||"自定义行列数",l.addEventListener("click",(async()=>{const t=await o(s);t&&e.onSelect&&e.onSelect(t.row,t.col)})),t.appendChild(l)}return t})({onSelect:(e,t)=>{this.insertTable(e,t),this.picker.close()},isCustom:this.options.isCustom,texts:this.options.texts});setBackgroundColor=e=>{const t=this.quill.getSelection();if(!t)return;const s=this.getTable(t)[2];null!==s&&s.format("block-background-color",e)};insertTable=(e,t)=>{this.quill.focus(),super.insertTable(e,t)}}export{h as BlockBackground,c as TableSelection,p as default};
|
|
1
|
+
import e from"quill";const t=(e,t)=>{t.type||(t.type="text"),t.value||(t.value="");const s=document.createElement("div");if(s.classList.add("input__item"),e){const t=document.createElement("span");t.classList.add("input__label"),t.textContent=e,s.appendChild(t)}const o=document.createElement("div");o.classList.add("input__input");const i=document.createElement("input");for(const e in t)i.setAttribute(e,t[e]);(t.max||t.min)&&i.addEventListener("blur",(()=>{t.max&&t.max<=Number(i.value)&&(i.value=String(t.max)),t.min&&t.min>=Number(i.value)&&(i.value=String(t.min))})),o.appendChild(i),s.appendChild(o),i.addEventListener("focus",(()=>{o.classList.add("focus")})),i.addEventListener("blur",(()=>{o.classList.remove("focus")}));return{item:s,input:i,errorTip:e=>{let t;o.classList.contains("error")?t=o.querySelector(".input__error-tip"):(t=document.createElement("span"),t.classList.add("input__error-tip"),o.appendChild(t)),t.textContent=e,o.classList.add("error");return{removeError:()=>{o.classList.remove("error"),t.remove()}}}}};let s=8e3;const o=async(e={})=>{const o=document.createElement("div");o.classList.add("table-creator");const i=document.createElement("div");i.classList.add("table-creator__input");const{item:l,input:n,errorTip:r}=t(e.rowText||"行数",{type:"number",value:String(e.row||""),max:99}),{item:a,input:c,errorTip:d}=t(e.colText||"列数",{type:"number",value:String(e.col||""),max:99});i.appendChild(l),i.appendChild(a),o.appendChild(i);const h=document.createElement("div");h.classList.add("table-creator__control");const m=document.createElement("button");m.classList.add("table-creator__btn","confirm"),m.textContent=e.confirmText||"Confirm";const u=document.createElement("button");return u.classList.add("table-creator__btn","cancel"),u.textContent=e.cancelText||"Cancel",h.appendChild(m),h.appendChild(u),o.appendChild(h),new Promise(((t,i)=>{const{close:l}=(({child:e,target:t=document.body,beforeClose:o=()=>{}}={})=>{const i=t,l=document.createElement("div");l.classList.add("dialog"),l.style.zIndex=String(s);const n=document.createElement("div");if(n.classList.add("dialog__overlay"),l.appendChild(n),e){const t=document.createElement("div");t.classList.add("dialog__content"),t.appendChild(e),n.appendChild(t),t.addEventListener("click",(e=>{e.stopPropagation()}))}const r=getComputedStyle(i).overflow;i.style.overflow="hidden",i.appendChild(l);const a=()=>{o(),l.remove(),i.style.overflow=r};return l.addEventListener("click",a),s+=1,{dialog:l,close:a}})({child:o,beforeClose:i});m.addEventListener("click",(async()=>{const s=Number(n.value),o=Number(c.value);return Number.isNaN(s)||s<=0?r(e.notPositiveNumberError||"请输入正整数"):Number.isNaN(o)||o<=0?d(e.notPositiveNumberError||"请输入正整数"):(t({row:s,col:o}),void l())})),u.addEventListener("click",(()=>{l()}))}))},i=(e,t={})=>{const{msg:s="",delay:o=0}=t,i=document.createElement("div");if(i.classList.add("tool-tip"),i.appendChild(e),s){const e=document.createElement("div");e.classList.add("tool-tip__text"),e.classList.add("hidden"),e.textContent=s,i.appendChild(e);let t=null;i.addEventListener("mouseenter",(()=>{t&&clearTimeout(t),t=setTimeout((()=>{e.classList.remove("hidden")}),o)})),i.addEventListener("mouseleave",(()=>{t&&clearTimeout(t),t=setTimeout((()=>{e.classList.add("hidden"),t=null}),o)}))}return i},l=e=>"function"==typeof e;const n=e.import("formats/table"),r=[{name:"InsertTop",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 3h14a2 2 0 0 1 2 2v7.08a6 6 0 0 0-4.32.92H12v4h1.08c-.11.68-.11 1.35 0 2H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2m0 4v4h6V7zm8 0v4h6V7zm-8 6v4h6v-4zm17.94 4.5h-2v4h-2v-4h-2l3-3z"/></svg>',tip:"向上插入一行",handle:e=>{e.insertRow(0)}},{name:"InsertRight",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 3h14a2 2 0 0 1 2 2v7.08a6 6 0 0 0-4.32.92H12v4h1.08c-.11.68-.11 1.35 0 2H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2m0 4v4h6V7zm8 0v4h6V7zm-8 6v4h6v-4zm15.44 8v-2h-4v-2h4v-2l3 3z"/></svg>',tip:"向右插入一列",handle:e=>{e.insertColumn(1)}},{name:"InsertBottom",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 3h14a2 2 0 0 1 2 2v7.08a6 6 0 0 0-4.32.92H12v4h1.08c-.11.68-.11 1.35 0 2H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2m0 4v4h6V7zm8 0v4h6V7zm-8 6v4h6v-4zm11.94 5.5h2v-4h2v4h2l-3 3z"/></svg>',tip:"向下插入一行",handle:e=>{e.insertRow(1)}},{name:"InsertLeft",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 3h14a2 2 0 0 1 2 2v7.08a6 6 0 0 0-4.32.92H12v4h1.08c-.11.68-.11 1.35 0 2H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2m0 4v4h6V7zm8 0v4h6V7zm-8 6v4h6v-4zm14.44 2v2h4v2h-4v2l-3-3z"/></svg>',tip:"向左插入一列",handle:e=>{e.insertColumn(0)}},{name:"break"},{name:"DeleteRow",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M9.41 13L12 15.59L14.59 13L16 14.41L13.41 17L16 19.59L14.59 21L12 18.41L9.41 21L8 19.59L10.59 17L8 14.41zM22 9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2zM4 9h4V6H4zm6 0h4V6h-4zm6 0h4V6h-4z"/></svg>',tip:"删除当前行",handle:e=>{e.deleteRow()}},{name:"DeleteColumn",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 2h7a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2m0 8v4h7v-4zm0 6v4h7v-4zM4 4v4h7V4zm13.59 8L15 9.41L16.41 8L19 10.59L21.59 8L23 9.41L20.41 12L23 14.59L21.59 16L19 13.41L16.41 16L15 14.59z"/></svg>',tip:"删除当前列",handle:e=>{e.deleteColumn()}},{name:"DeleteTable",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="m15.46 15.88l1.42-1.42L19 16.59l2.12-2.13l1.42 1.42L20.41 18l2.13 2.12l-1.42 1.42L19 19.41l-2.12 2.13l-1.42-1.42L17.59 18zM4 3h14a2 2 0 0 1 2 2v7.08a6 6 0 0 0-4.32.92H12v4h1.08c-.11.68-.11 1.35 0 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2m0 4v4h6V7zm8 0v4h6V7zm-8 6v4h6v-4z"/></svg>',tip:"删除当前表格",handle:e=>{e.deleteTable()}},{name:"break"},{name:"Background",icon:'<label class="table-color-picker" style="display: flex"><svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m11 7l6 6M4 16L15.7 4.3a1 1 0 0 1 1.4 0l2.6 2.6a1 1 0 0 1 0 1.4L8 20H4z"/></svg></label>',tip:"设置背景颜色",handle:e=>{const t=e.selection.selectTool.querySelector(".table-color-picker");if(!t)return;let s=t.querySelector("input");s||(s=document.createElement("input"),s.type="color",Object.assign(s.style,{width:0,height:0,padding:0,border:0,outline:"none",opacity:0}),s.addEventListener("input",(()=>{e.setBackgroundColor(s.value)})),t.appendChild(s))}}],a=e=>{const t=Number.parseFloat(e);return Number.isNaN(t)?0:t};class c{tableModule;quill;options;tableBlot=null;selectTd=null;cellSelect;boundary=null;selectTool;constructor(t,s,o={}){this.tableModule=t,this.quill=s,this.options=this.resolveOptions(o),this.cellSelect=this.quill.addContainer("ql-table-selection"),this.selectTool=this.buildTools(),this.quill.root.addEventListener("scroll",this.destory);new ResizeObserver(this.destory).observe(this.quill.root),this.quill.on(e.events.EDITOR_CHANGE,(()=>{this.updateSelectBox()}))}resolveOptions=e=>Object.assign({selectColor:"#0589f3",tipText:!0,tools:r},e);buildTools=()=>{const e=this.quill.addContainer("ql-table-selection-tool");for(const t of this.options.tools){const{name:s,icon:o,handle:n,tip:r=""}=t;let a=document.createElement("span");a.classList.add("ql-table-selection-item"),"break"===s?a.classList.add("break"):(a.classList.add("icon"),a.innerHTML=o,l(n)&&a.addEventListener("click",(e=>{this.quill.focus(),n(this.tableModule,e)})),this.options.tipText&&r&&(a=i(a,{msg:r,delay:150}))),e.appendChild(a)}return e};remove=()=>{Object.assign(this.cellSelect.style,{display:"none"}),Object.assign(this.selectTool.style,{display:"none"}),this.selectTd=null};destory=()=>{this.remove(),this.tableBlot=null};updateSelectBox=()=>{const e=this.quill.getSelection();if(!e)return this.destory();const[t]=this.quill.scroll.descendant(n,e.index);if(!t)return this.destory();if(this.selectTd=t,!this.selectTd)return this.destory();const s=this.quill.container.getBoundingClientRect();this.boundary=((e,t)=>({x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}))(this.selectTd.domNode.getBoundingClientRect(),s),Object.assign(this.cellSelect.style,{"border-color":this.options.selectColor,display:"block",left:this.boundary.x-1+"px",top:this.boundary.y-1+"px",width:`${this.boundary.width+1}px`,height:`${this.boundary.height+1}px`}),Object.assign(this.selectTool.style,{display:"flex",left:this.boundary.x+this.boundary.width/2-1+"px",top:`${this.boundary.y+this.boundary.height}px`,transform:"translate(-50%, 20%)"});const{paddingLeft:o,paddingRight:i}=getComputedStyle(this.quill.root),l=this.selectTool.getBoundingClientRect();l.right>s.right-a(i)?Object.assign(this.selectTool.style,{left:s.right-s.left-l.width-a(i)-1-12+"px",transform:"translate(0%, 20%)"}):l.left<a(o)&&Object.assign(this.selectTool.style,{left:`${a(o)+1+12}px`,transform:"translate(0%, 20%)"})}}const d=e.import("parchment"),h=new d.StyleAttributor("block-background-color","background-color",{scope:d.Scope.BLOCK}),m=e.import("ui/icons"),u=e.import("modules/table");class p extends u{static register(){super.register(),e.register({"formats/block-background-color":h},!0)}constructor(e,t){super(e,t),this.options=this.resolveOptions(t||{});const s=this.quill.getModule("toolbar"),[,o]=(s.controls||[]).find((([e])=>"table"===e))||[];if(o&&"select"===o.tagName.toLocaleLowerCase()){if(this.picker=this.quill.theme.pickers.find((e=>e.select===o)),!this.picker)return;this.picker.label.innerHTML=m.table,this.buildCustomSelect(this.options.customSelect),this.picker.label.addEventListener("mousedown",this.handleInViewport)}this.selection=new c(this,this.quill,this.options.selection)}handleInViewport=()=>{if(this.selector.getBoundingClientRect().right>=window.innerWidth){const e=this.picker.label.getBoundingClientRect();this.picker.options.style.transform=`translateX(calc(-100% + ${e.width}px))`}else this.picker.options.style.transform=void 0};resolveOptions=e=>Object.assign({isCustom:!0,texts:this.resolveTexts(e.texts||{}),selection:{}},e);resolveTexts=e=>Object.assign({customBtn:"自定义行列数",confirmText:"确认",cancelText:"取消",rowText:"行数",colText:"列数",notPositiveNumberError:"请输入正整数"},e);buildCustomSelect=async e=>{const t=document.createElement("div");t.classList.add("ql-custom-select"),this.selector=e&&l(e)?await e(this):this.createSelect(),t.appendChild(this.selector),this.picker.options.appendChild(t)};createSelect=()=>((e={})=>{const t=document.createElement("div");t.classList.add("select-box");const s=document.createElement("div");s.classList.add("select-box__block");for(let t=0;t<(e.row||8);t++)for(let o=0;o<(e.col||8);o++){const e=document.createElement("div");e.classList.add("select-box__item"),e.dataset.row=String(t+1),e.dataset.col=String(o+1),s.appendChild(e)}const i=()=>{const{row:e,col:o}=t.dataset;for(const e of Array.from(s.querySelectorAll(".active")))e.classList.remove("active");if(!e||!o)return;const i=Array.from(s.children);for(let t=0;t<i.length;t++){const{row:s,col:l}=i[t].dataset;if(s>e&&l>o)return;s<=e&&l<=o?i[t].classList.add("active"):i[t].classList.remove("active")}};if(s.addEventListener("mousemove",(e=>{if(!e.target)return;const{row:s,col:o}=e.target.dataset;s&&o&&(t.dataset.row=s,t.dataset.col=o,i())})),s.addEventListener("mouseleave",(()=>{t.removeAttribute("data-row"),t.removeAttribute("data-col"),i()})),s.addEventListener("click",(()=>{const{row:s,col:o}=t.dataset;s&&o&&e.onSelect&&e.onSelect(Number(s),Number(o))})),t.appendChild(s),e.isCustom){const s=e.texts||{},i=document.createElement("div");i.classList.add("select-box__custom"),i.textContent=s.customBtnText||"自定义行列数",i.addEventListener("click",(async()=>{const t=await o(s);t&&e.onSelect&&e.onSelect(t.row,t.col)})),t.appendChild(i)}return t})({onSelect:(e,t)=>{this.insertTable(e,t),this.picker.close()},isCustom:this.options.isCustom,texts:this.options.texts});setBackgroundColor=e=>{const t=this.quill.getSelection(!0);if(!t)return;const s=this.getTable(t)[2];null!==s&&s.format("block-background-color",e)};insertTable=(e,t)=>{this.quill.focus(),super.insertTable(e,t)}}export{h as BlockBackground,c as TableSelection,p as default};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/utils/components.ts","../src/utils/utils.ts","../src/modules/selection.ts","../src/modules/block-backgound.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null],"names":["createInputItem","label","options","type","value","inputItem","document","createElement","classList","add","inputLabel","textContent","appendChild","inputInput","input","key","setAttribute","max","min","addEventListener","Number","String","remove","item","errorTip","msg","contains","querySelector","removeError","zindex","showTableCreator","async","box","inputContent","rowItem","rowInput","rowErrorTip","rowText","row","colItem","colInput","colErrorTip","colText","col","control","confirmBtn","confirmText","cancelBtn","cancelText","Promise","resolve","reject","close","child","target","body","beforeClose","appendTo","dialog","style","zIndex","overlay","content","e","stopPropagation","originOverflow","getComputedStyle","overflow","createDialog","isNaN","notPositiveNumberError","createToolTip","delay","wrapper","tip","timer","clearTimeout","setTimeout","isFunction","val","TableFormat","Quill","import","defaultTools","name","icon","handle","tableModule","insertRow","insertColumn","deleteRow","deleteColumn","deleteTable","selection","selectTool","Object","assign","width","height","padding","border","setBackgroundColor","parseNum","num","n","parseFloat","TableSelection","quill","tableBlot","selectTd","cellSelect","boundary","constructor","this","resolveOptions","addContainer","buildTools","root","destory","on","events","EDITOR_CHANGE","updateSelectBox","selectColor","tools","toolBox","tool","innerHTML","focus","display","range","getSelection","blot","scroll","descendant","index","containerRect","container","getBoundingClientRect","targetRect","x","y","getRelativeRect","domNode","left","top","transform","paddingLeft","paddingRight","selectToolRect","right","Parchment","BlockBackground","StyleAttributor","scope","Scope","BLOCK","icons","TableModule","TableUp","register","super","toolbar","getModule","select","controls","find","tagName","toLocaleLowerCase","picker","theme","pickers","table","buildCustomSelect","customSelect","handleInViewport","selector","window","innerWidth","labelRect","undefined","isCustom","texts","resolveTexts","customBtn","dom","createSelect","selectDom","selectBlock","r","c","selectItem","dataset","updateSelectBlockItems","Array","from","querySelectorAll","childs","children","i","length","childRow","childCol","removeAttribute","onSelect","selectCustom","customBtnText","res","createSelectBox","insertTable","color","cell","getTable","format","rows","columns"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/utils/components.ts","../src/utils/utils.ts","../src/modules/selection.ts","../src/modules/block-backgound.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null],"names":["createInputItem","label","options","type","value","inputItem","document","createElement","classList","add","inputLabel","textContent","appendChild","inputInput","input","key","setAttribute","max","min","addEventListener","Number","String","remove","item","errorTip","msg","contains","querySelector","removeError","zindex","showTableCreator","async","box","inputContent","rowItem","rowInput","rowErrorTip","rowText","row","colItem","colInput","colErrorTip","colText","col","control","confirmBtn","confirmText","cancelBtn","cancelText","Promise","resolve","reject","close","child","target","body","beforeClose","appendTo","dialog","style","zIndex","overlay","content","e","stopPropagation","originOverflow","getComputedStyle","overflow","createDialog","isNaN","notPositiveNumberError","createToolTip","delay","wrapper","tip","timer","clearTimeout","setTimeout","isFunction","val","TableFormat","Quill","import","defaultTools","name","icon","handle","tableModule","insertRow","insertColumn","deleteRow","deleteColumn","deleteTable","selection","selectTool","Object","assign","width","height","padding","border","outline","opacity","setBackgroundColor","parseNum","num","n","parseFloat","TableSelection","quill","tableBlot","selectTd","cellSelect","boundary","constructor","this","resolveOptions","addContainer","buildTools","root","destory","ResizeObserver","observe","on","events","EDITOR_CHANGE","updateSelectBox","selectColor","tipText","tools","toolBox","tool","innerHTML","focus","display","range","getSelection","blot","scroll","descendant","index","containerRect","container","getBoundingClientRect","targetRect","x","y","getRelativeRect","domNode","left","top","transform","paddingLeft","paddingRight","selectToolRect","right","Parchment","BlockBackground","StyleAttributor","scope","Scope","BLOCK","icons","TableModule","TableUp","register","super","toolbar","getModule","select","controls","find","tagName","toLocaleLowerCase","picker","theme","pickers","table","buildCustomSelect","customSelect","handleInViewport","selector","window","innerWidth","labelRect","undefined","isCustom","texts","resolveTexts","customBtn","dom","createSelect","selectDom","selectBlock","r","c","selectItem","dataset","updateSelectBlockItems","Array","from","querySelectorAll","childs","children","i","length","childRow","childCol","removeAttribute","onSelect","selectCustom","customBtnText","res","createSelectBox","insertTable","color","cell","getTable","format","rows","columns"],"mappings":"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"}
|