1385.js (29142B)
1 "use strict";(self.webpackChunkelement_web=self.webpackChunkelement_web||[]).push([[1385],{"./src/components/views/rooms/wysiwyg_composer/ComposerContext.ts"(e,t,o){o.d(t,{AP:()=>i,EW:()=>c,Hx:()=>a});var n=o("./node_modules/@babel/runtime/helpers/esm/defineProperty.js"),r=o("./node_modules/react/index.js");function s(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),o.push.apply(o,n)}return o}function i(e){return function(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?s(Object(o),!0).forEach(function(t){(0,n.A)(e,t,o[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):s(Object(o)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))})}return e}({selection:{anchorNode:null,anchorOffset:0,focusNode:null,focusOffset:0,isForward:!0}},e)}const c=(0,r.createContext)(i());function a(){return(0,r.useContext)(c)}c.displayName="ComposerContext"},"./src/components/views/rooms/wysiwyg_composer/components/Editor.tsx"(e,t,o){o.d(t,{K:()=>d});var n=o("./node_modules/classnames/index.js"),r=o.n(n),s=o("./node_modules/react/index.js");var i=o("./node_modules/@babel/runtime/helpers/esm/defineProperty.js"),c=o("./src/hooks/useFocus.ts"),a=o("./src/components/views/rooms/wysiwyg_composer/ComposerContext.ts");function l(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),o.push.apply(o,n)}return o}function m(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?l(Object(o),!0).forEach(function(t){(0,i.A)(e,t,o[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):l(Object(o)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))})}return e}function u(e){const t=document.getSelection();if(t){const o=t.getRangeAt(0),n=o.startContainer===t.anchorNode&&o.startOffset===t.anchorOffset;e.selection={anchorNode:t.anchorNode,anchorOffset:t.anchorOffset,focusNode:t.focusNode,focusOffset:t.focusOffset,isForward:n}}}const d=(0,s.memo)(function({disabled:e,placeholder:t,leftComponent:o,rightComponent:n,ref:i}){const l=function(e,t){const[o,n]=(0,s.useState)(!1);return(0,s.useEffect)(()=>{if(null!=e&&e.current){const o=e.current,r=new ResizeObserver(e=>{requestAnimationFrame(()=>{var o;const r=null===(o=e[0])||void 0===o||null===(o=o.contentBoxSize)||void 0===o?void 0:o[0].blockSize;n(r>=t)})});return r.observe(o),()=>r.unobserve(o)}},[e,t]),o}(i,24),{onFocus:d,onBlur:p,onInput:f}=function(){const e=(0,a.Hx)(),[t,o]=(0,c.A)();(0,s.useEffect)(()=>{function o(){u(e)}return t&&document.addEventListener("selectionchange",o),()=>document.removeEventListener("selectionchange",o)},[t,e]);const n=(0,s.useCallback)(()=>{u(e)},[e]);return m(m({},o),{},{onInput:n})}();return s.createElement("div",{className:"mx_WysiwygComposer_Editor","data-is-expanded":l},o,s.createElement("div",{className:"mx_WysiwygComposer_Editor_container"},s.createElement("div",{className:r()("mx_WysiwygComposer_Editor_content",{mx_WysiwygComposer_Editor_content_placeholder:Boolean(t)}),style:{"--placeholder":`"${t}"`},ref:i,contentEditable:!e,role:"textbox","aria-multiline":"true","aria-autocomplete":"list","aria-haspopup":"listbox",dir:"auto","aria-disabled":e,onFocus:d,onBlur:p,onInput:f})),n)})},"./src/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete.tsx"(e,t,o){o.d(t,{W:()=>d});var n=o("./node_modules/react/index.js"),r=o("./node_modules/matrix-js-sdk/src/logger.ts"),s=o("./src/components/views/rooms/Autocomplete.tsx"),i=o("./src/contexts/MatrixClientContext.tsx"),c=o("./src/Avatar.ts");function a(e,t){const o=e.completionId,n=e.completion;let r;return r=o?t.getRoom(o):n.startsWith("#")?t.getRooms().find(e=>e.getCanonicalAlias()===n||e.getAltAliases().includes(n)):t.getRoom(n),null!=r?r:null}function l({url:e,initialLetter:t,id:o=""}){const n=[`--avatar-background: url(${e})`,`--avatar-letter: '${t}'`],r=c.gx(o);return r&&n.push(r),n.join("; ")}function m(e,t,o){const n="",r=new Map;if("user"===e.type){const t=o.getMember(e.completionId||"");if(!t)return r;const i=t.name||t.userId,a=c.iv(t.userId),m=c._V(t,16,16,"crop");let u=n;var s;if(m===a)u=null!==(s=c.$R(i))&&void 0!==s?s:n;r.set("data-mention-type",e.type),r.set("style",l({url:m,initialLetter:u,id:t.userId}))}else if("room"===e.type){var i;const o=a(e,t),s=e.completion;let d=n,p=c.ze(null!=o?o:null,16,16,"crop");var m,u;if(!p)d=null!==(m=c.$R((null==o?void 0:o.name)||s))&&void 0!==m?m:n,p=c.iv(null!==(u=null==o?void 0:o.roomId)&&void 0!==u?u:s);r.set("data-mention-type",e.type),r.set("style",l({url:p,initialLetter:d,id:null!==(i=null==o?void 0:o.roomId)&&void 0!==i?i:s}))}else if("at-room"===e.type){let t=n,s=c.ze(o,16,16,"crop");var d;if(!s)t=null!==(d=c.$R(o.name))&&void 0!==d?d:n,s=c.iv(o.roomId);r.set("data-mention-type",e.type),r.set("style",l({url:s,initialLetter:t,id:o.roomId}))}return r}var u=o("./src/contexts/ScopedRoomContext.tsx");const d=({suggestion:e,handleMention:t,handleCommand:o,handleAtRoomMention:c,handleEmoji:l,ref:d})=>{const{room:p}=(0,u.ME)("room"),f=(0,i.nH)();if(!p)return null;const g=function(e){return e&&e.keyChar?`${e.keyChar}${e.text}`:""}(e);return r.vF.log(`## 26037 ## Rendering Autocomplete for WysiwygAutocomplete with query: "${g}"`),n.createElement("div",{className:"mx_WysiwygComposer_AutoCompleteWrapper"},n.createElement(s.A,{ref:d,query:g,onConfirm:function(e){if(void 0!==f&&void 0!==p)switch(e.type){case"command":return void o(e.completion.trim());case"at-room":return void c(m(e,f,p));case"room":case"user":return void("string"==typeof e.href&&t(e.href,function(e,t){return"user"===e.type||"at-room"===e.type?e.completion:"room"===e.type?(null===(o=a(e,t))||void 0===o?void 0:o.name)||e.completion:"";var o}(e,f),m(e,f,p)));case"community":return;default:return void l(e.completion)}},selection:{start:0,end:0},room:p}))};d.displayName="WysiwygAutocomplete"},"./src/components/views/rooms/wysiwyg_composer/components/WysiwygComposer.tsx"(e,t,o){o.d(t,{k:()=>le});var n=o("./node_modules/react/index.js"),r=o("./node_modules/@matrix-org/emojibase-bindings/build/emoji.js"),s=o("./node_modules/@vector-im/matrix-wysiwyg/dist/matrix-wysiwyg.js"),i=o("./node_modules/classnames/index.js"),c=o.n(i),a=o("./src/components/views/rooms/wysiwyg_composer/components/WysiwygAutocomplete.tsx"),l=o("./node_modules/@vector-im/compound-design-tokens/assets/web/icons/bold.js"),m=o("./node_modules/react/jsx-runtime.js");function u(e,t){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...e,children:(0,m.jsx)("path",{d:"M4.5 7.5q-.618 0-1.06-.44A1.44 1.44 0 0 1 3 6q0-.618.44-1.06.442-.44 1.06-.44t1.06.44Q6 5.383 6 6t-.44 1.06q-.44.44-1.06.44m4.788 11.213Q9.575 19 10 19h10q.424 0 .712-.288A.97.97 0 0 0 21 18a.97.97 0 0 0-.288-.712A.97.97 0 0 0 20 17H10a.97.97 0 0 0-.713.288A.97.97 0 0 0 9 18q0 .424.287.712m.001-5.999Q9.575 13 10 13h10q.424 0 .712-.287A.97.97 0 0 0 21 12a.97.97 0 0 0-.288-.713A.97.97 0 0 0 20 11H10a.97.97 0 0 0-.713.287A.97.97 0 0 0 9 12q0 .424.287.713m.001-6Q9.575 7 10 7h10q.424 0 .712-.287A.97.97 0 0 0 21 6a.97.97 0 0 0-.288-.713A.97.97 0 0 0 20 5H10a.97.97 0 0 0-.713.287A.97.97 0 0 0 9 6q0 .424.287.713M3.44 19.06q.442.44 1.06.44t1.06-.44Q6 18.62 6 18t-.44-1.06a1.45 1.45 0 0 0-1.06-.44q-.618 0-1.06.44Q3 17.38 3 18t.44 1.06M4.5 13.5q-.618 0-1.06-.44A1.45 1.45 0 0 1 3 12q0-.619.44-1.06.442-.44 1.06-.44t1.06.44Q6 11.383 6 12t-.44 1.06q-.44.44-1.06.44"})})}u.displayName="ListBulletedIcon";const d=(0,n.forwardRef)(u);function p(e,t){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...e,children:(0,m.jsx)("path",{d:"m8.825 12 1.475-1.475q.3-.3.3-.7t-.3-.7-.713-.3-.712.3L6.7 11.3q-.15.15-.213.325a1.1 1.1 0 0 0-.062.375q0 .2.063.375a.9.9 0 0 0 .212.325l2.175 2.175q.3.3.713.3.412 0 .712-.3t.3-.7-.3-.7zm6.35 0L13.7 13.475q-.3.3-.3.7t.3.7.713.3.712-.3L17.3 12.7q.15-.15.212-.325.063-.175.063-.375t-.062-.375a.9.9 0 0 0-.213-.325l-2.175-2.175a1 1 0 0 0-1.425 0q-.3.3-.3.7t.3.7zM5 21q-.824 0-1.412-.587A1.93 1.93 0 0 1 3 19V5q0-.824.587-1.412A1.93 1.93 0 0 1 5 3h14q.824 0 1.413.587Q21 4.176 21 5v14q0 .824-.587 1.413A1.93 1.93 0 0 1 19 21zm0-2h14V5H5z"})})}p.displayName="CodeIcon";const f=(0,n.forwardRef)(p);function g(e,t){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...e,children:(0,m.jsx)("path",{d:"M3.288 18.713Q3.575 19 4 19h16q.424 0 .712-.288A.97.97 0 0 0 21 18a.97.97 0 0 0-.288-.712A.97.97 0 0 0 20 17H4a.97.97 0 0 0-.712.288A.97.97 0 0 0 3 18q0 .424.288.712m8-3.999Q11.575 15 12 15h8q.424 0 .712-.287A.97.97 0 0 0 21 14a.97.97 0 0 0-.288-.713A.97.97 0 0 0 20 13h-8a.97.97 0 0 0-.713.287A.97.97 0 0 0 11 14q0 .424.287.713m.001-4Q11.575 11 12 11h8q.424 0 .712-.287A.97.97 0 0 0 21 10a.97.97 0 0 0-.288-.713A.97.97 0 0 0 20 9h-8a.97.97 0 0 0-.713.287A.97.97 0 0 0 11 10q0 .424.287.713m.001-4Q11.575 7 12 7h8q.424 0 .712-.287A.97.97 0 0 0 21 6a.97.97 0 0 0-.288-.713A.97.97 0 0 0 20 5h-8a.97.97 0 0 0-.713.287A.97.97 0 0 0 11 6q0 .424.287.713M6.15 13.15l-2.8-2.8a.48.48 0 0 1 0-.7l2.8-2.8q.25-.25.55-.125T7 7.2v5.6q0 .35-.3.475t-.55-.125"})})}g.displayName="IndentDecreaseIcon";const v=(0,n.forwardRef)(g);function h(e,t){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...e,children:(0,m.jsx)("path",{d:"M4 19a.97.97 0 0 1-.712-.288A.97.97 0 0 1 3 18q0-.424.288-.712A.97.97 0 0 1 4 17h16q.424 0 .712.288.288.287.288.712 0 .424-.288.712A.97.97 0 0 1 20 19zm8-4a.97.97 0 0 1-.713-.287A.97.97 0 0 1 11 14q0-.424.287-.713A.97.97 0 0 1 12 13h8q.424 0 .712.287.288.288.288.713 0 .424-.288.713A.97.97 0 0 1 20 15zm0-4a.97.97 0 0 1-.713-.287A.97.97 0 0 1 11 10q0-.424.287-.713A.97.97 0 0 1 12 9h8q.424 0 .712.287Q21 9.576 21 10t-.288.713A.97.97 0 0 1 20 11zm0-4a.97.97 0 0 1-.713-.287A.97.97 0 0 1 11 6q0-.424.287-.713A.97.97 0 0 1 12 5h8q.424 0 .712.287Q21 5.576 21 6t-.288.713A.97.97 0 0 1 20 7zm-8.15 6.15q-.25.25-.55.125T3 12.8V7.2q0-.35.3-.475t.55.125l2.8 2.8a.48.48 0 0 1 0 .7z"})})}h.displayName="IndentIncreaseIcon";const y=(0,n.forwardRef)(h);var w=o("./node_modules/@vector-im/compound-design-tokens/assets/web/icons/inline-code.js"),b=o("./node_modules/@vector-im/compound-design-tokens/assets/web/icons/italic.js");function _(e,t){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...e,children:(0,m.jsx)("path",{d:"M9 6a1 1 0 0 1 1-1h10a1 1 0 1 1 0 2H10a1 1 0 0 1-1-1m0 6a1 1 0 0 1 1-1h10a1 1 0 1 1 0 2H10a1 1 0 0 1-1-1m0 6a1 1 0 0 1 1-1h10a1 1 0 1 1 0 2H10a1 1 0 0 1-1-1M5.604 5.089A.75.75 0 0 1 6 5.75v4.5a.75.75 0 0 1-1.5 0V7.151l-.334.223a.75.75 0 0 1-.832-1.248l1.5-1a.75.75 0 0 1 .77-.037M5 13a2 2 0 0 0-1.139.321 1.85 1.85 0 0 0-.626.719 2.3 2.3 0 0 0-.234.921v.023l-.001.01v.005l.75.001H3a.75.75 0 0 0 1.5.01V15l.01-.072a.8.8 0 0 1 .067-.218.35.35 0 0 1 .116-.14c.04-.027.126-.07.307-.07s.267.043.307.07a.35.35 0 0 1 .116.14.8.8 0 0 1 .076.29v.008a.53.53 0 0 1-.14.352l-2.161 2.351a.75.75 0 0 0-.198.523v.016c0 .414.336.75.75.75h2.5a.75.75 0 0 0 0-1.5h-.82l1.034-1.124C6.809 16 7 15.51 7 15h-.75H7v-.039l-.004-.068a2.3 2.3 0 0 0-.231-.853 1.85 1.85 0 0 0-.626-.719A2 2 0 0 0 5 13m-.5 2.003V15v.01z"})})}_.displayName="ListNumberedIcon";const x=(0,n.forwardRef)(_);var E=o("./node_modules/@vector-im/compound-design-tokens/assets/web/icons/quote.js"),C=o("./node_modules/@vector-im/compound-design-tokens/assets/web/icons/strikethrough.js");function A(e,t){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",fill:"currentColor",viewBox:"0 0 24 24",ref:t,...e,children:(0,m.jsx)("path",{d:"M6 21a.97.97 0 0 1-.713-.288A.97.97 0 0 1 5 20q0-.424.287-.712A.97.97 0 0 1 6 19h12q.424 0 .712.288.288.287.288.712 0 .424-.288.712A.97.97 0 0 1 18 21zm6-4q-2.525 0-3.925-1.575t-1.4-4.175V4.275q0-.525.388-.9A1.27 1.27 0 0 1 7.975 3q.525 0 .9.375t.375.9V11.4q0 1.4.7 2.275t2.05.875 2.05-.875.7-2.275V4.275q0-.525.387-.9A1.27 1.27 0 0 1 16.05 3q.525 0 .9.375t.375.9v6.975q0 2.6-1.4 4.175T12 17"})})}A.displayName="UnderlineIcon";const k=(0,n.forwardRef)(A);var O=o("./node_modules/@vector-im/compound-design-tokens/assets/web/icons/link.js"),j=o("./src/languageHandler.tsx"),S=o("./src/components/views/elements/AccessibleButton.tsx"),N=o("./node_modules/@babel/runtime/helpers/esm/defineProperty.js"),q=o("./src/Modal.tsx"),I=o("./src/components/views/elements/Field.tsx"),T=o("./src/components/views/rooms/wysiwyg_composer/utils/selection.ts"),F=o("./src/components/views/dialogs/BaseDialog.tsx"),M=o("./src/components/views/elements/DialogButtons.tsx");function P(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),o.push.apply(o,n)}return o}function R(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?P(Object(o),!0).forEach(function(t){(0,N.A)(e,t,o[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):P(Object(o)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))})}return e}function B(e){return e.length<1}const L=({composer:e,isTextEnabled:t,onFinished:o,composerContext:r,isEditing:s})=>{const[i,c]=(0,n.useState)(!1),[a,l]=(0,n.useState)({text:"",link:s?e.getLink():""}),m=!s&&t,u=!i||m&&B(a.text)||B(a.link);return n.createElement(F.A,{className:"mx_LinkModal",title:s?(0,j._t)("composer|link_modal|title_edit"):(0,j._t)("composer|link_modal|title_create"),hasCancel:!0,onFinished:o},n.createElement("form",{className:"mx_LinkModal_content",onSubmit:async n=>{n.preventDefault(),n.stopPropagation(),o(),await new Promise(e=>setTimeout(e,0)),await(0,T.td)(r.selection),e.link(a.link,t?a.text:void 0)}},m&&n.createElement(I.A,{required:!0,autoFocus:!0,label:(0,j._t)("composer|link_modal|text_field_label"),value:a.text,className:"mx_LinkModal_Field",placeholder:"",onChange:e=>l(t=>R(R({},t),{},{text:e.target.value}))}),n.createElement(I.A,{required:!0,autoFocus:!m,label:(0,j._t)("composer|link_modal|link_field_label"),value:a.link,className:"mx_LinkModal_Field",placeholder:"",onChange:e=>{l(t=>R(R({},t),{},{link:e.target.value})),c(!0)}}),n.createElement("div",{className:"mx_LinkModal_buttons"},s&&n.createElement("button",{type:"button",className:"danger",onClick:()=>{e.removeLinks(),o()}},(0,j._t)("action|remove")),n.createElement(M.A,{primaryButton:(0,j._t)("action|save"),primaryDisabled:u,primaryIsSubmit:!0,onCancel:o}))))};var D=o("./src/components/views/rooms/wysiwyg_composer/ComposerContext.ts"),K=o("./src/components/views/settings/KeyboardShortcut.tsx");function z({label:e,keyCombo:t,onClick:o,actionState:r,icon:s}){return n.createElement(S.A,{element:"button",onClick:o,"aria-label":e,disabled:"disabled"===r,className:c()("mx_FormattingButtons_Button",{mx_FormattingButtons_active:"reversed"===r,mx_FormattingButtons_Button_hover:"enabled"===r,mx_FormattingButtons_disabled:"disabled"===r}),title:"disabled"===r?void 0:e,caption:t&&n.createElement(K.S,{value:t,className:"mx_FormattingButtons_Tooltip_KeyboardShortcut"}),placement:"top"},s)}function H({composer:e,actionStates:t,disabled:o}){const r=(0,D.Hx)(),s="reversed"===t.unorderedList||"reversed"===t.orderedList;return n.createElement("div",{className:"mx_FormattingButtons"},n.createElement(z,{actionState:o?"disabled":t.bold,label:(0,j._t)("composer|format_bold"),keyCombo:{ctrlOrCmdKey:!0,key:"b"},onClick:()=>e.bold(),icon:n.createElement(l.A,{className:"mx_FormattingButtons_Icon"})}),n.createElement(z,{actionState:o?"disabled":t.italic,label:(0,j._t)("composer|format_italic"),keyCombo:{ctrlOrCmdKey:!0,key:"i"},onClick:()=>e.italic(),icon:n.createElement(b.A,{className:"mx_FormattingButtons_Icon"})}),n.createElement(z,{actionState:o?"disabled":t.underline,label:(0,j._t)("composer|format_underline"),keyCombo:{ctrlOrCmdKey:!0,key:"u"},onClick:()=>e.underline(),icon:n.createElement(k,{className:"mx_FormattingButtons_Icon"})}),n.createElement(z,{actionState:o?"disabled":t.strikeThrough,label:(0,j._t)("composer|format_strikethrough"),onClick:()=>e.strikeThrough(),icon:n.createElement(C.A,{className:"mx_FormattingButtons_Icon"})}),n.createElement(z,{actionState:o?"disabled":t.unorderedList,label:(0,j._t)("composer|format_unordered_list"),onClick:()=>e.unorderedList(),icon:n.createElement(d,{className:"mx_FormattingButtons_Icon"})}),n.createElement(z,{actionState:o?"disabled":t.orderedList,label:(0,j._t)("composer|format_ordered_list"),onClick:()=>e.orderedList(),icon:n.createElement(x,{className:"mx_FormattingButtons_Icon"})}),s&&n.createElement(z,{actionState:o?"disabled":t.indent,label:(0,j._t)("composer|format_increase_indent"),onClick:()=>e.indent(),icon:n.createElement(y,{className:"mx_FormattingButtons_Icon"})}),s&&n.createElement(z,{actionState:o?"disabled":t.unindent,label:(0,j._t)("composer|format_decrease_indent"),onClick:()=>e.unindent(),icon:n.createElement(v,{className:"mx_FormattingButtons_Icon"})}),n.createElement(z,{actionState:o?"disabled":t.quote,label:(0,j._t)("action|quote"),onClick:()=>e.quote(),icon:n.createElement(E.A,{className:"mx_FormattingButtons_Icon"})}),n.createElement(z,{actionState:o?"disabled":t.inlineCode,label:(0,j._t)("composer|format_inline_code"),keyCombo:{ctrlOrCmdKey:!0,key:"e"},onClick:()=>e.inlineCode(),icon:n.createElement(w.A,{className:"mx_FormattingButtons_Icon"})}),n.createElement(z,{actionState:o?"disabled":t.codeBlock,label:(0,j._t)("composer|format_code_block"),onClick:()=>e.codeBlock(),icon:n.createElement(f,{className:"mx_FormattingButtons_Icon"})}),n.createElement(z,{actionState:o?"disabled":t.link,label:(0,j._t)("composer|format_link"),onClick:()=>function(e,t,o){q.Ay.createDialog(L,{composerContext:t,composer:e,isTextEnabled:(0,T.CD)(),isEditing:o},"mx_CompoundDialog",!1,!0)}(e,r,"reversed"===t.link),icon:n.createElement(O.A,{className:"mx_FormattingButtons_Icon"})}))}var W=o("./src/components/views/rooms/wysiwyg_composer/components/Editor.tsx"),Q=o("./src/hooks/useSettings.ts"),V=o("./src/KeyBindingsManager.ts"),U=o("./src/accessibility/KeyboardShortcuts.ts"),$=o("./src/utils/EventUtils.ts"),Y=o("./src/dispatcher/dispatcher.ts"),J=o("./src/dispatcher/actions.ts"),G=o("./src/contexts/MatrixClientContext.tsx"),X=o("./node_modules/matrix-js-sdk/src/matrix.ts");var Z=o("./src/components/views/rooms/wysiwyg_composer/utils/editing.ts"),ee=o("./src/components/views/rooms/wysiwyg_composer/hooks/utils.ts"),te=o("./src/contexts/ScopedRoomContext.tsx");function oe(e,t,o,r){const s=(0,te.ME)("liveTimeline","room","replyToEvent","timelineRenderingType"),i=(0,D.Hx)(),c=(0,G.nH)(),a=(0,Q.ti)("MessageComposerInput.ctrlEnterToSend");return(0,n.useCallback)((n,l,m)=>{const u=()=>{var o,r;null===(o=n.stopPropagation)||void 0===o||o.call(n),null===(r=n.preventDefault)||void 0===r||r.call(n),null!=t&&t.current&&!t.current.state.hide||e()};if((0,ee.wg)(n)){const e=n instanceof ClipboardEvent?n.clipboardData:n.dataTransfer;return(0,ee.VI)(n,e,s,c,r)?null:n}return n instanceof KeyboardEvent?function(e,t,o,n,r,s,i,c,a){const{editorStateTransfer:l}=i,m=Boolean(l)?o!==n.content():0!==n.content().length,u=(0,V.zM)().getMessageComposerAction(e),d=(0,ee.hi)(a,e);if(d)return e;if(void 0===c)return null;switch(u){case U.bY.SendMessage:return t(),null;case U.bY.EditPrevMessage:if(!(0,T.tJ)(r)||m)break;if(ne(e,!1,l,i,s,c))return null;break;case U.bY.EditNextMessage:if(!l||!(0,T.uJ)(r)||m)break;return ne(e,!0,l,i,s,c)||((0,Z.w)(s),e.preventDefault(),e.stopPropagation()),null}return e}(n,u,o,l,m,s,i,c,t):function(e,t,o){switch(e.inputType){case"insertParagraph":if(!o)return t(),null;break;case"sendMessage":if(o)return t(),null}return e}(n,u,a)},[a,e,o,s,i,c,t,r])}function ne(e,t,o,n,r,s){const i=o?function(e,t,o){var n;const r=null===(n=t.liveTimeline)||void 0===n?void 0:n.getEvents();if(!r)return;const s=e.getEvent().getRoomId();if(!s)return;const i=o.getRoom(s);if(!i)return;const c=i.getPendingEvents(),a=Boolean(e.getEvent().getThread());return r.concat(a?[]:c)}(o,r,s):function(e,t){var o,n,r;const s=(null===(o=e.eventRelation)||void 0===o?void 0:o.key)===X.THREAD_RELATION_TYPE.name;return null===(n=t.liveTimeline)||void 0===n?void 0:n.getEvents().concat(s?[]:(null===(r=t.room)||void 0===r?void 0:r.getPendingEvents())||[])}(n,r);if(!i)return!1;const c=(0,$.Iy)({events:i,isForward:t,fromEventId:null==o?void 0:o.getEvent().getId(),matrixClient:s});return!!c&&(Y.A.dispatch({action:J.r.EditEvent,event:c,timelineRenderingType:r.timelineRenderingType}),e.stopPropagation(),e.preventDefault(),!0)}var re=o("./src/components/views/rooms/wysiwyg_composer/hooks/useSetCursorPosition.ts"),se=o("./src/components/views/rooms/wysiwyg_composer/hooks/useIsFocused.ts"),ie=o("./src/utils/permalinks/Permalinks.ts"),ce=o("./src/Typeguards.ts"),ae=o("./src/autocomplete/CommandProvider.tsx");const le=(0,n.memo)(function({disabled:e=!1,onChange:t,onSend:o,placeholder:i,initialContent:l,className:m,leftComponent:u,rightComponent:d,children:p,eventRelation:f}){const{room:g}=(0,te.ME)("room"),v=(0,n.useRef)(null),h=oe(o,v,l,f),y=(0,Q.ti)("MessageComposerInput.autoReplaceEmoji"),w=(0,n.useMemo)(()=>function(e){const t=new Map(Array.from(r.EMOTICON_TO_EMOJI,([e,t])=>[e,t.unicode]));return e?t:new Map}(y),[y]),{ref:b,isWysiwygReady:_,content:x,actionStates:E,wysiwyg:C,suggestion:A,messageContent:k}=(0,s.F)({initialContent:l,inputEventProcessor:h,emojiSuggestions:w}),{isFocused:O,onFocus:j}=(0,se.j)(),S=_&&!e,N=!x&&i||void 0;(0,re.V)(!S,b),(0,n.useEffect)(()=>{!e&&(0,ce.P)(k)&&t(k)},[t,k,e]);const q=function(e,t){const[o,r]=(0,n.useState)(!1),s=(0,n.useRef)(null),i=(0,n.useRef)(null);return(0,n.useEffect)(()=>{t&&e?(s.current&&i.current===t.roomId||(s.current=new ae.A(t),i.current=t.roomId),s.current.getCompletions(e,{start:0,end:0}).then(e=>{e.length>0?r(!0):r(!1)}).catch(()=>{r(!1)})):r(!1)},[e,t]),o}(x,g);return(0,n.useEffect)(()=>{var e;function t(e){if(e.preventDefault(),e.target&&e.target instanceof HTMLAnchorElement&&"user"===e.target.getAttribute("data-mention-type")){const t=(0,ie.$N)(e.target.href);g&&null!=t&&t.userId&&Y.A.dispatch({action:J.r.ViewUser,member:g.getMember(t.userId)})}}const o=null===(e=b.current)||void 0===e?void 0:e.querySelectorAll("a[data-mention-type]");return o&&o.forEach(e=>e.addEventListener("click",t)),()=>{o&&o.forEach(e=>e.removeEventListener("click",t))}},[b,g,x]),n.createElement("div",{className:c()(m,{[`${m}-focused`]:O}),onFocus:j,onBlur:j},n.createElement(a.W,{ref:v,suggestion:A,handleMention:C.mention,handleAtRoomMention:C.mentionAtRoom,handleCommand:C.command,handleEmoji:C.emoji}),n.createElement(H,{composer:C,actionStates:E,disabled:q}),n.createElement(W.K,{ref:b,disabled:!S,leftComponent:u,rightComponent:d,placeholder:N}),null==p?void 0:p(b,C))})},"./src/components/views/rooms/wysiwyg_composer/hooks/useIsFocused.ts"(e,t,o){o.d(t,{j:()=>r});var n=o("./node_modules/react/index.js");function r(){const[e,t]=(0,n.useState)(!1),o=(0,n.useRef)(void 0);(0,n.useEffect)(()=>()=>clearTimeout(o.current),[o]);return{isFocused:e,onFocus:(0,n.useCallback)(e=>{clearTimeout(o.current),"focus"===e.type?t(!0):o.current=window.setTimeout(()=>t(!1),100)},[t,o])}}},"./src/components/views/rooms/wysiwyg_composer/hooks/useSetCursorPosition.ts"(e,t,o){o.d(t,{V:()=>s});var n=o("./node_modules/react/index.js"),r=o("./src/components/views/rooms/wysiwyg_composer/hooks/utils.ts");function s(e,t){(0,n.useEffect)(()=>{t.current&&!e&&(0,r.bC)(t.current)},[t,e])}},"./src/components/views/rooms/wysiwyg_composer/hooks/utils.ts"(e,t,o){o.d(t,{Hj:()=>a,VI:()=>u,bC:()=>l,hi:()=>m,wg:()=>d});var n=o("./src/KeyBindingsManager.ts"),r=o("./src/accessibility/KeyboardShortcuts.ts"),s=o("./src/utils/blobs.ts"),i=o("./src/ContentMessages.ts"),c=o("./src/Typeguards.ts");function a(e,t,o,n){var r;t===o.timelineRenderingType&&(null===(r=e.current)||void 0===r||r.focus(),n.current&&clearTimeout(n.current),n.current=window.setTimeout(()=>{var t;return null===(t=e.current)||void 0===t?void 0:t.focus()},200))}function l(e){const t=document.createRange();t.selectNodeContents(e),t.collapse(!1);const o=document.getSelection();o.removeAllRanges(),o.addRange(t),e.focus()}function m(e,t){const o=(null==e?void 0:e.current)&&!e.current.state.hide;if(!e.current||!o)return!1;let s=!1;const i=(0,n.zM)().getAutocompleteAction(t),c=e.current;if(c&&c.countCompletions()>0)switch(i){case r.bY.ForceCompleteAutocomplete:case r.bY.CompleteAutocomplete:e.current.onConfirmCompletion(),s=!0;break;case r.bY.PrevSelectionInAutocomplete:e.current.moveSelection(-1),s=!0;break;case r.bY.NextSelectionInAutocomplete:e.current.moveSelection(1),s=!0;break;case r.bY.CancelAutocomplete:e.current.onEscape(t),s=!0}return s&&(t.preventDefault(),t.stopPropagation()),s}function u(e,t,o,n,r){const{room:c,timelineRenderingType:a,replyToEvent:l}=o;function m(e){e instanceof Error?console.log(e.message):"string"==typeof e&&console.log(e)}if("paste"!==e.type||null===t||void 0===c)return!1;if(t.files.length&&!t.types.includes("text/rtf"))return i.Ay.sharedInstance().sendContentListToRoom(Array.from(t.files),c.roomId,r,o.replyToEvent,n,a).catch(m),!0;if(t.types.includes("text/html")){var u;const e=t.getData("text/html"),o=(new DOMParser).parseFromString(e,"text/html");if(1!==o.getElementsByTagName("img").length||null===(u=o.querySelector("img"))||void 0===u||!u.src.startsWith("blob:")||1!==o.childNodes.length)return m("Failed to handle pasted content as Safari inserted content"),!1;const a=o.querySelector("img").src;return fetch(a).then(e=>{e.blob().then(t=>{const o=t.type,a=(0,s.F)(o),u=o.split("/")[1],d=e.url.split("/"),p=d[d.length-1],f=new File([t],p+"."+u,{type:a});i.Ay.sharedInstance().sendContentToRoom(f,c.roomId,r,n,l).catch(m)}).catch(m)}).catch(m),!0}return!1}function d(e){const t=e instanceof InputEvent&&"insertFromPaste"===e.inputType&&(0,c.P)(e.dataTransfer);return e instanceof ClipboardEvent||t}},"./src/components/views/rooms/wysiwyg_composer/utils/editing.ts"(e,t,o){o.d(t,{r:()=>c,w:()=>i});var n=o("./node_modules/matrix-js-sdk/src/matrix.ts"),r=o("./src/dispatcher/dispatcher.ts"),s=o("./src/dispatcher/actions.ts");function i(e){r.A.dispatch({action:s.r.EditEvent,event:null,timelineRenderingType:e.timelineRenderingType}),r.A.dispatch({action:s.r.FocusSendMessageComposer,context:e.timelineRenderingType})}function c(e,t){const o=t.getEvent().replacingEvent();!o||o.status!==n.EventStatus.QUEUED&&o.status!==n.EventStatus.NOT_SENT||e.cancelPendingEvent(o)}},"./src/components/views/rooms/wysiwyg_composer/utils/selection.ts"(e,t,o){function n(e){if(e.anchorNode&&e.focusNode){var t,o;const n=new Range;e.isForward?(n.setStart(e.anchorNode,e.anchorOffset),n.setEnd(e.focusNode,e.focusOffset)):(n.setStart(e.focusNode,e.focusOffset),n.setEnd(e.anchorNode,e.anchorOffset)),null===(t=document.getSelection())||void 0===t||t.removeAllRanges(),null===(o=document.getSelection())||void 0===o||o.addRange(n)}return new Promise(e=>setTimeout(e,0))}function r(){const e=document.getSelection();return Boolean(null==e?void 0:e.isCollapsed)}function s(e){const t=document.getSelection();if(!t)return!1;if(t.anchorNode===e&&t.anchorOffset<=1)return!0;let o=e.firstChild;do{var n;if(o===t.anchorNode)return 0===t.anchorOffset}while(o=(null===(n=o)||void 0===n?void 0:n.firstChild)||null);return!1}function i(e){var t;const o=document.getSelection();if(!o)return!1;if(o.focusNode===e&&o.focusOffset===(null===(t=e.childNodes)||void 0===t?void 0:t.length))return!0;let n=e.childNodes.item(e.childNodes.length-2);do{var r;if(n===o.focusNode)return o.focusOffset===(null===(r=n.textContent)||void 0===r?void 0:r.length)}while(n=n.lastChild);return!1}o.d(t,{CD:()=>r,tJ:()=>s,td:()=>n,uJ:()=>i})},"./src/components/views/settings/KeyboardShortcut.tsx"(e,t,o){o.d(t,{S:()=>a});var n=o("./node_modules/react/index.js"),r=o("./src/accessibility/KeyboardShortcuts.ts"),s=o("./src/Keyboard.ts"),i=o("./src/languageHandler.tsx");const c=({name:e,last:t})=>{const o=r.GA[e],s=r.hm[e];return n.createElement(n.Fragment,null,n.createElement("kbd",null," ",o||s&&(0,i._t)(s)||e," "),!t&&"+")},a=({value:e,className:t="mx_KeyboardShortcut"})=>{if(!e)return null;const o=[];return e.ctrlOrCmdKey?o.push(n.createElement(c,{key:"ctrlOrCmdKey",name:s.vL?s.Uz.META:s.Uz.CONTROL})):e.ctrlKey?o.push(n.createElement(c,{key:"ctrlKey",name:s.Uz.CONTROL})):e.metaKey&&o.push(n.createElement(c,{key:"metaKey",name:s.Uz.META})),e.altKey&&o.push(n.createElement(c,{key:"altKey",name:s.Uz.ALT})),e.shiftKey&&o.push(n.createElement(c,{key:"shiftKey",name:s.Uz.SHIFT})),n.createElement("div",{className:t},o,n.createElement(c,{name:e.key,last:!0}))}}}]); 2 //# sourceMappingURL=1385.js.map