@aswin.dev/editor 0.6.3 → 0.7.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.
Files changed (158) hide show
  1. package/dist/AccessibilityPanel-CvQGLdu6.js +108 -0
  2. package/dist/AiChatSidebar-B3SJIKG_.js +229 -0
  3. package/dist/AiFeatureMenu-BLLKoOos.js +63 -0
  4. package/dist/BlockA11yBadge-CXDLqkcJ.js +34 -0
  5. package/dist/CloudEditor-BCz1ZTYC.js +1172 -0
  6. package/dist/CollaboratorBar-DuPYW5iF.js +95 -0
  7. package/dist/CommentsSidebar-B1pvJdqF.js +441 -0
  8. package/dist/CountdownBlock-BNSj1jvJ.js +92 -0
  9. package/dist/CountdownToolbar-ClJr2GzL.js +210 -0
  10. package/dist/DesignReferenceSidebar-B8V_F2yF.js +276 -0
  11. package/dist/LoadingTrack-B0CWFHXQ.js +10 -0
  12. package/dist/ModuleBrowserModal-DrUFMTDx.js +206 -0
  13. package/dist/ModulePreviewCanvas-CHdOwV_4.js +106 -0
  14. package/dist/NumberWithSuffix-DkXUez9t.js +422 -0
  15. package/dist/ParagraphEditor-D75wl3BX.js +695 -0
  16. package/dist/RichTextEditorContent-DYkIauIk.js +137 -0
  17. package/dist/SaveModuleDialog-FZ9lxY7_.js +123 -0
  18. package/dist/SnapshotHistory-BR3eV120.js +127 -0
  19. package/dist/TemplateScoringPanel-4GTNHej5.js +256 -0
  20. package/dist/TestEmailModal--ue5w9fT.js +94 -0
  21. package/dist/TitleEditor-fStSADI-.js +172 -0
  22. package/dist/TplModal-BwSfxIHf.js +44 -0
  23. package/dist/_plugin-vue_export-helper-B0hnzhyu.js +8 -0
  24. package/dist/accessibility-e8JYu_zd.js +27 -0
  25. package/dist/blockTypeIcons-BcTrDjmH.js +126 -0
  26. package/dist/bundle-stats.json +10 -0
  27. package/dist/cdn/chunks/AccessibilityPanel-B6DOjojm.js +97 -0
  28. package/dist/cdn/chunks/AccessibilityPanel-B6DOjojm.js.map +1 -0
  29. package/dist/cdn/chunks/AiFeatureMenu-qEdB2fZJ.js +59 -0
  30. package/dist/cdn/chunks/AiFeatureMenu-qEdB2fZJ.js.map +1 -0
  31. package/dist/cdn/chunks/BlockA11yBadge-DcEZftf6.js +33 -0
  32. package/dist/cdn/chunks/BlockA11yBadge-DcEZftf6.js.map +1 -0
  33. package/dist/cdn/chunks/CloudEditor-D2GsEC_n.js +1143 -0
  34. package/dist/cdn/chunks/CloudEditor-D2GsEC_n.js.map +1 -0
  35. package/dist/cdn/chunks/CollaboratorBar--nO7TX6b.js +51 -0
  36. package/dist/cdn/chunks/CollaboratorBar--nO7TX6b.js.map +1 -0
  37. package/dist/cdn/chunks/CountdownBlock-5YdT1uUu.js +93 -0
  38. package/dist/cdn/chunks/CountdownBlock-5YdT1uUu.js.map +1 -0
  39. package/dist/cdn/chunks/CountdownToolbar-DXPXrbAA.js +212 -0
  40. package/dist/cdn/chunks/CountdownToolbar-DXPXrbAA.js.map +1 -0
  41. package/dist/cdn/chunks/ModuleBrowserModal-DxoPp81s.js +195 -0
  42. package/dist/cdn/chunks/ModuleBrowserModal-DxoPp81s.js.map +1 -0
  43. package/dist/cdn/chunks/ModulePreviewCanvas-CoLdb4ar.js +107 -0
  44. package/dist/cdn/chunks/ModulePreviewCanvas-CoLdb4ar.js.map +1 -0
  45. package/dist/cdn/chunks/NumberWithSuffix-CE3NrZhH.js +423 -0
  46. package/dist/cdn/chunks/NumberWithSuffix-CE3NrZhH.js.map +1 -0
  47. package/dist/cdn/chunks/ParagraphEditor-B6Ygu-Mq.js +544 -0
  48. package/dist/cdn/chunks/ParagraphEditor-B6Ygu-Mq.js.map +1 -0
  49. package/dist/cdn/chunks/RichTextEditorContent-DL_y2SrR.js +106 -0
  50. package/dist/cdn/chunks/RichTextEditorContent-DL_y2SrR.js.map +1 -0
  51. package/dist/cdn/chunks/SaveModuleDialog-B0TnO_o9.js +119 -0
  52. package/dist/cdn/chunks/SaveModuleDialog-B0TnO_o9.js.map +1 -0
  53. package/dist/cdn/chunks/TitleEditor-BHpfxvwy.js +171 -0
  54. package/dist/cdn/chunks/TitleEditor-BHpfxvwy.js.map +1 -0
  55. package/dist/cdn/chunks/blockTypeIcons-BzzY9_kA.js +22 -0
  56. package/dist/cdn/chunks/blockTypeIcons-BzzY9_kA.js.map +1 -0
  57. package/dist/cdn/chunks/de-Ce-LbJ2J.js +89 -0
  58. package/dist/cdn/chunks/de-Ce-LbJ2J.js.map +1 -0
  59. package/dist/cdn/chunks/de-D8CnZxV9.js +523 -0
  60. package/dist/cdn/chunks/de-D8CnZxV9.js.map +1 -0
  61. package/dist/cdn/chunks/de-RQrZR56a.js +209 -0
  62. package/dist/cdn/chunks/de-RQrZR56a.js.map +1 -0
  63. package/dist/cdn/chunks/draggable-Bcb86AsV.js +11572 -0
  64. package/dist/cdn/chunks/draggable-Bcb86AsV.js.map +1 -0
  65. package/dist/cdn/chunks/emojiData-EMFlj6FJ.js +19 -0
  66. package/dist/cdn/chunks/emojiData-EMFlj6FJ.js.map +1 -0
  67. package/dist/cdn/chunks/en-8FHaQv4V.js +523 -0
  68. package/dist/cdn/chunks/en-8FHaQv4V.js.map +1 -0
  69. package/dist/cdn/chunks/en-Bl1ecfRF.js +209 -0
  70. package/dist/cdn/chunks/en-Bl1ecfRF.js.map +1 -0
  71. package/dist/cdn/chunks/en-DiCWK5fG.js +89 -0
  72. package/dist/cdn/chunks/en-DiCWK5fG.js.map +1 -0
  73. package/dist/cdn/chunks/extensions-DIxF31tA.js +598 -0
  74. package/dist/cdn/chunks/extensions-DIxF31tA.js.map +1 -0
  75. package/dist/cdn/chunks/features-DEMb13KS.js +6814 -0
  76. package/dist/cdn/chunks/features-DEMb13KS.js.map +1 -0
  77. package/dist/cdn/chunks/icons-CsLTcirh.js +700 -0
  78. package/dist/cdn/chunks/icons-CsLTcirh.js.map +1 -0
  79. package/dist/cdn/chunks/liquid.browser-lQbkge2E.js +3279 -0
  80. package/dist/cdn/chunks/liquid.browser-lQbkge2E.js.map +1 -0
  81. package/dist/cdn/chunks/media-library-CVaNvhpM.js +6014 -0
  82. package/dist/cdn/chunks/media-library-CVaNvhpM.js.map +1 -0
  83. package/dist/cdn/chunks/pusher-CDbNlZBE.js +2508 -0
  84. package/dist/cdn/chunks/pusher-CDbNlZBE.js.map +1 -0
  85. package/dist/cdn/chunks/quality-BaBfc54_.js +1456 -0
  86. package/dist/cdn/chunks/quality-BaBfc54_.js.map +1 -0
  87. package/dist/cdn/chunks/readableTextColor-DhoK4XiZ.js +32 -0
  88. package/dist/cdn/chunks/readableTextColor-DhoK4XiZ.js.map +1 -0
  89. package/dist/cdn/chunks/renderer-CUxvx7ro.js +548 -0
  90. package/dist/cdn/chunks/renderer-CUxvx7ro.js.map +1 -0
  91. package/dist/cdn/chunks/rolldown-runtime-BNuo_Jkg.js +20 -0
  92. package/dist/cdn/chunks/src-CRaqN-p8.js +497 -0
  93. package/dist/cdn/chunks/src-CRaqN-p8.js.map +1 -0
  94. package/dist/cdn/chunks/styleConstants-DP1VOca8.js +57 -0
  95. package/dist/cdn/chunks/styleConstants-DP1VOca8.js.map +1 -0
  96. package/dist/cdn/chunks/styles-BHJULjNR.js +2947 -0
  97. package/dist/cdn/chunks/styles-BHJULjNR.js.map +1 -0
  98. package/dist/cdn/chunks/tiptap-ZhwKyFp7.js +14654 -0
  99. package/dist/cdn/chunks/tiptap-ZhwKyFp7.js.map +1 -0
  100. package/dist/cdn/editor.css +2 -0
  101. package/dist/cdn/editor.js +250 -0
  102. package/dist/cdn/editor.js.map +1 -0
  103. package/dist/check-Da05j8yl.js +7 -0
  104. package/dist/chevron-down-R2uY34iD.js +7 -0
  105. package/dist/circle-alert-DZuGWPX-.js +25 -0
  106. package/dist/clock-CRp2sIub.js +12 -0
  107. package/dist/cloud-DEk_b4CR.js +1733 -0
  108. package/dist/createLucideIcon-C3pa2siy.js +43 -0
  109. package/dist/de-Brqvgr43.js +521 -0
  110. package/dist/de-DCaaCE5s.js +207 -0
  111. package/dist/dist-B1IR0bpH.js +326 -0
  112. package/dist/dist-BFawx6IS.js +519 -0
  113. package/dist/dist-BaQIYPsn.js +35 -0
  114. package/dist/dist-Cp0zXPAD.js +189 -0
  115. package/dist/dist-D6uC2xhi.js +5 -0
  116. package/dist/dist-D90y8dvT.js +2082 -0
  117. package/dist/dist-DDJIWTRY.js +776 -0
  118. package/dist/dist-DJmnUmW9.js +362 -0
  119. package/dist/dist-DjviJBCi.js +74 -0
  120. package/dist/dist-KoBJjK1G.js +61 -0
  121. package/dist/dist-aRzjfSRN.js +35 -0
  122. package/dist/dist-iLBdeBDR.js +10658 -0
  123. package/dist/dist-us-RpCWN.js +47 -0
  124. package/dist/dist-wzMIGj-D.js +5 -0
  125. package/dist/emojiData-PQyVa4bU.js +17 -0
  126. package/dist/en-DXCyK4-X.js +207 -0
  127. package/dist/en-WDVp87TE.js +521 -0
  128. package/dist/extensions-CUcl9Ok4.js +799 -0
  129. package/dist/formatRelativeTime-BOEf47hq.js +12 -0
  130. package/dist/image-up-MBZKKg9p.js +23 -0
  131. package/dist/index.d.ts +275 -0
  132. package/dist/info-CJEC7piy.js +19 -0
  133. package/dist/keys-ciNfSSGj.js +10 -0
  134. package/dist/liquid.browser-CdMv1BTn.js +3277 -0
  135. package/dist/loader-circle-DsY5Yg33.js +7 -0
  136. package/dist/message-circle-yElBbR2C.js +7 -0
  137. package/dist/readableTextColor-CY3SiRnt.js +30 -0
  138. package/dist/refresh-cw-CE_AGtn8.js +29 -0
  139. package/dist/rolldown-runtime-BZGGJVDF.js +20 -0
  140. package/dist/scan-line-D0vcUekt.js +25 -0
  141. package/dist/send-DH4oDQqC.js +10 -0
  142. package/dist/shield-check-CfJgs2Hd.js +10 -0
  143. package/dist/sparkles-CvRXGqFs.js +23 -0
  144. package/dist/style.css +2 -0
  145. package/dist/styleConstants-fWzlIIwN.js +55 -0
  146. package/dist/styles-DEXEkBvg.js +3176 -0
  147. package/dist/templatical-editor.js +249 -0
  148. package/dist/text-align-start-BT9VUDxK.js +43 -0
  149. package/dist/timeouts-BSGxjuUF.js +4 -0
  150. package/dist/trash-2-DbP2Y6t2.js +25 -0
  151. package/dist/triangle-alert-aOXceTSe.js +17 -0
  152. package/dist/useCloudI18n-BuIwR6OE.js +23 -0
  153. package/dist/useEditorCore-C6ost42Q.js +9342 -0
  154. package/dist/useI18n-lb2DHDiu.js +17 -0
  155. package/dist/useMergeTag-CBwKnnNB.js +34 -0
  156. package/dist/vue.runtime.esm-bundler-DpvJL-nX.js +5775 -0
  157. package/dist/x-u2oVmjN_.js +10 -0
  158. package/package.json +1 -1
@@ -0,0 +1,776 @@
1
+ import { Gt as e, R as t, Ut as n, Y as r, b as i, bn as a, c as o, nt as s, q as c, xn as l } from "./dist-iLBdeBDR.js";
2
+ //#region ../../node_modules/.pnpm/linkifyjs@4.3.2/node_modules/linkifyjs/dist/linkify.mjs
3
+ var u = "aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4w0s2x0a2z0ure5ba0by2idu3namex4d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dad1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3nlop4pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2o0dyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3nd0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rckmsd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0axi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0stone5umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp3ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2olterskluwer11odside6rk0s2ld3w2s1tc1f3xbox3erox4ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2", d = "ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2", f = "numeric", p = "ascii", m = "alpha", h = "asciinumeric", g = "alphanumeric", _ = "domain", ee = "emoji", te = "scheme", v = "slashscheme", y = "whitespace";
4
+ function b(e, t) {
5
+ return e in t || (t[e] = []), t[e];
6
+ }
7
+ function x(e, t, n) {
8
+ t[f] && (t[h] = !0, t[g] = !0), t[p] && (t[h] = !0, t[m] = !0), t[h] && (t[g] = !0), t[m] && (t[g] = !0), t[g] && (t[_] = !0), t[ee] && (t[_] = !0);
9
+ for (let r in t) {
10
+ let t = b(r, n);
11
+ t.indexOf(e) < 0 && t.push(e);
12
+ }
13
+ }
14
+ function S(e, t) {
15
+ let n = {};
16
+ for (let r in t) t[r].indexOf(e) >= 0 && (n[r] = !0);
17
+ return n;
18
+ }
19
+ function C(e = null) {
20
+ this.j = {}, this.jr = [], this.jd = null, this.t = e;
21
+ }
22
+ C.groups = {}, C.prototype = {
23
+ accepts() {
24
+ return !!this.t;
25
+ },
26
+ go(e) {
27
+ let t = this, n = t.j[e];
28
+ if (n) return n;
29
+ for (let n = 0; n < t.jr.length; n++) {
30
+ let r = t.jr[n][0], i = t.jr[n][1];
31
+ if (i && r.test(e)) return i;
32
+ }
33
+ return t.jd;
34
+ },
35
+ has(e, t = !1) {
36
+ return t ? e in this.j : !!this.go(e);
37
+ },
38
+ ta(e, t, n, r) {
39
+ for (let i = 0; i < e.length; i++) this.tt(e[i], t, n, r);
40
+ },
41
+ tr(e, t, n, r) {
42
+ r ||= C.groups;
43
+ let i;
44
+ return t && t.j ? i = t : (i = new C(t), n && r && x(t, n, r)), this.jr.push([e, i]), i;
45
+ },
46
+ ts(e, t, n, r) {
47
+ let i = this, a = e.length;
48
+ if (!a) return i;
49
+ for (let t = 0; t < a - 1; t++) i = i.tt(e[t]);
50
+ return i.tt(e[a - 1], t, n, r);
51
+ },
52
+ tt(e, t, n, r) {
53
+ r ||= C.groups;
54
+ let i = this;
55
+ if (t && t.j) return i.j[e] = t, t;
56
+ let a = t, o, s = i.go(e);
57
+ return s ? (o = new C(), Object.assign(o.j, s.j), o.jr.push.apply(o.jr, s.jr), o.jd = s.jd, o.t = s.t) : o = new C(), a && (r && (o.t && typeof o.t == "string" ? x(a, Object.assign(S(o.t, r), n), r) : n && x(a, n, r)), o.t = a), i.j[e] = o, o;
58
+ }
59
+ };
60
+ var w = (e, t, n, r, i) => e.ta(t, n, r, i), T = (e, t, n, r, i) => e.tr(t, n, r, i), ne = (e, t, n, r, i) => e.ts(t, n, r, i), E = (e, t, n, r, i) => e.tt(t, n, r, i), D = "WORD", re = "UWORD", ie = "ASCIINUMERICAL", ae = "ALPHANUMERICAL", O = "LOCALHOST", oe = "TLD", se = "UTLD", ce = "SCHEME", k = "SLASH_SCHEME", le = "NUM", ue = "WS", de = "NL", A = "OPENBRACE", j = "CLOSEBRACE", M = "OPENBRACKET", fe = "CLOSEBRACKET", pe = "OPENPAREN", me = "CLOSEPAREN", he = "OPENANGLEBRACKET", ge = "CLOSEANGLEBRACKET", _e = "FULLWIDTHLEFTPAREN", N = "FULLWIDTHRIGHTPAREN", P = "LEFTCORNERBRACKET", F = "RIGHTCORNERBRACKET", I = "LEFTWHITECORNERBRACKET", ve = "RIGHTWHITECORNERBRACKET", ye = "FULLWIDTHLESSTHAN", be = "FULLWIDTHGREATERTHAN", xe = "AMPERSAND", Se = "APOSTROPHE", Ce = "ASTERISK", L = "AT", we = "BACKSLASH", Te = "BACKTICK", Ee = "CARET", R = "COLON", De = "COMMA", Oe = "DOLLAR", z = "DOT", ke = "EQUALS", Ae = "EXCLAMATION", B = "HYPHEN", V = "PERCENT", je = "PIPE", Me = "PLUS", Ne = "POUND", H = "QUERY", Pe = "QUOTE", Fe = "FULLWIDTHMIDDLEDOT", Ie = "SEMI", U = "SLASH", W = "TILDE", Le = "UNDERSCORE", Re = "EMOJI", ze = "SYM", Be = /* @__PURE__ */ Object.freeze({
61
+ __proto__: null,
62
+ ALPHANUMERICAL: ae,
63
+ AMPERSAND: xe,
64
+ APOSTROPHE: Se,
65
+ ASCIINUMERICAL: ie,
66
+ ASTERISK: Ce,
67
+ AT: L,
68
+ BACKSLASH: we,
69
+ BACKTICK: Te,
70
+ CARET: Ee,
71
+ CLOSEANGLEBRACKET: ge,
72
+ CLOSEBRACE: j,
73
+ CLOSEBRACKET: fe,
74
+ CLOSEPAREN: me,
75
+ COLON: R,
76
+ COMMA: De,
77
+ DOLLAR: Oe,
78
+ DOT: z,
79
+ EMOJI: Re,
80
+ EQUALS: ke,
81
+ EXCLAMATION: Ae,
82
+ FULLWIDTHGREATERTHAN: be,
83
+ FULLWIDTHLEFTPAREN: _e,
84
+ FULLWIDTHLESSTHAN: ye,
85
+ FULLWIDTHMIDDLEDOT: Fe,
86
+ FULLWIDTHRIGHTPAREN: N,
87
+ HYPHEN: B,
88
+ LEFTCORNERBRACKET: P,
89
+ LEFTWHITECORNERBRACKET: I,
90
+ LOCALHOST: O,
91
+ NL: de,
92
+ NUM: le,
93
+ OPENANGLEBRACKET: he,
94
+ OPENBRACE: A,
95
+ OPENBRACKET: M,
96
+ OPENPAREN: pe,
97
+ PERCENT: V,
98
+ PIPE: je,
99
+ PLUS: Me,
100
+ POUND: Ne,
101
+ QUERY: H,
102
+ QUOTE: Pe,
103
+ RIGHTCORNERBRACKET: F,
104
+ RIGHTWHITECORNERBRACKET: ve,
105
+ SCHEME: ce,
106
+ SEMI: Ie,
107
+ SLASH: U,
108
+ SLASH_SCHEME: k,
109
+ SYM: ze,
110
+ TILDE: W,
111
+ TLD: oe,
112
+ UNDERSCORE: Le,
113
+ UTLD: se,
114
+ UWORD: re,
115
+ WORD: D,
116
+ WS: ue
117
+ }), G = /[a-z]/, K = /\p{L}/u, Ve = /\p{Emoji}/u, q = /\d/, He = /\s/, Ue = "\r", We = "\n", Ge = "️", Ke = "‍", qe = "", Je = null, Ye = null;
118
+ function J(e = []) {
119
+ let t = {};
120
+ C.groups = t;
121
+ let n = new C();
122
+ Je ??= Qe(u), Ye ??= Qe(d), E(n, "'", Se), E(n, "{", A), E(n, "}", j), E(n, "[", M), E(n, "]", fe), E(n, "(", pe), E(n, ")", me), E(n, "<", he), E(n, ">", ge), E(n, "(", _e), E(n, ")", N), E(n, "「", P), E(n, "」", F), E(n, "『", I), E(n, "』", ve), E(n, "<", ye), E(n, ">", be), E(n, "&", xe), E(n, "*", Ce), E(n, "@", L), E(n, "`", Te), E(n, "^", Ee), E(n, ":", R), E(n, ",", De), E(n, "$", Oe), E(n, ".", z), E(n, "=", ke), E(n, "!", Ae), E(n, "-", B), E(n, "%", V), E(n, "|", je), E(n, "+", Me), E(n, "#", Ne), E(n, "?", H), E(n, "\"", Pe), E(n, "/", U), E(n, ";", Ie), E(n, "~", W), E(n, "_", Le), E(n, "\\", we), E(n, "・", Fe);
123
+ let r = T(n, q, le, { [f]: !0 });
124
+ T(r, q, r);
125
+ let i = T(r, G, ie, { [h]: !0 }), a = T(r, K, ae, { [g]: !0 }), o = T(n, G, D, { [p]: !0 });
126
+ T(o, q, i), T(o, G, o), T(i, q, i), T(i, G, i);
127
+ let s = T(n, K, re, { [m]: !0 });
128
+ T(s, G), T(s, q, a), T(s, K, s), T(a, q, a), T(a, G), T(a, K, a);
129
+ let c = E(n, We, de, { [y]: !0 }), l = E(n, Ue, ue, { [y]: !0 }), b = T(n, He, ue, { [y]: !0 });
130
+ E(n, qe, b), E(l, We, c), E(l, qe, b), T(l, He, b), E(b, Ue), E(b, We), T(b, He, b), E(b, qe, b);
131
+ let S = T(n, Ve, Re, { [ee]: !0 });
132
+ E(S, "#"), T(S, Ve, S), E(S, Ge, S);
133
+ let w = E(S, Ke);
134
+ E(w, "#"), T(w, Ve, S);
135
+ let J = [[G, o], [q, i]], Xe = [
136
+ [G, null],
137
+ [K, s],
138
+ [q, a]
139
+ ];
140
+ for (let e = 0; e < Je.length; e++) Y(n, Je[e], oe, D, J);
141
+ for (let e = 0; e < Ye.length; e++) Y(n, Ye[e], se, re, Xe);
142
+ x(oe, {
143
+ tld: !0,
144
+ ascii: !0
145
+ }, t), x(se, {
146
+ utld: !0,
147
+ alpha: !0
148
+ }, t), Y(n, "file", ce, D, J), Y(n, "mailto", ce, D, J), Y(n, "http", k, D, J), Y(n, "https", k, D, J), Y(n, "ftp", k, D, J), Y(n, "ftps", k, D, J), x(ce, {
149
+ scheme: !0,
150
+ ascii: !0
151
+ }, t), x(k, {
152
+ slashscheme: !0,
153
+ ascii: !0
154
+ }, t), e = e.sort((e, t) => e[0] > t[0] ? 1 : -1);
155
+ for (let t = 0; t < e.length; t++) {
156
+ let r = e[t][0], i = e[t][1] ? { [te]: !0 } : { [v]: !0 };
157
+ r.indexOf("-") >= 0 ? i[_] = !0 : G.test(r) ? q.test(r) ? i[h] = !0 : i[p] = !0 : i[f] = !0, ne(n, r, r, i);
158
+ }
159
+ return ne(n, "localhost", O, { ascii: !0 }), n.jd = new C(ze), {
160
+ start: n,
161
+ tokens: Object.assign({ groups: t }, Be)
162
+ };
163
+ }
164
+ function Xe(e, t) {
165
+ let n = Ze(t.replace(/[A-Z]/g, (e) => e.toLowerCase())), r = n.length, i = [], a = 0, o = 0;
166
+ for (; o < r;) {
167
+ let s = e, c = null, l = 0, u = null, d = -1, f = -1;
168
+ for (; o < r && (c = s.go(n[o]));) s = c, s.accepts() ? (d = 0, f = 0, u = s) : d >= 0 && (d += n[o].length, f++), l += n[o].length, a += n[o].length, o++;
169
+ a -= d, o -= f, l -= d, i.push({
170
+ t: u.t,
171
+ v: t.slice(a - l, a),
172
+ s: a - l,
173
+ e: a
174
+ });
175
+ }
176
+ return i;
177
+ }
178
+ function Ze(e) {
179
+ let t = [], n = e.length, r = 0;
180
+ for (; r < n;) {
181
+ let i = e.charCodeAt(r), a, o = i < 55296 || i > 56319 || r + 1 === n || (a = e.charCodeAt(r + 1)) < 56320 || a > 57343 ? e[r] : e.slice(r, r + 2);
182
+ t.push(o), r += o.length;
183
+ }
184
+ return t;
185
+ }
186
+ function Y(e, t, n, r, i) {
187
+ let a, o = t.length;
188
+ for (let n = 0; n < o - 1; n++) {
189
+ let o = t[n];
190
+ e.j[o] ? a = e.j[o] : (a = new C(r), a.jr = i.slice(), e.j[o] = a), e = a;
191
+ }
192
+ return a = new C(n), a.jr = i.slice(), e.j[t[o - 1]] = a, a;
193
+ }
194
+ function Qe(e) {
195
+ let t = [], n = [], r = 0;
196
+ for (; r < e.length;) {
197
+ let i = 0;
198
+ for (; "0123456789".indexOf(e[r + i]) >= 0;) i++;
199
+ if (i > 0) {
200
+ t.push(n.join(""));
201
+ for (let t = parseInt(e.substring(r, r + i), 10); t > 0; t--) n.pop();
202
+ r += i;
203
+ } else n.push(e[r]), r++;
204
+ }
205
+ return t;
206
+ }
207
+ var X = {
208
+ defaultProtocol: "http",
209
+ events: null,
210
+ format: et,
211
+ formatHref: et,
212
+ nl2br: !1,
213
+ tagName: "a",
214
+ target: null,
215
+ rel: null,
216
+ validate: !0,
217
+ truncate: Infinity,
218
+ className: null,
219
+ attributes: null,
220
+ ignoreTags: [],
221
+ render: null
222
+ };
223
+ function $e(e, t = null) {
224
+ let n = Object.assign({}, X);
225
+ e && (n = Object.assign(n, e instanceof $e ? e.o : e));
226
+ let r = n.ignoreTags, i = [];
227
+ for (let e = 0; e < r.length; e++) i.push(r[e].toUpperCase());
228
+ this.o = n, t && (this.defaultRender = t), this.ignoreTags = i;
229
+ }
230
+ $e.prototype = {
231
+ o: X,
232
+ ignoreTags: [],
233
+ defaultRender(e) {
234
+ return e;
235
+ },
236
+ check(e) {
237
+ return this.get("validate", e.toString(), e);
238
+ },
239
+ get(e, t, n) {
240
+ let r = t != null, i = this.o[e];
241
+ return i && (typeof i == "object" ? (i = n.t in i ? i[n.t] : X[e], typeof i == "function" && r && (i = i(t, n))) : typeof i == "function" && r && (i = i(t, n.t, n)), i);
242
+ },
243
+ getObj(e, t, n) {
244
+ let r = this.o[e];
245
+ return typeof r == "function" && t != null && (r = r(t, n.t, n)), r;
246
+ },
247
+ render(e) {
248
+ let t = e.render(this);
249
+ return (this.get("render", null, e) || this.defaultRender)(t, e.t, e);
250
+ }
251
+ };
252
+ function et(e) {
253
+ return e;
254
+ }
255
+ function tt(e, t) {
256
+ this.t = "token", this.v = e, this.tk = t;
257
+ }
258
+ tt.prototype = {
259
+ isLink: !1,
260
+ toString() {
261
+ return this.v;
262
+ },
263
+ toHref(e) {
264
+ return this.toString();
265
+ },
266
+ toFormattedString(e) {
267
+ let t = this.toString(), n = e.get("truncate", t, this), r = e.get("format", t, this);
268
+ return n && r.length > n ? r.substring(0, n) + "…" : r;
269
+ },
270
+ toFormattedHref(e) {
271
+ return e.get("formatHref", this.toHref(e.get("defaultProtocol")), this);
272
+ },
273
+ startIndex() {
274
+ return this.tk[0].s;
275
+ },
276
+ endIndex() {
277
+ return this.tk[this.tk.length - 1].e;
278
+ },
279
+ toObject(e = X.defaultProtocol) {
280
+ return {
281
+ type: this.t,
282
+ value: this.toString(),
283
+ isLink: this.isLink,
284
+ href: this.toHref(e),
285
+ start: this.startIndex(),
286
+ end: this.endIndex()
287
+ };
288
+ },
289
+ toFormattedObject(e) {
290
+ return {
291
+ type: this.t,
292
+ value: this.toFormattedString(e),
293
+ isLink: this.isLink,
294
+ href: this.toFormattedHref(e),
295
+ start: this.startIndex(),
296
+ end: this.endIndex()
297
+ };
298
+ },
299
+ validate(e) {
300
+ return e.get("validate", this.toString(), this);
301
+ },
302
+ render(e) {
303
+ let t = this, n = this.toHref(e.get("defaultProtocol")), r = e.get("formatHref", n, this), i = e.get("tagName", n, t), a = this.toFormattedString(e), o = {}, s = e.get("className", n, t), c = e.get("target", n, t), l = e.get("rel", n, t), u = e.getObj("attributes", n, t), d = e.getObj("events", n, t);
304
+ return o.href = r, s && (o.class = s), c && (o.target = c), l && (o.rel = l), u && Object.assign(o, u), {
305
+ tagName: i,
306
+ attributes: o,
307
+ content: a,
308
+ eventListeners: d
309
+ };
310
+ }
311
+ };
312
+ function nt(e, t) {
313
+ class n extends tt {
314
+ constructor(t, n) {
315
+ super(t, n), this.t = e;
316
+ }
317
+ }
318
+ for (let e in t) n.prototype[e] = t[e];
319
+ return n.t = e, n;
320
+ }
321
+ var rt = nt("email", {
322
+ isLink: !0,
323
+ toHref() {
324
+ return "mailto:" + this.toString();
325
+ }
326
+ }), it = nt("text"), at = nt("nl"), ot = nt("url", {
327
+ isLink: !0,
328
+ toHref(e = X.defaultProtocol) {
329
+ return this.hasProtocol() ? this.v : `${e}://${this.v}`;
330
+ },
331
+ hasProtocol() {
332
+ let e = this.tk;
333
+ return e.length >= 2 && e[0].t !== O && e[1].t === R;
334
+ }
335
+ }), Z = (e) => new C(e);
336
+ function st({ groups: e }) {
337
+ let t = e.domain.concat([
338
+ xe,
339
+ Ce,
340
+ L,
341
+ we,
342
+ Te,
343
+ Ee,
344
+ Oe,
345
+ ke,
346
+ B,
347
+ le,
348
+ V,
349
+ je,
350
+ Me,
351
+ Ne,
352
+ U,
353
+ ze,
354
+ W,
355
+ Le
356
+ ]), n = [
357
+ Se,
358
+ R,
359
+ De,
360
+ z,
361
+ Ae,
362
+ V,
363
+ H,
364
+ Pe,
365
+ Ie,
366
+ he,
367
+ ge,
368
+ A,
369
+ j,
370
+ fe,
371
+ M,
372
+ pe,
373
+ me,
374
+ _e,
375
+ N,
376
+ P,
377
+ F,
378
+ I,
379
+ ve,
380
+ ye,
381
+ be
382
+ ], r = [
383
+ xe,
384
+ Se,
385
+ Ce,
386
+ we,
387
+ Te,
388
+ Ee,
389
+ Oe,
390
+ ke,
391
+ B,
392
+ A,
393
+ j,
394
+ V,
395
+ je,
396
+ Me,
397
+ Ne,
398
+ H,
399
+ U,
400
+ ze,
401
+ W,
402
+ Le
403
+ ], i = Z(), a = E(i, W);
404
+ w(a, r, a), w(a, e.domain, a);
405
+ let o = Z(), s = Z(), c = Z();
406
+ w(i, e.domain, o), w(i, e.scheme, s), w(i, e.slashscheme, c), w(o, r, a), w(o, e.domain, o);
407
+ let l = E(o, L);
408
+ E(a, L, l), E(s, L, l), E(c, L, l);
409
+ let u = E(a, z);
410
+ w(u, r, a), w(u, e.domain, a);
411
+ let d = Z();
412
+ w(l, e.domain, d), w(d, e.domain, d);
413
+ let f = E(d, z);
414
+ w(f, e.domain, d);
415
+ let p = Z(rt);
416
+ w(f, e.tld, p), w(f, e.utld, p), E(l, O, p);
417
+ let m = E(d, B);
418
+ E(m, B, m), w(m, e.domain, d), w(p, e.domain, d), E(p, z, f), E(p, B, m), w(E(p, R), e.numeric, rt);
419
+ let h = E(o, B), g = E(o, z);
420
+ E(h, B, h), w(h, e.domain, o), w(g, r, a), w(g, e.domain, o);
421
+ let _ = Z(ot);
422
+ w(g, e.tld, _), w(g, e.utld, _), w(_, e.domain, o), w(_, r, a), E(_, z, g), E(_, B, h), E(_, L, l);
423
+ let ee = E(_, R), te = Z(ot);
424
+ w(ee, e.numeric, te);
425
+ let v = Z(ot), y = Z();
426
+ w(v, t, v), w(v, n, y), w(y, t, v), w(y, n, y), E(_, U, v), E(te, U, v);
427
+ let b = E(s, R), x = E(E(E(c, R), U), U);
428
+ w(s, e.domain, o), E(s, z, g), E(s, B, h), w(c, e.domain, o), E(c, z, g), E(c, B, h), w(b, e.domain, v), E(b, U, v), E(b, H, v), w(x, e.domain, v), w(x, t, v), E(x, U, v);
429
+ let S = [
430
+ [A, j],
431
+ [M, fe],
432
+ [pe, me],
433
+ [he, ge],
434
+ [_e, N],
435
+ [P, F],
436
+ [I, ve],
437
+ [ye, be]
438
+ ];
439
+ for (let e = 0; e < S.length; e++) {
440
+ let [r, i] = S[e], a = E(v, r);
441
+ E(y, r, a), E(a, i, v);
442
+ let o = Z(ot);
443
+ w(a, t, o);
444
+ let s = Z();
445
+ w(a, n), w(o, t, o), w(o, n, s), w(s, t, o), w(s, n, s), E(o, i, v), E(s, i, v);
446
+ }
447
+ return E(i, O, _), E(i, de, at), {
448
+ start: i,
449
+ tokens: Be
450
+ };
451
+ }
452
+ function ct(e, t, n) {
453
+ let r = n.length, i = 0, a = [], o = [];
454
+ for (; i < r;) {
455
+ let s = e, c = null, l = null, u = 0, d = null, f = -1;
456
+ for (; i < r && !(c = s.go(n[i].t));) o.push(n[i++]);
457
+ for (; i < r && (l = c || s.go(n[i].t));) c = null, s = l, s.accepts() ? (f = 0, d = s) : f >= 0 && f++, i++, u++;
458
+ if (f < 0) i -= u, i < r && (o.push(n[i]), i++);
459
+ else {
460
+ o.length > 0 && (a.push(lt(it, t, o)), o = []), i -= f, u -= f;
461
+ let e = d.t, r = n.slice(i - u, i);
462
+ a.push(lt(e, t, r));
463
+ }
464
+ }
465
+ return o.length > 0 && a.push(lt(it, t, o)), a;
466
+ }
467
+ function lt(e, t, n) {
468
+ let r = n[0].s, i = n[n.length - 1].e;
469
+ return new e(t.slice(r, i), n);
470
+ }
471
+ var ut = typeof console < "u" && console && console.warn || (() => {}), dt = "until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.", Q = {
472
+ scanner: null,
473
+ parser: null,
474
+ tokenQueue: [],
475
+ pluginQueue: [],
476
+ customSchemes: [],
477
+ initialized: !1
478
+ };
479
+ function ft() {
480
+ return C.groups = {}, Q.scanner = null, Q.parser = null, Q.tokenQueue = [], Q.pluginQueue = [], Q.customSchemes = [], Q.initialized = !1, Q;
481
+ }
482
+ function pt(e, t = !1) {
483
+ if (Q.initialized && ut(`linkifyjs: already initialized - will not register custom scheme "${e}" ${dt}`), !/^[0-9a-z]+(-[0-9a-z]+)*$/.test(e)) throw Error("linkifyjs: incorrect scheme format.\n1. Must only contain digits, lowercase ASCII letters or \"-\"\n2. Cannot start or end with \"-\"\n3. \"-\" cannot repeat");
484
+ Q.customSchemes.push([e, t]);
485
+ }
486
+ function mt() {
487
+ Q.scanner = J(Q.customSchemes);
488
+ for (let e = 0; e < Q.tokenQueue.length; e++) Q.tokenQueue[e][1]({ scanner: Q.scanner });
489
+ Q.parser = st(Q.scanner.tokens);
490
+ for (let e = 0; e < Q.pluginQueue.length; e++) Q.pluginQueue[e][1]({
491
+ scanner: Q.scanner,
492
+ parser: Q.parser
493
+ });
494
+ return Q.initialized = !0, Q;
495
+ }
496
+ function ht(e) {
497
+ return Q.initialized || mt(), ct(Q.parser.start, e, Xe(Q.scanner.start, e));
498
+ }
499
+ ht.scan = Xe;
500
+ function gt(e, t = null, n = null) {
501
+ if (t && typeof t == "object") {
502
+ if (n) throw Error(`linkifyjs: Invalid link type ${t}; must be a string`);
503
+ n = t, t = null;
504
+ }
505
+ let r = new $e(n), i = ht(e), a = [];
506
+ for (let e = 0; e < i.length; e++) {
507
+ let n = i[e];
508
+ n.isLink && (!t || n.t === t) && r.check(n) && a.push(n.toFormattedObject(r));
509
+ }
510
+ return a;
511
+ }
512
+ //#endregion
513
+ //#region ../../node_modules/.pnpm/@tiptap+extension-link@3.22.5_@tiptap+core@3.22.5_@tiptap+pm@3.22.5__@tiptap+pm@3.22.5/node_modules/@tiptap/extension-link/dist/index.js
514
+ var _t = "[\0- \xA0 ᠎ -\u2029  ]", vt = new RegExp(_t), yt = RegExp(`${_t}$`), bt = new RegExp(_t, "g");
515
+ function xt(e) {
516
+ return e.length === 1 ? e[0].isLink : e.length === 3 && e[1].isLink ? ["()", "[]"].includes(e[0].value + e[2].value) : !1;
517
+ }
518
+ function St(e) {
519
+ return new a({
520
+ key: new l("autolink"),
521
+ appendTransaction: (n, a, o) => {
522
+ let c = n.some((e) => e.docChanged) && !a.doc.eq(o.doc), l = n.some((e) => e.getMeta("preventAutolink"));
523
+ if (!c || l) return;
524
+ let { tr: u } = o;
525
+ if (r(i(a.doc, [...n])).forEach(({ newRange: n }) => {
526
+ let r = t(o.doc, n, (e) => e.isTextblock), i, a;
527
+ if (r.length > 1) i = r[0], a = o.doc.textBetween(i.pos, i.pos + i.node.nodeSize, void 0, " ");
528
+ else if (r.length) {
529
+ let e = o.doc.textBetween(n.from, n.to, " ", " ");
530
+ if (!yt.test(e)) return;
531
+ i = r[0], a = o.doc.textBetween(i.pos, n.to, void 0, " ");
532
+ }
533
+ if (i && a) {
534
+ let t = a.split(vt).filter(Boolean);
535
+ if (t.length <= 0) return !1;
536
+ let n = t[t.length - 1], r = i.pos + a.lastIndexOf(n);
537
+ if (!n) return !1;
538
+ let c = ht(n).map((t) => t.toObject(e.defaultProtocol));
539
+ if (!xt(c)) return !1;
540
+ c.filter((e) => e.isLink).map((e) => ({
541
+ ...e,
542
+ from: r + e.start + 1,
543
+ to: r + e.end + 1
544
+ })).filter((e) => o.schema.marks.code ? !o.doc.rangeHasMark(e.from, e.to, o.schema.marks.code) : !0).filter((t) => e.validate(t.value)).filter((t) => e.shouldAutoLink(t.value)).forEach((t) => {
545
+ s(t.from, t.to, o.doc).some((t) => t.mark.type === e.type) || u.addMark(t.from, t.to, e.type.create({ href: t.href }));
546
+ });
547
+ }
548
+ }), u.steps.length) return u;
549
+ }
550
+ });
551
+ }
552
+ function Ct(e) {
553
+ return new a({
554
+ key: new l("handleClickLink"),
555
+ props: { handleClick: (t, n, r) => {
556
+ if (r.button !== 0 || !t.editable) return !1;
557
+ let i = null;
558
+ if (r.target instanceof HTMLAnchorElement) i = r.target;
559
+ else {
560
+ let t = r.target;
561
+ if (!t) return !1;
562
+ let n = e.editor.view.dom;
563
+ i = t.closest("a"), i && !n.contains(i) && (i = null);
564
+ }
565
+ if (!i) return !1;
566
+ let a = !1;
567
+ if (e.enableClickSelection && (a = e.editor.commands.extendMarkRange(e.type.name)), e.openOnClick) {
568
+ let n = c(t.state, e.type.name), r = i.href ?? n.href, o = i.target ?? n.target;
569
+ r && (window.open(r, o), a = !0);
570
+ }
571
+ return a;
572
+ } }
573
+ });
574
+ }
575
+ function wt(e) {
576
+ return new a({
577
+ key: new l("handlePasteLink"),
578
+ props: { handlePaste: (t, n, r) => {
579
+ let { shouldAutoLink: i } = e, { state: a } = t, { selection: o } = a, { empty: s } = o;
580
+ if (s) return !1;
581
+ let c = "";
582
+ r.content.forEach((e) => {
583
+ c += e.textContent;
584
+ });
585
+ let l = gt(c, { defaultProtocol: e.defaultProtocol }).find((e) => e.isLink && e.value === c);
586
+ return !c || !l || i !== void 0 && !i(l.value) ? !1 : e.editor.commands.setMark(e.type, { href: l.href });
587
+ } }
588
+ });
589
+ }
590
+ var Tt = /https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z]{2,}\b(?:[-a-zA-Z0-9@:%._+~#=?!&/]*)(?:[-a-zA-Z0-9@:%._+~#=?!&/]*)/gi;
591
+ function $(e, t) {
592
+ let n = [
593
+ "http",
594
+ "https",
595
+ "ftp",
596
+ "ftps",
597
+ "mailto",
598
+ "tel",
599
+ "callto",
600
+ "sms",
601
+ "cid",
602
+ "xmpp"
603
+ ];
604
+ return t && t.forEach((e) => {
605
+ let t = typeof e == "string" ? e : e.scheme;
606
+ t && n.push(t);
607
+ }), !e || e.replace(bt, "").match(RegExp(`^(?:(?:${n.join("|")}):|[^a-z]|[a-z0-9+.-]+(?:[^a-z+.-:]|$))`, "i"));
608
+ }
609
+ var Et = o.create({
610
+ name: "link",
611
+ priority: 1e3,
612
+ keepOnSplit: !1,
613
+ exitable: !0,
614
+ onCreate() {
615
+ this.options.validate && !this.options.shouldAutoLink && (this.options.shouldAutoLink = this.options.validate, console.warn("The `validate` option is deprecated. Rename to the `shouldAutoLink` option instead.")), this.options.protocols.forEach((e) => {
616
+ if (typeof e == "string") {
617
+ pt(e);
618
+ return;
619
+ }
620
+ pt(e.scheme, e.optionalSlashes);
621
+ });
622
+ },
623
+ onDestroy() {
624
+ ft();
625
+ },
626
+ inclusive() {
627
+ return this.options.autolink;
628
+ },
629
+ addOptions() {
630
+ return {
631
+ openOnClick: !0,
632
+ enableClickSelection: !1,
633
+ linkOnPaste: !0,
634
+ autolink: !0,
635
+ protocols: [],
636
+ defaultProtocol: "http",
637
+ HTMLAttributes: {
638
+ target: "_blank",
639
+ rel: "noopener noreferrer nofollow",
640
+ class: null
641
+ },
642
+ isAllowedUri: (e, t) => !!$(e, t.protocols),
643
+ validate: (e) => !!e,
644
+ shouldAutoLink: (e) => {
645
+ let t = /^[a-z][a-z0-9+.-]*:\/\//i.test(e), n = /^[a-z][a-z0-9+.-]*:/i.test(e);
646
+ if (t || n && !e.includes("@")) return !0;
647
+ let r = (e.includes("@") ? e.split("@").pop() : e).split(/[/?#:]/)[0];
648
+ return !(/^\d{1,3}(\.\d{1,3}){3}$/.test(r) || !/\./.test(r));
649
+ }
650
+ };
651
+ },
652
+ addAttributes() {
653
+ return {
654
+ href: {
655
+ default: null,
656
+ parseHTML(e) {
657
+ return e.getAttribute("href");
658
+ }
659
+ },
660
+ target: { default: this.options.HTMLAttributes.target },
661
+ rel: { default: this.options.HTMLAttributes.rel },
662
+ class: { default: this.options.HTMLAttributes.class },
663
+ title: { default: null }
664
+ };
665
+ },
666
+ parseHTML() {
667
+ return [{
668
+ tag: "a[href]",
669
+ getAttrs: (e) => {
670
+ let t = e.getAttribute("href");
671
+ return !t || !this.options.isAllowedUri(t, {
672
+ defaultValidate: (e) => !!$(e, this.options.protocols),
673
+ protocols: this.options.protocols,
674
+ defaultProtocol: this.options.defaultProtocol
675
+ }) ? !1 : null;
676
+ }
677
+ }];
678
+ },
679
+ renderHTML({ HTMLAttributes: t }) {
680
+ return this.options.isAllowedUri(t.href, {
681
+ defaultValidate: (e) => !!$(e, this.options.protocols),
682
+ protocols: this.options.protocols,
683
+ defaultProtocol: this.options.defaultProtocol
684
+ }) ? [
685
+ "a",
686
+ e(this.options.HTMLAttributes, t),
687
+ 0
688
+ ] : [
689
+ "a",
690
+ e(this.options.HTMLAttributes, {
691
+ ...t,
692
+ href: ""
693
+ }),
694
+ 0
695
+ ];
696
+ },
697
+ markdownTokenName: "link",
698
+ parseMarkdown: (e, t) => t.applyMark("link", t.parseInline(e.tokens || []), {
699
+ href: e.href,
700
+ title: e.title || null
701
+ }),
702
+ renderMarkdown: (e, t) => {
703
+ let n = e.attrs?.href ?? "", r = e.attrs?.title ?? "", i = t.renderChildren(e);
704
+ return r ? `[${i}](${n} "${r}")` : `[${i}](${n})`;
705
+ },
706
+ addCommands() {
707
+ return {
708
+ setLink: (e) => ({ chain: t }) => {
709
+ let { href: n } = e;
710
+ return this.options.isAllowedUri(n, {
711
+ defaultValidate: (e) => !!$(e, this.options.protocols),
712
+ protocols: this.options.protocols,
713
+ defaultProtocol: this.options.defaultProtocol
714
+ }) ? t().setMark(this.name, e).setMeta("preventAutolink", !0).run() : !1;
715
+ },
716
+ toggleLink: (e) => ({ chain: t }) => {
717
+ let { href: n } = e || {};
718
+ return n && !this.options.isAllowedUri(n, {
719
+ defaultValidate: (e) => !!$(e, this.options.protocols),
720
+ protocols: this.options.protocols,
721
+ defaultProtocol: this.options.defaultProtocol
722
+ }) ? !1 : t().toggleMark(this.name, e, { extendEmptyMarkRange: !0 }).setMeta("preventAutolink", !0).run();
723
+ },
724
+ unsetLink: () => ({ chain: e }) => e().unsetMark(this.name, { extendEmptyMarkRange: !0 }).setMeta("preventAutolink", !0).run()
725
+ };
726
+ },
727
+ addPasteRules() {
728
+ return [n({
729
+ find: (e) => {
730
+ let t = [];
731
+ if (e) {
732
+ let { protocols: n, defaultProtocol: r } = this.options, i = gt(e).filter((e) => e.isLink && this.options.isAllowedUri(e.value, {
733
+ defaultValidate: (e) => !!$(e, n),
734
+ protocols: n,
735
+ defaultProtocol: r
736
+ }));
737
+ i.length && i.forEach((e) => {
738
+ this.options.shouldAutoLink(e.value) && t.push({
739
+ text: e.value,
740
+ data: { href: e.href },
741
+ index: e.start
742
+ });
743
+ });
744
+ }
745
+ return t;
746
+ },
747
+ type: this.type,
748
+ getAttributes: (e) => ({ href: e.data?.href })
749
+ })];
750
+ },
751
+ addProseMirrorPlugins() {
752
+ let e = [], { protocols: t, defaultProtocol: n } = this.options;
753
+ return this.options.autolink && e.push(St({
754
+ type: this.type,
755
+ defaultProtocol: this.options.defaultProtocol,
756
+ validate: (e) => this.options.isAllowedUri(e, {
757
+ defaultValidate: (e) => !!$(e, t),
758
+ protocols: t,
759
+ defaultProtocol: n
760
+ }),
761
+ shouldAutoLink: this.options.shouldAutoLink
762
+ })), e.push(Ct({
763
+ type: this.type,
764
+ editor: this.editor,
765
+ openOnClick: this.options.openOnClick === "whenNotEditable" ? !0 : this.options.openOnClick,
766
+ enableClickSelection: this.options.enableClickSelection
767
+ })), this.options.linkOnPaste && e.push(wt({
768
+ editor: this.editor,
769
+ defaultProtocol: this.options.defaultProtocol,
770
+ type: this.type,
771
+ shouldAutoLink: this.options.shouldAutoLink
772
+ })), e;
773
+ }
774
+ }), Dt = Et;
775
+ //#endregion
776
+ export { Et as Link, Dt as default, $ as isAllowedUri, Tt as pasteRegex };