@uva-glass/component-library 1.59.1 → 1.59.3

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 (43) hide show
  1. package/dist/{Lexical.prod-CO0gPAfo.js → Lexical.prod-BhH9TCLN.js} +952 -944
  2. package/dist/Lexical.prod-BhH9TCLN.js.map +1 -0
  3. package/dist/{LexicalList.prod-BceA-cJD.js → LexicalList.prod-Czb3Osbz.js} +25 -23
  4. package/dist/LexicalList.prod-Czb3Osbz.js.map +1 -0
  5. package/dist/{LexicalUtils.prod-PbdOb6JG.js → LexicalUtils.prod-Bsuvahba.js} +20 -20
  6. package/dist/{LexicalUtils.prod-PbdOb6JG.js.map → LexicalUtils.prod-Bsuvahba.js.map} +1 -1
  7. package/dist/{TablePlugin-Cj6IBz2k.js → TablePlugin-deK-rcE1.js} +32 -32
  8. package/dist/{TablePlugin-Cj6IBz2k.js.map → TablePlugin-deK-rcE1.js.map} +1 -1
  9. package/dist/assets/Periods.css +1 -1
  10. package/dist/components/CheckboxTree/CheckboxTree.js +1 -1
  11. package/dist/components/InputField/InputField.stories.js +1 -1
  12. package/dist/components/MultiSelect/MultiSelect.js +1 -1
  13. package/dist/components/MultiSelect/MultiSelect.stories.js +1 -1
  14. package/dist/components/MultiSelect/components/MultiSelectHeader.js +1 -1
  15. package/dist/components/MultiSelect/index.js +1 -1
  16. package/dist/components/Periods/Periods.js +28 -25
  17. package/dist/components/Periods/Periods.js.map +1 -1
  18. package/dist/components/ProgrammeCard/ProgrammeCard.stories.js +1 -1
  19. package/dist/components/RteEditor/EditorHeader/EditorHeader.js +1 -1
  20. package/dist/components/RteEditor/Plugins/BlockFormatPlugin/BlockFormatPlugin.js +1 -1
  21. package/dist/components/RteEditor/Plugins/HistoryPlugin/HistoryPlugin.js +2 -2
  22. package/dist/components/RteEditor/Plugins/LinkPlugin/AddLinkFrom.js +2 -2
  23. package/dist/components/RteEditor/Plugins/LinkPlugin/LinkPlugin.js +11 -11
  24. package/dist/components/RteEditor/Plugins/LinkPlugin/helpers.js +2 -2
  25. package/dist/components/RteEditor/Plugins/ListPlugin/ListPlugin.js +1 -1
  26. package/dist/components/RteEditor/Plugins/TablePlugin/AddTableFrom.js +1 -1
  27. package/dist/components/RteEditor/Plugins/TablePlugin/TablePlugin.js +3 -3
  28. package/dist/components/RteEditor/Plugins/TablePlugin/helpers.js +1 -1
  29. package/dist/components/RteEditor/Plugins/TablePlugin/index.js +1 -1
  30. package/dist/components/RteEditor/Plugins/ToolbarPlugin/ToolbarPlugin.js +25 -25
  31. package/dist/components/RteEditor/Plugins/index.js +1 -1
  32. package/dist/components/RteEditor/RteEditor.js +505 -505
  33. package/dist/components/RteEditor/RteEditor.js.map +1 -1
  34. package/dist/components/index.js +1 -1
  35. package/dist/{helpers-Ec7CfNnA.js → helpers-BRIyyVa6.js} +23 -23
  36. package/dist/{helpers-Ec7CfNnA.js.map → helpers-BRIyyVa6.js.map} +1 -1
  37. package/dist/{helpers-BewZrn6E.js → helpers-CaU5T9i-.js} +462 -423
  38. package/dist/helpers-CaU5T9i-.js.map +1 -0
  39. package/dist/index.js +1 -1
  40. package/package.json +9 -9
  41. package/dist/Lexical.prod-CO0gPAfo.js.map +0 -1
  42. package/dist/LexicalList.prod-BceA-cJD.js.map +0 -1
  43. package/dist/helpers-BewZrn6E.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"helpers-Ec7CfNnA.js","sources":["../node_modules/@lexical/link/LexicalLink.prod.mjs","../node_modules/@lexical/react/LexicalAutoLinkPlugin.prod.mjs","../src/components/RteEditor/Plugins/LinkPlugin/helpers.ts"],"sourcesContent":["/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport{addClassNamesToElement as t,isHTMLAnchorElement as e,$findMatchingParent as r}from\"@lexical/utils\";import{createCommand as i,ElementNode as n,$isRangeSelection as l,$applyNodeReplacement as s,$isElementNode as u,$getSelection as _}from\"lexical\";const o=new Set([\"http:\",\"https:\",\"mailto:\",\"sms:\",\"tel:\"]);class a extends n{static getType(){return\"link\"}static clone(t){return new a(t.__url,{rel:t.__rel,target:t.__target,title:t.__title},t.__key)}constructor(t,e={},r){super(r);const{target:i=null,rel:n=null,title:l=null}=e;this.__url=t,this.__target=i,this.__rel=n,this.__title=l}createDOM(e){const r=document.createElement(\"a\");return r.href=this.sanitizeUrl(this.__url),null!==this.__target&&(r.target=this.__target),null!==this.__rel&&(r.rel=this.__rel),null!==this.__title&&(r.title=this.__title),t(r,e.theme.link),r}updateDOM(t,e,r){if(e instanceof HTMLAnchorElement){const r=this.__url,i=this.__target,n=this.__rel,l=this.__title;r!==t.__url&&(e.href=r),i!==t.__target&&(i?e.target=i:e.removeAttribute(\"target\")),n!==t.__rel&&(n?e.rel=n:e.removeAttribute(\"rel\")),l!==t.__title&&(l?e.title=l:e.removeAttribute(\"title\"))}return!1}static importDOM(){return{a:t=>({conversion:h,priority:1})}}static importJSON(t){const e=c(t.url,{rel:t.rel,target:t.target,title:t.title});return e.setFormat(t.format),e.setIndent(t.indent),e.setDirection(t.direction),e}sanitizeUrl(t){try{const e=new URL(t);if(!o.has(e.protocol))return\"about:blank\"}catch(e){return t}return t}exportJSON(){return{...super.exportJSON(),rel:this.getRel(),target:this.getTarget(),title:this.getTitle(),type:\"link\",url:this.getURL(),version:1}}getURL(){return this.getLatest().__url}setURL(t){this.getWritable().__url=t}getTarget(){return this.getLatest().__target}setTarget(t){this.getWritable().__target=t}getRel(){return this.getLatest().__rel}setRel(t){this.getWritable().__rel=t}getTitle(){return this.getLatest().__title}setTitle(t){this.getWritable().__title=t}insertNewAfter(t,e=!0){const r=c(this.__url,{rel:this.__rel,target:this.__target,title:this.__title});return this.insertAfter(r,e),r}canInsertTextBefore(){return!1}canInsertTextAfter(){return!1}canBeEmpty(){return!1}isInline(){return!0}extractWithChild(t,e,r){if(!l(e))return!1;const i=e.anchor.getNode(),n=e.focus.getNode();return this.isParentOf(i)&&this.isParentOf(n)&&e.getTextContent().length>0}isEmailURI(){return this.__url.startsWith(\"mailto:\")}isWebSiteURI(){return this.__url.startsWith(\"https://\")||this.__url.startsWith(\"http://\")}}function h(t){let r=null;if(e(t)){const e=t.textContent;(null!==e&&\"\"!==e||t.children.length>0)&&(r=c(t.getAttribute(\"href\")||\"\",{rel:t.getAttribute(\"rel\"),target:t.getAttribute(\"target\"),title:t.getAttribute(\"title\")}))}return{node:r}}function c(t,e){return s(new a(t,e))}function g(t){return t instanceof a}class f extends a{constructor(t,e={},r){super(t,e,r),this.__isUnlinked=void 0!==e.isUnlinked&&null!==e.isUnlinked&&e.isUnlinked}static getType(){return\"autolink\"}static clone(t){return new f(t.__url,{isUnlinked:t.__isUnlinked,rel:t.__rel,target:t.__target,title:t.__title},t.__key)}getIsUnlinked(){return this.__isUnlinked}setIsUnlinked(t){const e=this.getWritable();return e.__isUnlinked=t,e}createDOM(t){return this.__isUnlinked?document.createElement(\"span\"):super.createDOM(t)}updateDOM(t,e,r){return super.updateDOM(t,e,r)||t.__isUnlinked!==this.__isUnlinked}static importJSON(t){const e=d(t.url,{isUnlinked:t.isUnlinked,rel:t.rel,target:t.target,title:t.title});return e.setFormat(t.format),e.setIndent(t.indent),e.setDirection(t.direction),e}static importDOM(){return null}exportJSON(){return{...super.exportJSON(),isUnlinked:this.__isUnlinked,type:\"autolink\",version:1}}insertNewAfter(t,e=!0){const r=this.getParentOrThrow().insertNewAfter(t,e);if(u(r)){const t=d(this.__url,{isUnlinked:this.__isUnlinked,rel:this.__rel,target:this.__target,title:this.__title});return r.append(t),t}return null}}function d(t,e){return s(new f(t,e))}function p(t){return t instanceof f}const U=i(\"TOGGLE_LINK_COMMAND\");function m(t,e={}){const{target:i,title:n}=e,s=void 0===e.rel?\"noreferrer\":e.rel,o=_();if(!l(o))return;const a=o.extract();if(null===t)a.forEach((t=>{const e=r(t,(t=>!p(t)&&g(t)));if(e){const t=e.getChildren();for(let r=0;r<t.length;r++)e.insertBefore(t[r]);e.remove()}}));else{if(1===a.length){const e=function(t,e){let r=t;for(;null!==r&&null!==r.getParent()&&!e(r);)r=r.getParentOrThrow();return e(r)?r:null}(a[0],g);if(null!==e)return e.setURL(t),void 0!==i&&e.setTarget(i),null!==s&&e.setRel(s),void(void 0!==n&&e.setTitle(n))}let e=null,r=null;a.forEach((l=>{const _=l.getParent();if(_!==r&&null!==_&&(!u(l)||l.isInline())){if(g(_))return r=_,_.setURL(t),void 0!==i&&_.setTarget(i),null!==s&&r.setRel(s),void(void 0!==n&&r.setTitle(n));if(_.is(e)||(e=_,r=c(t,{rel:s,target:i,title:n}),g(_)?null===l.getPreviousSibling()?_.insertBefore(r):_.insertAfter(r):l.insertBefore(r)),g(l)){if(l.is(r))return;if(null!==r){const t=l.getChildren();for(let e=0;e<t.length;e++)r.append(t[e])}l.remove()}else null!==r&&r.append(l)}}))}}const k=m;export{d as $createAutoLinkNode,c as $createLinkNode,p as $isAutoLinkNode,g as $isLinkNode,m as $toggleLink,f as AutoLinkNode,a as LinkNode,U as TOGGLE_LINK_COMMAND,k as toggleLink};\n","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport{AutoLinkNode as t,$isAutoLinkNode as e,$isLinkNode as n,TOGGLE_LINK_COMMAND as r,$createAutoLinkNode as l}from\"@lexical/link\";import{useLexicalComposerContext as o}from\"@lexical/react/LexicalComposerContext\";import{mergeRegister as i}from\"@lexical/utils\";import{TextNode as s,$getSelection as u,$isRangeSelection as g,COMMAND_PRIORITY_LOW as c,$isTextNode as a,$isElementNode as f,$isLineBreakNode as h,$createTextNode as x,$isNodeSelection as p}from\"lexical\";import{useEffect as d}from\"react\";function m(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,\"default\")?t.default:t}var T=m((function(t){const e=new URLSearchParams;e.append(\"code\",t);for(let t=1;t<arguments.length;t++)e.append(\"v\",arguments[t]);throw Error(`Minified Lexical error #${t}; visit https://lexical.dev/docs/error?${e} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}));function C(t,e=(t=>t)){return n=>{const r=t.exec(n);return null===r?null:{index:r.index,length:r[0].length,text:r[0],url:e(r[0])}}}function b(t,e){for(let n=0;n<e.length;n++){const r=e[n](t);if(r)return r}return null}const v=/[.,;\\s]/;function S(t){return v.test(t)}function U(t){return S(t[t.length-1])}function L(t){return S(t[0])}function R(t){let e=t.getPreviousSibling();return f(e)&&(e=e.getLastDescendant()),null===e||h(e)||a(e)&&U(e.getTextContent())}function k(t){let e=t.getNextSibling();return f(e)&&(e=e.getFirstDescendant()),null===e||h(e)||a(e)&&L(e.getTextContent())}function y(t,e,n,r){if(!(t>0?S(n[t-1]):R(r[0])))return!1;return e<n.length?S(n[e]):k(r[r.length-1])}function D(t,e,n){const r=[],l=[],o=[];let i=0,s=0;const u=[...t];for(;u.length>0;){const t=u[0],g=t.getTextContent().length,c=s;s+g<=e?(r.push(t),i+=g):c>=n?o.push(t):l.push(t),s+=g,u.shift()}return[i,r,l,o]}function N(t,e,n,r){const o=l(r.url,r.attributes);if(1===t.length){let l,i=t[0];0===e?[l,i]=i.splitText(n):[,l,i]=i.splitText(e,n);const s=x(r.text);return s.setFormat(l.getFormat()),s.setDetail(l.getDetail()),s.setStyle(l.getStyle()),o.append(s),l.replace(o),i}if(t.length>1){const r=t[0];let l,i=r.getTextContent().length;0===e?l=r:[,l]=r.splitText(e);const s=[];let c;for(let e=1;e<t.length;e++){const r=t[e],l=r.getTextContent().length,o=i;if(o<n)if(i+l<=n)s.push(r);else{const[t,e]=r.splitText(n-o);s.push(t),c=e}i+=l}const f=u(),h=f?f.getNodes().find(a):void 0,d=x(l.getTextContent());return d.setFormat(l.getFormat()),d.setDetail(l.getDetail()),d.setStyle(l.getStyle()),o.append(d,...s),h&&h===l&&(g(f)?d.select(f.anchor.offset,f.focus.offset):p(f)&&d.select(0,d.getTextContent().length)),l.replace(o),c}}function P(t,e,n){const r=t.getChildren(),l=r.length;for(let e=0;e<l;e++){const l=r[e];if(!a(l)||!l.isSimpleText())return I(t),void n(null,t.getURL())}const o=t.getTextContent(),i=b(o,e);if(null===i||i.text!==o)return I(t),void n(null,t.getURL());if(!R(t)||!k(t))return I(t),void n(null,t.getURL());const s=t.getURL();if(s!==i.url&&(t.setURL(i.url),n(i.url,s)),i.attributes){const e=t.getRel();e!==i.attributes.rel&&(t.setRel(i.attributes.rel||null),n(i.attributes.rel||null,e));const r=t.getTarget();r!==i.attributes.target&&(t.setTarget(i.attributes.target||null),n(i.attributes.target||null,r))}}function I(t){const e=t.getChildren();for(let n=e.length-1;n>=0;n--)t.insertAfter(e[n]);return t.remove(),e.map((t=>t.getLatest()))}function w(l,o,f){d((()=>{l.hasNodes([t])||T(77);const h=(t,e)=>{f&&f(t,e)};return i(l.registerNodeTransform(s,(t=>{const r=t.getParentOrThrow(),l=t.getPreviousSibling();if(e(r)&&!r.getIsUnlinked())P(r,o,h);else if(!n(r)){if(t.isSimpleText()&&(L(t.getTextContent())||!e(l))){const e=function(t){const e=[t];let n=t.getNextSibling();for(;null!==n&&a(n)&&n.isSimpleText()&&(e.push(n),!/[\\s]/.test(n.getTextContent()));)n=n.getNextSibling();return e}(t);!function(t,e,n){let r=[...t];const l=r.map((t=>t.getTextContent())).join(\"\");let o,i=l,s=0;for(;(o=b(i,e))&&null!==o;){const t=o.index,e=t+o.length;if(y(s+t,s+e,l,r)){const[l,,i,u]=D(r,s+t,s+e),g=N(i,s+t-l,s+e-l,o);r=g?[g,...u]:u,n(o.url,null),s=0}else s+=e;i=i.substring(e)}}(e,o,h)}!function(t,n,r){const l=t.getPreviousSibling(),o=t.getNextSibling(),i=t.getTextContent();var s;!e(l)||l.getIsUnlinked()||L(i)&&(s=i,!(l.isEmailURI()?/^\\.[a-zA-Z]{2,}/.test(s):/^\\.[a-zA-Z0-9]{1,}/.test(s)))||(l.append(t),P(l,n,r),r(null,l.getURL())),!e(o)||o.getIsUnlinked()||U(i)||(I(o),P(o,n,r),r(null,o.getURL()))}(t,o,h)}})),l.registerCommand(r,(t=>{const n=u();if(null!==t||!g(n))return!1;return n.extract().forEach((t=>{const n=t.getParent();if(e(n))return n.setIsUnlinked(!n.getIsUnlinked()),n.markDirty(),!0})),!1}),c))}),[l,o,f])}function F({matchers:t,onChange:e}){const[n]=o();return w(n,t,e),null}export{F as AutoLinkPlugin,C as createLinkMatcherWithRegExp};\n","import { createLinkMatcherWithRegExp } from '@lexical/react/LexicalAutoLinkPlugin';\nimport { $isLinkNode } from '@lexical/link';\nimport { $isListNode } from '@lexical/list';\n\nimport type { ElementNode, TextNode } from 'lexical';\nimport type { LinkType } from 'components/RteEditor/Plugins/ToolbarPlugin';\n\nconst PROTOCOL_REGEX = /^(http|https):\\/\\//;\n\nconst URL_REGEX =\n /(https?:\\/\\/(?:www\\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,}|www\\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,}|https?:\\/\\/(?:www\\.|(?!www))[a-zA-Z0-9]+\\.[^\\s]{2,}|www\\.[a-zA-Z0-9]+\\.[^\\s]{2,})/;\n\nconst URL_PROTOCOL_REGEX = /(https?:\\/\\/(?:www\\.)?[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,})/;\n\nexport const validateUrl = (url: string): boolean => {\n return url === 'https://' || URL_REGEX.test(url);\n};\n\nexport const validateUrlWithProtocol = (url: string): boolean => {\n return url === 'https://' || URL_PROTOCOL_REGEX.test(url);\n};\n\nexport const MATCHERS = [\n createLinkMatcherWithRegExp(URL_REGEX, (text: string): string => {\n return !PROTOCOL_REGEX.test(text) ? `//${text}` : text;\n }),\n];\n\nexport const getNodeTag = (anchorNode: ElementNode | TextNode, tagToMatch: string): boolean | LinkType => {\n let currentNode: TextNode | ElementNode | null = anchorNode;\n let tag: string | null;\n\n while (currentNode !== null) {\n if (tagToMatch === 'a') {\n if ($isLinkNode(currentNode)) {\n return { active: true, url: currentNode.__url, target: !currentNode.__target ? '_self' : currentNode.__target };\n }\n }\n\n if (tagToMatch === 'ul' || tagToMatch === 'ol') {\n if ($isListNode(currentNode)) {\n tag = currentNode.getTag();\n return tag === tagToMatch;\n }\n }\n\n currentNode = currentNode.getParent();\n }\n\n return false;\n};\n"],"names":["o","a","n","i","l","e","r","t","h","c","s","g","f","d","u","p","U","m","_","T","C","b","v","S","L","R","k","y","D","N","x","P","I","w","F","PROTOCOL_REGEX","URL_REGEX","URL_PROTOCOL_REGEX","validateUrl","url","validateUrlWithProtocol","MATCHERS","createLinkMatcherWithRegExp","text","getNodeTag","anchorNode","tagToMatch","currentNode","tag","$isLinkNode","$isListNode"],"mappings":"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","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"helpers-BRIyyVa6.js","sources":["../node_modules/@lexical/link/LexicalLink.prod.mjs","../node_modules/@lexical/react/LexicalAutoLinkPlugin.prod.mjs","../src/components/RteEditor/Plugins/LinkPlugin/helpers.ts"],"sourcesContent":["/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport{addClassNamesToElement as t,isHTMLAnchorElement as e,$findMatchingParent as r}from\"@lexical/utils\";import{createCommand as i,ElementNode as n,$isRangeSelection as l,$applyNodeReplacement as s,$isElementNode as u,$getSelection as _}from\"lexical\";const o=new Set([\"http:\",\"https:\",\"mailto:\",\"sms:\",\"tel:\"]);class a extends n{static getType(){return\"link\"}static clone(t){return new a(t.__url,{rel:t.__rel,target:t.__target,title:t.__title},t.__key)}constructor(t,e={},r){super(r);const{target:i=null,rel:n=null,title:l=null}=e;this.__url=t,this.__target=i,this.__rel=n,this.__title=l}createDOM(e){const r=document.createElement(\"a\");return r.href=this.sanitizeUrl(this.__url),null!==this.__target&&(r.target=this.__target),null!==this.__rel&&(r.rel=this.__rel),null!==this.__title&&(r.title=this.__title),t(r,e.theme.link),r}updateDOM(t,e,r){if(e instanceof HTMLAnchorElement){const r=this.__url,i=this.__target,n=this.__rel,l=this.__title;r!==t.__url&&(e.href=r),i!==t.__target&&(i?e.target=i:e.removeAttribute(\"target\")),n!==t.__rel&&(n?e.rel=n:e.removeAttribute(\"rel\")),l!==t.__title&&(l?e.title=l:e.removeAttribute(\"title\"))}return!1}static importDOM(){return{a:t=>({conversion:h,priority:1})}}static importJSON(t){const e=c(t.url,{rel:t.rel,target:t.target,title:t.title});return e.setFormat(t.format),e.setIndent(t.indent),e.setDirection(t.direction),e}sanitizeUrl(t){try{const e=new URL(t);if(!o.has(e.protocol))return\"about:blank\"}catch(e){return t}return t}exportJSON(){return{...super.exportJSON(),rel:this.getRel(),target:this.getTarget(),title:this.getTitle(),type:\"link\",url:this.getURL(),version:1}}getURL(){return this.getLatest().__url}setURL(t){this.getWritable().__url=t}getTarget(){return this.getLatest().__target}setTarget(t){this.getWritable().__target=t}getRel(){return this.getLatest().__rel}setRel(t){this.getWritable().__rel=t}getTitle(){return this.getLatest().__title}setTitle(t){this.getWritable().__title=t}insertNewAfter(t,e=!0){const r=c(this.__url,{rel:this.__rel,target:this.__target,title:this.__title});return this.insertAfter(r,e),r}canInsertTextBefore(){return!1}canInsertTextAfter(){return!1}canBeEmpty(){return!1}isInline(){return!0}extractWithChild(t,e,r){if(!l(e))return!1;const i=e.anchor.getNode(),n=e.focus.getNode();return this.isParentOf(i)&&this.isParentOf(n)&&e.getTextContent().length>0}isEmailURI(){return this.__url.startsWith(\"mailto:\")}isWebSiteURI(){return this.__url.startsWith(\"https://\")||this.__url.startsWith(\"http://\")}}function h(t){let r=null;if(e(t)){const e=t.textContent;(null!==e&&\"\"!==e||t.children.length>0)&&(r=c(t.getAttribute(\"href\")||\"\",{rel:t.getAttribute(\"rel\"),target:t.getAttribute(\"target\"),title:t.getAttribute(\"title\")}))}return{node:r}}function c(t,e){return s(new a(t,e))}function g(t){return t instanceof a}class f extends a{constructor(t,e={},r){super(t,e,r),this.__isUnlinked=void 0!==e.isUnlinked&&null!==e.isUnlinked&&e.isUnlinked}static getType(){return\"autolink\"}static clone(t){return new f(t.__url,{isUnlinked:t.__isUnlinked,rel:t.__rel,target:t.__target,title:t.__title},t.__key)}getIsUnlinked(){return this.__isUnlinked}setIsUnlinked(t){const e=this.getWritable();return e.__isUnlinked=t,e}createDOM(t){return this.__isUnlinked?document.createElement(\"span\"):super.createDOM(t)}updateDOM(t,e,r){return super.updateDOM(t,e,r)||t.__isUnlinked!==this.__isUnlinked}static importJSON(t){const e=d(t.url,{isUnlinked:t.isUnlinked,rel:t.rel,target:t.target,title:t.title});return e.setFormat(t.format),e.setIndent(t.indent),e.setDirection(t.direction),e}static importDOM(){return null}exportJSON(){return{...super.exportJSON(),isUnlinked:this.__isUnlinked,type:\"autolink\",version:1}}insertNewAfter(t,e=!0){const r=this.getParentOrThrow().insertNewAfter(t,e);if(u(r)){const t=d(this.__url,{isUnlinked:this.__isUnlinked,rel:this.__rel,target:this.__target,title:this.__title});return r.append(t),t}return null}}function d(t,e){return s(new f(t,e))}function p(t){return t instanceof f}const U=i(\"TOGGLE_LINK_COMMAND\");function m(t,e={}){const{target:i,title:n}=e,s=void 0===e.rel?\"noreferrer\":e.rel,o=_();if(!l(o))return;const a=o.extract();if(null===t)a.forEach((t=>{const e=r(t,(t=>!p(t)&&g(t)));if(e){const t=e.getChildren();for(let r=0;r<t.length;r++)e.insertBefore(t[r]);e.remove()}}));else{if(1===a.length){const e=function(t,e){let r=t;for(;null!==r&&null!==r.getParent()&&!e(r);)r=r.getParentOrThrow();return e(r)?r:null}(a[0],g);if(null!==e)return e.setURL(t),void 0!==i&&e.setTarget(i),null!==s&&e.setRel(s),void(void 0!==n&&e.setTitle(n))}let e=null,r=null;a.forEach((l=>{const _=l.getParent();if(_!==r&&null!==_&&(!u(l)||l.isInline())){if(g(_))return r=_,_.setURL(t),void 0!==i&&_.setTarget(i),null!==s&&r.setRel(s),void(void 0!==n&&r.setTitle(n));if(_.is(e)||(e=_,r=c(t,{rel:s,target:i,title:n}),g(_)?null===l.getPreviousSibling()?_.insertBefore(r):_.insertAfter(r):l.insertBefore(r)),g(l)){if(l.is(r))return;if(null!==r){const t=l.getChildren();for(let e=0;e<t.length;e++)r.append(t[e])}l.remove()}else null!==r&&r.append(l)}}))}}const k=m;export{d as $createAutoLinkNode,c as $createLinkNode,p as $isAutoLinkNode,g as $isLinkNode,m as $toggleLink,f as AutoLinkNode,a as LinkNode,U as TOGGLE_LINK_COMMAND,k as toggleLink};\n","/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport{AutoLinkNode as t,$isAutoLinkNode as e,$isLinkNode as n,TOGGLE_LINK_COMMAND as r,$createAutoLinkNode as l}from\"@lexical/link\";import{useLexicalComposerContext as o}from\"@lexical/react/LexicalComposerContext\";import{mergeRegister as i}from\"@lexical/utils\";import{TextNode as s,$getSelection as u,$isRangeSelection as g,COMMAND_PRIORITY_LOW as c,$isTextNode as a,$isElementNode as f,$isLineBreakNode as h,$createTextNode as x,$isNodeSelection as p}from\"lexical\";import{useEffect as d}from\"react\";function m(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,\"default\")?t.default:t}var T=m((function(t){const e=new URLSearchParams;e.append(\"code\",t);for(let t=1;t<arguments.length;t++)e.append(\"v\",arguments[t]);throw Error(`Minified Lexical error #${t}; visit https://lexical.dev/docs/error?${e} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}));function C(t,e=(t=>t)){return n=>{const r=t.exec(n);return null===r?null:{index:r.index,length:r[0].length,text:r[0],url:e(r[0])}}}function b(t,e){for(let n=0;n<e.length;n++){const r=e[n](t);if(r)return r}return null}const v=/[.,;\\s]/;function S(t){return v.test(t)}function U(t){return S(t[t.length-1])}function L(t){return S(t[0])}function R(t){let e=t.getPreviousSibling();return f(e)&&(e=e.getLastDescendant()),null===e||h(e)||a(e)&&U(e.getTextContent())}function k(t){let e=t.getNextSibling();return f(e)&&(e=e.getFirstDescendant()),null===e||h(e)||a(e)&&L(e.getTextContent())}function y(t,e,n,r){if(!(t>0?S(n[t-1]):R(r[0])))return!1;return e<n.length?S(n[e]):k(r[r.length-1])}function D(t,e,n){const r=[],l=[],o=[];let i=0,s=0;const u=[...t];for(;u.length>0;){const t=u[0],g=t.getTextContent().length,c=s;s+g<=e?(r.push(t),i+=g):c>=n?o.push(t):l.push(t),s+=g,u.shift()}return[i,r,l,o]}function N(t,e,n,r){const o=l(r.url,r.attributes);if(1===t.length){let l,i=t[0];0===e?[l,i]=i.splitText(n):[,l,i]=i.splitText(e,n);const s=x(r.text);return s.setFormat(l.getFormat()),s.setDetail(l.getDetail()),s.setStyle(l.getStyle()),o.append(s),l.replace(o),i}if(t.length>1){const r=t[0];let l,i=r.getTextContent().length;0===e?l=r:[,l]=r.splitText(e);const s=[];let c;for(let e=1;e<t.length;e++){const r=t[e],l=r.getTextContent().length,o=i;if(o<n)if(i+l<=n)s.push(r);else{const[t,e]=r.splitText(n-o);s.push(t),c=e}i+=l}const f=u(),h=f?f.getNodes().find(a):void 0,d=x(l.getTextContent());return d.setFormat(l.getFormat()),d.setDetail(l.getDetail()),d.setStyle(l.getStyle()),o.append(d,...s),h&&h===l&&(g(f)?d.select(f.anchor.offset,f.focus.offset):p(f)&&d.select(0,d.getTextContent().length)),l.replace(o),c}}function P(t,e,n){const r=t.getChildren(),l=r.length;for(let e=0;e<l;e++){const l=r[e];if(!a(l)||!l.isSimpleText())return I(t),void n(null,t.getURL())}const o=t.getTextContent(),i=b(o,e);if(null===i||i.text!==o)return I(t),void n(null,t.getURL());if(!R(t)||!k(t))return I(t),void n(null,t.getURL());const s=t.getURL();if(s!==i.url&&(t.setURL(i.url),n(i.url,s)),i.attributes){const e=t.getRel();e!==i.attributes.rel&&(t.setRel(i.attributes.rel||null),n(i.attributes.rel||null,e));const r=t.getTarget();r!==i.attributes.target&&(t.setTarget(i.attributes.target||null),n(i.attributes.target||null,r))}}function I(t){const e=t.getChildren();for(let n=e.length-1;n>=0;n--)t.insertAfter(e[n]);return t.remove(),e.map((t=>t.getLatest()))}function w(l,o,f){d((()=>{l.hasNodes([t])||T(77);const h=(t,e)=>{f&&f(t,e)};return i(l.registerNodeTransform(s,(t=>{const r=t.getParentOrThrow(),l=t.getPreviousSibling();if(e(r)&&!r.getIsUnlinked())P(r,o,h);else if(!n(r)){if(t.isSimpleText()&&(L(t.getTextContent())||!e(l))){const e=function(t){const e=[t];let n=t.getNextSibling();for(;null!==n&&a(n)&&n.isSimpleText()&&(e.push(n),!/[\\s]/.test(n.getTextContent()));)n=n.getNextSibling();return e}(t);!function(t,e,n){let r=[...t];const l=r.map((t=>t.getTextContent())).join(\"\");let o,i=l,s=0;for(;(o=b(i,e))&&null!==o;){const t=o.index,e=t+o.length;if(y(s+t,s+e,l,r)){const[l,,i,u]=D(r,s+t,s+e),g=N(i,s+t-l,s+e-l,o);r=g?[g,...u]:u,n(o.url,null),s=0}else s+=e;i=i.substring(e)}}(e,o,h)}!function(t,n,r){const l=t.getPreviousSibling(),o=t.getNextSibling(),i=t.getTextContent();var s;!e(l)||l.getIsUnlinked()||L(i)&&(s=i,!(l.isEmailURI()?/^\\.[a-zA-Z]{2,}/.test(s):/^\\.[a-zA-Z0-9]{1,}/.test(s)))||(l.append(t),P(l,n,r),r(null,l.getURL())),!e(o)||o.getIsUnlinked()||U(i)||(I(o),P(o,n,r),r(null,o.getURL()))}(t,o,h)}})),l.registerCommand(r,(t=>{const n=u();if(null!==t||!g(n))return!1;return n.extract().forEach((t=>{const n=t.getParent();if(e(n))return n.setIsUnlinked(!n.getIsUnlinked()),n.markDirty(),!0})),!1}),c))}),[l,o,f])}function F({matchers:t,onChange:e}){const[n]=o();return w(n,t,e),null}export{F as AutoLinkPlugin,C as createLinkMatcherWithRegExp};\n","import { createLinkMatcherWithRegExp } from '@lexical/react/LexicalAutoLinkPlugin';\nimport { $isLinkNode } from '@lexical/link';\nimport { $isListNode } from '@lexical/list';\n\nimport type { ElementNode, TextNode } from 'lexical';\nimport type { LinkType } from 'components/RteEditor/Plugins/ToolbarPlugin';\n\nconst PROTOCOL_REGEX = /^(http|https):\\/\\//;\n\nconst URL_REGEX =\n /(https?:\\/\\/(?:www\\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,}|www\\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,}|https?:\\/\\/(?:www\\.|(?!www))[a-zA-Z0-9]+\\.[^\\s]{2,}|www\\.[a-zA-Z0-9]+\\.[^\\s]{2,})/;\n\nconst URL_PROTOCOL_REGEX = /(https?:\\/\\/(?:www\\.)?[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\\.[^\\s]{2,})/;\n\nexport const validateUrl = (url: string): boolean => {\n return url === 'https://' || URL_REGEX.test(url);\n};\n\nexport const validateUrlWithProtocol = (url: string): boolean => {\n return url === 'https://' || URL_PROTOCOL_REGEX.test(url);\n};\n\nexport const MATCHERS = [\n createLinkMatcherWithRegExp(URL_REGEX, (text: string): string => {\n return !PROTOCOL_REGEX.test(text) ? `//${text}` : text;\n }),\n];\n\nexport const getNodeTag = (anchorNode: ElementNode | TextNode, tagToMatch: string): boolean | LinkType => {\n let currentNode: TextNode | ElementNode | null = anchorNode;\n let tag: string | null;\n\n while (currentNode !== null) {\n if (tagToMatch === 'a') {\n if ($isLinkNode(currentNode)) {\n return { active: true, url: currentNode.__url, target: !currentNode.__target ? '_self' : currentNode.__target };\n }\n }\n\n if (tagToMatch === 'ul' || tagToMatch === 'ol') {\n if ($isListNode(currentNode)) {\n tag = currentNode.getTag();\n return tag === tagToMatch;\n }\n }\n\n currentNode = currentNode.getParent();\n }\n\n return false;\n};\n"],"names":["o","a","n","i","l","e","r","t","h","c","s","g","f","d","u","p","U","m","_","T","C","b","v","S","L","R","k","y","D","N","x","P","I","w","F","PROTOCOL_REGEX","URL_REGEX","URL_PROTOCOL_REGEX","validateUrl","url","validateUrlWithProtocol","MATCHERS","createLinkMatcherWithRegExp","text","getNodeTag","anchorNode","tagToMatch","currentNode","tag","$isLinkNode","$isListNode"],"mappings":"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","x_google_ignoreList":[0,1]}