├── src ├── i18n │ └── strings │ │ ├── bs.json │ │ ├── ne.json │ │ ├── bn_BD.json │ │ ├── basefile.json │ │ └── bn_IN.json ├── VelocityBounce.js ├── email.js ├── components │ └── views │ │ ├── elements │ │ ├── AppWarning.js │ │ ├── InlineSpinner.js │ │ └── Spinner.js │ │ ├── login │ │ ├── LoginHeader.js │ │ ├── LoginFooter.js │ │ └── CasLogin.js │ │ ├── context_menus │ │ └── GenericTextContextMenu.js │ │ └── rooms │ │ └── RoomDropTarget.js ├── extend.js ├── notifications │ ├── index.js │ └── StandardActions.js ├── UiEffects.js ├── PageTypes.js ├── utils │ ├── DirectoryUtils.js │ ├── PinningUtils.js │ └── Receipt.js ├── index.js ├── RoomListSorter.js ├── matrix-to.js └── Roles.js ├── .eslintignore ├── .flowconfig ├── res ├── img │ ├── call.png │ ├── edit.png │ ├── file.png │ ├── files.png │ ├── hide.png │ ├── info.png │ ├── menu.png │ ├── trans.png │ ├── video.png │ ├── voice.png │ ├── voip.png │ ├── zoom.png │ ├── 50e2c2.png │ ├── 76cfa6.png │ ├── 80cef4.png │ ├── attach.png │ ├── cancel.png │ ├── chevron.png │ ├── create.png │ ├── delete.png │ ├── download.png │ ├── f4c371.png │ ├── filegrid.png │ ├── fileicon.png │ ├── filelist.png │ ├── flags │ │ ├── AD.png │ │ ├── AE.png │ │ ├── AF.png │ │ ├── AG.png │ │ ├── AI.png │ │ ├── AL.png │ │ ├── AM.png │ │ ├── AO.png │ │ ├── AQ.png │ │ ├── AR.png │ │ ├── AS.png │ │ ├── AT.png │ │ ├── AU.png │ │ ├── AW.png │ │ ├── AX.png │ │ ├── AZ.png │ │ ├── BA.png │ │ ├── BB.png │ │ ├── BD.png │ │ ├── BE.png │ │ ├── BF.png │ │ ├── BG.png │ │ ├── BH.png │ │ ├── BI.png │ │ ├── BJ.png │ │ ├── BL.png │ │ ├── BM.png │ │ ├── BN.png │ │ ├── BO.png │ │ ├── BQ.png │ │ ├── BR.png │ │ ├── BS.png │ │ ├── BT.png │ │ ├── BV.png │ │ ├── BW.png │ │ ├── BY.png │ │ ├── BZ.png │ │ ├── CA.png │ │ ├── CC.png │ │ ├── CD.png │ │ ├── CF.png │ │ ├── CG.png │ │ ├── CH.png │ │ ├── CI.png │ │ ├── CK.png │ │ ├── CL.png │ │ ├── CM.png │ │ ├── CN.png │ │ ├── CO.png │ │ ├── CR.png │ │ ├── CU.png │ │ ├── CV.png │ │ ├── CW.png │ │ ├── CX.png │ │ ├── CY.png │ │ ├── CZ.png │ │ ├── DE.png │ │ ├── DJ.png │ │ ├── DK.png │ │ ├── DM.png │ │ ├── DO.png │ │ ├── DZ.png │ │ ├── EC.png │ │ ├── EE.png │ │ ├── EG.png │ │ ├── EH.png │ │ ├── ER.png │ │ ├── ES.png │ │ ├── ET.png │ │ ├── FI.png │ │ ├── FJ.png │ │ ├── FK.png │ │ ├── FM.png │ │ ├── FO.png │ │ ├── FR.png │ │ ├── GA.png │ │ ├── GB.png │ │ ├── GD.png │ │ ├── GE.png │ │ ├── GF.png │ │ ├── GG.png │ │ ├── GH.png │ │ ├── GI.png │ │ ├── GL.png │ │ ├── GM.png │ │ ├── GN.png │ │ ├── GP.png │ │ ├── GQ.png │ │ ├── GR.png │ │ ├── GS.png │ │ ├── GT.png │ │ ├── GU.png │ │ ├── GW.png │ │ ├── GY.png │ │ ├── HK.png │ │ ├── HM.png │ │ ├── HN.png │ │ ├── HR.png │ │ ├── HT.png │ │ ├── HU.png │ │ ├── ID.png │ │ ├── IE.png │ │ ├── IL.png │ │ ├── IM.png │ │ ├── IN.png │ │ ├── IO.png │ │ ├── IQ.png │ │ ├── IR.png │ │ ├── IS.png │ │ ├── IT.png │ │ ├── JE.png │ │ ├── JM.png │ │ ├── JO.png │ │ ├── JP.png │ │ ├── KE.png │ │ ├── KG.png │ │ ├── KH.png │ │ ├── KI.png │ │ ├── KM.png │ │ ├── KN.png │ │ ├── KP.png │ │ ├── KR.png │ │ ├── KW.png │ │ ├── KY.png │ │ ├── KZ.png │ │ ├── LA.png │ │ ├── LB.png │ │ ├── LC.png │ │ ├── LI.png │ │ ├── LK.png │ │ ├── LR.png │ │ ├── LS.png │ │ ├── LT.png │ │ ├── LU.png │ │ ├── LV.png │ │ ├── LY.png │ │ ├── MA.png │ │ ├── MC.png │ │ ├── MD.png │ │ ├── ME.png │ │ ├── MF.png │ │ ├── MG.png │ │ ├── MH.png │ │ ├── MK.png │ │ ├── ML.png │ │ ├── MM.png │ │ ├── MN.png │ │ ├── MO.png │ │ ├── MP.png │ │ ├── MQ.png │ │ ├── MR.png │ │ ├── MS.png │ │ ├── MT.png │ │ ├── MU.png │ │ ├── MV.png │ │ ├── MW.png │ │ ├── MX.png │ │ ├── MY.png │ │ ├── MZ.png │ │ ├── NA.png │ │ ├── NC.png │ │ ├── NE.png │ │ ├── NF.png │ │ ├── NG.png │ │ ├── NI.png │ │ ├── NL.png │ │ ├── NO.png │ │ ├── NP.png │ │ ├── NR.png │ │ ├── NU.png │ │ ├── NZ.png │ │ ├── OM.png │ │ ├── PA.png │ │ ├── PE.png │ │ ├── PF.png │ │ ├── PG.png │ │ ├── PH.png │ │ ├── PK.png │ │ ├── PL.png │ │ ├── PM.png │ │ ├── PN.png │ │ ├── PR.png │ │ ├── PS.png │ │ ├── PT.png │ │ ├── PW.png │ │ ├── PY.png │ │ ├── QA.png │ │ ├── RE.png │ │ ├── RO.png │ │ ├── RS.png │ │ ├── RU.png │ │ ├── RW.png │ │ ├── SA.png │ │ ├── SB.png │ │ ├── SC.png │ │ ├── SD.png │ │ ├── SE.png │ │ ├── SG.png │ │ ├── SH.png │ │ ├── SI.png │ │ ├── SJ.png │ │ ├── SK.png │ │ ├── SL.png │ │ ├── SM.png │ │ ├── SN.png │ │ ├── SO.png │ │ ├── SR.png │ │ ├── SS.png │ │ ├── ST.png │ │ ├── SV.png │ │ ├── SX.png │ │ ├── SY.png │ │ ├── SZ.png │ │ ├── TC.png │ │ ├── TD.png │ │ ├── TF.png │ │ ├── TG.png │ │ ├── TH.png │ │ ├── TJ.png │ │ ├── TK.png │ │ ├── TL.png │ │ ├── TM.png │ │ ├── TN.png │ │ ├── TO.png │ │ ├── TR.png │ │ ├── TT.png │ │ ├── TV.png │ │ ├── TW.png │ │ ├── TZ.png │ │ ├── UA.png │ │ ├── UG.png │ │ ├── US.png │ │ ├── UY.png │ │ ├── UZ.png │ │ ├── VA.png │ │ ├── VC.png │ │ ├── VE.png │ │ ├── VG.png │ │ ├── VI.png │ │ ├── VN.png │ │ ├── VU.png │ │ ├── WF.png │ │ ├── WS.png │ │ ├── YE.png │ │ ├── YT.png │ │ ├── ZA.png │ │ ├── ZM.png │ │ └── ZW.png │ ├── search.png │ ├── selected.png │ ├── settings.png │ ├── spinner.gif │ ├── typing.png │ ├── upload.png │ ├── warning.png │ ├── warning2.png │ ├── create-big.png │ ├── list-close.png │ ├── list-open.png │ ├── upload-big.png │ ├── voip-mute.png │ ├── cancel-black.png │ ├── cancel-black2.png │ ├── chevron-left.png │ ├── chevron-right.png │ ├── close-white.png │ ├── directory-big.png │ ├── newmessages.png │ ├── placeholder.png │ ├── settings-big.png │ ├── social │ │ ├── reddit.png │ │ ├── email-1.png │ │ ├── facebook.png │ │ ├── linkedin.png │ │ └── twitter-2.png │ ├── button-md-false.png │ ├── button-md-true.png │ ├── member_chevron.png │ ├── button-md-false@2x.png │ ├── button-md-false@3x.png │ ├── button-md-true@2x.png │ ├── button-md-true@3x.png │ ├── stickerpack-placeholder.png │ ├── icon-context-delete.svg │ ├── minimize.svg │ ├── list-open.svg │ ├── maximize.svg │ ├── list-close.svg │ ├── edit.svg │ ├── edit_green.svg │ ├── icons-search-copy.svg │ ├── icons-room.svg │ ├── button-md-true.svg │ ├── tick.svg │ ├── icons_ellipsis.svg │ ├── cancel-small.svg │ ├── e2e-blocked.svg │ ├── icon-context-mute.svg │ ├── icons-search.svg │ ├── voip-chevron.svg │ ├── plus.svg │ ├── icon-mx-user.svg │ ├── icons-apps.svg │ ├── search-icon-vector.svg │ ├── icon-context-mute-off.svg │ ├── icon-address-delete.svg │ ├── icon-text-cancel.svg │ ├── cancel.svg │ ├── cancel-white.svg │ ├── cancel_green.svg │ ├── maximise.svg │ ├── cancel-red.svg │ ├── icons-pin.svg │ ├── button-new-window.svg │ ├── e2e-not_sent.svg │ ├── icons-share.svg │ ├── icon-context-mute-mentions.svg │ ├── icon-context-fave.svg │ ├── e2e-encrypting.svg │ ├── icon-context-fave-on.svg │ ├── button-text-italic-o-n.svg │ ├── button-text-italic.svg │ ├── e2e-verified.svg │ ├── eol.svg │ ├── button-refresh.svg │ ├── icons-home.svg │ ├── minimise.svg │ ├── icon-context-mute-off-copy.svg │ ├── icons-create-room.svg │ ├── icons-close.svg │ ├── scrollto.svg │ ├── icons-room-add.svg │ ├── icon-return.svg │ ├── button-text-formatting.svg │ ├── leave.svg │ └── network-matrix.svg ├── media │ ├── busy.mp3 │ ├── busy.ogg │ ├── ring.mp3 │ ├── ring.ogg │ ├── callend.mp3 │ ├── callend.ogg │ ├── message.mp3 │ ├── message.ogg │ ├── ringback.mp3 │ └── ringback.ogg ├── themes │ ├── light │ │ └── css │ │ │ └── light.scss │ └── dark │ │ └── css │ │ └── dark.scss ├── fonts │ ├── Fira_Mono │ │ ├── FiraMono-Bold.ttf │ │ └── FiraMono-Regular.ttf │ └── Open_Sans │ │ ├── OpenSans-Bold.ttf │ │ ├── OpenSans-Italic.ttf │ │ ├── OpenSans-Regular.ttf │ │ ├── OpenSans-Semibold.ttf │ │ ├── OpenSans-BoldItalic.ttf │ │ └── OpenSans-SemiboldItalic.ttf └── css │ ├── structures │ ├── _CompatibilityPage.scss │ ├── _ViewSource.scss │ ├── _HomePage.scss │ └── _CreateRoom.scss │ ├── rethemendex.sh │ └── views │ ├── messages │ ├── _SenderProfile.scss │ ├── _MessageTimestamp.scss │ ├── _UnknownBody.scss │ ├── _MTextBody.scss │ ├── _TextualEvent.scss │ ├── _MNoticeBody.scss │ ├── _MEmoteBody.scss │ ├── _MStickerBody.scss │ ├── _RoomAvatarEvent.scss │ └── _DateSeparator.scss │ ├── dialogs │ ├── _QuestionDialog.scss │ ├── _ChangelogDialog.scss │ ├── _DeactivateAccountDialog.scss │ ├── _GroupAddressPicker.scss │ ├── _EncryptedEventDialog.scss │ ├── _SetPasswordDialog.scss │ ├── _SetEmailDialog.scss │ ├── _CreateRoomDialog.scss │ └── _ChatCreateOrReuseChatDialog.scss │ ├── rooms │ ├── _PresenceLabel.scss │ ├── _Stickers.scss │ └── _PinnedEventsPanel.scss │ ├── groups │ ├── _GroupRoomList.scss │ ├── _GroupUserSettings.scss │ └── _GroupPublicityToggle.scss │ ├── elements │ ├── _InlineSpinner.scss │ ├── _AccessibleButton.scss │ ├── _SyntaxHighlight.scss │ ├── _ProgressBar.scss │ ├── _Spinner.scss │ ├── _RoleButton.scss │ └── _ReplyThread.scss │ ├── voip │ └── _CallView.scss │ ├── context_menus │ └── _MessageContextMenu.scss │ ├── settings │ └── _IntegrationsManager.scss │ ├── login │ └── _ServerConfig.scss │ └── avatars │ └── _BaseAvatar.scss ├── test ├── img │ └── edit.png ├── i18n │ └── languages.json ├── .eslintrc.js ├── all-tests.js └── components │ └── stub-component.js ├── CONTRIBUTING.rst ├── .babelrc ├── .gitignore ├── release.sh ├── scripts ├── travis.sh ├── fetchdep.sh ├── generate-eslint-error-ignore-file ├── emoji-data-strip.js └── fixup-imports.pl ├── .travis.yml ├── header ├── .travis-test-riot.sh ├── jenkins.sh └── .editorconfig /src/i18n/strings/bs.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /src/i18n/strings/ne.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /src/i18n/strings/bn_BD.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /src/i18n/strings/basefile.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /src/i18n/strings/bn_IN.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | src/component-index.js 2 | -------------------------------------------------------------------------------- /.flowconfig: -------------------------------------------------------------------------------- 1 | [include] 2 | src/**/*.js 3 | test/**/*.js 4 | 5 | [ignore] 6 | node_modules/ 7 | -------------------------------------------------------------------------------- /res/img/call.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/call.png -------------------------------------------------------------------------------- /res/img/edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/edit.png -------------------------------------------------------------------------------- /res/img/file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/file.png -------------------------------------------------------------------------------- /res/img/files.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/files.png -------------------------------------------------------------------------------- /res/img/hide.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/hide.png -------------------------------------------------------------------------------- /res/img/info.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/info.png -------------------------------------------------------------------------------- /res/img/menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/menu.png -------------------------------------------------------------------------------- /res/img/trans.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/trans.png -------------------------------------------------------------------------------- /res/img/video.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/video.png -------------------------------------------------------------------------------- /res/img/voice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/voice.png -------------------------------------------------------------------------------- /res/img/voip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/voip.png -------------------------------------------------------------------------------- /res/img/zoom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/zoom.png -------------------------------------------------------------------------------- /test/img/edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/test/img/edit.png -------------------------------------------------------------------------------- /res/img/50e2c2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/50e2c2.png -------------------------------------------------------------------------------- /res/img/76cfa6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/76cfa6.png -------------------------------------------------------------------------------- /res/img/80cef4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/80cef4.png -------------------------------------------------------------------------------- /res/img/attach.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/attach.png -------------------------------------------------------------------------------- /res/img/cancel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/cancel.png -------------------------------------------------------------------------------- /res/img/chevron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/chevron.png -------------------------------------------------------------------------------- /res/img/create.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/create.png -------------------------------------------------------------------------------- /res/img/delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/delete.png -------------------------------------------------------------------------------- /res/img/download.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/download.png -------------------------------------------------------------------------------- /res/img/f4c371.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/f4c371.png -------------------------------------------------------------------------------- /res/img/filegrid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/filegrid.png -------------------------------------------------------------------------------- /res/img/fileicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/fileicon.png -------------------------------------------------------------------------------- /res/img/filelist.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/filelist.png -------------------------------------------------------------------------------- /res/img/flags/AD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AD.png -------------------------------------------------------------------------------- /res/img/flags/AE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AE.png -------------------------------------------------------------------------------- /res/img/flags/AF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AF.png -------------------------------------------------------------------------------- /res/img/flags/AG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AG.png -------------------------------------------------------------------------------- /res/img/flags/AI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AI.png -------------------------------------------------------------------------------- /res/img/flags/AL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AL.png -------------------------------------------------------------------------------- /res/img/flags/AM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AM.png -------------------------------------------------------------------------------- /res/img/flags/AO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AO.png -------------------------------------------------------------------------------- /res/img/flags/AQ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AQ.png -------------------------------------------------------------------------------- /res/img/flags/AR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AR.png -------------------------------------------------------------------------------- /res/img/flags/AS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AS.png -------------------------------------------------------------------------------- /res/img/flags/AT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AT.png -------------------------------------------------------------------------------- /res/img/flags/AU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AU.png -------------------------------------------------------------------------------- /res/img/flags/AW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AW.png -------------------------------------------------------------------------------- /res/img/flags/AX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AX.png -------------------------------------------------------------------------------- /res/img/flags/AZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/AZ.png -------------------------------------------------------------------------------- /res/img/flags/BA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BA.png -------------------------------------------------------------------------------- /res/img/flags/BB.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BB.png -------------------------------------------------------------------------------- /res/img/flags/BD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BD.png -------------------------------------------------------------------------------- /res/img/flags/BE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BE.png -------------------------------------------------------------------------------- /res/img/flags/BF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BF.png -------------------------------------------------------------------------------- /res/img/flags/BG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BG.png -------------------------------------------------------------------------------- /res/img/flags/BH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BH.png -------------------------------------------------------------------------------- /res/img/flags/BI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BI.png -------------------------------------------------------------------------------- /res/img/flags/BJ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BJ.png -------------------------------------------------------------------------------- /res/img/flags/BL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BL.png -------------------------------------------------------------------------------- /res/img/flags/BM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BM.png -------------------------------------------------------------------------------- /res/img/flags/BN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BN.png -------------------------------------------------------------------------------- /res/img/flags/BO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BO.png -------------------------------------------------------------------------------- /res/img/flags/BQ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BQ.png -------------------------------------------------------------------------------- /res/img/flags/BR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BR.png -------------------------------------------------------------------------------- /res/img/flags/BS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BS.png -------------------------------------------------------------------------------- /res/img/flags/BT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BT.png -------------------------------------------------------------------------------- /res/img/flags/BV.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BV.png -------------------------------------------------------------------------------- /res/img/flags/BW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BW.png -------------------------------------------------------------------------------- /res/img/flags/BY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BY.png -------------------------------------------------------------------------------- /res/img/flags/BZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/BZ.png -------------------------------------------------------------------------------- /res/img/flags/CA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CA.png -------------------------------------------------------------------------------- /res/img/flags/CC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CC.png -------------------------------------------------------------------------------- /res/img/flags/CD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CD.png -------------------------------------------------------------------------------- /res/img/flags/CF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CF.png -------------------------------------------------------------------------------- /res/img/flags/CG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CG.png -------------------------------------------------------------------------------- /res/img/flags/CH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CH.png -------------------------------------------------------------------------------- /res/img/flags/CI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CI.png -------------------------------------------------------------------------------- /res/img/flags/CK.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CK.png -------------------------------------------------------------------------------- /res/img/flags/CL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CL.png -------------------------------------------------------------------------------- /res/img/flags/CM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CM.png -------------------------------------------------------------------------------- /res/img/flags/CN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CN.png -------------------------------------------------------------------------------- /res/img/flags/CO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CO.png -------------------------------------------------------------------------------- /res/img/flags/CR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CR.png -------------------------------------------------------------------------------- /res/img/flags/CU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CU.png -------------------------------------------------------------------------------- /res/img/flags/CV.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CV.png -------------------------------------------------------------------------------- /res/img/flags/CW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CW.png -------------------------------------------------------------------------------- /res/img/flags/CX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CX.png -------------------------------------------------------------------------------- /res/img/flags/CY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CY.png -------------------------------------------------------------------------------- /res/img/flags/CZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/CZ.png -------------------------------------------------------------------------------- /res/img/flags/DE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/DE.png -------------------------------------------------------------------------------- /res/img/flags/DJ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/DJ.png -------------------------------------------------------------------------------- /res/img/flags/DK.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/DK.png -------------------------------------------------------------------------------- /res/img/flags/DM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/DM.png -------------------------------------------------------------------------------- /res/img/flags/DO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/DO.png -------------------------------------------------------------------------------- /res/img/flags/DZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/DZ.png -------------------------------------------------------------------------------- /res/img/flags/EC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/EC.png -------------------------------------------------------------------------------- /res/img/flags/EE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/EE.png -------------------------------------------------------------------------------- /res/img/flags/EG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/EG.png -------------------------------------------------------------------------------- /res/img/flags/EH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/EH.png -------------------------------------------------------------------------------- /res/img/flags/ER.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/ER.png -------------------------------------------------------------------------------- /res/img/flags/ES.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/ES.png -------------------------------------------------------------------------------- /res/img/flags/ET.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/ET.png -------------------------------------------------------------------------------- /res/img/flags/FI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/FI.png -------------------------------------------------------------------------------- /res/img/flags/FJ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/FJ.png -------------------------------------------------------------------------------- /res/img/flags/FK.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/FK.png -------------------------------------------------------------------------------- /res/img/flags/FM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/FM.png -------------------------------------------------------------------------------- /res/img/flags/FO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/FO.png -------------------------------------------------------------------------------- /res/img/flags/FR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/FR.png -------------------------------------------------------------------------------- /res/img/flags/GA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GA.png -------------------------------------------------------------------------------- /res/img/flags/GB.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GB.png -------------------------------------------------------------------------------- /res/img/flags/GD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GD.png -------------------------------------------------------------------------------- /res/img/flags/GE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GE.png -------------------------------------------------------------------------------- /res/img/flags/GF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GF.png -------------------------------------------------------------------------------- /res/img/flags/GG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GG.png -------------------------------------------------------------------------------- /res/img/flags/GH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GH.png -------------------------------------------------------------------------------- /res/img/flags/GI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GI.png -------------------------------------------------------------------------------- /res/img/flags/GL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GL.png -------------------------------------------------------------------------------- /res/img/flags/GM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GM.png -------------------------------------------------------------------------------- /res/img/flags/GN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GN.png -------------------------------------------------------------------------------- /res/img/flags/GP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GP.png -------------------------------------------------------------------------------- /res/img/flags/GQ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GQ.png -------------------------------------------------------------------------------- /res/img/flags/GR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GR.png -------------------------------------------------------------------------------- /res/img/flags/GS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GS.png -------------------------------------------------------------------------------- /res/img/flags/GT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GT.png -------------------------------------------------------------------------------- /res/img/flags/GU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GU.png -------------------------------------------------------------------------------- /res/img/flags/GW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GW.png -------------------------------------------------------------------------------- /res/img/flags/GY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/GY.png -------------------------------------------------------------------------------- /res/img/flags/HK.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/HK.png -------------------------------------------------------------------------------- /res/img/flags/HM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/HM.png -------------------------------------------------------------------------------- /res/img/flags/HN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/HN.png -------------------------------------------------------------------------------- /res/img/flags/HR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/HR.png -------------------------------------------------------------------------------- /res/img/flags/HT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/HT.png -------------------------------------------------------------------------------- /res/img/flags/HU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/HU.png -------------------------------------------------------------------------------- /res/img/flags/ID.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/ID.png -------------------------------------------------------------------------------- /res/img/flags/IE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/IE.png -------------------------------------------------------------------------------- /res/img/flags/IL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/IL.png -------------------------------------------------------------------------------- /res/img/flags/IM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/IM.png -------------------------------------------------------------------------------- /res/img/flags/IN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/IN.png -------------------------------------------------------------------------------- /res/img/flags/IO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/IO.png -------------------------------------------------------------------------------- /res/img/flags/IQ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/IQ.png -------------------------------------------------------------------------------- /res/img/flags/IR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/IR.png -------------------------------------------------------------------------------- /res/img/flags/IS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/IS.png -------------------------------------------------------------------------------- /res/img/flags/IT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/IT.png -------------------------------------------------------------------------------- /res/img/flags/JE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/JE.png -------------------------------------------------------------------------------- /res/img/flags/JM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/JM.png -------------------------------------------------------------------------------- /res/img/flags/JO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/JO.png -------------------------------------------------------------------------------- /res/img/flags/JP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/JP.png -------------------------------------------------------------------------------- /res/img/flags/KE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KE.png -------------------------------------------------------------------------------- /res/img/flags/KG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KG.png -------------------------------------------------------------------------------- /res/img/flags/KH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KH.png -------------------------------------------------------------------------------- /res/img/flags/KI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KI.png -------------------------------------------------------------------------------- /res/img/flags/KM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KM.png -------------------------------------------------------------------------------- /res/img/flags/KN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KN.png -------------------------------------------------------------------------------- /res/img/flags/KP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KP.png -------------------------------------------------------------------------------- /res/img/flags/KR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KR.png -------------------------------------------------------------------------------- /res/img/flags/KW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KW.png -------------------------------------------------------------------------------- /res/img/flags/KY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KY.png -------------------------------------------------------------------------------- /res/img/flags/KZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/KZ.png -------------------------------------------------------------------------------- /res/img/flags/LA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LA.png -------------------------------------------------------------------------------- /res/img/flags/LB.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LB.png -------------------------------------------------------------------------------- /res/img/flags/LC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LC.png -------------------------------------------------------------------------------- /res/img/flags/LI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LI.png -------------------------------------------------------------------------------- /res/img/flags/LK.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LK.png -------------------------------------------------------------------------------- /res/img/flags/LR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LR.png -------------------------------------------------------------------------------- /res/img/flags/LS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LS.png -------------------------------------------------------------------------------- /res/img/flags/LT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LT.png -------------------------------------------------------------------------------- /res/img/flags/LU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LU.png -------------------------------------------------------------------------------- /res/img/flags/LV.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LV.png -------------------------------------------------------------------------------- /res/img/flags/LY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/LY.png -------------------------------------------------------------------------------- /res/img/flags/MA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MA.png -------------------------------------------------------------------------------- /res/img/flags/MC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MC.png -------------------------------------------------------------------------------- /res/img/flags/MD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MD.png -------------------------------------------------------------------------------- /res/img/flags/ME.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/ME.png -------------------------------------------------------------------------------- /res/img/flags/MF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MF.png -------------------------------------------------------------------------------- /res/img/flags/MG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MG.png -------------------------------------------------------------------------------- /res/img/flags/MH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MH.png -------------------------------------------------------------------------------- /res/img/flags/MK.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MK.png -------------------------------------------------------------------------------- /res/img/flags/ML.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/ML.png -------------------------------------------------------------------------------- /res/img/flags/MM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MM.png -------------------------------------------------------------------------------- /res/img/flags/MN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MN.png -------------------------------------------------------------------------------- /res/img/flags/MO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MO.png -------------------------------------------------------------------------------- /res/img/flags/MP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MP.png -------------------------------------------------------------------------------- /res/img/flags/MQ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MQ.png -------------------------------------------------------------------------------- /res/img/flags/MR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MR.png -------------------------------------------------------------------------------- /res/img/flags/MS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MS.png -------------------------------------------------------------------------------- /res/img/flags/MT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MT.png -------------------------------------------------------------------------------- /res/img/flags/MU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MU.png -------------------------------------------------------------------------------- /res/img/flags/MV.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MV.png -------------------------------------------------------------------------------- /res/img/flags/MW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MW.png -------------------------------------------------------------------------------- /res/img/flags/MX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MX.png -------------------------------------------------------------------------------- /res/img/flags/MY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MY.png -------------------------------------------------------------------------------- /res/img/flags/MZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/MZ.png -------------------------------------------------------------------------------- /res/img/flags/NA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NA.png -------------------------------------------------------------------------------- /res/img/flags/NC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NC.png -------------------------------------------------------------------------------- /res/img/flags/NE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NE.png -------------------------------------------------------------------------------- /res/img/flags/NF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NF.png -------------------------------------------------------------------------------- /res/img/flags/NG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NG.png -------------------------------------------------------------------------------- /res/img/flags/NI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NI.png -------------------------------------------------------------------------------- /res/img/flags/NL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NL.png -------------------------------------------------------------------------------- /res/img/flags/NO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NO.png -------------------------------------------------------------------------------- /res/img/flags/NP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NP.png -------------------------------------------------------------------------------- /res/img/flags/NR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NR.png -------------------------------------------------------------------------------- /res/img/flags/NU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NU.png -------------------------------------------------------------------------------- /res/img/flags/NZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/NZ.png -------------------------------------------------------------------------------- /res/img/flags/OM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/OM.png -------------------------------------------------------------------------------- /res/img/flags/PA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PA.png -------------------------------------------------------------------------------- /res/img/flags/PE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PE.png -------------------------------------------------------------------------------- /res/img/flags/PF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PF.png -------------------------------------------------------------------------------- /res/img/flags/PG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PG.png -------------------------------------------------------------------------------- /res/img/flags/PH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PH.png -------------------------------------------------------------------------------- /res/img/flags/PK.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PK.png -------------------------------------------------------------------------------- /res/img/flags/PL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PL.png -------------------------------------------------------------------------------- /res/img/flags/PM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PM.png -------------------------------------------------------------------------------- /res/img/flags/PN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PN.png -------------------------------------------------------------------------------- /res/img/flags/PR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PR.png -------------------------------------------------------------------------------- /res/img/flags/PS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PS.png -------------------------------------------------------------------------------- /res/img/flags/PT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PT.png -------------------------------------------------------------------------------- /res/img/flags/PW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PW.png -------------------------------------------------------------------------------- /res/img/flags/PY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/PY.png -------------------------------------------------------------------------------- /res/img/flags/QA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/QA.png -------------------------------------------------------------------------------- /res/img/flags/RE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/RE.png -------------------------------------------------------------------------------- /res/img/flags/RO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/RO.png -------------------------------------------------------------------------------- /res/img/flags/RS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/RS.png -------------------------------------------------------------------------------- /res/img/flags/RU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/RU.png -------------------------------------------------------------------------------- /res/img/flags/RW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/RW.png -------------------------------------------------------------------------------- /res/img/flags/SA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SA.png -------------------------------------------------------------------------------- /res/img/flags/SB.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SB.png -------------------------------------------------------------------------------- /res/img/flags/SC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SC.png -------------------------------------------------------------------------------- /res/img/flags/SD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SD.png -------------------------------------------------------------------------------- /res/img/flags/SE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SE.png -------------------------------------------------------------------------------- /res/img/flags/SG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SG.png -------------------------------------------------------------------------------- /res/img/flags/SH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SH.png -------------------------------------------------------------------------------- /res/img/flags/SI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SI.png -------------------------------------------------------------------------------- /res/img/flags/SJ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SJ.png -------------------------------------------------------------------------------- /res/img/flags/SK.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SK.png -------------------------------------------------------------------------------- /res/img/flags/SL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SL.png -------------------------------------------------------------------------------- /res/img/flags/SM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SM.png -------------------------------------------------------------------------------- /res/img/flags/SN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SN.png -------------------------------------------------------------------------------- /res/img/flags/SO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SO.png -------------------------------------------------------------------------------- /res/img/flags/SR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SR.png -------------------------------------------------------------------------------- /res/img/flags/SS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SS.png -------------------------------------------------------------------------------- /res/img/flags/ST.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/ST.png -------------------------------------------------------------------------------- /res/img/flags/SV.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SV.png -------------------------------------------------------------------------------- /res/img/flags/SX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SX.png -------------------------------------------------------------------------------- /res/img/flags/SY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SY.png -------------------------------------------------------------------------------- /res/img/flags/SZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/SZ.png -------------------------------------------------------------------------------- /res/img/flags/TC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TC.png -------------------------------------------------------------------------------- /res/img/flags/TD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TD.png -------------------------------------------------------------------------------- /res/img/flags/TF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TF.png -------------------------------------------------------------------------------- /res/img/flags/TG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TG.png -------------------------------------------------------------------------------- /res/img/flags/TH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TH.png -------------------------------------------------------------------------------- /res/img/flags/TJ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TJ.png -------------------------------------------------------------------------------- /res/img/flags/TK.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TK.png -------------------------------------------------------------------------------- /res/img/flags/TL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TL.png -------------------------------------------------------------------------------- /res/img/flags/TM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TM.png -------------------------------------------------------------------------------- /res/img/flags/TN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TN.png -------------------------------------------------------------------------------- /res/img/flags/TO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TO.png -------------------------------------------------------------------------------- /res/img/flags/TR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TR.png -------------------------------------------------------------------------------- /res/img/flags/TT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TT.png -------------------------------------------------------------------------------- /res/img/flags/TV.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TV.png -------------------------------------------------------------------------------- /res/img/flags/TW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TW.png -------------------------------------------------------------------------------- /res/img/flags/TZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/TZ.png -------------------------------------------------------------------------------- /res/img/flags/UA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/UA.png -------------------------------------------------------------------------------- /res/img/flags/UG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/UG.png -------------------------------------------------------------------------------- /res/img/flags/US.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/US.png -------------------------------------------------------------------------------- /res/img/flags/UY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/UY.png -------------------------------------------------------------------------------- /res/img/flags/UZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/UZ.png -------------------------------------------------------------------------------- /res/img/flags/VA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/VA.png -------------------------------------------------------------------------------- /res/img/flags/VC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/VC.png -------------------------------------------------------------------------------- /res/img/flags/VE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/VE.png -------------------------------------------------------------------------------- /res/img/flags/VG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/VG.png -------------------------------------------------------------------------------- /res/img/flags/VI.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/VI.png -------------------------------------------------------------------------------- /res/img/flags/VN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/VN.png -------------------------------------------------------------------------------- /res/img/flags/VU.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/VU.png -------------------------------------------------------------------------------- /res/img/flags/WF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/WF.png -------------------------------------------------------------------------------- /res/img/flags/WS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/WS.png -------------------------------------------------------------------------------- /res/img/flags/YE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/YE.png -------------------------------------------------------------------------------- /res/img/flags/YT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/YT.png -------------------------------------------------------------------------------- /res/img/flags/ZA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/ZA.png -------------------------------------------------------------------------------- /res/img/flags/ZM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/ZM.png -------------------------------------------------------------------------------- /res/img/flags/ZW.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/flags/ZW.png -------------------------------------------------------------------------------- /res/img/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/search.png -------------------------------------------------------------------------------- /res/img/selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/selected.png -------------------------------------------------------------------------------- /res/img/settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/settings.png -------------------------------------------------------------------------------- /res/img/spinner.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/spinner.gif -------------------------------------------------------------------------------- /res/img/typing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/typing.png -------------------------------------------------------------------------------- /res/img/upload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/upload.png -------------------------------------------------------------------------------- /res/img/warning.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/warning.png -------------------------------------------------------------------------------- /res/img/warning2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/warning2.png -------------------------------------------------------------------------------- /res/media/busy.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/media/busy.mp3 -------------------------------------------------------------------------------- /res/media/busy.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/media/busy.ogg -------------------------------------------------------------------------------- /res/media/ring.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/media/ring.mp3 -------------------------------------------------------------------------------- /res/media/ring.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/media/ring.ogg -------------------------------------------------------------------------------- /res/img/create-big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/create-big.png -------------------------------------------------------------------------------- /res/img/list-close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/list-close.png -------------------------------------------------------------------------------- /res/img/list-open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/list-open.png -------------------------------------------------------------------------------- /res/img/upload-big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/upload-big.png -------------------------------------------------------------------------------- /res/img/voip-mute.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/voip-mute.png -------------------------------------------------------------------------------- /res/media/callend.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/media/callend.mp3 -------------------------------------------------------------------------------- /res/media/callend.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/media/callend.ogg -------------------------------------------------------------------------------- /res/media/message.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/media/message.mp3 -------------------------------------------------------------------------------- /res/media/message.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/media/message.ogg -------------------------------------------------------------------------------- /res/media/ringback.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/media/ringback.mp3 -------------------------------------------------------------------------------- /res/media/ringback.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/media/ringback.ogg -------------------------------------------------------------------------------- /res/img/cancel-black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/cancel-black.png -------------------------------------------------------------------------------- /res/img/cancel-black2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/cancel-black2.png -------------------------------------------------------------------------------- /res/img/chevron-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/chevron-left.png -------------------------------------------------------------------------------- /res/img/chevron-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/chevron-right.png -------------------------------------------------------------------------------- /res/img/close-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/close-white.png -------------------------------------------------------------------------------- /res/img/directory-big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/directory-big.png -------------------------------------------------------------------------------- /res/img/newmessages.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/newmessages.png -------------------------------------------------------------------------------- /res/img/placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/placeholder.png -------------------------------------------------------------------------------- /res/img/settings-big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/settings-big.png -------------------------------------------------------------------------------- /res/img/social/reddit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/social/reddit.png -------------------------------------------------------------------------------- /res/themes/light/css/light.scss: -------------------------------------------------------------------------------- 1 | @import "_base.scss"; 2 | @import "../../../../res/css/_components.scss"; 3 | 4 | -------------------------------------------------------------------------------- /res/img/button-md-false.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/button-md-false.png -------------------------------------------------------------------------------- /res/img/button-md-true.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/button-md-true.png -------------------------------------------------------------------------------- /res/img/member_chevron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/member_chevron.png -------------------------------------------------------------------------------- /res/img/social/email-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/social/email-1.png -------------------------------------------------------------------------------- /res/img/social/facebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/social/facebook.png -------------------------------------------------------------------------------- /res/img/social/linkedin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/social/linkedin.png -------------------------------------------------------------------------------- /res/img/button-md-false@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/button-md-false@2x.png -------------------------------------------------------------------------------- /res/img/button-md-false@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/button-md-false@3x.png -------------------------------------------------------------------------------- /res/img/button-md-true@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/button-md-true@2x.png -------------------------------------------------------------------------------- /res/img/button-md-true@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/button-md-true@3x.png -------------------------------------------------------------------------------- /res/img/social/twitter-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/social/twitter-2.png -------------------------------------------------------------------------------- /test/i18n/languages.json: -------------------------------------------------------------------------------- 1 | { 2 | "en": { 3 | "fileName": "en_EN.json", 4 | "label": "English" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /res/img/stickerpack-placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/img/stickerpack-placeholder.png -------------------------------------------------------------------------------- /res/fonts/Fira_Mono/FiraMono-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/fonts/Fira_Mono/FiraMono-Bold.ttf -------------------------------------------------------------------------------- /res/fonts/Open_Sans/OpenSans-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/fonts/Open_Sans/OpenSans-Bold.ttf -------------------------------------------------------------------------------- /res/fonts/Fira_Mono/FiraMono-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/fonts/Fira_Mono/FiraMono-Regular.ttf -------------------------------------------------------------------------------- /res/fonts/Open_Sans/OpenSans-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/fonts/Open_Sans/OpenSans-Italic.ttf -------------------------------------------------------------------------------- /res/fonts/Open_Sans/OpenSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/fonts/Open_Sans/OpenSans-Regular.ttf -------------------------------------------------------------------------------- /res/fonts/Open_Sans/OpenSans-Semibold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/fonts/Open_Sans/OpenSans-Semibold.ttf -------------------------------------------------------------------------------- /res/fonts/Open_Sans/OpenSans-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/fonts/Open_Sans/OpenSans-BoldItalic.ttf -------------------------------------------------------------------------------- /res/themes/dark/css/dark.scss: -------------------------------------------------------------------------------- 1 | @import "../../light/css/_base.scss"; 2 | @import "_dark.scss"; 3 | @import "../../../../res/css/_components.scss"; 4 | 5 | -------------------------------------------------------------------------------- /res/fonts/Open_Sans/OpenSans-SemiboldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aperezdc/matrix-react-sdk/igalia-mods/res/fonts/Open_Sans/OpenSans-SemiboldItalic.ttf -------------------------------------------------------------------------------- /CONTRIBUTING.rst: -------------------------------------------------------------------------------- 1 | Contributing code to The React SDK 2 | ================================== 3 | 4 | matrix-react-sdk follows the same pattern as https://github.com/matrix-org/synapse/blob/master/CONTRIBUTING.rst 5 | -------------------------------------------------------------------------------- /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["react", "es2015", "es2016"], 3 | "plugins": ["transform-class-properties", "transform-object-rest-spread", "transform-async-to-bluebird", "transform-runtime", "add-module-exports"] 4 | } 5 | -------------------------------------------------------------------------------- /test/.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | env: { 3 | mocha: true, 4 | }, 5 | 6 | // mocha defines a 'this' 7 | rules: { 8 | "babel/no-invalid-this": "off", 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /test/all-tests.js: -------------------------------------------------------------------------------- 1 | // all-tests.js 2 | // 3 | // Our master test file: uses the webpack require API to find our test files 4 | // and run them 5 | 6 | const context = require.context('.', true, /-test\.jsx?$/); 7 | context.keys().forEach(context); 8 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | npm-debug.log 2 | 3 | /node_modules 4 | /lib 5 | 6 | # version file and tarball created by 'npm pack' 7 | /git-revision.txt 8 | /matrix-react-sdk-*.tgz 9 | 10 | # test reports created by karma 11 | /karma-reports 12 | 13 | /.idea 14 | /src/component-index.js 15 | 16 | .DS_Store 17 | -------------------------------------------------------------------------------- /release.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # Script to perform a release of matrix-react-sdk. 4 | # 5 | # Requires githib-changelog-generator; to install, do 6 | # pip install git+https://github.com/matrix-org/github-changelog-generator.git 7 | 8 | set -e 9 | 10 | cd `dirname $0` 11 | 12 | exec ./node_modules/matrix-js-sdk/release.sh -z "$@" 13 | -------------------------------------------------------------------------------- /scripts/travis.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -ex 4 | 5 | scripts/fetchdep.sh matrix-org matrix-js-sdk 6 | rm -r node_modules/matrix-js-sdk || true 7 | ln -s ../matrix-js-sdk node_modules/matrix-js-sdk 8 | 9 | cd matrix-js-sdk 10 | npm install 11 | cd .. 12 | 13 | npm run test 14 | ./.travis-test-riot.sh 15 | 16 | # run the linter, but exclude any files known to have errors or warnings. 17 | npm run lintwithexclusions 18 | -------------------------------------------------------------------------------- /res/css/structures/_CompatibilityPage.scss: -------------------------------------------------------------------------------- 1 | .mx_CompatibilityPage { 2 | width: 100%; 3 | height: 100%; 4 | background-color: #e55; 5 | } 6 | 7 | .mx_CompatibilityPage_box { 8 | position: absolute; 9 | top: 0; 10 | bottom: 0; 11 | left: 0; 12 | right: 0; 13 | margin: auto; 14 | width: 500px; 15 | height: 300px; 16 | border: 1px solid; 17 | padding: 10px; 18 | background-color: #fcc; 19 | } -------------------------------------------------------------------------------- /res/css/rethemendex.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | cd `dirname $0` 4 | 5 | { 6 | echo "// autogenerated by rethemendex.sh" 7 | 8 | # we used to have exclude /themes from the find at this point. 9 | # as themes are no longer a spurious subdirectory of css/, we don't 10 | # need it any more. 11 | find . -iname _\*.scss | fgrep -v _components.scss | LC_ALL=C sort | 12 | while read i; do 13 | echo "@import \"$i\";" 14 | done 15 | } > _components.scss 16 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # we need trusty for the chrome addon 2 | dist: trusty 3 | 4 | # we don't need sudo, so can run in a container, which makes startup much 5 | # quicker. 6 | # 7 | # unfortunately we do temporarily require sudo as a workaround for 8 | # https://github.com/travis-ci/travis-ci/issues/8836 9 | sudo: required 10 | 11 | language: node_js 12 | node_js: 13 | - node # Latest stable version of nodejs. 14 | addons: 15 | chrome: stable 16 | install: 17 | - npm install 18 | script: 19 | ./scripts/travis.sh 20 | -------------------------------------------------------------------------------- /test/components/stub-component.js: -------------------------------------------------------------------------------- 1 | /* A dummy React component which we use for stubbing out app-level components 2 | */ 3 | 'use strict'; 4 | 5 | const React = require('react'); 6 | 7 | module.exports = function(opts) { 8 | opts = opts || {}; 9 | if (!opts.displayName) { 10 | opts.displayName = 'StubComponent'; 11 | } 12 | 13 | if (!opts.render) { 14 | opts.render = function() { 15 | return
{ this.displayName }
; 16 | }; 17 | } 18 | 19 | return React.createClass(opts); 20 | }; 21 | -------------------------------------------------------------------------------- /src/VelocityBounce.js: -------------------------------------------------------------------------------- 1 | const Velocity = require('velocity-vector'); 2 | 3 | // courtesy of https://github.com/julianshapiro/velocity/issues/283 4 | // We only use easeOutBounce (easeInBounce is just sort of nonsensical) 5 | function bounce( p ) { 6 | let pow2, 7 | bounce = 4; 8 | 9 | while ( p < ( ( pow2 = Math.pow( 2, --bounce ) ) - 1 ) / 11 ) { 10 | // just sets pow2 11 | } 12 | return 1 / Math.pow( 4, 3 - bounce ) - 7.5625 * Math.pow( ( pow2 * 3 - 2 ) / 22 - p, 2 ); 13 | } 14 | 15 | Velocity.Easings.easeOutBounce = function(p) { 16 | return 1 - bounce(1 - p); 17 | }; 18 | -------------------------------------------------------------------------------- /scripts/fetchdep.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | 5 | org="$1" 6 | repo="$2" 7 | 8 | rm -r "$repo" || true 9 | 10 | curbranch="$TRAVIS_PULL_REQUEST_BRANCH" 11 | [ -z "$curbranch" ] && curbranch="$TRAVIS_BRANCH" 12 | [ -z "$curbranch" ] && curbranch=`"echo $GIT_BRANCH" | sed -e 's/^origin\///'` # jenkins 13 | 14 | if [ -n "$curbranch" ] 15 | then 16 | echo "Determined branch to be $curbranch" 17 | 18 | git clone https://github.com/$org/$repo.git $repo --branch "$curbranch" && exit 0 19 | fi 20 | 21 | echo "Checking out develop branch" 22 | git clone https://github.com/$org/$repo.git $repo --branch develop 23 | -------------------------------------------------------------------------------- /scripts/generate-eslint-error-ignore-file: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # generates .eslintignore.errorfiles to list the files which have errors in, 4 | # so that they can be ignored in future automated linting. 5 | 6 | out=.eslintignore.errorfiles 7 | 8 | cd `dirname $0`/.. 9 | 10 | echo "generating $out" 11 | 12 | { 13 | cat < 0) | .filePath' | 20 | sed -e 's/.*matrix-react-sdk\///'; 21 | } > "$out" 22 | -------------------------------------------------------------------------------- /res/css/views/messages/_SenderProfile.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | -------------------------------------------------------------------------------- /res/img/icon-context-delete.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /header: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | Copyright 2017 Vector Creations Ltd 4 | Copyright 2017, 2018 New Vector Ltd 5 | 6 | Licensed under the Apache License, Version 2.0 (the "License"); 7 | you may not use this file except in compliance with the License. 8 | You may obtain a copy of the License at 9 | 10 | http://www.apache.org/licenses/LICENSE-2.0 11 | 12 | Unless required by applicable law or agreed to in writing, software 13 | distributed under the License is distributed on an "AS IS" BASIS, 14 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | See the License for the specific language governing permissions and 16 | limitations under the License. 17 | */ 18 | -------------------------------------------------------------------------------- /res/css/views/messages/_MessageTimestamp.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_MessageTimestamp { 18 | } 19 | -------------------------------------------------------------------------------- /res/css/views/messages/_UnknownBody.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | http://www.apache.org/licenses/LICENSE-2.0 7 | Unless required by applicable law or agreed to in writing, software 8 | distributed under the License is distributed on an "AS IS" BASIS, 9 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 10 | See the License for the specific language governing permissions and 11 | limitations under the License. 12 | */ 13 | 14 | .mx_UnknownBody { 15 | white-space: pre-wrap; 16 | } 17 | -------------------------------------------------------------------------------- /res/css/views/dialogs/_QuestionDialog.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 New Vector Ltd. 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | .mx_QuestionDialog { 17 | padding-right: 58px; 18 | } 19 | -------------------------------------------------------------------------------- /res/css/views/messages/_MTextBody.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_MTextBody { 18 | white-space: pre-wrap; 19 | } 20 | -------------------------------------------------------------------------------- /res/css/views/rooms/_PresenceLabel.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_PresenceLabel { 18 | font-size: 11px; 19 | opacity: 0.5; 20 | } -------------------------------------------------------------------------------- /res/img/minimize.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /res/css/views/messages/_TextualEvent.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_TextualEvent { 18 | opacity: 0.5; 19 | overflow-y: hidden; 20 | } 21 | -------------------------------------------------------------------------------- /res/css/views/messages/_MNoticeBody.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_MNoticeBody { 18 | white-space: pre-wrap; 19 | opacity: 0.6; 20 | } 21 | -------------------------------------------------------------------------------- /res/css/views/rooms/_Stickers.scss: -------------------------------------------------------------------------------- 1 | .mx_Stickers_content { 2 | overflow: hidden; 3 | } 4 | 5 | .mx_Stickers_content_container { 6 | overflow: hidden; 7 | height: 300px; 8 | } 9 | 10 | .mx_Stickers_content .mx_AppTileFullWidth { 11 | border: none; 12 | } 13 | 14 | .mx_Stickers_contentPlaceholder { 15 | display: flex; 16 | flex-grow: 1; 17 | flex-direction: column; 18 | align-items: center; 19 | justify-content: center; 20 | text-align: center; 21 | } 22 | 23 | .mx_Stickers_contentPlaceholder p { 24 | max-width: 200px; 25 | } 26 | 27 | .mx_Stickers_addLink { 28 | display: inline; 29 | cursor: pointer; 30 | text-decoration: underline; 31 | } 32 | 33 | .mx_Stickers_hideStickers { 34 | z-index: 2001; 35 | } 36 | -------------------------------------------------------------------------------- /.travis-test-riot.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # script which is run by the travis build (after `npm run test`). 4 | # 5 | # clones riot-web develop and runs the tests against our version of react-sdk. 6 | 7 | set -ev 8 | 9 | RIOT_WEB_DIR=riot-web 10 | REACT_SDK_DIR=`pwd` 11 | 12 | scripts/fetchdep.sh vector-im riot-web 13 | cd "$RIOT_WEB_DIR" 14 | 15 | mkdir node_modules 16 | npm install 17 | 18 | # use the version of js-sdk we just used in the react-sdk tests 19 | rm -r node_modules/matrix-js-sdk 20 | ln -s "$REACT_SDK_DIR/node_modules/matrix-js-sdk" node_modules/matrix-js-sdk 21 | 22 | # ... and, of course, the version of react-sdk we just built 23 | rm -r node_modules/matrix-react-sdk 24 | ln -s "$REACT_SDK_DIR" node_modules/matrix-react-sdk 25 | 26 | npm run test 27 | -------------------------------------------------------------------------------- /res/css/views/groups/_GroupRoomList.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 New Vector Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_GroupRoomTile { 18 | position: relative; 19 | color: $primary-fg-color; 20 | cursor: pointer; 21 | } 22 | -------------------------------------------------------------------------------- /res/img/list-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 10 | Slice 1 11 | Created with Sketch. 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /res/img/maximize.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /res/css/views/messages/_MEmoteBody.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Vector Creations Ltd. 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_MEmoteBody { 18 | white-space: pre-wrap; 19 | } 20 | 21 | .mx_MEmoteBody_sender { 22 | cursor: pointer; 23 | } 24 | -------------------------------------------------------------------------------- /res/img/list-close.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 10 | Slice 1 11 | Created with Sketch. 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /jenkins.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | export NVM_DIR="$HOME/.nvm" 6 | [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" 7 | nvm use 6 8 | 9 | set -x 10 | 11 | # install the other dependencies 12 | npm install 13 | 14 | scripts/fetchdep.sh matrix-org matrix-js-sdk 15 | rm -r node_modules/matrix-js-sdk || true 16 | ln -s ../matrix-js-sdk node_modules/matrix-js-sdk 17 | (cd matrix-js-sdk && npm install) 18 | 19 | # run the mocha tests 20 | npm run test -- --no-colors 21 | 22 | # run eslint 23 | npm run lintall -- -f checkstyle -o eslint.xml || true 24 | 25 | # re-run the linter, excluding any files known to have errors or warnings. 26 | npm run lintwithexclusions 27 | 28 | # delete the old tarball, if it exists 29 | rm -f matrix-react-sdk-*.tgz 30 | 31 | # build our tarball 32 | npm pack 33 | -------------------------------------------------------------------------------- /res/css/views/elements/_InlineSpinner.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 New Vector Ltd. 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_InlineSpinner { 18 | display: inline; 19 | } 20 | 21 | .mx_InlineSpinner img { 22 | margin: 0px 6px; 23 | vertical-align: -3px; 24 | } 25 | -------------------------------------------------------------------------------- /res/css/views/messages/_MStickerBody.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2018 New Vector Ltd. 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_MStickerBody_wrapper { 18 | padding: 20px 0px; 19 | } 20 | 21 | .mx_MStickerBody_tooltip { 22 | position: absolute; 23 | top: 50%; 24 | } 25 | -------------------------------------------------------------------------------- /res/css/views/dialogs/_ChangelogDialog.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2016 Aviral Dasgupta 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_ChangelogDialog_content { 18 | max-height: 300px; 19 | overflow: auto; 20 | } 21 | 22 | .mx_ChangelogDialog_li { 23 | padding: 0.2em; 24 | } 25 | -------------------------------------------------------------------------------- /res/img/edit.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /res/img/edit_green.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /res/img/icons-search-copy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /res/css/views/elements/_AccessibleButton.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Vector Creations Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_AccessibleButton:focus { 18 | outline: 0; 19 | filter: brightness($focus-brightness); 20 | } 21 | 22 | .mx_AccessibleButton { 23 | cursor: pointer; 24 | } -------------------------------------------------------------------------------- /res/css/views/elements/_SyntaxHighlight.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_SyntaxHighlight { 18 | /* inhibit hljs styling */ 19 | background: none !important; 20 | color: $light-fg-color !important; 21 | } 22 | -------------------------------------------------------------------------------- /res/css/structures/_ViewSource.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_ViewSource pre { 18 | text-align: left; 19 | font-size: 12px; 20 | padding: 0.5em 1em 0.5em 1em; 21 | word-wrap: break-word; 22 | white-space: pre-wrap; 23 | } 24 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # Copyright 2017 Aviral Dasgupta 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | root = true 16 | 17 | [*] 18 | charset=utf-8 19 | end_of_line = lf 20 | insert_final_newline = true 21 | indent_style = space 22 | indent_size = 4 23 | trim_trailing_whitespace = true 24 | -------------------------------------------------------------------------------- /src/email.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | const EMAIL_ADDRESS_REGEX = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i; 18 | 19 | module.exports = { 20 | looksValid: function(email) { 21 | return EMAIL_ADDRESS_REGEX.test(email); 22 | }, 23 | }; 24 | -------------------------------------------------------------------------------- /res/css/views/messages/_RoomAvatarEvent.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Vector Creations Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_RoomAvatarEvent { 18 | opacity: 0.5; 19 | overflow-y: hidden; 20 | } 21 | 22 | .mx_RoomAvatarEvent_avatar { 23 | display: inline; 24 | position: relative; 25 | top: 5px; 26 | } -------------------------------------------------------------------------------- /res/img/icons-room.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 8 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /src/components/views/elements/AppWarning.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; // eslint-disable-line no-unused-vars 2 | import PropTypes from 'prop-types'; 3 | import { _t } from '../../../languageHandler'; 4 | 5 | const AppWarning = (props) => { 6 | return ( 7 |
8 |
9 | {_t('Warning!')} 10 |
11 |
12 | { props.errorMsg } 13 |
14 |
15 | ); 16 | }; 17 | 18 | AppWarning.propTypes = { 19 | errorMsg: PropTypes.string, 20 | }; 21 | AppWarning.defaultProps = { 22 | errorMsg: 'Error', 23 | }; 24 | 25 | export default AppWarning; 26 | -------------------------------------------------------------------------------- /src/extend.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | 'use strict'; 18 | 19 | module.exports = function(dest, src) { 20 | for (const i in src) { 21 | if (src.hasOwnProperty(i)) { 22 | dest[i] = src[i]; 23 | } 24 | } 25 | return dest; 26 | }; 27 | -------------------------------------------------------------------------------- /res/css/views/dialogs/_DeactivateAccountDialog.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2018 New Vector Ltd. 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_DeactivateAccountDialog .mx_Dialog_content { 18 | margin-bottom: 30px; 19 | } 20 | 21 | .mx_DeactivateAccountDialog .mx_DeactivateAccountDialog_input_section { 22 | margin-top: 60px; 23 | } 24 | -------------------------------------------------------------------------------- /res/css/views/elements/_ProgressBar.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_ProgressBar { 18 | height: 5px; 19 | border: 1px solid $progressbar-color; 20 | } 21 | 22 | .mx_ProgressBar_fill { 23 | height: 100%; 24 | background-color: $progressbar-color; 25 | } 26 | -------------------------------------------------------------------------------- /res/css/views/groups/_GroupUserSettings.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 New Vector Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_GroupUserSettings_groupPublicity_scrollbox { 18 | height: 200px; 19 | border: 1px solid $primary-hairline-color; 20 | border-radius: 3px; 21 | margin-right: 32px; 22 | overflow: hidden; 23 | } 24 | -------------------------------------------------------------------------------- /res/img/button-md-true.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 2A63B135-4281-4FBB-A88C-012AE22E9594 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /res/css/views/voip/_CallView.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_CallView_voice { 18 | background-color: $accent-color; 19 | color: $accent-fg-color; 20 | cursor: pointer; 21 | text-align: center; 22 | padding: 6px; 23 | font-weight: bold; 24 | font-size: 13px; 25 | } -------------------------------------------------------------------------------- /res/img/tick.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | icon_tick 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /res/css/views/messages/_DateSeparator.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Vector Creations Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_DateSeparator { 18 | clear: both; 19 | margin-top: 32px; 20 | margin-bottom: 8px; 21 | margin-left: 63px; 22 | padding-bottom: 6px; 23 | border-bottom: 1px solid $primary-hairline-color; 24 | } 25 | 26 | -------------------------------------------------------------------------------- /res/css/views/elements/_Spinner.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_Spinner { 18 | display: flex; 19 | align-items: center; 20 | justify-content: center; 21 | width: 100%; 22 | height: 100%; 23 | flex: 1; 24 | } 25 | 26 | .mx_MatrixChat_middlePanel .mx_Spinner { 27 | height: auto; 28 | } -------------------------------------------------------------------------------- /res/css/views/context_menus/_MessageContextMenu.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_MessageContextMenu_field { 18 | padding: 3px 6px 3px 6px; 19 | cursor: pointer; 20 | white-space: nowrap; 21 | } 22 | 23 | .mx_MessageContextMenu_field.mx_MessageContextMenu_fieldSet { 24 | font-weight: bold; 25 | } 26 | -------------------------------------------------------------------------------- /res/img/icons_ellipsis.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /res/css/views/dialogs/_GroupAddressPicker.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 New Vector Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_GroupAddressPicker_checkboxContainer{ 18 | margin-top: 10px; 19 | display: flex; 20 | } 21 | 22 | .mx_GroupAddressPicker_checkboxContainer input[type="checkbox"] { 23 | /* Stop flex from shrinking the checkbox */ 24 | width: 20px; 25 | } 26 | -------------------------------------------------------------------------------- /res/img/cancel-small.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Line + Line 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /res/img/e2e-blocked.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 2805649B-D39D-43EA-A357-659EF9B97BA4 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/notifications/index.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | 'use strict'; 18 | 19 | module.exports = { 20 | NotificationUtils: require('./NotificationUtils'), 21 | PushRuleVectorState: require('./PushRuleVectorState'), 22 | VectorPushRulesDefinitions: require('./VectorPushRulesDefinitions'), 23 | ContentRules: require('./ContentRules'), 24 | }; 25 | -------------------------------------------------------------------------------- /res/img/icon-context-mute.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /res/img/icons-search.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /res/img/voip-chevron.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Triangle 1 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /res/img/plus.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Line + Line 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/UiEffects.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | /** 18 | * Functions for applying common thematic effects to UI elements. 19 | * Ideally this would be themeable. 20 | */ 21 | 22 | import Velocity from 'velocity-vector'; 23 | import 'velocity-vector/velocity.ui'; 24 | 25 | export function field_input_incorrect(element) { 26 | Velocity(element, "callout.shake", 300); 27 | } 28 | -------------------------------------------------------------------------------- /res/css/views/dialogs/_EncryptedEventDialog.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_EncryptedEventDialog .mx_MemberDeviceInfo { 18 | float: right; 19 | padding: 0px; 20 | margin-right: 42px; 21 | } 22 | 23 | .mx_EncryptedEventDialog .mx_MemberDeviceInfo_textButton { 24 | @mixin mx_DialogButton; 25 | background-color: $primary-bg-color; 26 | color: $accent-color; 27 | } -------------------------------------------------------------------------------- /scripts/emoji-data-strip.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | const EMOJI_DATA = require('emojione/emoji.json'); 3 | const EMOJI_SUPPORTED = Object.keys(require('emojione').emojioneList); 4 | const fs = require('fs'); 5 | 6 | const output = Object.keys(EMOJI_DATA).map( 7 | (key) => { 8 | const datum = EMOJI_DATA[key]; 9 | const newDatum = { 10 | name: datum.name, 11 | shortname: datum.shortname, 12 | category: datum.category, 13 | emoji_order: datum.emoji_order, 14 | }; 15 | if (datum.aliases_ascii.length > 0) { 16 | newDatum.aliases_ascii = datum.aliases_ascii; 17 | } 18 | return newDatum; 19 | } 20 | ).filter((datum) => { 21 | return EMOJI_SUPPORTED.includes(datum.shortname); 22 | }); 23 | 24 | // Write to a file in src. Changes should be checked into git. This file is copied by 25 | // babel using --copy-files 26 | fs.writeFileSync('./src/stripped-emoji.json', JSON.stringify(output)); 27 | -------------------------------------------------------------------------------- /res/img/icon-mx-user.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 9 | 11 | 13 | 15 | 16 | -------------------------------------------------------------------------------- /src/components/views/login/LoginHeader.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | 'use strict'; 18 | 19 | const React = require('react'); 20 | 21 | module.exports = React.createClass({ 22 | displayName: 'LoginHeader', 23 | 24 | render: function() { 25 | return ( 26 |
27 | Matrix 28 |
29 | ); 30 | }, 31 | }); 32 | -------------------------------------------------------------------------------- /res/img/icons-apps.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /res/img/search-icon-vector.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 9 | 11 | 13 | 15 | 16 | -------------------------------------------------------------------------------- /res/css/views/elements/_RoleButton.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2107 Vector Creations Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_RoleButton { 18 | margin-left: 4px; 19 | margin-right: 4px; 20 | cursor: pointer; 21 | display: inline-block; 22 | } 23 | 24 | .mx_RoleButton object { 25 | pointer-events: none; 26 | } 27 | 28 | .mx_RoleButton_tooltip { 29 | display: inline-block; 30 | position: relative; 31 | top: -25px; 32 | left: 6px; 33 | } 34 | -------------------------------------------------------------------------------- /res/css/views/settings/_IntegrationsManager.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_IntegrationsManager .mx_Dialog { 18 | width: 60%; 19 | height: 70%; 20 | overflow: hidden; 21 | padding: 0px; 22 | max-width: initial; 23 | max-height: initial; 24 | } 25 | 26 | .mx_IntegrationsManager iframe { 27 | background-color: #fff; 28 | border: 0px; 29 | width: 100%; 30 | height: 100%; 31 | } 32 | -------------------------------------------------------------------------------- /res/css/structures/_HomePage.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2016 OpenMarket Ltd 3 | Copyright 2017 Vector Creations Ltd 4 | 5 | Licensed under the Apache License, Version 2.0 (the "License"); 6 | you may not use this file except in compliance with the License. 7 | You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | */ 17 | 18 | .mx_HomePage { 19 | max-width: 960px; 20 | width: 100%; 21 | height: 100%; 22 | margin-left: auto; 23 | margin-right: auto; 24 | } 25 | 26 | .mx_HomePage iframe { 27 | display: block; 28 | width: 100%; 29 | height: 100%; 30 | border: 0px; 31 | } 32 | 33 | .mx_HomePage_body { 34 | // margin-left: 63px; 35 | } 36 | -------------------------------------------------------------------------------- /res/img/icon-context-mute-off.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/PageTypes.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | Copyright 2017 Vector Creations Ltd 4 | 5 | Licensed under the Apache License, Version 2.0 (the "License"); 6 | you may not use this file except in compliance with the License. 7 | You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | */ 17 | 18 | /** The types of page which can be shown by the LoggedInView */ 19 | export default { 20 | HomePage: "home_page", 21 | RoomView: "room_view", 22 | UserSettings: "user_settings", 23 | CreateRoom: "create_room", 24 | RoomDirectory: "room_directory", 25 | UserView: "user_view", 26 | GroupView: "group_view", 27 | MyGroups: "my_groups", 28 | }; 29 | -------------------------------------------------------------------------------- /res/img/icon-address-delete.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 943783E9-DBD7-4D4E-BAC9-35437C17C2C4 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /res/img/icon-text-cancel.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 28D80248-63BA-4A5F-9216-4CFE72784BAC 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /res/img/cancel.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Slice 1 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /res/img/cancel-white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Slice 1 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /res/img/cancel_green.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Slice 1 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /res/img/maximise.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | minimise 7 | Created with sketchtool. 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/components/views/context_menus/GenericTextContextMenu.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | 'use strict'; 18 | 19 | import React from 'react'; 20 | import PropTypes from 'prop-types'; 21 | 22 | export default class GenericTextContextMenu extends React.Component { 23 | static PropTypes = { 24 | message: PropTypes.string.isRequired, 25 | }; 26 | 27 | render() { 28 | return
{ this.props.message }
; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /res/img/cancel-red.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Slice 1 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /res/css/views/login/_ServerConfig.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_ServerConfig { 18 | margin-top: 7px; 19 | } 20 | 21 | .mx_ServerConfig .mx_Login_field { 22 | margin-top: 4px; 23 | margin-bottom: 5px; 24 | } 25 | 26 | .mx_ServerConfig_help:link { 27 | opacity: 0.8; 28 | font-size: 13px; 29 | font-weight: 300; 30 | color: $primary-fg-color; 31 | } 32 | 33 | .mx_ServerConfig_selector { 34 | text-align: center; 35 | width: 302px; // for fr i18n 36 | } -------------------------------------------------------------------------------- /res/css/views/avatars/_BaseAvatar.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_BaseAvatar { 18 | position: relative; 19 | } 20 | 21 | .mx_BaseAvatar_initial { 22 | position: absolute; 23 | left: 0px; 24 | color: $avatar-initial-color; 25 | text-align: center; 26 | speak: none; 27 | pointer-events: none; 28 | font-weight: normal; 29 | } 30 | 31 | .mx_BaseAvatar_image { 32 | border-radius: 40px; 33 | vertical-align: top; 34 | background-color: $avatar-bg-color; 35 | } 36 | -------------------------------------------------------------------------------- /src/components/views/login/LoginFooter.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | 'use strict'; 18 | 19 | import { _t } from '../../../languageHandler'; 20 | import React from 'react'; 21 | 22 | module.exports = React.createClass({ 23 | displayName: 'LoginFooter', 24 | 25 | render: function() { 26 | return ( 27 |
28 | { _t("powered by Matrix") } 29 |
30 | ); 31 | }, 32 | }); 33 | -------------------------------------------------------------------------------- /src/utils/DirectoryUtils.js: -------------------------------------------------------------------------------- 1 | // Find a protocol 'instance' with a given instance_id 2 | // in the supplied protocols dict 3 | export function instanceForInstanceId(protocols, instance_id) { 4 | if (!instance_id) return null; 5 | for (const proto of Object.keys(protocols)) { 6 | if (!protocols[proto].instances && protocols[proto].instances instanceof Array) continue; 7 | for (const instance of protocols[proto].instances) { 8 | if (instance.instance_id == instance_id) return instance; 9 | } 10 | } 11 | } 12 | 13 | // given an instance_id, return the name of the protocol for 14 | // that instance ID in the supplied protocols dict 15 | export function protocolNameForInstanceId(protocols, instance_id) { 16 | if (!instance_id) return null; 17 | for (const proto of Object.keys(protocols)) { 18 | if (!protocols[proto].instances && protocols[proto].instances instanceof Array) continue; 19 | for (const instance of protocols[proto].instances) { 20 | if (instance.instance_id == instance_id) return proto; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /res/img/icons-pin.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /res/css/structures/_CreateRoom.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_CreateRoom { 18 | width: 960px; 19 | margin-left: auto; 20 | margin-right: auto; 21 | color: $primary-fg-color; 22 | } 23 | 24 | .mx_CreateRoom input, 25 | .mx_CreateRoom textarea { 26 | border-radius: 3px; 27 | border: 1px solid $strong-input-border-color; 28 | font-weight: 300; 29 | font-size: 13px; 30 | padding: 9px; 31 | margin-top: 6px; 32 | } 33 | 34 | .mx_CreateRoom_description { 35 | width: 330px; 36 | } 37 | 38 | -------------------------------------------------------------------------------- /res/css/views/elements/_ReplyThread.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2018 Vector Creations Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_ReplyThread { 18 | margin-top: 0; 19 | } 20 | 21 | .mx_ReplyThread .mx_DateSeparator { 22 | font-size: 1em !important; 23 | margin-top: 0; 24 | margin-bottom: 0; 25 | padding-bottom: 1px; 26 | bottom: -5px; 27 | } 28 | 29 | .mx_ReplyThread_show { 30 | cursor: pointer; 31 | } 32 | 33 | blockquote.mx_ReplyThread { 34 | margin-left: 0; 35 | padding-left: 10px; 36 | border-left: 4px solid $blockquote-bar-color; 37 | } 38 | -------------------------------------------------------------------------------- /res/css/views/rooms/_PinnedEventsPanel.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Travis Ralston 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_PinnedEventsPanel { 18 | border-top: 1px solid $primary-hairline-color; 19 | } 20 | 21 | .mx_PinnedEventsPanel_body { 22 | max-height: 300px; 23 | overflow-y: auto; 24 | padding-bottom: 15px; 25 | } 26 | 27 | .mx_PinnedEventsPanel_header { 28 | margin: 0; 29 | padding-top: 8px; 30 | padding-bottom: 15px; 31 | } 32 | 33 | .mx_PinnedEventsPanel_cancel { 34 | margin: 12px; 35 | float: right; 36 | display: inline-block; 37 | } 38 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | import Skinner from './Skinner'; 18 | import RtsClient from './RtsClient'; 19 | 20 | module.exports.loadSkin = function(skinObject) { 21 | Skinner.load(skinObject); 22 | }; 23 | 24 | module.exports.resetSkin = function() { 25 | Skinner.reset(); 26 | }; 27 | 28 | module.exports.getComponent = function(componentName) { 29 | return Skinner.getComponent(componentName); 30 | }; 31 | 32 | module.exports.setFetch = function(fetchFunction) { 33 | RtsClient.setFetch(fetchFunction); 34 | }; 35 | -------------------------------------------------------------------------------- /src/RoomListSorter.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | 'use strict'; 18 | 19 | function tsOfNewestEvent(room) { 20 | if (room.timeline.length) { 21 | return room.timeline[room.timeline.length - 1].getTs(); 22 | } else { 23 | return Number.MAX_SAFE_INTEGER; 24 | } 25 | } 26 | 27 | function mostRecentActivityFirst(roomList) { 28 | return roomList.sort(function(a, b) { 29 | return tsOfNewestEvent(b) - tsOfNewestEvent(a); 30 | }); 31 | } 32 | 33 | module.exports = { 34 | mostRecentActivityFirst, 35 | }; 36 | -------------------------------------------------------------------------------- /src/utils/PinningUtils.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Travis Ralston 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | export default class PinningUtils { 18 | /** 19 | * Determines if the given event may be pinned. 20 | * @param {MatrixEvent} event The event to check. 21 | * @return {boolean} True if the event may be pinned, false otherwise. 22 | */ 23 | static isPinnable(event) { 24 | if (!event) return false; 25 | if (event.getType() !== "m.room.message") return false; 26 | if (event.isRedacted()) return false; 27 | 28 | return true; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /src/matrix-to.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 New Vector Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | export const host = "matrix.to"; 18 | export const baseUrl = `https://${host}`; 19 | 20 | export function makeEventPermalink(roomId, eventId) { 21 | return `${baseUrl}/#/${roomId}/${eventId}`; 22 | } 23 | 24 | export function makeUserPermalink(userId) { 25 | return `${baseUrl}/#/${userId}`; 26 | } 27 | 28 | export function makeRoomPermalink(roomId) { 29 | return `${baseUrl}/#/${roomId}`; 30 | } 31 | 32 | export function makeGroupPermalink(groupId) { 33 | return `${baseUrl}/#/${groupId}`; 34 | } 35 | -------------------------------------------------------------------------------- /res/img/button-new-window.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 12 | 13 | -------------------------------------------------------------------------------- /scripts/fixup-imports.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl -pi 2 | 3 | # pass in a list of filenames whose imports should be fixed up to be relative 4 | # to matrix-react-sdk rather than vector-web. 5 | # filenames must be relative to src/ - e.g. ./components/moo/Moo.js 6 | 7 | # run with something like: 8 | # sierra:src matthew$ grep -ril 'require(.matrix-react-sdk' . | xargs ../scripts/fixup-imports.pl 9 | # sierra:src matthew$ grep -ril 'import.*matrix-react-sdk' . | xargs ../scripts/fixup-imports.pl 10 | 11 | # e.g. turning: 12 | # var rate_limited_func = require('matrix-react-sdk/lib/ratelimitedfunc'); 13 | # 14 | # into: 15 | # const rate_limited_func = require('../../ratelimitedfunc'); 16 | # 17 | # ...if the current file is two levels deep inside lib. 18 | 19 | $depth = () = $ARGV =~ m#/#g; 20 | $depth--; 21 | $prefix = $depth > 0 ? ('../' x $depth) : './'; 22 | 23 | s/= require\(['"]matrix-react-sdk\/lib\/(.*?)['"]\)/= require('$prefix$1')/; 24 | s/= require\(['"]matrix-react-sdk['"]\)/= require('${prefix}index')/; 25 | 26 | s/^(import .* from )['"]matrix-react-sdk\/lib\/(.*?)['"]/$1'$prefix$2'/; 27 | s/^(import .* from )['"]matrix-react-sdk['"]/$1'${prefix}index'/; 28 | -------------------------------------------------------------------------------- /res/img/e2e-not_sent.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 48BF5D32-306C-4B20-88EB-24B1F743CAC9 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /res/img/icons-share.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /res/css/views/dialogs/_SetPasswordDialog.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Vector Creations Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_SetPasswordDialog_change_password input { 18 | border-radius: 3px; 19 | border: 1px solid $input-border-color; 20 | padding: 9px; 21 | color: $primary-fg-color; 22 | background-color: $primary-bg-color; 23 | font-size: 15px; 24 | width: 100%; 25 | max-width: 280px; 26 | margin-bottom: 10px; 27 | } 28 | 29 | .mx_SetPasswordDialog_change_password_button { 30 | margin-top: 68px; 31 | } 32 | 33 | .mx_SetPasswordDialog .mx_Dialog_content { 34 | margin-bottom: 0px; 35 | } 36 | -------------------------------------------------------------------------------- /res/img/icon-context-mute-mentions.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/components/views/elements/InlineSpinner.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 New Vector Ltd. 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | const React = require('react'); 18 | 19 | module.exports = React.createClass({ 20 | displayName: 'InlineSpinner', 21 | 22 | render: function() { 23 | var w = this.props.w || 16; 24 | var h = this.props.h || 16; 25 | var imgClass = this.props.imgClassName || ""; 26 | 27 | return ( 28 |
29 | 30 |
31 | ); 32 | } 33 | }); 34 | -------------------------------------------------------------------------------- /res/img/icon-context-fave.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8A6E1837-F0F1-432E-A0DA-6F3741F71EBF 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/components/views/elements/Spinner.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | 'use strict'; 18 | 19 | var React = require('react'); 20 | 21 | module.exports = React.createClass({ 22 | displayName: 'Spinner', 23 | 24 | render: function() { 25 | var w = this.props.w || 32; 26 | var h = this.props.h || 32; 27 | var imgClass = this.props.imgClassName || ""; 28 | return ( 29 |
30 | 31 |
32 | ); 33 | } 34 | }); 35 | -------------------------------------------------------------------------------- /res/css/views/dialogs/_SetEmailDialog.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Vector Creations Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_SetEmailDialog_email_input { 18 | border-radius: 3px; 19 | border: 1px solid $input-border-color; 20 | padding: 9px; 21 | color: $input-fg-color; 22 | background-color: $primary-bg-color; 23 | font-size: 15px; 24 | width: 100%; 25 | max-width: 280px; 26 | margin-bottom: 10px; 27 | } 28 | 29 | .mx_SetEmailDialog_email_input:focus { 30 | outline: none; 31 | box-shadow: none; 32 | border: 1px solid $accent-color; 33 | } 34 | 35 | .mx_SetEmailDialog_email_input_placeholder { 36 | } 37 | -------------------------------------------------------------------------------- /res/img/e2e-encrypting.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 48BF5D32-306C-4B20-88EB-24B1F743CAC9 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /res/img/icon-context-fave-on.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | DAE17B64-40B5-478A-8E8D-97AD1A6E25C8 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /res/img/button-text-italic-o-n.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 116426C2-0B55-480E-92B3-57D4B3ABAB90 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /res/img/button-text-italic.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9FBC844D-96CF-4DCB-B545-FCD23727218B 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /res/img/e2e-verified.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 48BF5D32-306C-4B20-88EB-24B1F743CAC9 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /res/img/eol.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | icon_eol 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/components/views/login/CasLogin.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | 'use strict'; 18 | 19 | import React from 'react'; 20 | import PropTypes from 'prop-types'; 21 | import { _t } from '../../../languageHandler'; 22 | 23 | module.exports = React.createClass({ 24 | displayName: 'CasLogin', 25 | 26 | propTypes: { 27 | onSubmit: PropTypes.func, // fn() 28 | }, 29 | 30 | render: function() { 31 | return ( 32 |
33 | 34 |
35 | ); 36 | }, 37 | 38 | }); 39 | -------------------------------------------------------------------------------- /src/utils/Receipt.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | /** 18 | * Given MatrixEvent containing receipts, return the first 19 | * read receipt from the given user ID, or null if no such 20 | * receipt exists. 21 | */ 22 | export function findReadReceiptFromUserId(receiptEvent, userId) { 23 | const receiptKeys = Object.keys(receiptEvent.getContent()); 24 | for (let i = 0; i < receiptKeys.length; ++i) { 25 | const rcpt = receiptEvent.getContent()[receiptKeys[i]]; 26 | if (rcpt['m.read'] && rcpt['m.read'][userId]) { 27 | return rcpt; 28 | } 29 | } 30 | 31 | return null; 32 | } 33 | -------------------------------------------------------------------------------- /res/css/views/dialogs/_CreateRoomDialog.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_CreateRoomDialog_details_summary { 18 | outline: none; 19 | } 20 | 21 | .mx_CreateRoomDialog_label { 22 | text-align: left; 23 | padding-bottom: 12px; 24 | } 25 | 26 | .mx_CreateRoomDialog_input_container { 27 | padding-right: 20px; 28 | } 29 | 30 | .mx_CreateRoomDialog_input { 31 | font-size: 15px; 32 | border-radius: 3px; 33 | border: 1px solid $input-border-color; 34 | padding: 9px; 35 | color: $primary-fg-color; 36 | background-color: $primary-bg-color; 37 | width: 100%; 38 | } 39 | -------------------------------------------------------------------------------- /res/img/button-refresh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 12 | 13 | -------------------------------------------------------------------------------- /src/components/views/rooms/RoomDropTarget.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2015, 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | 'use strict'; 18 | 19 | var React = require('react'); 20 | 21 | module.exports = React.createClass({ 22 | displayName: 'RoomDropTarget', 23 | 24 | render: function() { 25 | return ( 26 |
27 |
28 |
29 | { this.props.label } 30 |
31 |
32 |
33 | ); 34 | } 35 | }); 36 | -------------------------------------------------------------------------------- /res/img/icons-home.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | 9 | 81230A28-D944-4572-B5DB-C03CAA2B1FCA 10 | Created with sketchtool. 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /src/notifications/StandardActions.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | 'use strict'; 18 | 19 | var NotificationUtils = require('./NotificationUtils'); 20 | 21 | var encodeActions = NotificationUtils.encodeActions; 22 | 23 | module.exports = { 24 | ACTION_NOTIFY: encodeActions({notify: true}), 25 | ACTION_NOTIFY_DEFAULT_SOUND: encodeActions({notify: true, sound: "default"}), 26 | ACTION_NOTIFY_RING_SOUND: encodeActions({notify: true, sound: "ring"}), 27 | ACTION_HIGHLIGHT_DEFAULT_SOUND: encodeActions({notify: true, sound: "default", highlight: true}), 28 | ACTION_DONT_NOTIFY: encodeActions({notify: false}), 29 | ACTION_DISABLED: null, 30 | }; 31 | -------------------------------------------------------------------------------- /res/css/views/groups/_GroupPublicityToggle.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 New Vector Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_GroupPublicity_toggle { 18 | display: flex; 19 | align-items: center; 20 | margin: 8px; 21 | } 22 | 23 | .mx_GroupPublicity_toggle > label { 24 | display: flex; 25 | align-items: flex-start; 26 | } 27 | 28 | .mx_GroupPublicity_toggle > label, 29 | .mx_GroupPublicity_toggle .mx_GroupTile { 30 | width: 50%; 31 | } 32 | 33 | .mx_GroupPublicity_toggle input { 34 | margin-right: 8px; 35 | vertical-align: -4px; 36 | } 37 | 38 | .mx_GroupPublicity_toggle .mx_GroupTile { 39 | display: flex; 40 | align-items: flex-start; 41 | cursor: pointer; 42 | } 43 | -------------------------------------------------------------------------------- /res/img/minimise.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | minimise 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /res/img/icon-context-mute-off-copy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /res/img/icons-create-room.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 0F9BCC43-B3A7-4C9F-8E34-1F38194362C2 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/Roles.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2017 Vector Creations Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | import { _t } from './languageHandler'; 17 | 18 | export function levelRoleMap(usersDefault) { 19 | return { 20 | undefined: _t('Default'), 21 | 0: _t('Restricted'), 22 | [usersDefault]: _t('Default'), 23 | 50: _t('Moderator'), 24 | 100: _t('Admin'), 25 | }; 26 | } 27 | 28 | export function textualPowerLevel(level, usersDefault) { 29 | const LEVEL_ROLE_MAP = this.levelRoleMap(usersDefault); 30 | if (LEVEL_ROLE_MAP[level]) { 31 | return LEVEL_ROLE_MAP[level] + (level !== undefined ? ` (${level})` : ` (${usersDefault})`); 32 | } else { 33 | return level; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /res/img/icons-close.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | icons_create_room 9 | Created with sketchtool. 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /res/img/scrollto.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Slice 1 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /res/css/views/dialogs/_ChatCreateOrReuseChatDialog.scss: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2016 OpenMarket Ltd 3 | 4 | Licensed under the Apache License, Version 2.0 (the "License"); 5 | you may not use this file except in compliance with the License. 6 | You may obtain a copy of the License at 7 | 8 | http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | Unless required by applicable law or agreed to in writing, software 11 | distributed under the License is distributed on an "AS IS" BASIS, 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | See the License for the specific language governing permissions and 14 | limitations under the License. 15 | */ 16 | 17 | .mx_ChatCreateOrReuseDialog .mx_ChatCreateOrReuseDialog_tiles { 18 | margin-top: 24px; 19 | } 20 | 21 | .mx_ChatCreateOrReuseDialog .mx_Dialog_content { 22 | margin-bottom: 24px; 23 | 24 | /* 25 | To stop spinner that mx_ChatCreateOrReuseDialog_profile replaces from causing a 26 | height change 27 | */ 28 | min-height: 100px; 29 | } 30 | 31 | .mx_ChatCreateOrReuseDialog .mx_RoomTile_badge { 32 | display: none; 33 | } 34 | 35 | .mx_ChatCreateOrReuseDialog_profile { 36 | display: flex; 37 | } 38 | 39 | .mx_ChatCreateOrReuseDialog_profile_name { 40 | padding: 14px; 41 | } 42 | -------------------------------------------------------------------------------- /res/img/icons-room-add.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 10 | 11 | 13 | 14 | 15 | 16 | 17 | 18 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /res/img/icon-return.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | B542A09B-DBBF-41D4-A5FD-D05EE1E6BBC4 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /res/img/button-text-formatting.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 10 | 11 | 12 | 14 | 15 | 16 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /res/img/leave.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | 10 | 11 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /res/img/network-matrix.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 13 | 14 | 15 | --------------------------------------------------------------------------------