@nine-lab/nine-ux 0.1.125 → 0.1.126

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/dist/nine-ux.js CHANGED
@@ -14082,7 +14082,7 @@ Rr = function() {
14082
14082
  const t = dr.getComponentCssPath("nineEditor.css"), r = t ? `@import "${t}";` : "";
14083
14083
  this.shadowRoot.innerHTML = `
14084
14084
  <style>
14085
- @import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-ux@0.1.125/dist/css/nineEditor.css";
14085
+ @import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-ux@0.1.126/dist/css/nineEditor.css";
14086
14086
  ${r}
14087
14087
  </style>
14088
14088
 
@@ -14229,7 +14229,7 @@ bt = new WeakMap(), kt = new WeakMap(), ge = new WeakSet(), yl = async function(
14229
14229
  const t = this.getAttribute("lang") || "Bash", r = this.getAttribute("code") || this.textContent.trim() || "", i = this.getAttribute("css-path");
14230
14230
  I(this, kt).innerHTML = `
14231
14231
  <style>
14232
- @import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-ux@0.1.125/dist/css/nine-code-block.css";
14232
+ @import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-ux@0.1.126/dist/css/nine-code-block.css";
14233
14233
  ${i ? `@import "${i}";` : ""}
14234
14234
  </style>
14235
14235
 
@@ -93,7 +93,7 @@ img.ProseMirror-separator {
93
93
  `},addCommands(){return{setHardBreak:()=>({commands:r,chain:e,state:t,editor:n})=>r.first([()=>r.exitCode(),()=>r.command(()=>{const{selection:i,storedMarks:s}=t;if(i.$from.parent.type.spec.isolating)return!1;const{keepMarks:o}=this.options,{splittableMarks:l}=n.extensionManager,a=s||i.$to.parentOffset&&i.$from.marks();return e().insertContent({type:this.name}).command(({tr:c,dispatch:d})=>{if(d&&a&&o){const u=a.filter(f=>l.includes(f.type.name));c.ensureMarks(u)}return!0}).run()})])}},addKeyboardShortcuts(){return{"Mod-Enter":()=>this.editor.commands.setHardBreak(),"Shift-Enter":()=>this.editor.commands.setHardBreak()}}}),Ff=ie.create({name:"heading",addOptions(){return{levels:[1,2,3,4,5,6],HTMLAttributes:{}}},content:"inline*",group:"block",defining:!0,addAttributes(){return{level:{default:1,rendered:!1}}},parseHTML(){return this.options.levels.map(r=>({tag:`h${r}`,attrs:{level:r}}))},renderHTML({node:r,HTMLAttributes:e}){return[`h${this.options.levels.includes(r.attrs.level)?r.attrs.level:this.options.levels[0]}`,q(this.options.HTMLAttributes,e),0]},addCommands(){return{setHeading:r=>({commands:e})=>this.options.levels.includes(r.level)?e.setNode(this.name,r):!1,toggleHeading:r=>({commands:e})=>this.options.levels.includes(r.level)?e.toggleNode(this.name,"paragraph",r):!1}},addKeyboardShortcuts(){return this.options.levels.reduce((r,e)=>({...r,[`Mod-Alt-${e}`]:()=>this.editor.commands.toggleHeading({level:e})}),{})},addInputRules(){return this.options.levels.map(r=>Yr({find:new RegExp(`^(#{${Math.min(...this.options.levels)},${r}})\\s$`),type:this.type,getAttributes:{level:r}}))}});var jn=200,J=function(){};J.prototype.append=function(e){return e.length?(e=J.from(e),!this.length&&e||e.length<jn&&this.leafAppend(e)||this.length<jn&&e.leafPrepend(this)||this.appendInner(e)):this},J.prototype.prepend=function(e){return e.length?J.from(e).append(this):this},J.prototype.appendInner=function(e){return new $f(this,e)},J.prototype.slice=function(e,t){return e===void 0&&(e=0),t===void 0&&(t=this.length),e>=t?J.empty:this.sliceInner(Math.max(0,e),Math.min(this.length,t))},J.prototype.get=function(e){if(!(e<0||e>=this.length))return this.getInner(e)},J.prototype.forEach=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=this.length),t<=n?this.forEachInner(e,t,n,0):this.forEachInvertedInner(e,t,n,0)},J.prototype.map=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=this.length);var i=[];return this.forEach(function(s,o){return i.push(e(s,o))},t,n),i},J.from=function(e){return e instanceof J?e:e&&e.length?new rl(e):J.empty};var rl=function(r){function e(n){r.call(this),this.values=n}r&&(e.__proto__=r),e.prototype=Object.create(r&&r.prototype),e.prototype.constructor=e;var t={length:{configurable:!0},depth:{configurable:!0}};return e.prototype.flatten=function(){return this.values},e.prototype.sliceInner=function(i,s){return i==0&&s==this.length?this:new e(this.values.slice(i,s))},e.prototype.getInner=function(i){return this.values[i]},e.prototype.forEachInner=function(i,s,o,l){for(var a=s;a<o;a++)if(i(this.values[a],l+a)===!1)return!1},e.prototype.forEachInvertedInner=function(i,s,o,l){for(var a=s-1;a>=o;a--)if(i(this.values[a],l+a)===!1)return!1},e.prototype.leafAppend=function(i){if(this.length+i.length<=jn)return new e(this.values.concat(i.flatten()))},e.prototype.leafPrepend=function(i){if(this.length+i.length<=jn)return new e(i.flatten().concat(this.values))},t.length.get=function(){return this.values.length},t.depth.get=function(){return 0},Object.defineProperties(e.prototype,t),e}(J);J.empty=new rl([]);var $f=function(r){function e(t,n){r.call(this),this.left=t,this.right=n,this.length=t.length+n.length,this.depth=Math.max(t.depth,n.depth)+1}return r&&(e.__proto__=r),e.prototype=Object.create(r&&r.prototype),e.prototype.constructor=e,e.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},e.prototype.getInner=function(n){return n<this.left.length?this.left.get(n):this.right.get(n-this.left.length)},e.prototype.forEachInner=function(n,i,s,o){var l=this.left.length;if(i<l&&this.left.forEachInner(n,i,Math.min(s,l),o)===!1||s>l&&this.right.forEachInner(n,Math.max(i-l,0),Math.min(this.length,s)-l,o+l)===!1)return!1},e.prototype.forEachInvertedInner=function(n,i,s,o){var l=this.left.length;if(i>l&&this.right.forEachInvertedInner(n,i-l,Math.max(s,l)-l,o+l)===!1||s<l&&this.left.forEachInvertedInner(n,Math.min(i,l),s,o)===!1)return!1},e.prototype.sliceInner=function(n,i){if(n==0&&i==this.length)return this;var s=this.left.length;return i<=s?this.left.slice(n,i):n>=s?this.right.slice(n-s,i-s):this.left.slice(n,s).append(this.right.slice(0,i-s))},e.prototype.leafAppend=function(n){var i=this.right.leafAppend(n);if(i)return new e(this.left,i)},e.prototype.leafPrepend=function(n){var i=this.left.leafPrepend(n);if(i)return new e(i,this.right)},e.prototype.appendInner=function(n){return this.left.depth>=Math.max(this.right.depth,n.depth)+1?new e(this.left,new e(this.right,n)):new e(this,n)},e}(J);const Vf=500;class be{constructor(e,t){this.items=e,this.eventCount=t}popEvent(e,t){if(this.eventCount==0)return null;let n=this.items.length;for(;;n--)if(this.items.get(n-1).selection){--n;break}let i,s;t&&(i=this.remapping(n,this.items.length),s=i.maps.length);let o=e.tr,l,a,c=[],d=[];return this.items.forEach((u,f)=>{if(!u.step){i||(i=this.remapping(n,f+1),s=i.maps.length),s--,d.push(u);return}if(i){d.push(new Te(u.map));let h=u.step.map(i.slice(s)),p;h&&o.maybeStep(h).doc&&(p=o.mapping.maps[o.mapping.maps.length-1],c.push(new Te(p,void 0,void 0,c.length+d.length))),s--,p&&i.appendMap(p,s)}else o.maybeStep(u.step);if(u.selection)return l=i?u.selection.map(i.slice(s)):u.selection,a=new be(this.items.slice(0,n).append(d.reverse().concat(c)),this.eventCount-1),!1},this.items.length,0),{remaining:a,transform:o,selection:l}}addTransform(e,t,n,i){let s=[],o=this.eventCount,l=this.items,a=!i&&l.length?l.get(l.length-1):null;for(let d=0;d<e.steps.length;d++){let u=e.steps[d].invert(e.docs[d]),f=new Te(e.mapping.maps[d],u,t),h;(h=a&&a.merge(f))&&(f=h,d?s.pop():l=l.slice(0,l.length-1)),s.push(f),t&&(o++,t=void 0),i||(a=f)}let c=o-n.depth;return c>Wf&&(l=Hf(l,c),o-=c),new be(l.append(s),o)}remapping(e,t){let n=new Rt;return this.items.forEach((i,s)=>{let o=i.mirrorOffset!=null&&s-i.mirrorOffset>=e?n.maps.length-i.mirrorOffset:void 0;n.appendMap(i.map,o)},e,t),n}addMaps(e){return this.eventCount==0?this:new be(this.items.append(e.map(t=>new Te(t))),this.eventCount)}rebased(e,t){if(!this.eventCount)return this;let n=[],i=Math.max(0,this.items.length-t),s=e.mapping,o=e.steps.length,l=this.eventCount;this.items.forEach(f=>{f.selection&&l--},i);let a=t;this.items.forEach(f=>{let h=s.getMirror(--a);if(h==null)return;o=Math.min(o,h);let p=s.maps[h];if(f.step){let m=e.steps[h].invert(e.docs[h]),g=f.selection&&f.selection.map(s.slice(a+1,h));g&&l++,n.push(new Te(p,m,g))}else n.push(new Te(p))},i);let c=[];for(let f=t;f<o;f++)c.push(new Te(s.maps[f]));let d=this.items.slice(0,i).append(c).append(n),u=new be(d,l);return u.emptyItemCount()>Vf&&(u=u.compress(this.items.length-n.length)),u}emptyItemCount(){let e=0;return this.items.forEach(t=>{t.step||e++}),e}compress(e=this.items.length){let t=this.remapping(0,e),n=t.maps.length,i=[],s=0;return this.items.forEach((o,l)=>{if(l>=e)i.push(o),o.selection&&s++;else if(o.step){let a=o.step.map(t.slice(n)),c=a&&a.getMap();if(n--,c&&t.appendMap(c,n),a){let d=o.selection&&o.selection.map(t.slice(n));d&&s++;let u=new Te(c.invert(),a,d),f,h=i.length-1;(f=i.length&&i[h].merge(u))?i[h]=f:i.push(u)}}else o.map&&n--},this.items.length,0),new be(J.from(i.reverse()),s)}}be.empty=new be(J.empty,0);function Hf(r,e){let t;return r.forEach((n,i)=>{if(n.selection&&e--==0)return t=i,!1}),r.slice(t)}class Te{constructor(e,t,n,i){this.map=e,this.step=t,this.selection=n,this.mirrorOffset=i}merge(e){if(this.step&&e.step&&!e.selection){let t=e.step.merge(this.step);if(t)return new Te(t.getMap().invert(),t,this.selection)}}}class _e{constructor(e,t,n,i,s){this.done=e,this.undone=t,this.prevRanges=n,this.prevTime=i,this.prevComposition=s}}const Wf=20;function jf(r,e,t,n){let i=t.getMeta(dt),s;if(i)return i.historyState;t.getMeta(Kf)&&(r=new _e(r.done,r.undone,null,0,-1));let o=t.getMeta("appendedTransaction");if(t.steps.length==0)return r;if(o&&o.getMeta(dt))return o.getMeta(dt).redo?new _e(r.done.addTransform(t,void 0,n,qn(e)),r.undone,il(t.mapping.maps),r.prevTime,r.prevComposition):new _e(r.done,r.undone.addTransform(t,void 0,n,qn(e)),null,r.prevTime,r.prevComposition);if(t.getMeta("addToHistory")!==!1&&!(o&&o.getMeta("addToHistory")===!1)){let l=t.getMeta("composition"),a=r.prevTime==0||!o&&r.prevComposition!=l&&(r.prevTime<(t.time||0)-n.newGroupDelay||!qf(t,r.prevRanges)),c=o?Zr(r.prevRanges,t.mapping):il(t.mapping.maps);return new _e(r.done.addTransform(t,a?e.selection.getBookmark():void 0,n,qn(e)),be.empty,c,t.time,l??r.prevComposition)}else return(s=t.getMeta("rebased"))?new _e(r.done.rebased(t,s),r.undone.rebased(t,s),Zr(r.prevRanges,t.mapping),r.prevTime,r.prevComposition):new _e(r.done.addMaps(t.mapping.maps),r.undone.addMaps(t.mapping.maps),Zr(r.prevRanges,t.mapping),r.prevTime,r.prevComposition)}function qf(r,e){if(!e)return!1;if(!r.docChanged)return!0;let t=!1;return r.mapping.maps[0].forEach((n,i)=>{for(let s=0;s<e.length;s+=2)n<=e[s+1]&&i>=e[s]&&(t=!0)}),t}function il(r){let e=[];for(let t=r.length-1;t>=0&&e.length==0;t--)r[t].forEach((n,i,s,o)=>e.push(s,o));return e}function Zr(r,e){if(!r)return null;let t=[];for(let n=0;n<r.length;n+=2){let i=e.map(r[n],1),s=e.map(r[n+1],-1);i<=s&&t.push(i,s)}return t}function Jf(r,e,t){let n=qn(e),i=dt.get(e).spec.config,s=(t?r.undone:r.done).popEvent(e,n);if(!s)return null;let o=s.selection.resolve(s.transform.doc),l=(t?r.done:r.undone).addTransform(s.transform,e.selection.getBookmark(),i,n),a=new _e(t?l:s.remaining,t?s.remaining:l,null,0,-1);return s.transform.setSelection(o).setMeta(dt,{redo:t,historyState:a})}let Qr=!1,sl=null;function qn(r){let e=r.plugins;if(sl!=e){Qr=!1,sl=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){Qr=!0;break}}return Qr}const dt=new Se("history"),Kf=new Se("closeHistory");function _f(r={}){return r={depth:r.depth||100,newGroupDelay:r.newGroupDelay||500},new se({key:dt,state:{init(){return new _e(be.empty,be.empty,null,0,-1)},apply(e,t,n){return jf(t,n,e,r)}},config:r,props:{handleDOMEvents:{beforeinput(e,t){let n=t.inputType,i=n=="historyUndo"?ll:n=="historyRedo"?al:null;return!i||!e.editable?!1:(t.preventDefault(),i(e.state,e.dispatch))}}}})}function ol(r,e){return(t,n)=>{let i=dt.getState(t);if(!i||(r?i.undone:i.done).eventCount==0)return!1;if(n){let s=Jf(i,t,r);s&&n(e?s.scrollIntoView():s)}return!0}}const ll=ol(!1,!0),al=ol(!0,!0),Uf=Y.create({name:"history",addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:r,dispatch:e})=>ll(r,e),redo:()=>({state:r,dispatch:e})=>al(r,e)}},addProseMirrorPlugins(){return[_f(this.options)]},addKeyboardShortcuts(){return{"Mod-z":()=>this.editor.commands.undo(),"Shift-Mod-z":()=>this.editor.commands.redo(),"Mod-y":()=>this.editor.commands.redo(),"Mod-я":()=>this.editor.commands.undo(),"Shift-Mod-я":()=>this.editor.commands.redo()}}}),Gf=ie.create({name:"horizontalRule",addOptions(){return{HTMLAttributes:{}}},group:"block",parseHTML(){return[{tag:"hr"}]},renderHTML({HTMLAttributes:r}){return["hr",q(this.options.HTMLAttributes,r)]},addCommands(){return{setHorizontalRule:()=>({chain:r,state:e})=>{if(!cf(e,e.schema.nodes[this.name]))return!1;const{selection:t}=e,{$from:n,$to:i}=t,s=r();return n.parentOffset===0?s.insertContentAt({from:Math.max(n.pos-1,0),to:i.pos},{type:this.name}):Vu(t)?s.insertContentAt(i.pos,{type:this.name}):s.insertContent({type:this.name}),s.command(({tr:o,dispatch:l})=>{var a;if(l){const{$to:c}=o.selection,d=c.end();if(c.nodeAfter)c.nodeAfter.isTextblock?o.setSelection(M.create(o.doc,c.pos+1)):c.nodeAfter.isBlock?o.setSelection(S.create(o.doc,c.pos)):o.setSelection(M.create(o.doc,c.pos));else{const u=(a=c.parent.type.contentMatch.defaultType)===null||a===void 0?void 0:a.create();u&&(o.insert(d,u),o.setSelection(M.create(o.doc,d+1)))}o.scrollIntoView()}return!0}).run()}}},addInputRules(){return[Qo({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}}),Yf=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))$/,Xf=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))/g,Zf=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))$/,Qf=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))/g,eh=we.create({name:"italic",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"em"},{tag:"i",getAttrs:r=>r.style.fontStyle!=="normal"&&null},{style:"font-style=normal",clearMark:r=>r.type.name===this.name},{style:"font-style=italic"}]},renderHTML({HTMLAttributes:r}){return["em",q(this.options.HTMLAttributes,r),0]},addCommands(){return{setItalic:()=>({commands:r})=>r.setMark(this.name),toggleItalic:()=>({commands:r})=>r.toggleMark(this.name),unsetItalic:()=>({commands:r})=>r.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-i":()=>this.editor.commands.toggleItalic(),"Mod-I":()=>this.editor.commands.toggleItalic()}},addInputRules(){return[at({find:Yf,type:this.type}),at({find:Zf,type:this.type})]},addPasteRules(){return[ct({find:Xf,type:this.type}),ct({find:Qf,type:this.type})]}}),th=ie.create({name:"listItem",addOptions(){return{HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}},content:"paragraph block*",defining:!0,parseHTML(){return[{tag:"li"}]},renderHTML({HTMLAttributes:r}){return["li",q(this.options.HTMLAttributes,r),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),nh="listItem",cl="textStyle",dl=/^(\d+)\.\s$/,rh=ie.create({name:"orderedList",addOptions(){return{itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}},group:"block list",content(){return`${this.options.itemTypeName}+`},addAttributes(){return{start:{default:1,parseHTML:r=>r.hasAttribute("start")?parseInt(r.getAttribute("start")||"",10):1},type:{default:null,parseHTML:r=>r.getAttribute("type")}}},parseHTML(){return[{tag:"ol"}]},renderHTML({HTMLAttributes:r}){const{start:e,...t}=r;return e===1?["ol",q(this.options.HTMLAttributes,t),0]:["ol",q(this.options.HTMLAttributes,r),0]},addCommands(){return{toggleOrderedList:()=>({commands:r,chain:e})=>this.options.keepAttributes?e().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes(nh,this.editor.getAttributes(cl)).run():r.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let r=Gt({find:dl,type:this.type,getAttributes:e=>({start:+e[1]}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1]});return(this.options.keepMarks||this.options.keepAttributes)&&(r=Gt({find:dl,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:e=>({start:+e[1],...this.editor.getAttributes(cl)}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1],editor:this.editor})),[r]}}),ih=ie.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:r}){return["p",q(this.options.HTMLAttributes,r),0]},addCommands(){return{setParagraph:()=>({commands:r})=>r.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}}),sh=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))$/,oh=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))/g,lh=we.create({name:"strike",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration",consuming:!1,getAttrs:r=>r.includes("line-through")?{}:!1}]},renderHTML({HTMLAttributes:r}){return["s",q(this.options.HTMLAttributes,r),0]},addCommands(){return{setStrike:()=>({commands:r})=>r.setMark(this.name),toggleStrike:()=>({commands:r})=>r.toggleMark(this.name),unsetStrike:()=>({commands:r})=>r.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-s":()=>this.editor.commands.toggleStrike()}},addInputRules(){return[at({find:sh,type:this.type})]},addPasteRules(){return[ct({find:oh,type:this.type})]}}),ah=ie.create({name:"text",group:"inline"}),ch=Y.create({name:"starterKit",addExtensions(){const r=[];return this.options.bold!==!1&&r.push(gf.configure(this.options.bold)),this.options.blockquote!==!1&&r.push(uf.configure(this.options.blockquote)),this.options.bulletList!==!1&&r.push(bf.configure(this.options.bulletList)),this.options.code!==!1&&r.push(Sf.configure(this.options.code)),this.options.codeBlock!==!1&&r.push(wf.configure(this.options.codeBlock)),this.options.document!==!1&&r.push(Tf.configure(this.options.document)),this.options.dropcursor!==!1&&r.push(Af.configure(this.options.dropcursor)),this.options.gapcursor!==!1&&r.push(Lf.configure(this.options.gapcursor)),this.options.hardBreak!==!1&&r.push(zf.configure(this.options.hardBreak)),this.options.heading!==!1&&r.push(Ff.configure(this.options.heading)),this.options.history!==!1&&r.push(Uf.configure(this.options.history)),this.options.horizontalRule!==!1&&r.push(Gf.configure(this.options.horizontalRule)),this.options.italic!==!1&&r.push(eh.configure(this.options.italic)),this.options.listItem!==!1&&r.push(th.configure(this.options.listItem)),this.options.orderedList!==!1&&r.push(rh.configure(this.options.orderedList)),this.options.paragraph!==!1&&r.push(ih.configure(this.options.paragraph)),this.options.strike!==!1&&r.push(lh.configure(this.options.strike)),this.options.text!==!1&&r.push(ah.configure(this.options.text)),r}}),dh=r=>{if(!r.children.length)return;const e=r.querySelectorAll("span");e&&e.forEach(t=>{var n,i;const s=t.getAttribute("style"),o=(i=(n=t.parentElement)===null||n===void 0?void 0:n.closest("span"))===null||i===void 0?void 0:i.getAttribute("style");t.setAttribute("style",`${o};${s}`)})},uh=we.create({name:"textStyle",priority:101,addOptions(){return{HTMLAttributes:{},mergeNestedSpanStyles:!1}},parseHTML(){return[{tag:"span",getAttrs:r=>r.hasAttribute("style")?(this.options.mergeNestedSpanStyles&&dh(r),{}):!1}]},renderHTML({HTMLAttributes:r}){return["span",q(this.options.HTMLAttributes,r),0]},addCommands(){return{removeEmptyTextStyle:()=>({tr:r})=>{const{selection:e}=r;return r.doc.nodesBetween(e.from,e.to,(t,n)=>{if(t.isTextblock)return!0;t.marks.filter(i=>i.type===this.type).some(i=>Object.values(i.attrs).some(s=>!!s))||r.removeMark(n,n+t.nodeSize,this.type)}),!0}}}}),fh=Y.create({name:"color",addOptions(){return{types:["textStyle"]}},addGlobalAttributes(){return[{types:this.options.types,attributes:{color:{default:null,parseHTML:r=>{var e;return(e=r.style.color)===null||e===void 0?void 0:e.replace(/['"]+/g,"")},renderHTML:r=>r.color?{style:`color: ${r.color}`}:{}}}}]},addCommands(){return{setColor:r=>({chain:e})=>e().setMark("textStyle",{color:r}).run(),unsetColor:()=>({chain:r})=>r().setMark("textStyle",{color:null}).removeEmptyTextStyle().run()}}}),hh=/(?:^|\s)(==(?!\s+==)((?:[^=]+))==(?!\s+==))$/,ph=/(?:^|\s)(==(?!\s+==)((?:[^=]+))==(?!\s+==))/g,mh=we.create({name:"highlight",addOptions(){return{multicolor:!1,HTMLAttributes:{}}},addAttributes(){return this.options.multicolor?{color:{default:null,parseHTML:r=>r.getAttribute("data-color")||r.style.backgroundColor,renderHTML:r=>r.color?{"data-color":r.color,style:`background-color: ${r.color}; color: inherit`}:{}}}:{}},parseHTML(){return[{tag:"mark"}]},renderHTML({HTMLAttributes:r}){return["mark",q(this.options.HTMLAttributes,r),0]},addCommands(){return{setHighlight:r=>({commands:e})=>e.setMark(this.name,r),toggleHighlight:r=>({commands:e})=>e.toggleMark(this.name,r),unsetHighlight:()=>({commands:r})=>r.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-h":()=>this.editor.commands.toggleHighlight()}},addInputRules(){return[at({find:hh,type:this.type})]},addPasteRules(){return[ct({find:ph,type:this.type})]}}),gh=Y.create({name:"textAlign",addOptions(){return{types:[],alignments:["left","center","right","justify"],defaultAlignment:null}},addGlobalAttributes(){return[{types:this.options.types,attributes:{textAlign:{default:this.options.defaultAlignment,parseHTML:r=>{const e=r.style.textAlign;return this.options.alignments.includes(e)?e:this.options.defaultAlignment},renderHTML:r=>r.textAlign?{style:`text-align: ${r.textAlign}`}:{}}}}]},addCommands(){return{setTextAlign:r=>({commands:e})=>this.options.alignments.includes(r)?this.options.types.map(t=>e.updateAttributes(t,{textAlign:r})).every(t=>t):!1,unsetTextAlign:()=>({commands:r})=>this.options.types.map(e=>r.resetAttributes(e,"textAlign")).every(e=>e),toggleTextAlign:r=>({editor:e,commands:t})=>this.options.alignments.includes(r)?e.isActive({textAlign:r})?t.unsetTextAlign():t.setTextAlign(r):!1}},addKeyboardShortcuts(){return{"Mod-Shift-l":()=>this.editor.commands.setTextAlign("left"),"Mod-Shift-e":()=>this.editor.commands.setTextAlign("center"),"Mod-Shift-r":()=>this.editor.commands.setTextAlign("right"),"Mod-Shift-j":()=>this.editor.commands.setTextAlign("justify")}}}),yh=/(?:^|\s)(!\[(.+|:?)]\((\S+)(?:(?:\s+)["'](\S+)["'])?\))$/,bh=ie.create({name:"image",addOptions(){return{inline:!1,allowBase64:!1,HTMLAttributes:{}}},inline(){return this.options.inline},group(){return this.options.inline?"inline":"block"},draggable:!0,addAttributes(){return{src:{default:null},alt:{default:null},title:{default:null}}},parseHTML(){return[{tag:this.options.allowBase64?"img[src]":'img[src]:not([src^="data:"])'}]},renderHTML({HTMLAttributes:r}){return["img",q(this.options.HTMLAttributes,r)]},addCommands(){return{setImage:r=>({commands:e})=>e.insertContent({type:this.name,attrs:r})}},addInputRules(){return[Qo({find:yh,type:this.type,getAttributes:r=>{const[,,e,t,n]=r;return{src:t,alt:e,title:n}}})]}});class kh extends Sl{constructor(){super();te(this,ue);te(this,le,null);te(this,tn,null);te(this,nn,null)}connectedCallback(){super.connectedCallback()&&(B(this,ue,ml).call(this),B(this,ue,gl).call(this),B(this,ue,oi).call(this))}get value(){return P(this,le).getHTML()}set value(t){let n=t||"";n&&!/<\/?[a-z][^>]*>/i.test(n)&&(n=n.split(`
94
94
  `).map(i=>`<p>${i}</p>`).join("")),P(this,le)?P(this,le).commands.setContent(n,!1):fe(this,nn,n)}get id(){return this.getAttribute("id")}set id(t){this.setAttribute("id",t)}get name(){return this.getAttribute("name")}set name(t){this.setAttribute("name",t)}get readonly(){return this.hasAttribute("readonly")}set readonly(t){t?this.setAttribute("readonly",""):this.removeAttribute("readonly"),B(this,ue,oi).call(this)}disconnectedCallback(){P(this,le)&&(P(this,le).destroy(),fe(this,le,null))}}le=new WeakMap,tn=new WeakMap,nn=new WeakMap,ue=new WeakSet,oi=function(){if(P(this,le)){const t=this.readonly;P(this,le).setEditable(!t);const n=this.shadowRoot.querySelector(".menu-bar");n&&(n.style.display=t?"none":"flex")}},ml=function(){const t=ft.getComponentCssPath("nineEditor.css"),n=t?`@import "${t}";`:"";this.shadowRoot.innerHTML=`
95
95
  <style>
96
- @import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-ux@0.1.125/dist/css/nineEditor.css";
96
+ @import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-ux@0.1.126/dist/css/nineEditor.css";
97
97
  ${n}
98
98
  </style>
99
99
 
@@ -130,7 +130,7 @@ img.ProseMirror-separator {
130
130
  <div id="editor-container"></div>
131
131
  `,fe(this,tn,this.shadowRoot.querySelector("#editor-container")),this.shadowRoot.querySelector("#font-size").onchange=i=>{const s=i.target.value;console.log(i.target,s),P(this,le).chain().focus().setMark("textStyle",{fontSize:s}).run()}},gl=function(){fe(this,le,new af({element:P(this,tn),editable:!this.readonly,extensions:[ch,fh,mh.configure({multicolor:!0}),gh.configure({types:["heading","paragraph"]}),bh.configure({inline:!0,allowBase64:!0}),uh.extend({addAttributes(){return{fontSize:{default:null,parseHTML:t=>t.style.fontSize,renderHTML:t=>t.fontSize?{style:`font-size: ${t.fontSize}`}:{}}}}})],content:P(this,nn)||this.originContents||"",onUpdate:({editor:t})=>{this.dispatchEvent(new CustomEvent("change",{detail:t.getHTML()}))},onSelectionUpdate:({editor:t})=>{this.readonly||B(this,ue,yl).call(this,t)}})),B(this,ue,bl).call(this)},yl=function(t){this.shadowRoot.querySelectorAll("[data-cmd]").forEach(o=>{t.isActive(o.dataset.cmd)?o.classList.add("is-active"):o.classList.remove("is-active")}),this.shadowRoot.querySelectorAll("[data-align]").forEach(o=>{t.isActive({textAlign:o.dataset.align})?o.classList.add("is-active"):o.classList.remove("is-active")});const n=t.getAttributes("textStyle"),i=this.shadowRoot.querySelector("#font-size");i&&(i.value=n.fontSize||"14px");const s=this.shadowRoot.querySelector("#color-picker");s&&(s.value=n.color||"#000000")},bl=function(){const t=P(this,le);this.shadowRoot.querySelectorAll("[data-cmd]").forEach(n=>{n.onclick=()=>{const i=n.dataset.cmd;i==="bold"&&t.chain().focus().toggleBold().run(),i==="italic"&&t.chain().focus().toggleItalic().run(),i==="underline"&&t.chain().focus().toggleUnderline().run(),i==="strike"&&t.chain().focus().toggleStrike().run(),i==="highlight"&&t.chain().focus().toggleHighlight().run(),i==="bulletList"&&t.chain().focus().toggleBulletList().run(),i==="orderedList"&&t.chain().focus().toggleOrderedList().run(),i==="undo"&&t.chain().focus().undo().run(),i==="redo"&&t.chain().focus().redo().run()}}),this.shadowRoot.querySelector("#color-picker").oninput=n=>{t.chain().focus().setColor(n.target.value).run()},this.shadowRoot.querySelectorAll("[data-align]").forEach(n=>{n.onclick=()=>t.chain().focus().setTextAlign(n.dataset.align).run()}),this.shadowRoot.querySelector("#img-btn").onclick=()=>{const n=window.prompt("Image URL");n&&t.chain().focus().setImage({src:n}).run()}};const De=typeof window<"u"&&window.nine?window.nine:A.nine,ul={alert:window.alert,confirm:window.confirm},fl=()=>{var t;console.log(De,window.nine);const{nativeOverride:r}=((t=De==null?void 0:De.config)==null?void 0:t.ux)||{},e=Array.isArray(r)?r:r===!0?["alert","confirm"]:[];console.log(De,e),window.alert=e.includes("alert")?n=>ft.alert(n):ul.alert,window.confirm=e.includes("confirm")?async n=>await ft.confirm(n):ul.confirm,De.config.debug&&e.length>0&&console.log(`[nine-ux] Native API Overridden: ${e.join(", ")}`)};(()=>{fl(),De==null||De.subscribeConfig(r=>{(r==="ux"||r==="config")&&fl()})})();class xh extends HTMLElement{constructor(){super();te(this,ke);te(this,Ot,!1);te(this,Nt);fe(this,Nt,this.attachShadow({mode:"open"}))}static get observedAttributes(){return["lang","code"]}connectedCallback(){!this.getAttribute("code")&&this.textContent.trim()&&this.setAttribute("code",this.textContent.trim()),B(this,ke,sn).call(this)}attributeChangedCallback(){B(this,ke,sn).call(this)}}Ot=new WeakMap,Nt=new WeakMap,ke=new WeakSet,kl=async function(){const t=this.getAttribute("code")||"";try{await navigator.clipboard.writeText(t),fe(this,Ot,!0),B(this,ke,sn).call(this),setTimeout(()=>{fe(this,Ot,!1),B(this,ke,sn).call(this)},2e3)}catch(n){console.error("Code copy failed:",n)}},sn=function(){const t=this.getAttribute("lang")||"Bash",n=this.getAttribute("code")||this.textContent.trim()||"",i=this.getAttribute("css-path");P(this,Nt).innerHTML=`
132
132
  <style>
133
- @import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-ux@0.1.125/dist/css/nine-code-block.css";
133
+ @import "https://cdn.jsdelivr.net/npm/@nine-lab/nine-ux@0.1.126/dist/css/nine-code-block.css";
134
134
  ${i?`@import "${i}";`:""}
135
135
  </style>
136
136
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nine-lab/nine-ux",
3
- "version": "0.1.125",
3
+ "version": "0.1.126",
4
4
  "type": "module",
5
5
  "main": "./dist/nine-ux.umd.js",
6
6
  "module": "./dist/nine-ux.js",
@@ -24,7 +24,7 @@
24
24
  "@nine-lab/nine-util": ">=0.9.30"
25
25
  },
26
26
  "devDependencies": {
27
- "@nine-lab/nine-util": "^0.9.43",
27
+ "@nine-lab/nine-util": "^0.9.48",
28
28
  "vite": "^5.4.21"
29
29
  },
30
30
  "dependencies": {