@coffer-org/web 7.0.0 → 7.2.0
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/assets/ChatWidget-ByBb2eNs.js +31 -0
- package/dist/assets/DiagnosticsPage-tAFkmCz8.js +1 -0
- package/dist/assets/IBM-Plex-Mono-400-cyrillic-BSMlKf0J.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-400-cyrillic-ext-xuaO2J-f.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-400-latin-DMJ8VG8y.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-400-latin-ext-BmRBH3aV.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-500-cyrillic-Bq9vWWag.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-500-cyrillic-ext-BqneJy0T.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-500-latin-DSY6xOcd.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-500-latin-ext-CAhNIIs5.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-600-cyrillic-CTOM6hUh.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-600-cyrillic-ext-V-xxqcpd.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-600-latin-BgSNZQsw.woff2 +0 -0
- package/dist/assets/IBM-Plex-Mono-600-latin-ext-D38SheWl.woff2 +0 -0
- package/dist/assets/IBM-Plex-Sans-400-600-cyrillic-BAAhND-U.woff2 +0 -0
- package/dist/assets/IBM-Plex-Sans-400-600-cyrillic-ext-d45eAU9y.woff2 +0 -0
- package/dist/assets/IBM-Plex-Sans-400-600-latin-IvpUvPa2.woff2 +0 -0
- package/dist/assets/IBM-Plex-Sans-400-600-latin-ext-CIII54If.woff2 +0 -0
- package/dist/assets/{MarkdownEditor-B2QcGxzl.js → MarkdownEditor-0mNSwLu_.js} +3 -3
- package/dist/assets/NewRecordView-CTSqFBfe.js +1 -0
- package/dist/assets/Onest-400-700-cyrillic-DayYxulF.woff2 +0 -0
- package/dist/assets/Onest-400-700-cyrillic-ext-DOFToQv1.woff2 +0 -0
- package/dist/assets/Onest-400-700-latin-Dun_Rd-l.woff2 +0 -0
- package/dist/assets/Onest-400-700-latin-ext-QAhDxQuo.woff2 +0 -0
- package/dist/assets/{PluginSettingsPage-BkMqmqxo.js → PluginSettingsPage-BFsSZgTa.js} +1 -1
- package/dist/assets/ScanSummary-CaG-s5qh.js +1 -0
- package/dist/assets/SettingsForm-C_K9RpFr.js +1 -0
- package/dist/assets/SettingsPage-Cqp1tUyi.js +3 -0
- package/dist/assets/ThemeSwitcher-BPuCvU1U.js +1 -0
- package/dist/assets/{api-ChM6smRq.js → api-DD1tY5Dq.js} +1 -1
- package/dist/assets/arrow-left-DDsxjRCq.js +1 -0
- package/dist/assets/{auth-context-CGdGFadP.js → auth-context-BCos5wiL.js} +1 -1
- package/dist/assets/{data-size-oPRYOwnj.js → data-size-qpzofknI.js} +1 -1
- package/dist/assets/{extend-BTkr7oJ8.js → extend-BMkkNVfm.js} +1 -1
- package/dist/assets/{fields-BtCN_frr.js → fields-GPyF03tK.js} +1 -1
- package/dist/assets/{file-text-DzYzGxiY.js → file-text-DI3tERhf.js} +1 -1
- package/dist/assets/ical-FRtCagm-.js +8 -0
- package/dist/assets/index-C5rNjIku.css +2 -0
- package/dist/assets/index-DpBBejzP.js +24 -0
- package/dist/assets/{input-DqF3I-kT.js → input-tJjsdU1x.js} +1 -1
- package/dist/assets/{list-cache-D-BfHI9X.js → list-cache-B4i_A9fj.js} +1 -1
- package/dist/assets/phone-input-BeYLRpyW.js +1 -0
- package/dist/assets/{phone-input-vooQJZf_.js → phone-input-CZF7hU3E.js} +2 -2
- package/dist/assets/popover-C2xHG6L3.js +1 -0
- package/dist/assets/settings-rQsBFoL2.js +1 -0
- package/dist/assets/shelf-CpE68_8d.js +1 -0
- package/dist/assets/{showcase-Boajqdx8.js → showcase-CUDyXMb7.js} +1 -1
- package/dist/assets/src-2QhdFJyH.js +1 -0
- package/dist/assets/src-BRA1s942.js +1 -0
- package/dist/assets/src-Bmc_xgWr.js +1 -0
- package/dist/assets/{src-BiJuengh.js → src-BnvKHmLu.js} +1 -1
- package/dist/assets/src-Bv7IbF5F.js +1 -0
- package/dist/assets/{src-DWgNUcSX2.js → src-C3X1cmlu.js} +1 -1
- package/dist/assets/{src-B3nX_MMy.js → src-C3hdIsRT.js} +1 -1
- package/dist/assets/src-CIrBx5O0.js +1 -0
- package/dist/assets/src-CTlBmB5n.js +1 -0
- package/dist/assets/src-Cp4yFztL.js +4 -0
- package/dist/assets/src-D5pqHmdF.js +1 -0
- package/dist/assets/src-D9ZNj5Fi2.js +1 -0
- package/dist/assets/src-DAUYP87f2.js +1 -0
- package/dist/assets/{src-DB2N_cct.js → src-DEcZTAam.js} +4 -4
- package/dist/assets/src-DEqFDnFO.js +1 -0
- package/dist/assets/{src-BxLhm2cd.js → src-DXSkgVrX.js} +2 -2
- package/dist/assets/src-DaHZILQZ.js +1 -0
- package/dist/assets/src-Dvbi--2I.js +6 -0
- package/dist/assets/src-IYiBUs1S.js +1 -0
- package/dist/assets/src-Uu0k-CHA.js +1 -0
- package/dist/assets/src-WB1-7_Wh.js +1 -0
- package/dist/assets/src-dXlj2maQ.js +1 -0
- package/dist/assets/src-d_-Z83D-.js +2 -0
- package/dist/assets/src-eAsO2o4h2.js +1 -0
- package/dist/assets/{src-BJF2nMuG.js → src-uWOnIJWD.js} +2 -2
- package/dist/assets/{src-Ys25cnOv.js → src-yL3q5Nfe.js} +1 -1
- package/dist/assets/ui-A8aS2-NQ.js +2 -0
- package/dist/assets/ui-BK1F_c4b.js +2 -0
- package/dist/assets/ui-C9-epiVm.js +2 -0
- package/dist/assets/ui-kICtw37s.js +1 -0
- package/dist/assets/ui-vendor-BuwRGdK1.js +44 -0
- package/dist/index.html +26 -18
- package/dist-vendor/web-ui.js +8869 -8316
- package/package.json +1 -1
- package/dist/assets/ChatWidget-YZqj6v6F.js +0 -31
- package/dist/assets/DiagnosticsPage-C_lLM_Hw.js +0 -1
- package/dist/assets/NewRecordView-CC_fERty.js +0 -1
- package/dist/assets/ScanSummary-xKGEaOS0.js +0 -1
- package/dist/assets/SettingsForm-DW1KCYe4.js +0 -1
- package/dist/assets/SettingsPage-DuP06DkM.js +0 -3
- package/dist/assets/ThemeSwitcher-CR6oJXQD.js +0 -1
- package/dist/assets/arrow-left-5G0O-4HL.js +0 -1
- package/dist/assets/index-i___vlpd.css +0 -2
- package/dist/assets/index-zcINFUZQ.js +0 -28
- package/dist/assets/phone-input-CX0JAfCj.js +0 -1
- package/dist/assets/popover-DjWMp23y.js +0 -1
- package/dist/assets/settings-BfEurOH1.js +0 -1
- package/dist/assets/shelf-CRUDKiTz.js +0 -1
- package/dist/assets/src-6lNAeDcP.js +0 -1
- package/dist/assets/src-BDmFR0_v.js +0 -2
- package/dist/assets/src-BRzAjJX_.js +0 -6
- package/dist/assets/src-BinvE9sd2.js +0 -1
- package/dist/assets/src-BqhS-0sX.js +0 -1
- package/dist/assets/src-Br4oAdCy.js +0 -1
- package/dist/assets/src-C-Xmuyui.js +0 -1
- package/dist/assets/src-C2zqLDpV.js +0 -1
- package/dist/assets/src-C9WAFG8V.js +0 -4
- package/dist/assets/src-CFcpeTQ5.js +0 -1
- package/dist/assets/src-CYiAjCO3.js +0 -1
- package/dist/assets/src-Cr_oHzOc.js +0 -1
- package/dist/assets/src-CzmJIKcf.js +0 -1
- package/dist/assets/src-D2hi5jAO.js +0 -1
- package/dist/assets/src-DpPV1q-1.js +0 -1
- package/dist/assets/src-DwXka-KQ.js +0 -1
- package/dist/assets/ui-A-A-cO8j2.js +0 -2
- package/dist/assets/ui-CAxfAaN9.js +0 -2
- package/dist/assets/ui-D7QZRcxZ.js +0 -2
- package/dist/assets/ui-vendor-C79K_wDx.js +0 -44
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,r as t,t as n}from"./rolldown-runtime-QTnfLwEv.js";import{a as r,n as i,t as a}from"./i18n-vendor-T6EnJ_TL.js";import{h as o,t as s}from"./react-vendor-CzSUaSLk.js";import{n as c,r as l,t as u}from"./input-DqF3I-kT.js";import{a as d,c as f,d as p,i as m,l as h,o as g,s as _,t as v,u as y}from"./popover-DjWMp23y.js";import{o as b}from"./icons-BTbA1N7a.js";import{I as x,dt as S,ft as C,mt as w,pt as ee}from"./ui-vendor-C79K_wDx.js";var te=l(`between-horizontal-end`,[[`rect`,{width:`13`,height:`7`,x:`3`,y:`3`,rx:`1`,key:`11xb64`}],[`path`,{d:`m22 15-3-3 3-3`,key:`26chmm`}],[`rect`,{width:`13`,height:`7`,x:`3`,y:`14`,rx:`1`,key:`k6ky7n`}]]),ne=l(`between-vertical-end`,[[`rect`,{width:`7`,height:`13`,x:`3`,y:`3`,rx:`1`,key:`1fdu0f`}],[`path`,{d:`m9 22 3-3 3 3`,key:`17z65a`}],[`rect`,{width:`7`,height:`13`,x:`14`,y:`3`,rx:`1`,key:`1squn4`}]]),re=l(`bold`,[[`path`,{d:`M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8`,key:`mg9rjx`}]]),ie=l(`code-xml`,[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]]),ae=l(`columns-3`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),oe=l(`grid-2x2-x`,[[`path`,{d:`M12 3v17a1 1 0 0 1-1 1H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v6a1 1 0 0 1-1 1H3`,key:`11za1p`}],[`path`,{d:`m16 16 5 5`,key:`8tpb07`}],[`path`,{d:`m16 21 5-5`,key:`193jll`}]]),se=l(`heading-1`,[[`path`,{d:`M4 12h8`,key:`17cfdx`}],[`path`,{d:`M4 18V6`,key:`1rz3zl`}],[`path`,{d:`M12 18V6`,key:`zqpxq5`}],[`path`,{d:`m17 12 3-2v8`,key:`1hhhft`}]]),ce=l(`heading-2`,[[`path`,{d:`M4 12h8`,key:`17cfdx`}],[`path`,{d:`M4 18V6`,key:`1rz3zl`}],[`path`,{d:`M12 18V6`,key:`zqpxq5`}],[`path`,{d:`M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1`,key:`9jr5yi`}]]),le=l(`heading-3`,[[`path`,{d:`M4 12h8`,key:`17cfdx`}],[`path`,{d:`M4 18V6`,key:`1rz3zl`}],[`path`,{d:`M12 18V6`,key:`zqpxq5`}],[`path`,{d:`M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2`,key:`68ncm8`}],[`path`,{d:`M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2`,key:`1ejuhz`}]]),ue=l(`image-plus`,[[`path`,{d:`M16 5h6`,key:`1vod17`}],[`path`,{d:`M19 2v6`,key:`4bpg5p`}],[`path`,{d:`M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5`,key:`1ue2ih`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}]]),de=l(`italic`,[[`line`,{x1:`19`,x2:`10`,y1:`4`,y2:`4`,key:`15jd3p`}],[`line`,{x1:`14`,x2:`5`,y1:`20`,y2:`20`,key:`bu0au3`}],[`line`,{x1:`15`,x2:`9`,y1:`4`,y2:`20`,key:`uljnxc`}]]),fe=l(`list-ordered`,[[`path`,{d:`M11 5h10`,key:`1cz7ny`}],[`path`,{d:`M11 12h10`,key:`1438ji`}],[`path`,{d:`M11 19h10`,key:`11t30w`}],[`path`,{d:`M4 4h1v5`,key:`10yrso`}],[`path`,{d:`M4 9h2`,key:`r1h2o0`}],[`path`,{d:`M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02`,key:`xtkcd5`}]]),pe=l(`quote`,[[`path`,{d:`M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z`,key:`rib7q0`}],[`path`,{d:`M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z`,key:`1ymkrd`}]]),me=l(`redo-2`,[[`path`,{d:`m15 14 5-5-5-5`,key:`12vg1m`}],[`path`,{d:`M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13`,key:`6uklza`}]]),he=l(`strikethrough`,[[`path`,{d:`M16 4H9a3 3 0 0 0-2.83 4`,key:`43sutm`}],[`path`,{d:`M14 12a4 4 0 0 1 0 8H6`,key:`nlfj13`}],[`line`,{x1:`4`,x2:`20`,y1:`12`,y2:`12`,key:`1e0a9i`}]]),ge=l(`table`,[[`path`,{d:`M12 3v18`,key:`108xh3`}],[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M3 15h18`,key:`5xshup`}]]),_e=l(`undo-2`,[[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}],[`path`,{d:`M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11`,key:`f3b9sd`}]]),ve=l(`unlink`,[[`path`,{d:`m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71`,key:`yqzxt4`}],[`path`,{d:`m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71`,key:`4qinb0`}],[`line`,{x1:`8`,x2:`8`,y1:`2`,y2:`5`,key:`1041cp`}],[`line`,{x1:`2`,x2:`5`,y1:`8`,y2:`8`,key:`14m1p5`}],[`line`,{x1:`16`,x2:`16`,y1:`19`,y2:`22`,key:`rzdirn`}],[`line`,{x1:`19`,x2:`22`,y1:`16`,y2:`16`,key:`ox905f`}]]),T=t(r(),1),ye=t(o(),1),be=i(),xe=b(),Se=x();function Ce(e){this.content=e}Ce.prototype={constructor:Ce,find:function(e){for(var t=0;t<this.content.length;t+=2)if(this.content[t]===e)return t;return-1},get:function(e){var t=this.find(e);return t==-1?void 0:this.content[t+1]},update:function(e,t,n){var r=n&&n!=e?this.remove(n):this,i=r.find(e),a=r.content.slice();return i==-1?a.push(n||e,t):(a[i+1]=t,n&&(a[i]=n)),new Ce(a)},remove:function(e){var t=this.find(e);if(t==-1)return this;var n=this.content.slice();return n.splice(t,2),new Ce(n)},addToStart:function(e,t){return new Ce([e,t].concat(this.remove(e).content))},addToEnd:function(e,t){var n=this.remove(e).content.slice();return n.push(e,t),new Ce(n)},addBefore:function(e,t,n){var r=this.remove(t),i=r.content.slice(),a=r.find(e);return i.splice(a==-1?i.length:a,0,t,n),new Ce(i)},forEach:function(e){for(var t=0;t<this.content.length;t+=2)e(this.content[t],this.content[t+1])},prepend:function(e){return e=Ce.from(e),e.size?new Ce(e.content.concat(this.subtract(e).content)):this},append:function(e){return e=Ce.from(e),e.size?new Ce(this.subtract(e).content.concat(e.content)):this},subtract:function(e){var t=this;e=Ce.from(e);for(var n=0;n<e.content.length;n+=2)t=t.remove(e.content[n]);return t},toObject:function(){var e={};return this.forEach(function(t,n){e[t]=n}),e},get size(){return this.content.length>>1}},Ce.from=function(e){if(e instanceof Ce)return e;var t=[];if(e)for(var n in e)t.push(n,e[n]);return new Ce(t)};function we(e,t,n){for(let r=0;;r++){if(r==e.childCount||r==t.childCount)return e.childCount==t.childCount?null:n;let i=e.child(r),a=t.child(r);if(i==a){n+=i.nodeSize;continue}if(!i.sameMarkup(a))return n;if(i.isText&&i.text!=a.text){let e=i.text,t=a.text,r=0;for(;e[r]==t[r];r++)n++;return r&&r<e.length&&r<t.length&&De(e.charCodeAt(r-1))&&Ee(e.charCodeAt(r))&&n--,n}if(i.content.size||a.content.size){let e=we(i.content,a.content,n+1);if(e!=null)return e}n+=i.nodeSize}}function Te(e,t,n,r){for(let i=e.childCount,a=t.childCount;;){if(i==0||a==0)return i==a?null:{a:n,b:r};let o=e.child(--i),s=t.child(--a),c=o.nodeSize;if(o==s){n-=c,r-=c;continue}if(!o.sameMarkup(s))return{a:n,b:r};if(o.isText&&o.text!=s.text){let e=o.text,t=s.text,i=e.length,a=t.length;for(;i>0&&a>0&&e[i-1]==t[a-1];)i--,a--,n--,r--;return i&&a&&i<e.length&&De(e.charCodeAt(i-1))&&Ee(e.charCodeAt(i))&&(n++,r++),{a:n,b:r}}if(o.content.size||s.content.size){let e=Te(o.content,s.content,n-1,r-1);if(e)return e}n-=c,r-=c}}function Ee(e){return e>=56320&&e<57344}function De(e){return e>=55296&&e<56320}var E=class e{constructor(e,t){if(this.content=e,this.size=t||0,t==null)for(let t=0;t<e.length;t++)this.size+=e[t].nodeSize}nodesBetween(e,t,n,r=0,i){for(let a=0,o=0;o<t;a++){let s=this.content[a],c=o+s.nodeSize;if(c>e&&n(s,r+o,i||null,a)!==!1&&s.content.size){let i=o+1;s.nodesBetween(Math.max(0,e-i),Math.min(s.content.size,t-i),n,r+i)}o=c}}descendants(e){this.nodesBetween(0,this.size,e)}textBetween(e,t,n,r){let i=``,a=!0;return this.nodesBetween(e,t,(o,s)=>{let c=o.isText?o.text.slice(Math.max(e,s)-s,t-s):o.isLeaf?r?typeof r==`function`?r(o):r:o.type.spec.leafText?o.type.spec.leafText(o):``:``;o.isBlock&&(o.isLeaf&&c||o.isTextblock)&&n&&(a?a=!1:i+=n),i+=c},0),i}append(t){if(!t.size)return this;if(!this.size)return t;let n=this.lastChild,r=t.firstChild,i=this.content.slice(),a=0;for(n.isText&&n.sameMarkup(r)&&(i[i.length-1]=n.withText(n.text+r.text),a=1);a<t.content.length;a++)i.push(t.content[a]);return new e(i,this.size+t.size)}cut(t,n=this.size){if(t==0&&n==this.size)return this;let r=[],i=0;if(n>t)for(let e=0,a=0;a<n;e++){let o=this.content[e],s=a+o.nodeSize;s>t&&((a<t||s>n)&&(o=o.isText?o.cut(Math.max(0,t-a),Math.min(o.text.length,n-a)):o.cut(Math.max(0,t-a-1),Math.min(o.content.size,n-a-1))),r.push(o),i+=o.nodeSize),a=s}return new e(r,i)}cutByIndex(t,n){return t==n?e.empty:t==0&&n==this.content.length?this:new e(this.content.slice(t,n))}replaceChild(t,n){let r=this.content[t];if(r==n)return this;let i=this.content.slice(),a=this.size+n.nodeSize-r.nodeSize;return i[t]=n,new e(i,a)}addToStart(t){return new e([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new e(this.content.concat(t),this.size+t.nodeSize)}eq(e){if(this.content.length!=e.content.length)return!1;for(let t=0;t<this.content.length;t++)if(!this.content[t].eq(e.content[t]))return!1;return!0}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(e){let t=this.content[e];if(!t)throw RangeError(`Index `+e+` out of range for `+this);return t}maybeChild(e){return this.content[e]||null}forEach(e){for(let t=0,n=0;t<this.content.length;t++){let r=this.content[t];e(r,n,t),n+=r.nodeSize}}findDiffStart(e,t=0){return we(this,e,t)}findDiffEnd(e,t=this.size,n=e.size){return Te(this,e,t,n)}findIndex(e){if(e==0)return ke(0,e);if(e==this.size)return ke(this.content.length,e);if(e>this.size||e<0)throw RangeError(`Position ${e} outside of fragment (${this})`);for(let t=0,n=0;;t++){let r=this.child(t),i=n+r.nodeSize;if(i>=e)return i==e?ke(t+1,i):ke(t,n);n=i}}toString(){return`<`+this.toStringInner()+`>`}toStringInner(){return this.content.join(`, `)}toJSON(){return this.content.length?this.content.map(e=>e.toJSON()):null}static fromJSON(t,n){if(!n)return e.empty;if(!Array.isArray(n))throw RangeError(`Invalid input for Fragment.fromJSON`);return e.fromArray(n.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return e.empty;let n,r=0;for(let e=0;e<t.length;e++){let i=t[e];r+=i.nodeSize,e&&i.isText&&t[e-1].sameMarkup(i)?(n||=t.slice(0,e),n[n.length-1]=i.withText(n[n.length-1].text+i.text)):n&&n.push(i)}return new e(n||t,r)}static from(t){if(!t)return e.empty;if(t instanceof e)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new e([t],t.nodeSize);throw RangeError(`Can not convert `+t+` to a Fragment`+(t.nodesBetween?` (looks like multiple versions of prosemirror-model were loaded)`:``))}};E.empty=new E([],0);var Oe={index:0,offset:0};function ke(e,t){return Oe.index=e,Oe.offset=t,Oe}function Ae(e,t){if(e===t)return!0;if(!(e&&typeof e==`object`)||!(t&&typeof t==`object`))return!1;let n=Array.isArray(e);if(Array.isArray(t)!=n)return!1;if(n){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!Ae(e[n],t[n]))return!1}else{for(let n in e)if(!(n in t)||!Ae(e[n],t[n]))return!1;for(let n in t)if(!(n in e))return!1}return!0}var D=class e{constructor(e,t){this.type=e,this.attrs=t}addToSet(e){let t,n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(this.eq(i))return e;if(this.type.excludes(i.type))t||=e.slice(0,r);else if(i.type.excludes(this.type))return e;else!n&&i.type.rank>this.type.rank&&(t||=e.slice(0,r),t.push(this),n=!0),t&&t.push(i)}return t||=e.slice(),n||t.push(this),t}removeFromSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return e.slice(0,t).concat(e.slice(t+1));return e}isInSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return!0;return!1}eq(e){return this==e||this.type==e.type&&Ae(this.attrs,e.attrs)}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return e}static fromJSON(e,t){if(!t)throw RangeError(`Invalid input for Mark.fromJSON`);let n=e.marks[t.type];if(!n)throw RangeError(`There is no mark type ${t.type} in this schema`);let r=n.create(t.attrs);return n.checkAttrs(r.attrs),r}static sameSet(e,t){if(e==t)return!0;if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].eq(t[n]))return!1;return!0}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return e.none;if(t instanceof e)return[t];let n=t.slice();return n.sort((e,t)=>e.type.rank-t.type.rank),n}};D.none=[];var je=class extends Error{},O=class e{constructor(e,t,n){this.content=e,this.openStart=t,this.openEnd=n}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,n){let r=Ne(this.content,t+this.openStart,n,this.openStart+1,this.openEnd+1);return r&&new e(r,this.openStart,this.openEnd)}removeBetween(t,n){return new e(Me(this.content,t+this.openStart,n+this.openStart),this.openStart,this.openEnd)}eq(e){return this.content.eq(e.content)&&this.openStart==e.openStart&&this.openEnd==e.openEnd}toString(){return this.content+`(`+this.openStart+`,`+this.openEnd+`)`}toJSON(){if(!this.content.size)return null;let e={content:this.content.toJSON()};return this.openStart>0&&(e.openStart=this.openStart),this.openEnd>0&&(e.openEnd=this.openEnd),e}static fromJSON(t,n){if(!n)return e.empty;let r=n.openStart||0,i=n.openEnd||0;if(typeof r!=`number`||typeof i!=`number`)throw RangeError(`Invalid input for Slice.fromJSON`);return new e(E.fromJSON(t,n.content),r,i)}static maxOpen(t,n=!0){let r=0,i=0;for(let e=t.firstChild;e&&!e.isLeaf&&(n||!e.type.spec.isolating);e=e.firstChild)r++;for(let e=t.lastChild;e&&!e.isLeaf&&(n||!e.type.spec.isolating);e=e.lastChild)i++;return new e(t,r,i)}};O.empty=new O(E.empty,0,0);function Me(e,t,n){let{index:r,offset:i}=e.findIndex(t),a=e.maybeChild(r),{index:o,offset:s}=e.findIndex(n);if(i==t||a.isText){if(s!=n&&!e.child(o).isText)throw RangeError(`Removing non-flat range`);return e.cut(0,t).append(e.cut(n))}if(r!=o)throw RangeError(`Removing non-flat range`);return e.replaceChild(r,a.copy(Me(a.content,t-i-1,n-i-1)))}function Ne(e,t,n,r,i,a){let{index:o,offset:s}=e.findIndex(t),c=e.maybeChild(o);if(s==t||c.isText)return a&&r<=0&&i<=0&&!a.canReplace(o,o,n)?null:e.cut(0,t).append(n).append(e.cut(t));let l=Ne(c.content,t-s-1,n,o==0?r-1:0,o==e.childCount-1?i-1:0,c);return l&&e.replaceChild(o,c.copy(l))}function Pe(e,t,n){if(n.openStart>e.depth)throw new je(`Inserted content deeper than insertion position`);if(e.depth-n.openStart!=t.depth-n.openEnd)throw new je(`Inconsistent open depths`);return Fe(e,t,n,0)}function Fe(e,t,n,r){let i=e.index(r),a=e.node(r);if(i==t.index(r)&&r<e.depth-n.openStart){let o=Fe(e,t,n,r+1);return a.copy(a.content.replaceChild(i,o))}else if(!n.content.size)return Be(a,He(e,t,r));else if(!n.openStart&&!n.openEnd&&e.depth==r&&t.depth==r){let r=e.parent,i=r.content;return Be(r,i.cut(0,e.parentOffset).append(n.content).append(i.cut(t.parentOffset)))}else{let{start:i,end:o}=Ue(n,e);return Be(a,Ve(e,i,o,t,r))}}function Ie(e,t){if(!t.type.compatibleContent(e.type))throw new je(`Cannot join `+t.type.name+` onto `+e.type.name)}function Le(e,t,n){let r=e.node(n);return Ie(r,t.node(n)),r}function Re(e,t){let n=t.length-1;n>=0&&e.isText&&e.sameMarkup(t[n])?t[n]=e.withText(t[n].text+e.text):t.push(e)}function ze(e,t,n,r){let i=(t||e).node(n),a=0,o=t?t.index(n):i.childCount;e&&(a=e.index(n),e.depth>n?a++:e.textOffset&&(Re(e.nodeAfter,r),a++));for(let e=a;e<o;e++)Re(i.child(e),r);t&&t.depth==n&&t.textOffset&&Re(t.nodeBefore,r)}function Be(e,t){if(!e.type.validContent(t))throw new je(`Invalid content for node `+e.type.name);return e.copy(t)}function Ve(e,t,n,r,i){let a=e.depth>i&&Le(e,t,i+1),o=r.depth>i&&Le(n,r,i+1),s=[];return ze(null,e,i,s),a&&o&&t.index(i)==n.index(i)?(Ie(a,o),Re(Be(a,Ve(e,t,n,r,i+1)),s)):(a&&Re(Be(a,He(e,t,i+1)),s),ze(t,n,i,s),o&&Re(Be(o,He(n,r,i+1)),s)),ze(r,null,i,s),new E(s)}function He(e,t,n){let r=[];return ze(null,e,n,r),e.depth>n&&Re(Be(Le(e,t,n+1),He(e,t,n+1)),r),ze(t,null,n,r),new E(r)}function Ue(e,t){let n=t.depth-e.openStart,r=t.node(n).copy(e.content);for(let e=n-1;e>=0;e--)r=t.node(e).copy(E.from(r));return{start:r.resolveNoCache(e.openStart+n),end:r.resolveNoCache(r.content.size-e.openEnd-n)}}var We=class e{constructor(e,t,n){this.pos=e,this.path=t,this.parentOffset=n,this.depth=t.length/3-1}resolveDepth(e){return e==null?this.depth:e<0?this.depth+e:e}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(e){return this.path[this.resolveDepth(e)*3]}index(e){return this.path[this.resolveDepth(e)*3+1]}indexAfter(e){return e=this.resolveDepth(e),this.index(e)+(e==this.depth&&!this.textOffset?0:1)}start(e){return e=this.resolveDepth(e),e==0?0:this.path[e*3-1]+1}end(e){return e=this.resolveDepth(e),this.start(e)+this.node(e).content.size}before(e){if(e=this.resolveDepth(e),!e)throw RangeError(`There is no position before the top-level node`);return e==this.depth+1?this.pos:this.path[e*3-1]}after(e){if(e=this.resolveDepth(e),!e)throw RangeError(`There is no position after the top-level node`);return e==this.depth+1?this.pos:this.path[e*3-1]+this.path[e*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let e=this.parent,t=this.index(this.depth);if(t==e.childCount)return null;let n=this.pos-this.path[this.path.length-1],r=e.child(t);return n?e.child(t).cut(n):r}get nodeBefore(){let e=this.index(this.depth),t=this.pos-this.path[this.path.length-1];return t?this.parent.child(e).cut(0,t):e==0?null:this.parent.child(e-1)}posAtIndex(e,t){t=this.resolveDepth(t);let n=this.path[t*3],r=t==0?0:this.path[t*3-1]+1;for(let t=0;t<e;t++)r+=n.child(t).nodeSize;return r}marks(){let e=this.parent,t=this.index();if(e.content.size==0)return D.none;if(this.textOffset)return e.child(t).marks;let n=e.maybeChild(t-1),r=e.maybeChild(t);if(!n){let e=n;n=r,r=e}let i=n.marks;for(var a=0;a<i.length;a++)i[a].type.spec.inclusive===!1&&(!r||!i[a].isInSet(r.marks))&&(i=i[a--].removeFromSet(i));return i}marksAcross(e){let t=this.parent.maybeChild(this.index());if(!t||!t.isInline)return null;let n=t.marks,r=e.parent.maybeChild(e.index());for(var i=0;i<n.length;i++)n[i].type.spec.inclusive===!1&&(!r||!n[i].isInSet(r.marks))&&(n=n[i--].removeFromSet(n));return n}sharedDepth(e){for(let t=this.depth;t>0;t--)if(this.start(t)<=e&&this.end(t)>=e)return t;return 0}blockRange(e=this,t){if(e.pos<this.pos)return e.blockRange(this);for(let n=this.depth-(this.parent.inlineContent||this.pos==e.pos?1:0);n>=0;n--)if(e.pos<=this.end(n)&&(!t||t(this.node(n))))return new Je(this,e,n);return null}sameParent(e){return this.pos-this.parentOffset==e.pos-e.parentOffset}max(e){return e.pos>this.pos?e:this}min(e){return e.pos<this.pos?e:this}toString(){let e=``;for(let t=1;t<=this.depth;t++)e+=(e?`/`:``)+this.node(t).type.name+`_`+this.index(t-1);return e+`:`+this.parentOffset}static resolve(t,n){if(!(n>=0&&n<=t.content.size))throw RangeError(`Position `+n+` out of range`);let r=[],i=0,a=n;for(let e=t;;){let{index:t,offset:n}=e.content.findIndex(a),o=a-n;if(r.push(e,t,i+n),!o||(e=e.child(t),e.isText))break;a=o-1,i+=n+1}return new e(n,r,a)}static resolveCached(t,n){let r=qe.get(t);if(r)for(let e=0;e<r.elts.length;e++){let t=r.elts[e];if(t.pos==n)return t}else qe.set(t,r=new Ge);let i=r.elts[r.i]=e.resolve(t,n);return r.i=(r.i+1)%Ke,i}},Ge=class{constructor(){this.elts=[],this.i=0}},Ke=12,qe=new WeakMap,Je=class{constructor(e,t,n){this.$from=e,this.$to=t,this.depth=n}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}},Ye=Object.create(null),Xe=class e{constructor(e,t,n,r=D.none){this.type=e,this.attrs=t,this.marks=r,this.content=n||E.empty}get children(){return this.content.content}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(e){return this.content.child(e)}maybeChild(e){return this.content.maybeChild(e)}forEach(e){this.content.forEach(e)}nodesBetween(e,t,n,r=0){this.content.nodesBetween(e,t,n,r,this)}descendants(e){this.nodesBetween(0,this.content.size,e)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,``)}textBetween(e,t,n,r){return this.content.textBetween(e,t,n,r)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(e){return this==e||this.sameMarkup(e)&&this.content.eq(e.content)}sameMarkup(e){return this.hasMarkup(e.type,e.attrs,e.marks)}hasMarkup(e,t,n){return this.type==e&&Ae(this.attrs,t||e.defaultAttrs||Ye)&&D.sameSet(this.marks,n||D.none)}copy(t=null){return t==this.content?this:new e(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new e(this.type,this.attrs,this.content,t)}cut(e,t=this.content.size){return e==0&&t==this.content.size?this:this.copy(this.content.cut(e,t))}slice(e,t=this.content.size,n=!1){if(e==t)return O.empty;let r=this.resolve(e),i=this.resolve(t),a=n?0:r.sharedDepth(t),o=r.start(a);return new O(r.node(a).content.cut(r.pos-o,i.pos-o),r.depth-a,i.depth-a)}replace(e,t,n){return Pe(this.resolve(e),this.resolve(t),n)}nodeAt(e){for(let t=this;;){let{index:n,offset:r}=t.content.findIndex(e);if(t=t.maybeChild(n),!t)return null;if(r==e||t.isText)return t;e-=r+1}}childAfter(e){let{index:t,offset:n}=this.content.findIndex(e);return{node:this.content.maybeChild(t),index:t,offset:n}}childBefore(e){if(e==0)return{node:null,index:0,offset:0};let{index:t,offset:n}=this.content.findIndex(e);if(n<e)return{node:this.content.child(t),index:t,offset:n};let r=this.content.child(t-1);return{node:r,index:t-1,offset:n-r.nodeSize}}resolve(e){return We.resolveCached(this,e)}resolveNoCache(e){return We.resolve(this,e)}rangeHasMark(e,t,n){let r=!1;return t>e&&this.nodesBetween(e,t,e=>(n.isInSet(e.marks)&&(r=!0),!r)),r}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let e=this.type.name;return this.content.size&&(e+=`(`+this.content.toStringInner()+`)`),Qe(this.marks,e)}contentMatchAt(e){let t=this.type.contentMatch.matchFragment(this.content,0,e);if(!t)throw Error(`Called contentMatchAt on a node with invalid content`);return t}canReplace(e,t,n=E.empty,r=0,i=n.childCount){let a=this.contentMatchAt(e).matchFragment(n,r,i),o=a&&a.matchFragment(this.content,t);if(!o||!o.validEnd)return!1;for(let e=r;e<i;e++)if(!this.type.allowsMarks(n.child(e).marks))return!1;return!0}canReplaceWith(e,t,n,r){if(r&&!this.type.allowsMarks(r))return!1;let i=this.contentMatchAt(e).matchType(n),a=i&&i.matchFragment(this.content,t);return a?a.validEnd:!1}canAppend(e){return e.content.size?this.canReplace(this.childCount,this.childCount,e.content):this.type.compatibleContent(e.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let e=D.none;for(let t=0;t<this.marks.length;t++){let n=this.marks[t];n.type.checkAttrs(n.attrs),e=n.addToSet(e)}if(!D.sameSet(e,this.marks))throw RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map(e=>e.type.name)}`);this.content.forEach(e=>e.check())}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return this.content.size&&(e.content=this.content.toJSON()),this.marks.length&&(e.marks=this.marks.map(e=>e.toJSON())),e}static fromJSON(e,t){if(!t)throw RangeError(`Invalid input for Node.fromJSON`);let n;if(t.marks){if(!Array.isArray(t.marks))throw RangeError(`Invalid mark data for Node.fromJSON`);n=t.marks.map(e.markFromJSON)}if(t.type==`text`){if(typeof t.text!=`string`)throw RangeError(`Invalid text node in JSON`);return e.text(t.text,n)}let r=E.fromJSON(e,t.content),i=e.nodeType(t.type).create(t.attrs,r,n);return i.type.checkAttrs(i.attrs),i}};Xe.prototype.text=void 0;var Ze=class e extends Xe{constructor(e,t,n,r){if(super(e,t,null,r),!n)throw RangeError(`Empty text nodes are not allowed`);this.text=n}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):Qe(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(e,t){return this.text.slice(e,t)}get nodeSize(){return this.text.length}mark(t){return t==this.marks?this:new e(this.type,this.attrs,this.text,t)}withText(t){return t==this.text?this:new e(this.type,this.attrs,t,this.marks)}cut(e=0,t=this.text.length){return e==0&&t==this.text.length?this:this.withText(this.text.slice(e,t))}eq(e){return this.sameMarkup(e)&&this.text==e.text}toJSON(){let e=super.toJSON();return e.text=this.text,e}};function Qe(e,t){for(let n=e.length-1;n>=0;n--)t=e[n].type.name+`(`+t+`)`;return t}var $e=class e{constructor(e){this.validEnd=e,this.next=[],this.wrapCache=[]}static parse(t,n){let r=new et(t,n);if(r.next==null)return e.empty;let i=tt(r);r.next&&r.err(`Unexpected trailing text`);let a=dt(ct(i));return ft(a,r),a}matchType(e){for(let t=0;t<this.next.length;t++)if(this.next[t].type==e)return this.next[t].next;return null}matchFragment(e,t=0,n=e.childCount){let r=this;for(let i=t;r&&i<n;i++)r=r.matchType(e.child(i).type);return r}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let e=0;e<this.next.length;e++){let{type:t}=this.next[e];if(!(t.isText||t.hasRequiredAttrs()))return t}return null}compatible(e){for(let t=0;t<this.next.length;t++)for(let n=0;n<e.next.length;n++)if(this.next[t].type==e.next[n].type)return!0;return!1}fillBefore(e,t=!1,n=0){let r=[this];function i(a,o){let s=a.matchFragment(e,n);if(s&&(!t||s.validEnd))return E.from(o.map(e=>e.createAndFill()));for(let e=0;e<a.next.length;e++){let{type:t,next:n}=a.next[e];if(!(t.isText||t.hasRequiredAttrs())&&r.indexOf(n)==-1){r.push(n);let e=i(n,o.concat(t));if(e)return e}}return null}return i(this,[])}findWrapping(e){for(let t=0;t<this.wrapCache.length;t+=2)if(this.wrapCache[t]==e)return this.wrapCache[t+1];let t=this.computeWrapping(e);return this.wrapCache.push(e,t),t}computeWrapping(e){let t=Object.create(null),n=[{match:this,type:null,via:null}];for(;n.length;){let r=n.shift(),i=r.match;if(i.matchType(e)){let e=[];for(let t=r;t.type;t=t.via)e.push(t.type);return e.reverse()}for(let e=0;e<i.next.length;e++){let{type:a,next:o}=i.next[e];!a.isLeaf&&!a.hasRequiredAttrs()&&!(a.name in t)&&(!r.type||o.validEnd)&&(n.push({match:a.contentMatch,type:a,via:r}),t[a.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(e){if(e>=this.next.length)throw RangeError(`There's no ${e}th edge in this content match`);return this.next[e]}toString(){let e=[];function t(n){e.push(n);for(let r=0;r<n.next.length;r++)e.indexOf(n.next[r].next)==-1&&t(n.next[r].next)}return t(this),e.map((t,n)=>{let r=n+(t.validEnd?`*`:` `)+` `;for(let n=0;n<t.next.length;n++)r+=(n?`, `:``)+t.next[n].type.name+`->`+e.indexOf(t.next[n].next);return r}).join(`
|
|
1
|
+
import{n as e,r as t,t as n}from"./rolldown-runtime-QTnfLwEv.js";import{a as r,n as i,t as a}from"./i18n-vendor-T6EnJ_TL.js";import{h as o,t as s}from"./react-vendor-CzSUaSLk.js";import{n as c,r as l,t as u}from"./input-tJjsdU1x.js";import{a as d,c as f,d as p,i as m,l as h,o as g,s as _,t as v,u as y}from"./popover-C2xHG6L3.js";import{o as b}from"./icons-BTbA1N7a.js";import{I as x,dt as S,ft as C,lt as w,ut as ee}from"./ui-vendor-BuwRGdK1.js";var te=l(`between-horizontal-end`,[[`rect`,{width:`13`,height:`7`,x:`3`,y:`3`,rx:`1`,key:`11xb64`}],[`path`,{d:`m22 15-3-3 3-3`,key:`26chmm`}],[`rect`,{width:`13`,height:`7`,x:`3`,y:`14`,rx:`1`,key:`k6ky7n`}]]),ne=l(`between-vertical-end`,[[`rect`,{width:`7`,height:`13`,x:`3`,y:`3`,rx:`1`,key:`1fdu0f`}],[`path`,{d:`m9 22 3-3 3 3`,key:`17z65a`}],[`rect`,{width:`7`,height:`13`,x:`14`,y:`3`,rx:`1`,key:`1squn4`}]]),re=l(`bold`,[[`path`,{d:`M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8`,key:`mg9rjx`}]]),ie=l(`code-xml`,[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]]),ae=l(`columns-3`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),oe=l(`grid-2x2-x`,[[`path`,{d:`M12 3v17a1 1 0 0 1-1 1H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v6a1 1 0 0 1-1 1H3`,key:`11za1p`}],[`path`,{d:`m16 16 5 5`,key:`8tpb07`}],[`path`,{d:`m16 21 5-5`,key:`193jll`}]]),se=l(`heading-1`,[[`path`,{d:`M4 12h8`,key:`17cfdx`}],[`path`,{d:`M4 18V6`,key:`1rz3zl`}],[`path`,{d:`M12 18V6`,key:`zqpxq5`}],[`path`,{d:`m17 12 3-2v8`,key:`1hhhft`}]]),ce=l(`heading-2`,[[`path`,{d:`M4 12h8`,key:`17cfdx`}],[`path`,{d:`M4 18V6`,key:`1rz3zl`}],[`path`,{d:`M12 18V6`,key:`zqpxq5`}],[`path`,{d:`M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1`,key:`9jr5yi`}]]),le=l(`heading-3`,[[`path`,{d:`M4 12h8`,key:`17cfdx`}],[`path`,{d:`M4 18V6`,key:`1rz3zl`}],[`path`,{d:`M12 18V6`,key:`zqpxq5`}],[`path`,{d:`M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2`,key:`68ncm8`}],[`path`,{d:`M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2`,key:`1ejuhz`}]]),ue=l(`image-plus`,[[`path`,{d:`M16 5h6`,key:`1vod17`}],[`path`,{d:`M19 2v6`,key:`4bpg5p`}],[`path`,{d:`M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5`,key:`1ue2ih`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}]]),de=l(`italic`,[[`line`,{x1:`19`,x2:`10`,y1:`4`,y2:`4`,key:`15jd3p`}],[`line`,{x1:`14`,x2:`5`,y1:`20`,y2:`20`,key:`bu0au3`}],[`line`,{x1:`15`,x2:`9`,y1:`4`,y2:`20`,key:`uljnxc`}]]),fe=l(`list-ordered`,[[`path`,{d:`M11 5h10`,key:`1cz7ny`}],[`path`,{d:`M11 12h10`,key:`1438ji`}],[`path`,{d:`M11 19h10`,key:`11t30w`}],[`path`,{d:`M4 4h1v5`,key:`10yrso`}],[`path`,{d:`M4 9h2`,key:`r1h2o0`}],[`path`,{d:`M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02`,key:`xtkcd5`}]]),pe=l(`quote`,[[`path`,{d:`M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z`,key:`rib7q0`}],[`path`,{d:`M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z`,key:`1ymkrd`}]]),me=l(`redo-2`,[[`path`,{d:`m15 14 5-5-5-5`,key:`12vg1m`}],[`path`,{d:`M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13`,key:`6uklza`}]]),he=l(`strikethrough`,[[`path`,{d:`M16 4H9a3 3 0 0 0-2.83 4`,key:`43sutm`}],[`path`,{d:`M14 12a4 4 0 0 1 0 8H6`,key:`nlfj13`}],[`line`,{x1:`4`,x2:`20`,y1:`12`,y2:`12`,key:`1e0a9i`}]]),ge=l(`table`,[[`path`,{d:`M12 3v18`,key:`108xh3`}],[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M3 15h18`,key:`5xshup`}]]),_e=l(`undo-2`,[[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}],[`path`,{d:`M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11`,key:`f3b9sd`}]]),ve=l(`unlink`,[[`path`,{d:`m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71`,key:`yqzxt4`}],[`path`,{d:`m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71`,key:`4qinb0`}],[`line`,{x1:`8`,x2:`8`,y1:`2`,y2:`5`,key:`1041cp`}],[`line`,{x1:`2`,x2:`5`,y1:`8`,y2:`8`,key:`14m1p5`}],[`line`,{x1:`16`,x2:`16`,y1:`19`,y2:`22`,key:`rzdirn`}],[`line`,{x1:`19`,x2:`22`,y1:`16`,y2:`16`,key:`ox905f`}]]),T=t(r(),1),ye=t(o(),1),be=i(),xe=b(),Se=x();function Ce(e){this.content=e}Ce.prototype={constructor:Ce,find:function(e){for(var t=0;t<this.content.length;t+=2)if(this.content[t]===e)return t;return-1},get:function(e){var t=this.find(e);return t==-1?void 0:this.content[t+1]},update:function(e,t,n){var r=n&&n!=e?this.remove(n):this,i=r.find(e),a=r.content.slice();return i==-1?a.push(n||e,t):(a[i+1]=t,n&&(a[i]=n)),new Ce(a)},remove:function(e){var t=this.find(e);if(t==-1)return this;var n=this.content.slice();return n.splice(t,2),new Ce(n)},addToStart:function(e,t){return new Ce([e,t].concat(this.remove(e).content))},addToEnd:function(e,t){var n=this.remove(e).content.slice();return n.push(e,t),new Ce(n)},addBefore:function(e,t,n){var r=this.remove(t),i=r.content.slice(),a=r.find(e);return i.splice(a==-1?i.length:a,0,t,n),new Ce(i)},forEach:function(e){for(var t=0;t<this.content.length;t+=2)e(this.content[t],this.content[t+1])},prepend:function(e){return e=Ce.from(e),e.size?new Ce(e.content.concat(this.subtract(e).content)):this},append:function(e){return e=Ce.from(e),e.size?new Ce(this.subtract(e).content.concat(e.content)):this},subtract:function(e){var t=this;e=Ce.from(e);for(var n=0;n<e.content.length;n+=2)t=t.remove(e.content[n]);return t},toObject:function(){var e={};return this.forEach(function(t,n){e[t]=n}),e},get size(){return this.content.length>>1}},Ce.from=function(e){if(e instanceof Ce)return e;var t=[];if(e)for(var n in e)t.push(n,e[n]);return new Ce(t)};function we(e,t,n){for(let r=0;;r++){if(r==e.childCount||r==t.childCount)return e.childCount==t.childCount?null:n;let i=e.child(r),a=t.child(r);if(i==a){n+=i.nodeSize;continue}if(!i.sameMarkup(a))return n;if(i.isText&&i.text!=a.text){let e=i.text,t=a.text,r=0;for(;e[r]==t[r];r++)n++;return r&&r<e.length&&r<t.length&&De(e.charCodeAt(r-1))&&Ee(e.charCodeAt(r))&&n--,n}if(i.content.size||a.content.size){let e=we(i.content,a.content,n+1);if(e!=null)return e}n+=i.nodeSize}}function Te(e,t,n,r){for(let i=e.childCount,a=t.childCount;;){if(i==0||a==0)return i==a?null:{a:n,b:r};let o=e.child(--i),s=t.child(--a),c=o.nodeSize;if(o==s){n-=c,r-=c;continue}if(!o.sameMarkup(s))return{a:n,b:r};if(o.isText&&o.text!=s.text){let e=o.text,t=s.text,i=e.length,a=t.length;for(;i>0&&a>0&&e[i-1]==t[a-1];)i--,a--,n--,r--;return i&&a&&i<e.length&&De(e.charCodeAt(i-1))&&Ee(e.charCodeAt(i))&&(n++,r++),{a:n,b:r}}if(o.content.size||s.content.size){let e=Te(o.content,s.content,n-1,r-1);if(e)return e}n-=c,r-=c}}function Ee(e){return e>=56320&&e<57344}function De(e){return e>=55296&&e<56320}var E=class e{constructor(e,t){if(this.content=e,this.size=t||0,t==null)for(let t=0;t<e.length;t++)this.size+=e[t].nodeSize}nodesBetween(e,t,n,r=0,i){for(let a=0,o=0;o<t;a++){let s=this.content[a],c=o+s.nodeSize;if(c>e&&n(s,r+o,i||null,a)!==!1&&s.content.size){let i=o+1;s.nodesBetween(Math.max(0,e-i),Math.min(s.content.size,t-i),n,r+i)}o=c}}descendants(e){this.nodesBetween(0,this.size,e)}textBetween(e,t,n,r){let i=``,a=!0;return this.nodesBetween(e,t,(o,s)=>{let c=o.isText?o.text.slice(Math.max(e,s)-s,t-s):o.isLeaf?r?typeof r==`function`?r(o):r:o.type.spec.leafText?o.type.spec.leafText(o):``:``;o.isBlock&&(o.isLeaf&&c||o.isTextblock)&&n&&(a?a=!1:i+=n),i+=c},0),i}append(t){if(!t.size)return this;if(!this.size)return t;let n=this.lastChild,r=t.firstChild,i=this.content.slice(),a=0;for(n.isText&&n.sameMarkup(r)&&(i[i.length-1]=n.withText(n.text+r.text),a=1);a<t.content.length;a++)i.push(t.content[a]);return new e(i,this.size+t.size)}cut(t,n=this.size){if(t==0&&n==this.size)return this;let r=[],i=0;if(n>t)for(let e=0,a=0;a<n;e++){let o=this.content[e],s=a+o.nodeSize;s>t&&((a<t||s>n)&&(o=o.isText?o.cut(Math.max(0,t-a),Math.min(o.text.length,n-a)):o.cut(Math.max(0,t-a-1),Math.min(o.content.size,n-a-1))),r.push(o),i+=o.nodeSize),a=s}return new e(r,i)}cutByIndex(t,n){return t==n?e.empty:t==0&&n==this.content.length?this:new e(this.content.slice(t,n))}replaceChild(t,n){let r=this.content[t];if(r==n)return this;let i=this.content.slice(),a=this.size+n.nodeSize-r.nodeSize;return i[t]=n,new e(i,a)}addToStart(t){return new e([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new e(this.content.concat(t),this.size+t.nodeSize)}eq(e){if(this.content.length!=e.content.length)return!1;for(let t=0;t<this.content.length;t++)if(!this.content[t].eq(e.content[t]))return!1;return!0}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(e){let t=this.content[e];if(!t)throw RangeError(`Index `+e+` out of range for `+this);return t}maybeChild(e){return this.content[e]||null}forEach(e){for(let t=0,n=0;t<this.content.length;t++){let r=this.content[t];e(r,n,t),n+=r.nodeSize}}findDiffStart(e,t=0){return we(this,e,t)}findDiffEnd(e,t=this.size,n=e.size){return Te(this,e,t,n)}findIndex(e){if(e==0)return ke(0,e);if(e==this.size)return ke(this.content.length,e);if(e>this.size||e<0)throw RangeError(`Position ${e} outside of fragment (${this})`);for(let t=0,n=0;;t++){let r=this.child(t),i=n+r.nodeSize;if(i>=e)return i==e?ke(t+1,i):ke(t,n);n=i}}toString(){return`<`+this.toStringInner()+`>`}toStringInner(){return this.content.join(`, `)}toJSON(){return this.content.length?this.content.map(e=>e.toJSON()):null}static fromJSON(t,n){if(!n)return e.empty;if(!Array.isArray(n))throw RangeError(`Invalid input for Fragment.fromJSON`);return e.fromArray(n.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return e.empty;let n,r=0;for(let e=0;e<t.length;e++){let i=t[e];r+=i.nodeSize,e&&i.isText&&t[e-1].sameMarkup(i)?(n||=t.slice(0,e),n[n.length-1]=i.withText(n[n.length-1].text+i.text)):n&&n.push(i)}return new e(n||t,r)}static from(t){if(!t)return e.empty;if(t instanceof e)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new e([t],t.nodeSize);throw RangeError(`Can not convert `+t+` to a Fragment`+(t.nodesBetween?` (looks like multiple versions of prosemirror-model were loaded)`:``))}};E.empty=new E([],0);var Oe={index:0,offset:0};function ke(e,t){return Oe.index=e,Oe.offset=t,Oe}function Ae(e,t){if(e===t)return!0;if(!(e&&typeof e==`object`)||!(t&&typeof t==`object`))return!1;let n=Array.isArray(e);if(Array.isArray(t)!=n)return!1;if(n){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!Ae(e[n],t[n]))return!1}else{for(let n in e)if(!(n in t)||!Ae(e[n],t[n]))return!1;for(let n in t)if(!(n in e))return!1}return!0}var D=class e{constructor(e,t){this.type=e,this.attrs=t}addToSet(e){let t,n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(this.eq(i))return e;if(this.type.excludes(i.type))t||=e.slice(0,r);else if(i.type.excludes(this.type))return e;else!n&&i.type.rank>this.type.rank&&(t||=e.slice(0,r),t.push(this),n=!0),t&&t.push(i)}return t||=e.slice(),n||t.push(this),t}removeFromSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return e.slice(0,t).concat(e.slice(t+1));return e}isInSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return!0;return!1}eq(e){return this==e||this.type==e.type&&Ae(this.attrs,e.attrs)}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return e}static fromJSON(e,t){if(!t)throw RangeError(`Invalid input for Mark.fromJSON`);let n=e.marks[t.type];if(!n)throw RangeError(`There is no mark type ${t.type} in this schema`);let r=n.create(t.attrs);return n.checkAttrs(r.attrs),r}static sameSet(e,t){if(e==t)return!0;if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].eq(t[n]))return!1;return!0}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return e.none;if(t instanceof e)return[t];let n=t.slice();return n.sort((e,t)=>e.type.rank-t.type.rank),n}};D.none=[];var je=class extends Error{},O=class e{constructor(e,t,n){this.content=e,this.openStart=t,this.openEnd=n}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,n){let r=Ne(this.content,t+this.openStart,n,this.openStart+1,this.openEnd+1);return r&&new e(r,this.openStart,this.openEnd)}removeBetween(t,n){return new e(Me(this.content,t+this.openStart,n+this.openStart),this.openStart,this.openEnd)}eq(e){return this.content.eq(e.content)&&this.openStart==e.openStart&&this.openEnd==e.openEnd}toString(){return this.content+`(`+this.openStart+`,`+this.openEnd+`)`}toJSON(){if(!this.content.size)return null;let e={content:this.content.toJSON()};return this.openStart>0&&(e.openStart=this.openStart),this.openEnd>0&&(e.openEnd=this.openEnd),e}static fromJSON(t,n){if(!n)return e.empty;let r=n.openStart||0,i=n.openEnd||0;if(typeof r!=`number`||typeof i!=`number`)throw RangeError(`Invalid input for Slice.fromJSON`);return new e(E.fromJSON(t,n.content),r,i)}static maxOpen(t,n=!0){let r=0,i=0;for(let e=t.firstChild;e&&!e.isLeaf&&(n||!e.type.spec.isolating);e=e.firstChild)r++;for(let e=t.lastChild;e&&!e.isLeaf&&(n||!e.type.spec.isolating);e=e.lastChild)i++;return new e(t,r,i)}};O.empty=new O(E.empty,0,0);function Me(e,t,n){let{index:r,offset:i}=e.findIndex(t),a=e.maybeChild(r),{index:o,offset:s}=e.findIndex(n);if(i==t||a.isText){if(s!=n&&!e.child(o).isText)throw RangeError(`Removing non-flat range`);return e.cut(0,t).append(e.cut(n))}if(r!=o)throw RangeError(`Removing non-flat range`);return e.replaceChild(r,a.copy(Me(a.content,t-i-1,n-i-1)))}function Ne(e,t,n,r,i,a){let{index:o,offset:s}=e.findIndex(t),c=e.maybeChild(o);if(s==t||c.isText)return a&&r<=0&&i<=0&&!a.canReplace(o,o,n)?null:e.cut(0,t).append(n).append(e.cut(t));let l=Ne(c.content,t-s-1,n,o==0?r-1:0,o==e.childCount-1?i-1:0,c);return l&&e.replaceChild(o,c.copy(l))}function Pe(e,t,n){if(n.openStart>e.depth)throw new je(`Inserted content deeper than insertion position`);if(e.depth-n.openStart!=t.depth-n.openEnd)throw new je(`Inconsistent open depths`);return Fe(e,t,n,0)}function Fe(e,t,n,r){let i=e.index(r),a=e.node(r);if(i==t.index(r)&&r<e.depth-n.openStart){let o=Fe(e,t,n,r+1);return a.copy(a.content.replaceChild(i,o))}else if(!n.content.size)return Be(a,He(e,t,r));else if(!n.openStart&&!n.openEnd&&e.depth==r&&t.depth==r){let r=e.parent,i=r.content;return Be(r,i.cut(0,e.parentOffset).append(n.content).append(i.cut(t.parentOffset)))}else{let{start:i,end:o}=Ue(n,e);return Be(a,Ve(e,i,o,t,r))}}function Ie(e,t){if(!t.type.compatibleContent(e.type))throw new je(`Cannot join `+t.type.name+` onto `+e.type.name)}function Le(e,t,n){let r=e.node(n);return Ie(r,t.node(n)),r}function Re(e,t){let n=t.length-1;n>=0&&e.isText&&e.sameMarkup(t[n])?t[n]=e.withText(t[n].text+e.text):t.push(e)}function ze(e,t,n,r){let i=(t||e).node(n),a=0,o=t?t.index(n):i.childCount;e&&(a=e.index(n),e.depth>n?a++:e.textOffset&&(Re(e.nodeAfter,r),a++));for(let e=a;e<o;e++)Re(i.child(e),r);t&&t.depth==n&&t.textOffset&&Re(t.nodeBefore,r)}function Be(e,t){if(!e.type.validContent(t))throw new je(`Invalid content for node `+e.type.name);return e.copy(t)}function Ve(e,t,n,r,i){let a=e.depth>i&&Le(e,t,i+1),o=r.depth>i&&Le(n,r,i+1),s=[];return ze(null,e,i,s),a&&o&&t.index(i)==n.index(i)?(Ie(a,o),Re(Be(a,Ve(e,t,n,r,i+1)),s)):(a&&Re(Be(a,He(e,t,i+1)),s),ze(t,n,i,s),o&&Re(Be(o,He(n,r,i+1)),s)),ze(r,null,i,s),new E(s)}function He(e,t,n){let r=[];return ze(null,e,n,r),e.depth>n&&Re(Be(Le(e,t,n+1),He(e,t,n+1)),r),ze(t,null,n,r),new E(r)}function Ue(e,t){let n=t.depth-e.openStart,r=t.node(n).copy(e.content);for(let e=n-1;e>=0;e--)r=t.node(e).copy(E.from(r));return{start:r.resolveNoCache(e.openStart+n),end:r.resolveNoCache(r.content.size-e.openEnd-n)}}var We=class e{constructor(e,t,n){this.pos=e,this.path=t,this.parentOffset=n,this.depth=t.length/3-1}resolveDepth(e){return e==null?this.depth:e<0?this.depth+e:e}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(e){return this.path[this.resolveDepth(e)*3]}index(e){return this.path[this.resolveDepth(e)*3+1]}indexAfter(e){return e=this.resolveDepth(e),this.index(e)+(e==this.depth&&!this.textOffset?0:1)}start(e){return e=this.resolveDepth(e),e==0?0:this.path[e*3-1]+1}end(e){return e=this.resolveDepth(e),this.start(e)+this.node(e).content.size}before(e){if(e=this.resolveDepth(e),!e)throw RangeError(`There is no position before the top-level node`);return e==this.depth+1?this.pos:this.path[e*3-1]}after(e){if(e=this.resolveDepth(e),!e)throw RangeError(`There is no position after the top-level node`);return e==this.depth+1?this.pos:this.path[e*3-1]+this.path[e*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let e=this.parent,t=this.index(this.depth);if(t==e.childCount)return null;let n=this.pos-this.path[this.path.length-1],r=e.child(t);return n?e.child(t).cut(n):r}get nodeBefore(){let e=this.index(this.depth),t=this.pos-this.path[this.path.length-1];return t?this.parent.child(e).cut(0,t):e==0?null:this.parent.child(e-1)}posAtIndex(e,t){t=this.resolveDepth(t);let n=this.path[t*3],r=t==0?0:this.path[t*3-1]+1;for(let t=0;t<e;t++)r+=n.child(t).nodeSize;return r}marks(){let e=this.parent,t=this.index();if(e.content.size==0)return D.none;if(this.textOffset)return e.child(t).marks;let n=e.maybeChild(t-1),r=e.maybeChild(t);if(!n){let e=n;n=r,r=e}let i=n.marks;for(var a=0;a<i.length;a++)i[a].type.spec.inclusive===!1&&(!r||!i[a].isInSet(r.marks))&&(i=i[a--].removeFromSet(i));return i}marksAcross(e){let t=this.parent.maybeChild(this.index());if(!t||!t.isInline)return null;let n=t.marks,r=e.parent.maybeChild(e.index());for(var i=0;i<n.length;i++)n[i].type.spec.inclusive===!1&&(!r||!n[i].isInSet(r.marks))&&(n=n[i--].removeFromSet(n));return n}sharedDepth(e){for(let t=this.depth;t>0;t--)if(this.start(t)<=e&&this.end(t)>=e)return t;return 0}blockRange(e=this,t){if(e.pos<this.pos)return e.blockRange(this);for(let n=this.depth-(this.parent.inlineContent||this.pos==e.pos?1:0);n>=0;n--)if(e.pos<=this.end(n)&&(!t||t(this.node(n))))return new Je(this,e,n);return null}sameParent(e){return this.pos-this.parentOffset==e.pos-e.parentOffset}max(e){return e.pos>this.pos?e:this}min(e){return e.pos<this.pos?e:this}toString(){let e=``;for(let t=1;t<=this.depth;t++)e+=(e?`/`:``)+this.node(t).type.name+`_`+this.index(t-1);return e+`:`+this.parentOffset}static resolve(t,n){if(!(n>=0&&n<=t.content.size))throw RangeError(`Position `+n+` out of range`);let r=[],i=0,a=n;for(let e=t;;){let{index:t,offset:n}=e.content.findIndex(a),o=a-n;if(r.push(e,t,i+n),!o||(e=e.child(t),e.isText))break;a=o-1,i+=n+1}return new e(n,r,a)}static resolveCached(t,n){let r=qe.get(t);if(r)for(let e=0;e<r.elts.length;e++){let t=r.elts[e];if(t.pos==n)return t}else qe.set(t,r=new Ge);let i=r.elts[r.i]=e.resolve(t,n);return r.i=(r.i+1)%Ke,i}},Ge=class{constructor(){this.elts=[],this.i=0}},Ke=12,qe=new WeakMap,Je=class{constructor(e,t,n){this.$from=e,this.$to=t,this.depth=n}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}},Ye=Object.create(null),Xe=class e{constructor(e,t,n,r=D.none){this.type=e,this.attrs=t,this.marks=r,this.content=n||E.empty}get children(){return this.content.content}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(e){return this.content.child(e)}maybeChild(e){return this.content.maybeChild(e)}forEach(e){this.content.forEach(e)}nodesBetween(e,t,n,r=0){this.content.nodesBetween(e,t,n,r,this)}descendants(e){this.nodesBetween(0,this.content.size,e)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,``)}textBetween(e,t,n,r){return this.content.textBetween(e,t,n,r)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(e){return this==e||this.sameMarkup(e)&&this.content.eq(e.content)}sameMarkup(e){return this.hasMarkup(e.type,e.attrs,e.marks)}hasMarkup(e,t,n){return this.type==e&&Ae(this.attrs,t||e.defaultAttrs||Ye)&&D.sameSet(this.marks,n||D.none)}copy(t=null){return t==this.content?this:new e(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new e(this.type,this.attrs,this.content,t)}cut(e,t=this.content.size){return e==0&&t==this.content.size?this:this.copy(this.content.cut(e,t))}slice(e,t=this.content.size,n=!1){if(e==t)return O.empty;let r=this.resolve(e),i=this.resolve(t),a=n?0:r.sharedDepth(t),o=r.start(a);return new O(r.node(a).content.cut(r.pos-o,i.pos-o),r.depth-a,i.depth-a)}replace(e,t,n){return Pe(this.resolve(e),this.resolve(t),n)}nodeAt(e){for(let t=this;;){let{index:n,offset:r}=t.content.findIndex(e);if(t=t.maybeChild(n),!t)return null;if(r==e||t.isText)return t;e-=r+1}}childAfter(e){let{index:t,offset:n}=this.content.findIndex(e);return{node:this.content.maybeChild(t),index:t,offset:n}}childBefore(e){if(e==0)return{node:null,index:0,offset:0};let{index:t,offset:n}=this.content.findIndex(e);if(n<e)return{node:this.content.child(t),index:t,offset:n};let r=this.content.child(t-1);return{node:r,index:t-1,offset:n-r.nodeSize}}resolve(e){return We.resolveCached(this,e)}resolveNoCache(e){return We.resolve(this,e)}rangeHasMark(e,t,n){let r=!1;return t>e&&this.nodesBetween(e,t,e=>(n.isInSet(e.marks)&&(r=!0),!r)),r}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let e=this.type.name;return this.content.size&&(e+=`(`+this.content.toStringInner()+`)`),Qe(this.marks,e)}contentMatchAt(e){let t=this.type.contentMatch.matchFragment(this.content,0,e);if(!t)throw Error(`Called contentMatchAt on a node with invalid content`);return t}canReplace(e,t,n=E.empty,r=0,i=n.childCount){let a=this.contentMatchAt(e).matchFragment(n,r,i),o=a&&a.matchFragment(this.content,t);if(!o||!o.validEnd)return!1;for(let e=r;e<i;e++)if(!this.type.allowsMarks(n.child(e).marks))return!1;return!0}canReplaceWith(e,t,n,r){if(r&&!this.type.allowsMarks(r))return!1;let i=this.contentMatchAt(e).matchType(n),a=i&&i.matchFragment(this.content,t);return a?a.validEnd:!1}canAppend(e){return e.content.size?this.canReplace(this.childCount,this.childCount,e.content):this.type.compatibleContent(e.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let e=D.none;for(let t=0;t<this.marks.length;t++){let n=this.marks[t];n.type.checkAttrs(n.attrs),e=n.addToSet(e)}if(!D.sameSet(e,this.marks))throw RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map(e=>e.type.name)}`);this.content.forEach(e=>e.check())}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return this.content.size&&(e.content=this.content.toJSON()),this.marks.length&&(e.marks=this.marks.map(e=>e.toJSON())),e}static fromJSON(e,t){if(!t)throw RangeError(`Invalid input for Node.fromJSON`);let n;if(t.marks){if(!Array.isArray(t.marks))throw RangeError(`Invalid mark data for Node.fromJSON`);n=t.marks.map(e.markFromJSON)}if(t.type==`text`){if(typeof t.text!=`string`)throw RangeError(`Invalid text node in JSON`);return e.text(t.text,n)}let r=E.fromJSON(e,t.content),i=e.nodeType(t.type).create(t.attrs,r,n);return i.type.checkAttrs(i.attrs),i}};Xe.prototype.text=void 0;var Ze=class e extends Xe{constructor(e,t,n,r){if(super(e,t,null,r),!n)throw RangeError(`Empty text nodes are not allowed`);this.text=n}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):Qe(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(e,t){return this.text.slice(e,t)}get nodeSize(){return this.text.length}mark(t){return t==this.marks?this:new e(this.type,this.attrs,this.text,t)}withText(t){return t==this.text?this:new e(this.type,this.attrs,t,this.marks)}cut(e=0,t=this.text.length){return e==0&&t==this.text.length?this:this.withText(this.text.slice(e,t))}eq(e){return this.sameMarkup(e)&&this.text==e.text}toJSON(){let e=super.toJSON();return e.text=this.text,e}};function Qe(e,t){for(let n=e.length-1;n>=0;n--)t=e[n].type.name+`(`+t+`)`;return t}var $e=class e{constructor(e){this.validEnd=e,this.next=[],this.wrapCache=[]}static parse(t,n){let r=new et(t,n);if(r.next==null)return e.empty;let i=tt(r);r.next&&r.err(`Unexpected trailing text`);let a=dt(ct(i));return ft(a,r),a}matchType(e){for(let t=0;t<this.next.length;t++)if(this.next[t].type==e)return this.next[t].next;return null}matchFragment(e,t=0,n=e.childCount){let r=this;for(let i=t;r&&i<n;i++)r=r.matchType(e.child(i).type);return r}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let e=0;e<this.next.length;e++){let{type:t}=this.next[e];if(!(t.isText||t.hasRequiredAttrs()))return t}return null}compatible(e){for(let t=0;t<this.next.length;t++)for(let n=0;n<e.next.length;n++)if(this.next[t].type==e.next[n].type)return!0;return!1}fillBefore(e,t=!1,n=0){let r=[this];function i(a,o){let s=a.matchFragment(e,n);if(s&&(!t||s.validEnd))return E.from(o.map(e=>e.createAndFill()));for(let e=0;e<a.next.length;e++){let{type:t,next:n}=a.next[e];if(!(t.isText||t.hasRequiredAttrs())&&r.indexOf(n)==-1){r.push(n);let e=i(n,o.concat(t));if(e)return e}}return null}return i(this,[])}findWrapping(e){for(let t=0;t<this.wrapCache.length;t+=2)if(this.wrapCache[t]==e)return this.wrapCache[t+1];let t=this.computeWrapping(e);return this.wrapCache.push(e,t),t}computeWrapping(e){let t=Object.create(null),n=[{match:this,type:null,via:null}];for(;n.length;){let r=n.shift(),i=r.match;if(i.matchType(e)){let e=[];for(let t=r;t.type;t=t.via)e.push(t.type);return e.reverse()}for(let e=0;e<i.next.length;e++){let{type:a,next:o}=i.next[e];!a.isLeaf&&!a.hasRequiredAttrs()&&!(a.name in t)&&(!r.type||o.validEnd)&&(n.push({match:a.contentMatch,type:a,via:r}),t[a.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(e){if(e>=this.next.length)throw RangeError(`There's no ${e}th edge in this content match`);return this.next[e]}toString(){let e=[];function t(n){e.push(n);for(let r=0;r<n.next.length;r++)e.indexOf(n.next[r].next)==-1&&t(n.next[r].next)}return t(this),e.map((t,n)=>{let r=n+(t.validEnd?`*`:` `)+` `;for(let n=0;n<t.next.length;n++)r+=(n?`, `:``)+t.next[n].type.name+`->`+e.indexOf(t.next[n].next);return r}).join(`
|
|
2
2
|
`)}};$e.empty=new $e(!0);var et=class{constructor(e,t){this.string=e,this.nodeTypes=t,this.inline=null,this.pos=0,this.tokens=e.split(/\s*(?=\b|\W|$)/),this.tokens[this.tokens.length-1]==``&&this.tokens.pop(),this.tokens[0]==``&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(e){return this.next==e&&(this.pos++||!0)}err(e){throw SyntaxError(e+` (in content expression '`+this.string+`')`)}};function tt(e){let t=[];do t.push(nt(e));while(e.eat(`|`));return t.length==1?t[0]:{type:`choice`,exprs:t}}function nt(e){let t=[];do t.push(rt(e));while(e.next&&e.next!=`)`&&e.next!=`|`);return t.length==1?t[0]:{type:`seq`,exprs:t}}function rt(e){let t=st(e);for(;;)if(e.eat(`+`))t={type:`plus`,expr:t};else if(e.eat(`*`))t={type:`star`,expr:t};else if(e.eat(`?`))t={type:`opt`,expr:t};else if(e.eat(`{`))t=at(e,t);else break;return t}function it(e){/\D/.test(e.next)&&e.err(`Expected number, got '`+e.next+`'`);let t=Number(e.next);return e.pos++,t}function at(e,t){let n=it(e),r=n;return e.eat(`,`)&&(r=e.next==`}`?-1:it(e)),e.eat(`}`)||e.err(`Unclosed braced range`),{type:`range`,min:n,max:r,expr:t}}function ot(e,t){let n=e.nodeTypes,r=n[t];if(r)return[r];let i=[];for(let e in n){let r=n[e];r.isInGroup(t)&&i.push(r)}return i.length==0&&e.err(`No node type or group '`+t+`' found`),i}function st(e){if(e.eat(`(`)){let t=tt(e);return e.eat(`)`)||e.err(`Missing closing paren`),t}else if(/\W/.test(e.next))e.err(`Unexpected token '`+e.next+`'`);else{let t=ot(e,e.next).map(t=>(e.inline==null?e.inline=t.isInline:e.inline!=t.isInline&&e.err(`Mixing inline and block content`),{type:`name`,value:t}));return e.pos++,t.length==1?t[0]:{type:`choice`,exprs:t}}}function ct(e){let t=[[]];return i(a(e,0),n()),t;function n(){return t.push([])-1}function r(e,n,r){let i={term:r,to:n};return t[e].push(i),i}function i(e,t){e.forEach(e=>e.to=t)}function a(e,t){if(e.type==`choice`)return e.exprs.reduce((e,n)=>e.concat(a(n,t)),[]);if(e.type==`seq`)for(let r=0;;r++){let o=a(e.exprs[r],t);if(r==e.exprs.length-1)return o;i(o,t=n())}else if(e.type==`star`){let o=n();return r(t,o),i(a(e.expr,o),o),[r(o)]}else if(e.type==`plus`){let o=n();return i(a(e.expr,t),o),i(a(e.expr,o),o),[r(o)]}else if(e.type==`opt`)return[r(t)].concat(a(e.expr,t));else if(e.type==`range`){let o=t;for(let t=0;t<e.min;t++){let t=n();i(a(e.expr,o),t),o=t}if(e.max==-1)i(a(e.expr,o),o);else for(let t=e.min;t<e.max;t++){let t=n();r(o,t),i(a(e.expr,o),t),o=t}return[r(o)]}else if(e.type==`name`)return[r(t,void 0,e.value)];else throw Error(`Unknown expr type`)}}function lt(e,t){return t-e}function ut(e,t){let n=[];return r(t),n.sort(lt);function r(t){let i=e[t];if(i.length==1&&!i[0].term)return r(i[0].to);n.push(t);for(let e=0;e<i.length;e++){let{term:t,to:a}=i[e];!t&&n.indexOf(a)==-1&&r(a)}}}function dt(e){let t=Object.create(null);return n(ut(e,0));function n(r){let i=[];r.forEach(t=>{e[t].forEach(({term:t,to:n})=>{if(!t)return;let r;for(let e=0;e<i.length;e++)i[e][0]==t&&(r=i[e][1]);ut(e,n).forEach(e=>{r||i.push([t,r=[]]),r.indexOf(e)==-1&&r.push(e)})})});let a=t[r.join(`,`)]=new $e(r.indexOf(e.length-1)>-1);for(let e=0;e<i.length;e++){let r=i[e][1].sort(lt);a.next.push({type:i[e][0],next:t[r.join(`,`)]||n(r)})}return a}}function ft(e,t){for(let n=0,r=[e];n<r.length;n++){let e=r[n],i=!e.validEnd,a=[];for(let t=0;t<e.next.length;t++){let{type:n,next:o}=e.next[t];a.push(n.name),i&&!(n.isText||n.hasRequiredAttrs())&&(i=!1),r.indexOf(o)==-1&&r.push(o)}i&&t.err(`Only non-generatable nodes (`+a.join(`, `)+`) in a required position (see https://prosemirror.net/docs/guide/#generatable)`)}}function pt(e){let t=Object.create(null);for(let n in e){let r=e[n];if(!r.hasDefault)return null;t[n]=r.default}return t}function mt(e,t){let n=Object.create(null);for(let r in e){let i=t&&t[r];if(i===void 0){let t=e[r];if(t.hasDefault)i=t.default;else throw RangeError(`No value supplied for attribute `+r)}n[r]=i}return n}function ht(e,t,n,r){for(let i in t)if(!(i in e))throw RangeError(`Unsupported attribute ${i} for ${n} of type ${r}`);for(let n in e)e[n].validate&&e[n].validate(t[n])}function gt(e,t){let n=Object.create(null);if(t)for(let r in t)n[r]=new yt(e,r,t[r]);return n}var _t=class e{constructor(e,t,n){this.name=e,this.schema=t,this.spec=n,this.markSet=null,this.groups=n.group?n.group.split(` `):[],this.attrs=gt(e,n.attrs),this.defaultAttrs=pt(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(n.inline||e==`text`),this.isText=e==`text`}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==$e.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}isInGroup(e){return this.groups.indexOf(e)>-1}get whitespace(){return this.spec.whitespace||(this.spec.code?`pre`:`normal`)}hasRequiredAttrs(){for(let e in this.attrs)if(this.attrs[e].isRequired)return!0;return!1}compatibleContent(e){return this==e||this.contentMatch.compatible(e.contentMatch)}computeAttrs(e){return!e&&this.defaultAttrs?this.defaultAttrs:mt(this.attrs,e)}create(e=null,t,n){if(this.isText)throw Error(`NodeType.create can't construct text nodes`);return new Xe(this,this.computeAttrs(e),E.from(t),D.setFrom(n))}createChecked(e=null,t,n){return t=E.from(t),this.checkContent(t),new Xe(this,this.computeAttrs(e),t,D.setFrom(n))}createAndFill(e=null,t,n){if(e=this.computeAttrs(e),t=E.from(t),t.size){let e=this.contentMatch.fillBefore(t);if(!e)return null;t=e.append(t)}let r=this.contentMatch.matchFragment(t),i=r&&r.fillBefore(E.empty,!0);return i?new Xe(this,e,t.append(i),D.setFrom(n)):null}validContent(e){let t=this.contentMatch.matchFragment(e);if(!t||!t.validEnd)return!1;for(let t=0;t<e.childCount;t++)if(!this.allowsMarks(e.child(t).marks))return!1;return!0}checkContent(e){if(!this.validContent(e))throw RangeError(`Invalid content for node ${this.name}: ${e.toString().slice(0,50)}`)}checkAttrs(e){ht(this.attrs,e,`node`,this.name)}allowsMarkType(e){return this.markSet==null||this.markSet.indexOf(e)>-1}allowsMarks(e){if(this.markSet==null)return!0;for(let t=0;t<e.length;t++)if(!this.allowsMarkType(e[t].type))return!1;return!0}allowedMarks(e){if(this.markSet==null)return e;let t;for(let n=0;n<e.length;n++)this.allowsMarkType(e[n].type)?t&&t.push(e[n]):t||=e.slice(0,n);return t?t.length?t:D.none:e}static compile(t,n){let r=Object.create(null);t.forEach((t,i)=>r[t]=new e(t,n,i));let i=n.spec.topNode||`doc`;if(!r[i])throw RangeError(`Schema is missing its top node type ('`+i+`')`);if(!r.text)throw RangeError(`Every schema needs a 'text' type`);for(let e in r.text.attrs)throw RangeError(`The text node type should not have attributes`);return r}};function vt(e,t,n){let r=n.split(`|`);return n=>{let i=n===null?`null`:typeof n;if(r.indexOf(i)<0)throw RangeError(`Expected value of type ${r} for attribute ${t} on type ${e}, got ${i}`)}}var yt=class{constructor(e,t,n){this.hasDefault=Object.prototype.hasOwnProperty.call(n,`default`),this.default=n.default,this.validate=typeof n.validate==`string`?vt(e,t,n.validate):n.validate}get isRequired(){return!this.hasDefault}},bt=class e{constructor(e,t,n,r){this.name=e,this.rank=t,this.schema=n,this.spec=r,this.attrs=gt(e,r.attrs),this.excluded=null;let i=pt(this.attrs);this.instance=i?new D(this,i):null}create(e=null){return!e&&this.instance?this.instance:new D(this,mt(this.attrs,e))}static compile(t,n){let r=Object.create(null),i=0;return t.forEach((t,a)=>r[t]=new e(t,i++,n,a)),r}removeFromSet(e){for(var t=0;t<e.length;t++)e[t].type==this&&(e=e.slice(0,t).concat(e.slice(t+1)),t--);return e}isInSet(e){for(let t=0;t<e.length;t++)if(e[t].type==this)return e[t]}checkAttrs(e){ht(this.attrs,e,`mark`,this.name)}excludes(e){return this.excluded.indexOf(e)>-1}},xt=class{constructor(e){this.linebreakReplacement=null,this.cached=Object.create(null);let t=this.spec={};for(let n in e)t[n]=e[n];t.nodes=Ce.from(e.nodes),t.marks=Ce.from(e.marks||{}),this.nodes=_t.compile(this.spec.nodes,this),this.marks=bt.compile(this.spec.marks,this);let n=Object.create(null);for(let e in this.nodes){if(e in this.marks)throw RangeError(e+` can not be both a node and a mark`);let t=this.nodes[e],r=t.spec.content||``,i=t.spec.marks;if(t.contentMatch=n[r]||(n[r]=$e.parse(r,this.nodes)),t.inlineContent=t.contentMatch.inlineContent,t.spec.linebreakReplacement){if(this.linebreakReplacement)throw RangeError(`Multiple linebreak nodes defined`);if(!t.isInline||!t.isLeaf)throw RangeError(`Linebreak replacement nodes must be inline leaf nodes`);this.linebreakReplacement=t}t.markSet=i==`_`?null:i?St(this,i.split(` `)):i==``||!t.inlineContent?[]:null}for(let e in this.marks){let t=this.marks[e],n=t.spec.excludes;t.excluded=n==null?[t]:n==``?[]:St(this,n.split(` `))}this.nodeFromJSON=e=>Xe.fromJSON(this,e),this.markFromJSON=e=>D.fromJSON(this,e),this.topNodeType=this.nodes[this.spec.topNode||`doc`],this.cached.wrappings=Object.create(null)}node(e,t=null,n,r){if(typeof e==`string`)e=this.nodeType(e);else if(!(e instanceof _t))throw RangeError(`Invalid node type: `+e);else if(e.schema!=this)throw RangeError(`Node type from different schema used (`+e.name+`)`);return e.createChecked(t,n,r)}text(e,t){let n=this.nodes.text;return new Ze(n,n.defaultAttrs,e,D.setFrom(t))}mark(e,t){return typeof e==`string`&&(e=this.marks[e]),e.create(t)}nodeType(e){let t=this.nodes[e];if(!t)throw RangeError(`Unknown node type: `+e);return t}};function St(e,t){let n=[];for(let r=0;r<t.length;r++){let i=t[r],a=e.marks[i],o=a;if(a)n.push(a);else for(let t in e.marks){let r=e.marks[t];(i==`_`||r.spec.group&&r.spec.group.split(` `).indexOf(i)>-1)&&n.push(o=r)}if(!o)throw SyntaxError(`Unknown mark type: '`+t[r]+`'`)}return n}function Ct(e){return e.tag!=null}function wt(e){return e.style!=null}var Tt=class e{constructor(e,t){this.schema=e,this.rules=t,this.tags=[],this.styles=[];let n=this.matchedStyles=[];t.forEach(e=>{if(Ct(e))this.tags.push(e);else if(wt(e)){let t=/[^=]*/.exec(e.style)[0];n.indexOf(t)<0&&n.push(t),this.styles.push(e)}}),this.normalizeLists=!this.tags.some(t=>{if(!/^(ul|ol)\b/.test(t.tag)||!t.node)return!1;let n=e.nodes[t.node];return n.contentMatch.matchType(n)})}parse(e,t={}){let n=new Pt(this,t,!1);return n.addAll(e,D.none,t.from,t.to),n.finish()}parseSlice(e,t={}){let n=new Pt(this,t,!0);return n.addAll(e,D.none,t.from,t.to),O.maxOpen(n.finish())}matchTag(e,t,n){for(let r=n?this.tags.indexOf(n)+1:0;r<this.tags.length;r++){let n=this.tags[r];if(It(e,n.tag)&&(n.namespace===void 0||e.namespaceURI==n.namespace)&&(!n.context||t.matchesContext(n.context))){if(n.getAttrs){let t=n.getAttrs(e);if(t===!1)continue;n.attrs=t||void 0}return n}}}matchStyle(e,t,n,r){for(let i=r?this.styles.indexOf(r)+1:0;i<this.styles.length;i++){let r=this.styles[i],a=r.style;if(!(a.indexOf(e)!=0||r.context&&!n.matchesContext(r.context)||a.length>e.length&&(a.charCodeAt(e.length)!=61||a.slice(e.length+1)!=t))){if(r.getAttrs){let e=r.getAttrs(t);if(e===!1)continue;r.attrs=e||void 0}return r}}}static schemaRules(e){let t=[];function n(e){let n=e.priority==null?50:e.priority,r=0;for(;r<t.length;r++){let e=t[r];if((e.priority==null?50:e.priority)<n)break}t.splice(r,0,e)}for(let t in e.marks){let r=e.marks[t].spec.parseDOM;r&&r.forEach(e=>{n(e=Lt(e)),e.mark||e.ignore||e.clearMark||(e.mark=t)})}for(let t in e.nodes){let r=e.nodes[t].spec.parseDOM;r&&r.forEach(e=>{n(e=Lt(e)),e.node||e.ignore||e.mark||(e.node=t)})}return t}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new e(t,e.schemaRules(t)))}},Et={address:!0,article:!0,aside:!0,blockquote:!0,body:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},Dt={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},Ot={ol:!0,ul:!0},kt=1,At=2,jt=4;function Mt(e,t,n){return t==null?e&&e.whitespace==`pre`?3:n&-5:(t?kt:0)|(t===`full`?At:0)}var Nt=class{constructor(e,t,n,r,i,a){this.type=e,this.attrs=t,this.marks=n,this.solid=r,this.options=a,this.content=[],this.activeMarks=D.none,this.match=i||(a&jt?null:e.contentMatch)}findWrapping(e){if(!this.match){if(!this.type)return[];let t=this.type.contentMatch.fillBefore(E.from(e));if(t)this.match=this.type.contentMatch.matchFragment(t);else{let t=this.type.contentMatch,n;return(n=t.findWrapping(e.type))?(this.match=t,n):null}}return this.match.findWrapping(e.type)}finish(e){if(!(this.options&kt)){let e=this.content[this.content.length-1],t;if(e&&e.isText&&(t=/[ \t\r\n\u000c]+$/.exec(e.text))){let n=e;e.text.length==t[0].length?this.content.pop():this.content[this.content.length-1]=n.withText(n.text.slice(0,n.text.length-t[0].length))}}let t=E.from(this.content);return!e&&this.match&&(t=t.append(this.match.fillBefore(E.empty,!0))),this.type?this.type.create(this.attrs,t,this.marks):t}inlineContext(e){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:e.parentNode&&!Et.hasOwnProperty(e.parentNode.nodeName.toLowerCase())}},Pt=class{constructor(e,t,n){this.parser=e,this.options=t,this.isOpen=n,this.open=0,this.localPreserveWS=!1;let r=t.topNode,i,a=Mt(null,t.preserveWhitespace,0)|(n?jt:0);i=r?new Nt(r.type,r.attrs,D.none,!0,t.topMatch||r.type.contentMatch,a):n?new Nt(null,null,D.none,!0,null,a):new Nt(e.schema.topNodeType,null,D.none,!0,null,a),this.nodes=[i],this.find=t.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(e,t){e.nodeType==3?this.addTextNode(e,t):e.nodeType==1&&this.addElement(e,t)}addTextNode(e,t){let n=e.nodeValue,r=this.top,i=r.options&At?`full`:this.localPreserveWS||(r.options&kt)>0,{schema:a}=this.parser;if(i===`full`||r.inlineContext(e)||/[^ \t\r\n\u000c]/.test(n)){if(!i){if(n=n.replace(/[ \t\r\n\u000c]+/g,` `),/^[ \t\r\n\u000c]/.test(n)&&this.open==this.nodes.length-1){let t=r.content[r.content.length-1],i=e.previousSibling;(!t||i&&i.nodeName==`BR`||t.isText&&/[ \t\r\n\u000c]$/.test(t.text))&&(n=n.slice(1))}}else if(i===`full`)n=n.replace(/\r\n?/g,`
|
|
3
3
|
`);else if(a.linebreakReplacement&&/[\r\n]/.test(n)&&this.top.findWrapping(a.linebreakReplacement.create())){let e=n.split(/\r?\n|\r/);for(let n=0;n<e.length;n++)n&&this.insertNode(a.linebreakReplacement.create(),t,!0),e[n]&&this.insertNode(a.text(e[n]),t,!/\S/.test(e[n]));n=``}else n=n.replace(/\r?\n|\r/g,` `);n&&this.insertNode(a.text(n),t,!/\S/.test(n)),this.findInText(e)}else this.findInside(e)}addElement(e,t,n){let r=this.localPreserveWS,i=this.top;(e.tagName==`PRE`||/pre/.test(e.style&&e.style.whiteSpace))&&(this.localPreserveWS=!0);let a=e.nodeName.toLowerCase(),o;Ot.hasOwnProperty(a)&&this.parser.normalizeLists&&Ft(e);let s=this.options.ruleFromNode&&this.options.ruleFromNode(e)||(o=this.parser.matchTag(e,this,n));out:if(s?s.ignore:Dt.hasOwnProperty(a))this.findInside(e),this.ignoreFallback(e,t);else if(!s||s.skip||s.closeParent){s&&s.closeParent?this.open=Math.max(0,this.open-1):s&&s.skip.nodeType&&(e=s.skip);let n,r=this.needsBlock;if(Et.hasOwnProperty(a))i.content.length&&i.content[0].isInline&&this.open&&(this.open--,i=this.top),n=!0,i.type||(this.needsBlock=!0);else if(!e.firstChild){this.leafFallback(e,t);break out}let o=s&&s.skip?t:this.readStyles(e,t);o&&this.addAll(e,o),n&&this.sync(i),this.needsBlock=r}else{let n=this.readStyles(e,t);n&&this.addElementByRule(e,s,n,s.consuming===!1?o:void 0)}this.localPreserveWS=r}leafFallback(e,t){e.nodeName==`BR`&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(e.ownerDocument.createTextNode(`
|
|
4
4
|
`),t)}ignoreFallback(e,t){e.nodeName==`BR`&&(!this.top.type||!this.top.type.inlineContent)&&this.findPlace(this.parser.schema.text(`-`),t,!0)}readStyles(e,t){let n=e.style;if(n&&n.length)for(let e=0;e<this.parser.matchedStyles.length;e++){let r=this.parser.matchedStyles[e],i=n.getPropertyValue(r);if(i)for(let e;;){let n=this.parser.matchStyle(r,i,this,e);if(!n)break;if(n.ignore)return null;if(t=n.clearMark?t.filter(e=>!n.clearMark(e)):t.concat(this.parser.schema.marks[n.mark].create(n.attrs)),n.consuming===!1)e=n;else break}}return t}addElementByRule(e,t,n,r){let i,a;if(t.node)if(a=this.parser.schema.nodes[t.node],a.isLeaf)this.insertNode(a.create(t.attrs),n,e.nodeName==`BR`)||this.leafFallback(e,n);else{let e=this.enter(a,t.attrs||null,n,t.preserveWhitespace);e&&(i=!0,n=e)}else{let e=this.parser.schema.marks[t.mark];n=n.concat(e.create(t.attrs))}let o=this.top;if(a&&a.isLeaf)this.findInside(e);else if(r)this.addElement(e,n,r);else if(t.getContent)this.findInside(e),t.getContent(e,this.parser.schema).forEach(e=>this.insertNode(e,n,!1));else{let r=e;typeof t.contentElement==`string`?r=e.querySelector(t.contentElement):typeof t.contentElement==`function`?r=t.contentElement(e):t.contentElement&&(r=t.contentElement),this.findAround(e,r,!0),this.addAll(r,n),this.findAround(e,r,!1)}i&&this.sync(o)&&this.open--}addAll(e,t,n,r){let i=n||0;for(let a=n?e.childNodes[n]:e.firstChild,o=r==null?null:e.childNodes[r];a!=o;a=a.nextSibling,++i)this.findAtPoint(e,i),this.addDOM(a,t);this.findAtPoint(e,i)}findPlace(e,t,n){let r,i;for(let t=this.open,a=0;t>=0;t--){let o=this.nodes[t],s=o.findWrapping(e);if(s&&(!r||r.length>s.length+a)&&(r=s,i=o,!s.length))break;if(o.solid){if(n)break;a+=2}}if(!r)return null;this.sync(i);for(let e=0;e<r.length;e++)t=this.enterInner(r[e],null,t,!1);return t}insertNode(e,t,n){if(e.isInline&&this.needsBlock&&!this.top.type){let e=this.textblockFromContext();e&&(t=this.enterInner(e,null,t))}let r=this.findPlace(e,t,n);if(r){this.closeExtra();let t=this.top;t.match&&=t.match.matchType(e.type);let n=D.none;for(let i of r.concat(e.marks))(t.type?t.type.allowsMarkType(i.type):Rt(i.type,e.type))&&(n=i.addToSet(n));return t.content.push(e.mark(n)),!0}return!1}enter(e,t,n,r){let i=this.findPlace(e.create(t),n,!1);return i&&=this.enterInner(e,t,n,!0,r),i}enterInner(e,t,n,r=!1,i){this.closeExtra();let a=this.top;a.match=a.match&&a.match.matchType(e);let o=Mt(e,i,a.options);a.options&jt&&a.content.length==0&&(o|=jt);let s=D.none;return n=n.filter(t=>(a.type?a.type.allowsMarkType(t.type):Rt(t.type,e))?(s=t.addToSet(s),!1):!0),this.nodes.push(new Nt(e,t,s,r,null,o)),this.open++,n}closeExtra(e=!1){let t=this.nodes.length-1;if(t>this.open){for(;t>this.open;t--)this.nodes[t-1].content.push(this.nodes[t].finish(e));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(!!(this.isOpen||this.options.topOpen))}sync(e){for(let t=this.open;t>=0;t--)if(this.nodes[t]==e)return this.open=t,!0;else this.localPreserveWS&&(this.nodes[t].options|=kt);return!1}get currentPos(){this.closeExtra();let e=0;for(let t=this.open;t>=0;t--){let n=this.nodes[t].content;for(let t=n.length-1;t>=0;t--)e+=n[t].nodeSize;t&&e++}return e}findAtPoint(e,t){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==e&&this.find[n].offset==t&&(this.find[n].pos=this.currentPos)}findInside(e){if(this.find)for(let t=0;t<this.find.length;t++)this.find[t].pos==null&&e.nodeType==1&&e.contains(this.find[t].node)&&(this.find[t].pos=this.currentPos)}findAround(e,t,n){if(e!=t&&this.find)for(let r=0;r<this.find.length;r++)this.find[r].pos==null&&e.nodeType==1&&e.contains(this.find[r].node)&&t.compareDocumentPosition(this.find[r].node)&(n?2:4)&&(this.find[r].pos=this.currentPos)}findInText(e){if(this.find)for(let t=0;t<this.find.length;t++)this.find[t].node==e&&(this.find[t].pos=this.currentPos-(e.nodeValue.length-this.find[t].offset))}matchesContext(e){if(e.indexOf(`|`)>-1)return e.split(/\s*\|\s*/).some(this.matchesContext,this);let t=e.split(`/`),n=this.options.context,r=!this.isOpen&&(!n||n.parent.type==this.nodes[0].type),i=-(n?n.depth+1:0)+ +!r,a=(e,o)=>{for(;e>=0;e--){let s=t[e];if(s==``){if(e==t.length-1||e==0)continue;for(;o>=i;o--)if(a(e-1,o))return!0;return!1}else{let e=o>0||o==0&&r?this.nodes[o].type:n&&o>=i?n.node(o-i).type:null;if(!e||e.name!=s&&!e.isInGroup(s))return!1;o--}}return!0};return a(t.length-1,this.open)}textblockFromContext(){let e=this.options.context;if(e)for(let t=e.depth;t>=0;t--){let n=e.node(t).contentMatchAt(e.indexAfter(t)).defaultType;if(n&&n.isTextblock&&n.defaultAttrs)return n}for(let e in this.parser.schema.nodes){let t=this.parser.schema.nodes[e];if(t.isTextblock&&t.defaultAttrs)return t}}};function Ft(e){for(let t=e.firstChild,n=null;t;t=t.nextSibling){let e=t.nodeType==1?t.nodeName.toLowerCase():null;e&&Ot.hasOwnProperty(e)&&n?(n.appendChild(t),t=n):e==`li`?n=t:e&&(n=null)}}function It(e,t){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,t)}function Lt(e){let t={};for(let n in e)t[n]=e[n];return t}function Rt(e,t){let n=t.schema.nodes;for(let r in n){let i=n[r];if(!i.allowsMarkType(e))continue;let a=[],o=e=>{a.push(e);for(let n=0;n<e.edgeCount;n++){let{type:r,next:i}=e.edge(n);if(r==t||a.indexOf(i)<0&&o(i))return!0}};if(o(i.contentMatch))return!0}}var zt=class e{constructor(e,t){this.nodes=e,this.marks=t}serializeFragment(e,t={},n){n||=Vt(t).createDocumentFragment();let r=n,i=[];return e.forEach(e=>{if(i.length||e.marks.length){let n=0,a=0;for(;n<i.length&&a<e.marks.length;){let t=e.marks[a];if(!this.marks[t.type.name]){a++;continue}if(!t.eq(i[n][0])||t.type.spec.spanning===!1)break;n++,a++}for(;n<i.length;)r=i.pop()[1];for(;a<e.marks.length;){let n=e.marks[a++],o=this.serializeMark(n,e.isInline,t);o&&(i.push([n,r]),r.appendChild(o.dom),r=o.contentDOM||o.dom)}}r.appendChild(this.serializeNodeInner(e,t))}),n}serializeNodeInner(e,t){if(e.isText)return Vt(t).createTextNode(e.text);let{dom:n,contentDOM:r}=Gt(Vt(t),this.nodes[e.type.name](e),null,e.attrs);if(r){if(e.isLeaf)throw RangeError(`Content hole not allowed in a leaf node spec`);this.serializeFragment(e.content,t,r)}return n}serializeNode(e,t={}){let n=this.serializeNodeInner(e,t);for(let r=e.marks.length-1;r>=0;r--){let i=this.serializeMark(e.marks[r],e.isInline,t);i&&((i.contentDOM||i.dom).appendChild(n),n=i.dom)}return n}serializeMark(e,t,n={}){let r=this.marks[e.type.name];return r&&Gt(Vt(n),r(e,t),null,e.attrs)}static renderSpec(e,t,n=null,r){return typeof t==`string`?{dom:e.createTextNode(t)}:Gt(e,t,n,r)}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new e(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(e){let t=Bt(e.nodes);return t.text||=e=>e.text,t}static marksFromSchema(e){return Bt(e.marks)}};function Bt(e){let t={};for(let n in e){let r=e[n].spec.toDOM;r&&(t[n]=r)}return t}function Vt(e){return e.document||window.document}var Ht=new WeakMap;function Ut(e){let t=Ht.get(e);return t===void 0&&Ht.set(e,t=Wt(e)),t}function Wt(e){let t=null;function n(e){if(e&&typeof e==`object`)if(Array.isArray(e))if(typeof e[0]==`string`)t||=[],t.push(e);else for(let t=0;t<e.length;t++)n(e[t]);else for(let t in e)n(e[t])}return n(e),t}function Gt(e,t,n,r){if(t.nodeType==1)return{dom:t};if(t.dom&&t.dom.nodeType==1)return t;let i=t[0],a;if(typeof i!=`string`)throw RangeError(`Invalid array passed to renderSpec`);if(r&&(a=Ut(r))&&a.indexOf(t)>-1)throw RangeError(`Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.`);let o=i.indexOf(` `);o>0&&(n=i.slice(0,o),i=i.slice(o+1));let s,c=n?e.createElementNS(n,i):e.createElement(i),l=t[1],u=1;if(l&&typeof l==`object`&&l.nodeType==null&&!Array.isArray(l)){u=2;for(let e in l)if(l[e]!=null){let t=e.indexOf(` `);t>0?c.setAttributeNS(e.slice(0,t),e.slice(t+1),l[e]):e==`style`&&c.style?c.style.cssText=l[e]:c.setAttribute(e,l[e])}}for(let i=u;i<t.length;i++){let a=t[i];if(a===0){if(i<t.length-1||i>u)throw RangeError(`Content hole must be the only child of its parent node`);return{dom:c,contentDOM:c}}else if(typeof a==`string`)c.appendChild(e.createTextNode(a));else{let{dom:t,contentDOM:i}=Gt(e,a,n,r);if(c.appendChild(t),i){if(s)throw RangeError(`Multiple content holes`);s=i}}}return{dom:c,contentDOM:s}}var Kt=65535,qt=2**16;function Jt(e,t){return e+t*qt}function Yt(e){return e&Kt}function Xt(e){return(e-(e&Kt))/qt}var Zt=1,Qt=2,$t=4,en=8,tn=class{constructor(e,t,n){this.pos=e,this.delInfo=t,this.recover=n}get deleted(){return(this.delInfo&en)>0}get deletedBefore(){return(this.delInfo&5)>0}get deletedAfter(){return(this.delInfo&6)>0}get deletedAcross(){return(this.delInfo&$t)>0}},nn=class e{constructor(t,n=!1){if(this.ranges=t,this.inverted=n,!t.length&&e.empty)return e.empty}recover(e){let t=0,n=Yt(e);if(!this.inverted)for(let e=0;e<n;e++)t+=this.ranges[e*3+2]-this.ranges[e*3+1];return this.ranges[n*3]+t+Xt(e)}mapResult(e,t=1){return this._map(e,t,!1)}map(e,t=1){return this._map(e,t,!0)}_map(e,t,n){let r=0,i=this.inverted?2:1,a=this.inverted?1:2;for(let o=0;o<this.ranges.length;o+=3){let s=this.ranges[o]-(this.inverted?r:0);if(s>e)break;let c=this.ranges[o+i],l=this.ranges[o+a],u=s+c;if(e<=u){let i=c?e==s?-1:e==u?1:t:t,a=s+r+(i<0?0:l);if(n)return a;let d=e==(t<0?s:u)?null:Jt(o/3,e-s),f=e==s?Qt:e==u?Zt:$t;return(t<0?e!=s:e!=u)&&(f|=en),new tn(a,f,d)}r+=l-c}return n?e+r:new tn(e+r,0,null)}touches(e,t){let n=0,r=Yt(t),i=this.inverted?2:1,a=this.inverted?1:2;for(let t=0;t<this.ranges.length;t+=3){let o=this.ranges[t]-(this.inverted?n:0);if(o>e)break;let s=this.ranges[t+i];if(e<=o+s&&t==r*3)return!0;n+=this.ranges[t+a]-s}return!1}forEach(e){let t=this.inverted?2:1,n=this.inverted?1:2;for(let r=0,i=0;r<this.ranges.length;r+=3){let a=this.ranges[r],o=a-(this.inverted?i:0),s=a+(this.inverted?0:i),c=this.ranges[r+t],l=this.ranges[r+n];e(o,o+c,s,s+l),i+=l-c}}invert(){return new e(this.ranges,!this.inverted)}toString(){return(this.inverted?`-`:``)+JSON.stringify(this.ranges)}static offset(t){return t==0?e.empty:new e(t<0?[0,-t,0]:[0,0,t])}};nn.empty=new nn([]);var rn=class e{constructor(e,t,n=0,r=e?e.length:0){this.mirror=t,this.from=n,this.to=r,this._maps=e||[],this.ownData=!(e||t)}get maps(){return this._maps}slice(t=0,n=this.maps.length){return new e(this._maps,this.mirror,t,n)}appendMap(e,t){this.ownData||=(this._maps=this._maps.slice(),this.mirror=this.mirror&&this.mirror.slice(),!0),this.to=this._maps.push(e),t!=null&&this.setMirror(this._maps.length-1,t)}appendMapping(e){for(let t=0,n=this._maps.length;t<e._maps.length;t++){let r=e.getMirror(t);this.appendMap(e._maps[t],r!=null&&r<t?n+r:void 0)}}getMirror(e){if(this.mirror){for(let t=0;t<this.mirror.length;t++)if(this.mirror[t]==e)return this.mirror[t+(t%2?-1:1)]}}setMirror(e,t){this.mirror||=[],this.mirror.push(e,t)}appendMappingInverted(e){for(let t=e.maps.length-1,n=this._maps.length+e._maps.length;t>=0;t--){let r=e.getMirror(t);this.appendMap(e._maps[t].invert(),r!=null&&r>t?n-r-1:void 0)}}invert(){let t=new e;return t.appendMappingInverted(this),t}map(e,t=1){if(this.mirror)return this._map(e,t,!0);for(let n=this.from;n<this.to;n++)e=this._maps[n].map(e,t);return e}mapResult(e,t=1){return this._map(e,t,!1)}_map(e,t,n){let r=0;for(let n=this.from;n<this.to;n++){let i=this._maps[n].mapResult(e,t);if(i.recover!=null){let t=this.getMirror(n);if(t!=null&&t>n&&t<this.to){n=t,e=this._maps[t].recover(i.recover);continue}}r|=i.delInfo,e=i.pos}return n?e:new tn(e,r,null)}},an=Object.create(null),on=class{getMap(){return nn.empty}merge(e){return null}static fromJSON(e,t){if(!t||!t.stepType)throw RangeError(`Invalid input for Step.fromJSON`);let n=an[t.stepType];if(!n)throw RangeError(`No step type ${t.stepType} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in an)throw RangeError(`Duplicate use of step JSON ID `+e);return an[e]=t,t.prototype.jsonID=e,t}},sn=class e{constructor(e,t){this.doc=e,this.failed=t}static ok(t){return new e(t,null)}static fail(t){return new e(null,t)}static fromReplace(t,n,r,i){try{return e.ok(t.replace(n,r,i))}catch(t){if(t instanceof je)return e.fail(t.message);throw t}}};function cn(e,t,n){let r=[];for(let i=0;i<e.childCount;i++){let a=e.child(i);a.content.size&&(a=a.copy(cn(a.content,t,a))),a.isInline&&(a=t(a,n,i)),r.push(a)}return E.fromArray(r)}var ln=class e extends on{constructor(e,t,n){super(),this.from=e,this.to=t,this.mark=n}apply(e){let t=e.slice(this.from,this.to),n=e.resolve(this.from),r=n.node(n.sharedDepth(this.to)),i=new O(cn(t.content,(e,t)=>!e.isAtom||!t.type.allowsMarkType(this.mark.type)?e:e.mark(this.mark.addToSet(e.marks)),r),t.openStart,t.openEnd);return sn.fromReplace(e,this.from,this.to,i)}invert(){return new un(this.from,this.to,this.mark)}map(t){let n=t.mapResult(this.from,1),r=t.mapResult(this.to,-1);return n.deleted&&r.deleted||n.pos>=r.pos?null:new e(n.pos,r.pos,this.mark)}merge(t){return t instanceof e&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new e(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:`addMark`,mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,n){if(typeof n.from!=`number`||typeof n.to!=`number`)throw RangeError(`Invalid input for AddMarkStep.fromJSON`);return new e(n.from,n.to,t.markFromJSON(n.mark))}};on.jsonID(`addMark`,ln);var un=class e extends on{constructor(e,t,n){super(),this.from=e,this.to=t,this.mark=n}apply(e){let t=e.slice(this.from,this.to),n=new O(cn(t.content,e=>e.mark(this.mark.removeFromSet(e.marks)),e),t.openStart,t.openEnd);return sn.fromReplace(e,this.from,this.to,n)}invert(){return new ln(this.from,this.to,this.mark)}map(t){let n=t.mapResult(this.from,1),r=t.mapResult(this.to,-1);return n.deleted&&r.deleted||n.pos>=r.pos?null:new e(n.pos,r.pos,this.mark)}merge(t){return t instanceof e&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new e(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:`removeMark`,mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,n){if(typeof n.from!=`number`||typeof n.to!=`number`)throw RangeError(`Invalid input for RemoveMarkStep.fromJSON`);return new e(n.from,n.to,t.markFromJSON(n.mark))}};on.jsonID(`removeMark`,un);var dn=class e extends on{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return sn.fail(`No node at mark step's position`);let n=t.type.create(t.attrs,null,this.mark.addToSet(t.marks));return sn.fromReplace(e,this.pos,this.pos+1,new O(E.from(n),0,+!t.isLeaf))}invert(t){let n=t.nodeAt(this.pos);if(n){let t=this.mark.addToSet(n.marks);if(t.length==n.marks.length){for(let r=0;r<n.marks.length;r++)if(!n.marks[r].isInSet(t))return new e(this.pos,n.marks[r]);return new e(this.pos,this.mark)}}return new fn(this.pos,this.mark)}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new e(n.pos,this.mark)}toJSON(){return{stepType:`addNodeMark`,pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(t,n){if(typeof n.pos!=`number`)throw RangeError(`Invalid input for AddNodeMarkStep.fromJSON`);return new e(n.pos,t.markFromJSON(n.mark))}};on.jsonID(`addNodeMark`,dn);var fn=class e extends on{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return sn.fail(`No node at mark step's position`);let n=t.type.create(t.attrs,null,this.mark.removeFromSet(t.marks));return sn.fromReplace(e,this.pos,this.pos+1,new O(E.from(n),0,+!t.isLeaf))}invert(e){let t=e.nodeAt(this.pos);return!t||!this.mark.isInSet(t.marks)?this:new dn(this.pos,this.mark)}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new e(n.pos,this.mark)}toJSON(){return{stepType:`removeNodeMark`,pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(t,n){if(typeof n.pos!=`number`)throw RangeError(`Invalid input for RemoveNodeMarkStep.fromJSON`);return new e(n.pos,t.markFromJSON(n.mark))}};on.jsonID(`removeNodeMark`,fn);var pn=class e extends on{constructor(e,t,n,r=!1){super(),this.from=e,this.to=t,this.slice=n,this.structure=r}apply(e){return this.structure&&hn(e,this.from,this.to)?sn.fail(`Structure replace would overwrite content`):sn.fromReplace(e,this.from,this.to,this.slice)}getMap(){return new nn([this.from,this.to-this.from,this.slice.size])}invert(t){return new e(this.from,this.from+this.slice.size,t.slice(this.from,this.to))}map(t){let n=t.mapResult(this.to,-1),r=this.from==this.to&&e.MAP_BIAS<0?n:t.mapResult(this.from,1);return r.deletedAcross&&n.deletedAcross?null:new e(r.pos,Math.max(r.pos,n.pos),this.slice,this.structure)}merge(t){if(!(t instanceof e)||t.structure||this.structure)return null;if(this.from+this.slice.size==t.from&&!this.slice.openEnd&&!t.slice.openStart){let n=this.slice.size+t.slice.size==0?O.empty:new O(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new e(this.from,this.to+(t.to-t.from),n,this.structure)}else if(t.to==this.from&&!this.slice.openStart&&!t.slice.openEnd){let n=this.slice.size+t.slice.size==0?O.empty:new O(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new e(t.from,this.to,n,this.structure)}else return null}toJSON(){let e={stepType:`replace`,from:this.from,to:this.to};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(t,n){if(typeof n.from!=`number`||typeof n.to!=`number`)throw RangeError(`Invalid input for ReplaceStep.fromJSON`);return new e(n.from,n.to,O.fromJSON(t,n.slice),!!n.structure)}};pn.MAP_BIAS=1,on.jsonID(`replace`,pn);var mn=class e extends on{constructor(e,t,n,r,i,a,o=!1){super(),this.from=e,this.to=t,this.gapFrom=n,this.gapTo=r,this.slice=i,this.insert=a,this.structure=o}apply(e){if(this.structure&&(hn(e,this.from,this.gapFrom)||hn(e,this.gapTo,this.to)))return sn.fail(`Structure gap-replace would overwrite content`);let t=e.slice(this.gapFrom,this.gapTo);if(t.openStart||t.openEnd)return sn.fail(`Gap is not a flat range`);let n=this.slice.insertAt(this.insert,t.content);return n?sn.fromReplace(e,this.from,this.to,n):sn.fail(`Content does not fit in gap`)}getMap(){return new nn([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(t){let n=this.gapTo-this.gapFrom;return new e(this.from,this.from+this.slice.size+n,this.from+this.insert,this.from+this.insert+n,t.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(t){let n=t.mapResult(this.from,1),r=t.mapResult(this.to,-1),i=this.from==this.gapFrom?n.pos:t.map(this.gapFrom,-1),a=this.to==this.gapTo?r.pos:t.map(this.gapTo,1);return n.deletedAcross&&r.deletedAcross||i<n.pos||a>r.pos?null:new e(n.pos,r.pos,i,a,this.slice,this.insert,this.structure)}toJSON(){let e={stepType:`replaceAround`,from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(t,n){if(typeof n.from!=`number`||typeof n.to!=`number`||typeof n.gapFrom!=`number`||typeof n.gapTo!=`number`||typeof n.insert!=`number`)throw RangeError(`Invalid input for ReplaceAroundStep.fromJSON`);return new e(n.from,n.to,n.gapFrom,n.gapTo,O.fromJSON(t,n.slice),n.insert,!!n.structure)}};on.jsonID(`replaceAround`,mn);function hn(e,t,n){let r=e.resolve(t),i=n-t,a=r.depth;for(;i>0&&a>0&&r.indexAfter(a)==r.node(a).childCount;)a--,i--;if(i>0){let e=r.node(a).maybeChild(r.indexAfter(a));for(;i>0;){if(!e||e.isLeaf)return!0;e=e.firstChild,i--}}return!1}function gn(e,t,n,r){let i=[],a=[],o,s;e.doc.nodesBetween(t,n,(e,c,l)=>{if(!e.isInline)return;let u=e.marks;if(!r.isInSet(u)&&l.type.allowsMarkType(r.type)){let l=Math.max(c,t),d=Math.min(c+e.nodeSize,n),f=r.addToSet(u);for(let e=0;e<u.length;e++)u[e].isInSet(f)||(o&&o.to==l&&o.mark.eq(u[e])?o.to=d:i.push(o=new un(l,d,u[e])));s&&s.to==l?s.to=d:a.push(s=new ln(l,d,r))}}),i.forEach(t=>e.step(t)),a.forEach(t=>e.step(t))}function _n(e,t,n,r){let i=[],a=0;e.doc.nodesBetween(t,n,(e,o)=>{if(!e.isInline)return;a++;let s=null;if(r instanceof bt){let t=e.marks,n;for(;n=r.isInSet(t);)(s||=[]).push(n),t=n.removeFromSet(t)}else r?r.isInSet(e.marks)&&(s=[r]):s=e.marks;if(s&&s.length){let r=Math.min(o+e.nodeSize,n);for(let e=0;e<s.length;e++){let n=s[e],c;for(let e=0;e<i.length;e++){let t=i[e];t.step==a-1&&n.eq(i[e].style)&&(c=t)}c?(c.to=r,c.step=a):i.push({style:n,from:Math.max(o,t),to:r,step:a})}}}),i.forEach(t=>e.step(new un(t.from,t.to,t.style)))}function vn(e,t,n,r=n.contentMatch,i=!0){let a=e.doc.nodeAt(t),o=[],s=t+1;for(let t=0;t<a.childCount;t++){let c=a.child(t),l=s+c.nodeSize,u=r.matchType(c.type);if(!u)o.push(new pn(s,l,O.empty));else{r=u;for(let t=0;t<c.marks.length;t++)n.allowsMarkType(c.marks[t].type)||e.step(new un(s,l,c.marks[t]));if(i&&c.isText&&n.whitespace!=`pre`){let e,t=/\r?\n|\r/g,r;for(;e=t.exec(c.text);)r||=new O(E.from(n.schema.text(` `,n.allowedMarks(c.marks))),0,0),o.push(new pn(s+e.index,s+e.index+e[0].length,r))}}s=l}if(!r.validEnd){let t=r.fillBefore(E.empty,!0);e.replace(s,s,new O(t,0,0))}for(let t=o.length-1;t>=0;t--)e.step(o[t])}function yn(e,t,n){return(t==0||e.canReplace(t,e.childCount))&&(n==e.childCount||e.canReplace(0,n))}function bn(e){let t=e.parent.content.cutByIndex(e.startIndex,e.endIndex);for(let n=e.depth,r=0,i=0;;--n){let a=e.$from.node(n),o=e.$from.index(n)+r,s=e.$to.indexAfter(n)-i;if(n<e.depth&&a.canReplace(o,s,t))return n;if(n==0||a.type.spec.isolating||!yn(a,o,s))break;o&&(r=1),s<a.childCount&&(i=1)}return null}function xn(e,t,n){let{$from:r,$to:i,depth:a}=t,o=r.before(a+1),s=i.after(a+1),c=o,l=s,u=E.empty,d=0;for(let e=a,t=!1;e>n;e--)t||r.index(e)>0?(t=!0,u=E.from(r.node(e).copy(u)),d++):c--;let f=E.empty,p=0;for(let e=a,t=!1;e>n;e--)t||i.after(e+1)<i.end(e)?(t=!0,f=E.from(i.node(e).copy(f)),p++):l++;e.step(new mn(c,l,o,s,new O(u.append(f),d,p),u.size-d,!0))}function Sn(e,t,n=null,r=e){let i=wn(e,t),a=i&&Tn(r,t);return a?i.map(Cn).concat({type:t,attrs:n}).concat(a.map(Cn)):null}function Cn(e){return{type:e,attrs:null}}function wn(e,t){let{parent:n,startIndex:r,endIndex:i}=e,a=n.contentMatchAt(r).findWrapping(t);if(!a)return null;let o=a.length?a[0]:t;return n.canReplaceWith(r,i,o)?a:null}function Tn(e,t){let{parent:n,startIndex:r,endIndex:i}=e,a=n.child(r),o=t.contentMatch.findWrapping(a.type);if(!o)return null;let s=(o.length?o[o.length-1]:t).contentMatch;for(let e=r;s&&e<i;e++)s=s.matchType(n.child(e).type);return!s||!s.validEnd?null:o}function En(e,t,n){let r=E.empty;for(let e=n.length-1;e>=0;e--){if(r.size){let t=n[e].type.contentMatch.matchFragment(r);if(!t||!t.validEnd)throw RangeError(`Wrapper type given to Transform.wrap does not form valid content of its parent wrapper`)}r=E.from(n[e].type.create(n[e].attrs,r))}let i=t.start,a=t.end;e.step(new mn(i,a,i,a,new O(r,0,0),n.length,!0))}function Dn(e,t,n,r,i){if(!r.isTextblock)throw RangeError(`Type given to setBlockType should be a textblock`);let a=e.steps.length;e.doc.nodesBetween(t,n,(t,n)=>{let o=typeof i==`function`?i(t):i;if(t.isTextblock&&!t.hasMarkup(r,o)&&An(e.doc,e.mapping.slice(a).map(n),r)){let i=null;if(r.schema.linebreakReplacement){let e=r.whitespace==`pre`,t=!!r.contentMatch.matchType(r.schema.linebreakReplacement);e&&!t?i=!1:!e&&t&&(i=!0)}i===!1&&kn(e,t,n,a),vn(e,e.mapping.slice(a).map(n,1),r,void 0,i===null);let s=e.mapping.slice(a),c=s.map(n,1),l=s.map(n+t.nodeSize,1);return e.step(new mn(c,l,c+1,l-1,new O(E.from(r.create(o,null,t.marks)),0,0),1,!0)),i===!0&&On(e,t,n,a),!1}})}function On(e,t,n,r){t.forEach((i,a)=>{if(i.isText){let o,s=/\r?\n|\r/g;for(;o=s.exec(i.text);){let i=e.mapping.slice(r).map(n+1+a+o.index);e.replaceWith(i,i+1,t.type.schema.linebreakReplacement.create())}}})}function kn(e,t,n,r){t.forEach((i,a)=>{if(i.type==i.type.schema.linebreakReplacement){let i=e.mapping.slice(r).map(n+1+a);e.replaceWith(i,i+1,t.type.schema.text(`
|
|
@@ -185,5 +185,5 @@ ${t.innerHTML}
|
|
|
185
185
|
`);return}},parse:{}}}}}),rD=H.create({name:`heading`}).extend({addStorage(){return{markdown:{serialize:OE.nodes.heading,parse:{}}}}}),iD=H.create({name:`horizontalRule`}).extend({addStorage(){return{markdown:{serialize:OE.nodes.horizontal_rule,parse:{}}}}}),aD=H.create({name:`image`}).extend({addStorage(){return{markdown:{serialize:OE.nodes.image,parse:{}}}}}),oD=H.create({name:`listItem`}).extend({addStorage(){return{markdown:{serialize:OE.nodes.list_item,parse:{}}}}}),sD=H.create({name:`orderedList`});function cD(e,t,n){let r=0;for(;n-r>0&&t.child(n-r-1).type.name===e.type.name;r++);return r}var lD=sD.extend({addStorage(){return{markdown:{serialize(e,t,n,r){let i=t.attrs.start||1,a=String(i+t.childCount-1).length,o=e.repeat(` `,a+2),s=cD(t,n,r)%2?`) `:`. `;e.renderList(t,o,t=>{let n=String(i+t);return e.repeat(` `,a-n.length)+n+s})},parse:{}}}}}),uD=H.create({name:`paragraph`}).extend({addStorage(){return{markdown:{serialize:OE.nodes.paragraph,parse:{}}}}});function dD(e){var t;return(e==null||(t=e.content)==null?void 0:t.content)??[]}var fD=H.create({name:`table`}).extend({addStorage(){return{markdown:{serialize(e,t,n){if(!mD(t)){XE.storage.markdown.serialize.call(this,e,t,n);return}e.inTable=!0,t.forEach((t,n,r)=>{if(e.write(`| `),t.forEach((t,n,r)=>{r&&e.write(` | `);let i=t.firstChild;i.textContent.trim()&&e.renderInline(i)}),e.write(` |`),e.ensureNewLine(),!r){let n=Array.from({length:t.childCount}).map(()=>`---`).join(` | `);e.write(`| ${n} |`),e.ensureNewLine()}}),e.closeBlock(t),e.inTable=!1},parse:{}}}}});function pD(e){return e.attrs.colspan>1||e.attrs.rowspan>1}function mD(e){let t=dD(e),n=t[0],r=t.slice(1);return!(dD(n).some(e=>e.type.name!==`tableHeader`||pD(e)||e.childCount>1)||r.some(e=>dD(e).some(e=>e.type.name===`tableHeader`||pD(e)||e.childCount>1)))}var hD=[$E,eD,tD,nD,rD,iD,XE,aD,oD,lD,uD,fD,H.create({name:`taskItem`}).extend({addStorage(){return{markdown:{serialize(e,t){let n=t.attrs.checked?`[x]`:`[ ]`;e.write(`${n} `),e.renderContent(t)},parse:{updateDOM(e){[...e.querySelectorAll(`.task-list-item`)].forEach(e=>{let t=e.querySelector(`input`);e.setAttribute(`data-type`,`taskItem`),t&&(e.setAttribute(`data-checked`,t.checked),t.remove())})}}}}}}),H.create({name:`taskList`}).extend({addStorage(){return{markdown:{serialize:eD.storage.markdown.serialize,parse:{setup(e){e.use(ME.default)},updateDOM(e){[...e.querySelectorAll(`.contains-task-list`)].forEach(e=>{e.setAttribute(`data-type`,`taskList`)})}}}}}}),H.create({name:`text`}).extend({addStorage(){return{markdown:{serialize(e,t){e.text(qE(t.text))},parse:{}}}}}),Ff.create({name:`bold`}).extend({addStorage(){return{markdown:{serialize:OE.marks.strong,parse:{}}}}}),Ff.create({name:`code`}).extend({addStorage(){return{markdown:{serialize:OE.marks.code,parse:{}}}}}),WE,Ff.create({name:`italic`}).extend({addStorage(){return{markdown:{serialize:OE.marks.em,parse:{}}}}}),Ff.create({name:`link`}).extend({addStorage(){return{markdown:{serialize:OE.marks.link,parse:{}}}}}),Ff.create({name:`strike`}).extend({addStorage(){return{markdown:{serialize:{open:`~~`,close:`~~`,expelEnclosingWhitespace:!0},parse:{}}}}})];function gD(e){let t=e.storage?.markdown,n=hD.find(t=>t.name===e.name)?.storage.markdown;return t||n?{...n,...t}:null}var _D=class{constructor(e){FE(this,`editor`,null),this.editor=e}serialize(e){let t=new UE(this.nodes,this.marks,{hardBreakNodeName:nD.name});return t.renderContent(e),t.out}get nodes(){return{...Object.fromEntries(Object.keys(this.editor.schema.nodes).map(e=>[e,this.serializeNode(XE)])),...Object.fromEntries(this.editor.extensionManager.extensions.filter(e=>e.type===`node`&&this.serializeNode(e)).map(e=>[e.name,this.serializeNode(e)])??[])}}get marks(){return{...Object.fromEntries(Object.keys(this.editor.schema.marks).map(e=>[e,this.serializeMark(WE)])),...Object.fromEntries(this.editor.extensionManager.extensions.filter(e=>e.type===`mark`&&this.serializeMark(e)).map(e=>[e.name,this.serializeMark(e)])??[])}}serializeNode(e){var t;return(t=gD(e))==null||(t=t.serialize)==null?void 0:t.bind({editor:this.editor,options:e.options})}serializeMark(e){let t=gD(e)?.serialize;return t?{...t,open:typeof t.open==`function`?t.open.bind({editor:this.editor,options:e.options}):t.open,close:typeof t.close==`function`?t.close.bind({editor:this.editor,options:e.options}):t.close}:null}},vD=class{constructor(e,t){FE(this,`editor`,null),FE(this,`md`,null);let{html:n,linkify:r,breaks:i}=t;this.editor=e,this.md=this.withPatchedRenderer(gE({html:n,linkify:r,breaks:i}))}parse(e){let{inline:t}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(typeof e==`string`){this.editor.extensionManager.extensions.forEach(e=>{var t;return(t=gD(e))==null||(t=t.parse)==null||(t=t.setup)==null?void 0:t.call({editor:this.editor,options:e.options},this.md)});let n=KE(this.md.render(e));return this.editor.extensionManager.extensions.forEach(e=>{var t;return(t=gD(e))==null||(t=t.parse)==null||(t=t.updateDOM)==null?void 0:t.call({editor:this.editor,options:e.options},n)}),this.normalizeDOM(n,{inline:t,content:e}),n.innerHTML}return e}normalizeDOM(e,t){let{inline:n,content:r}=t;return this.normalizeBlocks(e),e.querySelectorAll(`*`).forEach(e=>{e.nextSibling?.nodeType===Node.TEXT_NODE&&!e.closest(`pre`)&&(e.nextSibling.textContent=e.nextSibling.textContent.replace(/^\n/,``))}),n&&this.normalizeInline(e,r),e}normalizeBlocks(e){let t=Object.values(this.editor.schema.nodes).filter(e=>e.isBlock).map(e=>e.spec.parseDOM?.map(e=>e.tag)).flat().filter(Boolean).join(`,`);t&&[...e.querySelectorAll(t)].forEach(e=>{e.parentElement.matches(`p`)&&JE(e)})}normalizeInline(e,t){var n;if((n=e.firstElementChild)!=null&&n.matches(`p`)){let n=e.firstElementChild,{nextElementSibling:r}=n,i=t.match(/^\s+/)?.[0]??``,a=r?``:t.match(/\s+$/)?.[0]??``;if(t.match(/^\n\n/)){n.innerHTML=`${n.innerHTML}${a}`;return}YE(n),e.innerHTML=`${i}${e.innerHTML}${a}`}}withPatchedRenderer(e){let t=e=>function(){let t=e(...arguments);return t===`
|
|
186
186
|
`?t:t[t.length-1]===`
|
|
187
187
|
`?t.slice(0,-1):t};return e.renderer.rules.hardbreak=t(e.renderer.rules.hardbreak),e.renderer.rules.softbreak=t(e.renderer.rules.softbreak),e.renderer.rules.fence=t(e.renderer.rules.fence),e.renderer.rules.code_block=t(e.renderer.rules.code_block),e.renderer.renderToken=t(e.renderer.renderToken.bind(e.renderer)),e}},yD=V.create({name:`markdownClipboard`,addOptions(){return{transformPastedText:!1,transformCopiedText:!1}},addProseMirrorPlugins(){return[new M({key:new N(`markdownClipboard`),props:{clipboardTextParser:(e,t,n)=>{if(n||!this.options.transformPastedText)return null;let r=this.editor.storage.markdown.parser.parse(e,{inline:!0});return Tt.fromSchema(this.editor.schema).parseSlice(KE(r),{preserveWhitespace:!0,context:t})},clipboardTextSerializer:e=>this.options.transformCopiedText?this.editor.storage.markdown.serializer.serialize(e.content):null}})]}}),bD=V.create({name:`markdown`,priority:50,addOptions(){return{html:!0,tightLists:!0,tightListClass:`tight`,bulletListMarker:`-`,linkify:!1,breaks:!1,transformPastedText:!1,transformCopiedText:!1}},addCommands(){let e=Uf.Commands.config.addCommands();return{setContent:(t,n)=>r=>e.setContent(r.editor.storage.markdown.parser.parse(t),n)(r),insertContentAt:(t,n,r)=>i=>e.insertContentAt(t,i.editor.storage.markdown.parser.parse(n,{inline:!0}),r)(i)}},onBeforeCreate(){this.editor.storage.markdown={options:{...this.options},parser:new vD(this.editor,this.options),serializer:new _D(this.editor),getMarkdown:()=>this.editor.storage.markdown.serializer.serialize(this.editor.state.doc)},this.editor.options.initialContent=this.editor.options.content,this.editor.options.content=this.editor.storage.markdown.parser.parse(this.editor.options.content)},onCreate(){this.editor.options.content=this.editor.options.initialContent,delete this.editor.options.initialContent},addStorage(){return{}},addExtensions(){return[IE.configure({tight:this.options.tightLists,tightClass:this.options.tightListClass}),yD.configure({transformPastedText:this.options.transformPastedText,transformCopiedText:this.options.transformCopiedText})]}});function xD(e){let{char:t,allowSpaces:n,allowToIncludeChar:r,allowedPrefixes:i,startOfLine:a,$position:o}=e,s=n&&!r,c=hf(t),l=RegExp(`\\s${c}$`),u=a?`^`:``,d=r?``:c,f=RegExp(s?`${u}${c}.*?(?=\\s${d}|$)`:`${u}(?:^)?${c}[^\\s${d}]*`,`gm`),p=o.nodeBefore?.isText&&o.nodeBefore.text;if(!p)return null;let m=o.pos-p.length,h=Array.from(p.matchAll(f)).pop();if(!h||h.input===void 0||h.index===void 0)return null;let g=h.input.slice(Math.max(0,h.index-1),h.index),_=RegExp(`^[${i?.join(``)}\0]?$`).test(g);if(i!==null&&!_)return null;let v=m+h.index,y=v+h[0].length;return s&&l.test(p.slice(y-1,y+1))&&(h[0]+=` `,y+=1),v<o.pos&&y>=o.pos?{range:{from:v,to:y},query:h[0].slice(t.length),text:h[0]}:null}function SD(e){return e.docChanged?e.steps.some(e=>{let t=e.slice;if(!t?.content)return!1;let n=t.content.textBetween(0,t.content.size,`
|
|
188
|
-
`);return/\s/.test(n)}):!1}function CD(e){return()=>{let t=e.state.selection.$anchor.pos,{top:n,right:r,bottom:i,left:a}=e.view.coordsAtPos(t);try{return new DOMRect(a,n,r-a,i-n)}catch{return null}}}function wD(e,t,n,r){return n?()=>{let n=r.getState(e.state)?.decorationId;return t.dom.querySelector(`[data-decoration-id="${n}"]`)?.getBoundingClientRect()||null}:CD(e)}function TD({match:e,dismissedRange:t,state:n,transaction:r,editor:i,shouldResetDismissed:a,effectiveAllowSpaces:o}){return a?.({editor:i,state:n,range:t,match:e,transaction:r,allowSpaces:o})?!1:o?e.range.from===t.from:e.range.from===t.from&&!SD(r)}function ED({view:e,pluginKeyRef:t}){let n=e.state.tr.setMeta(t,{exit:!0});e.dispatch(n)}function DD({pluginKey:e,decorationTag:t,decorationClass:n,decorationContent:r,decorationEmptyClass:i,renderer:a,dispatchExit:o}){return{handleKeyDown(t,n){var r;let i=e.getState(t.state);return i.active?n.key===`Escape`||n.key===`Esc`?((r=a?.onKeyDown)==null||r.call(a,{view:t,event:n,range:i.range}),o(t),!0):(a?.onKeyDown)?.call(a,{view:t,event:n,range:i.range})||!1:!1},decorations(a){let{active:o,range:s,decorationId:c,query:l}=e.getState(a);if(!o)return null;let u=!l?.length,d=[n];return u&&d.push(i),I.create(a.doc,[Zs.inline(s.from,s.to,{nodeName:t,class:d.join(` `),"data-decoration-id":c||void 0,"data-decoration-content":r})])}}}function OD({editor:e,char:t,effectiveAllowSpaces:n,allowToIncludeChar:r,allowedPrefixes:i,startOfLine:a,findSuggestionMatch:o,allow:s,shouldShow:c,shouldKeepDismissed:l,pluginKey:u}){return{init(){return{active:!1,range:{from:0,to:0},query:null,text:null,composing:!1,dismissedRange:null}},apply(d,f,p,m){let{isEditable:h}=e,{composing:g}=e.view,{selection:_}=d,{empty:v,from:y}=_,b={...f},x=d.getMeta(u);if(x&&x.exit)return b.active=!1,b.decorationId=null,b.range={from:0,to:0},b.query=null,b.text=null,b.dismissedRange=f.active?{...f.range}:f.dismissedRange,b;if(b.composing=g,d.docChanged&&b.dismissedRange!==null&&(b.dismissedRange={from:d.mapping.map(b.dismissedRange.from),to:d.mapping.map(b.dismissedRange.to)}),h&&(v||e.view.composing)){(y<f.range.from||y>f.range.to)&&!g&&!f.composing&&(b.active=!1);let u=o({char:t,allowSpaces:n,allowToIncludeChar:r,allowedPrefixes:i,startOfLine:a,$position:_.$from}),p=`id_${Math.floor(Math.random()*4294967295)}`;u&&s({editor:e,state:m,range:u.range,isActive:f.active})&&(!c||c({editor:e,range:u.range,query:u.query,text:u.text,transaction:d}))?(b.dismissedRange!==null&&!l({match:u,dismissedRange:b.dismissedRange,state:m,transaction:d})&&(b.dismissedRange=null),b.dismissedRange===null?(b.active=!0,b.decorationId=f.decorationId||p,b.range=u.range,b.query=u.query,b.text=u.text):b.active=!1):(u||(b.dismissedRange=null),b.active=!1)}else b.active=!1;return b.active||(b.decorationId=null,b.range={from:0,to:0},b.query=null,b.text=null),b}}}function kD({editor:e,items:t}){let n=null,r=null,i=null,a=()=>{r!==null&&(clearTimeout(r),r=null),i?.(),i=null},o=e=>new Promise(t=>{i=t,r=setTimeout(()=>{r=null;let e=i;i=null,e?.()},e)}),s=()=>{n?.abort(),a(),n=null};return{abort:s,fetch:async(r,i)=>{s(),n=new AbortController;let a=n;if(i>0&&await o(i),n!==a||a.signal.aborted)return{status:`aborted`};try{let i=await t({editor:e,query:r,signal:a.signal});return n!==a||a.signal.aborted?{status:`aborted`}:{status:`resolved`,items:i}}catch{return n!==a||a.signal.aborted?{status:`aborted`}:{status:`error`}}}}}function AD({placement:e,offset:t,flip:n,floatingUi:r}){let i=[
|
|
189
|
-
`],items:({query:t})=>e.filter(t),command:({editor:e,range:t,props:n})=>n.run({editor:e,range:t}),render:()=>{let t=t=>e.open({rect:t.clientRect?.()??null,items:t.items,pick:t.command});return{onStart:t,onUpdate:t,onKeyDown:({event:t})=>e.keyDown(t),onExit:()=>e.close()}}})]}})}function RD(e){return[Xy.configure({link:{openOnClick:!1},underline:!1}),Mv,jv.configure({nested:!0}),sS,Gx,Wx,Ux,lS.configure({inline:!1}),bD.configure({transformPastedText:!0,linkify:!1}),...e.placeholder?[Hy.configure({placeholder:e.placeholder})]:[],...e.slash?[LD(e.slash)]:[]]}var zD=(e,t)=>{let n=e.chain().focus();return t?n.deleteRange(t):n},BD=(e,t)=>({key:`h${e}`,icon:t,run:(t,n)=>zD(t,n).toggleHeading({level:e}).run(),active:t=>t.isActive(`heading`,{level:e})}),VD=[BD(1,se),BD(2,ce),BD(3,le),{key:`bulletList`,icon:f,run:(e,t)=>zD(e,t).toggleBulletList().run(),active:e=>e.isActive(`bulletList`)},{key:`orderedList`,icon:fe,run:(e,t)=>zD(e,t).toggleOrderedList().run(),active:e=>e.isActive(`orderedList`)},{key:`taskList`,icon:h,run:(e,t)=>zD(e,t).toggleTaskList().run(),active:e=>e.isActive(`taskList`)},{key:`blockquote`,icon:pe,run:(e,t)=>zD(e,t).toggleBlockquote().run(),active:e=>e.isActive(`blockquote`)},{key:`codeBlock`,icon:ie,run:(e,t)=>zD(e,t).toggleCodeBlock().run(),active:e=>e.isActive(`codeBlock`)},{key:`horizontalRule`,icon:_,run:(e,t)=>zD(e,t).setHorizontalRule().run()},{key:`table`,icon:ge,run:(e,t)=>zD(e,t).insertTable({rows:3,cols:3,withHeaderRow:!0}).run(),active:e=>e.isActive(`table`)}],Q=s(),$=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web-ui/src/markdown/toolbar.tsx`,HD=(0,T.forwardRef)(({icon:e,label:t,active:n,disabled:r,tone:i,onClick:a,...o},s)=>(0,Q.jsxDEV)(`button`,{ref:s,type:`button`,"aria-label":t,title:t,"aria-pressed":n??!1,disabled:r,onClick:a,...o,className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-muted transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent disabled:opacity-40 ${i===`danger`?`hover:bg-danger/10 hover:text-danger`:`hover:bg-elevated hover:text-text`} ${n?`bg-elevated text-accent`:``}`,children:(0,Q.jsxDEV)(e,{size:15},void 0,!1,{fileName:$,lineNumber:66,columnNumber:5},void 0)},void 0,!1,{fileName:$,lineNumber:53,columnNumber:3},void 0));HD.displayName=`ToolButton`;var UD=()=>(0,Q.jsxDEV)(`span`,{className:`mx-0.5 h-5 w-px shrink-0 bg-border`,"aria-hidden":!0},void 0,!1,{fileName:$,lineNumber:71,columnNumber:23},void 0),WD=[{key:`bold`,icon:re,run:e=>e.chain().focus().toggleBold().run(),active:e=>e.isActive(`bold`)},{key:`italic`,icon:de,run:e=>e.chain().focus().toggleItalic().run(),active:e=>e.isActive(`italic`)},{key:`strike`,icon:he,run:e=>e.chain().focus().toggleStrike().run(),active:e=>e.isActive(`strike`)},{key:`code`,icon:p,run:e=>e.chain().focus().toggleCode().run(),active:e=>e.isActive(`code`)}];function GD({editor:e,onDone:t}){let{t:n}=a(),[r,i]=(0,T.useState)(e.getAttributes(`link`).href??``),o=()=>{let n=e.chain().focus().extendMarkRange(`link`);r.trim()===``?n.unsetLink().run():n.setLink({href:r.trim()}).run(),t()};return(0,Q.jsxDEV)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Q.jsxDEV)(u,{autoFocus:!0,value:r,placeholder:`https://`,"aria-label":n(`form.mdLink`),onChange:e=>i(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),o()),e.key===`Escape`&&(e.preventDefault(),t())},className:`h-7 flex-1 text-sm`},void 0,!1,{fileName:$,lineNumber:103,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:c,label:n(`actions.save`),onClick:o},void 0,!1,{fileName:$,lineNumber:121,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:ve,label:n(`form.md.unlink`),onClick:()=>{e.chain().focus().extendMarkRange(`link`).unsetLink().run(),t()}},void 0,!1,{fileName:$,lineNumber:122,columnNumber:7},this)]},void 0,!0,{fileName:$,lineNumber:102,columnNumber:5},this)}function KD({editor:e,onDone:t}){let{t:n}=a(),[r,i]=(0,T.useState)(``),[o,s]=(0,T.useState)(``),l=()=>{let n=r.trim();n&&e.chain().focus().setImage({src:n,alt:o.trim()||void 0}).run(),t()};return(0,Q.jsxDEV)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,Q.jsxDEV)(u,{autoFocus:!0,value:r,placeholder:`https://… /uploads/…`,"aria-label":n(`form.md.imageUrl`),onChange:e=>i(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),l()),e.key===`Escape`&&(e.preventDefault(),t())},className:`h-7 min-w-0 flex-1 text-sm`},void 0,!1,{fileName:$,lineNumber:156,columnNumber:7},this),(0,Q.jsxDEV)(u,{value:o,placeholder:n(`form.md.imageAlt`),"aria-label":n(`form.md.imageAlt`),onChange:e=>s(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),l()),e.key===`Escape`&&(e.preventDefault(),t())},className:`h-7 w-32 text-sm`},void 0,!1,{fileName:$,lineNumber:174,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:c,label:n(`actions.save`),disabled:!r.trim(),onClick:l},void 0,!1,{fileName:$,lineNumber:191,columnNumber:7},this)]},void 0,!0,{fileName:$,lineNumber:155,columnNumber:5},this)}function qD({editor:e}){let{t}=a();return(0,Q.jsxDEV)(Q.Fragment,{children:[(0,Q.jsxDEV)(UD,{},void 0,!1,{fileName:$,lineNumber:205,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:ne,label:t(`form.md.addRow`),onClick:()=>e.chain().focus().addRowAfter().run()},void 0,!1,{fileName:$,lineNumber:206,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:te,label:t(`form.md.addColumn`),onClick:()=>e.chain().focus().addColumnAfter().run()},void 0,!1,{fileName:$,lineNumber:211,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:g,tone:`danger`,label:t(`form.md.deleteRow`),onClick:()=>e.chain().focus().deleteRow().run()},void 0,!1,{fileName:$,lineNumber:216,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:ae,tone:`danger`,label:t(`form.md.deleteColumn`),onClick:()=>e.chain().focus().deleteColumn().run()},void 0,!1,{fileName:$,lineNumber:222,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:oe,tone:`danger`,label:t(`form.md.deleteTable`),onClick:()=>e.chain().focus().deleteTable().run()},void 0,!1,{fileName:$,lineNumber:228,columnNumber:7},this)]},void 0,!0,{fileName:$,lineNumber:204,columnNumber:5},this)}function JD({icon:e,label:t,active:n,open:r,onOpenChange:i,children:a}){return(0,Q.jsxDEV)(v,{open:r,onOpenChange:i,children:[(0,Q.jsxDEV)(d,{asChild:!0,children:(0,Q.jsxDEV)(HD,{icon:e,label:t,active:n||r},void 0,!1,{fileName:$,lineNumber:258,columnNumber:9},this)},void 0,!1,{fileName:$,lineNumber:257,columnNumber:7},this),(0,Q.jsxDEV)(m,{align:`start`,className:`w-80 p-2`,children:a},void 0,!1,{fileName:$,lineNumber:260,columnNumber:7},this)]},void 0,!0,{fileName:$,lineNumber:256,columnNumber:5},this)}function YD({editor:e}){let{t}=a(),[n,r]=(0,T.useState)(null),i=vm({editor:e,selector:({editor:e})=>e&&!e.isDestroyed?{marks:WD.map(t=>t.active(e)),blocks:VD.map(t=>t.active?.(e)??!1),link:e.isActive(`link`),table:e.isActive(`table`),canUndo:e.can().undo(),canRedo:e.can().redo()}:{marks:WD.map(()=>!1),blocks:VD.map(()=>!1),link:!1,table:!1,canUndo:!1,canRedo:!1}}),o=e=>(0,Q.jsxDEV)(`div`,{className:`flex items-center gap-0.5`,children:e},void 0,!1,{fileName:$,lineNumber:301,columnNumber:42},this);return(0,Q.jsxDEV)(`div`,{className:`flex flex-col gap-1.5`,children:(0,Q.jsxDEV)(`div`,{className:`-mx-0.5 flex items-center gap-0.5 overflow-x-auto overscroll-x-contain border-b border-border px-0.5 pb-1.5 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:[o((0,Q.jsxDEV)(Q.Fragment,{children:[(0,Q.jsxDEV)(HD,{icon:_e,label:t(`form.md.undo`),disabled:!i.canUndo,onClick:()=>e.chain().focus().undo().run()},void 0,!1,{fileName:$,lineNumber:310,columnNumber:13},this),(0,Q.jsxDEV)(HD,{icon:me,label:t(`form.md.redo`),disabled:!i.canRedo,onClick:()=>e.chain().focus().redo().run()},void 0,!1,{fileName:$,lineNumber:316,columnNumber:13},this)]},void 0,!0,{fileName:$,lineNumber:309,columnNumber:11},this)),(0,Q.jsxDEV)(UD,{},void 0,!1,{fileName:$,lineNumber:324,columnNumber:9},this),o(WD.map((n,r)=>(0,Q.jsxDEV)(HD,{icon:n.icon,label:t(`form.md.${n.key}`),active:i.marks[r],onClick:()=>n.run(e)},n.key,!1,{fileName:$,lineNumber:327,columnNumber:13},this))),(0,Q.jsxDEV)(UD,{},void 0,!1,{fileName:$,lineNumber:336,columnNumber:9},this),o(VD.map((n,r)=>(0,Q.jsxDEV)(HD,{icon:n.icon,label:t(`form.md.${n.key}`),active:i.blocks[r],onClick:()=>n.run(e)},n.key,!1,{fileName:$,lineNumber:339,columnNumber:13},this))),(0,Q.jsxDEV)(UD,{},void 0,!1,{fileName:$,lineNumber:348,columnNumber:9},this),o((0,Q.jsxDEV)(Q.Fragment,{children:[(0,Q.jsxDEV)(JD,{icon:y,label:t(`form.md.link`),active:i.link,open:n===`link`,onOpenChange:e=>r(e?`link`:null),children:(0,Q.jsxDEV)(GD,{editor:e,onDone:()=>r(null)},void 0,!1,{fileName:$,lineNumber:358,columnNumber:15},this)},void 0,!1,{fileName:$,lineNumber:351,columnNumber:13},this),(0,Q.jsxDEV)(JD,{icon:ue,label:t(`form.md.image`),open:n===`image`,onOpenChange:e=>r(e?`image`:null),children:(0,Q.jsxDEV)(KD,{editor:e,onDone:()=>r(null)},void 0,!1,{fileName:$,lineNumber:366,columnNumber:15},this)},void 0,!1,{fileName:$,lineNumber:360,columnNumber:13},this)]},void 0,!0,{fileName:$,lineNumber:350,columnNumber:11},this)),i.table&&(0,Q.jsxDEV)(qD,{editor:e},void 0,!1,{fileName:$,lineNumber:370,columnNumber:25},this)]},void 0,!0,{fileName:$,lineNumber:307,columnNumber:7},this)},void 0,!1,{fileName:$,lineNumber:304,columnNumber:5},this)}var XD=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web-ui/src/MarkdownEditor.tsx`,ZD=e=>e&&!e.isDestroyed?e.storage.markdown:void 0;function QD({value:e,onChange:t,placeholder:n,readonly:r}){let{t:i}=a(),[o,s]=(0,T.useState)(null),c=(0,T.useRef)(null);c.current=o;let l=e=>i(`form.md.${e}`),u=(0,T.useRef)(l);u.current=l;let d=(0,T.useMemo)(()=>({filter:e=>{let t=e.trim().toLowerCase(),n=VD.map(e=>({key:e.key,run:({editor:t,range:n})=>e.run(t,n)}));return t?n.filter(e=>e.key.toLowerCase().includes(t)||u.current(e.key).toLowerCase().includes(t)):n},open:({rect:e,items:t,pick:n})=>s(r=>({rect:e,items:t,pick:n,index:r&&r.index<t.length?r.index:0})),close:()=>s(null),keyDown:e=>{let t=c.current;if(!t)return!1;let n=t.items.length-1;if(e.key===`ArrowDown`)return s({...t,index:t.index>=n?0:t.index+1}),!0;if(e.key===`ArrowUp`)return s({...t,index:t.index<=0?n:t.index-1}),!0;if(e.key===`Enter`){let e=t.items[t.index];return e?(t.pick(e),!0):!1}return e.key===`Escape`?(s(null),!0):!1}}),[]),f=Cm({editable:!r,extensions:RD({placeholder:r?void 0:n,slash:d}),content:e,autofocus:!1,onUpdate:({editor:e})=>{let n=ZD(e);n&&t?.(n.getMarkdown())},editorProps:{attributes:{class:`md-static outline-none`}}});return(0,T.useEffect)(()=>{let t=ZD(f);!f||!t||e!==t.getMarkdown()&&f.commands.setContent(e,{emitUpdate:!1})},[f,e]),!f||f.isDestroyed?null:(0,Q.jsxDEV)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-1.5 md:gap-2`,children:[!r&&(0,Q.jsxDEV)(YD,{editor:f},void 0,!1,{fileName:XD,lineNumber:138,columnNumber:21},this),(0,Q.jsxDEV)(hm,{editor:f,className:`min-h-48 w-full min-w-0 max-w-full flex-1 overflow-y-auto rounded-lg border border-border bg-bg px-2 py-1.5 transition-colors focus-within:border-accent md:min-h-64 md:rounded-xl md:px-4 md:py-3`},void 0,!1,{fileName:XD,lineNumber:141,columnNumber:7},this),o&&o.items.length>0&&(0,Q.jsxDEV)(`div`,{role:`listbox`,className:`fixed z-50 max-h-64 w-56 overflow-y-auto rounded-lg border border-border bg-surface p-1 shadow-lg`,style:{top:(o.rect?.bottom??0)+4,left:o.rect?.left??0},children:o.items.map((e,t)=>{let n=VD.find(t=>t.key===e.key)?.icon;return(0,Q.jsxDEV)(`button`,{type:`button`,role:`option`,"aria-selected":t===o.index,onMouseEnter:()=>s({...o,index:t}),onClick:()=>o.pick(e),className:`flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm ${t===o.index?`bg-elevated text-text`:`text-muted`}`,children:[n&&(0,Q.jsxDEV)(n,{size:15,className:`shrink-0`},void 0,!1,{fileName:XD,lineNumber:165,columnNumber:26},this),l(e.key)]},e.key,!0,{fileName:XD,lineNumber:154,columnNumber:15},this)})},void 0,!1,{fileName:XD,lineNumber:146,columnNumber:9},this)]},void 0,!0,{fileName:XD,lineNumber:137,columnNumber:5},this)}export{QD as default};
|
|
188
|
+
`);return/\s/.test(n)}):!1}function CD(e){return()=>{let t=e.state.selection.$anchor.pos,{top:n,right:r,bottom:i,left:a}=e.view.coordsAtPos(t);try{return new DOMRect(a,n,r-a,i-n)}catch{return null}}}function wD(e,t,n,r){return n?()=>{let n=r.getState(e.state)?.decorationId;return t.dom.querySelector(`[data-decoration-id="${n}"]`)?.getBoundingClientRect()||null}:CD(e)}function TD({match:e,dismissedRange:t,state:n,transaction:r,editor:i,shouldResetDismissed:a,effectiveAllowSpaces:o}){return a?.({editor:i,state:n,range:t,match:e,transaction:r,allowSpaces:o})?!1:o?e.range.from===t.from:e.range.from===t.from&&!SD(r)}function ED({view:e,pluginKeyRef:t}){let n=e.state.tr.setMeta(t,{exit:!0});e.dispatch(n)}function DD({pluginKey:e,decorationTag:t,decorationClass:n,decorationContent:r,decorationEmptyClass:i,renderer:a,dispatchExit:o}){return{handleKeyDown(t,n){var r;let i=e.getState(t.state);return i.active?n.key===`Escape`||n.key===`Esc`?((r=a?.onKeyDown)==null||r.call(a,{view:t,event:n,range:i.range}),o(t),!0):(a?.onKeyDown)?.call(a,{view:t,event:n,range:i.range})||!1:!1},decorations(a){let{active:o,range:s,decorationId:c,query:l}=e.getState(a);if(!o)return null;let u=!l?.length,d=[n];return u&&d.push(i),I.create(a.doc,[Zs.inline(s.from,s.to,{nodeName:t,class:d.join(` `),"data-decoration-id":c||void 0,"data-decoration-content":r})])}}}function OD({editor:e,char:t,effectiveAllowSpaces:n,allowToIncludeChar:r,allowedPrefixes:i,startOfLine:a,findSuggestionMatch:o,allow:s,shouldShow:c,shouldKeepDismissed:l,pluginKey:u}){return{init(){return{active:!1,range:{from:0,to:0},query:null,text:null,composing:!1,dismissedRange:null}},apply(d,f,p,m){let{isEditable:h}=e,{composing:g}=e.view,{selection:_}=d,{empty:v,from:y}=_,b={...f},x=d.getMeta(u);if(x&&x.exit)return b.active=!1,b.decorationId=null,b.range={from:0,to:0},b.query=null,b.text=null,b.dismissedRange=f.active?{...f.range}:f.dismissedRange,b;if(b.composing=g,d.docChanged&&b.dismissedRange!==null&&(b.dismissedRange={from:d.mapping.map(b.dismissedRange.from),to:d.mapping.map(b.dismissedRange.to)}),h&&(v||e.view.composing)){(y<f.range.from||y>f.range.to)&&!g&&!f.composing&&(b.active=!1);let u=o({char:t,allowSpaces:n,allowToIncludeChar:r,allowedPrefixes:i,startOfLine:a,$position:_.$from}),p=`id_${Math.floor(Math.random()*4294967295)}`;u&&s({editor:e,state:m,range:u.range,isActive:f.active})&&(!c||c({editor:e,range:u.range,query:u.query,text:u.text,transaction:d}))?(b.dismissedRange!==null&&!l({match:u,dismissedRange:b.dismissedRange,state:m,transaction:d})&&(b.dismissedRange=null),b.dismissedRange===null?(b.active=!0,b.decorationId=f.decorationId||p,b.range=u.range,b.query=u.query,b.text=u.text):b.active=!1):(u||(b.dismissedRange=null),b.active=!1)}else b.active=!1;return b.active||(b.decorationId=null,b.range={from:0,to:0},b.query=null,b.text=null),b}}}function kD({editor:e,items:t}){let n=null,r=null,i=null,a=()=>{r!==null&&(clearTimeout(r),r=null),i?.(),i=null},o=e=>new Promise(t=>{i=t,r=setTimeout(()=>{r=null;let e=i;i=null,e?.()},e)}),s=()=>{n?.abort(),a(),n=null};return{abort:s,fetch:async(r,i)=>{s(),n=new AbortController;let a=n;if(i>0&&await o(i),n!==a||a.signal.aborted)return{status:`aborted`};try{let i=await t({editor:e,query:r,signal:a.signal});return n!==a||a.signal.aborted?{status:`aborted`}:{status:`resolved`,items:i}}catch{return n!==a||a.signal.aborted?{status:`aborted`}:{status:`error`}}}}}function AD({placement:e,offset:t,flip:n,floatingUi:r}){let i=[C({mainAxis:t.mainAxis??4,crossAxis:t.crossAxis??0})];return n&&i.push(S()),r?.middleware?.length&&i.push(...r.middleware),{placement:e,strategy:r?.strategy??`absolute`,middleware:i}}function jD(e){if(e instanceof HTMLElement)return e;if(typeof e==`string`)try{let t=document.querySelector(e);if(t)return t}catch{return document.body}return document.body}function MD({getReferenceRect:e,contextElement:t,config:n,container:r,dismissOnOutsideClick:i,dismiss:a}){return(o,s={})=>{let c={getBoundingClientRect:()=>e()??new DOMRect,contextElement:t},l=!1,u=!o.isConnected;u&&jD(r).appendChild(o),s.onPosition||(o.style.visibility=`hidden`,o.style.width=`max-content`);let d=w(c,o,()=>{ee(c,o,{placement:n.placement,strategy:n.strategy,middleware:n.middleware}).then(({x:e,y:t,placement:n,strategy:r})=>{if(s.onPosition){s.onPosition({x:e,y:t,placement:n,strategy:r});return}Object.assign(o.style,{position:r,left:`${e}px`,top:`${t}px`}),l||(l=!0,o.style.visibility=``)})},s.autoUpdate),f;return i&&(f=e=>{let n=e.target;!(n instanceof Node)||o.contains(n)||t.contains(n)||a()},document.addEventListener(`pointerdown`,f,!0)),()=>{d(),f&&document.removeEventListener(`pointerdown`,f,!0),u&&o.remove()}}}function ND({editor:e,pluginKey:t,items:n,renderer:r,minQueryLength:i,debounce:a,initialItems:o,placement:s,offset:c,container:l,flip:u,floatingUi:d,dismissOnOutsideClick:f,command:p,clientRectFor:m,dispatchExit:h}){let g,_=kD({editor:e,items:n}),v=AD({placement:s,offset:c,flip:u,floatingUi:d});function y(e,t){var n,i,a;switch(e){case`started`:(n=r?.onStart)==null||n.call(r,t);break;case`updated`:(i=r?.onUpdate)==null||i.call(r,t);break;case`stopped`:(a=r?.onExit)==null||a.call(r,t);break;default:break}}return{update:async(n,d)=>{var b,x;let S=t.getState(d),C=t.getState(n.state);if(!S||!C)return;let w=null,ee=S.query!==C.query,te=S.text!==C.text,ne=S.range.from!==C.range.from||S.range.to!==C.range.to,re=ee||te||ne;if(!S.active&&C.active)w=`started`;else if(S.active&&!C.active)w=`stopped`;else if(C.active&&re)w=`updated`;else return;let ie=w===`stopped`?S:C,ae=n.dom.querySelector(`[data-decoration-id="${ie.decorationId}"]`),oe=m(n,ae),se=i===0||(ie.query?ie.query.length>=i:!1),ce=(w===`started`||w===`updated`)&&se;if(g={editor:e,range:ie.range,query:ie.query||``,text:ie.text||``,items:o??[],command:t=>p({editor:e,range:ie.range,props:t}),decorationNode:ae,clientRect:oe,loading:ce,placement:s,offset:{mainAxis:c.mainAxis??4,crossAxis:c.crossAxis??0},container:l,flip:u,floatingUi:v,mount:MD({getReferenceRect:oe,contextElement:n.dom,config:v,container:l,dismissOnOutsideClick:f,dismiss:()=>h(e.view)})},w===`started`&&((b=r?.onBeforeStart)==null||b.call(r,g)),w===`updated`&&((x=r?.onBeforeUpdate)==null||x.call(r,g)),w===`started`&&y(w,g),w===`started`||w===`updated`)if(!ce)_.abort(),g={...g,items:o??[],loading:!1};else{g={...g,items:o??[],loading:!0},w=`updated`,y(w,g);let e=await _.fetch(ie.query||``,a);if(e.status===`aborted`)return;if(!t.getState(n.state)?.active){_.abort();return}g=e.status===`resolved`?{...g,items:e.items,loading:!1}:{...g,loading:!1}}if(w===`stopped`){_.abort(),y(w,g),g=void 0;return}w===`updated`&&y(w,g)},destroy:()=>{var e;_.abort(),g&&((e=r?.onExit)==null||e.call(r,g))}}}var PD=new N(`suggestion`);function FD({pluginKey:e=PD,editor:t,char:n=`@`,allowSpaces:r=!1,allowToIncludeChar:i=!1,allowedPrefixes:a=[` `],startOfLine:o=!1,decorationTag:s=`span`,decorationClass:c=`suggestion`,decorationContent:l=``,decorationEmptyClass:u=`is-empty`,command:d=()=>null,items:f=()=>[],minQueryLength:p=0,debounce:m=0,initialItems:h,placement:g=`bottom-start`,offset:_={},container:v,flip:y=!0,floatingUi:b,dismissOnOutsideClick:x=!0,render:S=()=>({}),allow:C=()=>!0,findSuggestionMatch:w=xD,shouldShow:ee,shouldResetDismissed:te}){let ne=S?.(),re=r&&!i,ie=(n,r)=>wD(t,n,r,e);function ae(e){return TD({...e,editor:t,shouldResetDismissed:te,effectiveAllowSpaces:re})}let oe=t=>ED({view:t,pluginKeyRef:e});return new M({key:e,view:()=>ND({editor:t,pluginKey:e,items:f,renderer:ne,minQueryLength:p,debounce:m,initialItems:h,placement:g,offset:_,container:v,flip:y,floatingUi:b,dismissOnOutsideClick:x,command:d,clientRectFor:ie,dispatchExit:oe}),state:OD({editor:t,char:n,effectiveAllowSpaces:re,allowToIncludeChar:i,allowedPrefixes:a,startOfLine:o,findSuggestionMatch:w,allow:C,shouldShow:ee,shouldKeepDismissed:ae,pluginKey:e}),props:DD({pluginKey:e,decorationTag:s,decorationClass:c,decorationContent:l,decorationEmptyClass:u,renderer:ne,dispatchExit:oe})})}var ID=FD;function LD(e){return V.create({name:`slashMenu`,addProseMirrorPlugins(){return[ID({editor:this.editor,char:`/`,allowedPrefixes:[` `,`
|
|
189
|
+
`],items:({query:t})=>e.filter(t),command:({editor:e,range:t,props:n})=>n.run({editor:e,range:t}),render:()=>{let t=t=>e.open({rect:t.clientRect?.()??null,items:t.items,pick:t.command});return{onStart:t,onUpdate:t,onKeyDown:({event:t})=>e.keyDown(t),onExit:()=>e.close()}}})]}})}function RD(e){return[Xy.configure({link:{openOnClick:!1},underline:!1}),Mv,jv.configure({nested:!0}),sS,Gx,Wx,Ux,lS.configure({inline:!1}),bD.configure({transformPastedText:!0,linkify:!1}),...e.placeholder?[Hy.configure({placeholder:e.placeholder})]:[],...e.slash?[LD(e.slash)]:[]]}var zD=(e,t)=>{let n=e.chain().focus();return t?n.deleteRange(t):n},BD=(e,t)=>({key:`h${e}`,icon:t,run:(t,n)=>zD(t,n).toggleHeading({level:e}).run(),active:t=>t.isActive(`heading`,{level:e})}),VD=[BD(1,se),BD(2,ce),BD(3,le),{key:`bulletList`,icon:f,run:(e,t)=>zD(e,t).toggleBulletList().run(),active:e=>e.isActive(`bulletList`)},{key:`orderedList`,icon:fe,run:(e,t)=>zD(e,t).toggleOrderedList().run(),active:e=>e.isActive(`orderedList`)},{key:`taskList`,icon:h,run:(e,t)=>zD(e,t).toggleTaskList().run(),active:e=>e.isActive(`taskList`)},{key:`blockquote`,icon:pe,run:(e,t)=>zD(e,t).toggleBlockquote().run(),active:e=>e.isActive(`blockquote`)},{key:`codeBlock`,icon:ie,run:(e,t)=>zD(e,t).toggleCodeBlock().run(),active:e=>e.isActive(`codeBlock`)},{key:`horizontalRule`,icon:_,run:(e,t)=>zD(e,t).setHorizontalRule().run()},{key:`table`,icon:ge,run:(e,t)=>zD(e,t).insertTable({rows:3,cols:3,withHeaderRow:!0}).run(),active:e=>e.isActive(`table`)}],Q=s(),$=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web-ui/src/markdown/toolbar.tsx`,HD=(0,T.forwardRef)(({icon:e,label:t,active:n,disabled:r,tone:i,onClick:a,...o},s)=>(0,Q.jsxDEV)(`button`,{ref:s,type:`button`,"aria-label":t,title:t,"aria-pressed":n??!1,disabled:r,onClick:a,...o,className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-muted transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent disabled:opacity-40 ${i===`danger`?`hover:bg-elevated hover:text-danger`:`hover:bg-elevated hover:text-text`} ${n?`bg-elevated text-accent`:``}`,children:(0,Q.jsxDEV)(e,{size:15},void 0,!1,{fileName:$,lineNumber:66,columnNumber:5},void 0)},void 0,!1,{fileName:$,lineNumber:53,columnNumber:3},void 0));HD.displayName=`ToolButton`;var UD=()=>(0,Q.jsxDEV)(`span`,{className:`mx-0.5 h-5 w-px shrink-0 bg-border`,"aria-hidden":!0},void 0,!1,{fileName:$,lineNumber:71,columnNumber:23},void 0),WD=[{key:`bold`,icon:re,run:e=>e.chain().focus().toggleBold().run(),active:e=>e.isActive(`bold`)},{key:`italic`,icon:de,run:e=>e.chain().focus().toggleItalic().run(),active:e=>e.isActive(`italic`)},{key:`strike`,icon:he,run:e=>e.chain().focus().toggleStrike().run(),active:e=>e.isActive(`strike`)},{key:`code`,icon:p,run:e=>e.chain().focus().toggleCode().run(),active:e=>e.isActive(`code`)}];function GD({editor:e,onDone:t}){let{t:n}=a(),[r,i]=(0,T.useState)(e.getAttributes(`link`).href??``),o=()=>{let n=e.chain().focus().extendMarkRange(`link`);r.trim()===``?n.unsetLink().run():n.setLink({href:r.trim()}).run(),t()};return(0,Q.jsxDEV)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Q.jsxDEV)(u,{autoFocus:!0,value:r,placeholder:`https://`,"aria-label":n(`form.mdLink`),onChange:e=>i(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),o()),e.key===`Escape`&&(e.preventDefault(),t())},className:`h-7 flex-1 text-sm`},void 0,!1,{fileName:$,lineNumber:103,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:c,label:n(`actions.save`),onClick:o},void 0,!1,{fileName:$,lineNumber:121,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:ve,label:n(`form.md.unlink`),onClick:()=>{e.chain().focus().extendMarkRange(`link`).unsetLink().run(),t()}},void 0,!1,{fileName:$,lineNumber:122,columnNumber:7},this)]},void 0,!0,{fileName:$,lineNumber:102,columnNumber:5},this)}function KD({editor:e,onDone:t}){let{t:n}=a(),[r,i]=(0,T.useState)(``),[o,s]=(0,T.useState)(``),l=()=>{let n=r.trim();n&&e.chain().focus().setImage({src:n,alt:o.trim()||void 0}).run(),t()};return(0,Q.jsxDEV)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,Q.jsxDEV)(u,{autoFocus:!0,value:r,placeholder:`https://… /uploads/…`,"aria-label":n(`form.md.imageUrl`),onChange:e=>i(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),l()),e.key===`Escape`&&(e.preventDefault(),t())},className:`h-7 min-w-0 flex-1 text-sm`},void 0,!1,{fileName:$,lineNumber:156,columnNumber:7},this),(0,Q.jsxDEV)(u,{value:o,placeholder:n(`form.md.imageAlt`),"aria-label":n(`form.md.imageAlt`),onChange:e=>s(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),l()),e.key===`Escape`&&(e.preventDefault(),t())},className:`h-7 w-32 text-sm`},void 0,!1,{fileName:$,lineNumber:174,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:c,label:n(`actions.save`),disabled:!r.trim(),onClick:l},void 0,!1,{fileName:$,lineNumber:191,columnNumber:7},this)]},void 0,!0,{fileName:$,lineNumber:155,columnNumber:5},this)}function qD({editor:e}){let{t}=a();return(0,Q.jsxDEV)(Q.Fragment,{children:[(0,Q.jsxDEV)(UD,{},void 0,!1,{fileName:$,lineNumber:205,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:ne,label:t(`form.md.addRow`),onClick:()=>e.chain().focus().addRowAfter().run()},void 0,!1,{fileName:$,lineNumber:206,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:te,label:t(`form.md.addColumn`),onClick:()=>e.chain().focus().addColumnAfter().run()},void 0,!1,{fileName:$,lineNumber:211,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:g,tone:`danger`,label:t(`form.md.deleteRow`),onClick:()=>e.chain().focus().deleteRow().run()},void 0,!1,{fileName:$,lineNumber:216,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:ae,tone:`danger`,label:t(`form.md.deleteColumn`),onClick:()=>e.chain().focus().deleteColumn().run()},void 0,!1,{fileName:$,lineNumber:222,columnNumber:7},this),(0,Q.jsxDEV)(HD,{icon:oe,tone:`danger`,label:t(`form.md.deleteTable`),onClick:()=>e.chain().focus().deleteTable().run()},void 0,!1,{fileName:$,lineNumber:228,columnNumber:7},this)]},void 0,!0,{fileName:$,lineNumber:204,columnNumber:5},this)}function JD({icon:e,label:t,active:n,open:r,onOpenChange:i,children:a}){return(0,Q.jsxDEV)(v,{open:r,onOpenChange:i,children:[(0,Q.jsxDEV)(d,{asChild:!0,children:(0,Q.jsxDEV)(HD,{icon:e,label:t,active:n||r},void 0,!1,{fileName:$,lineNumber:258,columnNumber:9},this)},void 0,!1,{fileName:$,lineNumber:257,columnNumber:7},this),(0,Q.jsxDEV)(m,{align:`start`,className:`w-80 p-2`,children:a},void 0,!1,{fileName:$,lineNumber:260,columnNumber:7},this)]},void 0,!0,{fileName:$,lineNumber:256,columnNumber:5},this)}function YD({editor:e}){let{t}=a(),[n,r]=(0,T.useState)(null),i=vm({editor:e,selector:({editor:e})=>e&&!e.isDestroyed?{marks:WD.map(t=>t.active(e)),blocks:VD.map(t=>t.active?.(e)??!1),link:e.isActive(`link`),table:e.isActive(`table`),canUndo:e.can().undo(),canRedo:e.can().redo()}:{marks:WD.map(()=>!1),blocks:VD.map(()=>!1),link:!1,table:!1,canUndo:!1,canRedo:!1}}),o=e=>(0,Q.jsxDEV)(`div`,{className:`flex items-center gap-0.5`,children:e},void 0,!1,{fileName:$,lineNumber:301,columnNumber:42},this);return(0,Q.jsxDEV)(`div`,{className:`flex flex-col gap-1.5`,children:(0,Q.jsxDEV)(`div`,{className:`-mx-0.5 flex items-center gap-0.5 overflow-x-auto overscroll-x-contain border-b border-border px-0.5 pb-1.5 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:[o((0,Q.jsxDEV)(Q.Fragment,{children:[(0,Q.jsxDEV)(HD,{icon:_e,label:t(`form.md.undo`),disabled:!i.canUndo,onClick:()=>e.chain().focus().undo().run()},void 0,!1,{fileName:$,lineNumber:310,columnNumber:13},this),(0,Q.jsxDEV)(HD,{icon:me,label:t(`form.md.redo`),disabled:!i.canRedo,onClick:()=>e.chain().focus().redo().run()},void 0,!1,{fileName:$,lineNumber:316,columnNumber:13},this)]},void 0,!0,{fileName:$,lineNumber:309,columnNumber:11},this)),(0,Q.jsxDEV)(UD,{},void 0,!1,{fileName:$,lineNumber:324,columnNumber:9},this),o(WD.map((n,r)=>(0,Q.jsxDEV)(HD,{icon:n.icon,label:t(`form.md.${n.key}`),active:i.marks[r],onClick:()=>n.run(e)},n.key,!1,{fileName:$,lineNumber:327,columnNumber:13},this))),(0,Q.jsxDEV)(UD,{},void 0,!1,{fileName:$,lineNumber:336,columnNumber:9},this),o(VD.map((n,r)=>(0,Q.jsxDEV)(HD,{icon:n.icon,label:t(`form.md.${n.key}`),active:i.blocks[r],onClick:()=>n.run(e)},n.key,!1,{fileName:$,lineNumber:339,columnNumber:13},this))),(0,Q.jsxDEV)(UD,{},void 0,!1,{fileName:$,lineNumber:348,columnNumber:9},this),o((0,Q.jsxDEV)(Q.Fragment,{children:[(0,Q.jsxDEV)(JD,{icon:y,label:t(`form.md.link`),active:i.link,open:n===`link`,onOpenChange:e=>r(e?`link`:null),children:(0,Q.jsxDEV)(GD,{editor:e,onDone:()=>r(null)},void 0,!1,{fileName:$,lineNumber:358,columnNumber:15},this)},void 0,!1,{fileName:$,lineNumber:351,columnNumber:13},this),(0,Q.jsxDEV)(JD,{icon:ue,label:t(`form.md.image`),open:n===`image`,onOpenChange:e=>r(e?`image`:null),children:(0,Q.jsxDEV)(KD,{editor:e,onDone:()=>r(null)},void 0,!1,{fileName:$,lineNumber:366,columnNumber:15},this)},void 0,!1,{fileName:$,lineNumber:360,columnNumber:13},this)]},void 0,!0,{fileName:$,lineNumber:350,columnNumber:11},this)),i.table&&(0,Q.jsxDEV)(qD,{editor:e},void 0,!1,{fileName:$,lineNumber:370,columnNumber:25},this)]},void 0,!0,{fileName:$,lineNumber:307,columnNumber:7},this)},void 0,!1,{fileName:$,lineNumber:304,columnNumber:5},this)}var XD=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web-ui/src/MarkdownEditor.tsx`,ZD=e=>e&&!e.isDestroyed?e.storage.markdown:void 0;function QD({value:e,onChange:t,placeholder:n,readonly:r}){let{t:i}=a(),[o,s]=(0,T.useState)(null),c=(0,T.useRef)(null);c.current=o;let l=e=>i(`form.md.${e}`),u=(0,T.useRef)(l);u.current=l;let d=(0,T.useMemo)(()=>({filter:e=>{let t=e.trim().toLowerCase(),n=VD.map(e=>({key:e.key,run:({editor:t,range:n})=>e.run(t,n)}));return t?n.filter(e=>e.key.toLowerCase().includes(t)||u.current(e.key).toLowerCase().includes(t)):n},open:({rect:e,items:t,pick:n})=>s(r=>({rect:e,items:t,pick:n,index:r&&r.index<t.length?r.index:0})),close:()=>s(null),keyDown:e=>{let t=c.current;if(!t)return!1;let n=t.items.length-1;if(e.key===`ArrowDown`)return s({...t,index:t.index>=n?0:t.index+1}),!0;if(e.key===`ArrowUp`)return s({...t,index:t.index<=0?n:t.index-1}),!0;if(e.key===`Enter`){let e=t.items[t.index];return e?(t.pick(e),!0):!1}return e.key===`Escape`?(s(null),!0):!1}}),[]),f=Cm({editable:!r,extensions:RD({placeholder:r?void 0:n,slash:d}),content:e,autofocus:!1,onUpdate:({editor:e})=>{let n=ZD(e);n&&t?.(n.getMarkdown())},editorProps:{attributes:{class:`md-static outline-none`}}});return(0,T.useEffect)(()=>{let t=ZD(f);!f||!t||e!==t.getMarkdown()&&f.commands.setContent(e,{emitUpdate:!1})},[f,e]),!f||f.isDestroyed?null:(0,Q.jsxDEV)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-1.5 md:gap-2`,children:[!r&&(0,Q.jsxDEV)(YD,{editor:f},void 0,!1,{fileName:XD,lineNumber:138,columnNumber:21},this),(0,Q.jsxDEV)(hm,{editor:f,className:`min-h-48 w-full min-w-0 max-w-full flex-1 overflow-y-auto rounded-lg border border-border bg-bg px-2 py-1.5 transition-colors focus-within:border-accent md:min-h-64 md:rounded-xl md:px-4 md:py-3`},void 0,!1,{fileName:XD,lineNumber:141,columnNumber:7},this),o&&o.items.length>0&&(0,Q.jsxDEV)(`div`,{role:`listbox`,className:`fixed z-50 max-h-64 w-56 overflow-y-auto rounded-lg border border-border bg-surface p-1 shadow-lg`,style:{top:(o.rect?.bottom??0)+4,left:o.rect?.left??0},children:o.items.map((e,t)=>{let n=VD.find(t=>t.key===e.key)?.icon;return(0,Q.jsxDEV)(`button`,{type:`button`,role:`option`,"aria-selected":t===o.index,onMouseEnter:()=>s({...o,index:t}),onClick:()=>o.pick(e),className:`flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm ${t===o.index?`bg-elevated text-text`:`text-muted`}`,children:[n&&(0,Q.jsxDEV)(n,{size:15,className:`shrink-0`},void 0,!1,{fileName:XD,lineNumber:165,columnNumber:26},this),l(e.key)]},e.key,!0,{fileName:XD,lineNumber:154,columnNumber:15},this)})},void 0,!1,{fileName:XD,lineNumber:146,columnNumber:9},this)]},void 0,!0,{fileName:XD,lineNumber:137,columnNumber:5},this)}export{QD as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{a as r,d as i,t as a,u as o}from"./react-vendor-CzSUaSLk.js";import{At as s,L as c,M as l,Mt as u,Nt as d,Wn as f,dr as p,g as m,pr as h,un as g,vr as _}from"./src-Cp4yFztL.js";import{A as v,i as y,p as b,u as x}from"./fields-GPyF03tK.js";import{A as S,c as C,k as w,l as T,n as E,t as D}from"./shelf-CpE68_8d.js";import{t as O}from"./arrow-left-DDsxjRCq.js";import{l as k}from"./phone-input-CZF7hU3E.js";import{a as A,s as j,t as M}from"./list-cache-B4i_A9fj.js";import{F as N,s as P}from"./api-DD1tY5Dq.js";var F=e(t(),1),I=a(),L=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/fields-form.tsx`;function R({shelf:e,record:t,onSubmit:r,onCancel:i,submitLabel:a,busy:o,children:l,hiddenFields:d,onValuesChange:f,errorSink:p,extraValidate:h}){let{t:g}=n(),_=u(g),y=!!t,b=(0,F.useMemo)(()=>T(e.fields),[e]),{values:x,errors:S,setErrors:C,setTouched:w,bridge:O}=m({fm:b,mode:y?`edit`:`create`,recordCtx:{library:e.library,shelf:e.shelf,recordId:t?String(t.id):null},initial:()=>B(e,t),hiddenFields:d}),[A,j]=(0,F.useState)(),[M,N]=(0,F.useState)(!1);(0,F.useEffect)(()=>{f?.(x)},[x,f]),(0,F.useEffect)(()=>{p?.({setErrors:C,setTouched:w})},[p,C,w]);async function P(t){t.preventDefault(),j(void 0);let n=Object.keys(b),i={};for(let e of n)e in x&&(i[e]=x[e]);let a=V(i),o=(y?E(e):D(e)).safeParse(a),s={};if(!o.success)for(let e of o.error.issues){let t=String(e.path[0]??``);if(!n.includes(t)||s[t])continue;let{code:r,params:i}=v(e.message);s[t]=_(r,i)}if(Object.assign(s,h?.(x)??{}),Object.keys(s).length){C(s),w(new Set(Object.keys(s)));return}N(!0);let c=await r(a);N(!1),c&&j(c)}return(0,I.jsxDEV)(`form`,{onSubmit:P,noValidate:!0,className:`flex flex-col gap-5 min-w-0`,children:[(0,I.jsxDEV)(s.Provider,{value:e=>S[e.join(`.`)],children:(0,I.jsxDEV)(c,{items:e.fields,ctx:{bridge:O}},void 0,!1,{fileName:L,lineNumber:117,columnNumber:9},this)},void 0,!1,{fileName:L,lineNumber:116,columnNumber:7},this),l,A&&(0,I.jsxDEV)(`p`,{className:`text-sm text-danger`,children:A},void 0,!1,{fileName:L,lineNumber:120,columnNumber:21},this),(0,I.jsxDEV)(`div`,{className:`flex gap-3 pt-2 border-t border-border`,children:[(0,I.jsxDEV)(k,{type:`submit`,disabled:o||M,size:`lg`,className:`flex-1`,children:a??g(`actions.save`)},void 0,!1,{fileName:L,lineNumber:122,columnNumber:9},this),i&&(0,I.jsxDEV)(k,{type:`button`,variant:`secondary`,size:`lg`,onClick:i,className:`flex-1`,children:g(`actions.cancel`)},void 0,!1,{fileName:L,lineNumber:126,columnNumber:11},this)]},void 0,!0,{fileName:L,lineNumber:121,columnNumber:7},this)]},void 0,!0,{fileName:L,lineNumber:115,columnNumber:5},this)}var z=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/form.tsx`;function B(e,t){let n={};n.name=t?.name==null?``:String(t.name);for(let[r,i]of C(e.fields))if(t){let e=t[r];e==null?n[r]=i.prim!==`checkbox`&&``:i.prim===`checkbox`?n[r]=e===1||e===!0||e===`1`:x(i)?n[r]=e===``?``:g(e,i.hints.multiple===!0?[]:{}):n[r]=e}else n[r]=i.prim===`checkbox`?!1:x(i)&&i.hints.multiple===!0?[]:``;for(let r of e.fields){if(!y(r)||!b(r))continue;let e=r.key;t?n[e]=t[e]??(r.multiple?[]:{}):n[e]=r.multiple?[]:{}}return n}function V(e){let t={};for(let[n,r]of Object.entries(e))r===``||r===void 0||Array.isArray(r)&&r.length===0||typeof r==`object`&&r&&!Array.isArray(r)&&Object.keys(r).length===0||(t[n]=r);return t}function H({ext:e,values:t,onChange:r,recordId:i,fieldLabel:a}){let{t:o}=n(),s=(0,F.useMemo)(()=>T(e.fields),[e]),u={renderField:(n,a)=>S(a.hidden,t)?null:(0,I.jsxDEV)(l,{mode:`create`,field:a,label:a.label?o(a.label):void 0,required:S(a.required,t),value:t[n]??``,recordCtx:{library:``,shelf:e.id,recordId:i},onChange:t=>r(e.id,n,t)},void 0,!1,{fileName:z,lineNumber:102,columnNumber:9},this),values:t,setValue:(t,n)=>r(e.id,t,n),isHidden:e=>S(s[e]?.hidden,t),mode:`create`};return(0,I.jsxDEV)(`fieldset`,{className:`border border-border rounded-xl p-4 pt-2 flex flex-col min-w-0 gap-4`,children:[(0,I.jsxDEV)(`legend`,{className:`px-2 inline-flex items-center gap-1.5 text-sm font-semibold text-accent`,children:[(0,I.jsxDEV)(_,{name:e.icon,size:14,className:`shrink-0`},void 0,!1,{fileName:z,lineNumber:125,columnNumber:9},this),` `,o(e.label),(0,I.jsxDEV)(p,{ext:e,fieldLabel:a},void 0,!1,{fileName:z,lineNumber:126,columnNumber:9},this)]},void 0,!0,{fileName:z,lineNumber:124,columnNumber:7},this),(0,I.jsxDEV)(c,{items:e.fields,ctx:u},void 0,!1,{fileName:z,lineNumber:128,columnNumber:7},this)]},void 0,!0,{fileName:z,lineNumber:123,columnNumber:5},this)}function U(e,t,n){let[r]=(0,F.useState)(()=>{let n={};for(let r of e){let e=t?._extends?.[r.id];n[r.id]={};for(let[t,i]of C(r.fields)){let a=e?.[t];a==null?n[r.id][t]=i.prim===`checkbox`?!1:x(i)&&i.hints.multiple===!0?[]:``:i.prim===`checkbox`?n[r.id][t]=a===1||a===!0||a===`1`:x(i)?n[r.id][t]=a===``?``:g(a,i.hints.multiple===!0?[]:{}):n[r.id][t]=a}}return n}),[i,a]=(0,F.useState)(r),o=(0,F.useMemo)(()=>e.filter(e=>w(e.showWhen,n)),[e,n]);function s(e,t,n){a(r=>({...r,[e]:{...r[e],[t]:n}}))}function c(e){let t={};for(let n of o){let a=i[n.id]??{};if(e){let e=r[n.id]??{},i=Object.fromEntries(Object.entries(a).filter(([t,n])=>n!==e[t]));Object.keys(i).length>0&&(t[`_extend_${n.id}`]=i)}else{let e=Object.fromEntries(Object.entries(a).filter(([,e])=>e!==``&&e!==!1));t[`_extend_${n.id}`]=e}}return t}return{extValues:i,setExtValue:s,activeExts:o,buildExtendPatch:c}}function W({shelf:e,record:t,defaults:r,hiddenFields:i,onSuccess:a,onCancel:o}){let{t:s}=n(),c=u(s),l=!!t,p=(0,F.useMemo)(()=>T(e.fields),[e]),[m,h]=(0,F.useState)([]),[g,_]=(0,F.useState)(!1),[v,y]=(0,F.useState)(()=>B(e,t)),b=(0,F.useRef)(null),{extValues:x,setExtValue:S,activeExts:C,buildExtendPatch:w}=U((0,F.useMemo)(()=>A().filter(t=>t.attachTo.some(t=>t.library===e.library&&(!t.shelf||t.shelf===e.shelf))),[e]),t,v);function E(e){return l||String(e.name??``).trim()?{}:{name:s(`validation.required`)}}async function D(n){h([]),_(!0);let r={...n,...w()},i=String(t?.id??``),o=l?await N(e.library,e.shelf,i,r):await P(e.library,e.shelf,r);if(_(!1),o.ok){a(o.row);return}let s=o.issues??[],u={},f=[];for(let e of s)e.field&&p[e.field]?u[e.field]=c(e.code,e.params):f.push(e);let m=d(s,c);(Object.keys(u).length||Object.keys(m).length)&&(b.current?.setErrors(e=>({...e,...u,...m})),b.current?.setTouched(e=>new Set([...e,...Object.keys(u)]))),h(f)}return(0,I.jsxDEV)(`div`,{children:(0,I.jsxDEV)(R,{shelf:e,record:t,onSubmit:D,onCancel:o,submitLabel:s(g?`common.saving`:l?`actions.save`:`actions.create`),busy:g,hiddenFields:i,onValuesChange:y,errorSink:e=>{b.current=e},extraValidate:E,children:[C.map(e=>(0,I.jsxDEV)(H,{ext:e,values:x[e.id]??{},onChange:S,recordId:t?String(t.id):null,fieldLabel:e=>p[e]?.label?s(p[e].label):e},e.id,!1,{fileName:z,lineNumber:329,columnNumber:11},this)),m.length>0&&(0,I.jsxDEV)(f,{tone:`danger`,children:[(0,I.jsxDEV)(`p`,{className:`mb-2 font-semibold`,children:s(`form.serverRejected`)},void 0,!1,{fileName:z,lineNumber:341,columnNumber:13},this),(0,I.jsxDEV)(`ul`,{className:`space-y-1 text-text`,children:m.map((e,t)=>{let n=p[e.field],r=n?s(n.label):e.field,i=e.code===`pattern`&&e.params?.messageKey?s(String(e.params.messageKey)):s(`validation.${e.code}`,e.params);return(0,I.jsxDEV)(`li`,{className:`flex gap-1.5`,children:[r&&(0,I.jsxDEV)(`span`,{className:`text-muted font-medium`,children:[r,`:`]},void 0,!0,{fileName:z,lineNumber:352,columnNumber:31},this),i]},t,!0,{fileName:z,lineNumber:351,columnNumber:19},this)})},void 0,!1,{fileName:z,lineNumber:342,columnNumber:13},this)]},void 0,!0,{fileName:z,lineNumber:340,columnNumber:11},this)]},`${e.library}/${e.shelf}/${t?t.id:`new`}`,!0,{fileName:z,lineNumber:312,columnNumber:7},this)},void 0,!1,{fileName:z,lineNumber:304,columnNumber:5},this)}var G=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/record/NewRecordView.tsx`;function K(){let{t:e}=n(),{library:t,shelf:a}=i(),s=o(),c=j().flatMap(e=>e.shelves).find(e=>e.library===t&&e.shelf===a);return!c||c.standalone===!1?(0,I.jsxDEV)(`div`,{className:`p-6 text-muted`,children:e(`common.notFound`)},void 0,!1,{fileName:G,lineNumber:19,columnNumber:44},this):c.single?(0,I.jsxDEV)(r,{to:`/${t}/${a}`,replace:!0},void 0,!1,{fileName:G,lineNumber:24,columnNumber:24},this):(0,I.jsxDEV)(`div`,{className:`flex flex-col`,children:[(0,I.jsxDEV)(h,{children:(0,I.jsxDEV)(k,{variant:`ghost`,size:`sm`,className:`px-2`,onClick:()=>s(`/${t}/${a}`),children:[(0,I.jsxDEV)(O,{size:18},void 0,!1,{fileName:G,lineNumber:30,columnNumber:11},this),(0,I.jsxDEV)(`span`,{className:`text-sm`,children:e(c.label)},void 0,!1,{fileName:G,lineNumber:31,columnNumber:11},this)]},void 0,!0,{fileName:G,lineNumber:29,columnNumber:9},this)},void 0,!1,{fileName:G,lineNumber:28,columnNumber:7},this),(0,I.jsxDEV)(`div`,{className:`flex-1 min-w-0`,children:(0,I.jsxDEV)(`div`,{className:`max-w-2xl mx-auto px-6 py-6`,children:(0,I.jsxDEV)(W,{shelf:c,onSuccess:e=>{M(`${c.library}/${c.shelf}`),e?.id?s(`/${t}/${a}/${e.id}`):s(`/${t}/${a}`)},onCancel:()=>s(`/${t}/${a}`)},void 0,!1,{fileName:G,lineNumber:36,columnNumber:11},this)},void 0,!1,{fileName:G,lineNumber:35,columnNumber:9},this)},void 0,!1,{fileName:G,lineNumber:34,columnNumber:7},this)]},void 0,!0,{fileName:G,lineNumber:27,columnNumber:5},this)}export{K as NewRecordView};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{d as r,t as i}from"./react-vendor-CzSUaSLk.js";import{
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{d as r,t as i}from"./react-vendor-CzSUaSLk.js";import{_r as a}from"./src-Cp4yFztL.js";import{t as o}from"./SettingsForm-C_K9RpFr.js";var s=e(t(),1),c=i(),l=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/PluginSettingsPage.tsx`;function u(){let{groupId:e}=r(),{t}=n(),[i,u]=(0,s.useState)(null),[d,f]=(0,s.useState)(!0);if((0,s.useEffect)(()=>{let t=!1;return f(!0),fetch(`/api/settings`).then(e=>e.ok?e.json():[]).then(n=>{t||(u(n.find(t=>t.id===e)??null),f(!1))}).catch(()=>{t||(u(null),f(!1))}),()=>{t=!0}},[e]),d)return(0,c.jsxDEV)(a,{children:(0,c.jsxDEV)(`p`,{className:`text-muted`,children:t(`plugins.loading`)},void 0,!1,{fileName:l,lineNumber:44,columnNumber:9},this)},void 0,!1,{fileName:l,lineNumber:43,columnNumber:7},this);if(!i||i.fields.length===0)return(0,c.jsxDEV)(a,{children:(0,c.jsxDEV)(`p`,{className:`text-muted`,children:t(`common.notFound`)},void 0,!1,{fileName:l,lineNumber:52,columnNumber:9},this)},void 0,!1,{fileName:l,lineNumber:51,columnNumber:7},this);async function p(){let t=await fetch(`/api/settings/${e}`);return t.ok?t.json():{}}async function m(t){let n=await fetch(`/api/settings/${e}`,{method:`PUT`,headers:{"content-type":`application/json`},body:JSON.stringify(t)});return n.ok?{ok:!0,row:(await n.json()).row??{}}:n.status===422?{ok:!1,status:422,issues:(await n.json()).issues}:{ok:!1,status:n.status}}return(0,c.jsxDEV)(o,{fields:i.fields,recordCtx:{library:``,shelf:e??``,recordId:`settings`},load:p,save:m,title:t(i.label,{defaultValue:e??``}),backTo:`/settings`,backLabel:t(`settings.title`)},void 0,!1,{fileName:l,lineNumber:80,columnNumber:5},this)}export{u as PluginSettingsPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./react-vendor-CzSUaSLk.js";var t=e(),n=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/plugin-devices/src/templates/ScanSummary.tsx`,r=({title:e,body:r,children:i})=>(0,t.jsxDEV)(`div`,{className:`space-y-1 border-t pt-2`,children:[(0,t.jsxDEV)(`p`,{className:`text-sm font-medium`,children:e},void 0,!1,{fileName:n,lineNumber:23,columnNumber:5},void 0),(0,t.jsxDEV)(`p`,{className:`text-xs text-muted`,children:r},void 0,!1,{fileName:n,lineNumber:24,columnNumber:5},void 0),(0,t.jsxDEV)(`ul`,{className:`space-y-1`,children:i},void 0,!1,{fileName:n,lineNumber:25,columnNumber:5},void 0)]},void 0,!0,{fileName:n,lineNumber:22,columnNumber:3},void 0);function i({data:e,t:i}){let a=e.failed??[],o=e.noMac??[],s=[[`devices.scan.activeLabel`,e.active],[`devices.scan.createdLabel`,e.created],[`devices.scan.macUpdatedLabel`,e.macChanged],[`devices.scan.skippedLabel`,e.skipped],...a.length?[[`devices.scan.failedLabel`,a.length]]:[]];return(0,t.jsxDEV)(`div`,{className:`space-y-2`,children:[(0,t.jsxDEV)(`p`,{className:`font-medium`,children:i(a.length?`devices.scan.summaryPartialTitle`:`devices.scan.summaryTitle`)},void 0,!1,{fileName:n,lineNumber:49,columnNumber:7},this),(0,t.jsxDEV)(`dl`,{className:`grid grid-cols-2 gap-x-4 gap-y-1 text-sm`,children:s.map(([e,r])=>(0,t.jsxDEV)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,t.jsxDEV)(`dt`,{className:`text-muted`,children:i(e)},void 0,!1,{fileName:n,lineNumber:55,columnNumber:13},this),(0,t.jsxDEV)(`dd`,{className:`font-mono tabular-nums`,children:r},void 0,!1,{fileName:n,lineNumber:56,columnNumber:13},this)]},e,!0,{fileName:n,lineNumber:54,columnNumber:11},this))},void 0,!1,{fileName:n,lineNumber:52,columnNumber:7},this),a.length>0&&(0,t.jsxDEV)(r,{title:i(`devices.scan.failedTitle`,{count:a.length}),body:i(`devices.scan.failedBody`),children:a.map(e=>(0,t.jsxDEV)(`li`,{className:`flex flex-wrap items-center gap-1.5 text-sm`,children:[(0,t.jsxDEV)(`span`,{className:`font-medium`,children:e.name||e.subject},void 0,!1,{fileName:n,lineNumber:64,columnNumber:15},this),(0,t.jsxDEV)(`code`,{className:`text-xs text-muted`,children:e.subject},void 0,!1,{fileName:n,lineNumber:65,columnNumber:15},this),(e.issues?.length?e.issues.map(e=>`${e.path}: ${e.code}`):[e.message]).map(e=>(0,t.jsxDEV)(`code`,{className:`rounded bg-muted px-1.5 py-0.5 text-xs`,children:e},e,!1,{fileName:n,lineNumber:67,columnNumber:17},this))]},`${e.subject}-${e.kind}`,!0,{fileName:n,lineNumber:63,columnNumber:13},this))},void 0,!1,{fileName:n,lineNumber:61,columnNumber:9},this),o.length>0&&(0,t.jsxDEV)(r,{title:i(`devices.scan.noMacTitle`,{count:o.length}),body:i(`devices.scan.noMacBody`),children:o.map(e=>(0,t.jsxDEV)(`li`,{className:`flex items-center gap-2 text-sm`,children:[(0,t.jsxDEV)(`code`,{children:e.ip},void 0,!1,{fileName:n,lineNumber:79,columnNumber:15},this),e.hostname&&(0,t.jsxDEV)(`span`,{className:`rounded bg-muted px-1.5 py-0.5 text-xs`,children:e.hostname},void 0,!1,{fileName:n,lineNumber:80,columnNumber:30},this),(0,t.jsxDEV)(`button`,{type:`button`,className:`ml-auto text-xs underline opacity-70 hover:opacity-100`,onClick:()=>void navigator.clipboard?.writeText(e.ip),children:i(`devices.scan.copyIp`)},void 0,!1,{fileName:n,lineNumber:81,columnNumber:15},this)]},e.ip,!0,{fileName:n,lineNumber:78,columnNumber:13},this))},void 0,!1,{fileName:n,lineNumber:76,columnNumber:9},this)]},void 0,!0,{fileName:n,lineNumber:48,columnNumber:5},this)}export{i as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{r,t as i}from"./react-vendor-CzSUaSLk.js";import{L as a,Wn as o,_r as s,di as c,en as l,g as u,pr as d}from"./src-Cp4yFztL.js";import{c as f,l as p}from"./shelf-CpE68_8d.js";import{n as m}from"./input-tJjsdU1x.js";import{t as h}from"./arrow-left-DDsxjRCq.js";import{l as g}from"./phone-input-CZF7hU3E.js";var _=e(t(),1),v=i(),y=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/SettingsForm.tsx`;function b(e){let{t}=n(),i=(0,_.useMemo)(()=>f(e.fields),[e.fields]),b=(0,_.useMemo)(()=>p(e.fields),[e.fields]),[x,S]=(0,_.useState)(!1),[C,w]=(0,_.useState)(null),{values:T,setValues:E,errors:D,setErrors:O,bridge:k}=u({fm:b,mode:`edit`,recordCtx:e.recordCtx,initial:{}});function A(e){let t={};for(let[n,r]of i)t[n]=e[n]??r.default??(r.prim!==`checkbox`&&``);return t}(0,_.useEffect)(()=>{E({}),O({});let n=!0;return e.load().then(e=>n&&E(A(e))).catch(()=>n&&w(t(`common.loadError`,{defaultValue:`Помилка завантаження`}))),()=>{n=!1}},[`${e.recordCtx.library}/${e.recordCtx.shelf}/${e.recordCtx.recordId}`]);async function j(){S(!0),O({});let n=c.loading(t(`save.saving`)),r=await e.save(T);if(S(!1),r.ok){E(A(r.row)),c.success(t(`save.done`),{id:n});return}if(r.status===422&&r.issues){let e={};for(let n of r.issues)n.field&&(e[n.field]=t(`validation.${n.code}`,n.params));O(e)}c.error(t(`save.failed`),{id:n})}return(0,v.jsxDEV)(`div`,{className:`flex flex-col h-full`,children:[(0,v.jsxDEV)(d,{actions:(0,v.jsxDEV)(g,{onClick:j,disabled:x,children:[(0,v.jsxDEV)(m,{size:16},void 0,!1,{fileName:y,lineNumber:101,columnNumber:13},this),(0,v.jsxDEV)(`span`,{className:`hidden sm:inline`,children:t(`actions.save`)},void 0,!1,{fileName:y,lineNumber:102,columnNumber:13},this)]},void 0,!0,{fileName:y,lineNumber:100,columnNumber:11},this),children:(0,v.jsxDEV)(g,{variant:`ghost`,size:`sm`,className:`px-2`,asChild:!0,children:(0,v.jsxDEV)(r,{to:e.backTo,"aria-label":e.backLabel,children:[(0,v.jsxDEV)(h,{size:18},void 0,!1,{fileName:y,lineNumber:108,columnNumber:13},this),(0,v.jsxDEV)(`span`,{className:`text-sm`,children:e.backLabel},void 0,!1,{fileName:y,lineNumber:109,columnNumber:13},this)]},void 0,!0,{fileName:y,lineNumber:107,columnNumber:11},this)},void 0,!1,{fileName:y,lineNumber:106,columnNumber:9},this)},void 0,!1,{fileName:y,lineNumber:98,columnNumber:7},this),(0,v.jsxDEV)(s,{children:[(0,v.jsxDEV)(`h1`,{className:`mb-6 ${l}`,children:e.title},void 0,!1,{fileName:y,lineNumber:115,columnNumber:9},this),C&&(0,v.jsxDEV)(o,{tone:`danger`,className:`mb-5`,children:C},void 0,!1,{fileName:y,lineNumber:118,columnNumber:11},this),(0,v.jsxDEV)(`div`,{className:`flex flex-col gap-5`,children:(0,v.jsxDEV)(a,{items:e.fields,ctx:{bridge:k}},void 0,!1,{fileName:y,lineNumber:124,columnNumber:11},this)},void 0,!1,{fileName:y,lineNumber:123,columnNumber:9},this),e.footer]},void 0,!0,{fileName:y,lineNumber:114,columnNumber:7},this)]},void 0,!0,{fileName:y,lineNumber:97,columnNumber:5},this)}export{b as t};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{r,t as i}from"./react-vendor-CzSUaSLk.js";import{On as a,Qn as o,Wn as s,Wt as c,_r as l,cr as u,en as d,or as f,vr as p}from"./src-Cp4yFztL.js";import{t as m}from"./ThemeSwitcher-BPuCvU1U.js";import{l as h}from"./phone-input-CZF7hU3E.js";import{A as g,I as _,N as ee,P as v,m as y,v as b}from"./api-DD1tY5Dq.js";import{n as x}from"./auth-context-BCos5wiL.js";import{t as S}from"./version-CtfLXkhy.js";var C=e(t(),1),w=i(),T=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/SettingsPage.tsx`,E=null,D=null;function O(){E=null}function te(e=!1){if(!e&&E)return Promise.resolve(E);if(!e&&D)return D;let t=Promise.all([b(e?{refresh:!0}:void 0),y(e?{refresh:!0}:void 0)]).then(([e,t])=>{let n={plugins:e,runtime:t,checkedAt:Date.now()};return E=n,n});return e||(D=t,t.then(()=>{D===t&&(D=null)},()=>{D===t&&(D=null)})),t}async function k(){let e=Date.now();for(;Date.now()-e<6e4;){await new Promise(e=>setTimeout(e,1e3));try{if((await fetch(`/health`)).ok)return!0}catch{}}return!1}function A(){let{t:e}=n(),{role:t}=x(),i=t===`admin`,[y,b]=(0,C.useState)(()=>E?.plugins??[]),[D,A]=(0,C.useState)(()=>E===null),[M,N]=(0,C.useState)(()=>E?.checkedAt??null),[P,F]=(0,C.useState)(null),[I,L]=(0,C.useState)(!1),R=e=>P===e||P===`*`,[z,B]=(0,C.useState)(()=>E?.runtime??null),V=y.filter(e=>e.latestVersion&&S(e.latestVersion,e.installedVersion)),H=!!(z?.latestVersion&&z.installedVersion&&S(z.latestVersion,z.installedVersion)),U=V.length+ +!!H,[W,G]=(0,C.useState)(null),[K,q]=(0,C.useState)(!1),J=t=>e(`${t}.plugin.label`,{defaultValue:t}),Y=t=>e(`${t}.plugin.description`,{defaultValue:``}),X=t=>e(`${t}.library.label`,{defaultValue:t}),Z=(t,n)=>e(`${t}.${n}.label`,{defaultValue:n}),Q={has_dependents:t=>e(`plugins.errors.has_dependents`,{list:t.dependents.join(`, `)}),missing_deps:t=>e(`plugins.errors.missing_deps`,{list:t.deps.join(`, `)}),unknown_plugin:()=>e(`plugins.errors.unknown_plugin`)},$=(e=!1)=>te(e).then(({plugins:e,runtime:t,checkedAt:n})=>{b(e),B(t),N(n),A(!1)});(0,C.useEffect)(()=>{$()},[]);async function ne(){L(!0),G(null);try{await $(!0)}catch{G(e(`plugins.updateCheckError`))}finally{L(!1)}}async function re(t){if(!await o({title:e(`plugins.purgeTitle`),description:e(`plugins.confirmPurge`,{id:t.id}),confirmLabel:e(`plugins.purgeButton`),variant:`destructive`}))return;F(t.id),G(null);let n=await fetch(`/api/plugins/${t.id}/data`,{method:`DELETE`}),r=await n.json().catch(()=>({}));if(F(null),!n.ok){G(Q[r.error]?.(r)??e(`plugins.genericError`,{code:r.error??n.status}));return}q(!0),await $()}async function ie(t){F(t.id),G(null);let n=await g(t.id,!t.enabled);if(!n.ok){F(null),G(Q[n.error]?.(n.data??{})??e(`plugins.genericError`,{code:n.error}));return}window.location.reload()}async function ae(t){if(!t.latestVersion||!await o({title:e(`plugins.updateTitle`,{from:t.installedVersion,to:t.latestVersion}),description:e(`plugins.confirmUpdate`,{id:t.id,from:t.installedVersion,to:t.latestVersion}),confirmLabel:e(`plugins.updateButton`)}))return;F(t.id),G(null);let n=await v(t.id);if(!n.ok){F(null),G(n.stderr?`${e(`plugins.updateError`)}: ${n.stderr}`:e(`plugins.genericError`,{code:n.error}));return}q(!0),await k()?(O(),window.location.reload()):(F(null),G(e(`plugins.restartTimeout`)))}async function oe(){if(U===0)return;let t=V.map(e=>`${J(e.id)}: v${e.installedVersion} → v${e.latestVersion}`);H&&t.push(`${e(`plugins.runtimeLabel`)}: v${z.installedVersion} → v${z.latestVersion}`);let n=t.join(`
|
|
2
|
+
`);if(!await o({title:e(`plugins.updateAllButton`,{count:U}),description:e(`plugins.confirmUpdateAll`,{count:U,list:n}),confirmLabel:e(`plugins.updateButton`)}))return;F(`*`),G(null);let r=await ee();if(!r.ok){F(null),G(r.stderr?`${e(`plugins.updateError`)}: ${r.stderr}`:e(`plugins.genericError`,{code:r.error}));return}q(!0),await k()?(O(),window.location.reload()):(F(null),G(e(`plugins.restartTimeout`)))}let se=H;async function ce(){let t=[];if(H&&t.push(`${e(`plugins.runtimeLabel`)}: v${z.installedVersion} → v${z.latestVersion}`),t.length===0||!await o({title:e(`plugins.updateAllButton`,{count:t.length}),description:e(`plugins.confirmUpdateAll`,{count:t.length,list:t.join(`
|
|
3
|
+
`)}),confirmLabel:e(`plugins.updateButton`)}))return;F(`*`),G(null);let n=await _();if(!n.ok){F(null),G(n.stderr?`${e(`plugins.updateError`)}: ${n.stderr}`:e(`plugins.genericError`,{code:n.error}));return}q(!0),await k()?(O(),window.location.reload()):(F(null),G(e(`plugins.restartTimeout`)))}return(0,w.jsxDEV)(l,{children:[(0,w.jsxDEV)(`h1`,{className:`mb-6 ${d}`,children:e(`settings.title`)},void 0,!1,{fileName:T,lineNumber:290,columnNumber:7},this),(0,w.jsxDEV)(`section`,{className:`mb-6`,children:[(0,w.jsxDEV)(`h2`,{className:`mb-1 ${c}`,children:e(`settings.appearance`)},void 0,!1,{fileName:T,lineNumber:293,columnNumber:9},this),(0,w.jsxDEV)(f,{className:`flex items-center gap-4 px-4 py-2`,children:(0,w.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:(0,w.jsxDEV)(m,{},void 0,!1,{fileName:T,lineNumber:298,columnNumber:13},this)},void 0,!1,{fileName:T,lineNumber:297,columnNumber:11},this)},void 0,!1,{fileName:T,lineNumber:296,columnNumber:9},this)]},void 0,!0,{fileName:T,lineNumber:292,columnNumber:7},this),(0,w.jsxDEV)(`section`,{className:`mb-6`,children:[(0,w.jsxDEV)(`h2`,{className:`mb-1 ${c}`,children:e(`settings.personalTitle`)},void 0,!1,{fileName:T,lineNumber:305,columnNumber:9},this),(0,w.jsxDEV)(f,{className:`flex items-center gap-4 px-4 py-3`,children:[(0,w.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:(0,w.jsxDEV)(`span`,{className:`font-semibold text-text`,children:e(`auth.accountTitle`)},void 0,!1,{fileName:T,lineNumber:308,columnNumber:13},this)},void 0,!1,{fileName:T,lineNumber:307,columnNumber:11},this),(0,w.jsxDEV)(h,{variant:`ghost`,size:`sm`,type:`button`,className:`shrink-0 border border-border`,asChild:!0,children:(0,w.jsxDEV)(r,{to:`/settings/account`,title:e(`auth.accountTitle`),"aria-label":e(`auth.accountTitle`),children:(0,w.jsxDEV)(p,{name:`lucide:settings`,size:16},void 0,!1,{fileName:T,lineNumber:312,columnNumber:15},this)},void 0,!1,{fileName:T,lineNumber:311,columnNumber:13},this)},void 0,!1,{fileName:T,lineNumber:310,columnNumber:11},this)]},void 0,!0,{fileName:T,lineNumber:306,columnNumber:9},this)]},void 0,!0,{fileName:T,lineNumber:304,columnNumber:7},this),i&&(0,w.jsxDEV)(w.Fragment,{children:[(0,w.jsxDEV)(`section`,{className:`mb-6`,children:[(0,w.jsxDEV)(`h2`,{className:`mb-1 min-w-0 font-sans text-[11px] font-medium tracking-wide text-muted`,children:e(`settings.usersTitle`)},void 0,!1,{fileName:T,lineNumber:322,columnNumber:13},this),(0,w.jsxDEV)(`p`,{className:`mb-3 text-sm text-muted`,children:e(`settings.usersDescription`)},void 0,!1,{fileName:T,lineNumber:323,columnNumber:13},this),(0,w.jsxDEV)(f,{className:`flex items-center gap-4 px-4 py-3`,children:[(0,w.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:(0,w.jsxDEV)(`span`,{className:`font-semibold text-text`,children:e(`settings.usersTitle`)},void 0,!1,{fileName:T,lineNumber:326,columnNumber:17},this)},void 0,!1,{fileName:T,lineNumber:325,columnNumber:15},this),(0,w.jsxDEV)(h,{variant:`ghost`,size:`sm`,type:`button`,className:`shrink-0 border border-border`,asChild:!0,children:(0,w.jsxDEV)(r,{to:`/settings/users`,title:e(`settings.usersTitle`),"aria-label":e(`settings.usersTitle`),children:(0,w.jsxDEV)(p,{name:`lucide:settings`,size:16},void 0,!1,{fileName:T,lineNumber:330,columnNumber:19},this)},void 0,!1,{fileName:T,lineNumber:329,columnNumber:17},this)},void 0,!1,{fileName:T,lineNumber:328,columnNumber:15},this)]},void 0,!0,{fileName:T,lineNumber:324,columnNumber:13},this)]},void 0,!0,{fileName:T,lineNumber:321,columnNumber:11},this),(0,w.jsxDEV)(`section`,{className:`mb-6`,children:[(0,w.jsxDEV)(`h2`,{className:`mb-1 min-w-0 font-sans text-[11px] font-medium tracking-wide text-muted`,children:e(`settings.diagnosticsTitle`)},void 0,!1,{fileName:T,lineNumber:337,columnNumber:13},this),(0,w.jsxDEV)(`p`,{className:`mb-3 text-sm text-muted`,children:e(`settings.diagnosticsDescription`)},void 0,!1,{fileName:T,lineNumber:338,columnNumber:13},this),(0,w.jsxDEV)(f,{className:`flex items-center gap-4 px-4 py-3`,children:[(0,w.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:(0,w.jsxDEV)(`span`,{className:`font-semibold text-text`,children:e(`diagnostics.title`)},void 0,!1,{fileName:T,lineNumber:341,columnNumber:17},this)},void 0,!1,{fileName:T,lineNumber:340,columnNumber:15},this),(0,w.jsxDEV)(h,{variant:`ghost`,size:`sm`,type:`button`,className:`shrink-0 border border-border`,asChild:!0,children:(0,w.jsxDEV)(r,{to:`/settings/diagnostics`,title:e(`diagnostics.title`),"aria-label":e(`diagnostics.title`),children:(0,w.jsxDEV)(p,{name:`lucide:activity`,size:16},void 0,!1,{fileName:T,lineNumber:345,columnNumber:19},this)},void 0,!1,{fileName:T,lineNumber:344,columnNumber:17},this)},void 0,!1,{fileName:T,lineNumber:343,columnNumber:15},this)]},void 0,!0,{fileName:T,lineNumber:339,columnNumber:13},this)]},void 0,!0,{fileName:T,lineNumber:336,columnNumber:11},this),(0,w.jsxDEV)(`section`,{children:[(0,w.jsxDEV)(`div`,{className:`mb-1 flex items-center gap-3`,children:[(0,w.jsxDEV)(`h2`,{className:`min-w-0 font-sans text-[11px] font-medium tracking-wide text-muted`,children:e(`settings.componentsTitle`)},void 0,!1,{fileName:T,lineNumber:354,columnNumber:15},this),(0,w.jsxDEV)(h,{variant:`ghost`,size:`sm`,type:`button`,disabled:P!==null||I,onClick:ne,title:e(`plugins.checkUpdates`),className:`shrink-0 border border-border`,children:[(0,w.jsxDEV)(p,{name:`lucide:refresh-cw`,size:14,className:I?`animate-spin`:void 0},void 0,!1,{fileName:T,lineNumber:364,columnNumber:17},this),e(I?`plugins.checkingUpdates`:`plugins.checkUpdates`)]},void 0,!0,{fileName:T,lineNumber:355,columnNumber:15},this),U>0&&(0,w.jsxDEV)(h,{size:`sm`,type:`button`,disabled:P!==null,onClick:oe,variant:`accentOutline`,className:`shrink-0`,children:e(`plugins.updateAllButton`,{count:U})},void 0,!1,{fileName:T,lineNumber:368,columnNumber:17},this)]},void 0,!0,{fileName:T,lineNumber:353,columnNumber:13},this),(0,w.jsxDEV)(`p`,{className:`mb-3 text-sm text-muted`,children:e(`settings.componentsDescription`)},void 0,!1,{fileName:T,lineNumber:380,columnNumber:13},this),!D&&M!==null&&(0,w.jsxDEV)(`p`,{className:`mb-3 text-xs text-muted`,"aria-live":`polite`,children:[U>0?e(`plugins.updatesAvailable`,{count:U}):e(`plugins.noUpdates`),` `,e(`plugins.lastChecked`,{time:new Intl.DateTimeFormat(void 0,{hour:`2-digit`,minute:`2-digit`}).format(M)})]},void 0,!0,{fileName:T,lineNumber:382,columnNumber:15},this),D?(0,w.jsxDEV)(`p`,{className:`text-muted`,children:e(`plugins.loading`)},void 0,!1,{fileName:T,lineNumber:393,columnNumber:15},this):(0,w.jsxDEV)(w.Fragment,{children:[K&&(0,w.jsxDEV)(s,{tone:`info`,className:`mb-5`,children:[e(`plugins.restartBannerBefore`),(0,w.jsxDEV)(`b`,{children:e(`plugins.restartBannerBold`)},void 0,!1,{fileName:T,lineNumber:399,columnNumber:21},this),e(`plugins.restartBannerAfter`)]},void 0,!0,{fileName:T,lineNumber:397,columnNumber:19},this),W&&(0,w.jsxDEV)(s,{tone:`danger`,className:`mb-5`,children:W},void 0,!1,{fileName:T,lineNumber:404,columnNumber:19},this),(0,w.jsxDEV)(`div`,{className:`overflow-hidden rounded-lg border border-border bg-surface`,children:[(0,w.jsxDEV)(`div`,{className:`flex flex-col gap-3 border-b border-border px-4 py-3 sm:flex-row sm:items-center sm:gap-4`,children:[(0,w.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:[(0,w.jsxDEV)(`div`,{className:`flex items-center gap-2`,children:[(0,w.jsxDEV)(`span`,{className:`font-semibold text-text`,children:e(`core.settings.label`)},void 0,!1,{fileName:T,lineNumber:414,columnNumber:25},this),z?.installedVersion&&(0,w.jsxDEV)(u,{variant:`secondary`,className:`text-[10px] font-medium`,children:[`v`,z.installedVersion]},void 0,!0,{fileName:T,lineNumber:416,columnNumber:27},this),se&&(0,w.jsxDEV)(h,{size:`sm`,type:`button`,disabled:P!==null,onClick:ce,title:e(`settings.systemUpdateTitle`),variant:`accentOutline`,className:`shrink-0`,children:e(`plugins.updateButton`)},void 0,!1,{fileName:T,lineNumber:421,columnNumber:27},this)]},void 0,!0,{fileName:T,lineNumber:413,columnNumber:23},this),(0,w.jsxDEV)(`div`,{className:`text-xs text-muted mt-0.5 truncate`,children:e(`settings.systemDescription`)},void 0,!1,{fileName:T,lineNumber:434,columnNumber:23},this)]},void 0,!0,{fileName:T,lineNumber:412,columnNumber:21},this),(0,w.jsxDEV)(`div`,{className:`flex w-full shrink-0 justify-end border-t border-border pt-3 sm:w-auto sm:border-t-0 sm:pt-0`,children:(0,w.jsxDEV)(h,{variant:`ghost`,size:`sm`,type:`button`,className:`border border-border`,asChild:!0,children:(0,w.jsxDEV)(r,{to:`/settings/system`,title:e(`core.settings.label`),"aria-label":e(`core.settings.label`),children:(0,w.jsxDEV)(p,{name:`lucide:settings`,size:16},void 0,!1,{fileName:T,lineNumber:443,columnNumber:27},this)},void 0,!1,{fileName:T,lineNumber:438,columnNumber:25},this)},void 0,!1,{fileName:T,lineNumber:437,columnNumber:23},this)},void 0,!1,{fileName:T,lineNumber:436,columnNumber:21},this)]},void 0,!0,{fileName:T,lineNumber:411,columnNumber:19},this),y.map(t=>{let n=Y(t.id),i=t.enabled?y.filter(e=>e.enabled&&e.id!==t.id&&e.dependsOn.includes(t.id)):[],o=i.length>0,s=o?e(`plugins.blockedByDependents`,{list:i.map(e=>J(e.id)).join(`, `)}):t.enabled?e(`plugins.switchDisable`):e(`plugins.switchEnable`),c=[t.dependsOn.length>0&&`${e(`plugins.metaDepends`)} ${t.dependsOn.map(J).join(`, `)}`,t.libraries.length>0&&`${e(`plugins.metaLibraries`)} ${t.libraries.map(X).join(`, `)}`,t.extends.length>0&&`${e(`plugins.metaExtends`)} ${t.extends.map(e=>Z(t.id,e)).join(`, `)}`].filter(Boolean).join(` · `)||`—`;return(0,w.jsxDEV)(`div`,{className:`flex flex-col gap-3 border-b border-border px-4 py-3 last:border-b-0 sm:flex-row sm:items-center sm:gap-4`,children:[(0,w.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:[(0,w.jsxDEV)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,w.jsxDEV)(`span`,{className:`font-semibold text-text`,children:J(t.id)},void 0,!1,{fileName:T,lineNumber:480,columnNumber:29},this),(0,w.jsxDEV)(j,{plugin:t,busy:R(t.id),onUpdate:()=>ae(t)},void 0,!1,{fileName:T,lineNumber:481,columnNumber:29},this)]},void 0,!0,{fileName:T,lineNumber:479,columnNumber:27},this),n&&(0,w.jsxDEV)(`div`,{className:`text-xs text-muted mt-0.5 truncate`,children:n},void 0,!1,{fileName:T,lineNumber:483,columnNumber:43},this),(0,w.jsxDEV)(`div`,{className:`text-xs text-muted mt-0.5 truncate`,children:c},void 0,!1,{fileName:T,lineNumber:484,columnNumber:27},this)]},void 0,!0,{fileName:T,lineNumber:478,columnNumber:25},this),(0,w.jsxDEV)(`div`,{className:`flex w-full shrink-0 items-center justify-end gap-2 border-t border-border pt-3 sm:w-auto sm:border-t-0 sm:pt-0`,children:[t.hasSettings&&(0,w.jsxDEV)(h,{variant:`ghost`,size:`sm`,type:`button`,className:`border border-border`,asChild:!0,children:(0,w.jsxDEV)(r,{to:`/settings/${t.id}`,title:e(`plugins.settingsTitle`,{defaultValue:`Settings`}),"aria-label":e(`plugins.settingsTitle`,{defaultValue:`Settings`}),children:(0,w.jsxDEV)(p,{name:`lucide:settings`,size:16},void 0,!1,{fileName:T,lineNumber:494,columnNumber:33},this)},void 0,!1,{fileName:T,lineNumber:489,columnNumber:31},this)},void 0,!1,{fileName:T,lineNumber:488,columnNumber:29},this),(0,w.jsxDEV)(h,{size:`iconSm`,type:`button`,disabled:R(t.id),onClick:()=>re(t),title:e(`plugins.purgeTitle`),"aria-label":e(`plugins.purgeTitle`),variant:`destructiveOutline`,children:(0,w.jsxDEV)(p,{name:`lucide:trash-2`,size:16},void 0,!1,{fileName:T,lineNumber:507,columnNumber:29},this)},void 0,!1,{fileName:T,lineNumber:498,columnNumber:27},this),(0,w.jsxDEV)(`span`,{title:s,children:(0,w.jsxDEV)(a,{checked:t.enabled,disabled:R(t.id)||o,onCheckedChange:()=>ie(t),title:s},void 0,!1,{fileName:T,lineNumber:512,columnNumber:29},this)},void 0,!1,{fileName:T,lineNumber:511,columnNumber:27},this)]},void 0,!0,{fileName:T,lineNumber:486,columnNumber:25},this)]},t.id,!0,{fileName:T,lineNumber:474,columnNumber:23},this)})]},void 0,!0,{fileName:T,lineNumber:409,columnNumber:17},this)]},void 0,!0,{fileName:T,lineNumber:395,columnNumber:15},this)]},void 0,!0,{fileName:T,lineNumber:352,columnNumber:11},this)]},void 0,!0,{fileName:T,lineNumber:319,columnNumber:9},this)]},void 0,!0,{fileName:T,lineNumber:289,columnNumber:5},this)}function j({plugin:e,busy:t,onUpdate:r}){let{t:i}=n(),a=!!(e.latestVersion&&S(e.latestVersion,e.installedVersion));return(0,w.jsxDEV)(w.Fragment,{children:[(0,w.jsxDEV)(u,{variant:`secondary`,className:`text-[11px] font-medium`,children:[`v`,e.installedVersion]},void 0,!0,{fileName:T,lineNumber:538,columnNumber:7},this),a&&(0,w.jsxDEV)(h,{size:`sm`,type:`button`,disabled:t,onClick:r,title:i(`plugins.updateTitle`,{from:e.installedVersion,to:e.latestVersion}),variant:`accentOutline`,className:`shrink-0`,children:i(`plugins.updateButton`)},void 0,!1,{fileName:T,lineNumber:542,columnNumber:9},this)]},void 0,!0,{fileName:T,lineNumber:537,columnNumber:5},this)}export{A as SettingsPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{t as r}from"./react-vendor-CzSUaSLk.js";import{kr as i}from"./src-Cp4yFztL.js";import{i as a,r as o}from"./input-tJjsdU1x.js";import{a as s,i as c,t as l}from"./popover-C2xHG6L3.js";var u=o(`book-open`,[[`path`,{d:`M12 7v14`,key:`1akyts`}],[`path`,{d:`M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z`,key:`ruj8y`}]]),d=o(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),f=o(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),p=e(t(),1),m=`coffer-theme`;function h(e){return e===`light`||e===`dark`||e===`eink`?e:`auto`}function g(){try{return h(localStorage.getItem(m))}catch{return h(null)}}function _(e){if(e===`auto`){delete document.documentElement.dataset.theme;try{localStorage.removeItem(m)}catch{}}else{document.documentElement.dataset.theme=e;try{localStorage.setItem(m,e)}catch{}}}var v=`coffer-accent`,y=`oklch(0.45 0.073 162)`,b=[{titleKey:`appearance.colours`,items:[[12,`red`],[42,`orange`],[72,`yellow`],[102,`lime`],[132,`green`],[162,`emerald`],[192,`teal`],[222,`azure`],[252,`blue`],[282,`violet`],[312,`purple`],[342,`pink`]].map(([e,t])=>({id:`oklch(0.62 0.107 ${e})`,titleKey:`appearance.hue.${t}`}))},{titleKey:`appearance.muted`,items:[{id:`oklch(0.45 0.073 42)`,titleKey:`appearance.hue.brown`},{id:`oklch(0.45 0.073 162)`,titleKey:`appearance.hue.pine`},{id:`oklch(0.45 0.073 282)`,titleKey:`appearance.hue.plum`}]},{titleKey:`appearance.neutral`,items:[{id:`oklch(0.5 0 0)`,titleKey:`appearance.hue.grey`}]}],x=/^(#[0-9a-f]{6}|oklch\(\s*[\d.]+\s+[\d.]+\s+[\d.]+\s*\))$/i;function S(e){let t=e?.trim();return t&&x.test(t)?t:y}function C(){try{return S(localStorage.getItem(v))}catch{return y}}function w(e){let t=S(e);document.documentElement.style.setProperty(`--accent`,t);try{t===`oklch(0.45 0.073 162)`?localStorage.removeItem(v):localStorage.setItem(v,t)}catch{}}function T(){let[e,t]=(0,p.useState)(()=>g()),[n,r]=(0,p.useState)(()=>C());return{choice:e,setChoice:(0,p.useCallback)(e=>{_(e),t(e)},[]),accent:n,setAccent:(0,p.useCallback)(e=>{w(e),r(e)},[])}}var E=r(),D=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/theme/ThemeSwitcher.tsx`,O=[{value:`auto`,Icon:i,labelKey:`theme.auto`},{value:`light`,Icon:f,labelKey:`theme.light`},{value:`dark`,Icon:d,labelKey:`theme.dark`},{value:`eink`,Icon:u,labelKey:`theme.eink`}];function k({compact:e=!1}){let{t}=n(),{choice:r,setChoice:i,accent:o,setAccent:u}=T();return(0,E.jsxDEV)(l,{children:[(0,E.jsxDEV)(s,{"aria-label":t(`appearance.label`),className:a(`flex min-h-11 touch-manipulation items-center rounded-xl text-sm text-muted outline-none transition-colors hover:bg-elevated hover:text-text focus-visible:ring-2 focus-visible:ring-accent`,e?`w-full flex-col gap-0.5 py-2`:`w-full gap-2 px-3 py-2`),children:[(0,E.jsxDEV)(`span`,{className:`block size-4 shrink-0 rounded-full border border-border`,style:{background:o}},void 0,!1,{fileName:D,lineNumber:40,columnNumber:9},this),e?(0,E.jsxDEV)(`span`,{className:`text-[10px] font-semibold`,children:t(`appearance.label`)},void 0,!1,{fileName:D,lineNumber:42,columnNumber:11},this):(0,E.jsxDEV)(`span`,{className:`flex-1 text-left`,children:t(`appearance.label`)},void 0,!1,{fileName:D,lineNumber:44,columnNumber:11},this)]},void 0,!0,{fileName:D,lineNumber:31,columnNumber:7},this),(0,E.jsxDEV)(c,{align:`end`,className:`w-[292px] max-w-[calc(100vw-32px)] p-3`,children:[(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`label mb-1.5 border-b border-border pb-1.5`,children:t(`appearance.theme`)},void 0,!1,{fileName:D,lineNumber:50,columnNumber:11},this),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-2 gap-1`,children:O.map(({value:e,Icon:n,labelKey:o})=>(0,E.jsxDEV)(`button`,{type:`button`,"aria-pressed":r===e,onClick:()=>i(e),className:a(`flex min-h-11 touch-manipulation items-center gap-2 rounded-md border border-transparent px-2 text-sm hover:bg-bg`,r===e&&`border-border bg-bg text-text`),children:[(0,E.jsxDEV)(n,{size:15,className:`shrink-0`},void 0,!1,{fileName:D,lineNumber:63,columnNumber:17},this),(0,E.jsxDEV)(`span`,{className:`truncate`,children:t(o)},void 0,!1,{fileName:D,lineNumber:64,columnNumber:17},this)]},e,!0,{fileName:D,lineNumber:53,columnNumber:15},this))},void 0,!1,{fileName:D,lineNumber:51,columnNumber:11},this)]},void 0,!0,{fileName:D,lineNumber:49,columnNumber:9},this),b.map(e=>(0,E.jsxDEV)(`section`,{className:`mt-3`,children:[(0,E.jsxDEV)(`h3`,{className:`label mb-1.5 border-b border-border pb-1.5`,children:t(e.titleKey)},void 0,!1,{fileName:D,lineNumber:72,columnNumber:13},this),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-3 gap-0.5`,children:e.items.map(e=>(0,E.jsxDEV)(`button`,{type:`button`,"aria-pressed":o===e.id,onClick:()=>u(e.id),className:a(`flex min-w-0 touch-manipulation flex-col items-center gap-1.5 rounded-md border border-transparent px-1 py-2 hover:bg-bg`,o===e.id&&`border-text bg-bg`),children:[(0,E.jsxDEV)(`span`,{className:`block size-4 shrink-0 rounded-full border border-border`,style:{background:e.id}},void 0,!1,{fileName:D,lineNumber:86,columnNumber:19},this),(0,E.jsxDEV)(`span`,{className:a(`w-full truncate text-[11px] leading-tight`,o===e.id?`text-text`:`text-muted`),children:t(e.titleKey)},void 0,!1,{fileName:D,lineNumber:90,columnNumber:19},this)]},e.id,!0,{fileName:D,lineNumber:76,columnNumber:17},this))},void 0,!1,{fileName:D,lineNumber:74,columnNumber:13},this)]},e.titleKey,!0,{fileName:D,lineNumber:71,columnNumber:11},this))]},void 0,!0,{fileName:D,lineNumber:48,columnNumber:7},this)]},void 0,!0,{fileName:D,lineNumber:30,columnNumber:5},this)}export{k as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function e(e,t){return new Promise(n=>{let r=new XMLHttpRequest;r.open(`POST`,`/api/upload`),r.upload.addEventListener(`progress`,e=>{e.lengthComputable&&t(Math.min(100,Math.round(e.loaded/e.total*100)))}),r.addEventListener(`load`,()=>{if(r.status<200||r.status>=300){n(null);return}try{let e=JSON.parse(r.responseText),i=e.name??e.filename;if(!i){n(null);return}t(100),n({name:i,...e.mime?{mime:e.mime}:{},...e.size==null?{}:{size:e.size}})}catch{n(null)}}),r.addEventListener(`error`,()=>n(null)),r.addEventListener(`abort`,()=>n(null));let i=new FormData;i.append(`file`,e),r.send(i)})}async function t(t,n){if(n)return e(t,n);let r=new FormData;r.append(`file`,t);let i=await fetch(`/api/upload`,{method:`POST`,body:r});if(!i.ok)return null;let a=await i.json(),o=a.name??a.filename;return o?{name:o,...a.mime?{mime:a.mime}:{},...a.size==null?{}:{size:a.size}}:null}function n(e){return`/uploads/${e}`}async function r(e,t){let n=new URLSearchParams({path:e});t?.length&&n.set(`exts`,t.join(`,`));let r=await fetch(`/api/fs/list?${n.toString()}`);if(!r.ok)throw Error(`fs_list_${r.status}`);return(await r.json()).entries??[]}async function i(e){let t=await fetch(`/api/embed`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({url:e})});return t.ok?await t.json():null}var a=new Map;function o(e){let t=a.get(e);if(t)return t;let n=fetch(e).then(t=>{if(!t.ok)throw Error(`GET ${e} → ${t.status}`);return t.json()}).finally(()=>{a.delete(e)});return a.set(e,n),n}function s(e,t,n){return o(`/api/${e}/${t}${n&&Object.keys(n).length?`?`+new URLSearchParams(n).toString():``}`)}async function c(e,t,n){let r=await fetch(`/api/${e}/${t}`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(n)});return r.status===201?{ok:!0,row:await r.json()}:r.status===422?{ok:!1,issues:(await r.json()).issues}:{ok:!1,issues:[{field:``,code:`server`,path:[]}]}}async function l(e,t,n,r){let i=await fetch(`/api/${e}/${t}/${n}`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify(r)});return i.ok?{ok:!0,row:await i.json()}:i.status===422?{ok:!1,issues:(await i.json()).issues}:{ok:!1,issues:[{field:``,code:`server`,path:[]}]}}async function u(e,t,n){return(await fetch(`/api/${e}/${t}/${n}`,{method:`DELETE`})).status===204}async function d(e,t,n,r){let i=await fetch(`/api/${e}/${t}/${n}/activity`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify({favorite:r})});return i.ok?(await i.json()).activity??null:null}function f(){return o(`/api/trash`)}async function p(e,t,n){return(await fetch(`/api/trash/${e}/${t}/${n}/restore`,{method:`POST`})).ok}async function m(e,t,n){return(await fetch(`/api/trash/${e}/${t}/${n}`,{method:`DELETE`,headers:{"content-type":`application/json`},body:JSON.stringify({confirmed:!0})})).status===204}async function h(e={}){let t=e.refresh?`updates=1&refresh=1`:`updates=1`,n=await fetch(`/api/plugins?${t}`);if(!n.ok)throw Error(`plugins`);return n.json()}async function g(e,t){let n=await fetch(`/api/plugins/${e}`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify({enabled:t})}),r=await n.json().catch(()=>({}));return n.ok?{ok:!0}:{ok:!1,error:r.error??String(n.status),data:r}}async function _(e){let t=await fetch(`/api/plugins/${e}/update`,{method:`POST`}),n=await t.json().catch(()=>({}));return t.ok?{ok:!0}:{ok:!1,error:n.error??String(t.status),stderr:n.stderr}}async function v(){let e=await fetch(`/api/plugins/update-all`,{method:`POST`}),t=await e.json().catch(()=>({}));return e.ok?{ok:!0,updated:t.updated}:{ok:!1,error:t.error??String(e.status),stderr:t.stderr}}async function y(){let e=await fetch(`/api/system/update`,{method:`POST`}),t=await e.json().catch(()=>({}));return e.ok?{ok:!0,updated:t.updated}:{ok:!1,error:t.error??String(e.status),stderr:t.stderr}}async function b(e={}){let t=await fetch(`/api/runtime${e.refresh?`?refresh=1`:``}`);return t.ok?await t.json():{installedVersion:null,latestVersion:null}}async function x(){let e=await fetch(`/api/system/orchestrator-diagnostics`,{method:`POST`,headers:{"content-type":`application/json`},body:`{}`});if(!e.ok)throw Error(`diagnostics`);return await e.json()}async function S(e,t){let n=await fetch(e,{headers:{"content-type":`application/json`},...t}),r=await n.json().catch(()=>({}));return n.ok?{ok:!0,data:r}:{ok:!1,status:n.status,data:r}}function C(){return o(`/api/auth/status`)}function w(e,t,n){return S(`/api/auth/setup`,{method:`POST`,body:JSON.stringify({login:e,password:t,displayName:n})})}function T(e,t){return S(`/api/auth/login`,{method:`POST`,body:JSON.stringify({login:e,password:t})})}async function E(){await fetch(`/api/auth/logout`,{method:`POST`})}async function D(){let e=await fetch(`/api/auth/me`);return e.ok?e.json():null}function O(e){return S(`/api/auth/me`,{method:`PATCH`,body:JSON.stringify(e)})}function k(e){return S(`/api/auth/users${e?`?q=${encodeURIComponent(e)}`:``}`)}function A(e){return S(`/api/auth/users`,{method:`POST`,body:JSON.stringify(e)})}function j(e,t){return S(`/api/auth/users/${e}`,{method:`PATCH`,body:JSON.stringify(t)})}function M(e){return S(`/api/auth/users/${e}`,{method:`DELETE`})}function N(){return S(`/api/auth/tokens`)}function P(e,t){return S(`/api/auth/tokens`,{method:`POST`,body:JSON.stringify({name:e,token:t})})}function F(e){return S(`/api/auth/tokens/${e}`,{method:`DELETE`})}function I(){return S(`/api/oauth/grants`)}function
|
|
1
|
+
function e(e,t){return new Promise(n=>{let r=new XMLHttpRequest;r.open(`POST`,`/api/upload`),r.upload.addEventListener(`progress`,e=>{e.lengthComputable&&t(Math.min(100,Math.round(e.loaded/e.total*100)))}),r.addEventListener(`load`,()=>{if(r.status<200||r.status>=300){n(null);return}try{let e=JSON.parse(r.responseText),i=e.name??e.filename;if(!i){n(null);return}t(100),n({name:i,...e.mime?{mime:e.mime}:{},...e.size==null?{}:{size:e.size}})}catch{n(null)}}),r.addEventListener(`error`,()=>n(null)),r.addEventListener(`abort`,()=>n(null));let i=new FormData;i.append(`file`,e),r.send(i)})}async function t(t,n){if(n)return e(t,n);let r=new FormData;r.append(`file`,t);let i=await fetch(`/api/upload`,{method:`POST`,body:r});if(!i.ok)return null;let a=await i.json(),o=a.name??a.filename;return o?{name:o,...a.mime?{mime:a.mime}:{},...a.size==null?{}:{size:a.size}}:null}function n(e){return`/uploads/${e}`}async function r(e,t){let n=new URLSearchParams({path:e});t?.length&&n.set(`exts`,t.join(`,`));let r=await fetch(`/api/fs/list?${n.toString()}`);if(!r.ok)throw Error(`fs_list_${r.status}`);return(await r.json()).entries??[]}async function i(e){let t=await fetch(`/api/embed`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({url:e})});return t.ok?await t.json():null}var a=new Map;function o(e){let t=a.get(e);if(t)return t;let n=fetch(e).then(t=>{if(!t.ok)throw Error(`GET ${e} → ${t.status}`);return t.json()}).finally(()=>{a.delete(e)});return a.set(e,n),n}function s(e,t,n){return o(`/api/${e}/${t}${n&&Object.keys(n).length?`?`+new URLSearchParams(n).toString():``}`)}async function c(e,t,n){let r=await fetch(`/api/${e}/${t}`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(n)});return r.status===201?{ok:!0,row:await r.json()}:r.status===422?{ok:!1,issues:(await r.json()).issues}:{ok:!1,issues:[{field:``,code:`server`,path:[]}]}}async function l(e,t,n,r){let i=await fetch(`/api/${e}/${t}/${n}`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify(r)});return i.ok?{ok:!0,row:await i.json()}:i.status===422?{ok:!1,issues:(await i.json()).issues}:{ok:!1,issues:[{field:``,code:`server`,path:[]}]}}async function u(e,t,n){return(await fetch(`/api/${e}/${t}/${n}`,{method:`DELETE`})).status===204}async function d(e,t,n,r){let i=await fetch(`/api/${e}/${t}/${n}/activity`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify({favorite:r})});return i.ok?(await i.json()).activity??null:null}function f(){return o(`/api/trash`)}async function p(e,t,n){return(await fetch(`/api/trash/${e}/${t}/${n}/restore`,{method:`POST`})).ok}async function m(e,t,n){return(await fetch(`/api/trash/${e}/${t}/${n}`,{method:`DELETE`,headers:{"content-type":`application/json`},body:JSON.stringify({confirmed:!0})})).status===204}async function h(e={}){let t=e.refresh?`updates=1&refresh=1`:`updates=1`,n=await fetch(`/api/plugins?${t}`);if(!n.ok)throw Error(`plugins`);return n.json()}async function g(e,t){let n=await fetch(`/api/plugins/${e}`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify({enabled:t})}),r=await n.json().catch(()=>({}));return n.ok?{ok:!0}:{ok:!1,error:r.error??String(n.status),data:r}}async function _(e){let t=await fetch(`/api/plugins/${e}/update`,{method:`POST`}),n=await t.json().catch(()=>({}));return t.ok?{ok:!0}:{ok:!1,error:n.error??String(t.status),stderr:n.stderr}}async function v(){let e=await fetch(`/api/plugins/update-all`,{method:`POST`}),t=await e.json().catch(()=>({}));return e.ok?{ok:!0,updated:t.updated}:{ok:!1,error:t.error??String(e.status),stderr:t.stderr}}async function y(){let e=await fetch(`/api/system/update`,{method:`POST`}),t=await e.json().catch(()=>({}));return e.ok?{ok:!0,updated:t.updated}:{ok:!1,error:t.error??String(e.status),stderr:t.stderr}}async function b(e={}){let t=await fetch(`/api/runtime${e.refresh?`?refresh=1`:``}`);return t.ok?await t.json():{installedVersion:null,latestVersion:null}}async function x(){let e=await fetch(`/api/system/orchestrator-diagnostics`,{method:`POST`,headers:{"content-type":`application/json`},body:`{}`});if(!e.ok)throw Error(`diagnostics`);return await e.json()}async function S(e,t){let n=await fetch(e,{headers:{"content-type":`application/json`},...t}),r=await n.json().catch(()=>({}));return n.ok?{ok:!0,data:r}:{ok:!1,status:n.status,data:r}}function C(){return o(`/api/auth/status`)}function w(e,t,n){return S(`/api/auth/setup`,{method:`POST`,body:JSON.stringify({login:e,password:t,displayName:n})})}function T(e,t){return S(`/api/auth/login`,{method:`POST`,body:JSON.stringify({login:e,password:t})})}async function E(){await fetch(`/api/auth/logout`,{method:`POST`})}async function D(){let e=await fetch(`/api/auth/me`);return e.ok?e.json():null}function O(e){return S(`/api/auth/me`,{method:`PATCH`,body:JSON.stringify(e)})}function k(e){return S(`/api/auth/users${e?`?q=${encodeURIComponent(e)}`:``}`)}function A(e){return S(`/api/auth/users`,{method:`POST`,body:JSON.stringify(e)})}function j(e,t){return S(`/api/auth/users/${e}`,{method:`PATCH`,body:JSON.stringify(t)})}function M(e){return S(`/api/auth/users/${e}`,{method:`DELETE`})}function N(){return S(`/api/auth/tokens`)}function P(e,t){return S(`/api/auth/tokens`,{method:`POST`,body:JSON.stringify({name:e,token:t})})}function F(e){return S(`/api/auth/tokens/${e}`,{method:`DELETE`})}function I(){return S(`/api/auth/links`)}function L(){return S(`/api/auth/links`,{method:`POST`})}function R(e,t){return S(`/api/auth/links/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,{method:`DELETE`})}function z(){return S(`/api/oauth/grants`)}function B(e){return S(`/api/oauth/grants/${encodeURIComponent(e)}`,{method:`DELETE`})}export{g as A,n as C,p as D,i as E,l as F,y as I,j as L,R as M,v as N,B as O,_ as P,t as R,k as S,m as T,I as _,C as a,N as b,P as c,M as d,o as f,z as g,r as h,w as i,d as j,F as k,A as l,b as m,E as n,O as o,x as p,D as r,c as s,T as t,u,h as v,L as w,f as x,s as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./input-tJjsdU1x.js";var t=e(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t}from"./i18n-vendor-T6EnJ_TL.js";import{a as n,l as r,t as i}from"./react-vendor-CzSUaSLk.js";import{a,r as o}from"./api-
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t}from"./i18n-vendor-T6EnJ_TL.js";import{a as n,l as r,t as i}from"./react-vendor-CzSUaSLk.js";import{a,r as o}from"./api-DD1tY5Dq.js";var s=e(t(),1),c=i(),l=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/auth-context.tsx`,u=(0,s.createContext)(null);function d(){let e=(0,s.useContext)(u);if(!e)throw Error(`useAuth() called outside <AuthGate>`);return e}function f({children:e}){let[t,i]=(0,s.useState)({kind:`loading`});return(0,s.useEffect)(()=>{if(t.kind===`ready`)return;let e=!1;return(async()=>{try{let t=await a();if(e)return;if(t.needsSetup)return i({kind:`needsSetup`});let n=await o();if(e)return;i(n?{kind:`ready`,user:n}:{kind:`needsLogin`})}catch{e||i({kind:`error`})}})(),()=>{e=!0}},[r().pathname,t.kind]),(0,s.useEffect)(()=>{if(t.kind!==`ready`)return;let e=()=>{document.visibilityState===`visible`&&o().then(e=>{e||i({kind:`needsLogin`})}).catch(()=>{})};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[t.kind]),t.kind===`loading`?null:t.kind===`needsSetup`?(0,c.jsxDEV)(n,{to:`/setup`,replace:!0},void 0,!1,{fileName:l,lineNumber:66,columnNumber:44},this):t.kind===`needsLogin`?(0,c.jsxDEV)(n,{to:`/login`,replace:!0},void 0,!1,{fileName:l,lineNumber:67,columnNumber:44},this):t.kind===`error`?(0,c.jsxDEV)(`div`,{style:{display:`flex`,minHeight:`100dvh`,alignItems:`center`,justifyContent:`center`,flexDirection:`column`,gap:`1rem`},children:[(0,c.jsxDEV)(`p`,{children:`Could not check your session.`},void 0,!1,{fileName:l,lineNumber:80,columnNumber:9},this),(0,c.jsxDEV)(`button`,{onClick:()=>window.location.reload(),children:`Reload`},void 0,!1,{fileName:l,lineNumber:81,columnNumber:9},this)]},void 0,!0,{fileName:l,lineNumber:70,columnNumber:7},this):(0,c.jsxDEV)(u.Provider,{value:t.user,children:e},void 0,!1,{fileName:l,lineNumber:85,columnNumber:10},this)}export{d as n,f as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{E as e,S as t,T as n,k as r,s as i}from"./fields-
|
|
1
|
+
import{E as e,S as t,T as n,k as r,s as i}from"./fields-GPyF03tK.js";var a={decimal:[[`B`,1],[`KB`,1e3],[`MB`,1e6],[`GB`,1e9],[`TB`,0xe8d4a51000]],binary:[[`B`,1],[`KiB`,1024],[`MiB`,1024**2],[`GiB`,1024**3],[`TiB`,1024**4]]},o=e=>e.hints.system??`decimal`,s=(e,t)=>a[e].find(e=>e[0]===t)?.[1]??1;function c(e,t){let n=a[t],r=n[0];for(let t of n)e>=t[1]&&(r=t);return r}function l(e,t=`decimal`){if(e==null||e===``||Number.isNaN(Number(e)))return``;let n=Number(e),[r,i]=c(n,t);return`${Number((n/i).toFixed(2))} ${r}`}function u(a){let o=e(a),s=i({label:a.label,rules:{...a.rules,min:0},ui:{...a.ui}}),c=n(s)?t(s):s;return r(void 0,o,{...c,kind:`dataSize`,hints:{...c.hints,system:a.system??`decimal`,unit:a.unit??`GB`}})}function d(e){return u({...e,system:`binary`,unit:`GiB`})}function f(e){return u({...e,system:`decimal`,unit:`GB`})}export{s as a,o as c,f as i,c as n,l as o,u as r,d as s,a as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as e}from"./fields-
|
|
1
|
+
import{C as e}from"./fields-GPyF03tK.js";import{c as t,i as n}from"./shelf-CpE68_8d.js";function r(r){let i=e(r),a=t(i.fields).map(([e])=>e),o=a.find((e,t)=>a.indexOf(e)!==t);if(o)throw Error(`[extend] ${i.id}: duplicate key '${o}'`);return n(i.fields,`[extend] ${i.id}`),i}function i(e,t,n){return e.attachTo.some(e=>!(e.library!==t||e.shelf&&e.shelf!==n))}export{i as n,r as t};
|