diff --git a/.babelrc b/.babelrc index 8c7b66269d..6ba0e0dae0 100644 --- a/.babelrc +++ b/.babelrc @@ -1,4 +1,4 @@ { "presets": ["react", "es2015", "es2016"], - "plugins": ["transform-class-properties", "transform-object-rest-spread", "transform-async-to-generator", "transform-runtime", "add-module-exports"] + "plugins": ["transform-class-properties", "transform-object-rest-spread", "transform-async-to-bluebird", "transform-runtime", "add-module-exports"] } diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index 7e1d380cba..ba4adf39f0 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -1,3 +1,5 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/res/themes/riot/img/logos/riot-im-logo-2.svg b/res/themes/riot/img/logos/riot-im-logo-2.svg new file mode 100644 index 0000000000..f9cc92f13b --- /dev/null +++ b/res/themes/riot/img/logos/riot-im-logo-2.svg @@ -0,0 +1,165 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/res/themes/riot/img/logos/riot-im-logo-3.svg b/res/themes/riot/img/logos/riot-im-logo-3.svg new file mode 100644 index 0000000000..7f81dacd72 --- /dev/null +++ b/res/themes/riot/img/logos/riot-im-logo-3.svg @@ -0,0 +1,173 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/res/themes/riot/img/logos/riot-im-logo-4.svg b/res/themes/riot/img/logos/riot-im-logo-4.svg new file mode 100644 index 0000000000..307868e604 --- /dev/null +++ b/res/themes/riot/img/logos/riot-im-logo-4.svg @@ -0,0 +1,185 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/res/themes/riot/img/logos/riot-im-logo-5.svg b/res/themes/riot/img/logos/riot-im-logo-5.svg new file mode 100644 index 0000000000..2653d7c9c8 --- /dev/null +++ b/res/themes/riot/img/logos/riot-im-logo-5.svg @@ -0,0 +1,110 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/src/skins/vector/img/logos/riot-logo-1.svg b/res/themes/riot/img/logos/riot-logo-1.svg similarity index 100% rename from src/skins/vector/img/logos/riot-logo-1.svg rename to res/themes/riot/img/logos/riot-logo-1.svg diff --git a/src/skins/vector/img/logos/riot-logo-2.svg b/res/themes/riot/img/logos/riot-logo-2.svg similarity index 100% rename from src/skins/vector/img/logos/riot-logo-2.svg rename to res/themes/riot/img/logos/riot-logo-2.svg diff --git a/src/skins/vector/img/logos/riot-logo-3.svg b/res/themes/riot/img/logos/riot-logo-3.svg similarity index 100% rename from src/skins/vector/img/logos/riot-logo-3.svg rename to res/themes/riot/img/logos/riot-logo-3.svg diff --git a/src/skins/vector/img/logos/riot-logo-4.svg b/res/themes/riot/img/logos/riot-logo-4.svg similarity index 100% rename from src/skins/vector/img/logos/riot-logo-4.svg rename to res/themes/riot/img/logos/riot-logo-4.svg diff --git a/src/skins/vector/img/logos/riot-logo-5.svg b/res/themes/riot/img/logos/riot-logo-5.svg similarity index 100% rename from src/skins/vector/img/logos/riot-logo-5.svg rename to res/themes/riot/img/logos/riot-logo-5.svg diff --git a/src/skins/vector/img/logos/riot-logo-bw.svg b/res/themes/riot/img/logos/riot-logo-bw.svg similarity index 100% rename from src/skins/vector/img/logos/riot-logo-bw.svg rename to res/themes/riot/img/logos/riot-logo-bw.svg diff --git a/src/skins/vector/img/logos/riot-logo.svg b/res/themes/riot/img/logos/riot-logo.svg similarity index 100% rename from src/skins/vector/img/logos/riot-logo.svg rename to res/themes/riot/img/logos/riot-logo.svg diff --git a/res/themes/riot/img/logos/riot.im logo.svg b/res/themes/riot/img/logos/riot.im logo.svg new file mode 100644 index 0000000000..5ebd96e84b --- /dev/null +++ b/res/themes/riot/img/logos/riot.im logo.svg @@ -0,0 +1,169 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/res/themes/status/css/_StatusLogin.scss b/res/themes/status/css/_StatusLogin.scss new file mode 100644 index 0000000000..6872727423 --- /dev/null +++ b/res/themes/status/css/_StatusLogin.scss @@ -0,0 +1,232 @@ +/* +Copyright 2017 New Vector Ltd + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// overrides for mx_Login* specific to Status. +// Ideally this would be all Status prefixes for a Status specific version of the component +// but given we're not doing Status as a dedicated 'skin' yet... + +.mx_StatusLogin { + + width: 100%; + height: 100%; + + display: flex; + align-items: center; + justify-content: center; + + overflow: auto; + + .mx_StatusLogin_brand { + position: absolute; + top: 30px; + left: 30px; + } + + .mx_StatusLogin_content { + margin: auto; + } + + .mx_StatusLogin_header { + text-align: center; + margin-top: 70px; + margin-bottom: 50px; + } + + .mx_StatusLogin_header h1 { + font-size: 29px; + margin-bottom: 3px; + } + + .mx_StatusLogin_subtitle { + font-size: 18px; + } + + .mx_StatusLogin_subtitle a { + color: $riot-link-color; + } + + .mx_StatusLogin_footer { + margin-top: 30px; + margin-bottom: 30px; + text-align: center; + font-size: 16px; + color: $footer-color; + } + + .mx_StatusLogin_footer p { + margin-top: 0.5em; + margin-bottom: 0.5em; + } + + .mx_StatusLogin_footer_cta { + color: $callout-color; + font-family: $header-font-family; + letter-spacing: 1px; + font-size: 13px; + text-transform: uppercase; + opacity: 1.0; + transition: opacity .2s ease; + } + + .mx_StatusLogin_footer_cta:hover { + opacity: 0.5; + text-decoration: none; + } + + // overrides of .mx_Login + + .mx_Login_box { + width: 330px; + min-height: initial; + padding-top: 40px; + padding-bottom: 20px; + padding-left: 10px; + padding-right: 10px; + border-radius: 8px; + color: $form-fg-color; + font-size: 16px; + line-height: 25px; + background-color: $form-bg-color; + background-image: url(../../themes/status/img/dot.svg); + box-shadow: 0px 5px 16px 0px rgba(25,12,46,0.16); + position: relative; + text-align: center; + } + + .mx_Login_logo { + background-color: #fff; + width: 74px; + height: 74px; + border-radius: 37px; + box-shadow: 0px 5px 16px 0px rgba(0,0,0,0.2); + position: absolute; + top: -36px; + left: 50%; + margin-left: -36px; + } + + .mx_Login_logo img { + width: 36px; + height: 36px; + padding: 19px; + } + + .mx_Login_box h2 { + text-align: center; + color: $form-fg-color; + font-size: 25px; + margin-bottom: 24px; + } + + .mx_Login_field { + width: 260px; + height: 27px; + padding: 8px 20px 10px 20px; + border-radius: 10px; + text-align: left; + border: 1px solid transparent; + background-color: $form-field-bg-color; + color: $form-field-fg-color; + font-weight: 300; + font-size: 15px; + margin-bottom: 14px; + transition: background-color .2s ease; + } + + .mx_Login_field:focus { + border: 1px solid transparent; + background-color: $form-field-bg-hover-color; + } + + .mx_Login_field::-webkit-input-placeholder { + font-family: $font-family; + color: $form-field-fg-color; + opacity: 0.6; + } + + .mx_Login_field::-moz-placeholder { + font-family: $font-family; + color: $form-field-fg-color; + opacity: 0.6; + } + + .mx_Login_field_disabled { + opacity: 0.3; + } + + .mx_Login_prompt { + font-size: 16px; + } + + .mx_Login_submit { + min-width: 200px; + width: auto; + margin-top: 13px; + margin-bottom: 10px; + } + + .mx_Login_submit:disabled { + opacity: 0.3; + } + + .mx_Login_create { + margin-top: 10px; + display: block; + text-align: center; + width: 100%; + font-size: 15px; + opacity: 1.0; + } + + .mx_Login_create:link, + .mx_Login_create:hover, + .mx_Login_create:visited + { + color: $form-fg-color; + } + + .mx_Login_forgot { + display: block; + font-size: 15px; + } + + .mx_Login_forgot:link, + .mx_Login_forgot:hover, + .mx_Login_forgot:visited + { + color: $form-fg-color; + } + + .mx_Login_error { + color: $warning-color; + font-size: 18px; + width: 300px; + height: 44px; + display: flex; + justify-content: center; + align-items: center; + margin: auto; + text-align: center; + margin-top: 12px; + margin-bottom: 16px; + } + + .mx_Login_smallError { + font-size: 13px; + line-height: initial; + } + +} diff --git a/res/themes/status/css/_status.scss b/res/themes/status/css/_status.scss new file mode 100644 index 0000000000..c99af14e94 --- /dev/null +++ b/res/themes/status/css/_status.scss @@ -0,0 +1,292 @@ +@font-face { + font-family:PostGrotesk-Medium; + src:url('https://status.im/fonts/PostGrotesk-Medium.eot'); + src:url('https://status.im/fonts/PostGrotesk-Medium.eot?#iefix') format("embedded-opentype"),url('https://status.im/fonts/PostGrotesk-Medium.woff') format("woff"),url('https://status.im/fonts/PostGrotesk-Medium.svg#PostGrotesk-Medium') format("svg"); + font-weight: 400; + font-style: normal; +} + +@font-face { + font-family:PostGrotesk-Book; + src:url('https://status.im/fonts/PostGrotesk-Book.eot'); + src:url('https://status.im/fonts/PostGrotesk-Book.eot?#iefix') format("embedded-opentype"),url('https://status.im/fonts/PostGrotesk-Book.woff') format("woff"),url('https://status.im/fonts/PostGrotesk-Book.svg#PostGrotesk-Book') format("svg"); + font-weight: 400; + font-style: normal; +} + +// We deliberately prioritise Arial over Helvetica here due to diacritic problems (see _base.scss) +// N.B. that the status.im website uses: +// font-family:PostGrotesk-Book,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif; +// ...but can't be bothered to work out how the apple fonts & segoe interact, so keepingn it simple for now. + +$font-family: PostGrotesk-Book, Arial, Helvetica, Sans-Serif; + +// typical text (dark-on-white in light skin) +$primary-fg-color: #70808D; +$primary-bg-color: #EEF2F5; + +// ***** Start of Status theme specifics ****** +$header-color: #49555F; +$header-font-family: PostGrotesk-Medium, Arial, Helvetica, Sans-Serif; + +$footer-color: #8D99A4; + +$riot-link-color: #A26988; + +a { + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + +h1,h2,h3,h4,h5 { + color: $header-color; + font-family: $header-font-family; + font-weight: 400 ! important; +} + +$callout-color: #4360DF; // or #4957b8 from status.im homepage + +$form-bg-color: $callout-color; +$form-fg-color: #ffffff; + +$form-field-bg-color: rgba(244, 242, 247, 0.12); +$form-field-bg-hover-color: rgba(255, 255, 255, 0.2); +$form-field-fg-color: #ffffff; + +// ***** End of Status theme specifics ****** + + +// used for dialog box text +$light-fg-color: #747474; + +// used for focusing form controls +$focus-bg-color: #dddddd; + +// button UI (white-on-green in light skin) +$accent-fg-color: #ffffff; +$accent-color: #6CC1F6; +$accent-hover-color: #84cfff; + +$selection-fg-color: $primary-bg-color; + +$focus-brightness: 125%; + +// red warning colour +$warning-color: #F69E98; +$warning-bg-color: #DF2A8B; +$info-bg-color: #2A9EDF; +$mention-user-pill-bg-color: #ff0064; +$other-user-pill-bg-color: rgba(0, 0, 0, 0.1); + +$group-alert-color: #774f7e; + +$preview-bar-bg-color: #f7f7f7; + +// left-panel style muted accent color +$secondary-accent-color: #586C7B; +$tertiary-accent-color: #DBEBF6; + +// stop the tinter trying to change the secondary accent color +// by overriding the key to something untintable +// XXX: this is a bit of a hack. +#mx_theme_secondaryAccentColor { + color: #c0ffee ! important; +} + +#mx_theme_tertiaryAccentColor { + color: #c0ffee ! important; +} + +// used by RoomDirectory permissions +$plinth-bg-color: $secondary-accent-color; + +// used by RoomDropTarget +$droptarget-bg-color: rgba(255,255,255,0.5); + +// used by AddressSelector +$selected-color: #eaf5f0; + +// selected for hoverover & selected event tiles +$event-selected-color: #f7f7f7; + +// used for the hairline dividers in RoomView +$primary-hairline-color: #e5e5e5; + +// used for the border of input text fields +$input-border-color: #c9cfd4; + +// apart from login forms, which have stronger border +$strong-input-border-color: #c7c7c7; + +// used for UserSettings EditableText +$input-underline-color: rgba(151, 151, 151, 0.5); +$input-fg-color: rgba(74, 74, 74, 0.9); + +// context menus +$menu-border-color: rgba(187, 187, 187, 0.5); +$menu-bg-color: #f6f6f6; + +$avatar-initial-color: #ffffff; +$avatar-bg-color: transparent; + +$h3-color: #3d3b39; + +$dialog-background-bg-color: #e9e9e9; +$lightbox-background-bg-color: #000; + +$greyed-fg-color: #888; + +$neutral-badge-color: #dbdbdb; + +$preview-widget-bar-color: #ddd; +$preview-widget-fg-color: $greyed-fg-color; + +$blockquote-bar-color: #ddd; +$blockquote-fg-color: #777; + +$settings-grey-fg-color: #a2a2a2; + +$voip-decline-color: #f48080; +$voip-accept-color: #80f480; + +$rte-bg-color: #e9e9e9; +$rte-code-bg-color: rgba(0, 0, 0, 0.04); +$rte-room-pill-color: #aaa; + +// ******************** + +$roomtile-name-color: #ffffff; +$roomtile-selected-bg-color: #465561; +$roomtile-focused-bg-color: #6d8597; + +$roomsublist-background: rgba(0, 0, 0, 0.2); +$roomsublist-label-fg-color: #ffffff; +$roomsublist-label-bg-color: $secondary-accent-color; +$roomsublist-chevron-color: #ffffff; + +$panel-divider-color: rgba(0, 0, 0, 0.2); + +// ******************** + +$widget-menu-bar-bg-color: #f7f7f7; + +// ******************** + +// event tile lifecycle +$event-encrypting-color: #abddbc; +$event-sending-color: #ddd; +$event-notsent-color: #f44; + +// event redaction +$event-redacted-fg-color: #e2e2e2; +$event-redacted-border-color: #cccccc; + +// event timestamp +$event-timestamp-color: #acacac; + +$edit-button-url: "../../img/icon_context_message.svg"; +$copy-button-url: "../../img/icon_copy_message.svg"; + +// e2e +$e2e-verified-color: #76cfa5; // N.B. *NOT* the same as $accent-color +$e2e-unverified-color: #e8bf37; +$e2e-warning-color: #ba6363; + +/*** ImageView ***/ +$lightbox-bg-color: #454545; +$lightbox-fg-color: #ffffff; +$lightbox-border-color: #ffffff; + +// unused? +$progressbar-color: #000; + +@define-mixin mx_DialogButton { + /* align images in buttons (eg spinners) */ + vertical-align: middle; + border-radius: 8px; + border: 1px solid rgba(199, 206, 209, 0.12); + background-color: $accent-color; + font-size: 13px; + font-family: $header-font-family; + text-transform: uppercase; + letter-spacing: 1px; + color: $accent-fg-color; + cursor: pointer; + outline: none; + padding: 14px; + box-sizing: border-box; + padding-left: 1.5em; + padding-right: 1.5em; + display: inline-block; + transition: background-color .2s ease; +} + +@define-mixin mx_DialogButton_hover { + background-color: $accent-hover-color; +} + +@define-mixin mx_DialogButton_small { + @mixin mx_DialogButton; + height: auto; + padding-top: 7px; + padding-bottom: 7px; + padding-left: 1em; + padding-right: 1em; +} + +.mx_RoomSubList_label { + font-size: 13px; + font-family: $header-font-family; + letter-spacing: 1px; +} + +// FIXME: all these ! importants are horrid - we should instead go and define +// variables or something. +.mx_SearchBox_search { + color: #fff ! important; +} + +.mx_SearchBox_search::-webkit-input-placeholder { + color: rgba(255, 255, 255, 0.6) ! important; +} + +.mx_SearchBox_search::-moz-placeholder { + color: rgba(255, 255, 255, 0.6) ! important; +} + +.mx_RoomList_emptySubListTip, +.mx_RoomDropTarget { + font-size: 14px ! important; + border: 1.5px dashed rgba(0,0,0,0.2) ! important; + color: #fff ! important; + background-color: transparent ! important; + border-radius: 6px ! important; + margin-left: 6px ! important; + margin-right: 6px ! important; + margin-top: 8px ! important; + margin-bottom: 7px ! important; + padding: 8px ! important; +} + +.mx_RoomDirectory_perm { + font-family: $header-font-family ! important; + background-color: #fff ! important; +} + +.mx_RoomTile_badge, +.mx_RoomSubList_badge { + height: 12px ! important; + padding-top: 1px ! important; + padding-bottom: 1px ! important; +} + +.mx_RoomSubList_chevron { + top: 8px ! important; +} + +.mx_MemberInfo .mx_RoomTile_name { + color: $primary-fg-color ! important; +} diff --git a/res/themes/status/css/status.scss b/res/themes/status/css/status.scss new file mode 100644 index 0000000000..b4f6590040 --- /dev/null +++ b/res/themes/status/css/status.scss @@ -0,0 +1,4 @@ +@import "../../../../node_modules/matrix-react-sdk/res/themes/light/css/_base.scss"; +@import "_status.scss"; +@import "../../../../node_modules/matrix-react-sdk/res/css/_components.scss"; +@import "_StatusLogin.scss"; diff --git a/res/themes/status/fonts/README b/res/themes/status/fonts/README new file mode 100644 index 0000000000..d7900145ed --- /dev/null +++ b/res/themes/status/fonts/README @@ -0,0 +1 @@ +We link out to status.im for fonts, although ideally we'd put them here. diff --git a/res/themes/status/img/a.png b/res/themes/status/img/a.png new file mode 100644 index 0000000000..defbcc4bcd Binary files /dev/null and b/res/themes/status/img/a.png differ diff --git a/res/themes/status/img/d.png b/res/themes/status/img/d.png new file mode 100644 index 0000000000..daeb0b0785 Binary files /dev/null and b/res/themes/status/img/d.png differ diff --git a/res/themes/status/img/dot.svg b/res/themes/status/img/dot.svg new file mode 100644 index 0000000000..45df23c049 --- /dev/null +++ b/res/themes/status/img/dot.svg @@ -0,0 +1 @@ +Artboard \ No newline at end of file diff --git a/res/themes/status/img/g.png b/res/themes/status/img/g.png new file mode 100644 index 0000000000..f675a33022 Binary files /dev/null and b/res/themes/status/img/g.png differ diff --git a/res/themes/status/img/i.png b/res/themes/status/img/i.png new file mode 100644 index 0000000000..b63eeae13b Binary files /dev/null and b/res/themes/status/img/i.png differ diff --git a/res/themes/status/img/logo.svg b/res/themes/status/img/logo.svg new file mode 100644 index 0000000000..68e4a77a5c --- /dev/null +++ b/res/themes/status/img/logo.svg @@ -0,0 +1,16 @@ + + + + Status logo + Created with Sketch. + + + + + \ No newline at end of file diff --git a/res/themes/status/img/n.png b/res/themes/status/img/n.png new file mode 100644 index 0000000000..b8e33d41f7 Binary files /dev/null and b/res/themes/status/img/n.png differ diff --git a/scripts/copy-res.js b/scripts/copy-res.js index c33a931bd1..70a06411d9 100755 --- a/scripts/copy-res.js +++ b/scripts/copy-res.js @@ -7,21 +7,39 @@ // a translation in the app (because having a translation with only // 3 strings translated is just frustrating) // This could readily be automated, but it's nice to explicitly -// control when we languages are available. +// control when new languages are available. const INCLUDE_LANGS = [ + {'value': 'bg', 'label': 'Български'}, + {'value': 'ca', 'label': 'Català'}, + {'value': 'cs', 'label': 'čeština'}, + {'value': 'da', 'label': 'Dansk'}, + {'value': 'de_DE', 'label': 'Deutsch'}, + {'value': 'el', 'label': 'Ελληνικά'}, {'value': 'en_EN', 'label': 'English'}, {'value': 'en_US', 'label': 'English (US)'}, - {'value': 'da', 'label': 'Dansk'}, - {'value': 'el', 'label': 'Ελληνικά'}, - {'value': 'nl', 'label': 'Nederlands'}, - {'value': 'de_DE', 'label': 'Deutsch'}, + {'value': 'eo', 'label': 'Esperanto'}, + {'value': 'es', 'label': 'Español'}, + {'value': 'eu', 'label': 'Euskara'}, + {'value': 'fi', 'label': 'Suomi'}, {'value': 'fr', 'label': 'Français'}, + {'value': 'gl', 'label': 'Galego'}, + {'value': 'hu', 'label': 'Magyar'}, + {'value': 'it', 'label': 'Italiano'}, + {'value': 'ko', 'label': '한국어'}, + {'value': 'lv', 'label': 'Latviešu'}, + {'value': 'nb_NO', 'label': 'Norwegian Bokmål'}, + {'value': 'nl', 'label': 'Nederlands'}, + {'value': 'nn', 'label': 'Norsk Nynorsk'}, + {'value': 'pl', 'label': 'Polski'}, {'value': 'pt', 'label': 'Português'}, {'value': 'pt_BR', 'label': 'Português do Brasil'}, {'value': 'ru', 'label': 'Русский'}, + {'value': 'sk', 'label': 'Slovenčina'}, + {'value': 'sr', 'label': 'српски'}, {'value': 'sv', 'label': 'Svenska'}, - {'value': 'es', 'label': 'Español'}, - {'value': 'th', 'label': 'Thai'}, + {'value': 'te', 'label': 'తెలుగు'}, + {'value': 'th', 'label': 'ไทย'}, + {'value': 'tr', 'label': 'Türk'}, {'value': 'zh_Hans', 'label': '简体中文'}, // simplified chinese {'value': 'zh_Hant', 'label': '繁體中文'}, // traditional chinese ]; @@ -32,10 +50,11 @@ const INCLUDE_LANGS = [ const COPY_LIST = [ ["res/manifest.json", "webapp"], ["res/home.html", "webapp"], + ["res/home-status.html", "webapp"], ["res/home/**", "webapp/home"], - ["res/{media,vector-icons}/**", "webapp"], - ["res/flags/*", "webapp/flags/"], - ["src/skins/vector/{fonts,img}/**", "webapp"], + ["res/vector-icons/**", "webapp/vector-icons"], + ["node_modules/matrix-react-sdk/res/{fonts,img,themes,media}/**", "webapp"], + ["res/themes/**", "webapp/themes"], ["node_modules/emojione/assets/svg/*", "webapp/emojione/svg/"], ["node_modules/emojione/assets/png/*", "webapp/emojione/png/"], ["./config.json", "webapp", { directwatch: 1 }], @@ -120,8 +139,19 @@ function next(i, err) { const reactSdkFile = 'node_modules/matrix-react-sdk/src/i18n/strings/' + source + '.json'; const riotWebFile = 'src/i18n/strings/' + source + '.json'; - const translations = {}; - const makeLang = () => { genLangFile(source, dest) }; + // XXX: Use a debounce because for some reason if we read the language + // file immediately after the FS event is received, the file contents + // appears empty. Possibly https://github.com/nodejs/node/issues/6112 + let makeLangDebouncer; + const makeLang = () => { + if (makeLangDebouncer) { + clearTimeout(makeLangDebouncer); + } + makeLangDebouncer = setTimeout(() => { + genLangFile(source, dest); + }, 500); + }; + [reactSdkFile, riotWebFile].forEach(function(f) { chokidar.watch(f) .on('add', makeLang) @@ -147,15 +177,23 @@ function genLangFile(lang, dest) { const reactSdkFile = 'node_modules/matrix-react-sdk/src/i18n/strings/' + lang + '.json'; const riotWebFile = 'src/i18n/strings/' + lang + '.json'; - const translations = {}; + let translations = {}; [reactSdkFile, riotWebFile].forEach(function(f) { if (fs.existsSync(f)) { - Object.assign( - translations, - JSON.parse(fs.readFileSync(f).toString()) - ); + try { + Object.assign( + translations, + JSON.parse(fs.readFileSync(f).toString()) + ); + } catch (e) { + console.error("Failed: " + f, e); + throw e; + } } }); + + translations = weblateToCounterpart(translations); + fs.writeFileSync(dest + lang + '.json', JSON.stringify(translations, null, 4)); if (verbose) { console.log("Generated language file: " + lang); @@ -184,5 +222,39 @@ function genLangList() { } } +/** + * Convert translation key from weblate format + * (which only supports a single level) to counterpart + * which requires object values for 'count' translations. + * + * eg. + * "there are %(count)s badgers|one": "a badger", + * "there are %(count)s badgers|other": "%(count)s badgers" + * becomes + * "there are %(count)s badgers": { + * "one": "a badger", + * "other": "%(count)s badgers" + * } + */ +function weblateToCounterpart(inTrs) { + const outTrs = {}; + + for (const key of Object.keys(inTrs)) { + const keyParts = key.split('|', 2); + if (keyParts.length === 2) { + let obj = outTrs[keyParts[0]]; + if (obj === undefined) { + obj = {}; + outTrs[keyParts[0]] = obj; + } + obj[keyParts[1]] = inTrs[key]; + } else { + outTrs[key] = inTrs[key]; + } + } + + return outTrs; +} + genLangList(); next(0); diff --git a/scripts/deploy.py b/scripts/deploy.py index c96b46e81f..e8fd9aa455 100755 --- a/scripts/deploy.py +++ b/scripts/deploy.py @@ -13,6 +13,8 @@ import os.path import subprocess import sys import tarfile +import shutil +import glob try: # python3 @@ -48,11 +50,12 @@ def move_bundles(source, dest): for f in os.listdir(source): dst = os.path.join(dest, f) if os.path.exists(dst): - raise DeployException( - "Not deploying. The bundle includes '%s' which we have previously deployed." + print ( + "Skipping bundle. The bundle includes '%s' which we have previously deployed." % f ) - renames[os.path.join(source, f)] = dst + else: + renames[os.path.join(source, f)] = dst for (src, dst) in renames.iteritems(): print ("Move %s -> %s" % (src, dst)) @@ -63,7 +66,8 @@ class Deployer: self.packages_path = "." self.bundles_path = None self.should_clean = False - self.config_location = None + # filename -> symlink path e.g 'config.localhost.json' => '../localhost/config.json' + self.symlink_paths = {} self.verify_signature = True def deploy(self, tarball, extract_path): @@ -95,19 +99,20 @@ class Deployer: print ("Extracted into: %s" % extracted_dir) - if self.config_location: - create_relative_symlink( - target=self.config_location, - linkname=os.path.join(extracted_dir, 'config.json') - ) + if self.symlink_paths: + for link_path, file_path in self.symlink_paths.iteritems(): + create_relative_symlink( + target=file_path, + linkname=os.path.join(extracted_dir, link_path) + ) if self.bundles_path: extracted_bundles = os.path.join(extracted_dir, 'bundles') move_bundles(source=extracted_bundles, dest=self.bundles_path) - # replace the (hopefully now empty) extracted_bundles dir with a - # symlink to the common dir. - os.rmdir(extracted_bundles) + # replace the extracted_bundles dir (which may not be empty if some + # bundles were skipped) with a symlink to the common dir. + shutil.rmtree(extracted_bundles) create_relative_symlink( target=self.bundles_path, linkname=extracted_bundles, @@ -161,9 +166,10 @@ if __name__ == "__main__": ) ) parser.add_argument( - "--config", nargs='?', default='./config.json', help=( - "Write a symlink at config.json in the extracted tarball to this \ - location. (Default: '%(default)s')" + "--include", nargs='*', default='./config*.json', help=( + "Symlink these files into the root of the deployed tarball. \ + Useful for config files and home pages. Supports glob syntax. \ + (Default: '%(default)s')" ) ) parser.add_argument( @@ -178,6 +184,8 @@ if __name__ == "__main__": deployer.packages_path = args.packages_dir deployer.bundles_path = args.bundles_dir deployer.should_clean = args.clean - deployer.config_location = args.config + + for include in args.include: + deployer.symlink_paths.update({ os.path.basename(pth): pth for pth in glob.iglob(include) }) deployer.deploy(args.tarball, args.extract_path) diff --git a/scripts/electron-package.sh b/scripts/electron-package.sh index 973ea45e82..f0ba941478 100755 --- a/scripts/electron-package.sh +++ b/scripts/electron-package.sh @@ -94,17 +94,20 @@ distdir="$builddir/electron_app/dist" pubdir="$projdir/electron_app/pub" rm -r "$pubdir" || true mkdir -p "$pubdir" +rm -r "$projdir/electron_app/dist" || true +mkdir -p "$projdir/electron_app/dist/unsigned/" # Install packages: what the user downloads the first time, # (DMGs for mac, exe installer for windows) mkdir -p "$pubdir/install/macos" cp $distdir/mac/*.dmg "$pubdir/install/macos/" +# Windows installers go to the dist dir because they need signing mkdir -p "$pubdir/install/win32/ia32/" -cp $distdir/win-ia32/*.exe "$pubdir/install/win32/ia32/" +cp $distdir/win-ia32/*.exe "$projdir/electron_app/dist/unsigned/" mkdir -p "$pubdir/install/win32/x64/" -cp $distdir/win/*.exe "$pubdir/install/win32/x64/" +cp $distdir/win/*.exe "$projdir/electron_app/dist/unsigned/" # Packages for auto-update mkdir -p "$pubdir/update/macos" @@ -120,11 +123,11 @@ cp $distdir/win/*.nupkg "$pubdir/update/win32/x64/" cp $distdir/win/RELEASES "$pubdir/update/win32/x64/" # Move the debs to the main project dir's dist folder -rm -r "$projdir/electron_app/dist" || true -mkdir -p "$projdir/electron_app/dist" cp $distdir/*.deb "$projdir/electron_app/dist/" rm -rf "$builddir" -echo "Riot Desktop is ready to go in $pubdir: this directory can be hosted on your web server." +echo "Unsigned Windows installers have been placed in electron_app/dist/unsigned/ - sign them," +echo "or just copy them to "$pubdir/install/win32/\/"" +echo "Once you've done this, $pubdir can be hosted on your web server." echo "deb archives are in electron_app/dist/ - these should be added into your debian repository" diff --git a/scripts/fetch-develop.deps.sh b/scripts/fetch-develop.deps.sh index 4fa1a4a22c..57eda6ebd9 100755 --- a/scripts/fetch-develop.deps.sh +++ b/scripts/fetch-develop.deps.sh @@ -49,42 +49,42 @@ function dodep() { [ "$curbranch" != 'develop' ] && clone $org $repo develop } || return $? - ( - cd $repo - echo "$repo set to branch "`git rev-parse --abbrev-ref HEAD` - ) + echo "$repo set to branch "`git -C "$repo" rev-parse --abbrev-ref HEAD` mkdir -p node_modules - rm -r "node_modules/$repo" 2>/dev/null || true - ln -sv "../$repo" node_modules/ + npm link "./$repo" # This does an npm install for us } +############################## + echo -en 'travis_fold:start:matrix-js-sdk\r' echo 'Setting up matrix-js-sdk' dodep matrix-org matrix-js-sdk -( - cd node_modules/matrix-js-sdk - npm install -) echo -en 'travis_fold:end:matrix-js-sdk\r' +############################## + echo -en 'travis_fold:start:matrix-react-sdk\r' echo 'Setting up matrix-react-sdk' dodep matrix-org matrix-react-sdk -mkdir -p node_modules/matrix-react-sdk/node_modules -ln -s ../../matrix-js-sdk node_modules/matrix-react-sdk/node_modules/ - -( - cd node_modules/matrix-react-sdk - npm install -) +# replace the version of js-sdk that got pulled into react-sdk with a link +# to our version. Make sure to do this *after* doing 'npm i' in react-sdk, +# otherwise npm helpfully moves another-json from matrix-js-sdk/node_modules +# into matrix-react-sdk/node_modules. +# +# (note this matches the instructions in the README.) +cd matrix-react-sdk +npm link ../matrix-js-sdk +cd ../ echo -en 'travis_fold:end:matrix-react-sdk\r' +############################## + # Link the reskindex binary in place: if we used npm link, # npm would do this for us, but we don't because we'd have # to define the npm prefix somewhere so it could put the diff --git a/scripts/jenkins.sh b/scripts/jenkins.sh index 4f2e940564..7b5b4c8e2e 100755 --- a/scripts/jenkins.sh +++ b/scripts/jenkins.sh @@ -8,8 +8,11 @@ nvm use 6 set -x -# check out corresponding branches of dependencies -`dirname $0`/fetch-develop.deps.sh +# check out corresponding branches of dependencies. +# +# clone the deps with depth 1: we know we will only ever need that one +# commit. +`dirname $0`/fetch-develop.deps.sh --depth 1 npm install diff --git a/scripts/npm-sub.js b/scripts/npm-sub.js new file mode 100644 index 0000000000..6902123406 --- /dev/null +++ b/scripts/npm-sub.js @@ -0,0 +1,22 @@ +const path = require('path'); +const child_process = require('child_process'); + +const moduleName = process.argv[2]; +if (!moduleName) { + console.error("Expected module name"); + process.exit(1); +} + +const argString = process.argv.length > 3 ? process.argv.slice(3).join(" ") : ""; +if (!argString) { + console.error("Expected an npm argument string to use"); + process.exit(1); +} + +const modulePath = path.dirname(require.resolve(`${moduleName}/package.json`)); + +child_process.execSync("npm " + argString, { + env: process.env, + cwd: modulePath, + stdio: ['inherit', 'inherit', 'inherit'], +}); diff --git a/scripts/redeploy.py b/scripts/redeploy.py index 598f6c5265..2dac2931fa 100755 --- a/scripts/redeploy.py +++ b/scripts/redeploy.py @@ -13,7 +13,9 @@ from __future__ import print_function import json, requests, tarfile, argparse, os, errno import time +import traceback from urlparse import urljoin +import glob from flask import Flask, jsonify, request, abort @@ -124,6 +126,7 @@ def fetch_jenkins_build(job_name, build_num): try: extracted_dir = deploy_tarball(tar_gz_url, build_dir) except DeployException as e: + traceback.print_exc() abort(400, e.message) create_symlink(source=extracted_dir, linkname=arg_symlink) @@ -185,10 +188,13 @@ if __name__ == "__main__": to the /vector directory INSIDE the tarball." ) ) + + # --include ../../config.json ./localhost.json homepages/* parser.add_argument( - "--config", dest="config", help=( - "Write a symlink to config.json in the extracted tarball. \ - To this location." + "--include", nargs='*', default='./config*.json', help=( + "Symlink these files into the root of the deployed tarball. \ + Useful for config files and home pages. Supports glob syntax. \ + (Default: '%(default)s')" ) ) parser.add_argument( @@ -212,7 +218,10 @@ if __name__ == "__main__": deployer = Deployer() deployer.bundles_path = args.bundles_dir deployer.should_clean = args.clean - deployer.config_location = args.config + + for include in args.include: + deployer.symlink_paths.update({ os.path.basename(pth): pth for pth in glob.iglob(include) }) + # we don't pgp-sign jenkins artifacts; instead we rely on HTTPS access to # the jenkins server (and the jenkins server not being compromised and/or @@ -225,13 +234,13 @@ if __name__ == "__main__": deploy_tarball(args.tarball_uri, build_dir) else: print( - "Listening on port %s. Extracting to %s%s. Symlinking to %s. Jenkins URL: %s. Config location: %s" % + "Listening on port %s. Extracting to %s%s. Symlinking to %s. Jenkins URL: %s. Include files: %s" % (args.port, arg_extract_path, " (clean after)" if deployer.should_clean else "", arg_symlink, arg_jenkins_url, - deployer.config_location, + deployer.symlink_paths, ) ) app.run(host="0.0.0.0", port=args.port, debug=True) diff --git a/src/VectorConferenceHandler.js b/src/VectorConferenceHandler.js deleted file mode 100644 index f34a7b732b..0000000000 --- a/src/VectorConferenceHandler.js +++ /dev/null @@ -1,135 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -"use strict"; - -var q = require("q"); -var Matrix = require("matrix-js-sdk"); -var Room = Matrix.Room; -var CallHandler = require('matrix-react-sdk/lib/CallHandler'); - -// FIXME: This currently forces Vector to try to hit the matrix.org AS for conferencing. -// This is bad because it prevents people running their own ASes from being used. -// This isn't permanent and will be customisable in the future: see the proposal -// at docs/conferencing.md for more info. -var USER_PREFIX = "fs_"; -var DOMAIN = "matrix.org"; - -function ConferenceCall(matrixClient, groupChatRoomId) { - this.client = matrixClient; - this.groupRoomId = groupChatRoomId; - this.confUserId = module.exports.getConferenceUserIdForRoom(this.groupRoomId); -} - -ConferenceCall.prototype.setup = function() { - var self = this; - return this._joinConferenceUser().then(function() { - return self._getConferenceUserRoom(); - }).then(function(room) { - // return a call for *this* room to be placed. We also tack on - // confUserId to speed up lookups (else we'd need to loop every room - // looking for a 1:1 room with this conf user ID!) - var call = Matrix.createNewMatrixCall(self.client, room.roomId); - call.confUserId = self.confUserId; - call.groupRoomId = self.groupRoomId; - return call; - }); -}; - -ConferenceCall.prototype._joinConferenceUser = function() { - // Make sure the conference user is in the group chat room - var groupRoom = this.client.getRoom(this.groupRoomId); - if (!groupRoom) { - return q.reject("Bad group room ID"); - } - var member = groupRoom.getMember(this.confUserId); - if (member && member.membership === "join") { - return q(); - } - return this.client.invite(this.groupRoomId, this.confUserId); -}; - -ConferenceCall.prototype._getConferenceUserRoom = function() { - // Use an existing 1:1 with the conference user; else make one - var rooms = this.client.getRooms(); - var confRoom = null; - for (var i = 0; i < rooms.length; i++) { - var confUser = rooms[i].getMember(this.confUserId); - if (confUser && confUser.membership === "join" && - rooms[i].getJoinedMembers().length === 2) { - confRoom = rooms[i]; - break; - } - } - if (confRoom) { - return q(confRoom); - } - return this.client.createRoom({ - preset: "private_chat", - invite: [this.confUserId] - }).then(function(res) { - return new Room(res.room_id); - }); -}; - -/** - * Check if this user ID is in fact a conference bot. - * @param {string} userId The user ID to check. - * @return {boolean} True if it is a conference bot. - */ -module.exports.isConferenceUser = function(userId) { - if (userId.indexOf("@" + USER_PREFIX) !== 0) { - return false; - } - var base64part = userId.split(":")[0].substring(1 + USER_PREFIX.length); - if (base64part) { - var decoded = new Buffer(base64part, "base64").toString(); - // ! $STUFF : $STUFF - return /^!.+:.+/.test(decoded); - } - return false; -}; - -module.exports.getConferenceUserIdForRoom = function(roomId) { - // abuse browserify's core node Buffer support (strip padding ='s) - var base64RoomId = new Buffer(roomId).toString("base64").replace(/=/g, ""); - return "@" + USER_PREFIX + base64RoomId + ":" + DOMAIN; -}; - -module.exports.createNewMatrixCall = function(client, roomId) { - var confCall = new ConferenceCall( - client, roomId - ); - return confCall.setup(); -}; - -module.exports.getConferenceCallForRoom = function(roomId) { - // search for a conference 1:1 call for this group chat room ID - var activeCall = CallHandler.getAnyActiveCall(); - if (activeCall && activeCall.confUserId) { - var thisRoomConfUserId = module.exports.getConferenceUserIdForRoom( - roomId - ); - if (thisRoomConfUserId === activeCall.confUserId) { - return activeCall; - } - } - return null; -}; - -module.exports.ConferenceCall = ConferenceCall; - -module.exports.slot = 'conference'; diff --git a/src/components/structures/BottomLeftMenu.js b/src/components/structures/BottomLeftMenu.js deleted file mode 100644 index eacc500ae2..0000000000 --- a/src/components/structures/BottomLeftMenu.js +++ /dev/null @@ -1,192 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -import React from 'react'; -import ReactDOM from 'react-dom'; -import sdk from 'matrix-react-sdk'; -import dis from 'matrix-react-sdk/lib/dispatcher'; -import AccessibleButton from 'matrix-react-sdk/lib/components/views/elements/AccessibleButton'; -import Velocity from 'velocity-vector'; -import 'velocity-vector/velocity.ui'; - -const CALLOUT_ANIM_DURATION = 1000; - -module.exports = React.createClass({ - displayName: 'BottomLeftMenu', - - propTypes: { - collapsed: React.PropTypes.bool.isRequired, - }, - - getInitialState: function() { - return({ - directoryHover : false, - roomsHover : false, - homeHover: false, - peopleHover : false, - settingsHover : false, - }); - }, - - componentWillMount: function() { - this._dispatcherRef = dis.register(this.onAction); - this._peopleButton = null; - this._directoryButton = null; - this._createRoomButton = null; - this._lastCallouts = {}; - }, - - componentWillUnmount: function() { - dis.unregister(this._dispatcherRef); - }, - - // Room events - onDirectoryClick: function() { - dis.dispatch({ action: 'view_room_directory' }); - }, - - onDirectoryMouseEnter: function() { - this.setState({ directoryHover: true }); - }, - - onDirectoryMouseLeave: function() { - this.setState({ directoryHover: false }); - }, - - onRoomsClick: function() { - dis.dispatch({ action: 'view_create_room' }); - }, - - onRoomsMouseEnter: function() { - this.setState({ roomsHover: true }); - }, - - onRoomsMouseLeave: function() { - this.setState({ roomsHover: false }); - }, - - // Home button events - onHomeClick: function() { - dis.dispatch({ action: 'view_home_page' }); - }, - - onHomeMouseEnter: function() { - this.setState({ homeHover: true }); - }, - - onHomeMouseLeave: function() { - this.setState({ homeHover: false }); - }, - - // People events - onPeopleClick: function() { - dis.dispatch({ action: 'view_create_chat' }); - }, - - onPeopleMouseEnter: function() { - this.setState({ peopleHover: true }); - }, - - onPeopleMouseLeave: function() { - this.setState({ peopleHover: false }); - }, - - // Settings events - onSettingsClick: function() { - dis.dispatch({ action: 'view_user_settings' }); - }, - - onSettingsMouseEnter: function() { - this.setState({ settingsHover: true }); - }, - - onSettingsMouseLeave: function() { - this.setState({ settingsHover: false }); - }, - - onAction: function(payload) { - let calloutElement; - switch (payload.action) { - // Incoming instruction: dance! - case 'callout_start_chat': - calloutElement = this._peopleButton; - break; - case 'callout_room_directory': - calloutElement = this._directoryButton; - break; - case 'callout_create_room': - calloutElement = this._createRoomButton; - break; - } - if (calloutElement) { - const lastCallout = this._lastCallouts[payload.action]; - const now = Date.now(); - if (lastCallout == undefined || lastCallout < now - CALLOUT_ANIM_DURATION) { - this._lastCallouts[payload.action] = now; - Velocity(ReactDOM.findDOMNode(calloutElement), "callout.bounce", CALLOUT_ANIM_DURATION); - } - } - }, - - // Get the label/tooltip to show - getLabel: function(label, show) { - if (show) { - var RoomTooltip = sdk.getComponent("rooms.RoomTooltip"); - return ; - } - }, - - _collectPeopleButton: function(e) { - this._peopleButton = e; - }, - - _collectDirectoryButton: function(e) { - this._directoryButton = e; - }, - - _collectCreateRoomButton: function(e) { - this._createRoomButton = e; - }, - - render: function() { - const HomeButton = sdk.getComponent('elements.HomeButton'); - const StartChatButton = sdk.getComponent('elements.StartChatButton'); - const RoomDirectoryButton = sdk.getComponent('elements.RoomDirectoryButton'); - const CreateRoomButton = sdk.getComponent('elements.CreateRoomButton'); - const SettingsButton = sdk.getComponent('elements.SettingsButton'); - - return ( -
-
- -
- -
-
- -
-
- -
- - - -
-
- ); - } -}); diff --git a/src/components/structures/CompatibilityPage.js b/src/components/structures/CompatibilityPage.js deleted file mode 100644 index 88b01cb2bb..0000000000 --- a/src/components/structures/CompatibilityPage.js +++ /dev/null @@ -1,79 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -'use strict'; - -var React = require('react'); -import { _t, _tJsx } from 'matrix-react-sdk/lib/languageHandler'; - -module.exports = React.createClass({ - displayName: 'CompatibilityPage', - propTypes: { - onAccept: React.PropTypes.func - }, - - getDefaultProps: function() { - return { - onAccept: function() {} // NOP - }; - }, - - onAccept: function() { - this.props.onAccept(); - }, - - render: function() { - - return ( -
-
-

{ _tJsx("Sorry, your browser is not able to run Riot.", /(.*?)<\/b>/, (sub) => {sub}) }

-

- { _t("Riot uses many advanced browser features, some of which are not available or experimental in your current browser.") } -

-

- { _tJsx('Please install Chrome or Firefox for the best experience.', - [ - /(.*?)<\/a>/, - /(.*?)<\/a>/, - ], - [ - (sub) => {sub}, - (sub) => {sub}, - ] - )} - { _tJsx('Safari and Opera work too.', - [ - /(.*?)<\/a>/, - /(.*?)<\/a>/, - ], - [ - (sub) => {sub}, - (sub) => {sub}, - ] - )} -

-

- { _t("With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!") } -

- -
-
- ); - } -}); diff --git a/src/components/structures/HomePage.js b/src/components/structures/HomePage.js deleted file mode 100644 index c646f1cebc..0000000000 --- a/src/components/structures/HomePage.js +++ /dev/null @@ -1,93 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -'use strict'; - -import React from 'react'; -import MatrixClientPeg from 'matrix-react-sdk/lib/MatrixClientPeg'; -import sdk from 'matrix-react-sdk'; -import GeminiScrollbar from 'react-gemini-scrollbar'; -import request from 'browser-request'; -import { _t } from 'matrix-react-sdk/lib/languageHandler'; -import sanitizeHtml from 'sanitize-html'; - -module.exports = React.createClass({ - displayName: 'HomePage', - - propTypes: { - // URL base of the team server. Optional. - teamServerUrl: React.PropTypes.string, - // Team token. Optional. If set, used to get the static homepage of the team - // associated. If unset, homePageUrl will be used. - teamToken: React.PropTypes.string, - // URL to use as the iFrame src. Defaults to /home.html. - homePageUrl: React.PropTypes.string, - }, - - getInitialState: function() { - return { - iframeSrc: '', - page: '', - }; - }, - - componentWillMount: function() { - if (this.props.teamToken && this.props.teamServerUrl) { - this.setState({ - iframeSrc: `${this.props.teamServerUrl}/static/${this.props.teamToken}/home.html` - }); - } - else { - // we use request() to inline the homepage into the react component - // so that it can inherit CSS and theming easily rather than mess around - // with iframes and trying to synchronise document.stylesheets. - - let src = this.props.homePageUrl || 'home.html'; - - request( - { method: "GET", url: src }, - (err, response, body) => { - if (err || response.status < 200 || response.status >= 300) { - console.log(err); - this.setState({ page: "Couldn't load home page" }); - } - - body = body.replace(/_t\(['"]([\s\S]*?)['"]\)/mg, (match, g1)=>{ return sanitizeHtml(_t(g1)) }); - this.setState({ page: body }); - } - ); - } - }, - - render: function() { - if (this.state.iframeSrc) { - return ( -
- - ); - } -}); diff --git a/src/components/views/settings/Notifications.js b/src/components/views/settings/Notifications.js deleted file mode 100644 index 1b8de52d9d..0000000000 --- a/src/components/views/settings/Notifications.js +++ /dev/null @@ -1,879 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -'use strict'; -var React = require('react'); -import { _t, _tJsx } from 'matrix-react-sdk/lib/languageHandler'; -var q = require("q"); -var sdk = require('matrix-react-sdk'); -var MatrixClientPeg = require('matrix-react-sdk/lib/MatrixClientPeg'); -var UserSettingsStore = require('matrix-react-sdk/lib/UserSettingsStore'); -var Modal = require('matrix-react-sdk/lib/Modal'); - -var notifications = require('../../../notifications'); - -// TODO: this "view" component still has far too much application logic in it, -// which should be factored out to other files. - -// TODO: this component also does a lot of direct poking into this.state, which -// is VERY NAUGHTY. - -var NotificationUtils = notifications.NotificationUtils; -var VectorPushRulesDefinitions = notifications.VectorPushRulesDefinitions; -var PushRuleVectorState = notifications.PushRuleVectorState; -var ContentRules = notifications.ContentRules; - -/** - * Rules that Vector used to set in order to override the actions of default rules. - * These are used to port peoples existing overrides to match the current API. - * These can be removed and forgotten once everyone has moved to the new client. - */ -var LEGACY_RULES = { - "im.vector.rule.contains_display_name": ".m.rule.contains_display_name", - "im.vector.rule.room_one_to_one": ".m.rule.room_one_to_one", - "im.vector.rule.room_message": ".m.rule.message", - "im.vector.rule.invite_for_me": ".m.rule.invite_for_me", - "im.vector.rule.call": ".m.rule.call", - "im.vector.rule.notices": ".m.rule.suppress_notices" -}; - -function portLegacyActions(actions) { - var decoded = NotificationUtils.decodeActions(actions); - if (decoded !== null) { - return NotificationUtils.encodeActions(decoded); - } else { - // We don't recognise one of the actions here, so we don't try to - // canonicalise them. - return actions; - } -} - -module.exports = React.createClass({ - displayName: 'Notififications', - - phases: { - LOADING: "LOADING", // The component is loading or sending data to the hs - DISPLAY: "DISPLAY", // The component is ready and display data - ERROR: "ERROR" // There was an error - }, - - propTypes: { - // The array of threepids from the JS SDK (required for email notifications) - threepids: React.PropTypes.array.isRequired, - // The brand string set when creating an email pusher - brand: React.PropTypes.string, - }, - - getDefaultProps: function() { - return { - threepids: [] - }; - }, - - getInitialState: function() { - return { - phase: this.phases.LOADING, - masterPushRule: undefined, // The master rule ('.m.rule.master') - vectorPushRules: [], // HS default push rules displayed in Vector UI - vectorContentRules: { // Keyword push rules displayed in Vector UI - vectorState: PushRuleVectorState.ON, - rules: [] - }, - externalPushRules: [], // Push rules (except content rule) that have been defined outside Vector UI - externalContentRules: [] // Keyword push rules that have been defined outside Vector UI - }; - }, - - componentWillMount: function() { - this._refreshFromServer(); - }, - - onEnableNotificationsChange: function(event) { - var self = this; - this.setState({ - phase: this.phases.LOADING - }); - - MatrixClientPeg.get().setPushRuleEnabled('global', self.state.masterPushRule.kind, self.state.masterPushRule.rule_id, !event.target.checked).done(function() { - self._refreshFromServer(); - }); - }, - - onEnableDesktopNotificationsChange: function(event) { - UserSettingsStore.setEnableNotifications(event.target.checked); - }, - - onEnableEmailNotificationsChange: function(address, event) { - var emailPusherPromise; - if (event.target.checked) { - var data = {} - data['brand'] = this.props.brand || 'Riot'; - emailPusherPromise = UserSettingsStore.addEmailPusher(address, data); - } else { - var emailPusher = UserSettingsStore.getEmailPusher(this.state.pushers, address); - emailPusher.kind = null; - emailPusherPromise = MatrixClientPeg.get().setPusher(emailPusher); - } - emailPusherPromise.done(() => { - this._refreshFromServer(); - }, (error) => { - var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog"); - Modal.createDialog(ErrorDialog, { - title: _t('Error saving email notification preferences'), - description: _t('An error occurred whilst saving your email notification preferences.'), - }); - }); - }, - - onNotifStateButtonClicked: function(event) { - // FIXME: use .bind() rather than className metadata here surely - var vectorRuleId = event.target.className.split("-")[0]; - var newPushRuleVectorState = event.target.className.split("-")[1]; - - if ("_keywords" === vectorRuleId) { - this._setKeywordsPushRuleVectorState(newPushRuleVectorState) - } - else { - var rule = this.getRule(vectorRuleId); - if (rule) { - this._setPushRuleVectorState(rule, newPushRuleVectorState); - } - } - }, - - onKeywordsClicked: function(event) { - var self = this; - - // Compute the keywords list to display - var keywords = []; - for (var i in this.state.vectorContentRules.rules) { - var rule = this.state.vectorContentRules.rules[i]; - keywords.push(rule.pattern); - } - if (keywords.length) { - // As keeping the order of per-word push rules hs side is a bit tricky to code, - // display the keywords in alphabetical order to the user - keywords.sort(); - - keywords = keywords.join(", "); - } - else { - keywords = ""; - } - - var TextInputDialog = sdk.getComponent("dialogs.TextInputDialog"); - Modal.createDialog(TextInputDialog, { - title: _t('Keywords'), - description: _t('Enter keywords separated by a comma:'), - button: _t('OK'), - value: keywords, - onFinished: function onFinished(should_leave, newValue) { - - if (should_leave && newValue !== keywords) { - var newKeywords = newValue.split(','); - for (var i in newKeywords) { - newKeywords[i] = newKeywords[i].trim(); - } - - // Remove duplicates and empty - newKeywords = newKeywords.reduce(function(array, keyword){ - if (keyword !== "" && array.indexOf(keyword) < 0) { - array.push(keyword); - } - return array; - },[]); - - self._setKeywords(newKeywords); - } - } - }); - }, - - getRule: function(vectorRuleId) { - for (var i in this.state.vectorPushRules) { - var rule = this.state.vectorPushRules[i]; - if (rule.vectorRuleId === vectorRuleId) { - return rule; - } - } - }, - - _setPushRuleVectorState: function(rule, newPushRuleVectorState) { - if (rule && rule.vectorState !== newPushRuleVectorState) { - - this.setState({ - phase: this.phases.LOADING - }); - - var self = this; - var cli = MatrixClientPeg.get(); - var deferreds = []; - var ruleDefinition = VectorPushRulesDefinitions[rule.vectorRuleId]; - - if (rule.rule) { - var actions = ruleDefinition.vectorStateToActions[newPushRuleVectorState]; - - if (!actions) { - // The new state corresponds to disabling the rule. - deferreds.push(cli.setPushRuleEnabled('global', rule.rule.kind, rule.rule.rule_id, false)); - } - else { - // The new state corresponds to enabling the rule and setting specific actions - deferreds.push(this._updatePushRuleActions(rule.rule, actions, true)); - } - } - - q.all(deferreds).done(function() { - self._refreshFromServer(); - }, function(error) { - var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog"); - console.error("Failed to change settings: " + error); - Modal.createDialog(ErrorDialog, { - title: _t('Failed to change settings'), - description: ((error && error.message) ? error.message : _t('Operation failed')), - onFinished: self._refreshFromServer - }); - }); - } - }, - - _setKeywordsPushRuleVectorState: function(newPushRuleVectorState) { - // Is there really a change? - if (this.state.vectorContentRules.vectorState === newPushRuleVectorState - || this.state.vectorContentRules.rules.length === 0) { - return; - } - - var self = this; - var cli = MatrixClientPeg.get(); - - this.setState({ - phase: this.phases.LOADING - }); - - // Update all rules in self.state.vectorContentRules - var deferreds = []; - for (var i in this.state.vectorContentRules.rules) { - var rule = this.state.vectorContentRules.rules[i]; - - var enabled, actions; - switch (newPushRuleVectorState) { - case PushRuleVectorState.ON: - if (rule.actions.length !== 1) { - actions = PushRuleVectorState.actionsFor(PushRuleVectorState.ON); - } - - if (this.state.vectorContentRules.vectorState === PushRuleVectorState.OFF) { - enabled = true; - } - break; - - case PushRuleVectorState.LOUD: - if (rule.actions.length !== 3) { - actions = PushRuleVectorState.actionsFor(PushRuleVectorState.LOUD); - } - - if (this.state.vectorContentRules.vectorState === PushRuleVectorState.OFF) { - enabled = true; - } - break; - - case PushRuleVectorState.OFF: - enabled = false; - break; - } - - if (actions) { - // Note that the workaround in _updatePushRuleActions will automatically - // enable the rule - deferreds.push(this._updatePushRuleActions(rule, actions, enabled)); - } - else if (enabled != undefined) { - deferreds.push(cli.setPushRuleEnabled('global', rule.kind, rule.rule_id, enabled)); - } - } - - q.all(deferreds).done(function(resps) { - self._refreshFromServer(); - }, function(error) { - var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog"); - console.error("Can't update user notification settings: " + error); - Modal.createDialog(ErrorDialog, { - title: _t('Can\'t update user notification settings'), - description: ((error && error.message) ? error.message : _t('Operation failed')), - onFinished: self._refreshFromServer - }); - }); - }, - - _setKeywords: function(newKeywords) { - this.setState({ - phase: this.phases.LOADING - }); - - var self = this; - var cli = MatrixClientPeg.get(); - var removeDeferreds = []; - - // Remove per-word push rules of keywords that are no more in the list - var vectorContentRulesPatterns = []; - for (var i in self.state.vectorContentRules.rules) { - var rule = self.state.vectorContentRules.rules[i]; - - vectorContentRulesPatterns.push(rule.pattern); - - if (newKeywords.indexOf(rule.pattern) < 0) { - removeDeferreds.push(cli.deletePushRule('global', rule.kind, rule.rule_id)); - } - } - - // If the keyword is part of `externalContentRules`, remove the rule - // before recreating it in the right Vector path - for (var i in self.state.externalContentRules) { - var rule = self.state.externalContentRules[i]; - - if (newKeywords.indexOf(rule.pattern) >= 0) { - removeDeferreds.push(cli.deletePushRule('global', rule.kind, rule.rule_id)); - } - } - - var onError = function(error) { - var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog"); - console.error("Failed to update keywords: " + error); - Modal.createDialog(ErrorDialog, { - title: _t('Failed to update keywords'), - description: ((error && error.message) ? error.message : _t('Operation failed')), - onFinished: self._refreshFromServer - }); - } - - // Then, add the new ones - q.all(removeDeferreds).done(function(resps) { - var deferreds = []; - - var pushRuleVectorStateKind = self.state.vectorContentRules.vectorState; - if (pushRuleVectorStateKind === PushRuleVectorState.OFF) { - // When the current global keywords rule is OFF, we need to look at - // the flavor of rules in 'vectorContentRules' to apply the same actions - // when creating the new rule. - // Thus, this new rule will join the 'vectorContentRules' set. - if (self.state.vectorContentRules.rules.length) { - pushRuleVectorStateKind = PushRuleVectorState.contentRuleVectorStateKind(self.state.vectorContentRules.rules[0]); - } - else { - // ON is default - pushRuleVectorStateKind = PushRuleVectorState.ON; - } - } - - for (var i in newKeywords) { - var keyword = newKeywords[i]; - - if (vectorContentRulesPatterns.indexOf(keyword) < 0) { - if (self.state.vectorContentRules.vectorState !== PushRuleVectorState.OFF) { - deferreds.push(cli.addPushRule - ('global', 'content', keyword, { - actions: PushRuleVectorState.actionsFor(pushRuleVectorStateKind), - pattern: keyword - })); - } - else { - deferreds.push(self._addDisabledPushRule('global', 'content', keyword, { - actions: PushRuleVectorState.actionsFor(pushRuleVectorStateKind), - pattern: keyword - })); - } - } - } - - q.all(deferreds).done(function(resps) { - self._refreshFromServer(); - }, onError); - }, onError); - }, - - // Create a push rule but disabled - _addDisabledPushRule: function(scope, kind, ruleId, body) { - var cli = MatrixClientPeg.get(); - return cli.addPushRule(scope, kind, ruleId, body).then(function() { - return cli.setPushRuleEnabled(scope, kind, ruleId, false); - }); - }, - - // Check if any legacy im.vector rules need to be ported to the new API - // for overriding the actions of default rules. - _portRulesToNewAPI: function(rulesets) { - var self = this; - var needsUpdate = []; - var cli = MatrixClientPeg.get(); - - for (var kind in rulesets.global) { - var ruleset = rulesets.global[kind]; - for (var i = 0; i < ruleset.length; ++i) { - var rule = ruleset[i]; - if (rule.rule_id in LEGACY_RULES) { - console.log("Porting legacy rule", rule); - needsUpdate.push( function(kind, rule) { - return cli.setPushRuleActions( - 'global', kind, LEGACY_RULES[rule.rule_id], portLegacyActions(rule.actions) - ).then( function() { - return cli.deletePushRule('global', kind, rule.rule_id); - }) - }(kind, rule)); - } - } - } - - if (needsUpdate.length > 0) { - // If some of the rules need to be ported then wait for the porting - // to happen and then fetch the rules again. - return q.allSettled(needsUpdate).then( function() { - return cli.getPushRules(); - }); - } else { - // Otherwise return the rules that we already have. - return rulesets; - } - }, - - _refreshFromServer: function() { - var self = this; - var pushRulesPromise = MatrixClientPeg.get().getPushRules().then(self._portRulesToNewAPI).then(function(rulesets) { - //console.log("resolving pushRulesPromise"); - - /// XXX seriously? wtf is this? - MatrixClientPeg.get().pushRules = rulesets; - - // Get homeserver default rules and triage them by categories - var rule_categories = { - // The master rule (all notifications disabling) - '.m.rule.master': 'master', - - // The default push rules displayed by Vector UI - '.m.rule.contains_display_name': 'vector', - '.m.rule.contains_user_name': 'vector', - '.m.rule.room_one_to_one': 'vector', - '.m.rule.message': 'vector', - '.m.rule.invite_for_me': 'vector', - //'.m.rule.member_event': 'vector', - '.m.rule.call': 'vector', - '.m.rule.suppress_notices': 'vector' - - // Others go to others - }; - - // HS default rules - var defaultRules = {master: [], vector: {}, others: []}; - - for (var kind in rulesets.global) { - for (var i = 0; i < Object.keys(rulesets.global[kind]).length; ++i) { - var r = rulesets.global[kind][i]; - var cat = rule_categories[r.rule_id]; - r.kind = kind; - - if (r.rule_id[0] === '.') { - if (cat === 'vector') { - defaultRules.vector[r.rule_id] = r; - } - else if (cat === 'master') { - defaultRules.master.push(r); - } - else { - defaultRules['others'].push(r); - } - } - } - } - - // Get the master rule if any defined by the hs - if (defaultRules.master.length > 0) { - self.state.masterPushRule = defaultRules.master[0]; - } - - // parse the keyword rules into our state - var contentRules = ContentRules.parseContentRules(rulesets); - self.state.vectorContentRules = { - vectorState: contentRules.vectorState, - rules: contentRules.rules, - }; - self.state.externalContentRules = contentRules.externalRules; - - // Build the rules displayed in the Vector UI matrix table - self.state.vectorPushRules = []; - self.state.externalPushRules = []; - - var vectorRuleIds = [ - '.m.rule.contains_display_name', - '.m.rule.contains_user_name', - '_keywords', - '.m.rule.room_one_to_one', - '.m.rule.message', - '.m.rule.invite_for_me', - //'im.vector.rule.member_event', - '.m.rule.call', - '.m.rule.suppress_notices' - ]; - for (var i in vectorRuleIds) { - var vectorRuleId = vectorRuleIds[i]; - - if (vectorRuleId === '_keywords') { - // keywords needs a special handling - // For Vector UI, this is a single global push rule but translated in Matrix, - // it corresponds to all content push rules (stored in self.state.vectorContentRule) - self.state.vectorPushRules.push({ - "vectorRuleId": "_keywords", - "description" : ( - - { _tJsx('Messages containing keywords', - /(.*?)<\/span>/, - (sub) => { - return {sub}; - } - )} - - ), - "vectorState": self.state.vectorContentRules.vectorState - }); - } - else { - var ruleDefinition = VectorPushRulesDefinitions[vectorRuleId]; - var rule = defaultRules.vector[vectorRuleId]; - - var vectorState = ruleDefinition.ruleToVectorState(rule); - - //console.log("Refreshing vectorPushRules for " + vectorRuleId +", "+ ruleDefinition.description +", " + rule +", " + vectorState); - - self.state.vectorPushRules.push({ - "vectorRuleId": vectorRuleId, - "description" : _t(ruleDefinition.description), // Text from VectorPushRulesDefinitions.js - "rule": rule, - "vectorState": vectorState, - }); - - // if there was a rule which we couldn't parse, add it to the external list - if (rule && !vectorState) { - rule.description = ruleDefinition.description; - self.state.externalPushRules.push(rule); - } - } - } - - // Build the rules not managed by Vector UI - var otherRulesDescriptions = { - '.m.rule.message': _t('Notify for all other messages/rooms'), - '.m.rule.fallback': _t('Notify me for anything else'), - }; - - for (var i in defaultRules.others) { - var rule = defaultRules.others[i]; - var ruleDescription = otherRulesDescriptions[rule.rule_id]; - - // Show enabled default rules that was modified by the user - if (ruleDescription && rule.enabled && !rule.default) { - rule.description = ruleDescription; - self.state.externalPushRules.push(rule); - } - } - }); - - var pushersPromise = MatrixClientPeg.get().getPushers().then(function(resp) { - //console.log("resolving pushersPromise"); - self.setState({pushers: resp.pushers}); - }); - - q.all([pushRulesPromise, pushersPromise]).then(function() { - self.setState({ - phase: self.phases.DISPLAY - }); - }, function(error) { - console.error(error); - self.setState({ - phase: self.phases.ERROR - }); - }).finally(() => { - // actually explicitly update our state having been deep-manipulating it - self.setState({ - masterPushRule: self.state.masterPushRule, - vectorContentRules: self.state.vectorContentRules, - vectorPushRules: self.state.vectorPushRules, - externalContentRules: self.state.externalContentRules, - externalPushRules: self.state.externalPushRules, - }); - }).done(); - }, - - _updatePushRuleActions: function(rule, actions, enabled) { - var cli = MatrixClientPeg.get(); - - return cli.setPushRuleActions( - 'global', rule.kind, rule.rule_id, actions - ).then( function() { - // Then, if requested, enabled or disabled the rule - if (undefined != enabled) { - return cli.setPushRuleEnabled( - 'global', rule.kind, rule.rule_id, enabled - ); - } - }); - }, - - renderNotifRulesTableRow: function(title, className, pushRuleVectorState) { - return ( - - - { title } - - - - - - - - - - - - - - - ); - }, - - renderNotifRulesTableRows: function() { - var rows = []; - for (var i in this.state.vectorPushRules) { - var rule = this.state.vectorPushRules[i]; - //console.log("rendering: " + rule.description + ", " + rule.vectorRuleId + ", " + rule.vectorState); - rows.push(this.renderNotifRulesTableRow(rule.description, rule.vectorRuleId, rule.vectorState)); - } - return rows; - }, - - emailNotificationsRow: function(address, label) { - return (
-
- -
-
- -
-
); - }, - - render: function() { - var self = this; - - var spinner; - if (this.state.phase === this.phases.LOADING) { - var Loader = sdk.getComponent("elements.Spinner"); - spinner = ; - } - - if (this.state.masterPushRule) { - var masterPushRuleDiv = ( -
-
- -
-
- -
-
- ); - } - - // When enabled, the master rule inhibits all existing rules - // So do not show all notification settings - if (this.state.masterPushRule && this.state.masterPushRule.enabled) { - return ( -
- {masterPushRuleDiv} - -
- { _t('All notifications are currently disabled for all targets.') }. -
-
- ); - } - - const emailThreepids = this.props.threepids.filter((tp) => tp.medium === "email"); - let emailNotificationsRow; - if (emailThreepids.length === 0) { - emailNotificationsRow =
- { _t('Add an email address above to configure email notifications') } -
; - } else { - // This only supports the first email address in your profile for now - emailNotificationsRow = this.emailNotificationsRow( - emailThreepids[0].address, - _t('Enable email notifications') + ' (' + emailThreepids[0].address + ')' - ); - } - - // Build external push rules - var externalRules = []; - for (var i in this.state.externalPushRules) { - var rule = this.state.externalPushRules[i]; - externalRules.push(
  • { _t(rule.description) }
  • ); - } - - // Show keywords not displayed by the vector UI as a single external push rule - var externalKeyWords = []; - for (var i in this.state.externalContentRules) { - var rule = this.state.externalContentRules[i]; - externalKeyWords.push(rule.pattern); - } - if (externalKeyWords.length) { - externalKeyWords = externalKeyWords.join(", "); - externalRules.push(
  • { _t('Notifications on the following keywords follow rules which can’t be displayed here:') } { externalKeyWords }
  • ); - } - - var devicesSection; - if (this.state.pushers === undefined) { - devicesSection =
    { _t('Unable to fetch notification target list') }
    - } else if (this.state.pushers.length == 0) { - devicesSection = null; - } else { - // TODO: It would be great to be able to delete pushers from here too, - // and this wouldn't be hard to add. - var rows = []; - for (var i = 0; i < this.state.pushers.length; ++i) { - rows.push( - {this.state.pushers[i].app_display_name} - {this.state.pushers[i].device_display_name} - ); - } - devicesSection = ( - - {rows} - -
    ); - } - if (devicesSection) { - devicesSection = (
    -

    { _t('Notification targets') }

    - { devicesSection } -
    ); - } - - var advancedSettings; - if (externalRules.length) { - advancedSettings = ( -
    -

    { _t('Advanced notification settings') }

    - { _t('There are advanced notifications which are not shown here') }.
    - { _t('You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply') }. -
      - { externalRules } -
    -
    - ); - } - - return ( -
    - - {masterPushRuleDiv} - -
    - - { spinner } - -
    -
    - -
    -
    - -
    -
    - -
    -
    - { - UserSettingsStore.setEnableAudioNotifications(e.target.checked); - this.forceUpdate(); - }} /> -
    -
    - -
    -
    - - { emailNotificationsRow } - -
    - - - - - - - - - - - - { this.renderNotifRulesTableRows() } - - -
    { _t('Off') }{ _t('On') }{ _t('Noisy') }
    -
    - - { advancedSettings } - - { devicesSection } - -
    - -
    - ); - } -}); diff --git a/src/header b/src/header index 060709b82e..e80658c103 100644 --- a/src/header +++ b/src/header @@ -1,5 +1,5 @@ /* -Copyright 2015, 2016 OpenMarket Ltd +Copyright 2018 New Vector Ltd Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/src/i18n/strings/ar.json b/src/i18n/strings/ar.json new file mode 100644 index 0000000000..8f7d60b0d4 --- /dev/null +++ b/src/i18n/strings/ar.json @@ -0,0 +1,32 @@ +{ + "Custom Server Options": "الإعدادات الشخصية للخادوم", + "Dismiss": "تجاهل", + "Riot is not supported on mobile web. Install the app?": "رايوت غير مدعوم في وضعية الويب على الهاتف. هل تريد تثبيت التطبيق ؟", + "Riot Desktop on %(platformName)s": "الواجهة المكتبية لرايوت على %(platformName)s", + "Unknown device": "جهاز مجهول", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s عبر %(browserName)s على %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "تحتاج الى استخدام الاتصال الآمن ( HTTPS) للسماح بمشاركة الشاشة", + "Co-ordination for Riot translators": "التنسيق لمترجمين Riot", + "powered by Matrix": "مشغل بواسطة Matrix", + "Welcome to Riot.im": "مرحبا بك في Riot.im", + "Dev chat for the Dendrite dev team": "Dev chat for the Dendrite dev team", + "Implementing VoIP services with Matrix": "تنفيذ خدمات VoIP مع Matrix", + "Discussion of the Identity Service API": "مناقشة واجهة برمجة التطبيقات لخدمة الهوية", + "Support for those using, running and writing other bridges": "دعم لأولئك الذين يستخدمون الجسور الأخرى ويديرونها وكتابتهم", + "Implementing VR services with Matrix": "تنفيذ خدمات الواقع الافتراضي مع Matrix", + "Search the room directory": "ابحث في دليل الغرفة", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "توجد بالفعل الكثير من الغرف في Matrix ، مرتبطة بالشبكات القائمة (Slack، IRC، Gitter الخ) أو مستقلة. تحقق من الدليل!", + "Chat with Riot Bot": "الدردشة مع Riot Bot", + "Get started with some tips from Riot Bot!": "ابدأ ببعض النصائح من Riot Bot!", + "General discussion about Matrix and Riot": "مناقشة عامة حول Matrix و Riot", + "Discussion of all things Matrix!": "مناقشة كل شيء Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & دردشة سطح المكتب", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk chat", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "تستطيع استخدام الخدما.يمكنك استخدام خيارات الخادم المخصص لتسجيل الدخول إلى خوادم Matrix الأخرى عن طريق تحديد عنوان URL لخادم Home آخر.
    هذا يسمح لك باستخدام Riot مع حساب Matrix موجود على خادم منزل مختلف.

    يمكنك أيضًا تعيين خادم هوية مخصص ولكنك لن تتمكن من دعوة المستخدمين عن طريق عنوان البريد الإلكتروني ، أو دعوتك عبر عنوان البريد الإلكتروني بنفسك.", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "[matrix] تعاون مدعوم مواسطة & دردشة لا مركزية ومشفرة", + "Matrix technical discussions": "مناقشات تقنية Matrix", + "Running Matrix services": "تشغيل خدمات Matrix", + "Community-run support for Synapse": "الدعم المجتمعي لـ Synapse", + "Admin support for Dendrite": "الدعم الاداري لـDendrite", + "Announcements about Synapse releases": "إعلانات حول إصدارات Synaps" +} diff --git a/src/i18n/strings/az.json b/src/i18n/strings/az.json new file mode 100644 index 0000000000..3a3a97de8b --- /dev/null +++ b/src/i18n/strings/az.json @@ -0,0 +1,6 @@ +{ + "Riot is not supported on mobile web. Install the app?": "Riot mobil qurğular üçün veb-saytın versiyasını dəstəkləmir. Proqramı qurmaq?", + "Riot Desktop on %(platformName)s": "%(platformName)s-da Riot Desktop", + "Unknown device": "Naməlum qurğu", + "You need to be using HTTPS to place a screen-sharing call.": "İş stolunun birgə istifadəsi üçün HTTPS-dan istifadə tələb olunur." +} diff --git a/src/i18n/strings/be.json b/src/i18n/strings/be.json index 69a6a9233c..c9ddc6426a 100644 --- a/src/i18n/strings/be.json +++ b/src/i18n/strings/be.json @@ -1,88 +1,5 @@ { - "Add an email address above to configure email notifications": "Дадайце адрас электроннай пошты вышэй, каб наладзіць апавяшчэнні", - "All messages": "Усе паведамленні", - "All messages (loud)": "Усе паведамленні (гучна)", - "All notifications are currently disabled for all targets.": "Усе апавяшчэнні ў цяперашні час адключаныя для ўсіх мэтаў.", - "An error occurred whilst saving your email notification preferences.": "Адбылася памылка падчас захавання налады апавяшчэнняў па электроннай пошце.", - "Cancel Sending": "Адмяніць адпраўку", - "Can't update user notification settings": "Немагчыма абнавіць налады апавяшчэнняў карыстальніка", - "Close": "Зачыніць", - "Create new room": "Стварыць новы пакой", - "Couldn't find a matching Matrix room": "Не атрымалася знайсці адпаведны пакой Matrix", "Custom Server Options": "Карыстальніцкія параметры сервера", - "delete the alias.": "выдаліць псеўданім.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Выдаліць псеўданім пакоя %(alias)s і выдаліць %(name)s з каталога?", - "Direct Chat": "Прамы чат", - "Directory": "Каталог", "Dismiss": "Aдхіліць", - "Download this file": "Спампаваць гэты файл", - "Drop here %(toAction)s": "Перацягнуць сюды %(toAction)s", - "Enable audible notifications in web client": "Ўключыць гукавыя апавяшчэнні ў вэб-кліенце", - "Enable desktop notifications": "Ўключыць апавяшчэнні на працоўным стале", - "Enable email notifications": "Ўключыць паведамлення па электроннай пошце", - "Enable notifications for this account": "Ўключыць апавяшчэнні для гэтага ўліковага запісу", - "Enable them now": "Уключыць іх зараз", - "Enter keywords separated by a comma:": "Калі ласка, увядзіце ключавыя словы, падзеленыя коскамі:", - "Error": "Памылка", - "Error saving email notification preferences": "Памылка захавання налад апавяшчэнняў па электроннай пошце", - "#example": "#прыклад", - "Failed to": "Не атрымалася", - "Failed to add tag %(tagName)s to room": "Не атрымалася дадаць %(tagName)s ў пакоі", - "Failed to change settings": "Не атрымалася змяніць налады", - "Failed to forget room %(errCode)s": "Не атрымалася забыць пакой %(errCode)s", - "Failed to update keywords": "Не атрымалася абнавіць ключавыя словы", - "Failed to get protocol list from Home Server": "Не ўдалося атрымаць спіс пратаколаў ад хатняга сервера", - "Failed to get public room list": "Не ўдалося атрымаць спіс агульных пакояў", - "Failed to join the room": "Не ўдалося далучыцца да пакоя", - "Failed to remove tag %(tagName)s from room": "Не ўдалося выдаліць %(tagName)s з пакоя", - "Failed to set direct chat tag": "Не ўдалося ўсталяваць тэг прамога чата", - "Failed to set Direct Message status of room": "Не ўдалося ўсталяваць статут прамога паведамлення пакою", - "Favourite": "Улюбёнае", - "Fetching third party location failed": "Не ўдалося атрымаць месцазнаходжанне трэцяга боку", - "Files": "Файлы", - "Filter room names": "Фільтр iмёнаў пакояў", - "Forget": "Забыць", - " from room": " з пакоя", - "Guests can join": "Госці могуць далучыцца", - "Guest users can't invite users. Please register to invite.": "Госцi не могуць запрашаць карыстальнікаў. Калі ласка, зарэгіструйцеся, каб запрасiць.", - "Invite to this room": "Запрасіць у гэты пакой", - "Keywords": "Ключавыя словы", - "Leave": "Пакінуць", - "Low Priority": "Нізкі прыярытэт", - "Members": "Удзельнікі", - "Mentions only": "Толькі згадкі", - "Mute": "Без гуку", - "No rooms to show": "Няма пакояў для паказу", - "Noisy": "Шумна", - "Notification targets": "Мэты апавяшчэння", - "Notifications": "Апавяшчэнні", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Апавяшчэнні па наступных ключавых словах прытрымліваюцца правілаў, якія не могуць быць адлюстраваны тут", - "Notify for all other messages/rooms": "Апавяшчаць для ўсіх іншых паведамленняў/пакояў", - "Notify me for anything else": "Паведаміць мне што-небудзь яшчэ", - "Off": "Выключыць", - "On": "Уключыць", - "Operation failed": "Не атрымалася выканаць аперацыю", - "Permalink": "Пастаянная спасылка", - "Please Register": "Калі ласка, зарэгіструйцеся", - "powered by Matrix": "працуе на Matrix", - "Quote": "Цытата", - "Redact": "Адрэдагаваць", - "Reject": "Адхіліць", - "Remove %(name)s from the directory?": "Выдаліць %(name)s з каталога?", - "Remove": "Выдалiць", - "remove %(name)s from the directory.": "выдаліць %(name)s з каталога.", - "Remove from Directory": "Выдалiць з каталога", - "Resend": "Паўторна", - "Riot does not know how to join a room on this network": "Riot не ведае, як увайсці ў пакой у гэтай сетке", - "Room directory": "Каталог пакояў", - "Room not found": "Пакой не знойдзены", - "Search for a room": "Пошук па пакоі", - "Settings": "Налады", - "Source URL": "URL-адрас крыніцы", - "Start chat": "Пачаць чат", - "The Home Server may be too old to support third party networks": "Хатні сервер можа быць занадта стары для падтрымкі іншых сетак", - "There are advanced notifications which are not shown here": "Ёсць пашыраныя апавяшчэння, якія не паказаныя тут", - "The server may be unavailable or overloaded": "Сервер можа быць недаступны ці перагружаны", - "This room is inaccessible to guests. You may be able to join if you register.": "Гэты пакой недаступны для гасцей. Вы можаце далучыцца, калі вы зарэгіструецеся.", - " to room": " ў пакоі" + "powered by Matrix": "працуе на Matrix" } diff --git a/src/i18n/strings/bg.json b/src/i18n/strings/bg.json new file mode 100644 index 0000000000..24233360e0 --- /dev/null +++ b/src/i18n/strings/bg.json @@ -0,0 +1,39 @@ +{ + "Riot is not supported on mobile web. Install the app?": "Riot не поддържа мобилен уеб браузър. Инсталиране на приложението?", + "Riot Desktop on %(platformName)s": "Riot Desktop под %(platformName)s", + "Unknown device": "Непознато устройство", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s в %(browserName)s под %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "Трябва да използвате HTTPS, за да споделите екрана си.", + "Custom Server Options": "Потребителски опции за сървър", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Може да използвате опциите за друг сървър, за да влезете в други Matrix сървъри като посочите различен Home сървър.
    Това Ви позволява да използвате Riot със съществуващ Matrix профил на различен Home сървър.

    Възможно е и да зададете друг сървър за самоличност. В този случай обаче няма да бъде възможно да поканите други потребители по имейл адрес, както и самите Вие няма да можете да бъдете поканени по имейл адрес.", + "Dismiss": "Затвори", + "powered by Matrix": "базирано на Matrix", + "Welcome to Riot.im": "Добре дошли в Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Децентрализиран, шифрован чат и колаборация базирани на [matrix]", + "Search the room directory": "Търсене в директорията със стаи", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "В Matrix съществуват много стаи, свързани към вече съществуващи мрежи (Slack, IRC, Gitter и т.н.) или независими такива. Разгледайте директорията!", + "Chat with Riot Bot": "Чат с Riot Bot", + "Get started with some tips from Riot Bot!": "Започнете с някои съвети от Riot Bot!", + "General discussion about Matrix and Riot": "Обща дискусия относно Matrix и Riot", + "Discussion of all things Matrix!": "Дискусия за всичко свързано с Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & Desktop чат", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk чат", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk чат", + "Matrix technical discussions": "Технически дискусии в Matrix", + "Running Matrix services": "Хостинг на Matrix услуги", + "Community-run support for Synapse": "Поддръжка за Synapse от общността", + "Admin support for Dendrite": "Административна поддръжка за Dendrite", + "Announcements about Synapse releases": "Обявления за нови версии на Synapse", + "Support for those using and running matrix-appservice-irc": "Поддръжка за използващите и работещите с matrix-appservice-irc", + "Building services on Matrix": "Разработка на услуги в Matrix", + "Support for those using the Matrix spec": "Поддръжка за използващите Matrix спецификацията", + "Design and implementation of E2E in Matrix": "Разработване и внедряване на E2E шифроване в Matrix", + "Implementing VR services with Matrix": "Внедряване на VR услуги с Matrix", + "Implementing VoIP services with Matrix": "Внедряване на VoIP услуги с Matrix", + "Discussion of the Identity Service API": "Дискусия върху API услугата за самоличност", + "Support for those using, running and writing other bridges": "Поддръжка за тези, които използват, работят и пишат Matrix мостове", + "Contributing code to Matrix and Riot": "Допринасяне с код към Matrix и Riot", + "Dev chat for the Riot/Web dev team": "Чат за разработващия екип на Riot/Web", + "Dev chat for the Dendrite dev team": "Чат за разработващия екип на Dendrite", + "Co-ordination for Riot translators": "Координация за преводачи на Riot" +} diff --git a/src/i18n/strings/bn_BD.json b/src/i18n/strings/bn_BD.json new file mode 100644 index 0000000000..9e26dfeeb6 --- /dev/null +++ b/src/i18n/strings/bn_BD.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/src/i18n/strings/bn_IN.json b/src/i18n/strings/bn_IN.json new file mode 100644 index 0000000000..e2c37d4379 --- /dev/null +++ b/src/i18n/strings/bn_IN.json @@ -0,0 +1,3 @@ +{ + "Riot is not supported on mobile web. Install the app?": "মোবাইল ওয়েব রায়ট সমর্থন করে না. অ্য়াপ টি ইনস্টল করতে চান?" +} diff --git a/src/i18n/strings/bs.json b/src/i18n/strings/bs.json new file mode 100644 index 0000000000..9e26dfeeb6 --- /dev/null +++ b/src/i18n/strings/bs.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/src/i18n/strings/ca.json b/src/i18n/strings/ca.json new file mode 100644 index 0000000000..d450f16621 --- /dev/null +++ b/src/i18n/strings/ca.json @@ -0,0 +1,38 @@ +{ + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s per a %(osName)s", + "Custom Server Options": "Opcions de servidor personalitzat", + "Dismiss": "Omet", + "Unknown device": "Dispositiu desconegut", + "Welcome to Riot.im": "Us donem la benvinguda a Riot.im", + "Chat with Riot Bot": "Conversa amb el Bot de Riot", + "Riot is not supported on mobile web. Install the app?": "Riot no és compatible amb la web per a mòbils. Voleu instal·lar l'aplicació per a mòbils?", + "Riot Desktop on %(platformName)s": "Riot d'escriptori per a %(platformName)s", + "You need to be using HTTPS to place a screen-sharing call.": "Heu d'utilitzar HTTPS per poder fer una trucada amb pantalla compartida.", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Podeu utilitzar opcions de servidor personalitzades per iniciar sessió en altres servidors Matrix especificant una URL diferent a la del servidor principal.
    Això us permet utilitzar Riot amb un compte de Matrix existent en un servidor d'origen diferent.

    També podeu establir un servidor d'identitat personalitzat, però no podreu convidar o ser convidat per correu electrònic.", + "powered by Matrix": "amb tecnologia de Matrix", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Xat descentralitzat, encriptat i col·laboratiu amb tecnologia de [matrix]", + "Search the room directory": "Cerqueu el directori de sales", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Ja existeixen moltes sales a Matrix vinculades a xarxes existents (Slack, IRC, Gitter, etc.) o independents. Feu un cop d'ull al directori!", + "Get started with some tips from Riot Bot!": "Comenceu amb alguns consells de Riot Bot!", + "General discussion about Matrix and Riot": "Debat general sobre Matrix i Riot", + "Discussion of all things Matrix!": "Debats sobre qualsevol cosa de Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & Xat d'escriptori", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & Xat de matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & Xat matrix-android-sdk", + "Matrix technical discussions": "Debats tècnics sobre Matrix", + "Running Matrix services": "Serveis de Matrix en marxa", + "Community-run support for Synapse": "Suport de la comunitat per a Synapse", + "Admin support for Dendrite": "Suport dels administrador per a Dendrite", + "Announcements about Synapse releases": "Anuncis sobre llançaments de Synapse", + "Support for those using and running matrix-appservice-irc": "Suport per a aquells que utilitzen i executen matrix-appservice-irc", + "Building services on Matrix": "Construir serveis a Matrix", + "Support for those using the Matrix spec": "Suport per a aquells que utilitzen l'especificació Matrix", + "Design and implementation of E2E in Matrix": "Disseny i implementació de l'E2E a Matrix", + "Implementing VR services with Matrix": "Implementació de serveis VR amb Matrix", + "Implementing VoIP services with Matrix": "Implementació de serveis VoIP amb Matrix", + "Discussion of the Identity Service API": "Debat sobre l'API Identity Service", + "Support for those using, running and writing other bridges": "Suport per a aquells que utilitzen, executen i escriuen altres ponts", + "Contributing code to Matrix and Riot": "Contribuir amb codi a Matrix i Riot", + "Dev chat for the Riot/Web dev team": "Xat de l'equip de desenvolupadors Riot/Web per a desenvolupadors", + "Dev chat for the Dendrite dev team": "Xat de l'equip Dendrite per a desenvolupadors" +} diff --git a/src/i18n/strings/cs.json b/src/i18n/strings/cs.json new file mode 100644 index 0000000000..e2a5e50ef1 --- /dev/null +++ b/src/i18n/strings/cs.json @@ -0,0 +1,39 @@ +{ + "Welcome to Riot.im": "Vítá vás Riot.im", + "Unknown device": "Neznámé zařízení", + "Riot is not supported on mobile web. Install the app?": "Riot není podporovaný na mobilním webu. Nainstalovat aplikaci?", + "You need to be using HTTPS to place a screen-sharing call.": "Pro uskutečnění hovoru se sdílením obrazovky musíte používat HTTPS.", + "Search the room directory": "Prohledat adresář místností", + "Chat with Riot Bot": "Chatujte s Riot Botem", + "Get started with some tips from Riot Bot!": "Začněte s radami od Riot Bota!", + "General discussion about Matrix and Riot": "Obecná diskuse o Matrixu a Riotu", + "Discussion of all things Matrix!": "Diskuse o všem okolo Matrixu!", + "Matrix technical discussions": "Technické diskuse o Matrixu", + "Running Matrix services": "Provozování Matrix služeb", + "Community-run support for Synapse": "Komunitou řízená podpora pro Synapse", + "Announcements about Synapse releases": "Oznámení o vydáních Synapse", + "Support for those using and running matrix-appservice-irc": "Podpora pro používání matrix-appservice-irc", + "Building services on Matrix": "Stavění služeb na Matrixu", + "Dismiss": "Zahodit", + "powered by Matrix": "poháněno Matrixem", + "Riot Desktop on %(platformName)s": "Riot Desktop na %(platformName)s", + "Admin support for Dendrite": "Správcovská podpora pro Dendrite", + "Support for those using the Matrix spec": "Podpora pro uživatele Matrix specifikace", + "Design and implementation of E2E in Matrix": "Návrh a implementace E2E v Matrixu", + "Implementing VR services with Matrix": "Implementace VR služeb v Matrixu", + "Implementing VoIP services with Matrix": "Implementace VoIP služeb v Matrixu", + "Support for those using, running and writing other bridges": "Podpora pro ty, kteří používají, provozují nebo vyvíjejí ostatní můstky", + "Contributing code to Matrix and Riot": "Přispívaní kódem do Matrixu a Riotu", + "Dev chat for the Riot/Web dev team": "Chat vývojového týmu Riot/Web", + "Dev chat for the Dendrite dev team": "Chat vývojového týmu Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "V Matrixu je spousta samostatných, nebo s jinými sítěmi (Slack, IRC, Gitter aj.) propojených místností. Prohlédněte si jejich adresář!", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s přes %(browserName)s na %(osName)s", + "Custom Server Options": "Vlastní serverové volby", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentralizovaný, šifrovaný chat a spolupráce na platformě [matrix]", + "Riot/Web & Desktop chat": "Riot/Web a Desktop chat", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS a matrix-ios-sdk chat", + "Riot/Android & matrix-android-sdk chat": "Riot/Android a matrix-android-sdk chat", + "Discussion of the Identity Service API": "Diskuze o API služby identity", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Přes vlastní serverové volby se můžete přihlásit k dalším Matrix serverům tak, že zadáte jinou adresu domovského serveru.
    Díky tomu můžete v Riotu používat Matrix účet z jiného domovského serveru.

    Můžete nastavit i vlastní server identity, ale pak už nebudete moci zvát ani být zván/a skrze e-mailovou adresu.", + "Co-ordination for Riot translators": "Spolupráce pro překladatele Riot" +} diff --git a/src/i18n/strings/da.json b/src/i18n/strings/da.json index 4cd6c4b008..14b27289bf 100644 --- a/src/i18n/strings/da.json +++ b/src/i18n/strings/da.json @@ -1,84 +1,38 @@ { - "Add an email address above to configure email notifications": "Tilføj en emailadresse ovenfor for at konfigurere e-mail-underretninger", - "All notifications are currently disabled for all targets.": "Alle meddelelser er for øjeblikket deaktiveret for alle mål.", - "An error occurred whilst saving your email notification preferences.": "Der opstod en fejl under opbevaring af dine e-mail-underretningsindstillinger.", - "and remove": "Og fjern", - "Can't update user notification settings": "Kan ikke opdatere brugermeddelelsesindstillinger", - "Create new room": "Opret nyt rum", - "Couldn't find a matching Matrix room": "Kunne ikke finde et matchende Matrix-rum", "Custom Server Options": "Brugerdefinerede serverindstillinger", - "delete the alias.": "Slet aliaset.", - "Delete the room alias": "Slet room alias", - "Direct Chat": "Personligt Chat", - "Directory": "Rum fortegnelse", "Dismiss": "Afskedige", - "Drop here to": "Drop her til", - "Enable audible notifications in web client": "Aktivér hørbare underretninger i webklienten", - "Enable desktop notifications": "Aktivér desktop meddelelser", - "Enable email notifications": "Aktivér e-mail-underretninger", - "Enable notifications for this account": "Aktivér underretninger for dette brugernavn", - "Enable them now": "Aktivér dem nu", - "Enter keywords separated by a comma:": "Indtast søgeord adskilt af et komma:", - "Error": "Fejl", - "Error saving email notification preferences": "Fejl ved at gemme e-mail-underretningsindstillinger", - "#example": "#eksempel", - "Failed to": "Var ikke i stand til at", - "Failed to add tag ": "Kunne ikke tilføje tag ", - "Failed to change settings": "Kunne ikke ændre indstillinger", - "Failed to update keywords": "Kunne ikke opdatere søgeord", - "Failed to get protocol list from Home Server": "Kunne ikke få protokolliste fra Home Server", - "Failed to get public room list": "Kunne ikke få offentlig rumliste", - "Failed to join the room": "Kunne ikke komme ind i rumet", - "Failed to remove tag ": "Kunne ikke fjerne tag ", - "Failed to set Direct Message status of room": "Kunne ikke indstille direkte beskedstatus for rumet", - "Favourite": "Favorit", - "Fetching third party location failed": "Hentning af tredjeparts placering mislykkedes", - "Files": "Filer", - "Filter room names": "Filtrer rumnavne", - "Forget": "Glem", - "from the directory": "fra fortegnelsen", - " from room": " fra rum", - "Guests can join": "Gæster kan deltage", - "Guest users can't invite users. Please register to invite.": "Gæstebrugere kan ikke invitere brugere. Tilmeld dig venligst for at invitere.", - "Invite to this room": "Inviter til dette rum", - "Keywords": "Søgeord", - "Leave": "Forlade", - "Low Priority": "Lav prioritet", - "Members": "Medlemmer", - "No rooms to show": "Ingen rum at vise", - "Noisy": "Støjende", - "Notification targets": "Meddelelsesmål", - "Notifications": "Meddelser", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Meddelelser om følgende søgeord følger regler, der ikke kan vises her:", - "Notify for all other messages/rooms": "Underret om alle andre meddelelser / rum", - "Notify me for anything else": "Underret mig om noget andet", - "Off": "Slukket", - "On": "Tændt", - "Operation failed": "Operation mislykkedes", - "Please Register": "Vær venlig at registrere", "powered by Matrix": "Drevet af Matrix", - "Reject": "Afvise", - "Remove": "Fjerne", - "remove": "fjerner", - "Remove from Directory": "Fjern fra fortegnelse", - "Riot does not know how to join a room on this network": "Riot ved ikke, hvordan man kan deltage i et rum på dette netværk", - "Room directory": "Rum fortegnelse", - "Room not found": "Rumet ikke fundet", - "Search for a room": "Søg efter et rum", - "Settings": "Indstillinger", - "Start chat": "Begyndt chat", - "The Home Server may be too old to support third party networks": "Hjemmeserveren kan være for gammel til at understøtte tredjepartsnetværk", - "There are advanced notifications which are not shown here": "Der er avancerede meddelelser, som ikke vises her", - "The server may be unavailable or overloaded": "Serveren kan være utilgængelig eller overbelastet", - "This room is inaccessible to guests. You may be able to join if you register.": "Dette rum er utilgængeligt for gæster. Du kan være i stand til at deltage, hvis du registrerer dig.", - " to room": " til rum", - "Unable to fetch notification target list": "Kan ikke hente meddelelsesmålliste", - "Unable to join network": "Kan ikke deltage i netværket", - "Unable to look up room ID from server": "Kunne ikke slå op på rum-id fra server", - "unknown error code": "Ukendt fejlkode", - "Unnamed room": "Unnamed rum", - "World readable": "Læselig til alle", - "You are not receiving desktop notifications": "Du modtager ikke desktop meddelelser", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Du har muligvis konfigureret dem i en anden klient end Riot. Du kan ikke tune dem i Riot, men de gælder stadig", - "Close": "Luk" + "Riot is not supported on mobile web. Install the app?": "Riot understøtter ikke mobilhjemmesider. Vil du installere app'en?", + "Riot Desktop on %(platformName)s": "Riot Desktop på %(platformName)s", + "Unknown device": "Ukendt enhed", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s på %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "Du skal bruge HTTPS for at lave skærm-delings-opkald.", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Du kan bruge de brugerdefinerede server indstillinger til at logge ind på andre Matrix servere ved at skrive en anden Home Server adresse.
    Dette tillader dig at bruge Riot med en eksisterende Matrix konto på en anden home server.

    Du kan også indstille en brugerdefineret identity server men så vil du ikke kunne invitere brugere ved hjælp af deres emailadresse eller selv blive inviteret med emailadresse.", + "Welcome to Riot.im": "Velkommen til Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentraliseret, krypteret chat & samarbejde baseret på [matrix]", + "Search the room directory": "Søg i rumkataloget", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Masser af rum ekistere allerede i Matrix, forbundet til eksisterende netværk (Slack, IRC, Gitter osv.) eller selvstændige. Tjek kataloget ud!", + "Chat with Riot Bot": "Chat med Riot Bot", + "Get started with some tips from Riot Bot!": "Kom godt i gang med nogle tips fra Riot Bot!", + "General discussion about Matrix and Riot": "Generel diskussion om Matrix og Riot", + "Discussion of all things Matrix!": "Diskussion om alt der har med Matrix at gøre!", + "Riot/Web & Desktop chat": "Riot/Web- & Desktopchat", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk chat", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk chat", + "Matrix technical discussions": "Matrix tekniske diskussioner", + "Running Matrix services": "Drift af Matrix tjenester", + "Community-run support for Synapse": "Fællesskabsstyret hjælp til Synapse", + "Admin support for Dendrite": "Adminstrationshjælp til Dendrite", + "Announcements about Synapse releases": "Announceringer om Synapse udgivelser", + "Support for those using and running matrix-appservice-irc": "Hjælp til dem der bruger og kører matrix-appservice-irc", + "Building services on Matrix": "Bygning af tjenester på Matrix", + "Support for those using the Matrix spec": "Hjælp til dem der anvender Matrix speciffikationen", + "Design and implementation of E2E in Matrix": "Design og implementering af E2E i Matrix", + "Implementing VR services with Matrix": "Implementering af VR tjenester med Matrix", + "Implementing VoIP services with Matrix": "Implementering af VoIP tjenester med Matrix", + "Discussion of the Identity Service API": "Diskussion af Identity Service API'en", + "Support for those using, running and writing other bridges": "Hjælp til dem der bruger, driver og skriver andre bridges", + "Contributing code to Matrix and Riot": "Biddrag med kode til Matrix og Riot", + "Dev chat for the Riot/Web dev team": "Udviklerchat til Riot/Web udviklerholdet", + "Dev chat for the Dendrite dev team": "Udviklerchat til Dendrite udviklerholdet" } diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 59483af82d..c9c4f76737 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -1,172 +1,39 @@ { - "Please Register": "Bitte registrieren", - "Guest users can't invite users. Please register to invite.": "Gäste können keine Nutzer einladen. Bitte registriere dich, um Nutzer einzuladen.", - "Members": "Mitglieder", - "Files": "Dateien", - "Notifications": "Benachrichtigungen", - "Invite to this room": "In diesen Raum einladen", - "Filter room names": "Raum-Namen filtern", - "Start chat": "Neuen Chat starten", - "Room directory": "Raum-Verzeichnis", - "Create new room": "Neuen Raum erstellen", - "Settings": "Einstellungen", "powered by Matrix": "betrieben mit Matrix", - "Custom Server Options": "Erweiterte Server-Optionen", + "Custom Server Options": "Benutzerdefinierte Server-Optionen", "Dismiss": "Ablehnen", - "Failed to get protocol list from Home Server": "Fehler beim Abrufen der Protokoll-Liste vom Home-Server", - "The Home Server may be too old to support third party networks": "Der Home-Server ist eventuell zu alt, um Drittanbieter-Netzwerke zu unterstützen", - "Directory": "Raum-Verzeichnis", - "#example:": "#beispiel:", - "Search for a room": "Nach einem Raum suchen", - "No rooms to show": "Keine Räume zum anzeigen", - "World readable": "Alle können mitlesen", - "Guests can join": "Gäste können beitreten", - "You are not receiving desktop notifications": "Du erhältst keine Desktop-Benachrichtigungen", - "Enable them now": "Aktiviere diese jetzt", - "Add an email address above to configure email notifications": "Füge oben eine E-Mail-Adresse hinzu, um die E-Mail-Benachrichtigungseinstellungen zu konfigurieren", - "All notifications are currently disabled for all targets.": "Im Moment sind alle Benachrichtigungen für alle Ziele deaktiviert.", - "An error occurred whilst saving your email notification preferences.": "Beim Speichern deiner E-Mail-Benachrichtigungseinstellungen ist ein Fehler aufgetreten.", - "and remove": "und entfernen", - "Can't update user notification settings": "Benachrichtigungs-Einstellungen des Nutzers konnten nicht aktualisiert werden", - "Couldn't find a matching Matrix room": "Konnte keinen entsprechenden Matrix-Raum finden", - "delete the alias.": "Lösche den Alias.", - "Delete the room alias": "Lösche den Raum Alias", - "Direct Chat": "Privater Chat", - "Drop here to": "Hier ablegen", - "Enable audible notifications in web client": "Audio-Benachrichtigungen im Web-Client aktivieren", - "Enable desktop notifications": "Desktop-Benachrichtigungen aktivieren", - "Enable email notifications": "E-Mail-Benachrichtigungen aktivieren", - "Enable notifications for this account": "Benachrichtigungen für dieses Konto aktivieren", - "Enter keywords separated by a comma:": "Schlüsselwörter kommagetrennt eingeben:", - "Error": "Fehler", - "Error saving email notification preferences": "Fehler beim Speichern der E-Mail-Benachrichtigungseinstellungen", - "#example": "#Beispiel", - "Failed to": "Konnte nicht", - "Failed to add tag ": "Konnte Tag nicht hinzufügen ", - "Failed to change settings": "Einstellungen konnten nicht geändert werden", - "Failed to update keywords": "Schlüsselwörter konnten nicht aktualisiert werden", - "Failed to get public room list": "Die Liste der öffentlichen Räume konnte nicht geladen werden", - "Failed to join the room": "Fehler beim Betreten des Raumes", - "Failed to remove tag ": "Konnte Tag nicht entfernen ", - "Failed to set Direct Message status of room": "Konnte den direkten Benachrichtigungsstatus nicht setzen", - "Favourite": "Favorit", - "Fetching third party location failed": "Das Abrufen des Drittanbieterstandorts ist fehlgeschlagen", - "Forget": "Lösche", - "from the directory": "aus dem Verzeichnis", - " from room": " aus dem Raum", - "Keywords": "Schlüsselwörter", - "Leave": "Verlassen", - "Low Priority": "Niedrige Priorität", - "Noisy": "Laut", - "Notification targets": "Benachrichtigungsziele", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Die Benachrichtigungen zu den folgenden Schlüsselwörtern folgen Regeln, die hier nicht angezeigt werden können:", - "Notify for all other messages/rooms": "Benachrichtigungen für alle anderen Mitteilungen/Räume aktivieren", - "Operation failed": "Aktion fehlgeschlagen", - "Reject": "ablehnen", - "Remove": "Entfernen", - "remove": "Entferner", - "Remove from Directory": "Aus dem Raum-Verzeichnis entfernen", - "Riot does not know how to join a room on this network": "Riot weiß nicht, wie es einem Raum auf diesem Netzwerk beitreten soll", - "Room not found": "Raum nicht gefunden", - "There are advanced notifications which are not shown here": "Es existieren erweiterte Benachrichtigungen, welche hier nicht angezeigt werden", - "The server may be unavailable or overloaded": "Der Server ist vermutlich nicht erreichbar oder überlastet", - "This room is inaccessible to guests. You may be able to join if you register.": "Dieser Raum ist nicht verfügbar für Gäste. Vermutlich klappt es wenn du dich anmeldest.", - "Unable to fetch notification target list": "Liste der Benachrichtigungsempfänger konnte nicht abgerufen werden", - "Unable to join network": "Es ist nicht möglich, dem Netzwerk beizutreten", - "unknown error code": "Unbekannter Fehlercode", - "Unnamed room": "Unbenannter Raum", - "Notify me for anything else": "Benachrichtige mich für alles andere", - "Off": "Aus", - "On": "An", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Du hast sie eventuell auf einem anderen Client als Riot konfiguriert. Sie können in Riot nicht verändert werden, gelten aber trotzdem", - " to room": " an Raum", - "Drop here %(toAction)s": "Hierher ziehen: %(toAction)s", - "All messages": "Alle Nachrichten", - "All messages (loud)": "Alle Nachrichten (laut)", - "Cancel Sending": "Senden abbrechen", - "Close": "Schließen", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Soll der Raum-Alias %(alias)s gelöscht und der %(name)s aus dem Verzeichnis entfernt werden?", - "Download this file": "Diese Datei herunterladen", - "Failed to add tag %(tagName)s to room": "Das Hinzufügen des Tags %(tagName)s für den Raum ist fehlgeschlagen", - "Failed to forget room %(errCode)s": "Das Entfernen des Raums %(errCode)s aus deiner Liste ist fehlgeschlagen", - "Failed to remove tag %(tagName)s from room": "Das Entfernen des Tags %(tagName)s für den Raum ist fehlgeschlagen", - "Failed to set direct chat tag": "Fehler beim Setzen der \"Direkter Chat\"-Kennzeichnung", - "Mentions only": "Nur, wenn du erwähnt wirst", - "Mute": "Stummschalten", - "Permalink": "Permanenter Link", - "Quote": "Zitat", - "Redact": "Redaktionell entfernen", - "Remove %(name)s from the directory?": "Soll der Raum %(name)s aus dem Verzeichnis entfernt werden?", - "remove %(name)s from the directory.": "entferne %(name)s aus dem Verzeichnis.", - "Resend": "Erneut senden", - "Source URL": "Quell-URL", - "Unable to look up room ID from server": "Es ist nicht möglich, die Raum-ID auf dem Server nachzuschlagen", - "Unhide Preview": "Vorschau wieder anzeigen", - "Uploaded on %(date)s by %(user)s": "Hochgeladen am %(date)s durch %(user)s", - "View Decrypted Source": "Entschlüsselten Quellcode ansehen", - "View Source": "Quellcode ansehen", - "You cannot delete this image. (%(code)s)": "Das Bild kann nicht gelöscht werden. (%(code)s)", - "You cannot delete this message. (%(code)s)": "Diese Nachricht kann nicht gelöscht werden. (%(code)s)", - "Today": "Heute", - "Wednesday": "Mittwoch", - "Thursday": "Donnerstag", - "Friday": "Freitag", - "Saturday": "Samstag", - "Tuesday": "Dienstag", - "Sunday": "Sonntag", - "Monday": "Montag", - "Yesterday": "Gestern", - "Welcome page": "Willkommensseite", - "Advanced notification settings": "Erweiterte Benachrichtigungs-Einstellungen", - "Call invitation": "Anruf-Einladung", - "Messages containing my display name": "Nachrichten, die meinen Anzeigenamen enthalten", - "Messages containing my user name": "Nachrichten, die meinen Nutzernamen enthalten", - "Messages in group chats": "Nachrichten in Gruppen-Chats", - "Messages in one-to-one chats": "Nachrichten in Einzel-Chats", - "Messages sent by bot": "Nachrichten von Bots", - "more": "mehr", - "When I'm invited to a room": "Wenn ich in einen Raum eingeladen werde", - "customServer_text": "Du kannst die erweiterten Server-Optionen nutzen, um dich auf anderen Matrix-Servern anzumelden, indem du eine andere Heimserver-URL eingibst.
    Dies ermöglicht es dir, Riot mit einem bereits existierenden Matrix-Konto auf einem anderen Heimserver zu nutzen.

    Du kannst auch einen benutzerdefinierten Identitäts-Server eingeben, allerdings wirst du dann nicht in der Lage sein, andere Benutzer per E-Mail-Adresse einzuladen oder selbst Einladungen per E-Mail-Adresse zu erhalten.", - "Safari and Opera work too.": "Safari und Opera funktionieren ebenfalls.", - "I understand the risks and wish to continue": "Ich verstehe das Risiko und möchte fortfahren", - "Messages containing keywords": "Nachrichten, die definierte Schlüsselwörter enthalten", - "Please install Chrome or Firefox for the best experience.": "Bitte installiere Chrome oder Firefox für die beste Erfahrung.", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot nutzt zahlreiche fortgeschrittene Browser-Funktionen, die teilweise in deinem aktuell verwendeten Browser noch nicht verfügbar sind oder sich noch im experimentellen Status befinden.", - "Sorry, your browser is not able to run Riot.": "Es tut uns leid, aber dein Browser kann Riot nicht ausführen.", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "In deinem aktuellen Browser kann das Aussehen und Gefühl der Anwendung komplett inkorrekt sein und einige oder alle Funktionen funktionieren evtl. nicht. Du kannst es trotzdem versuchen und fortfahren, aber du bist alleine mit allen Problemen auf die du stößt!", - "Expand panel": "Panel ausklappen", - "Collapse panel": "Panel einklappen", "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s auf %(osName)s", - "A new version of Riot is available.": "Eine neue Version von Riot ist verfügbar.", - "All Rooms": "Alle Räume", - "Cancel": "Abbrechen", - "Changelog": "Änderungshistorie", - "Collecting app version information": "App-Versionsinformationen werden abgerufen", - "Collecting logs": "Protokolle werden abgerufen", - "Describe your problem here.": "Beschreibe dein Problem hier.", - "Failed to send report: ": "Senden des Reports fehlgeschlagen: ", - "Forward Message": "Leite Nachricht weiter", - "Hide panel": "Verberge Feld", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Um Probleme zu diagnostizieren werden mit diesem Fehlerbericht Protokolle von diesem Client gesendet. Wenn du nur obigen text senden willst, deselektiere folgendes:", - "Loading bug report module": "Lade Fehlerbericht-Modul", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Bitte beschreibe (vorzugsweise auf Englisch) den Fehler. Was tatst du? Was wolltest du, dass es passiert? Was ist passiert?", - "Please describe the bug and/or send logs.": "Bitte beschreibe den Fehler und/oder sende Protokolle.", - "Report a bug": "Einen Fehler melden", "Riot Desktop on %(platformName)s": "Riot Desktop auf %(platformName)s", "Riot is not supported on mobile web. Install the app?": "Riot wird im mobilen Web nicht unterstützt. App installieren?", - "Search": "Suchen", - "Search…": "Suchen…", - "Send": "Sende", - "Send logs": "Sende Protokolle", - "This Room": "Dieser Raum", - "Unavailable": "Nicht verfügbar", "Unknown device": "Unbekanntes Gerät", - "Update": "Aktualisiere", - "Uploading report": "Lade Bericht hoch", - "What's New": "Was ist neu", - "What's new?": "Was ist neu?", - "Waiting for response from server": "Warte auf eine Antwort vom Server", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "Du verwendest Riot als Gast. Registriere oder melde dich an um Zugang zu mehr Räumen und Funktionen zu bekommen!", "You need to be using HTTPS to place a screen-sharing call.": "Du musst HTTPS nutzen um einen Anruf mit Bildschirmfreigabe durchzuführen.", - "OK": "OK" + "Welcome to Riot.im": "Willkommen bei Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Dezentrale, verschlüsselte Chat- & Kollaborationslösung unterstützt von [matrix]", + "Search the room directory": "Raum-Verzeichnis durchsuchen", + "Chat with Riot Bot": "Mit dem Riot-Bot chatten", + "Get started with some tips from Riot Bot!": "Lass Dir vom Riot-Bot eine Einführung geben!", + "Discussion of all things Matrix!": "\"Diskussion über alle Dinge\"-Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & Desktop-Chat", + "Riot/iOS & matrix-ios-sdk chat": "Riot-iOS & \"matrix-ios-sdk\"-Chat", + "Riot/Android & matrix-android-sdk chat": "Riot-Android & matrix-android-sdk-Chat", + "Matrix technical discussions": "Technische Diskussion über Matrix", + "Running Matrix services": "Matrix-Dienste betreiben", + "Community-run support for Synapse": "Support für Synapse von der Community", + "Admin support for Dendrite": "Admin-Unterstützung für Dendrite", + "Announcements about Synapse releases": "Ankündigungen über Synapse-Versionen", + "Support for those using and running matrix-appservice-irc": "Unterstützung für die, die \"matrix-appservice-irc\" betreiben und nutzen", + "Building services on Matrix": "Dienste für Matrix entwickeln", + "Support for those using the Matrix spec": "Unterstützung für die Nutzer der Matrix-Spezification", + "Design and implementation of E2E in Matrix": "Design und Implementierung von Ende-zu-Ende-Verschlüsselung in Matrix", + "Implementing VR services with Matrix": "Implementierung von VR-Diensten mit Matrix", + "Implementing VoIP services with Matrix": "Implementierung von VoIP-Diensten mit Matrix", + "Discussion of the Identity Service API": "Diskussion der Identitätsdienst-API", + "Support for those using, running and writing other bridges": "Unterstützung für die, die andere Matrix-Bridges nutzen, betreiben oder entwickeln", + "Contributing code to Matrix and Riot": "Code zu Matrix und Riot beitragen", + "Dev chat for the Riot/Web dev team": "Entwickler-Chat für das Riot/Web-Entwickler-Team", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Im Matrix-Netzwerk existieren bereits jetzt zahlreiche Räume, die entweder mit bekannten Netzwerken wie Slack, IRC, Gitter, usw. verknüpft sind oder auch komplett eigenständig betrieben werden. Einen genauen Überblick erhältst du im Raum-Verzeichnis!", + "Dev chat for the Dendrite dev team": "Entwickler-Chat für das Dendrite-Entwickler-Team", + "General discussion about Matrix and Riot": "Allgemeine Diskussion über Matrix und Riot", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Die benutzerdefinierten Server-Einstellungen kannst du verwenden, um dich auf anderen Matrix-Servern anzumelden, indem du eine abweichende Heimserver-URL eingibst.
    Somit ist es möglich, Riot mit einem bereits bestehendem Matrix-Benutzerkonto auf einem anderen Heimserver zu verwenden.

    Außerdem kannst du einen benutzerdefinierten Identitätsserver eingeben. Allerdings kannst du in diesem Fall Benutzer nicht mehr per E-Mail-Adresse einladen und auch selbst nicht mehr per E-Mail-Adresse eingeladen werden.", + "Co-ordination for Riot translators": "Koordination für Riot-Übersetzer" } diff --git a/src/i18n/strings/el.json b/src/i18n/strings/el.json index ef09843466..b34c3b1174 100644 --- a/src/i18n/strings/el.json +++ b/src/i18n/strings/el.json @@ -1,159 +1,39 @@ { - "A new version of Riot is available.": "Μία νέα έκδοση του Riot είναι διαθέσιμη.", - "Advanced notification settings": "Προχωρημένες ρυθμίσεις ειδοποιήσεων", - "All messages": "Όλα τα μηνύματα", - "All Rooms": "Όλα τα δωμάτια", - "All notifications are currently disabled for all targets.": "Όλες οι ειδοποιήσεις είναι προς το παρόν απενεργοποιημένες για όλες τις συσκευές.", - "An error occurred whilst saving your email notification preferences.": "Ένα σφάλμα προέκυψε κατά την αποθήκευση των ρυθμίσεων σας.", - "Call invitation": "Πρόσκληση σε κλήση", - "Cancel": "Ακύρωση", - "Cancel Sending": "Ακύρωση Αποστολής", - "Can't update user notification settings": "Δεν είναι δυνατή η ενημέρωση των ρυθμίσεων ειδοποίησης χρήστη", - "Changelog": "Αλλαγές", - "Close": "Κλείσιμο", - "Collapse panel": "Ελαχιστοποίηση καρτέλας", - "Create new room": "Δημιούργησε ένα νέο δωμάτιο", "Custom Server Options": "Προσαρμοσμένες ρυθμίσεις διακομιστή", - "Describe your problem here.": "Περιέγραψε το πρόβλημα σου εδώ.", - "Direct Chat": "Απευθείας Συνομιλία", - "Directory": "Ευρετήριο", - "Download this file": "Κατέβασε το αρχείο", - "Enable audible notifications in web client": "Ενεργοποίηση των ηχητικών ειδοποιήσεων", - "Enable email notifications": "Ενεργοποίηση ειδοποιήσεων μέσω email", - "Enable notifications for this account": "Ενεργοποίηση ειδοποιήσεων γι' αυτό το λογαριασμό", - "Enter keywords separated by a comma:": "Πρόσθεσε λέξεις κλειδιά χωρισμένες με κόμμα:", - "Error": "Σφάλμα", - "#example": "#παράδειγμα", - "Expand panel": "Μεγιστοποίηση καρτέλας", - "Safari and Opera work too.": "Safari και Opera λειτουργούν επίσης.", - "Add an email address above to configure email notifications": "Πρόσθεσε μια διεύθυνση email στο παραπάνω πεδίο, για να έχεις τη δυνατότητα να λαμβάνεις ειδοποιήσεις", - "Collecting app version information": "Συγκέντρωση πληροφοριών σχετικά με την έκδοση της εφαρμογής", - "customServer_text": "Μπορείτε να χρησιμοποιήσετε τις προσαρμοσμένες ρυθμίσεις για να εισέλθετε σε άλλους διακομιστές Matrix επιλέγοντας ένα διαφορετικό URL για το διακομιστή.
    Αυτό σας επιτρέπει να χρησιμοποιήσετε την εφαρμογή Riot με έναν υπάρχοντα λογαριασμό σε διαφορετικό διακομιστή.

    Επίσης μπορείτε να επιλέξετε ένα διαφορετικό διακομιστή ταυτότητας αλλά δεν θα έχετε τη δυνατότητα να προσκαλέσετε άλλους χρήστες ή να σας προσκαλέσουν, μέσω email.", "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s μέσω %(browserName)s σε %(osName)s", - "All messages (loud)": "Όλα τα μηνύματα (δυνατά)", - "delete the alias.": "διέγραψε το ψευδώνυμο.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Διαγραφή του ψευδώνυμου %(alias)s και αφαίρεση του %(name)s από το ευρετήριο;", - "Dismiss": "Αγνόησε", - "Failed to add tag %(tagName)s to room": "Δεν ήταν δυνατή η εισαγωγή του tag %(tagName)s στο δωμάτιο", - "Failed to change settings": "Δεν ήταν δυνατή η αλλαγή των ρυθμίσεων", - "Failed to join the room": "Δεν ήταν δυνατή η σύνδεση στο δωμάτιο", - "Favourite": "Αγαπημένο", - "Files": "Αρχεία", - "Filter room names": "Φίλτραρε τα δωμάτια", - "Forward Message": "Προώθηση", - " from room": " από το δωμάτιο", - "Guests can join": "Επισκέπτες μπορούν να συνδεθούν", - "Guest users can't invite users. Please register to invite.": "Οι επισκέπτες δεν έχουν τη δυνατότητα να προσκαλέσουν άλλους χρήστες. Παρακαλώ εγγραφείτε πρώτα.", - "Hide panel": "Κρύψε τη καρτέλα", - "I understand the risks and wish to continue": "Κατανοώ του κινδύνους και επιθυμώ να συνεχίσω", - "Invite to this room": "Προσκάλεσε", - "Keywords": "Λέξεις κλειδιά", - "Leave": "Αποχώρησε", - "Low Priority": "Χαμηλής Προτεραιότητας", - "Members": "Μέλη", - "Messages containing keywords": "Μηνύματα που περιέχουν λέξεις κλειδιά", - "Messages containing my user name": "Μηνύματα που περιέχουν το ψευδώνυμο μου", - "Messages in group chats": "Μηνύματα σε ομαδικές συνομιλίες", - "Messages in one-to-one chats": "Μηνύματα σε 1-προς-1 συνομιλίες", - "Messages sent by bot": "Μηνύματα από bots", - "more": "περισσότερα", - "Mute": "Σίγαση", - "No rooms to show": "Δεν υπάρχουν δωμάτια για εμφάνιση", - "Noisy": "Δυνατά", - "Notifications": "Ειδοποιήσεις", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Οι ειδοποιήσεις για τις επόμενες λέξεις κλειδία ακολουθούν κανόνες που δεν είναι δυνατόν να εμφανιστούν εδώ:", - "Notify for all other messages/rooms": "Στείλε ειδοποιήσεις για όλα τα υπόλοιπα μηνύματα/δωμάτια", - "Notify me for anything else": "Ειδοποίησέ με για οτιδήποτε άλλο", - "Operation failed": "Η λειτουργία απέτυχε", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Παρακαλώ περιγράψτε το σφάλμα. Τι κάνατε; Τι περιμένατε να συμβεί; Τι έγινε τελικά;", - "Please Register": "Παρακαλώ εγγραφείτε", - "Redact": "Ανακάλεσε", - "Reject": "Απέρριψε", - "Remove": "Αφαίρεσε", - "Remove from Directory": "Αφαίρεση από το Ευρετήριο", - "Resend": "Ξαναστείλε", + "Dismiss": "Απόρριψη", "Riot Desktop on %(platformName)s": "Riot Desktop σε %(platformName)s", - "Room directory": "Ευρετήριο", - "Room not found": "Το δωμάτιο δεν βρέθηκε", - "Search": "Αναζήτηση", - "Search…": "Αναζήτηση…", - "Send": "Στείλε", - "Settings": "Ρυθμίσεις", - "Start chat": "Άρχισε μια συνομιλία", - "This Room": "Στο δωμάτιο", - "Unavailable": "Μη διαθέσιμο", "Unknown device": "Άγνωστη συσκευή", - "Update": "Ενημέρωση", - "Enable desktop notifications": "Ενεργοποίηση ειδοποιήσεων στην επιφάνεια εργασίας", - "Error saving email notification preferences": "Σφάλμα κατά την αποθήκευση των προτιμήσεων", - "Failed to send report: ": "Η αποστολή της αναφοράς απέτυχε: ", - "Loading bug report module": "Φόρτωση μονάδας αναφοράς σφαλμάτων", - "Mentions only": "Αναφορές μόνο", - "Messages containing my display name": "Μηνύματα που περιέχουν το όνομα μου", - "Off": "Ανενεργό", - "On": "Ενεργό", - "Permalink": "Μόνιμος σύνδεσμος", - "Please install Chrome or Firefox for the best experience.": "Παρακαλώ εγκαταστήστε έναν από τους φυλλομετρητές Chrome ή Firefox για την καλύτερη δυνατή εμπειρία.", - "Report a bug": "Ανεφέρε κάποιο πρόβλημα", - "Riot does not know how to join a room on this network": "To Riot δεν γνωρίζει πως να συνδεθεί σε δωμάτια που ανήκουν σ' αυτό το δίκτυο", - "Search for a room": "Αναζήτησε κάποιο δωμάτιο", - "Sorry, your browser is not able to run Riot.": "Λυπούμαστε, αλλά ο φυλλομετρητής σας δεν υποστηρίζεται από το Riot.", - "There are advanced notifications which are not shown here": "Υπάρχουν προχωρημένες ειδοποιήσεις οι οποίες δεν εμφανίζονται εδώ", - "This room is inaccessible to guests. You may be able to join if you register.": "Το δωμάτιο δεν είναι προσβάσιμο σε επισκέπτες. Πιθανόν να μπορέσετε να συνδεθείτε εάν εγγραφείτε.", - "Unable to join network": "Δεν είναι δυνατή η σύνδεση στο δίκτυο", - "unknown error code": "άγνωστος κωδικός σφάλματος", - "Unnamed room": "Δωμάτιο χωρίς όνομα", - "Uploaded on %(date)s by %(user)s": "Ανέβηκε την %(date)s από %(user)s", - "Uploading report": "Ανέβασμα αναφοράς", - "What's New": "Τι νέο υπάρχει", - "What's new?": "Τι νέο υπάρχει;", - "When I'm invited to a room": "Όταν με προσκαλούν σ' ένα δωμάτιο", - "World readable": "Εμφανές σε όλους", - "You cannot delete this image. (%(code)s)": "Δεν μπορείτε να διαγράψετε αυτή την εικόνα. (%(code)s)", - "You cannot delete this message. (%(code)s)": "Δεν μπορείτε να διαγράψετε αυτό το μήνυμα. (%(code)s)", - "You are not receiving desktop notifications": "Δεν λαμβάνετε ειδοποιήσεις στην επιφάνεια εργασίας", - "Sunday": "Κυριακή", - "Monday": "Δευτέρα", - "Tuesday": "Τρίτη", - "Wednesday": "Τετάρτη", - "Thursday": "Πέμπτη", - "Friday": "Παρασκευή", - "Saturday": "Σάββατο", - "Today": "Σήμερα", - "Yesterday": "Χθές", - "OK": "ΟΚ", "You need to be using HTTPS to place a screen-sharing call.": "Απαιτείται η χρήση HTTPS για το διαμοιρασμό της επιφάνειας εργασίας μέσω κλήσης.", - "Welcome page": "Αρχική σελίδα", - "Forget": "Διαγραφή", - "Riot is not supported on mobile web. Install the app?": "Το Riot δεν υποστηρίζεται από φυλλομετρητές κινητών. Θέλετε να εγκαταστήσετε την εφαρμογή;", - "Unhide Preview": "Προεπισκόπηση", - "Waiting for response from server": "Αναμονή απάντησης από τον διακομιστή", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "Χρησιμοποιείς το Riot ως επισκέπτης. Κάνε εγγραφή ή συνδέσου για να αποκτήσεις πρόσβαση σε περισσότερα δωμάτια και επιλογές!", - "Collecting logs": "Συγκέντρωση πληροφοριών", - "Enable them now": "Ενεργοποίηση", - "Failed to forget room %(errCode)s": "Δεν ήταν δυνατή η διαγραφή του δωματίου", - "Failed to update keywords": "Οι λέξεις κλειδιά δεν ενημερώθηκαν", - "Failed to get protocol list from Home Server": "Δεν ήταν δυνατή η εύρεση των διαθέσιμων πρωτοκόλλων από το διακομιστή", - "Failed to remove tag %(tagName)s from room": "Δεν ήταν δυνατή η διαγραφή του tag %(tagName)s από το δωμάτιο", - "Notification targets": "Στόχοι ειδοποιήσεων", - "Please describe the bug and/or send logs.": "Παρακαλώ περιγράψτε το πρόβλημα και/ή στείλτε πληροφορίες σχετικά με την εφαρμογή.", - "Remove %(name)s from the directory?": "Αφαίρεση του %(name)s από το ευρετήριο;", - "remove %(name)s from the directory.": "αφαίρεση του %(name)s από το ευρετήριο.", - "Send logs": "Στείλε πληροφορίες", - "Source URL": "Πηγαίο URL", - "The server may be unavailable or overloaded": "Ο διακομιστής είναι μη διαθέσιμος ή υπερφορτωμένος", - " to room": " στο δωμάτιο", - "Unable to fetch notification target list": "Δεν ήταν δυνατή η εύρεση στόχων για τις ειδοποιήσεις", - "Unable to look up room ID from server": "Δεν είναι δυνατή η εύρεση του ID για το δωμάτιο", - "View Decrypted Source": "Δες τον αποκρυπτογραφημένο κώδικα", - "View Source": "Δες τον κώδικα", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Ισως έχεις κάνει τις ρυθμίσεις σε άλλη εφαρμογή εκτός του Riot. Δεν μπορείς να τις αλλάξεις μέσω του Riot αλλά ισχύουν κανονικά", - "Couldn't find a matching Matrix room": "Δεν βρέθηκε κάποιο δωμάτιο", - "Drop here %(toAction)s": "Σύρε εδώ %(toAction)s", - "Failed to": "Αποτυχία να", - "Failed to get public room list": "Δεν ήταν δυνατή η λήψη της λίστας με τα δημόσια δωμάτια", - "Failed to set direct chat tag": "Δεν ήταν δυνατός ο χαρακτηρισμός της συνομιλίας ως 1-προς-1", - "powered by Matrix": "βασισμένο στο πρωτόκολλο Matrix", - "Quote": "Αναφορά", - "Fetching third party location failed": "Η λήψη τοποθεσίας απέτυχε" + "Riot is not supported on mobile web. Install the app?": "Το Riot δεν υποστηρίζεται από περιηγητές κινητών. Θέλετε να εγκαταστήσετε την εφαρμογή;", + "powered by Matrix": "βασισμένο στο Matrix", + "Welcome to Riot.im": "Καλώς ήλθατε στο Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Αποκεντρωμένη, κρυπτογραφημένη συνομιλία & συνεργασία με τη βοήθεια του [matrix]", + "Search the room directory": "Αναζήτηση του ευρετηρίου δωματίων", + "Chat with Riot Bot": "Συνομιλία με το Riot Bot", + "Get started with some tips from Riot Bot!": "Ξεκινήστε με μερικές συμβουλές από το Riot Bot!", + "General discussion about Matrix and Riot": "Γενική συζήτηση σχετικά με Matrix και Riot", + "Discussion of all things Matrix!": "Συζήτηση για όλα τα πράγματα του Matrix!", + "Riot/Web & Desktop chat": "Συζήτηση για το Riot/Web & Desktop", + "Riot/iOS & matrix-ios-sdk chat": "Συζήτηση για το Riot/iOS & matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Συζήτηση για το Riot/Android & matrix-android-sdk", + "Matrix technical discussions": "Τεχνικές συζητήσεις σχετικά με το Matrix", + "Running Matrix services": "Χρησιμοποιώντας τις υπηρεσίες του Matrix", + "Community-run support for Synapse": "Κοινοτική υποστήριξη για το Synapse", + "Admin support for Dendrite": "Υποστήριξη διαχειριστή για το Dendrite", + "Announcements about Synapse releases": "Ανακοινώσεις σχετικά με τις εκδόσεις του Synapse", + "Support for those using and running matrix-appservice-irc": "Υποστήριξη για τους χρήστες του matrix-appservice-irc", + "Building services on Matrix": "Ανάπτυξη υπηρεσιών στο Matrix", + "Support for those using the Matrix spec": "Υποστήριξη για τους χρήστες που χρησιμοποιούν το Matrix spec", + "Design and implementation of E2E in Matrix": "Σχεδιασμός και υλοποίηση του E2E στο Matrix", + "Implementing VR services with Matrix": "Υλοποίηση υπηρεσίων VR με το Matrix", + "Implementing VoIP services with Matrix": "Υλοποίηση υπηρεσίων VoIP με το Matrix", + "Discussion of the Identity Service API": "Συζήτηση σχετικά με το Identity Service API", + "Contributing code to Matrix and Riot": "Συνεισφορά κώδικα στο Matrix και στο Riot", + "Dev chat for the Riot/Web dev team": "Συζήτηση με την ομάδα ανάπτυξης του Riot/Web", + "Dev chat for the Dendrite dev team": "Συζήτηση με την ομάδα ανάπτυξης του Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Αρκετά δωμάτια υπάρχουν ήδη στο Matrix, συνδεδεμένα σε υπάρχοντα δίκτυα (Slack, IRC, Gitter κ.λπ) ή αυτόνομα. Ρίξτε μια ματιά στο ευρετήριο!", + "Support for those using, running and writing other bridges": "Υποστήριξη για τους χρήστες που χρησιμοποιούν ή αναπτύσσουν εφαρμογές ενσωμάτωσης για το Matrix", + "Co-ordination for Riot translators": "Συντονισμός για μεταφραστές του Riot", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Μπορείτε να χρησιμοποιήσετε τις προσαρμοσμένες ρυθμίσεις διακομιστή για να συνδεθείτε σε άλλους διακομιστές Matrix δίνοντας ένα διαφορετικό URL διακομιστή.
    Αυτό σας επιτρέπει να χρησιμοποιήσετε το Riot με έναν υπάρχοντα λογαριασμό Matrix σε έναν διαφορετικό διακομιστή.

    Μπορείτε επίσης να ορίσετε έναν προσαρμοσμένο διακομιστή ταυτοποίησης αλλά δεν θα μπορείτε να προσκαλέσετε χρήστες ή να προσκληθείτε εσείς μέσω διεύθυνσης ηλεκτρονικού ταχυδρομίου." } diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index b57dbb65be..9641f0dd71 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -1,199 +1,39 @@ { - "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s on %(osName)s", - "Safari and Opera work too.": "Safari and Opera work too.", - "A new version of Riot is available.": "A new version of Riot is available.", - "Add an email address above to configure email notifications": "Add an email address above to configure email notifications", - "Advanced notification settings": "Advanced notification settings", - "All messages": "All messages", - "All messages (loud)": "All messages (loud)", - "All Rooms": "All Rooms", - "All notifications are currently disabled for all targets.": "All notifications are currently disabled for all targets.", - "An error occurred whilst saving your email notification preferences.": "An error occurred whilst saving your email notification preferences.", - "Call invitation": "Call invitation", - "Cancel": "Cancel", - "Cancel Sending": "Cancel Sending", - "Can't update user notification settings": "Can't update user notification settings", - "Changelog": "Changelog", - "Close": "Close", - "Collapse panel": "Collapse panel", - "Collecting app version information": "Collecting app version information", - "Collecting logs": "Collecting logs", - "Create new room": "Create new room", - "Couldn't find a matching Matrix room": "Couldn't find a matching Matrix room", - "Custom Server Options": "Custom Server Options", - "customServer_text": "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.", - "delete the alias.": "delete the alias.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Delete the room alias %(alias)s and remove %(name)s from the directory?", - "Describe your problem here.": "Describe your problem here.", - "Direct Chat": "Direct Chat", - "Directory": "Directory", - "Dismiss": "Dismiss", - "Download this file": "Download this file", - "Drop here %(toAction)s": "Drop here %(toAction)s", - "Enable audible notifications in web client": "Enable audible notifications in web client", - "Enable desktop notifications": "Enable desktop notifications", - "Enable email notifications": "Enable email notifications", - "Enable notifications for this account": "Enable notifications for this account", - "Enable them now": "Enable them now", - "Enter keywords separated by a comma:": "Enter keywords separated by a comma:", - "Error": "Error", - "Error saving email notification preferences": "Error saving email notification preferences", - "#example": "#example", - "Expand panel": "Expand panel", - "Failed to": "Failed to", - "Failed to add tag %(tagName)s to room": "Failed to add tag %(tagName)s to room", - "Failed to change settings": "Failed to change settings", - "Failed to forget room %(errCode)s": "Failed to forget room %(errCode)s", - "Failed to update keywords": "Failed to update keywords", - "Failed to get protocol list from Home Server": "Failed to get protocol list from Home Server", - "Failed to get public room list": "Failed to get public room list", - "Failed to join the room": "Failed to join the room", - "Failed to remove tag %(tagName)s from room": "Failed to remove tag %(tagName)s from room", - "Failed to send report: ": "Failed to send report: ", - "Failed to set direct chat tag": "Failed to set direct chat tag", - "Failed to set Direct Message status of room": "Failed to set Direct Message status of room", - "Favourite": "Favourite", - "Fetching third party location failed": "Fetching third party location failed", - "Files": "Files", - "Filter room names": "Filter room names", - "Forget": "Forget", - "Forward Message": "Forward Message", - " from room": " from room", - "Guests can join": "Guests can join", - "Guest users can't invite users. Please register to invite.": "Guest users can't invite users. Please register to invite.", - "Hide panel": "Hide panel", - "I understand the risks and wish to continue": "I understand the risks and wish to continue", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:", - "Invite to this room": "Invite to this room", - "Keywords": "Keywords", - "Leave": "Leave", - "Login": "Login", - "Loading bug report module": "Loading bug report module", - "Low Priority": "Low Priority", - "Members": "Members", - "Mentions only": "Mentions only", - "Messages containing my display name": "Messages containing my display name", - "Messages containing keywords": "Messages containing keywords", - "Messages containing my user name": "Messages containing my user name", - "Messages in group chats": "Messages in group chats", - "Messages in one-to-one chats": "Messages in one-to-one chats", - "Messages sent by bot": "Messages sent by bot", - "more": "more", - "Mute": "Mute", - "No rooms to show": "No rooms to show", - "Noisy": "Noisy", - "Notification targets": "Notification targets", - "Notifications": "Notifications", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Notifications on the following keywords follow rules which can’t be displayed here:", - "Notify for all other messages/rooms": "Notify for all other messages/rooms", - "Notify me for anything else": "Notify me for anything else", - "Off": "Off", - "On": "On", - "Operation failed": "Operation failed", - "Permalink": "Permalink", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Please describe the bug. What did you do? What did you expect to happen? What actually happened?", - "Please describe the bug and/or send logs.": "Please describe the bug and/or send logs.", - "Please install Chrome or Firefox for the best experience.": "Please install Chrome or Firefox for the best experience.", - "Please Register": "Please Register", - "powered by Matrix": "powered by Matrix", - "Quote": "Quote", - "Redact": "Redact", - "Reject": "Reject", - "Remove %(name)s from the directory?": "Remove %(name)s from the directory?", - "Remove": "Remove", - "remove %(name)s from the directory.": "remove %(name)s from the directory.", - "Remove from Directory": "Remove from Directory", - "Report a bug": "Report a bug", - "Resend": "Resend", - "Riot Desktop on %(platformName)s": "Riot Desktop on %(platformName)s", - "Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network", - "Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.", - "Room directory": "Room directory", - "Room not found": "Room not found", - "Search": "Search", - "Search…": "Search…", - "Search for a room": "Search for a room", - "Send": "Send", - "Send logs": "Send logs", - "Settings": "Settings", - "Source URL": "Source URL", - "Sorry, your browser is not able to run Riot.": "Sorry, your browser is not able to run Riot.", - "Start chat": "Start chat", - "The Home Server may be too old to support third party networks": "The Home Server may be too old to support third party networks", - "There are advanced notifications which are not shown here": "There are advanced notifications which are not shown here", - "The server may be unavailable or overloaded": "The server may be unavailable or overloaded", - "This Room": "This Room", - "This room is inaccessible to guests. You may be able to join if you register.": "This room is inaccessible to guests. You may be able to join if you register.", - " to room": " to room", - "Unable to fetch notification target list": "Unable to fetch notification target list", - "Unable to join network": "Unable to join network", - "Unable to look up room ID from server": "Unable to look up room ID from server", - "Unavailable": "Unavailable", - "Unhide Preview": "Unhide Preview", - "Unknown device": "Unknown device", - "unknown error code": "unknown error code", - "Unnamed room": "Unnamed room", - "Update": "Update", - "Uploaded on %(date)s by %(user)s": "Uploaded on %(date)s by %(user)s", - "Uploading report": "Uploading report", - "View Decrypted Source": "View Decrypted Source", - "View Source": "View Source", - "What's New": "What's New", - "What's new?": "What's new?", - "Waiting for response from server": "Waiting for response from server", - "When I'm invited to a room": "When I'm invited to a room", - "World readable": "World readable", - "You cannot delete this image. (%(code)s)": "You cannot delete this image. (%(code)s)", - "You cannot delete this message. (%(code)s)": "You cannot delete this message. (%(code)s)", - "You are not receiving desktop notifications": "You are not receiving desktop notifications", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "You are Rioting as a guest. Register or sign in to access more rooms and features!", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply", - "Sunday": "Sunday", - "Monday": "Monday", - "Tuesday": "Tuesday", - "Wednesday": "Wednesday", - "Thursday": "Thursday", - "Friday": "Friday", - "Saturday": "Saturday", - "Today": "Today", - "Yesterday": "Yesterday", - "OK": "OK", - "You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.", - "Welcome page": "Welcome page", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!", - "Welcome to Riot.im": "Welcome to Riot.im", - "Decentralised, encrypted chat & collaboration powered by": "Decentralised, encrypted chat & collaboration powered by", - "Search the room directory": "Search the room directory", - "Chat with Riot Bot": "Chat with Riot Bot", - "Get started with some tips from Riot Bot!": "Get started with some tips from Riot Bot!", - "General discussion about Matrix": "General discussion about Matrix", - "Discussion of all things Matrix!": "Discussion of all things Matrix!", - "Riot/Web & Desktop chat": "Riot/Web & Desktop chat", - "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk chat", - "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk chat", - "Matrix technical discussions": "Matrix technical discussions", - "Running Matrix services": "Running Matrix services", - "Community-run support for Synapse": "Community-run support for Synapse", - "Admin support for Dendrite": "Admin support for Dendrite", - "Announcements about Synapse releases": "Announcements about Synapse releases", - "Support for those using and running matrix-appservice-irc": "Support for those using and running matrix-appservice-irc", - "Building services on Matrix": "Building services on Matrix", - "Support for those using the Matrix spec": "Support for those using the Matrix spec", - "Design and implementation of E2E in Matrix": "Design and implementation of E2E in Matrix", - "Implementing VR services with Matrix": "Implementing VR services with Matrix", - "Implementing VoIP services with Matrix": "Implementing VoIP services with Matrix", - "Discussion of the Identity Service API": "Discussion of the Identity Service API", - "Support for those using, running and writing other bridges": "Support for those using, running and writing other bridges", - "Contributing code to Matrix and Riot": "Contributing code to Matrix and Riot", - "Dev chat for the Riot/Web dev team": "Dev chat for the Riot/Web dev team", - "Dev chat for the Dendrite dev team": "Dev chat for the Dendrite dev team", - "Co-ordination for Riot/Web translators": "Co-ordination for Riot/Web translators", - "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!", - "Failed to change password. Is your password correct?": "Failed to change password. Is your password correct?", - "You have successfully set a password!": "You have successfully set a password!", - "You can now return to your account after signing out, and sign in on other devices.": "You can now return to your account after signing out, and sign in on other devices.", - "Continue": "Continue", - "Please set a password!": "Please set a password!", - "This will allow you to return to your account after signing out, and sign in on other devices.": "This will allow you to return to your account after signing out, and sign in on other devices." + "Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?", + "Riot Desktop on %(platformName)s": "Riot Desktop on %(platformName)s", + "Unknown device": "Unknown device", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s on %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.", + "Custom Server Options": "Custom Server Options", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.", + "Dismiss": "Dismiss", + "powered by Matrix": "powered by Matrix", + "Welcome to Riot.im": "Welcome to Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentralised, encrypted chat & collaboration powered by [matrix]", + "Search the room directory": "Search the room directory", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!", + "Chat with Riot Bot": "Chat with Riot Bot", + "Get started with some tips from Riot Bot!": "Get started with some tips from Riot Bot!", + "General discussion about Matrix and Riot": "General discussion about Matrix and Riot", + "Discussion of all things Matrix!": "Discussion of all things Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & Desktop chat", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk chat", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk chat", + "Matrix technical discussions": "Matrix technical discussions", + "Running Matrix services": "Running Matrix services", + "Community-run support for Synapse": "Community-run support for Synapse", + "Admin support for Dendrite": "Admin support for Dendrite", + "Announcements about Synapse releases": "Announcements about Synapse releases", + "Support for those using and running matrix-appservice-irc": "Support for those using and running matrix-appservice-irc", + "Building services on Matrix": "Building services on Matrix", + "Support for those using the Matrix spec": "Support for those using the Matrix spec", + "Design and implementation of E2E in Matrix": "Design and implementation of E2E in Matrix", + "Implementing VR services with Matrix": "Implementing VR services with Matrix", + "Implementing VoIP services with Matrix": "Implementing VoIP services with Matrix", + "Discussion of the Identity Service API": "Discussion of the Identity Service API", + "Support for those using, running and writing other bridges": "Support for those using, running and writing other bridges", + "Contributing code to Matrix and Riot": "Contributing code to Matrix and Riot", + "Dev chat for the Riot/Web dev team": "Dev chat for the Riot/Web dev team", + "Dev chat for the Dendrite dev team": "Dev chat for the Dendrite dev team", + "Co-ordination for Riot translators": "Co-ordination for Riot translators" } diff --git a/src/i18n/strings/en_US.json b/src/i18n/strings/en_US.json index a75bc7f5f6..e5b060cf70 100644 --- a/src/i18n/strings/en_US.json +++ b/src/i18n/strings/en_US.json @@ -1,164 +1,39 @@ { "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s on %(osName)s", - "Safari and Opera work too.": "Safari and Opera work too.", - "A new version of Riot is available.": "A new version of Riot is available.", - "Add an email address above to configure email notifications": "Add an email address above to configure email notifications", - "Advanced notification settings": "Advanced notification settings", - "All messages": "All messages", - "All messages (loud)": "All messages (loud)", - "All Rooms": "All Rooms", - "All notifications are currently disabled for all targets.": "All notifications are currently disabled for all targets.", - "An error occurred whilst saving your email notification preferences.": "An error occurred while saving your email notification preferences.", - "Call invitation": "Call invitation", - "Cancel": "Cancel", - "Cancel Sending": "Cancel Sending", - "Can't update user notification settings": "Can't update user notification settings", - "Changelog": "Changelog", - "Close": "Close", - "Collapse panel": "Collapse panel", - "Collecting app version information": "Collecting app version information", - "Collecting logs": "Collecting logs", - "Create new room": "Create new room", - "Couldn't find a matching Matrix room": "Couldn't find a matching Matrix room", "Custom Server Options": "Custom Server Options", - "customServer_text": "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.", - "delete the alias.": "delete the alias.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Delete the room alias %(alias)s and remove %(name)s from the directory?", - "Describe your problem here.": "Describe your problem here.", - "Direct Chat": "Direct Chat", - "Directory": "Directory", "Dismiss": "Dismiss", - "Download this file": "Download this file", - "Drop here %(toAction)s": "Drop here %(toAction)s", - "Enable audible notifications in web client": "Enable audible notifications in web client", - "Enable desktop notifications": "Enable desktop notifications", - "Enable email notifications": "Enable email notifications", - "Enable notifications for this account": "Enable notifications for this account", - "Enable them now": "Enable them now", - "Enter keywords separated by a comma:": "Enter keywords separated by a comma:", - "Error": "Error", - "Error saving email notification preferences": "Error saving email notification preferences", - "#example": "#example", - "Expand panel": "Expand panel", - "Failed to": "Failed to", - "Failed to add tag %(tagName)s to room": "Failed to add tag %(tagName)s to room", - "Failed to change settings": "Failed to change settings", - "Failed to forget room %(errCode)s": "Failed to forget room %(errCode)s", - "Failed to update keywords": "Failed to update keywords", - "Failed to get protocol list from Home Server": "Failed to get protocol list from Home Server", - "Failed to get public room list": "Failed to get public room list", - "Failed to join the room": "Failed to join the room", - "Failed to remove tag %(tagName)s from room": "Failed to remove tag %(tagName)s from room", - "Failed to send report: ": "Failed to send report: ", - "Failed to set direct chat tag": "Failed to set direct chat tag", - "Failed to set Direct Message status of room": "Failed to set Direct Message status of room", - "Favourite": "Favorite", - "Fetching third party location failed": "Fetching third party location failed", - "Files": "Files", - "Filter room names": "Filter room names", - "Forget": "Forget", - "Forward Message": "Forward Message", - " from room": " from room", - "Guests can join": "Guests can join", - "Guest users can't invite users. Please register to invite.": "Guest users can't invite users. Please register to invite.", - "Hide panel": "Hide panel", - "I understand the risks and wish to continue": "I understand the risks and wish to continue", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please uncheck:", - "Invite to this room": "Invite to this room", - "Keywords": "Keywords", - "Leave": "Leave", - "Loading bug report module": "Loading bug report module", - "Low Priority": "Low Priority", - "Members": "Members", - "Mentions only": "Mentions only", - "Messages containing my display name": "Messages containing my display name", - "Messages containing keywords": "Messages containing keywords", - "Messages containing my user name": "Messages containing my user name", - "Messages in group chats": "Messages in group chats", - "Messages in one-to-one chats": "Messages in one-to-one chats", - "Messages sent by bot": "Messages sent by bot", - "more": "more", - "Mute": "Mute", - "No rooms to show": "No rooms to show", - "Noisy": "Noisy", - "Notification targets": "Notification targets", - "Notifications": "Notifications", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Notifications on the following keywords follow rules which can’t be displayed here:", - "Notify for all other messages/rooms": "Notify for all other messages/rooms", - "Notify me for anything else": "Notify me for anything else", - "Off": "Off", - "On": "On", - "Operation failed": "Operation failed", - "Permalink": "Permalink", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Please describe the bug. What did you do? What did you expect to happen? What actually happened?", - "Please describe the bug and/or send logs.": "Please describe the bug and/or send logs.", - "Please install Chrome or Firefox for the best experience.": "Please install Chrome or Firefox for the best experience.", - "Please Register": "Please Register", "powered by Matrix": "powered by Matrix", - "Quote": "Quote", - "Redact": "Redact", - "Reject": "Reject", - "Remove %(name)s from the directory?": "Remove %(name)s from the directory?", - "Remove": "Remove", - "remove %(name)s from the directory.": "remove %(name)s from the directory.", - "Remove from Directory": "Remove from Directory", - "Report a bug": "Report a bug", - "Resend": "Resend", "Riot Desktop on %(platformName)s": "Riot Desktop on %(platformName)s", - "Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network", "Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.", - "Room directory": "Room directory", - "Room not found": "Room not found", - "Search": "Search", - "Search…": "Search…", - "Search for a room": "Search for a room", - "Send": "Send", - "Send logs": "Send logs", - "Settings": "Settings", - "Source URL": "Source URL", - "Sorry, your browser is not able to run Riot.": "Sorry, your browser is not able to run Riot.", - "Start chat": "Start chat", - "The Home Server may be too old to support third party networks": "The Home Server may be too old to support third party networks", - "There are advanced notifications which are not shown here": "There are advanced notifications which are not shown here", - "The server may be unavailable or overloaded": "The server may be unavailable or overloaded", - "This Room": "This Room", - "This room is inaccessible to guests. You may be able to join if you register.": "This room is inaccessible to guests. You may be able to join if you register.", - " to room": " to room", - "Unable to fetch notification target list": "Unable to fetch notification target list", - "Unable to join network": "Unable to join network", - "Unable to look up room ID from server": "Unable to look up room ID from server", - "Unavailable": "Unavailable", - "Unhide Preview": "Unhide Preview", "Unknown device": "Unknown device", - "unknown error code": "unknown error code", - "Unnamed room": "Unnamed room", - "Update": "Update", - "Uploaded on %(date)s by %(user)s": "Uploaded on %(date)s by %(user)s", - "Uploading report": "Uploading report", - "View Decrypted Source": "View Decrypted Source", - "View Source": "View Source", - "What's New": "What's New", - "What's new?": "What's new?", - "Waiting for response from server": "Waiting for response from server", - "When I'm invited to a room": "When I'm invited to a room", - "World readable": "World readable", - "You cannot delete this image. (%(code)s)": "You cannot delete this image. (%(code)s)", - "You cannot delete this message. (%(code)s)": "You cannot delete this message. (%(code)s)", - "You are not receiving desktop notifications": "You are not receiving desktop notifications", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "You are Rioting as a guest. Register or sign in to access more rooms and features!", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply", - "Sunday": "Sunday", - "Monday": "Monday", - "Tuesday": "Tuesday", - "Wednesday": "Wednesday", - "Thursday": "Thursday", - "Friday": "Friday", - "Saturday": "Saturday", - "Today": "Today", - "Yesterday": "Yesterday", - "OK": "OK", "You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.", - "Welcome page": "Welcome page", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!" + "Welcome to Riot.im": "Welcome to Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentralised, encrypted chat & collaboration powered by [matrix]", + "Chat with Riot Bot": "Chat with Riot Bot", + "Search the room directory": "Search the room directory", + "Get started with some tips from Riot Bot!": "Get started with some tips from Riot Bot!", + "General discussion about Matrix and Riot": "General discussion about Matrix and Riot", + "Discussion of all things Matrix!": "Discussion of all things Matrix!", + "Matrix technical discussions": "Matrix technical discussions", + "Running Matrix services": "Running Matrix services", + "Community-run support for Synapse": "Community-run support for Synapse", + "Admin support for Dendrite": "Admin support for Dendrite", + "Announcements about Synapse releases": "Announcements about Synapse releases", + "Support for those using and running matrix-appservice-irc": "Support for those using and running matrix-appservice-irc", + "Building services on Matrix": "Building services on Matrix", + "Support for those using the Matrix spec": "Support for those using the Matrix spec", + "Design and implementation of E2E in Matrix": "Design and implementation of E2E in Matrix", + "Implementing VR services with Matrix": "Implementing VR services with Matrix", + "Implementing VoIP services with Matrix": "Implementing VoIP services with Matrix", + "Discussion of the Identity Service API": "Discussion of the Identity Service API", + "Support for those using, running and writing other bridges": "Support for those using, running and writing other bridges", + "Contributing code to Matrix and Riot": "Contributing code to Matrix and Riot", + "Dev chat for the Riot/Web dev team": "Dev chat for the Riot/Web dev team", + "Dev chat for the Dendrite dev team": "Dev chat for the Dendrite dev team", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk chat", + "Riot/Web & Desktop chat": "Riot/Web & Desktop chat", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk chat", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.", + "Co-ordination for Riot translators": "Co-ordination for Riot translators" } diff --git a/src/i18n/strings/eo.json b/src/i18n/strings/eo.json new file mode 100644 index 0000000000..724ad2e771 --- /dev/null +++ b/src/i18n/strings/eo.json @@ -0,0 +1,38 @@ +{ + "Dismiss": "Rezigni", + "powered by Matrix": "funkciigata de Matrix", + "Custom Server Options": "Propraj servilaj elektoj", + "Riot Desktop on %(platformName)s": "Riot Labortablo sur %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "Riot ne estas subtenata sur poŝkomputila reto. Ĉu instali la aplikaĵon?", + "Unknown device": "Nekonata aparato", + "You need to be using HTTPS to place a screen-sharing call.": "Vi devas uzi HTTPS por ekranvidadi.", + "Welcome to Riot.im": "Bonvenu al Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Malcentra, ĉifrita babilado & kunlaboro povigita de [matrix]", + "Search the room directory": "Serĉi en la babilejo-listo", + "Chat with Riot Bot": "Babilu kun la roboto Riot Bot", + "Get started with some tips from Riot Bot!": "Komencu kun kelkaj sugestoj de la roboto Riot Bot!", + "General discussion about Matrix and Riot": "Ĝenerala diskutado pri Matrix kaj Riot", + "Discussion of all things Matrix!": "Diskutado pri ĉio rilata al Matrix!", + "Riot/Web & Desktop chat": "Babilado pri Riot ĉe reto kaj labortablo", + "Riot/iOS & matrix-ios-sdk chat": "Babilado pri Riot ĉe iOS kaj matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Babilado pri Riot ĉe Android kaj matrix-android-sdk", + "Matrix technical discussions": "Teĥnikaj diskutoj pri Matrix", + "Running Matrix services": "Funkciigado de servoj de Matrix", + "Community-run support for Synapse": "Komunuma subtenado de Synapse", + "Admin support for Dendrite": "Administra subtenado por Dendrite", + "Announcements about Synapse releases": "Anoncoj pri eldonoj de Synapse", + "Support for those using and running matrix-appservice-irc": "Subteno por tiuj, kiuj uzas kaj funkciigas matrix-appservice-irc", + "Building services on Matrix": "Konstruado de servoj sur Matrix", + "Support for those using the Matrix spec": "Subteno por tiuj, kiuj uzas la specifaĵon de Matrix", + "Design and implementation of E2E in Matrix": "Fasonado kaj realigado de ĝiscela ĉifrado en Matrix", + "Implementing VR services with Matrix": "Realigado de VR-servoj en Matrix", + "Implementing VoIP services with Matrix": "Realigado de VoIP-servoj en Matrix", + "Discussion of the Identity Service API": "Diskutado pri API de la identiga servo", + "Support for those using, running and writing other bridges": "Subteno por tiuj, kiuj uzas, funkciigas, aŭ evoluigas aliajn pontojn", + "Contributing code to Matrix and Riot": "Kontribuado de kodo al Matrix kaj Riot", + "Dev chat for the Riot/Web dev team": "Babilado por la programista skipo de Riot ĉe reto", + "Dev chat for the Dendrite dev team": "Babilado por la programista skipo de Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Multaj ĉambroj jam ekzistas en Matrix; kaj sendependaj, kaj ligitaj kun jamaj retoj (Slock, IRC, Gitter, ktp.). Rigardu la ĉambrujon!", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s per %(browserName)s je %(osName)s", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Vi povas uzi proprajn servilajn elektojn por saluti aliajn servilojn de Matrix, per specifo de alia hejmservila URL.
    Tio permesas al vi uzi klienton Riot kun jama konto de Matrix en alia hejmservilo.

    Vi ankaŭ povas agordi propran identigan servilon, sed vi ne povos inviti uzantojn per retpoŝtadreso, aŭ esti invitata per retpoŝtadreso mem." +} diff --git a/src/i18n/strings/es.json b/src/i18n/strings/es.json index 9fd5dd5470..921b4566d8 100644 --- a/src/i18n/strings/es.json +++ b/src/i18n/strings/es.json @@ -1,116 +1,39 @@ { - "Add an email address above to configure email notifications": "Añade una dirección de email arriba para configurar las notificaciones por email", - "Advanced notification settings": "Configuración de notificaciones avanzada", - "All messages": "Todos los mensajes", - "An error occurred whilst saving your email notification preferences.": "Se ha producido un error al guardar las preferencias de notificación por email.", - "Call invitation": "Invitación a la llamada", - "Cancel Sending": "Cancelar envío", - "Can't update user notification settings": "No se puede actualizar la configuración de notificación de usuario", - "Close": "Cerrar", - "Create new room": "Crear nueva sala", - "Couldn't find a matching Matrix room": "No se encontró una sala Matrix que coincidiera", "Custom Server Options": "Opciones de Servidor Personalizado", - "customServer_text": "Puedes utilizar las opciones de servidor personalizadas para iniciar sesión en otros servidores Matrix especificando una URL de Home server distinta.
    Esto te permite usar Riot con una cuenta Matrix existente en un Home server distinto.

    También puedes configurar un servidor de identidad personalizado, pero no podrás invitar usuarios por dirección de email, ni ser invitado por email por ti mismo.", - "delete the alias.": "borrar el alias.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "¿Borrar la sala alias %(alias)s y retirar %(name)s del directorio?", - "Direct Chat": "Conversación directa", - "Directory": "Directorio", - "Download this file": "Descargar este archivo", - "Drop here %(toAction)s": "Suelta aquí %(toAction)s", - "Enable audible notifications in web client": "Habilitar notificaciones audibles en el cliente web", - "Enable desktop notifications": "Habilitar notificaciones de escritorio", - "Enable email notifications": "Habilitar notificaciones por email", - "Enable notifications for this account": "Habilitar notificaciones para esta cuenta", - "Enable them now": "Habilitarlos ahora", - "Enter keywords separated by a comma:": "Introduzca palabras clave separadas por una coma:", - "Error": "Error", - "Error saving email notification preferences": "Error al guardar las preferencias de notificación por email", - "#example": "#ejemplo", - "Failed to add tag %(tagName)s to room": "Error al añadir la etiqueta %(tagName)s a la sala", - "Failed to change settings": "Error al cambiar la configuración", - "Failed to forget room %(errCode)s": "Falló al olvidar la sala %(errCode)s", - "Failed to update keywords": "Error al actualizar las palabras clave", - "Failed to get protocol list from Home Server": "Error al obtener la lista de protocolos de Home Server", - "Failed to get public room list": "No se pudo obtener la lista de salas públicas", - "Failed to join the room": "Falló al unirse a la sala", - "Failed to remove tag %(tagName)s from room": "Error al eliminar la etiqueta %(tagName)s de la sala", - "Failed to set direct chat tag": "Error al establecer la etiqueta de chat directo", - "Failed to set Direct Message status of room": "No se pudo establecer el estado de Mensaje Directo de la sala", - "Favourite": "Favorito", - "Fetching third party location failed": "Falló la obtención de la ubicación de un tercero", - "Files": "Archivos", - "Filter room names": "Filtrar los nombres de las salas", - "Forget": "Olvidar", - " from room": " de la sala", - "Guests can join": "Los invitados se pueden unir", - "Guest users can't invite users. Please register to invite.": "Los usuarios invitados no pueden invitar usuarios. Por favor, regístrate para poder invitar.", - "Invite to this room": "Invitar a esta sala", - "Keywords": "Palabras clave", - "Leave": "Salir", - "Low Priority": "Baja Prioridad", - "Members": "Miembros", - "Mentions only": "Sólo menciones", - "Messages containing my display name": "Mensajes que contienen mi nombre para mostrar", - "Messages containing my user name": "Mensajes que contienen mi nombre de usuario", - "Messages in group chats": "Mensajes en chats de grupo", - "Messages in one-to-one chats": "Mensajes en chats uno a uno", - "Messages sent by bot": "Mensajes enviados por bot", - "more": "más", - "Mute": "Mute", - "No rooms to show": "Sin salas para mostrar", - "Noisy": "Ruidoso", - "Notification targets": "Objetivos de notificación", - "Notifications": "Notificaciones", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Las notificaciones de las siguientes palabras clave siguen reglas que no se pueden mostrar aquí:", - "Notify me for anything else": "Notificarme para cualquier otra cosa", - "Off": "Apagado", - "On": "Encendido", - "Operation failed": "Operación fallida", - "Permalink": "Enlace permanente", - "Please Register": "Por favor regístrate", - "Quote": "Citar", - "Redact": "Redactar", - "Reject": "Rechazar", - "Remove %(name)s from the directory?": "¿Retirar %(name)s del directorio?", - "Remove": "Eliminar", - "remove %(name)s from the directory.": "retirar %(name)s del directorio.", - "Remove from Directory": "Retirar del Directorio", - "Resend": "Reenviar", - "Riot does not know how to join a room on this network": "Riot no sabe cómo unirse a una sala en esta red", - "Room directory": "Directorio de salas", - "Room not found": "Sala no encontrada", - "Search for a room": "Buscar sala", - "Settings": "Ajustes", - "Source URL": "URL de origen", - "Start chat": "Comenzar chat", - "The Home Server may be too old to support third party networks": "El Home Server puede ser demasiado antiguo para soportar redes de terceros", - "There are advanced notifications which are not shown here": "Hay notificaciones avanzadas que no se muestran aquí", - "The server may be unavailable or overloaded": "El servidor puede estar no disponible o sobrecargado", - "This room is inaccessible to guests. You may be able to join if you register.": "Esta sala es inaccesible para los invitados. Puedes unirse si te registras.", - " to room": " a la sala", - "Unable to fetch notification target list": "No se puede obtener la lista de objetivos de notificación", - "Unable to join network": "No se puede unir a la red", - "Unable to look up room ID from server": "No se puede buscar el ID de la sala desde el servidor", - "Unhide Preview": "Mostrar Vista Previa", - "unknown error code": "Código de error desconocido", - "Unnamed room": "Sala sin nombre", - "Uploaded on %(date)s by %(user)s": "Subido el %(date)s por %(user)s", - "View Decrypted Source": "Ver Fuente Descifrada", - "View Source": "Ver Fuente", - "When I'm invited to a room": "Cuando estoy invitado a una sala", - "World readable": "Legible por todo el mundo", - "You cannot delete this image. (%(code)s)": "No puedes eliminar esta imagen. (%(code)s)", - "You cannot delete this message. (%(code)s)": "No puedes eliminar este mensaje. (%(code)s)", - "You are not receiving desktop notifications": "No estás recibiendo notificaciones de escritorio", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Es posible que los hayas configurado en un cliente que no sea Riot. No puedes ajustarlos en Riot, pero todavía se aplican", - "Sunday": "Domingo", - "Monday": "Lunes", - "Tuesday": "Martes", - "Wednesday": "Miércoles", - "Thursday": "Jueves", - "Friday": "Viernes", - "Saturday": "Sábado", - "Today": "Hoy", - "Yesterday": "Ayer", - "Welcome page": "Página de bienvenida" + "Unknown device": "Dispositivo desconocido", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s en %(osName)s", + "Dismiss": "Omitir", + "powered by Matrix": "con el poder de Matrix", + "Riot Desktop on %(platformName)s": "Riot Desktop en %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "Riot no está soportado en navegadores Web móviles. ¿Quieres instalar la aplicación?", + "You need to be using HTTPS to place a screen-sharing call.": "Debes usar HTTPS para hacer una llamada con pantalla compartida.", + "Welcome to Riot.im": "Bienvenido a Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Conversaciones cifradas y descentralizadas & colaboración con el poder de [matrix]", + "Search the room directory": "Buscar en el directorio de salas", + "Chat with Riot Bot": "Conversar con el Bot de Riot", + "Get started with some tips from Riot Bot!": "¡Comenzar con algunos consejos de Riot Bot!", + "General discussion about Matrix and Riot": "Discusión general sobre Matrix y Riot", + "Discussion of all things Matrix!": "¡Discusión sobre todas las cosas de Matrix!", + "Riot/Web & Desktop chat": "Conversaciones de Riot/Web & Desktop", + "Riot/iOS & matrix-ios-sdk chat": "Conversaciones sobre Riot/iOS & matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Conversaciones sobre Riot/Android & matrix-android-sdk", + "Matrix technical discussions": "Discusiones técnicas sobre Matrix", + "Running Matrix services": "Ejecutando servicios de Matrix", + "Community-run support for Synapse": "Soporte comunitario de Synapse", + "Admin support for Dendrite": "Soporte administrativo para Dendrite", + "Announcements about Synapse releases": "Anuncios de lanzamientos de Synapse", + "Support for those using and running matrix-appservice-irc": "Soporte para aquellos que usan o administran matrix-appservice-irc", + "Building services on Matrix": "Construyendo servicios con Matrix", + "Support for those using the Matrix spec": "Soporte para usuarios de la especificación de Matrix", + "Design and implementation of E2E in Matrix": "Diseño e implementación de E2E en Matrix", + "Implementing VR services with Matrix": "Implementación de servicios VR con Matrix", + "Implementing VoIP services with Matrix": "Implementación de servicios VoIP con Matrix", + "Discussion of the Identity Service API": "Discusión sobre el API de Identity Service", + "Support for those using, running and writing other bridges": "Soporte para usuarios, administradores y desarrolladores de otros puentes", + "Contributing code to Matrix and Riot": "Contribuciones de código para Matrix y Riot", + "Dev chat for the Riot/Web dev team": "Conversaciones del equipo de desarrollo de Riot/Web", + "Dev chat for the Dendrite dev team": "Conversaciones del equipo de desarrollo de Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Muchas salas ya están disponibles en Matrix, enlazadas a redes existentes (Slack, IRC, Gitter, etc) o independientes. ¡Revisa el directorio!", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Puedes usar las opciones del servidor personalizado para acceder a otros servidores Matrix especificando su URL.
    Esto te permite usar Riot con una cuenta Matrix existente en un servidor doméstico distinto.

    También puedes establecer un servidor de identidad personalizado pero no podrás invitar a otros usuarios usando su dirección de correo electrónico, y tampoco ser invitado por el tuyo.", + "Co-ordination for Riot translators": "Co-odinación de traductores de Riot" } diff --git a/src/i18n/strings/eu.json b/src/i18n/strings/eu.json new file mode 100644 index 0000000000..bd9edc8a95 --- /dev/null +++ b/src/i18n/strings/eu.json @@ -0,0 +1,39 @@ +{ + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s %(browserName)s bidez %(osName)s ostalarian", + "Custom Server Options": "Zerbitzari pertsonalizatuaren aukerak", + "Dismiss": "Baztertu", + "powered by Matrix": "Matrix mamian", + "Riot Desktop on %(platformName)s": "Riot Desktop %(platformName)s plataforman", + "Riot is not supported on mobile web. Install the app?": "Riotek ez du euskarririk mugikorrentzako webean. Instalatu aplikazioa?", + "Unknown device": "Gailu ezezaguna", + "You need to be using HTTPS to place a screen-sharing call.": "HTTPS erabili behar duzu sekretuak partekatzeko dei bat ezartzeko.", + "Welcome to Riot.im": "Ongi etorri Riot.im mezularitzara", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Deszentralizatutako eta zifratutako txat eta elkarlana [matrix] sareari esker", + "Search the room directory": "Bilatu gelen direktorioa", + "Chat with Riot Bot": "Txateatu Riot botarekin", + "Get started with some tips from Riot Bot!": "Hasi Riot botaren aholku batzuekin!", + "General discussion about Matrix and Riot": "Matrix eta Riot-i buruzko eztabaida orokorra", + "Discussion of all things Matrix!": "Matrix-ekin zerikusia duen guztiari buruzko eztabaida!", + "Riot/Web & Desktop chat": "Riot/Web eta mahaigaineko txata", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS eta matrix-ios-sdk txata", + "Riot/Android & matrix-android-sdk chat": "Riot/Android eta matrix-android-sdk txata", + "Matrix technical discussions": "Matrix buruzko eztabaida teknikoak", + "Running Matrix services": "Matrix zerbitzuak exekutatzea", + "Community-run support for Synapse": "Synapse-rako laguntza komunitatea", + "Admin support for Dendrite": "Dendrite kudeatzaileentzako laguntza", + "Announcements about Synapse releases": "Synapse bertsio berrien iragarkiak", + "Support for those using and running matrix-appservice-irc": "matrix-appservice-irc exekutatu edo erabiltzen dutenentzako laguntza", + "Building services on Matrix": "Matrix-en gaineko zerbitzuak eraikitzea", + "Support for those using the Matrix spec": "Matrix espezifikazioa darabilenentzako laguntza", + "Design and implementation of E2E in Matrix": "Matrix-en E2E diseinu eta inplementazioa", + "Implementing VR services with Matrix": "VR zerbitzuak inplementatzea Matrix erabilita", + "Implementing VoIP services with Matrix": "VoIP zerbitzuak inplementatzea Matrix erabilita", + "Discussion of the Identity Service API": "Identitate zerbitzuaren APIari buruzko eztabaida", + "Support for those using, running and writing other bridges": "Bestelako zubiak erabili, exekutatu eta idazten dituztenentzako laguntza", + "Contributing code to Matrix and Riot": "Kodearekin lagundu Matrix eta Riot", + "Dev chat for the Riot/Web dev team": "Riot/web garapen taldearen txata", + "Dev chat for the Dendrite dev team": "Dendrite garapen taldearen txata", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Badauden sareetara lotutako gela ugari daude Matrixen (Slack, IRC, Gitter eta abar), baita independienteak. Begiratu direktorioa!", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Zerbitzari pertsonalizatuaren aukerak erabili ditzakezu beste Matrix zerbitzarietan saioa hasteko, han beste hasiera-zerbitzari baten URLa sartuz.
    Horrela Riot aurretik duzun kontu batekin erabili dezakezu beste hasiera-zerbitzari batean.

    Identitate-zerbitzari pertsonalizatu bat ezarri dezakezu ere, baina orduan ezin izango dituzu erabiltzaileak e-mail helbidea erabiliz gonbidatu, edo ezin izan izango zaituzte zu e-mail helbidea erabiliz gonbidatu.", + "Co-ordination for Riot translators": "Riot itzultzaileen koordinazioa" +} diff --git a/src/i18n/strings/fa.json b/src/i18n/strings/fa.json new file mode 100644 index 0000000000..adcf0f903c --- /dev/null +++ b/src/i18n/strings/fa.json @@ -0,0 +1,38 @@ +{ + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "بسیاری از گپ‌گاه‌های موجود در فهرستِ گپ‌ها به شبکه‌های موجود(اسلک، آی‌آر‌سی، گلیتر و...) متصل و یا مستقل‌اند؛ به آنها نگاهی بیندازید!", + "Contributing code to Matrix and Riot": "کمک به برنامه‌نویسی در ماتریکس و رایوت", + "powered by Matrix": "قدرت‌یافته از ماتریکس", + "Riot Desktop on %(platformName)s": "رایوت دسکتاپ بر %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "رایوت در موبایل‌ها پشتیبانی نمیشود؛ تمایلی دارید که اپ را نصب کنید؟", + "Unknown device": "دستگاه ناشناخته", + "Welcome to Riot.im": "به Riot.im خوش‌آمدید", + "Chat with Riot Bot": "با رایوت‌بات چت کنید", + "Get started with some tips from Riot Bot!": "با کمی راهنمایی از رایوت‌بات شروع کنید!", + "General discussion about Matrix and Riot": "بحث‌های کلی درمورد ماتریکس و رایوت", + "Dev chat for the Dendrite dev team": "چت توسعه‌دهندگان برای تیم Dendrite", + "Dev chat for the Riot/Web dev team": "چت توسعه‌دهندگان برای تیم رایوت/وب", + "Support for those using, running and writing other bridges": "پشتیبانی برای آنان که یک پل را استفاده اجرا کرده و یا می‌نویسند", + "Admin support for Dendrite": "پشتیبانی ادمین برای Dendrite", + "Community-run support for Synapse": "پشتیبانی سیناپس اداره‌شده توسط جامعه‌ی کاربری", + "Matrix technical discussions": "بحث‌های فنی درباره‌ی ماتریکس", + "Search the room directory": "در فهرست گپ‌ها جستجو کنید", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "چت مرکزگریز و رمزنگاری‌شده & ارائه‌ای از ماتریکس", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s از طریق %(browserName)s بر %(osName)s", + "Custom Server Options": "تنظیمات سفارشی برای سرور", + "Dismiss": "نادیده بگیر", + "You need to be using HTTPS to place a screen-sharing call.": "شما باید از ارتباط امن HTTPS برای به‌راه‌اندازی یک چتِ شامل به اشتراک‌گذاری صفحه‌ی کامیپوتر استفاده کنید.", + "Discussion of all things Matrix!": "بحث درمورد تمام چیز‌های مربوط به ماتریکس!", + "Riot/Web & Desktop chat": "رایوت/وب & چت دسکتاپ", + "Riot/iOS & matrix-ios-sdk chat": "رایوت/آی‌او‌اس & چت در مورد matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "رایوت/اندروید & چت در مورد matrix-android-sdk", + "Running Matrix services": "اجرای سرویس‌های ماتریکسی", + "Announcements about Synapse releases": "اطلاعیه‌ها درباره‌ی نسخه‌ها و انتشار سیناپس", + "Support for those using and running matrix-appservice-irc": "پشتیبانی برای کسانی که matrix-appservice-irc را اجرا و استفاده می‌کنند", + "Design and implementation of E2E in Matrix": "طراحی و پیاده‌سازی رمزگذاری E2E در ماتریکس", + "Implementing VR services with Matrix": "پیاده‌سازی سرویس‌های VR با ماتریکس", + "Implementing VoIP services with Matrix": "پیاده‌سازی سرویس‌های VoIP با ماتریکس", + "Discussion of the Identity Service API": "بحث درمورد API سرویس هویت", + "Building services on Matrix": "ساخت سرویس بر روی ماتریکس", + "Support for those using the Matrix spec": "پشتیبانی برای آنان که از مستندات ماتریکس استفاده می‌کنند", + "Co-ordination for Riot translators": "هماهنگی برای مترجمان Riot" +} diff --git a/src/i18n/strings/fi.json b/src/i18n/strings/fi.json index d2e594327d..ad99f01fba 100644 --- a/src/i18n/strings/fi.json +++ b/src/i18n/strings/fi.json @@ -1,3 +1,38 @@ { - "Sunday": "Sunnuntai" + "Dismiss": "Hylkää", + "Unknown device": "Tuntematon laite", + "Welcome to Riot.im": "Tervetuloa Riot.im -palveluun", + "Search the room directory": "Hae hakemistosta", + "Custom Server Options": "Palvelinasetukset", + "Riot Desktop on %(platformName)s": "Riot Desktop %(platformName)s", + "You need to be using HTTPS to place a screen-sharing call.": "Sinun täytyy käyttää HTTPS -yhteyttä, jotta voit jakaa ruudun.", + "Chat with Riot Bot": "Keskustele Riot Botin kanssa", + "Get started with some tips from Riot Bot!": "Aloita Riot Botin vinkkien avulla!", + "General discussion about Matrix and Riot": "Matrix- ja Riot keskustelut", + "Discussion of all things Matrix!": "Keskustelu kaikesta Matrixiin liittyvästä!", + "Riot/Web & Desktop chat": "Riot/Web & Työpöytä-keskustelu", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk -keskustelu", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk -keskustelu", + "Matrix technical discussions": "Tekniset keskustelut", + "Running Matrix services": "Matrix-palvelujen ylläpito", + "Community-run support for Synapse": "Yhteisön tarjoama Synapse-tuki", + "Admin support for Dendrite": "Dendrite ylläpitotuki", + "Announcements about Synapse releases": "Ilmoitukset uusista Synapse-julkaisuista", + "Support for those using and running matrix-appservice-irc": "Tuki niille jotka käyttävät ja ajavat matrix-appservice-irc", + "Building services on Matrix": "Palveluiden rakentaminen Matrixin avulla", + "Support for those using the Matrix spec": "Tuki Matrix-spesifikaation käyttäjille", + "Implementing VR services with Matrix": "VR-palvelujen implementointi Matrixin avulla", + "Implementing VoIP services with Matrix": "VoIP-palvelujen implementointi Matrixin avulla", + "Discussion of the Identity Service API": "Keskustelu Identity Service rajapinnasta", + "Support for those using, running and writing other bridges": "Tuki niille jotka käyttävät, ajavat ja ohjelmoivat muita siltoja", + "Dev chat for the Riot/Web dev team": "Kehittäjäkeskustelu Riot/Web kehitystiimille", + "Dev chat for the Dendrite dev team": "Kehittäjäkeskustelu Dendrite kehitystiimille", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Matrixissa on olemassa monia huoneita, jotka on linkitetty olemassa oleviin verkkoihin (Slack, IRC, Gitter yms.). Tutustu hakemistoon!", + "powered by Matrix": "Matrix", + "Riot is not supported on mobile web. Install the app?": "Riot ei tue laitettasi. Asenna mobiilisovellus?", + "Design and implementation of E2E in Matrix": "Matrix päästä-päähän salauksen suunnittelu ja implementointi", + "Contributing code to Matrix and Riot": "Osallistu kehitystyöhön", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s %(browserName)s %(osName)s", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Salattua ja vikasietoista viestintää Matrix -teknologialla", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Voit käyttää edistyksellisiä asetuksia kirjautuaksesi muille Matrix palvelimille, määrittelemällä kotipalvelimen URL-osoitteen.
    Tämän avulla voit käyttää Riot:ia olemassa olevalla toisen Matrix palvelimen käyttäjätilillä.

    Voit myös asettaa valinnaisen identiteettipalvelimen, mutta et voi kutsua käyttäjiä sähköpostiosoitteella tai tulla kutsutuksi." } diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json index 47fb52532c..3bdf9466e4 100644 --- a/src/i18n/strings/fr.json +++ b/src/i18n/strings/fr.json @@ -1,165 +1,39 @@ { - "Add an email address above to configure email notifications": "Ajouter une adresse email pour la configuration des notifications par email", - "All messages": "Tous les messages", - "All messages (loud)": "Tous les messages (fort)", - "All notifications are currently disabled for all targets.": "Toutes les notifications sont désactivées pour tous les appareils.", - "An error occurred whilst saving your email notification preferences.": "Une erreur est survenue lors de la sauvegarde de vos préférences de notifications par e-mail.", - "Cancel Sending": "Annuler l'envoi", - "Can't update user notification settings": "Impossible de mettre à jour les notifications utilisateur", - "Close": "Fermer", - "Create new room": "Créer un nouveau salon", - "Couldn't find a matching Matrix room": "Impossible de trouver un salon Matrix", "Custom Server Options": "Options de serveur personnalisées", - "delete the alias.": "Supprimer l'alias.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Supprimer l'alias %(alias)s du salon et supprimer %(name)s du répertoire ?", - "Direct Chat": "Conversation Directe", - "Directory": "Répertoire", "Dismiss": "Ignorer", - "Download this file": "Télécharger ce fichier", - "Drop here %(toAction)s": "Déposer ici %(toAction)s", - "Enable audible notifications in web client": "Activer les notifications sonores pour le client web", - "Enable desktop notifications": "Activer les notifications de bureau", - "Enable email notifications": "Activer les notifications par e-mail", - "Enable notifications for this account": "Activer les notifications pour ce compte", - "Enable them now": "Les activer maintenant", - "Enter keywords separated by a comma:": "Entrez les mots clés séparés par une virgule :", - "Error": "Erreur", - "Error saving email notification preferences": "Erreur lors de la sauvegarde des notifications par email", - "#example": "#exemple", - "Failed to": "Échec pour", - "Failed to add tag %(tagName)s to room": "Échec lors de l'ajout de l’étiquette %(tagName)s au salon", - "Failed to change settings": "Échec de la mise à jour des paramètres", - "Failed to forget room %(errCode)s": "Échec lors de l'oubli du salon %(errCode)s", - "Failed to update keywords": "Échec dans la mise à jour des mots-clés", - "Failed to get protocol list from Home Server": "Échec lors de la récupération de la liste sur le serveur", - "Failed to get public room list": "Échec lors de la récupération de la liste des salons publics", - "Failed to join the room": "Échec de l'adhésion au salon", - "Failed to remove tag %(tagName)s from room": "Échec dans la suppression de l’étiquette %(tagName)s du salon", - "Failed to set direct chat tag": "Échec dans l'attribution d'une étiquette dans le chat direct", - "Favourite": "Favoris", - "Operation failed": "L'opération a échoué", - "Please Register": "Veuillez vous enregistrer", "powered by Matrix": "propulsé par Matrix", - "Quote": "Citer", - "Redact": "Rédiger", - "Reject": "Rejeter", - "Remove %(name)s from the directory?": "Supprimer %(name)s du répertoire ?", - "Remove": "Supprimer", - "Resend": "Renvoyer", - "Settings": "Paramètres", - "Start chat": "Démarrer une discussion", - "unknown error code": "Code erreur inconnu", - "View Source": "Voir la source", - "You cannot delete this image. (%(code)s)": "Vous ne pouvez pas supprimer cette image. (%(code)s)", - "You cannot delete this message. (%(code)s)": "Vous ne pouvez pas supprimer ce message. (%(code)s)", - "You are not receiving desktop notifications": "Vous ne recevez pas les notifications sur votre bureau", - "Sunday": "Dimanche", - "Monday": "Lundi", - "Tuesday": "Mardi", - "Wednesday": "Mercredi", - "Thursday": "Jeudi", - "Friday": "Vendredi", - "Saturday": "Samedi", - "Today": "Aujourd'hui", - "Yesterday": "Hier", - "Welcome page": "Page d'accueil", - "Call invitation": "Appel entrant", - "Failed to set Direct Message status of room": "Échec de la configuration de l'état de Message Direct du salon", - "Fetching third party location failed": "Échec de la récupération de la localisation tierce", - "Files": "Fichiers", - "Filter room names": "Filtrer les salons par nom", - "Forget": "Oublier", - " from room": " du salon", - "Guest users can't invite users. Please register to invite.": "Les visiteurs ne peuvent démarrer une discussion. Merci de vous enregistrer pour pouvoir démarrer une discussion.", - "Invite to this room": "Inviter dans ce salon", - "Keywords": "Mots-clés", - "Leave": "Quitter", - "Low Priority": "Priorité Basse", - "Members": "Membres", - "Mentions only": "Seulement les mentions", - "Messages containing my display name": "Messages contenant mon nom", - "Messages containing my user name": "Message contenant mon nom d'utilisateur", - "Messages in group chats": "Messages dans les conversations de groupe", - "Messages in one-to-one chats": "Messages dans les conversations directes", - "Messages sent by bot": "Messages envoyés par des robots", - "more": "plus", - "Mute": "Couper le son", - "No rooms to show": "Aucun salon à afficher", - "Noisy": "Sonore", - "Notification targets": "Appareils recevant les notifications", - "Notifications": "Notifications", - "Notifications on the following keywords follow rules which can’t be displayed here": "Les mots-clés suivants suivent des règles de notification qui ne peuvent être affichées ici", - "Notify for all other messages/rooms": "Me notifier pour tous les autres messages/salons", - "Notify me for anything else": "Me notifier pour tout le reste", - "Off": "Désactivé", - "On": "Activé", - "Permalink": "Permalien", - "remove %(name)s from the directory.": "supprimer %(name)s du répertoire.", - "Remove from Directory": "Supprimer du répertoire", - "Riot does not know how to join a room on this network": "Riot ne peut pas joindre un salon sur ce réseau", - "Room directory": "Répertoire des salons", - "Room not found": "Salon non trouvé", - "Search for a room": "Chercher un salon", - "Source URL": "URL source", - "The Home Server may be too old to support third party networks": "Le Home Server semble trop ancien pour supporter des réseaux tiers", - "There are advanced notifications which are not shown here": "Il existe une configuration avancée des notifications qui ne peut être affichée ici", - "The server may be unavailable or overloaded": "Le serveur est indisponible ou surchargé", - "This room is inaccessible to guests. You may be able to join if you register.": "Ce salon n'est pas ouvert aux visiteurs. Vous pourrez peut-être le rejoindre si vous vous enregistrez.", - "Unable to fetch notification target list": "Impossible de récupérer la liste des appareils recevant les notifications", - "Unable to join network": "Impossible de rejoindre le réseau", - "Unable to look up room ID from server": "Impossible de récupérer l'ID du salon sur le serveur", - "Unhide Preview": "Dévoiler l'aperçu", - "Unnamed room": "Salon anonyme", - "Uploaded on %(date)s by %(user)s": "Téléchargé le %(date)s par %(user)s", - "View Decrypted Source": "Voir la source décryptée", - "When I'm invited to a room": "Quand je suis invité dans un salon", - "World readable": "Visible par tout le monde", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Vous les avez probablement configurées dans un autre client que Riot. Vous ne pouvez pas les configurer dans Riot mais elles s'appliquent quand même", - "Guests can join": "Ouvert aux visiteurs", - " to room": " au salon", - "Advanced notification settings": "Paramètres de notification avancés", - "customServer_text": "Vous pouvez utiliser l'option de serveur personnalisé pour vous connectez à d'autres serveurs Matrix, en spécifiant une adresse de homerserver différente.
    Cela permet d'utiliser Riot avec un compte existant sur un homeserverdifférent.

    Vous pouvez aussi indiquer un serveur d'identité personnel mais vous ne pourrez plus inviter des utilisateurs par email, ou être invité par email.", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Les notifications pour les mots-clés suivant répondent à des critères qui ne peuvent pas être affichés ici :", - "Collapse panel": "Cacher le panneau", - "Expand panel": "Dévoiler le panneau", - "I understand the risks and wish to continue": "Je comprends les risques et souhaite continuer", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot utilise de nombreuses fonctionnalités avancées du navigateur, certaines ne sont pas disponibles ou expérimentales dans votre navigateur actuel.", - "Sorry, your browser is not able to run Riot.": "Désolé, Riot n'est pas supporté par votre navigateur.", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Depuis votre navigateur actuel, le visuel et le ressenti de l'application pourraient être complètement incorrects, et certaines fonctionnalités pourraient ne pas être supportées. Vous pouvez continuer malgré tout, mais vous n'aurez pas de support si vous rencontrez des problèmes !", - "Please install Chrome or Firefox for the best experience.": "Veuillez installer Chrome ou Firefox pour une expérience optimale.", - "Safari and Opera work too.": "Safari et Opera fonctionnent aussi.", - "Messages containing keywords": "Messages contenant des mots-clés", "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s dans %(browserName)s sous %(osName)s", - "A new version of Riot is available.": "Une nouvelle version de Riot est disponible.", - "All Rooms": "Tous les salons", - "Cancel": "Annuler", - "Changelog": "Journal des modif.", - "Collecting app version information": "Récupération des info de version de l’application", - "Collecting logs": "Récupération des traces", - "Describe your problem here.": "Décrivez votre problème ici.", - "Failed to send report: ": "Échec de l’envoi du rapport : ", - "Forward Message": "Transférer le message", - "Hide panel": "Cacher le panneau", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Afin de diagnostiquer le problème, les traces de ce client vont être envoyées avec ce rapport d’erreur. Si vous préférez seulement envoyer le texte ci-dessus, décochez la case :", - "Loading bug report module": "Chargement du module de rapport d’erreur", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Veuillez décrire le problème. Qu’avez-vous fait ? Quel comportement vous attendiez vous à voir ? Que s’est-il effectivement passé ?", - "Please describe the bug and/or send logs.": "Veuillez décrire le problème et/ou envoyer les traces.", - "Report a bug": "Reporter un problème", "Riot Desktop on %(platformName)s": "Version bureau de Riot sur %(platformName)s", - "Riot is not supported on mobile web. Install the app?": "Riot Web n’est pas supporté sur mobile. Installer l’application ?", - "Search": "Rechercher", - "Search…": "Rechercher…", - "Send": "Envoyer", - "Send logs": "Envoyer les traces", - "This Room": "Ce salon", - "Unavailable": "Indisponible", + "Riot is not supported on mobile web. Install the app?": "Riot n’est pas disponible en version web mobile. Installer l’application ?", "Unknown device": "Appareil inconnu", - "Update": "Mettre à jour", - "Uploading report": "Téléchargement du rapport", - "What's New": "Nouveautés", - "What's new?": "Nouveautés ?", - "Waiting for response from server": "En attente d’une réponse du serveur", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "Vous utilisez Riot en tant que visiteur. Enregistrez vous ou identifiez vous pour accéder à plus de salons et de fonctionnalités !", - "You need to be using HTTPS to place a screen-sharing call.": "Vous devez utiliser HTTPS pour effectuer un appel en partage d’écran.", - "OK": "OK" + "You need to be using HTTPS to place a screen-sharing call.": "Vous devez utiliser HTTPS pour effectuer un appel avec partage d’écran.", + "Welcome to Riot.im": "Bienvenue sur Riot.im", + "Chat with Riot Bot": "Discussion avec Riot Bot", + "Search the room directory": "Rechercher dans le répertoire de salons", + "Get started with some tips from Riot Bot!": "Démarrer avec quelques astuces de Riot Bot !", + "Riot/Android & matrix-android-sdk chat": "Discussions sur Riot/Android & matrix-android-sdk", + "Riot/iOS & matrix-ios-sdk chat": "Discussions sur Riot/iOS & matrix-ios-sdk", + "General discussion about Matrix and Riot": "Discussion générale sur Matrix et Riot", + "Riot/Web & Desktop chat": "Discussions sur Riot/Web & Bureau", + "Running Matrix services": "Exécution de services Matrix", + "Admin support for Dendrite": "Support admin pour Dendrite", + "Announcements about Synapse releases": "Communiqués sur les nouvelles versions de Synapse", + "Matrix technical discussions": "Discussions techniques sur Matrix", + "Community-run support for Synapse": "Support communautaire sur Synapse", + "Support for those using and running matrix-appservice-irc": "Support pour ceux qui utilisent et exécutent matrix-appservice-irc", + "Building services on Matrix": "Développement de services sur Matrix", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Discussion & collaboration décentralisées et chiffrées, propulsées par [matrix]", + "Discussion of all things Matrix!": "Discussion sur tout ce qui concerne Matrix !", + "Support for those using the Matrix spec": "Support pour les utilisateurs de la spécification de Matrix", + "Design and implementation of E2E in Matrix": "Définition et implémentation du chiffrement de bout en bout dans Matrix", + "Implementing VR services with Matrix": "Implémentation de services de réalité virtuelle avec Matrix", + "Implementing VoIP services with Matrix": "Implémentation de services de voix sur IP avec Matrix", + "Discussion of the Identity Service API": "Discussion sur l’API du Service Identité", + "Support for those using, running and writing other bridges": "Support pour les utilisateurs, administrateurs et développeurs d'autres passerelles", + "Contributing code to Matrix and Riot": "Contribuer du code à Matrix et Riot", + "Dev chat for the Riot/Web dev team": "Discussions de l'équipe de développeurs de Riot/Web", + "Dev chat for the Dendrite dev team": "Discussion pour l'équipe de développeurs de Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "De nombreux salons existent déjà dans Matrix, liés à des réseaux existants (Slack, IRC, Gitter etc) ou indépendants. Jetez un œil au répertoire !", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Vous pouvez utiliser les options de serveur personnalisé pour vous connecter à d'autres serveurs Matrix en précisant un serveur d'accueil différent.
    Cela vous permet d'utiliser Riot avec un compte Matrix existant sur un autre serveur d'accueil.

    Vous pouvez aussi renseigner un serveur d'identité personnalisé mais vous ne pourrez pas inviter d'utilisateurs avec leur adresse e-mail, ou être invité avec votre adresse e-mail.", + "Co-ordination for Riot translators": "Coordination des traducteurs de Riot" } diff --git a/src/i18n/strings/gl.json b/src/i18n/strings/gl.json new file mode 100644 index 0000000000..be3e3cc072 --- /dev/null +++ b/src/i18n/strings/gl.json @@ -0,0 +1,39 @@ +{ + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s vía %(browserName)s en %(osName)s", + "Custom Server Options": "Opcións personalizadas do servidor", + "Dismiss": "Rexeitar", + "powered by Matrix": "funciona grazas a Matrix", + "Riot Desktop on %(platformName)s": "Riot Desktop en %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "Riot non se pode executar na web do móbil. Instalar a aplicación?", + "Unknown device": "Dispositivo descoñecido", + "You need to be using HTTPS to place a screen-sharing call.": "Precisa utilizar HTTPS para establecer unha chamada de pantalla compartida.", + "Welcome to Riot.im": "Benvida/o a Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Conversas e colaboración descentralizada e cifrada grazas a [matrix]", + "Search the room directory": "Buscar no directorio de salas", + "Chat with Riot Bot": "Conversa co bot de Riot", + "Get started with some tips from Riot Bot!": "Iníciese con algúns consellos do bot de Riot!", + "General discussion about Matrix and Riot": "Discusión xeral sobre Matrix e Riot", + "Discussion of all things Matrix!": "Conversa sobre todo o relativo a Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & sala de conversas para escritorio", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & sala de conversas matrix-ios-sdk", + "Matrix technical discussions": "Discusións técnicas sobre Matrix", + "Running Matrix services": "Servizos que empregan Matrix", + "Community-run support for Synapse": "Axuda da comunidade para Synapse", + "Admin support for Dendrite": "Axuda de administrador para Dendrite", + "Announcements about Synapse releases": "Anuncios sobre lanzamentos de Synapse", + "Support for those using and running matrix-appservice-irc": "Axuda para quen usa matrix-appservice-irc", + "Building services on Matrix": "Deseñando servizos sobre Matrix", + "Support for those using the Matrix spec": "Axuda para quen usa a especificación de Matrix", + "Design and implementation of E2E in Matrix": "Deseño e implementación de E2E en Matrix", + "Implementing VR services with Matrix": "Implementando servizos de RV con Matrix", + "Implementing VoIP services with Matrix": "Implementación de servizos VoIP con Matrix", + "Discussion of the Identity Service API": "Conversa sobre a API do servizo de identificación", + "Support for those using, running and writing other bridges": "Axuda para quen está a utilizar, executar ou desenvolver outras pontes", + "Contributing code to Matrix and Riot": "Contribuíndo ao código de Matrix e Riot", + "Dev chat for the Riot/Web dev team": "Sala de conversa para o equipo de desenvolvemento de Riot/Web", + "Dev chat for the Dendrite dev team": "Sala de conversas para o equipo de desenvolvemento de Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Xa existen multitude de salas en Matrix ben ligadas a redes existentes (Slack, IRC, Gitter etc) ou ben independentes. Busque no directorio!", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & sala de conversas matrix-android-sdk", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Pode utilizar as opcións persoais de servidor para conectarse a outros servidores Matrix indicando o enderezo URL dese servidor.
    Isto permítelle utilizar Riot cunha conta Matrix existente en outro servidor.

    Tamén pode empregar un servidor personalizado de identidade mais nese caso nin se poderán convidar a outros usuarios empregando os correo electrónicos nin tampouco eles o poderán convidar a vostede por correo.", + "Co-ordination for Riot translators": "Coordinación para tradutora/es de Riot" +} diff --git a/src/i18n/strings/he.json b/src/i18n/strings/he.json new file mode 100644 index 0000000000..101730f415 --- /dev/null +++ b/src/i18n/strings/he.json @@ -0,0 +1,38 @@ +{ + "Custom Server Options": "הגדרות שרת מותאמות אישית", + "Dismiss": "שחרר", + "powered by Matrix": "מופעל ע\"י Matrix", + "Riot Desktop on %(platformName)s": "רייוט לשולחן העבודה על גבי %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "Riot לא נתמך באמצעות דפדפן במכשיר הסלולארי. האם להתקין את היישום?", + "Unknown device": "מכשיר לא ידוע", + "You need to be using HTTPS to place a screen-sharing call.": "עליך להשתמש ב HTTPS בכדי לבצע שיחת ווידאו משותפת.", + "Welcome to Riot.im": "ברוכים הבאים ל Riot.im", + "Search the room directory": "חפש בספריית החדרים", + "Chat with Riot Bot": "שיחה עם Riot בוט", + "Get started with some tips from Riot Bot!": "התחל באמצעות מספר טיפים מהבוט של Riot!", + "General discussion about Matrix and Riot": "דיון כללי על Matrix ו Riot", + "Discussion of all things Matrix!": "דיון על כל הדברים הקשורים ל Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & צ'ט שולחן עבודה", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & שיחה עם matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & צ'ט matrix-android-sdk", + "Matrix technical discussions": "פורום טכני של Matrix", + "Running Matrix services": "שירותי ה Matrix שרצים", + "Community-run support for Synapse": "תמיכת הקהילה עבור Synapse", + "Admin support for Dendrite": "תמיכת מנהל מערכת עבור Dendrite", + "Announcements about Synapse releases": "הודעות לגבי גרסאות Synapse", + "Support for those using and running matrix-appservice-irc": "תמיכה למשתמשים ב matrix-appservice-irc", + "Building services on Matrix": "בניית שירותים על גבי ה Matrix", + "Support for those using the Matrix spec": "תמיכה למשתמשים במאפייני ה Matrix", + "Design and implementation of E2E in Matrix": "תכנון וביצוע קצה לקצה ב Matrix", + "Implementing VR services with Matrix": "מימוש שירותי VR ב Matrix", + "Implementing VoIP services with Matrix": "מימוש Voip ב Matrix", + "Discussion of the Identity Service API": "דיון על API לשירות זהויות", + "Support for those using, running and writing other bridges": "שירות למשתמשים, שמריצים וכותבים חיבורים נוספים", + "Contributing code to Matrix and Riot": "תרומת קוד ל Matrix ו Riot", + "Dev chat for the Riot/Web dev team": "שיחה עם המפתחים עבור ה קבוצת הפיתוח של Riot/Web", + "Dev chat for the Dendrite dev team": "שיחת מפתחים עבור Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "הרבה חדרים כבר קיימים ב Matrix ומקושרים לרשתות קיימות (Slack, IRC, Gitter וכו') או עצמאיים. בדוק את הספרייה!", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s באמצעות הדפדפן %(browserName)s על גבי %(osName)s", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "צ'ט מוצפן & ושת\"פ נעשה ע\"י ה [matrix]", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "בכדי להיכנס לשרתים אחרים של מטריקס, אפשר להגדיר כתובת מוצא ראשית אחרת ל- URL שרתי מטריקס, בהגדרות: 'התאמה אישית לאפשרויות שרת'.
    ואז מתאפשר למשתמש ריוט לנצל חשבון משתמש מטריקס קיים, בשרתי מטריקס שונים.

    אפשר גם להגדיר בהתאמה אישית שרת הזדהות. אך אז לא ניתן להזמין משתמשים באימייל, ואי אפשר להזמינך באמצעות אימייל." +} diff --git a/src/i18n/strings/hi.json b/src/i18n/strings/hi.json new file mode 100644 index 0000000000..0967ef424b --- /dev/null +++ b/src/i18n/strings/hi.json @@ -0,0 +1 @@ +{} diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json index d5d33930ab..ad20927eec 100644 --- a/src/i18n/strings/hu.json +++ b/src/i18n/strings/hu.json @@ -1,164 +1,39 @@ { - "Add an email address above to configure email notifications": "E-mail értesítés beállításához írd be az e-mail címed", - "Advanced notification settings": "Haladó értesítési beállítások", - "All messages": "Minden üzenet", - "All messages (loud)": "Minden üzenet (hangos)", - "All notifications are currently disabled for all targets.": "Minden céleszközön minden értesítés tiltva van.", - "An error occurred whilst saving your email notification preferences.": "Hiba történt az e-mail értesítés beállításánál.", - "Call invitation": "Hívás meghívó", - "Cancel Sending": "Küldés megszakítása", - "Can't update user notification settings": "Nem sikerül frissíteni az értesítési beállításokat", - "Close": "Bezár", - "Create new room": "Új szoba készítés", - "Couldn't find a matching Matrix room": "Nem található a keresett Matrix szoba", - "Custom Server Options": "Egyedi szerver beállítások", - "delete the alias.": "becenév törlése.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Törlöd a(z) %(alias)s szobát és kiveszed a könyvtárból ezt: %(name)s?", - "Direct Chat": "Közvetlen csevegés", - "Directory": "Könyvtár", - "Dismiss": "Eltűntet", - "Download this file": "Fájl letöltése", - "Drop here %(toAction)s": "%(toAction)s -t húzd ide", - "Enable audible notifications in web client": "Hallható értesítések engedélyezése a webes kliensben", - "Enable desktop notifications": "Asztali értesítések engedélyezése", - "Enable email notifications": "E-mail értesítések engedélyezése", - "Enable notifications for this account": "Értesítések engedélyezése a fiókhoz", - "Enable them now": "Engedélyezés most", - "Enter keywords separated by a comma:": "Kulcsszavak vesszővel elválasztva:", - "Error": "Hiba", - "Error saving email notification preferences": "Hiba email értesítés beállításának mentésénél", - "#example": "#példa", - "Failed to": "Nem lehet", - "Failed to add tag %(tagName)s to room": "Nem lehet a címkét hozzáadni a szobához: %(tagName)s", - "Failed to change settings": "Nem lehet a beállítást megváltoztatni", - "Failed to forget room %(errCode)s": "Nem lehet eltávolítani a szobát: %(errCode)s", - "Failed to update keywords": "Nem lehet a kulcsszavakat frissíteni", - "Failed to get protocol list from Home Server": "Nem lehet a protokoll listát lekérni a Saját szerverről", - "Failed to get public room list": "Nem lehet lekérdezni a nyílt szobák listáját", - "Failed to join the room": "Nem lehet csatlakozni a szobához", - "Failed to remove tag %(tagName)s from room": "Nem lehet törölni a(z) %(tagName)s címkét a szobáról", - "Failed to set direct chat tag": "Nem lehet a címkét beállítani a közvetlen beszélgetéshez", - "Failed to set Direct Message status of room": "Nem lehet beállítani a Közvetlen beszélgetés státuszt a szobához", - "Favourite": "Kedvenc", - "Fetching third party location failed": "Nem sikerült lekérdezni a harmadik felet", - "Files": "Fájlok", - "Filter room names": "Szoba nevek szűrése", - "Forget": "Elfelejt", - " from room": " szobából", - "Guests can join": "Vendégek csatlakozhatnak", - "Guest users can't invite users. Please register to invite.": "Vendég felhasználó nem küldhet meghívót. Kérlek regisztrálj meghívó küldéshez.", - "Invite to this room": "Meghívás a szobába", - "Keywords": "Kulcsszavak", - "Leave": "Elhagy", - "Low Priority": "Alacsony priorítás", - "Members": "Résztvevők", - "Mentions only": "Csak ha megemlítenek", - "Messages containing my display name": "Az üzenet tartalmazza a nevem", - "Messages containing my user name": "Az üzenet tartalmazza a felhasználói nevem", - "Messages in group chats": "Üzenetek a csoportszobában", - "Messages in one-to-one chats": "Üzenetek közvetlen beszélgetésekben", - "Messages sent by bot": "Botok által küldött üzenetek", - "more": "további", - "Mute": "Elnémít", - "No rooms to show": "Nincs megjeleníthető szoba", - "Noisy": "Hangos", - "Notification targets": "Értesítések célpontja", - "Notifications": "Értesítések", - "Notify for all other messages/rooms": "Értesítés minden más üzenethez/szobához", - "Safari and Opera work too.": "Safarival és Operaval is működik.", - "Collapse panel": "Panel bezárása", - "customServer_text": "Egyedi Matrix szervert használhatsz a Saját szerver URL beállításával.
    Ezzel meglévő Matrix fiókot használhatsz Riot klienssel és egyedi szerverrel.

    Beállíthatsz egyedi \"identity\" szervert de akkor nem tudsz e-maillel meghívni felhasználót és téged sem tudnak meghívni e-maillel.", - "Expand panel": "Panel kinyitása", - "I understand the risks and wish to continue": "Megértettem a kockázatot és folytatom", - "Notifications on the following keywords follow rules which can’t be displayed here:": "A kulcsszavakhoz tartozó értesítések olyan szabályokat követnek amiket nem lehet itt megjeleníteni:", - "Notify me for anything else": "Értesíts minden egyéb esetben", - "Off": "Ki", - "On": "Be", - "Operation failed": "Művelet sikertelen", - "Permalink": "Állandó hivatkozás", - "Please install Chrome or Firefox for the best experience.": "A legjobb élmény érdekében telepíts Chromeot vagy Firefoxot.", - "Please Register": "Regisztrálj", - "powered by Matrix": "Matrixon alapul", - "Quote": "Idézet", - "Redact": "Szerkeszt", - "Reject": "Elutasít", - "Remove %(name)s from the directory?": "Törlöd a %(name)s szobát a listából?", - "Remove": "Töröl", - "remove %(name)s from the directory.": "%(name)s szoba törlése a listából.", - "Remove from Directory": "Törlés a szobák listájából", - "Resend": "Újraküld", - "Riot does not know how to join a room on this network": "Riot nem tudja, hogy csatlakozzon ehhez a szobához ezen a hálózaton", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot sok haladó képességét használja a böngészőnek amik közül lehet, hogy nem mind érhető el a most használt böngészőben vagy még csak kísérleti jellegű.", - "Room directory": "Szobák listája", - "Room not found": "A szoba nem található", - "Search for a room": "Szoba keresése", - "Settings": "Beállítások", - "Source URL": "Forrás URL", - "Sorry, your browser is not able to run Riot.": "Elnézést, a böngésződ nem képes futtatni a Riotot.", - "Start chat": "Csevegés indítása", - "The Home Server may be too old to support third party networks": "A Saját szerver lehet, hogy túl régi ahhoz, hogy más hálózatokhoz tudjon kapcsolódni", - "There are advanced notifications which are not shown here": "Vannak haladó értesítések amik itt nincsenek megjelenítve", - "The server may be unavailable or overloaded": "A szerver nem érhető el vagy túl van terhelve", - "This room is inaccessible to guests. You may be able to join if you register.": "A szoba vendégek számára elérhetetlen. Csak regisztráció után tudsz csatlakozni.", - " to room": " szobába", - "Unable to fetch notification target list": "Nem sikerült letölteni az értesítési célok listáját", - "Unable to join network": "Nem sikerült kapcsolódni a hálózathoz", - "Unable to look up room ID from server": "Nem lehet lekérdezni a szoba ID-ját a szervertől", - "Unhide Preview": "Előkép felfedése", - "unknown error code": "ismeretlen hiba kód", - "Unnamed room": "Név nélküli szoba", - "Uploaded on %(date)s by %(user)s": "Feltöltés: %(date)s, %(user)s", - "View Decrypted Source": "Visszafejtett forrás megjelenítése", - "View Source": "Forrás megjelenítése", - "When I'm invited to a room": "Amikor meghívtak a szobába", - "World readable": "Mindenki olvashatja", - "You cannot delete this image. (%(code)s)": "Nem törölheted ezt a képet. (%(code)s)", - "You cannot delete this message. (%(code)s)": "Nem törölheted ezt az üzenetet. (%(code)s)", - "You are not receiving desktop notifications": "Nem fogadsz asztali értesítéseket", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Valószínűleg Riottól eltérő klienssel állítottad be. Riotból nem állítható de érvényben van", - "Sunday": "Vasárnap", - "Monday": "Hétfő", - "Tuesday": "Kedd", - "Wednesday": "Szerda", - "Thursday": "Csütörtök", - "Friday": "Péntek", - "Saturday": "Szombat", - "Today": "Ma", - "Yesterday": "Tegnap", - "Welcome page": "Üdvözlő oldal", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "A jelenlegi bőngésződdel teljesen hibás lehet az alkalmazás kinézete és bizonyos funkciók, ha nem az összes, nem fog működni. Ha mindenképpen ki akarod próbálni, folytathatod de egyedül vagy minden felbukkanó problémával!", - "Messages containing keywords": "Az üzenet kulcsszavakat tartalmaz", + "Custom Server Options": "Egyedi szerverbeállítások", + "Dismiss": "Eltüntet", + "powered by Matrix": "Matrix hajtja", "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s alkalmazás %(browserName)s böngészőn %(osName)s rendszeren", - "A new version of Riot is available.": "Új verzió érhető el a Riot-ból.", - "All Rooms": "Minden szoba", - "Cancel": "Mégse", - "Changelog": "Változások", - "Collecting app version information": "Alkalmazás verzió információk összegyűjtése", - "Collecting logs": "Naplók összegyűjtése", - "Describe your problem here.": "Írd le a problémád itt.", - "Failed to send report: ": "A jelentést nem lehetett elküldeni: ", - "Forward Message": "Üzenet továbbküldése", - "Hide panel": "Panel elrejtése", - "Loading bug report module": "Hibabejelentő modul betöltése", - "Please describe the bug and/or send logs.": "Írd le a hibát és/vagy küld el a naplókat.", - "Report a bug": "Hiba bejelentése", - "Riot Desktop on %(platformName)s": "Riot Desktop ezen: %(platformName)s", - "Riot is not supported on mobile web. Install the app?": "Riot nem támogatott mobil webböngészőn. Telepíted az alkalmazást?", - "Search": "Keresés", - "Search…": "Keresés…", - "Send": "Küld", - "Send logs": "Naplók elküldése", - "This Room": "Ez a szoba", - "Unavailable": "Elérhetetlen", - "Unknown device": "Ismeretlen eszköz", - "Update": "Frissítés", - "Uploading report": "Jelentés feltöltése", - "What's New": "Mik az újdonságok", - "What's new?": "Mik az újdonságok?", - "Waiting for response from server": "Válasz várása a szervertől", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "Vendégként használod a Riot-ot. Regisztrálj vagy jelentkezz be további szobák és lehetőségek eléréséhez!", - "OK": "Rendben", - "You need to be using HTTPS to place a screen-sharing call.": "HTTPS-t kell használnod hogy képernyőmegosztásos hívást kezdeményezz.", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "A problémák diagnosztizálása érdekében erről a kliensről a hibajelentésben naplók lesznek elküldve. Ha csak az alábbi szöveget szeretnéd elküldeni akkor ezt ne jelöld meg:", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Írd le a hibát. Mit csináltál? Mi az amit szerettél volna ha történik? Ezzel szemben mi az ami történt?" + "Riot Desktop on %(platformName)s": "Riot Desktop itt: %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "A mobilböngésző nem támogatja a Riotot. Telepíted inkább az alkalmazást?", + "Unknown device": "Ismeretlen készülék", + "You need to be using HTTPS to place a screen-sharing call.": "Képernyőmegosztás indításához HTTPS-t kell használnod.", + "Welcome to Riot.im": "Üdvözöl a Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentralizált, titkosított csevegés és kollaboráció [matrix] alapokon", + "Search the room directory": "Keresés a szobajegyzékben", + "Chat with Riot Bot": "Csevegés a Riot Robottal", + "Get started with some tips from Riot Bot!": "Kezdj a Riot Robot néhány tippjével!", + "General discussion about Matrix and Riot": "Általános beszélgetések a Matrixról és a Riotról", + "Discussion of all things Matrix!": "Beszélgetés mindenről, ami Matrix!", + "Riot/Web & Desktop chat": "Riot/Web és Desktop csevegés", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS és matrix-ios-sdk csevegés", + "Riot/Android & matrix-android-sdk chat": "Riot/Android és matrix-android-sdk csevegés", + "Matrix technical discussions": "Technikai jellegű beszélgetések a Matrixról", + "Community-run support for Synapse": "Közösségi támogatás a Synapse-hez", + "Admin support for Dendrite": "Admin támogatás a Dendrite-hoz", + "Announcements about Synapse releases": "Hírek a Synapse kiadásairól", + "Running Matrix services": "Matrix szolgáltatások működtetése", + "Support for those using and running matrix-appservice-irc": "Támogatás a matrix-appservice-irc használóinak és működtetőinek", + "Building services on Matrix": "Szolgáltatások fejlesztése Matrixra", + "Support for those using the Matrix spec": "Támogatás a Matrix specifikáció használóinak", + "Design and implementation of E2E in Matrix": "A végponttól végpontig történő titkosítás (E2E) tervezése és implementációja a Matrixban", + "Implementing VR services with Matrix": "VR szolgáltatások implementációja Matrixba", + "Implementing VoIP services with Matrix": "VoIP szolgáltatások implementációja Matrixba", + "Discussion of the Identity Service API": "Beszélgetés az Identity Service API-ról", + "Support for those using, running and writing other bridges": "Támogatás azoknak, akik egyéb hidakat használnak, működtetnek vagy készítenek", + "Contributing code to Matrix and Riot": "Hozzájárulás a Matrix és Riot programkódjának fejlesztéséhez", + "Dev chat for the Riot/Web dev team": "Csevegés a Riot/Web fejlesztői csapatával fejlesztőknek", + "Dev chat for the Dendrite dev team": "Csevegés a Dendrite fejlesztői csapatával fejlesztőknek", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Már sok szoba van a Matrixon: más hálózatokkal (Slack, IRC, Gitter stb.) összekapcsolt és függetlenek szobák is. Nézd meg a szobajegyzéket!", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Bejelentkezhetsz más Matrix szerverre is az egyedi szerverbeállításoknál megadott Matrix szerver URL-jével.
    Így használhatod a Riotot egy már máshol meglévő Matrix fiókkal is.

    Beállíthatsz egyéni identitásszervert is, de akkor nem tudsz más felhasználókat e-mail címmel meghívni, illetve ők sem tudnak téged.", + "Co-ordination for Riot translators": "Koordináció Riot fordítók számára" } diff --git a/src/i18n/strings/id.json b/src/i18n/strings/id.json new file mode 100644 index 0000000000..7e202c7cbd --- /dev/null +++ b/src/i18n/strings/id.json @@ -0,0 +1,39 @@ +{ + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s melalui %(browserName)s di %(osName)s", + "Custom Server Options": "Pilihan Server Khusus", + "Dismiss": "Abaikan", + "powered by Matrix": "didukung oleh Matrix", + "Riot Desktop on %(platformName)s": "Riot Desktop di %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "Riot tidak mendukung web seluler. Install aplikasi?", + "Unknown device": "Perangkat Tidak Diketahui", + "You need to be using HTTPS to place a screen-sharing call.": "Anda perlu menggunakan HTTPS untuk melakukan panggilan berbagi-layar.", + "Welcome to Riot.im": "Selamat datang di Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Obrolan terenkripsi, terdesentralisasi & kolaborasi didukung oleh [matrix]", + "Search the room directory": "Cari di direktori ruang", + "Chat with Riot Bot": "Mengobrol dengan bot Riot", + "Get started with some tips from Riot Bot!": "Mulai dengan beberapa tip dari Bot Riot!", + "General discussion about Matrix and Riot": "Diskusi umum tentang Matrix dan Riot", + "Discussion of all things Matrix!": "Diskusi semua tentang Matrix!", + "Riot/Web & Desktop chat": "Obrolan Riot/Web & Desktop", + "Riot/iOS & matrix-ios-sdk chat": "Obrolan Riot/iOS & matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Obrolan Riot/Android & matrix-android-sdk", + "Matrix technical discussions": "Diskusi teknis Matrix", + "Running Matrix services": "Mengoperasikan layanan Matrix", + "Community-run support for Synapse": "Dukungan komunitas untuk Synapse", + "Admin support for Dendrite": "Dukungan Admin untuk Dendrite", + "Announcements about Synapse releases": "Pengumuman tentang rilis Synapse", + "Support for those using and running matrix-appservice-irc": "Dukungan untuk pengguna dan penyedia matrix-appservice-irc", + "Building services on Matrix": "Membangun layanan dengan Matrix", + "Support for those using the Matrix spec": "Dukungan untuk pengguna Matrix spec", + "Design and implementation of E2E in Matrix": "Desain dan implementasi E2E di Matrix", + "Implementing VR services with Matrix": "Implementasi layanan VR dengan Matrix", + "Implementing VoIP services with Matrix": "Implementasi layanan VoIP dengan Matrix", + "Discussion of the Identity Service API": "Diskusi tentang API Identity Service", + "Support for those using, running and writing other bridges": "Dukungan untuk pengguna, penyedia dan penulis jembatan lainnya", + "Contributing code to Matrix and Riot": "Kontribusi kode untuk Matrix dan Riot", + "Dev chat for the Riot/Web dev team": "Obrolan Developer untuk tim developer Riot/Web", + "Dev chat for the Dendrite dev team": "Obrolan Developer untuk tim developer Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Banyak ruang sudah tersedia di Matrix, terhubung ke jaringan yang sudah ada (Slack, IRC, Gitter dls) atau independen. Cek direktori!", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Anda dapat menggunakan opsi lain untuk mendaftar pada server Matrix yang berbeda dengan memasukkan URL server yang sesuai.
    Hal ini memungkinkan anda untuk menggunakan Riot dengan akun matrix yang telah tersedia pada Home server yang berbeda.

    Anda juga dapat melakukan pengubahan identitas server akan tetapi akan berakibat tidak dapat mengundang pengguna melalui email, atau diundang melalui email.", + "Co-ordination for Riot translators": "Koordinasi dengan penerjemah Riot" +} diff --git a/src/i18n/strings/is.json b/src/i18n/strings/is.json new file mode 100644 index 0000000000..92babad122 --- /dev/null +++ b/src/i18n/strings/is.json @@ -0,0 +1,39 @@ +{ + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s með %(browserName)s á %(osName)s", + "powered by Matrix": "keyrt með Matrix", + "Welcome to Riot.im": "Velkomin í Riot.im", + "Riot Desktop on %(platformName)s": "Riot skjáborðsforrit á %(platformName)s", + "Unknown device": "Óþekkt tæki", + "Dismiss": "Hafna", + "Riot/Web & Desktop chat": "Riot/Spjall á vef- & skjáborði", + "Custom Server Options": "Sérsniðnir valkostir vefþjóns", + "Riot is not supported on mobile web. Install the app?": "Riot er ekki stutt í farsímaútgáfu vefsins. Setja upp forritið?", + "You need to be using HTTPS to place a screen-sharing call.": "Þú verður að nota HTTPS til að hringja samtal með deilingu á skjá.", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk spjall", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk spjall", + "Matrix technical discussions": "Tæknilegar umræður varðandi Matrix", + "Running Matrix services": "Að keyra Matrix þjónustur", + "Chat with Riot Bot": "Spjalla við Riot-róbótann", + "Get started with some tips from Riot Bot!": "Komdu þér í gang með nokkrum ábendingum frá Riot-róbótanum!", + "General discussion about Matrix and Riot": "Almenn umræða um Matrix og Riot", + "Discussion of all things Matrix!": "Almenn umræða um Matrix!", + "Implementing VR services with Matrix": "Uppsetning á VR-þjónustum með Matrix", + "Implementing VoIP services with Matrix": "Uppsetning á VoIP-þjónustum með Matrix", + "Contributing code to Matrix and Riot": "Framlög á kóða til Matrix og Riot", + "Co-ordination for Riot translators": "Yfirlit fyrir þýðendur Riot", + "Search the room directory": "Leita í herbergisskránni", + "Building services on Matrix": "Að byggja þjónustur á Matrix", + "Design and implementation of E2E in Matrix": "Hönnun og framkvæmd E2E í Matrix", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Þú getur notað sérsniðna valkosti til að skrá inn á aðra Matrix-vefþjóna með því að tilgreina aðra slóð á Heimavefþjón.
    Þetta gerir þér kleift að nota Riot með fyrirliggjandi Matrix notandaaðgangi á öðrum heimaþjóni.

    Þú getur líka stillt sérsniðinn auðkenningarþjón, en þá getur þú ekki boðið notendum eftir tölvupóstfangi eða sjálfur fengið boð með tölvupósti.", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Dulritað dreifvinnsluspjall & samstarfstól keyrt með [matrix]", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Margar spjallrásir eru til í Matrix, tengdar við fyrirliggjandi netkerfi (Slack, IRC, Gitter, o.s.frv.) eða óháð. Skoðaðu skráninguna!", + "Community-run support for Synapse": "Aðstoð frá samfélaginu fyrir Synapse", + "Admin support for Dendrite": "Kerfisstjórnarstuðningur fyrir Dendrite", + "Announcements about Synapse releases": "Tilkynningar um Synapse útgáfur", + "Support for those using and running matrix-appservice-irc": "Stuðningur við þá sem nota og keyra matrix-appservice-irc", + "Support for those using the Matrix spec": "Stuðningur við þá sem nota tæknilega Matrix eiginleika", + "Discussion of the Identity Service API": "Umræða um Identity Service API-kerfisviðmót", + "Support for those using, running and writing other bridges": "Stuðningur við þá sem nota, keyra og skrifa aðrar brýr", + "Dev chat for the Riot/Web dev team": "Forritaraspjall fyrir Riot/vefþróunarhópinn", + "Dev chat for the Dendrite dev team": "Forritaraspjall fyrir Dendrite þróunarhópinn" +} diff --git a/src/i18n/strings/it.json b/src/i18n/strings/it.json new file mode 100644 index 0000000000..5afb0b9245 --- /dev/null +++ b/src/i18n/strings/it.json @@ -0,0 +1,39 @@ +{ + "Custom Server Options": "Opzioni server personalizzate", + "Dismiss": "Chiudi", + "powered by Matrix": "offerto da Matrix", + "Riot Desktop on %(platformName)s": "Riot Desktop su %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "Riot non è supportato sul web mobile. Installare l'applicazione?", + "Unknown device": "Dispositivo sconosciuto", + "You need to be using HTTPS to place a screen-sharing call.": "Devi usare HTTPS per effettuare una chiamata con la condivisione dello schermo.", + "Welcome to Riot.im": "Benvenuto/a su Riot.im", + "Search the room directory": "Cerca nella lista delle stanze", + "Chat with Riot Bot": "Chatta con Riot Bot", + "Get started with some tips from Riot Bot!": "Inizia con alcuni consigli di Riot Bot!", + "General discussion about Matrix and Riot": "Discussioni generali riguardo Matrix e Riot", + "Riot/Web & Desktop chat": "Chat su Riot/Web & Desktop", + "Riot/iOS & matrix-ios-sdk chat": "Chat su Riot/iOS & matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Chat su Riot/Android & matrix-android-sdk", + "Matrix technical discussions": "Discussioni tecniche su Matrix", + "Running Matrix services": "Esecuzione servizi Matrix", + "Community-run support for Synapse": "Supporto per Synapse dalla comunità", + "Admin support for Dendrite": "Supporto amministrativo per Dendrite", + "Announcements about Synapse releases": "Annunci riguardo i rilasci di Synapse", + "Support for those using and running matrix-appservice-irc": "Supporto per chi usa e amministra matrix-appservice-irc", + "Building services on Matrix": "Costruzione servizi su Matrix", + "Support for those using the Matrix spec": "Supporto per chi utilizza le specifiche Matrix", + "Design and implementation of E2E in Matrix": "Design e implementazione di E2E in Matrix", + "Implementing VR services with Matrix": "Implementazione servizi VR con Matrix", + "Implementing VoIP services with Matrix": "Implementazione servizi VoIP con Matrix", + "Discussion of the Identity Service API": "Discussione sull'Identity Service API", + "Support for those using, running and writing other bridges": "Supporto per chi usa, amministra e scrive altri bridge", + "Contributing code to Matrix and Riot": "Contributi di codice per Matrix e Riot", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s tramite %(browserName)s su %(osName)s", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Chat criptate e collaborazioni decentralizzate offerte da [matrix]", + "Discussion of all things Matrix!": "Discussione su tutto quanto riguardi Matrix!", + "Dev chat for the Riot/Web dev team": "Chat per gli sviluppatori di Riot/Web", + "Dev chat for the Dendrite dev team": "Chat per gli sviluppatori di Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Esistono già molte stanze in Matrix, collegate a reti già esistenti (Slack, IRC, Gitter ecc) o indipendenti. Dai un'occhiata all'elenco!", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Puoi usare le opzioni server personalizzate per accedere ad altri server Matrix specificando l'indirizzo dell'home server.
    Questo permette di usare Matrix con un account esistente su un home server diverso.

    È anche possibile impostare un diverso identity server, ma in quel caso non sarà possibile invitare utenti attraverso l'indirizzo e-mail o essere invitati attraverso l'indirizzo e-mail.", + "Co-ordination for Riot translators": "Coordinazione per i traduttori di Riot" +} diff --git a/src/i18n/strings/ja.json b/src/i18n/strings/ja.json new file mode 100644 index 0000000000..706b9ab30a --- /dev/null +++ b/src/i18n/strings/ja.json @@ -0,0 +1,38 @@ +{ + "Riot is not supported on mobile web. Install the app?": "Riotはスマートフォンでの表示に対応していません。できればアプリをインストールして頂けませんでしょうか?", + "Welcome to Riot.im": "Riot.imへようこそ", + "Search the room directory": "部屋一覧を検索", + "Unknown device": "不明な端末", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)sは%(osName)sの%(browserName)s上で動作しています", + "Custom Server Options": "カスタムサーバのオプション", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "他のホームサーバのURLを指定することで、他のMatrixサーバにサインインするためにカスタムサーバのオプションを利用できます。
    これにより、他のホームサーバ上で既存のMatrixアカウントを用いてRiotを利用できます。

    カスタムアイデンティティサーバを立てることもできますが、メールアドレスでユーザを招待する、または自身が招待されることはできません。", + "Dismiss": "やめる", + "powered by Matrix": "Matrixによって動作しています", + "Riot Desktop on %(platformName)s": "%(platformName)s向けデスクトップ版Riot", + "You need to be using HTTPS to place a screen-sharing call.": "画面共有通話を行うにはHTTPS通信を使う必要があります。", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "分散型の、暗号化された会話とコラボレーション。[matrix]で動作しています", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "既にたくさんの部屋が、既存のネットワーク(Slack、IRC、Gitter等)に接続して、または独立的にMatrixに存在します。ディレクトリを検索してください!", + "Chat with Riot Bot": "Riot Botと会話", + "Get started with some tips from Riot Bot!": "Riot Botにヒントをもらって始めましょう!", + "General discussion about Matrix and Riot": "MatrixとRiotの概略", + "Discussion of all things Matrix!": "Matrixなんでも討論", + "Riot/Web & Desktop chat": "Riot/Web & デスクトップ版チャット", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk チャット", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk チャット", + "Matrix technical discussions": "Matrixについての技術的な討論", + "Running Matrix services": "Matrixサービスを実行しています", + "Community-run support for Synapse": "コミュニティ運営のSynapseのサポート", + "Admin support for Dendrite": "Dendriteの管理者サポート", + "Announcements about Synapse releases": "Synapseの公開についてのお知らせ", + "Support for those using and running matrix-appservice-irc": "matrix-appservice-ircを利用並びに運営している方へのサポート", + "Building services on Matrix": "Matrixでのサービスの開発", + "Support for those using the Matrix spec": "Matrixスペックを利用する方へのサポート", + "Design and implementation of E2E in Matrix": "Matrixでのデザインとエンドツーエンドの実装", + "Implementing VR services with Matrix": "MatrixでのVRサービスの実装", + "Implementing VoIP services with Matrix": "MatrixでのIP電話サービスの実装", + "Discussion of the Identity Service API": "Identity Service APIの議論", + "Support for those using, running and writing other bridges": "他のブリッジを利用、運営、作成している方へのサポート", + "Contributing code to Matrix and Riot": "MatrixとRiotにコードを提供する", + "Dev chat for the Riot/Web dev team": "Riot/Web開発者チームのための開発者チャット", + "Dev chat for the Dendrite dev team": "Dendrite開発者チームのための開発者チャット" +} diff --git a/src/i18n/strings/ka.json b/src/i18n/strings/ka.json new file mode 100644 index 0000000000..76e22da642 --- /dev/null +++ b/src/i18n/strings/ka.json @@ -0,0 +1,39 @@ +{ + "Riot is not supported on mobile web. Install the app?": "Riot ვებსაიტს არ აქვს მხარდაჭერა მობილური მოწყობილობებისთვის. გსურთ აპლიკაციის დაყენება?", + "Riot Desktop on %(platformName)s": "Riot Desktop-ი %(platformName)s-ზე", + "Unknown device": "უცნობი მოწყობილობა", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s-ი %(browserName)s-ით %(osName)s-იდან", + "You need to be using HTTPS to place a screen-sharing call.": "ეკრანის გაზიარების ფუნქციის მქონე ზარისთვის საჭიროა, იყენებდეთ HTTPS-ს.", + "Custom Server Options": "პერსონალიზებული სერვერის პარამეტრები", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "სხვა Matrix სერვერებზე შესასვლელად შეგიძლიათ გამოიყენოთ პერსონალიზებული სერვერის პარამეტრები განსხვავებული მთავარი სერვერის URL-ის მითითებით
    ეს გაძლევთ საშუალებას, გამოიყენოთ Riot-ი არსებულ Matrix ანგარიშით სხვა მთავარ სერვერზე.

    თქვენ ასევე შეგიძლიათ დააყენოთ პერსონალიზებული იდენტუროის სერვერი, მაგრამ თქვენ ვერ მოიწვევთ მომხმარებლებს ელფოსტის მისამართით და თავად თქვენ ვერ მოგიწვევენ ელფოსტის მისამართით.", + "Dismiss": "უარის თქმა", + "powered by Matrix": "Matrix-ზე დაფუძნებული", + "Welcome to Riot.im": "კეთილი იყოს თქვენი მობრძანება Riot.im-ზე", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "დეცენტრალიზებული, დაშიფრული ჩატი & კოლაბორაცია, დაფუძნებული [matrix]-ზე", + "Search the room directory": "მოძებნა ოთახის სიაში", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "მრავალი ოთახი უკვე არსებობს Matrix-ში, რომლებიც არიან დაკავშირებული არსებულ ქსელებთან (Slack, IRC, Glitter და ა.შ) ან დამოუკიდებელი. შეამოწმეთ სია!", + "Chat with Riot Bot": "ისაუბრეთ Riot-ის Bot-თან", + "Get started with some tips from Riot Bot!": "დაიწყეთ რჩევებით Riot-ის Bot-ისგან!", + "General discussion about Matrix and Riot": "ზოგადი დისკუსია Matrix-სა და Riot-ზე", + "Discussion of all things Matrix!": "დისკუსია ყველაფერზე, რაც ეხება Matrix-ს!", + "Riot/Web & Desktop chat": "Riot/ვებ-ისა & Desktop-ის ჩატი", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS-ისა & matrix-ios-sdk-ის ჩატი", + "Riot/Android & matrix-android-sdk chat": "Riot/ანდროიდისა & matrix-android-sdk-ის ჩატი", + "Matrix technical discussions": "Matrix-ის ტექნიკური დისკუსიები", + "Running Matrix services": "Matrix-ის სერვისების გამოყენება", + "Community-run support for Synapse": "საზოგადოებისმიერი მხარდაჭერა Synapse-ისთვის", + "Admin support for Dendrite": "ადმინისტრატორის მხარდაჭერა Dendrite-ისთვის", + "Announcements about Synapse releases": "განცხადებები Synapse-ის გამოშვებებთან დაკავშირებით", + "Support for those using and running matrix-appservice-irc": "მხარდაჭერა მათთვის, ვინც იყენებს matrix-appservice-irc-ს", + "Building services on Matrix": "სერვისების Matrix-ზე დაფუძნებით გამომუშავება", + "Support for those using the Matrix spec": "მხარდაჭერა Matrix სპეციფიკაციების გამოყენებასთან დაკავშირებულ კითხვებზე", + "Design and implementation of E2E in Matrix": "პირით-პირამდე დაშიფვრის დაგეგმვა და შესრულება", + "Implementing VR services with Matrix": "VR სერვისების Matrix-ით შესრულება", + "Implementing VoIP services with Matrix": "VoIP სერვისების Matrix-ით შესრულება", + "Discussion of the Identity Service API": "იდენტიფიკაციის სერვისის API-ს დისკუსია", + "Support for those using, running and writing other bridges": "მხარდაჭერა მათთვის, ვინც იყენებს და წერს სხვა ხიდებს", + "Contributing code to Matrix and Riot": "Matrix-ის და Riot-ის გამომუშავებაში მონაწილეობის მიღება", + "Dev chat for the Riot/Web dev team": "დეველოპერების ჩატი Riot/ვებ დეველოპერების გუნდთან", + "Dev chat for the Dendrite dev team": "დეველოპერების ჩატი Dendrite-ის დეველოპერების გუნდთან", + "Co-ordination for Riot translators": "კოორდინაცია Riot-ის მთარგმნელებისთვის" +} diff --git a/src/i18n/strings/ko.json b/src/i18n/strings/ko.json new file mode 100644 index 0000000000..b976664c58 --- /dev/null +++ b/src/i18n/strings/ko.json @@ -0,0 +1,37 @@ +{ + "Custom Server Options": "사용자 지정 서버 설정", + "Dismiss": "없애기", + "powered by Matrix": "Matrix의 지원을 받고 있습니다", + "Riot Desktop on %(platformName)s": "%(platformName)s PC용 Riot", + "Riot is not supported on mobile web. Install the app?": "”Riot은 모바일 사이트를 지원하지 않습니다. 앱을 설치하시겠어요?", + "Unknown device": "알 수 없는 장치", + "Welcome to Riot.im": "Riot에 오신 걸 환영해요", + "Chat with Riot Bot": "Riot 봇과 대화하기", + "%(appName)s via %(browserName)s on %(osName)s": "%(osName)s의 %(browserName)s을 통한 %(appName)s", + "You need to be using HTTPS to place a screen-sharing call.": "화면 공유 전화를 걸려면 HTTPS를 사용해야 합니다.", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "분산되고, 암호화된 대화 & [matrix]의 지원으로 협력", + "Search the room directory": "방 목록 찾기", + "Get started with some tips from Riot Bot!": "라이엇 봇에게 조언을 받고 시작하세요!", + "General discussion about Matrix and Riot": "Matrix와 Riot에 대한 일반적인 토론", + "Discussion of all things Matrix!": "모든 Matrix에 대한 토론!", + "Riot/Web & Desktop chat": "Riot/웹 & PC 대화", + "Riot/iOS & matrix-ios-sdk chat": "Riot/IOS & matrix-ios-sdk 대화", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-ios-sdk 대화", + "Matrix technical discussions": "Matrix에 대한 기술적인 토론", + "Running Matrix services": "Matrix 서비스 실행 중", + "Community-run support for Synapse": "시냅스 커뮤니티 운영 지원", + "Admin support for Dendrite": "Dendrite 관리 지원", + "Announcements about Synapse releases": "Synapse 출시에 대한 발표", + "Support for those using and running matrix-appservice-irc": "matrix-appservice-irc를 사용하고 운영하는 사람들을 위한 지원", + "Building services on Matrix": "Matrix에서 서비스 구축", + "Support for those using the Matrix spec": "Matrix spec을 사용하는 사람들을 지원", + "Design and implementation of E2E in Matrix": "매트릭스에서 E2E 설계와 구현", + "Implementing VR services with Matrix": "매트릭스로 VR 서비스 구현", + "Implementing VoIP services with Matrix": "Matrix로 인터넷전화 서비스 구현", + "Discussion of the Identity Service API": "ID 서비스 API에 대한 논의", + "Support for those using, running and writing other bridges": "다른 브릿지를 사용하고, 운영하고, 기록하는 사람들을 위한 지원", + "Contributing code to Matrix and Riot": "Matrix와 Riot에 코드 기여하기", + "Dev chat for the Riot/Web dev team": "Riot/웹 개발 팀을 위한 개발자 대화", + "Dev chat for the Dendrite dev team": "덴드라이트 개발 팀을 위한 개발자 대화", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "기존 네트워크(Slack, IRC, Gitter 등)에 연결되있거나 독립된 많은 방이 이미 Matrix에 있습니다. 목록을 확인해보세요!" +} diff --git a/src/i18n/strings/lt.json b/src/i18n/strings/lt.json new file mode 100644 index 0000000000..3129dcb96b --- /dev/null +++ b/src/i18n/strings/lt.json @@ -0,0 +1,39 @@ +{ + "Unknown device": "Nežinomas įrenginys", + "powered by Matrix": "veikia su Matrix", + "Welcome to Riot.im": "Sveiki atvykę į Riot.im", + "Chat with Riot Bot": "Kalbėtis su Riot robotu", + "General discussion about Matrix and Riot": "Bendros diskusijos apie Matrix ir Riot", + "Matrix technical discussions": "Matrix techninės diskusijos", + "Riot is not supported on mobile web. Install the app?": "Riot nėra palaikoma naršant svetainėje mobiliaisiais įrenginiais. Įdiegti programėlę?", + "Riot Desktop on %(platformName)s": "Riot Desktop, naudojant %(platformName)s", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s per %(browserName)s, naudojant %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "Norint skambinti su ekrano bendrinimo funkcija būtina naudoti HTTPS.", + "Custom Server Options": "Tinkinto serverio parametrai", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Norėdami prisijungti prie kito nei Matrix serverio, galite naudoti tinkinto serverio parametrus ir nurodyti kito serverio URL adresą.
    Tai leis jums naudoti Riot su esama Matrix paskyra kituose serveriuose.

    Taip pat galite nustatyti tinkintą tapatybės serverį, tačiau tuomet negalėsite pakviesti kitus naudotojus pagal el. paštą, o taip pat ir jie negalės pakviesti jūsų.", + "Dismiss": "Atmesti", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentralizuoti, šifruoti pokalbiai ir bendradarbiavimas, veikiantis su [matrix]", + "Search the room directory": "Ieškoti kambarių kataloge", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Daugybė kambarių jau yra Matrix, susieti prie esamų tinklų (Slack, IRC, Gitter ir t.t.) arba nepriklausomi. Pasižvalgykite kataloge!", + "Get started with some tips from Riot Bot!": "Pradėkite darbo pradžią nuo Riot roboto patarimų!", + "Discussion of all things Matrix!": "Diskusijos apie viską, kas susiję su Matrix!", + "Riot/Web & Desktop chat": "Pokalbiai apie Riot/Web ir Desktop", + "Riot/iOS & matrix-ios-sdk chat": "Pokalbiai apie Riot/iOS ir matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Pokalbiai apie Riot/Android ir matrix-android-sdk", + "Running Matrix services": "Matrix paslaugų paleidimas", + "Community-run support for Synapse": "Su Synapse susijęs bendruomenės palaikymas", + "Admin support for Dendrite": "Dendrite administratorių palaikymas", + "Announcements about Synapse releases": "Skelbimai apie Synapse laidas", + "Support for those using and running matrix-appservice-irc": "Palaikymas skirtas besinaudojantiems ir prižiūrintiems matrix-appservice-irc", + "Building services on Matrix": "Paslaugų kūrimas, naudojant Matrix", + "Support for those using the Matrix spec": "Palaikymas skirtas besinaudojantiems Matrix specifikacija", + "Design and implementation of E2E in Matrix": "E2E dizainas ir įgyvendinimas ties Matrix", + "Implementing VR services with Matrix": "VR paslaugų įgyvendinimas ties Matrix", + "Implementing VoIP services with Matrix": "VoIP paslaugų įgyvendinimas ties Matrix", + "Discussion of the Identity Service API": "Diskusijos apie tapatybės paslaugos API", + "Support for those using, running and writing other bridges": "Palaikymas skirtas besinaudojantiems, prižiūrintiems ar kuriantiems kitus tinklų tiltus", + "Contributing code to Matrix and Riot": "Matrix ir Riot kodo plėtojimas", + "Dev chat for the Riot/Web dev team": "Kūrėjų pokalbiai, skirti Riot/Web kūrėjų komandai", + "Dev chat for the Dendrite dev team": "Kūrėjų pokalbiai, skirti Dendrite kūrėjų komandai", + "Co-ordination for Riot translators": "Koordinavimas Riot vertėjams" +} diff --git a/src/i18n/strings/lv.json b/src/i18n/strings/lv.json new file mode 100644 index 0000000000..4fa734ee49 --- /dev/null +++ b/src/i18n/strings/lv.json @@ -0,0 +1,38 @@ +{ + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s caur %(browserName)s un %(osName)s", + "Custom Server Options": "Iestatāmās servera opcijas", + "Discussion of the Identity Service API": "Diskusija par Identitātes servisa API", + "Dismiss": "Atteikt", + "powered by Matrix": "Tiek darbināta ar Matrix", + "Riot Desktop on %(platformName)s": "Riot darbvirsma %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "Riot netiek atbalstīts mobilajā versijā. Instalēt aplikāciju?", + "Unknown device": "Nezināma ierīce", + "You need to be using HTTPS to place a screen-sharing call.": "Lai izmantotu ekrāna kopīgošanas zvanu, nepieciešams izmantot HTTPS savienojumu.", + "Welcome to Riot.im": "Esiet gaidīti Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentralizēta, šifrēta čata & kopdarbošanās sistēma uz [matrix] bāzes", + "Search the room directory": "Meklēt istabu katalogā", + "Chat with Riot Bot": "Pačatot ar Riot botu", + "Get started with some tips from Riot Bot!": "Iepazīsties ar dažiem knifiem no Riot bota!", + "General discussion about Matrix and Riot": "Galvenā diskusija par Matrix un Riot", + "Discussion of all things Matrix!": "Diskusija par visām ar Matrix saistītajām lietām!", + "Riot/Web & Desktop chat": "Riot/Web & darbvirsmas čats", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk čats", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk čats", + "Matrix technical discussions": "Matrix tehniskās diskusijas", + "Running Matrix services": "Matrix pakalpojumu izmantošana", + "Community-run support for Synapse": "\"Synapse\" komūnas nodrošināts atbalsts", + "Admin support for Dendrite": "Administrotora atbalsts \"Dendrite\"", + "Announcements about Synapse releases": "Paziņojumi par \"Synapse\" izlaidumiem", + "Support for those using and running matrix-appservice-irc": "Atbalsts tiem, kuri izmanto matrix-appservice-irc", + "Building services on Matrix": "Uz Matrix bāzētu pakalpojumu izveide", + "Support for those using the Matrix spec": "Atbalsts tiem, kuri izmanto Matrix specifikācijas", + "Design and implementation of E2E in Matrix": "E2E arhitektūra un iedzīvināšana Matrix", + "Implementing VR services with Matrix": "VR pakalpojumu iedzīvināšana Matrix", + "Implementing VoIP services with Matrix": "VoIP pakalpojumu iedzīvināšana Matrix", + "Support for those using, running and writing other bridges": "Atbalsts tiem, kuri izmanto un rada citus \"tiltu\" risinājumus", + "Contributing code to Matrix and Riot": "Dot ieguldījumu Matrix and Riot kodā un tulkojumā", + "Dev chat for the Riot/Web dev team": "Riot/Web izstrādātāju komandas čats", + "Dev chat for the Dendrite dev team": "Dendrite izstrādatāju komandas čats", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Matrix-ā pastāv daudzas neatkarīgas un/vai eksistējošiem tīmekļa resursiem (Slack, IRC, Gitter u.tml.) piesaistītas istabas. Ieskaties katalogā!", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Tu vari lietot \"custom\" servera opcijas, lai ielogotos citos Matrix serveros, norādot citu Bāzes servera URL.
    Tas atļaus tev lietot Riot ar esošo Matrix kontu uz cita Bāzes servera.

    Tu arī vari uzstādīt atsevišķu Identitāšu serveri, taču tad Tev nebūs iespēju uzaicināt lietotājus, izmantojot epasta adresi, vai pašam tikt uzaicinātam, izmantojot epasta adresi." +} diff --git a/src/i18n/strings/ml.json b/src/i18n/strings/ml.json index e67ece484c..dd8df9ade0 100644 --- a/src/i18n/strings/ml.json +++ b/src/i18n/strings/ml.json @@ -1,5 +1,37 @@ { - "Add an email address above to configure email notifications": "ഇ മെയില്‍ അറിയിപ്പുകൾ ലഭിക്കാന്‍ മുകളില്‍ ഇ-മെയില്‍ വിലാസം നല്‍കൂ", - "All messages": "എല്ലാ സന്ദേശങ്ങളും", - "All messages (loud)": "എല്ലാ സന്ദേശങ്ങളും (ഉച്ചത്തിൽ)" -} \ No newline at end of file + "%(appName)s via %(browserName)s on %(osName)s": "%(osName)sല്‍ %(browserName)s വഴി %(appName)s", + "Custom Server Options": "കസ്റ്റം സെര്‍വര്‍ ഓപ്ഷനുകള്‍", + "Dismiss": "ഒഴിവാക്കുക", + "powered by Matrix": "മാട്രിക്സില്‍ പ്രവര്‍ത്തിക്കുന്നു", + "Riot Desktop on %(platformName)s": "%(platformName)s ലെ റയട്ട് ഡെസ്ക്ടോപ്പ്", + "Riot is not supported on mobile web. Install the app?": "മൊബൈലില്‍ റയട്ട് വെബ് പിന്തുണ ഇല്ല. ആപ്പ് ഇന്‍സ്റ്റാള്‍ ചെയ്യാം ?", + "Unknown device": "അപരിചിത ഡിവൈസ്", + "You need to be using HTTPS to place a screen-sharing call.": "സ്ക്രീന്‍ ഷെയറിങ്ങ് കോള്‍ നടത്തണമെങ്കില്‍ https ഉപയോഗിക്കണം.", + "Welcome to Riot.im": "റയട്ടിലേക്ക് സ്വാഗതം", + "Search the room directory": "റൂം ഡയറക്റ്ററിയില്‍ പരതുക", + "Chat with Riot Bot": "റയട്ട് ബോട്ടുമായി ചാറ്റ് ചെയ്യുക", + "Get started with some tips from Riot Bot!": "റയട്ട് ബോട്ടില്‍ നിന്നുള്ള നിര്‍ദേശങ്ങള്‍ സ്വീകരിച്ച് കൊണ്ട് തുടങ്ങൂ!", + "General discussion about Matrix and Riot": "മാട്രിക്സിനേയും റയട്ടിനേയും കുറിച്ചുള്ള പൊതു ചര്‍ച്ച", + "Discussion of all things Matrix!": "മാട്രിക്സിനെ കുറിച്ചുള്ള ചര്‍ച്ച!", + "Riot/Web & Desktop chat": "റയട്ട്/വെബ് & ഡെസ്ക്ടോപ്പ് ചാറ്റ്", + "Riot/iOS & matrix-ios-sdk chat": "റയട്ട്/iOS& matrix-ios-sdk ചാറ്റ്", + "Riot/Android & matrix-android-sdk chat": "റയട്ട്/ആന്‍ഡ്രോയ്ഡ്& matrix-android-sdk ചാറ്റ്", + "Matrix technical discussions": "മാട്രിക്സ് സാങ്കേതിക ചര്‍ച്ച", + "Running Matrix services": "മാട്രിക്സ് സര്‍വീസുകള്‍ റണ്‍ ചെയ്യുന്നു", + "Community-run support for Synapse": "സിനാപ്സിനുള്ള കമ്യൂണിറ്റി-നേതൃത്വത്തലുള്ള പിന്തുണ", + "Admin support for Dendrite": "ഡെന്‍ഡ്രൈറ്റിനുള്ള അഡ്മിന്‍ പിന്തുണ", + "Announcements about Synapse releases": "സിനാപ്സ് റിലീസുകളെ കുറിച്ചുള്ള അറിയിപ്പുകള്‍", + "Support for those using and running matrix-appservice-irc": "matrix-appservice-irc ഉപയോഗിക്കുന്നവര്‍ക്കും റണ്‍ ചെയ്യുന്നവര്‍ക്കുമുള്ള സപ്പോര്‍ട്ട്", + "Support for those using the Matrix spec": "Matrix spec ഉപയോഗിക്കുന്നവര്‍ക്കുള്ള പിന്തുണ", + "Design and implementation of E2E in Matrix": "മാട്രിക്സിലെ e2eയുടെ ഡിസൈനും ഇമ്പ്ലിമെന്റേഷനും", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "വികേന്ദ്രീകൃത , എന്‍ക്രിപ്റ്റഡ് ചാറ്റ് & മാട്രിക്സ് നല്‍കുന്ന കൊളാബൊറേഷന്‍", + "Support for those using, running and writing other bridges": "മറ്റ് ബ്രിഡ്ജുകള്‍ ഉപയോഗിക്കുന്ന, റണ്‍ ചെയ്യുന്ന, എഴുതുന്നവര്‍ക്കുള്ള പിന്തുണ", + "Contributing code to Matrix and Riot": "മാട്രിക്സിലേക്കും റയട്ടിലേക്കും കോഡ് സംഭാവന ചെയ്യാം", + "Dev chat for the Riot/Web dev team": "റയട്ട്/വെബ് ഡെവലപ്പര്‍ ടീമിനുള്ള dev chat", + "Dev chat for the Dendrite dev team": "ഡെന്‍ഡ്രൈറ്റ് ഡെവലപ്പര്‍ ടീമിനുള്ള dev chat", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "മാട്രിക്സിലുള്ളതും പഴയ നെറ്റ്‍വര്‍ക്കുകളിലേക്ക് ( സ്ലാക്ക്, IRC, ഗിറ്റര്‍ മുതലായവ ) ലിങ്ക് ചെയ്തതുമൊക്കെയായ ധാരാളം റൂമുകളുണ്ട്. ഡയറക്റ്ററി പരിശാധിക്കൂ!", + "Building services on Matrix": "മട്രിക്സിന്മേൽ സർവീസുകൾ പണിയുന്നു", + "Implementing VR services with Matrix": "മട്രിക്സ് ഉപയോഗിച്ചു വി.അർ. സർവീസുകൾ നടപ്പിലാക്കുന്നു", + "Implementing VoIP services with Matrix": "മേട്രിക്സിന്മേൽ VoIP സർവീസുകൾ നടപ്പിലാക്കുന്നു", + "Discussion of the Identity Service API": "ഐഡൻടിറ്റി സർവീസ് എപിഐ യെ പറ്റിയുള്ള ചർച്ച" +} diff --git a/src/i18n/strings/nb_NO.json b/src/i18n/strings/nb_NO.json index 813abc6efb..44f2bf2f95 100644 --- a/src/i18n/strings/nb_NO.json +++ b/src/i18n/strings/nb_NO.json @@ -1,125 +1,16 @@ { - "Add an email address above to configure email notifications": "Legg til en epost adresse for å sette opp epost varsling", - "Advanced notification settings": "Avanserte varslingsinnstillinger", - "All messages": "Alle meldinger", - "All messages (loud)": "Alle meldinger (høy)", - "All notifications are currently disabled for all targets.": "Alle varsler er deaktivert for alle mottakere.", - "An error occurred whilst saving your email notification preferences.": "En feil oppsto i forbindelse med lagring av epost varsel innstillinger.", - "Cancel Sending": "Avbryt sending", - "Can't update user notification settings": "Kan ikke oppdatere brukervarsel innstillinger", - "Close": "Lukk", - "Create new room": "Opprett nytt rom", - "Couldn't find a matching Matrix room": "Kunne ikke finne et samsvarende Matrix rom", - "Safari and Opera work too.": "Safari og Opera fungerer også.", - "Call invitation": "Anropsinvitasjon", - "Collapse panel": "Skjul panel", "Custom Server Options": "Tilpassede serveralternativer", - "customServer_text": "Du kan benytte de egendefinerte serveralternativene til å logge deg på andre Matrix-servere ved å spesifisere en annen Hjemmeserver-URL.
    Dette lar deg benytte Riot med en eksisterende Matrix konto på en annen hjemmeserver.

    Du kan også angi en egendefinert identitetsserver, men du vil ikke kunne invitere brukere via e-post, eller bli invitert via e-post selv.", - "delete the alias.": "Slett aliaset.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Slett rom alias %(alias)s og fjern %(name)s fra katalogen?", - "Direct Chat": "Direkte Chat", - "Directory": "Katalog", - "Download this file": "Last ned filen", - "Drop here %(toAction)s": "Dra hit %(toAction)s", - "Enable audible notifications in web client": "Aktiver lyd-varsel i webklient", - "Enable desktop notifications": "Aktiver skrivebordsvarsler", - "Enable email notifications": "Aktiver e-postvarsler", - "Enable notifications for this account": "Aktiver varsler for denne konto", - "Enable them now": "Aktiver dem nå", - "Enter keywords separated by a comma:": "Angi nøkkelord adskilt med komma:", - "Error": "Feil", - "Error saving email notification preferences": "Feil ved lagring av e-postvarselinnstillinger", - "#example": "#eksempel", - "Expand panel": "Utvid panel", - "Failed to": "Feilet å", - "Failed to add tag %(tagName)s to room": "Kunne ikke legge til tagg %(tagName)s til rom", - "Failed to change settings": "Kunne ikke endre innstillingene", - "Failed to forget room %(errCode)s": "Kunne ikke glemme rommet %(errCode)s", - "Failed to update keywords": "Kunne ikke oppdatere nøkkelord", - "Failed to get protocol list from Home Server": "Kunne ikke hente protokolliste fra Hjemme-Server", - "Failed to get public room list": "Kunne ikke hente offentlig romliste", - "Failed to join the room": "Kunne ikke bli med på rommet", - "Failed to remove tag %(tagName)s from room": "Kunne ikke fjerne tagg %(tagName)s fra rommet", - "Failed to set direct chat tag": "Kunne ikke angi direkte chat-tagg", - "Failed to set Direct Message status of room": "Kunne ikke angi status for direkte melding i rommet", - "Favourite": "Favoritt", - "Fetching third party location failed": "Kunne ikke hente tredjeparts lokalisering", - "Files": "Filer", - "Filter room names": "Filtrer romnavn", - "Forget": "Glem", - " from room": " fra rommet", - "Guests can join": "Gjester kan bli med", - "Guest users can't invite users. Please register to invite.": "Gjester kan ikke invitere brukere. Vennligst registrer deg for å invitere.", - "I understand the risks and wish to continue": "Jeg forstår risikoen og ønsker å fortsette", - "Invite to this room": "Inviter til dette rommet", - "Keywords": "Nøkkelord", - "Leave": "Forlat", - "Low Priority": "Lav Prioritet", - "Members": "Medlemmer", - "Messages containing my display name": "Meldinger som inneholder mitt visningsnavn", - "Messages containing my user name": "Meldinger som inneholder mitt brukernavn", - "Messages in group chats": "Meldinger i gruppesamtaler", - "Messages in one-to-one chats": "Meldinger i en-til-en samtaler", - "Messages sent by bot": "Meldinger sendt av bot", - "more": "mer", - "No rooms to show": "Ingen rom å vise", - "Noisy": "Bråkete", - "Notification targets": "Mål for varsel", - "Notifications": "Varsler", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Varsler på de følgende nøkkelordene følger regler som ikke kan vises her:", - "Notify for all other messages/rooms": "Varsler om alle andre meldinger/rom", - "Notify me for anything else": "Varsle meg om alt annet", - "Off": "Av", - "On": "På", - "Permalink": "Permanent lenke", - "Please install Chrome or Firefox for the best experience.": "Vennligst installer Chrome eller Firefox for den beste opplevelsen.", - "Please Register": "Vennligst registrer deg", "powered by Matrix": "benytter seg av Matrix", - "Quote": "Sitat", - "Redact": "Maskere", - "Reject": "Avvis", - "Remove %(name)s from the directory?": "Fjern %(name)s fra katalogen?", - "Remove": "Fjern", - "remove %(name)s from the directory.": "fjern %(name)s fra katalogen.", - "Remove from Directory": "Fjern fra katalogen", - "Resend": "Send på nytt", - "Riot does not know how to join a room on this network": "Riot vet ikke hvordan man kan komme inn på et rom på dette nettverket", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot benytter mange avanserte nettleserfunksjoner, og noen av disse er ikke tilgjengelige eller er eksperimentelle på din nåværende nettleser.", - "Room directory": "Rom katalog", - "Room not found": "Rommet ble ikke funnet", - "Search for a room": "Søk etter et rom", - "Settings": "Innstillinger", - "Source URL": "Kilde URL", - "Sorry, your browser is not able to run Riot.": "Beklager, din nettleser er ikke i stand til å kjøre Riot.", - "Start chat": "Start chat", - "The Home Server may be too old to support third party networks": "Hjemme-serveren kan være for gammel til å støtte tredjeparts-nettverk", - "There are advanced notifications which are not shown here": "Det er avanserte varsler som ikke vises her", - "The server may be unavailable or overloaded": "Serveren kan være utilgjengelig eller overbelastet", - "This room is inaccessible to guests. You may be able to join if you register.": "Dette rommet er ikke tilgjengelig for gjester. Du kan kanskje komme inn om du registrerer deg.", - " to room": " til rom", - "Unable to fetch notification target list": "Kunne ikke hente varsel-mål liste", - "Unable to join network": "Kunne ikke bli med i nettverket", - "Unable to look up room ID from server": "Kunne ikke slå opp rom-ID fra serveren", - "Unhide Preview": "Vis forhåndsvisning", - "unknown error code": "ukjent feilkode", - "Unnamed room": "Rom uten navn", - "Uploaded on %(date)s by %(user)s": "Lastet opp den %(date)s av %(user)s", - "View Decrypted Source": "Vis dekryptert kilde", - "View Source": "Vis kilde", - "When I'm invited to a room": "Når jeg blir invitert til et rom", - "World readable": "Verden lesbar", - "You cannot delete this image. (%(code)s)": "Du kan ikke slette dette bildet. (%(code)s)", - "You cannot delete this message. (%(code)s)": "Du kan ikke slette denne meldingen. (%(code)s)", - "You are not receiving desktop notifications": "Du mottar ikke skrivebords varsler", - "Messages containing keywords": "Meldinger som inneholder nøkkelord", - "Sunday": "Søndag", - "Monday": "Mandag", - "Tuesday": "Tirsdag", - "Wednesday": "Onsdag", - "Thursday": "Torsdag", - "Friday": "Fredag", - "Saturday": "Lørdag", - "Today": "I dag", - "Yesterday": "I går", - "Welcome page": "Velkomst side" + "Riot is not supported on mobile web. Install the app?": "Riot er ikke støttet av mobil-nettlesere. Ønsker De å innstalere appen?", + "Riot Desktop on %(platformName)s": "Riot på skrivebordet er på %(platformName)s", + "Unknown device": "Ukjent enhet", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s på %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "De er nødt til å benytte HTTPS for å kunne ha en samtale med skjermdeling.", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "De kan benytte brukerdefinerte server-innstillinger for å kunne logge Dem inn på andre Matrix-servere ved å spesifisere en annen hjemmeserver-adresse.
    Dette tillater Dem til å bruke Riot med en eksisterende Matrix-konto på en annen hjemmeserver.

    De kan i tillegg definere en egen hjemmeserver-identitet, men De kan da ikke invitere andre brukere via email, og De kan heller ikke bli invitert via email selv.", + "Dismiss": "Avvis", + "Welcome to Riot.im": "Velkommen skal De være til Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Desentralisert, kryptert nettprat & sammabeid drevet av [matrix]", + "Search the room directory": "Søk i romutvalget", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Allerede finnes det alskens rom i Matrix, sammenkoblet til eksisterende nettverk (Slack, IRC, Gitter osv.) eller selvstendig. Dersom De formoder, kan De kikke på utvalget!", + "Chat with Riot Bot": "Nettprat med Riot Bot" } diff --git a/src/i18n/strings/ne.json b/src/i18n/strings/ne.json new file mode 100644 index 0000000000..9e26dfeeb6 --- /dev/null +++ b/src/i18n/strings/ne.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/src/i18n/strings/nl.json b/src/i18n/strings/nl.json index 3ecffb3e72..74e2102526 100644 --- a/src/i18n/strings/nl.json +++ b/src/i18n/strings/nl.json @@ -1,125 +1,39 @@ { - "Add an email address above to configure email notifications": "Voeg een email adres toe om email notificaties te ontvangen", - "Advanced notification settings": "Geavanceerde notificatie instellingen", - "All messages": "Alle berichten", - "All messages (loud)": "Alle berichten (luid)", - "All notifications are currently disabled for all targets.": "Alle notificaties zijn op het moment uitgeschakeld voor alle doelen.", - "An error occurred whilst saving your email notification preferences.": "Er is een fout ontstaan tijdens het opslaan van jouw email notificatie voorkeuren.", - "Call invitation": "Audio gesprek uitnodiging", - "Cancel Sending": "Annuleren verzending", - "Can't update user notification settings": "Het is niet gelukt om de gebruiker notificatie instellingen bij te werken", - "Close": "Sluiten", - "Create new room": "Maak een nieuwe kamer", - "Couldn't find a matching Matrix room": "Het is niet gelukt om een bijbehorende Matrix kamer te vinden", - "Custom Server Options": "Aangepaste server instellingen", - "customServer_text": "Je kunt de aangepaste server instellingen gebruiken om in te loggen bij andere Matrix servers door een andere home server URL in te voeren.
    Dit maakt het mogelijk om Riot te gebruiken met een bestaand Matrix account op een andere home server.

    Je kunt ook een aangepaste identiteit server instellen, maar het is dan niet mogelijk om gebruikers uit te nodigen met behulp van een email adres of zelf uitgenodigt te worden met een email adres.", - "delete the alias.": "verwijder de alias.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Verwijder de alias %(alias)s en verwijder %(name)s uit de map?", - "Direct Chat": "Privé gesprek", - "Directory": "Kamer lijst", + "Custom Server Options": "Aangepaste serverinstellingen", "Dismiss": "Afwijzen", - "Download this file": "Download dit bestand", - "Enable audible notifications in web client": "Zet notificaties aan in de web client", - "Enable desktop notifications": "Zet desktop notificaties aan", - "Enable email notifications": "Zet email notificaties aan", - "Enable notifications for this account": "Zet notificaties aan voor dit account", - "Enable them now": "Zet ze nu aan", - "Enter keywords separated by a comma:": "Voeg trefwoorden toe, gesplitst door een komma:", - "Error": "Fout", - "Error saving email notification preferences": "Fout bij het opslaan van de email notificatie voorkeuren", - "#example": "#voorbeeld", - "Failed to": "Mislukt om", - "Failed to add tag %(tagName)s to room": "Mislukt om de label %(tagName)s aan de kamer toe te voegen", - "Failed to change settings": "Het is mislukt om de instellingen te wijzigen", - "Failed to forget room %(errCode)s": "Het is mislukt om de kamer te vergeten %(errCode)s", - "Failed to update keywords": "Het is mislukt om de trefwoorden bij te werken", - "Failed to get protocol list from Home Server": "Het is mislukt om de protocol lijst op te halen van de home server", - "Failed to get public room list": "Het is mislukt om de lijst van publieke kamers op te halen", - "Failed to join the room": "Het is mislukt om de kamer toe te treden", - "Failed to remove tag %(tagName)s from room": "Het is mislukt om de label %(tagName)s van de kamer te verwijderen", - "Failed to set direct chat tag": "Het is mislukt om de privé chat label weg te halen", - "Favourite": "Favoriet", - "Fetching third party location failed": "Het ophalen van de locatie van de derde partij is mislukt", - "Files": "Bestanden", - "Filter room names": "Filter kamer namen", - "Forget": "Vergeten", - " from room": " van kamer", - "Guests can join": "Gasten kunnen toe treden", - "Guest users can't invite users. Please register to invite.": "Gasten kunnen geen gebruikers uitnodigen. Om anderen uit te nodigen zult u moeten registreren.", - "Invite to this room": "Uitnodigen voor deze kamer", - "Keywords": "Trefwoorden", - "Leave": "Verlaten", - "Low Priority": "Lage prioriteit", - "Members": "Leden", - "Mentions only": "Alleen vermeldingen", - "Messages containing my display name": "Berichten die mijn weergavenaam bevatten", - "Messages containing my user name": "Berichten die mijn gebruikersnaam bevatten", - "Messages in group chats": "Berichten in groep gesprekken", - "Messages in one-to-one chats": "Berichten in één-op-één gesprekken", - "Messages sent by bot": "Berichten verzonden bij een bot", - "more": "meer", - "Mute": "Dempen", - "No rooms to show": "Geen kamers om te laten zien", - "Noisy": "Luidruchtig", - "Notification targets": "Notificatie doelen", - "Notifications": "Notificaties", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Notificaties op de volgende trefwoorden volgen regels die hier niet kunnen worden laten zien:", - "Notify for all other messages/rooms": "Informeer mij voor alle andere berichten/kamers", - "Notify me for anything else": "Informeer mij voor al het andere", - "Off": "Uit", - "On": "Aan", - "Operation failed": "Actie mislukt", - "Permalink": "Permalink", - "Please Register": "Registreer alsjeblieft", - "powered by Matrix": "aangedreven door Matrix", - "Quote": "Quote", - "Reject": "Afwijzen", - "Remove %(name)s from the directory?": "Verwijder %(name)s uit de kamer lijst?", - "Remove": "Verwijder", - "remove %(name)s from the directory.": "verwijder %(name)s uit de kamer lijst.", - "Remove from Directory": "Verwijder uit de kamer lijst", - "Resend": "Opnieuw verzenden", - "Riot does not know how to join a room on this network": "Riot weet niet hoe het moet toetreden tot een kamer op dit netwerk", - "Room directory": "Kamer lijst", - "Room not found": "De kamer is niet gevonden", - "Search for a room": "Zoek naar een kamer", - "Settings": "Instellingen", - "Source URL": "Bron URL", - "Start chat": "Start gesprek", - "The Home Server may be too old to support third party networks": "De home server is misschien te oud om netwerken van derde partijen te ondersteunen", - "There are advanced notifications which are not shown here": "Er zijn geavanceerde notificaties die hier niet worden laten zien", - "The server may be unavailable or overloaded": "De server is misschien niet beschikbaar of overbeladen", - "This room is inaccessible to guests. You may be able to join if you register.": "Deze kamer is niet toegankelijk voor gasten. Je zou misschien toe kunnen treden als je geregistreerd bent.", - " to room": " naar kamer", - "Unable to fetch notification target list": "Het is mislukt om de lijst van notificatie doelen op te halen", - "Unable to join network": "Het is mislukt om toe te treden tot dit netwerk", - "Unable to look up room ID from server": "Het is mislukt om de kamer ID op te halen van de server", - "Unhide Preview": "Zichtbaar maken preview", - "unknown error code": "niet bekende foutcode", - "Unnamed room": "Kamer zonder naam", - "Uploaded on %(date)s by %(user)s": "Geüpload op %(date)s door %(user)s", - "View Decrypted Source": "Bekijk gedecodeerde bron", - "View Source": "Bekijk bron", - "When I'm invited to a room": "Wanneer ik uitgenodigt wordt naar een kamer", - "World readable": "Door iedereen leesbaar", - "You cannot delete this image. (%(code)s)": "Je kunt deze afbeelding niet verwijderen. (%code)s)", - "You cannot delete this message. (%(code)s)": "Je kunt dit bericht niet verwijderen. (%(code)s)", - "You are not receiving desktop notifications": "Je ontvangt momenteel geen desktop notificaties", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Je hebt ze mogelijk ingesteld in een andere client dan Riot. Je kunt ze niet aanpassen in Riot maar ze zijn wel actief", - "Sunday": "Zondag", - "Monday": "Maandag", - "Tuesday": "Dinsdag", - "Wednesday": "Woensdag", - "Thursday": "Donderdag", - "Friday": "Vrijdag", - "Saturday": "Zaterdag", - "Today": "Vandaag", - "Yesterday": "Gisteren", - "Welcome page": "Welkom pagina", - "Drop here %(toAction)s": "%(toAction)s hier naar toe verplaatsen", - "Failed to set Direct Message status of room": "Het is mislukt om de directe berichten status van de kamer in te stellen", - "Redact": "Redigeren", - "A new version of Riot is available.": "Nieuwe Riot versie is beschikbaar.", - "All Rooms": "Alle Kamers", - "Cancel": "Annuleer" + "powered by Matrix": "mogelijk gemaakt door Matrix", + "Riot Desktop on %(platformName)s": "Riot Desktop op %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "Riot wordt niet ondersteund op het mobiele web. Wil je de app installeren?", + "Unknown device": "Onbekend apparaat", + "You need to be using HTTPS to place a screen-sharing call.": "U moet HTTPS gebruiken om een oproep met schermdelen te kunnen starten.", + "Welcome to Riot.im": "Welkom bij Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Gedecentaliseerd en versleuteld chatten & samenwerken mogelijk gemaakt door [matrix]", + "Search the room directory": "De kamerlijst doorzoeken", + "Chat with Riot Bot": "Met Riot Bot chatten", + "Get started with some tips from Riot Bot!": "Begin met enkele tips van Riot Bot!", + "General discussion about Matrix and Riot": "Algemene discussie over Matrix en Riot", + "Discussion of all things Matrix!": "Discussie over alles wat met Matrix te maken heeft!", + "Riot/Web & Desktop chat": "Riot/Web & Desktop-chat", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk-chat", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk-chat", + "Matrix technical discussions": "Technische discussies over Matrix", + "Running Matrix services": "Matrixdiensten beheren", + "Community-run support for Synapse": "Synapse-ondersteuning vanuit de gemeenschap", + "Admin support for Dendrite": "Beheerondersteuning voor Dendrite", + "Announcements about Synapse releases": "Aankondigingen over Synapse-uitgaven", + "Support for those using and running matrix-appservice-irc": "Ondersteuning voor gebruikers en beheerders van matrix-appservice-irc", + "Building services on Matrix": "Diensten op Matrix bouwen", + "Support for those using the Matrix spec": "Ondersteuning voor gebruikers van Matrix-specificatie", + "Contributing code to Matrix and Riot": "Code bijdragen aan Matrix en Riot", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Veel kamers bestaan al in Matrix, gelinkt aan bestaande netwerken (Slack, IRC, Gitter, enz.) of onafhankelijk. Bekijk de kamerlijst!", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s op %(osName)s", + "Design and implementation of E2E in Matrix": "Ontwerp en implementatie van E2E in Matrix", + "Implementing VR services with Matrix": "Implementatie van VR-diensten met Matrix", + "Implementing VoIP services with Matrix": "Implementatie van VoIP-diensten met Matrix", + "Discussion of the Identity Service API": "Discussie over de Identity Service API", + "Support for those using, running and writing other bridges": "Ondersteuning voor het gebruiken, draaien en ontwikkelen aan andere bruggen", + "Dev chat for the Riot/Web dev team": "Dev-chat voor het Riot/Web ontwikkelteam", + "Dev chat for the Dendrite dev team": "Dev-chat voor het Dendrite-ontwikkelteam", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Je kan de custom server opties gebruiken om op andere Matrix server in te loggen door een andere Home server URL op te geven.
    Dit laat je toe om Riot te gebruiken met een bestaande Matrix account op een andere home server.

    Je kan ook een custom identiteits-server opzetten maar dan kan je geen gebruikers uitnodigen via hun email adres, of zelf uitgenodigd worden via je email adres.", + "Co-ordination for Riot translators": "Coördinatie voor Riot vertalers" } diff --git a/src/i18n/strings/nn.json b/src/i18n/strings/nn.json new file mode 100644 index 0000000000..a94e77e599 --- /dev/null +++ b/src/i18n/strings/nn.json @@ -0,0 +1,39 @@ +{ + "Riot is not supported on mobile web. Install the app?": "Riot er ikkja støtta på mobilnettlesare. Last æppen inn?", + "Riot Desktop on %(platformName)s": "Riot på Skrivebord for %(platformName)s", + "Unknown device": "Ukjend eining", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s gjennom %(browserName)s på %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "Du må bruka HTTPS for å ha ei samtale med skjermdeling.", + "Dismiss": "Avvis", + "powered by Matrix": "Matrixdriven", + "Welcome to Riot.im": "Velkomen til Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Desentralisert, kryptert nettprat & samarbeid driven av [matrix]", + "Search the room directory": "Søk i romutvalet", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Det finst allereie massevis av rom på Matrix, anten lenkja til nettverk som allereie finst (Slack, IRC, Gitter osv.) eller uavhengige. Tak ein titt på utvalet!", + "Chat with Riot Bot": "Nettprat med Riot Bot", + "Get started with some tips from Riot Bot!": "Kom i gang med nokre råd frå Riot Bot!", + "General discussion about Matrix and Riot": "Allmenn meiningsutveksling om Matrix og Riot", + "Discussion of all things Matrix!": "Meiningsutveksling om alt som gjeld Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & Skrivebordsprat", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk-prat", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk-prat", + "Matrix technical discussions": "Teknisk meiningsutveksling om Matrix", + "Running Matrix services": "Å køyra Matrix-tenestar", + "Community-run support for Synapse": "Samfunnsdriven støtte for Synapse", + "Admin support for Dendrite": "Administratorstøtte for Dendrite", + "Announcements about Synapse releases": "Kunngjeringar om Synapse-utgåver", + "Support for those using and running matrix-appservice-irc": "Støtte for dei som brukar og køyrar matrix-appleservice-irc", + "Building services on Matrix": "Byggingstenester på Matrix", + "Support for those using the Matrix spec": "Støtte for dei som brukar Matrix-specen", + "Design and implementation of E2E in Matrix": "E2E-oppbygging og -implementering på Matrix", + "Implementing VR services with Matrix": "Implementering av VR-tenester med Matrix", + "Implementing VoIP services with Matrix": "Implementering av VoIP-tenester med Matrix", + "Discussion of the Identity Service API": "Meiningsutveksling om Identitetstenar-APIen", + "Support for those using, running and writing other bridges": "Støtte for dei som brukar, køyrer og skriv andre bruer", + "Contributing code to Matrix and Riot": "For å bidraga med kode til Matrix og Riot", + "Dev chat for the Riot/Web dev team": "Utviklar-prat for Riot/Web-utviklargruppa", + "Dev chat for the Dendrite dev team": "Utviklar-prat for Dendrite-utviklargruppa", + "Co-ordination for Riot translators": "Samordning for Riot-omsetjare", + "Custom Server Options": "Eigentenar-innstillingar", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Du kan bruka eigentenarinnstillingar til å logga inn på andre Matrixtenarar ved å oppgje ein annan Heimtenar-URL.
    Dette gjer at du kan bruka Riot med ein Matrixbrukar som allereie finst på ein annan heimtenar.

    Du kan òg setja ein eigen identitetstenar men du kjem i so fall ikkje til å kunna byda brukare inn med epost, eller å sjølv verta boden inn med epost." +} diff --git a/src/i18n/strings/pl.json b/src/i18n/strings/pl.json index 953aaa1f94..b182eeb894 100644 --- a/src/i18n/strings/pl.json +++ b/src/i18n/strings/pl.json @@ -1,78 +1,39 @@ { "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s przez %(browserName)s na %(osName)s", - "Safari and Opera work too.": "Safari i Opera też działają.", - "A new version of Riot is available.": "Dostępna jest nowa wersja Riot.", - "Add an email address above to configure email notifications": "Dodaj adres e-mail powyżej, aby skonfigurować powiadomienia e-mailowe", - "Advanced notification settings": "Zaawansowane ustawienia powiadomień", - "All messages": "Wszystkie wiadomości", - "All messages (loud)": "Wszystkie wiadomości (głośno)", - "All Rooms": "Wszystkie pokoje", - "All notifications are currently disabled for all targets.": "Wszystkie powiadomienia są obecnie wyłączone dla wszystkich celów.", - "An error occurred whilst saving your email notification preferences.": "Podczas zapisywania ustawień powiadomień e-mail wystąpił błąd.", - "Call invitation": "Zaproszenie do rozmowy", - "Cancel": "Anuluj", - "Cancel Sending": "Anuluj wysyłanie", - "Can't update user notification settings": "Nie można zaktualizować ustawień powiadomień użytkownika", - "Changelog": "Dziennik zmian", - "Close": "Blisko", - "Collecting app version information": "Zbieranie informacji o wersji aplikacji", - "Collecting logs": "Zbieranie dzienników", - "Create new room": "Utwórz nowy pokój", - "Couldn't find a matching Matrix room": "Nie można znaleźć pasującego pokoju Matrix", "Custom Server Options": "Niestandardowe opcje serwera", - "delete the alias.": "usunąć alias.", - "Describe your problem here.": "Opisz swój problem tutaj.", - "Directory": "Księga adresowa", - "Download this file": "Pobierz plik", - "Welcome page": "Strona powitalna", - "Riot is not supported on mobile web. Install the app?": "Riot nie jest obsługiwany przez mobilną przeglądarkę internetową. Zainstaluj aplikację?", - "Room directory": "Katalog pokojowy", - "Search": "Szukaj", - "Search…": "Szukaj…", - "Search for a room": "Szukaj pokoju", - "Send": "Wysłać", - "Settings": "Ustawienia", - "Collapse panel": "Ukryj panel", - "customServer_text": "Możesz używać opcji serwera niestandardowego do logowania się na inne serwery Matrix, określając inny adres URL serwera domowego.
    Pozwala to na wykorzystanie Riot z istniejącym kontem Matrix na innym serwerze domowym.

    Można również ustawić niestandardowy serwer tożsamości, ale nie będzie można zapraszać użytkowników adresem e-mail, ani być zaproszony przez adres e-mailowy.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Usuń alias %(alias)s i usuń %(name)s z katalogu?", - "Dismiss": "Zdymisjonować", - "Drop here %(toAction)s": "Upuść tutaj %(toAction)s", - "Enable audible notifications in web client": "Włącz dźwiękowe powiadomienia w kliencie internetowym", - "Enable email notifications": "Włącz powiadomienia e-mailowe", - "Enable notifications for this account": "Włącz powiadomienia na tym koncie", - "Enable them now": "Włącz je teraz", - "Enter keywords separated by a comma:": "Wpisz słowa kluczowe oddzielone przecinkami:", - "Error": "Błąd", - "Error saving email notification preferences": "Wystąpił błąd podczas zapisywania ustawień powiadomień e-mailowych", - "#example": "#przykład", - "Expand panel": "Rozwiń panel", - "Failed to": "Nie udało się", - "Failed to add tag %(tagName)s to room": "Nie można dodać tagu %(tagName)s do pokoju", - "Failed to change settings": "Nie udało się zmienić ustawień", - "Failed to forget room %(errCode)s": "Nie mogłem zapomnieć o pokoju %(errCode)s", - "Failed to update keywords": "Nie udało się zaktualizować słów kluczowych", - "Failed to get protocol list from Home Server": "Nie można pobrać listy protokołów z serwera domowego", - "Failed to get public room list": "Nie udało się uzyskać publicznej listy pokojowej", - "Failed to join the room": "Nie udało się dołączyć do pokoju", - "Failed to remove tag %(tagName)s from room": "Nie udało się usunąć tagu %(tagName)s z pokoju", - "Failed to send report: ": "Nie udało się wysłać raportu: ", - "Favourite": "Ulubiony", - "Files": "Pliki", - "Filter room names": "Filtruj nazwy pokojów", - "Forget": "Zapomnij", - "Forward Message": "Przekaż wiadomość", - " from room": " z pokoju", - "Guests can join": "Goście mogą dołączyć", - "Hide panel": "Ukryj panel", - "I understand the risks and wish to continue": "Rozumiem ryzyko i chęć kontynuować", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "W celu zdiagnozowania problemów logi z tego klienta zostaną wysłane wraz z tym raportem o błędzie. Jeśli wolisz wysłać tylko tekst powyżej, proszę odznacz:", - "Invite to this room": "Zaproś do tego pokoju", - "Keywords": "Słowa kluczowe", - "Loading bug report module": "Ładowanie modułu raportu błędów", - "Low Priority": "Niski priorytet", - "Messages containing keywords": "Wiadomości zawierające słowa kluczowe", - "Messages containing my user name": "Wiadomości zawierające mój użytkownik", - "Messages in group chats": "Wiadomości w czatach grupowych", - "Messages sent by bot": "Wiadomości wysłane przez robota", - "more": "więcej" + "Riot is not supported on mobile web. Install the app?": "Riot nie jest obsługiwany przez przeglądarki mobilne. Zainstaluj aplikację?", + "Dismiss": "Zamknij", + "Riot Desktop on %(platformName)s": "Riot Desktop na %(platformName)s", + "powered by Matrix": "napędzany przez Matrix", + "Unknown device": "Nieznane urządzenie", + "You need to be using HTTPS to place a screen-sharing call.": "Musisz używać bezpiecznego protokołu HTTPS aby użyć połączenia współdzielenia ekranu.", + "Welcome to Riot.im": "Witamy w Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Zdecentralizowany, szyfrowany czat & współpraca oparta na [matrix]", + "Search the room directory": "Przeszukaj katalog pokojów", + "Chat with Riot Bot": "Rozmowa z Botem Riota", + "Get started with some tips from Riot Bot!": "Rozpocznij z wskazówkami Riot Bota!", + "General discussion about Matrix and Riot": "Ogólna rozmowa o Matrix i Riot", + "Discussion of all things Matrix!": "Rozmowa o wszystkich sprawach Matrixowych!", + "Matrix technical discussions": "Dyskusje techniczne Matrixa", + "Riot/Web & Desktop chat": "Czat o Riot/Web i Desktop", + "Riot/iOS & matrix-ios-sdk chat": "Czat o Riot/iOS i matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Czat o Riot/Android i matrix-android-sdk", + "Running Matrix services": "Utrzymywanie usług Matrix", + "Community-run support for Synapse": "Wsparcie społeczności dla Synapse", + "Admin support for Dendrite": "Wsparcie administratorskie dla Dendrite", + "Announcements about Synapse releases": "Ogłoszenia na temat Synapse", + "Support for those using and running matrix-appservice-irc": "Wsparcie dla hostujących i korzystających z matrix-appservice-irc", + "Building services on Matrix": "Tworzenie usług w oparciu o Matrix", + "Support for those using the Matrix spec": "Wsparcie dla używających specyfikacji Matrix", + "Design and implementation of E2E in Matrix": "Projektowanie i implementacja szyfrowania klient-klient (end-to-end) w Matrix", + "Implementing VR services with Matrix": "Implementowanie usług wirtualnej rzeczywistości w oparciu o Matrix", + "Implementing VoIP services with Matrix": "Implementowanie usług telefonii internetowej VoIP w oparciu o Matrix", + "Discussion of the Identity Service API": "Dyskusja na temat API Identity Service", + "Support for those using, running and writing other bridges": "Wsparcie dla używających, utrzymujących i piszących inne mosty", + "Contributing code to Matrix and Riot": "Współtworzenie kodu do Matrix lub Riot", + "Dev chat for the Riot/Web dev team": "Czat deweloperów zespołu Riot/Web", + "Dev chat for the Dendrite dev team": "Czat deweloperów zespołu Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Matrix ma wiele, już działających pokoi, połączonych z istniejącymi sieciami, takimi jak Slack, IRC lub Gitter, a także wiele zupełnie niezależnych. Możesz przejrzeć je wszystkie w spisie pokoi!", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Możesz skorzystać z opcji niestandardowego serwera, aby zalogować się na inne serwery Matrix, podając inny adres URL serwera domowego.
    Pozwala to na używanie Riot z istniejącym kontem Matrix na innym serwerze domowym.

    Możesz również ustawić niestandardowy serwer tożsamości, ale nie będziesz w stanie zapraszać użytkowników przez adres e-mail ani otrzymywać zaproszeń na adres e-mail.", + "Co-ordination for Riot translators": "Koordynacja tłumaczy Riot" } diff --git a/src/i18n/strings/pt.json b/src/i18n/strings/pt.json index 63f8500c9c..db6de1436d 100644 --- a/src/i18n/strings/pt.json +++ b/src/i18n/strings/pt.json @@ -1,166 +1,37 @@ { - "Add an email address above to configure email notifications": "Insira um endereço de email no campo acima para configurar as notificações por email", - "All messages": "Todas as mensagens", - "All messages (loud)": "Todas as mensagens (alto)", - "An error occurred whilst saving your email notification preferences.": "Ocorreu um erro ao guardar as suas preferências de notificação por email.", - "Call invitation": "Convite para chamada", - "Cancel Sending": "Cancelar o envio", - "Can't update user notification settings": "Não é possível atualizar as preferências de notificação", - "Close": "Fechar", - "Create new room": "Criar nova sala", - "Couldn't find a matching Matrix room": "Não foi possível encontrar uma sala correspondente no servidor Matrix", "Custom Server Options": "Opções para Servidor Personalizado", - "delete the alias.": "apagar o apelido da sala.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Apagar o apelido %(alias)s da sala e remover %(name)s da lista pública?", - "Direct Chat": "Conversa pessoal", - "Directory": "Diretório", "Dismiss": "Descartar", - "Download this file": "Transferir este ficheiro", - "Drop here %(toAction)s": "Arraste aqui para %(toAction)s", - "Enable audible notifications in web client": "Ativar notificações de áudio no cliente web", - "Enable desktop notifications": "Ativar notificações no desktop", - "Enable email notifications": "Ativar notificações por e-mail", - "Enable notifications for this account": "Ativar notificações para esta conta", - "Enable them now": "Ativar agora", - "Enter keywords separated by a comma:": "Insira palavras-chave separadas por vírgula:", - "Error": "Erro", - "Error saving email notification preferences": "Erro ao guardar as preferências de notificação por e-mail", - "#example:": "#exemplo", - "Failed to": "Falha ao", - "Failed to add tag %(tagName)s to room": "Falha ao adicionar %(tagName)s à sala", - "Failed to change settings": "Falha ao alterar as configurações", - "Failed to forget room %(errCode)s": "Falha ao esquecer a sala %(errCode)s", - "Failed to update keywords": "Falha ao atualizar as palavras-chave", - "Failed to get protocol list from Home Server": "Falha ao obter a lista de protocolos do servidor padrão", - "Failed to get public room list": "Falha ao obter a lista de salas públicas", - "Failed to join the room": "Falha ao entrar na sala", - "Failed to remove tag %(tag)s from room": "Falha ao remover a palavra-chave %(tag)s da sala", - "Failed to set direct chat tag": "Falha ao definir conversa como pessoal", - "Failed to set Direct Message status of room": "Falha em definir a mensagem de status da sala", - "Favourite": "Favorito", - "Fetching third party location failed": "Falha ao obter localização de terceiros", - "Files": "Ficheiros", - "Filter room names": "Filtrar salas por título", - "Forget": "Esquecer", - "Forward Message": "Encaminhar", - " from room": " da sala", - "Guests can join": "Convidados podem entrar", - "Guest users can't invite users. Please register to invite.": "Utilizadores convidados não podem convidar utilizadores. Por favor registe-se para convidar.", - "Invite to this room": "Convidar para esta sala", - "Keywords": "Palavras-chave", - "Leave": "Sair", - "Low Priority": "Baixa prioridade", - "Members": "Membros", - "Mentions only": "Apenas menções", - "Messages containing my display name": "Mensagens contendo o meu nome público", - "Messages containing my user name": "Mensagens contendo o meu nome de utilizador", - "Messages in group chats": "Mensagens em salas", - "Messages in one-to-one chats": "Mensagens em conversas pessoais", - "Messages sent by bot": "Mensagens enviadas por bots", - "more": "mais", - "Mute": "Silenciar", - "No rooms to show": "Não existem salas a serem exibidas", - "Noisy": "Barulhento", - "Notification targets": "Alvos de notificação", - "Notifications": "Notificações", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Notificações sobre as seguintes palavras-chave seguem regras que não podem ser exibidas aqui:", - "Notify for all other messages/rooms": "Notificar para todas as outras mensagens/salas", - "Notify me for anything else": "Notificar-me sobre qualquer outro evento", - "Off": "Desativado", - "On": "Ativado", - "Operation failed": "A operação falhou", - "Permalink": "Link permanente", - "Please Register": "Por favor registe-se", "powered by Matrix": "rodando a partir do Matrix", - "Quote": "Citar", - "Redact": "Remover", - "Reject": "Rejeitar", - "Remove": "Remover", - "Remove %(name)s from the directory?": "Remover %(name)s da lista pública de salas?", - "remove %(name)s from the directory.": "remover %(name)s da lista pública de salas.", - "Remove from Directory": "Remover da lista pública de salas", - "Resend": "Reenviar", - "Riot does not know how to join a room on this network": "O Riot não sabe como entrar numa sala nesta rede", - "Room directory": "Lista de salas públicas", - "Room not found": "Sala não encontrada", - "Search for a room": "Pesquisar por uma sala", - "Settings": "Configurações", - "Source URL": "URL fonte", - "Start chat": "Iniciar conversa", - "The Home Server may be too old to support third party networks": "O servidor pode ser muito antigo para suportar redes de terceiros", - "There are advanced notifications which are not shown here": "Existem notificações avançadas que não são exibidas aqui", - "The server may be unavailable or overloaded": "O servidor pode estar inacessível ou sobrecarregado", - "This room is inaccessible to guests. You may be able to join if you register.": "Esta sala é inacessível para convidados. Poderá conseguir entrar caso se registe.", - " to room": " para sala", - "Unable to fetch notification target list": "Não foi possível obter a lista de alvos de notificação", - "Unable to join network": "Não foi possível juntar-se à rede", - "Unable to look up room ID from server": "Não foi possível obter a identificação da sala do servidor", - "Unhide Preview": "Mostrar a pré-visualização novamente", - "unknown error code": "código de erro desconhecido", - "Unnamed room": "Sala sem nome", - "Uploaded on %(date)s by %(user)s": "Enviada em %(date)s por %(user)s", - "View Decrypted Source": "Ver a fonte decifrada", - "View Source": "Ver a fonte", - "When I'm invited to a room": "Quando sou convidado para uma sala", - "World readable": "Público", - "You cannot delete this image. (%(code)s)": "Não pode apagar esta imagem. (%(code)s)", - "You cannot delete this message. (%(code)s)": "Não pode apagar esta mensagem. (%(code)s)", - "You are not receiving desktop notifications": "Não está a receber notificações de desktop", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Pode ter configurado num outro cliente sem ser o Riot. Não pode ajustá-las no Riot, mas ainda assim elas aplicam-se", - "Sunday": "Domingo", - "Monday": "Segunda-feira", - "Tuesday": "Terça-feira", - "Wednesday": "Quarta-feira", - "Thursday": "Quinta-feira", - "Friday": "Sexta-feira", - "Saturday": "Sábado", - "Today": "Hoje", - "Yesterday": "Ontem", - "#example": "#exemplo", - "Failed to remove tag %(tagName)s from room": "Não foi possível remover a marcação %(tagName)s desta sala", - "Welcome page": "Página de boas-vindas", - "Advanced notification settings": "Configurações avançadas de notificação", - "customServer_text": "Pode usar as opções de servidor personalizado para entrar noutros servidores Matrix especificando para isso um URL de outro Servidor de Base.
    Isto permite que use o Riot com uma conta Matrix que exista noutro Servidor de Base.

    Também pode configurar um servidor de Identidade personalizado mas não poderá convidar utilizadores através do endereço de e-mail, ou ser convidado pelo seu endereço de e-mail.", - "Safari and Opera work too.": "Safari e Opera também funcionam.", - "All notifications are currently disabled for all targets.": "Todas as notificações estão atualmente desativadas para todos os casos.", - "Collapse panel": "Colapsar o painel", - "Expand panel": "Expandir o painel", - "I understand the risks and wish to continue": "Entendo os riscos e pretendo continuar", - "Messages containing keywords": "Mensagens contendo palavras-chave", - "Please install Chrome or Firefox for the best experience.": "Por favor instale Chrome ou Firefox para ter a melhor experiência.", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "O Riot usa muitas funcionalidades avançadas do navegador, algumas das quais não estão disponíveis ou ainda são experimentais no seu navegador atual.", - "Sorry, your browser is not able to run Riot.": "Desculpe, o seu navegador não é capaz de executar o Riot.", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Com o seu navegador atual, a aparência e sensação de uso da aplicação podem estar completamente incorretas, e algumas das funcionalidades poderão não funcionar. Se quiser tentar de qualquer maneira pode continuar, mas está por sua conta com algum problema que possa encontrar!", "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s em %(osName)s", - "A new version of Riot is available.": "Uma nova versão do Riot está disponível.", - "All Rooms": "Todas as salas", - "Cancel": "Cancelar", - "Changelog": "Histórico de alterações", - "Collecting app version information": "A recolher informação da versão da app", - "Collecting logs": "A recolher logs", - "Describe your problem here.": "Descreva o seu problema aqui.", - "Failed to send report: ": "Falha ao enviar o relatório: ", - "Hide panel": "Ocultar o painel", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Para diagnosticar problemas, relatórios deste cliente serão enviados juntamente com esta notificação de falha. Se preferir enviar apenas o texto acima, por favor remova a seleção:", - "Loading bug report module": "A carregar o módulo de relato de erros", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Por favor descreva a falha encontrada. O que fez? O que esperava que acontecesse? O que realmente aconteceu?", - "Please describe the bug and/or send logs.": "Por favor descreva a falha e/ou envie os logs de erro.", - "Report a bug": "Reportar uma falha", "Riot Desktop on %(platformName)s": "Riot para computadores desktop em %(platformName)s", "Riot is not supported on mobile web. Install the app?": "O Riot não é suportado na web para dispositivos móveis. Quer instalar a app?", - "Search": "Pesquisar", - "Search…": "Pesquisar…", - "Send": "Enviar", - "Send logs": "Enviar relatórios de erro", - "This Room": "Esta sala", - "Unavailable": "Indisponível", "Unknown device": "Dispositivo desconhecido", - "Update": "Atualizar", - "Uploading report": "A enviar o relatório", - "What's New": "Novidades", - "What's new?": "O que há de novo?", - "Waiting for response from server": "À espera de resposta do servidor", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "Está a usar o Riot como convidado. Registe-se ou faça login para aceder a mais salas e funcionalidades!", - "OK": "Ok", - "You need to be using HTTPS to place a screen-sharing call.": "Necessita de estar a usar HTTPS para poder iniciar uma chamada com partilha de ecrã." + "You need to be using HTTPS to place a screen-sharing call.": "Necessita de estar a usar HTTPS para poder iniciar uma chamada com partilha de ecrã.", + "Welcome to Riot.im": "Bem-vindo ao Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Chat descentralizado, encriptado & colaborativo alimentado por [matrix]", + "Search the room directory": "Procurar o diretório de salas", + "Chat with Riot Bot": "Falar com o Bot do Riot", + "Get started with some tips from Riot Bot!": "Comece com algumas dicas do Bot do Riot", + "General discussion about Matrix and Riot": "Discussão geral acerca do Matrix e do Riot", + "Discussion of all things Matrix!": "Discussão de tudo o que envolva o Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & Desktop chat", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk chat", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk chat", + "Matrix technical discussions": "Discussões técnicas do Matrix", + "Running Matrix services": "Correr serviços do Matrix", + "Community-run support for Synapse": "Suporte da comunidade para o Synapse", + "Admin support for Dendrite": "Suporte de administração para o Dendrite", + "Announcements about Synapse releases": "Anúncios acerca de lançamentos do Synapse", + "Support for those using and running matrix-appservice-irc": "Suporte para aqueles a correr e a utilizar o matrix-appservice-irc", + "Building services on Matrix": "Construir serviços no Matrix", + "Support for those using the Matrix spec": "Suporte para os utilizadores da especificação do Matrix", + "Design and implementation of E2E in Matrix": "Design e implementação de encriptação ponto-a-ponto (E2E) no Matrix", + "Implementing VR services with Matrix": "Implementar serviços de realidade virtual (VR) com o Matrix", + "Implementing VoIP services with Matrix": "Implementar serviços VoIP com o Matrix", + "Discussion of the Identity Service API": "Discussão da API do serviço de identidade", + "Support for those using, running and writing other bridges": "Suporte para aqueles a usar, correr e desenvolver outras pontes (bridges)", + "Contributing code to Matrix and Riot": "Contribuir código para o Matrix e para o Riot", + "Dev chat for the Riot/Web dev team": "Conversa de desenvolvimento para a equipa do Riot/Web", + "Dev chat for the Dendrite dev team": "Conversa de desenvolvimento para a equipa do Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Já existem muitas salas no Matrix, ligadas a redes já existentes (Slack, IRC, Gitter, etc) ou independentes. Dê uma vista de olhos no diretório!" } diff --git a/src/i18n/strings/pt_BR.json b/src/i18n/strings/pt_BR.json index 0619e52ada..afdfc1604b 100644 --- a/src/i18n/strings/pt_BR.json +++ b/src/i18n/strings/pt_BR.json @@ -1,166 +1,39 @@ { - "Add an email address above to configure email notifications": "Insira um endereço de email no campo acima para configurar suas notificações por email", - "All messages": "Todas as mensagens", - "All messages (loud)": "Todas as mensagens (alto)", - "An error occurred whilst saving your email notification preferences.": "Um erro ocorreu enquanto o sistema estava salvando suas preferências de notificação por email.", - "Call invitation": "Convite para chamada", - "Cancel Sending": "Cancelar o envio", - "Can't update user notification settings": "Não é possível atualizar as preferências de notificação", - "Close": "Fechar", - "Create new room": "Criar nova sala", - "Couldn't find a matching Matrix room": "Não foi possível encontrar uma sala correspondente no servidor Matrix", "Custom Server Options": "Opções para Servidor Personalizado", - "delete the alias.": "apagar o apelido da sala.", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Apagar o apelido %(alias)s da sala e remover %(name)s da lista pública?", - "Direct Chat": "Conversa pessoal", - "Directory": "Diretório", "Dismiss": "Descartar", - "Download this file": "Baixar este arquivo", - "Drop here %(toAction)s": "Arraste aqui %(toAction)s", - "Enable audible notifications in web client": "Ativar notificações de áudio no cliente web", - "Enable desktop notifications": "Ativar notificações no desktop", - "Enable email notifications": "Ativar notificações por email", - "Enable notifications for this account": "Ativar notificações para esta conta", - "Enable them now": "Habilitar agora", - "Enter keywords separated by a comma:": "Coloque cada palavras-chave separada por vírgula:", - "Error": "Erro", - "Error saving email notification preferences": "Erro ao salvar as preferências de notificação por email", - "#example:": "#exemplo", - "Failed to": "Falha ao", - "Failed to add tag %(tagName)s to room": "Falha ao adicionar %(tagName)s à sala", - "Failed to change settings": "Falhou ao mudar as preferências", - "Failed to forget room %(errCode)s": "Falhou ao esquecer a sala %(errCode)s", - "Failed to update keywords": "Falhou ao alterar as palavras-chave", - "Failed to get protocol list from Home Server": "Falha em acessar a lista de protocolos do servidor padrão", - "Failed to get public room list": "Falha ao acessar a lista pública de salas", - "Failed to join the room": "Falhou ao entrar na sala", - "Failed to remove tag %(tag)s from room": "Falha ao remover a palavra-chave %(tag)s da sala", - "Failed to set direct chat tag": "Falha ao definir conversa como pessoal", - "Failed to set Direct Message status of room": "Falha em definir a mensagem de status da sala", - "Favourite": "Favorito", - "Fetching third party location failed": "Falha ao acessar localização de terceiros", - "Files": "Arquivos", - "Filter room names": "Filtrar salas por título", - "Forget": "Esquecer", - "Forward Message": "Encaminhar", - " from room": " da sala", - "Guests can join": "Convidados podem entrar", - "Guest users can't invite users. Please register to invite.": "Usuários convidados não podem convidar outros usuários. Por gentileza se registre para enviar convites.", - "Invite to this room": "Convidar para esta sala", - "Keywords": "Palavras-chave", - "Leave": "Sair", - "Low Priority": "Baixa prioridade", - "Members": "Membros", - "Mentions only": "Apenas menções", - "Messages containing my display name": "Mensagens contendo meu nome público", - "Messages containing my user name": "Mensagens contendo meu nome de usuário", - "Messages in group chats": "Mensagens em salas", - "Messages in one-to-one chats": "Mensagens em conversas pessoais", - "Messages sent by bot": "Mensagens enviadas por bots", - "more": "ver mais", - "Mute": "Mudo", - "No rooms to show": "Não existem salas a serem exibidas", - "Noisy": "Barulhento", - "Notification targets": "Alvos de notificação", - "Notifications": "Notificações", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Notificações sobre as seguintes palavras-chave seguem regras que não podem ser exibidas aqui:", - "Notify for all other messages/rooms": "Notificar para todas as outras mensagens e salas", - "Notify me for anything else": "Notificar-me sobre qualquer outro evento", - "Off": "Desativado", - "On": "Ativado", - "Operation failed": "A operação falhou", - "Permalink": "Link permanente", - "Please Register": "Por favor, cadastre-se", "powered by Matrix": "rodando a partir do Matrix", - "Quote": "Citar", - "Redact": "Remover", - "Reject": "Rejeitar", - "Remove": "Remover", - "Remove %(name)s from the directory?": "Remover %(name)s da lista pública de salas?", - "remove %(name)s from the directory.": "remover %(name)s da lista pública de salas.", - "Remove from Directory": "Remover da lista pública de salas", - "Resend": "Reenviar", - "Riot does not know how to join a room on this network": "O sistema não sabe como entrar na sala desta rede", - "Room directory": "Lista de salas públicas", - "Room not found": "Sala não encontrada", - "Search for a room": "Procurar por uma sala", - "Settings": "Configurações", - "Source URL": "URL fonte", - "Start chat": "Começar conversa", - "The Home Server may be too old to support third party networks": "O servidor pode ser muito antigo para suportar redes de terceiros", - "There are advanced notifications which are not shown here": "Existem opções avançadas que não são exibidas aqui", - "The server may be unavailable or overloaded": "O servidor pode estar inacessível ou sobrecarregado", - "This room is inaccessible to guests. You may be able to join if you register.": "Esta sala é inacessível para convidados. Você poderá entrar caso se registre.", - " to room": " para sala", - "Unable to fetch notification target list": "Não foi possível obter a lista de alvos de notificação", - "Unable to join network": "Não foi possível conectar na rede", - "Unable to look up room ID from server": "Não foi possível buscar identificação da sala no servidor", - "Unhide Preview": "Mostrar a pré-visualização novamente", - "unknown error code": "código de erro desconhecido", - "Unnamed room": "Sala sem nome", - "Uploaded on %(date)s by %(user)s": "Enviada em %(date)s por %(user)s", - "View Decrypted Source": "Ver a fonte descriptografada", - "View Source": "Ver a fonte", - "When I'm invited to a room": "Quando sou convidada(o) a uma sala", - "World readable": "Público", - "You cannot delete this image. (%(code)s)": "Você não pode apagar esta imagem. (%(code)s)", - "You cannot delete this message. (%(code)s)": "Você não pode apagar esta mensagem. (%(code)s)", - "You are not receiving desktop notifications": "Você não está recebendo notificações desktop", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Você pode te-las configurado em outro cliente além do Riot. Você não pode ajustá-las no Riot, mas ainda assim elas se aplicam aqui", - "Sunday": "Domingo", - "Monday": "Segunda", - "Tuesday": "Terça", - "Wednesday": "Quarta", - "Thursday": "Quinta", - "Friday": "Sexta", - "Saturday": "Sábado", - "Today": "Hoje", - "Yesterday": "Ontem", - "#example": "#exemplo", - "Failed to remove tag %(tagName)s from room": "Não foi possível remover a marcação %(tagName)s desta sala", - "Welcome page": "Página de boas vindas", - "Advanced notification settings": "Configurações avançadas de notificação", - "customServer_text": "Você pode usar as opções de servidor personalizado para entrar em outros servidores Matrix, especificando uma URL de outro Servidor de Base.
    Isso permite que você use Riot com uma conta Matrix que exista em outro Servidor de Base.

    Você também pode configurar um servidor de Identidade personalizado, mas neste caso não poderá convidar usuárias(os) pelo endereço de e-mail, ou ser convidado(a) pelo seu endereço de e-mail.", - "Safari and Opera work too.": "Safari e Opera funcionam também.", - "All notifications are currently disabled for all targets.": "Todas as notificações estão atualmente desabilitadas para todos os casos.", - "Collapse panel": "Colapsar o painel", - "Expand panel": "Expandir o painel", - "I understand the risks and wish to continue": "Entendo os riscos e desejo continuar", - "Messages containing keywords": "Mensagens contendo palavras-chave", - "Please install Chrome or Firefox for the best experience.": "Por favor instale Chrome ou Firefox para ter a melhor experiência de uso.", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "O Riot usa muitas funcionalidades avançadas do navegador, algumas das quais não estão disponíveis ou ainda são experimentais no seu navegador atual.", - "Sorry, your browser is not able to run Riot.": "Perdão. O seu navegador não é capaz de rodar o Riot.", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Com o seu navegador atual, a aparência e sensação de uso da aplicação podem estar completamente incorretas, e algumas das funcionalidades poderão não funcionar. Se você quiser tentar de qualquer maneira, pode continuar, mas aí vai ter que se virar sozinho(a) com os problemas que porventura encontrar!", "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s em %(osName)s", - "A new version of Riot is available.": "Uma nova versão do Riot está disponível.", - "All Rooms": "Todas as salas", - "Cancel": "Cancelar", - "Changelog": "Histórico de alterações", - "Collecting app version information": "Coletando informação sobre a versão do app", - "Collecting logs": "Coletando logs", - "Describe your problem here.": "Descreva o seu problema aqui.", - "Failed to send report: ": "Falha ao enviar o relatório: ", - "Hide panel": "Ocultar o painel", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Para diagnosticar problemas, relatórios deste cliente serão enviados junto a esta notificação de falha. Se você prefere apenas enviar o seu texto acima, por favor des-selecione:", - "Loading bug report module": "Carregando o módulo de relatórios de erros", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Por favor, descreva a falha encontrada. O que você estava fazendo? O que você esperava que devia ocorrer? E o que aconteceu efetivamente?", - "Please describe the bug and/or send logs.": "Por favor, descreva as falhas e/ou envie os logs de erro.", - "Report a bug": "Reportar uma falha", "Riot Desktop on %(platformName)s": "Riot para computadores desktop em %(platformName)s", "Riot is not supported on mobile web. Install the app?": "Riot versão web não é suportado a partir de celular. Quer instalar o app para celular?", - "Search": "Buscar", - "Search…": "Buscar…", - "Send": "Enviar", - "Send logs": "Enviar relatórios de erro", - "This Room": "Esta sala", - "Unavailable": "Indisponível", "Unknown device": "Dispositivo desconhecido", - "Update": "Atualizar", - "Uploading report": "Enviando o relatório", - "What's New": "Novidades", - "What's new?": "O que há de novidades?", - "Waiting for response from server": "Esperando por resposta do servidor", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "Você está usando o Riot como visitante. Registre-se ou faça login para acessar mais salas e funcionalidades!", - "OK": "Ok", - "You need to be using HTTPS to place a screen-sharing call.": "Você precisa estar usando HTTPS para poder iniciar uma chamada com compartilhamento de tela." + "You need to be using HTTPS to place a screen-sharing call.": "Você precisa estar usando HTTPS para poder iniciar uma chamada com compartilhamento de tela.", + "Welcome to Riot.im": "Seja bem-vinda(o) a Riot.im", + "Search the room directory": "Buscar na lista pública de salas", + "Chat with Riot Bot": "Conversar com o Bot do Riot", + "Get started with some tips from Riot Bot!": "Comece com algumas dicas do Bot do Riot!", + "General discussion about Matrix and Riot": "Discussão geral sobre o Matrix e o Riot", + "Discussion of all things Matrix!": "Discussão sobre todas as coisas do Matrix!", + "Riot/Web & Desktop chat": "Riot/chat da web e do computador desktop", + "Riot/iOS & matrix-ios-sdk chat": "Riot/chat do iOS e do matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Riot/Chat do Android e do matrix-android-sdk", + "Matrix technical discussions": "Discussões técnicas do Matrix", + "Running Matrix services": "Rodando serviços Matrix", + "Community-run support for Synapse": "Apoio ao Synapse gerido pela comunidade", + "Admin support for Dendrite": "Suporte de administração para Dendrite", + "Announcements about Synapse releases": "Anúncios sobre lançamentos do Synapse", + "Support for those using and running matrix-appservice-irc": "Apoio para as pessoas usando e rodando matrix-appservice-irc", + "Building services on Matrix": "Construindo serviços no Matrix", + "Support for those using the Matrix spec": "Apoio para as pessoas que estão usando as especificações Matrix", + "Design and implementation of E2E in Matrix": "Design e implementação de criptografia ponta-a-ponta (E2E) no Matrix", + "Implementing VR services with Matrix": "Implementando serviços de Realidade Virtual (VR) com Matrix", + "Implementing VoIP services with Matrix": "Implementando serviços VoIP com Matrix", + "Discussion of the Identity Service API": "Discussão do API do Serviço de Identidades", + "Support for those using, running and writing other bridges": "Apoio para as pessoas que estejam usando, rodando e escrevendo outras pontes (bridges)", + "Contributing code to Matrix and Riot": "Contribuindo com código para o Matrix e o Riot", + "Dev chat for the Riot/Web dev team": "Chat de desenvolvimento para o time devel do Riot/Web", + "Dev chat for the Dendrite dev team": "Chat de desenvolvimento para o time devel do Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Muitas salas já existem no Matrix, algumas independentes, e outras relacionadas a redes existentes (tais como Slack, IRC, Gitter, entre outras). Dê uma olhada na lista de salas públicas!", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Chat descentralizado, criptografado e colaborativo impulsionado por [matrix]", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Você pode usar as opções customizadas de servidor para conectar-se a outros servidores Matrix ao especificar uma outra URL de Servidor de Base (homeserver).
    Isso permite que você use o Riot com uma conta Matrix existente em outro servidor de base.

    Você também pode definir um servidor de identidade customizado, mas neste caso você não poderá convidar outras pesoas por endereço de email, ou ser convidada/o pelo seu endereço de email.", + "Co-ordination for Riot translators": "Coordenação para tradutores Riot" } diff --git a/src/i18n/strings/ro.json b/src/i18n/strings/ro.json new file mode 100644 index 0000000000..519b1a73b3 --- /dev/null +++ b/src/i18n/strings/ro.json @@ -0,0 +1,39 @@ +{ + "Riot is not supported on mobile web. Install the app?": "Riot nu functionează pe mobil. Instalezi aplicaţia?", + "Riot Desktop on %(platformName)s": "Riot Desktop pe %(platformName)s", + "Unknown device": "Device necunoscut", + "Custom Server Options": "Opțiuni Server Personalizate", + "Dismiss": "Închide", + "powered by Matrix": "propulsat de Matrix", + "Welcome to Riot.im": "Bun venit pe Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Chat decentralizat, criptat & colaborare propulsata de [matrix]", + "Search the room directory": "Caută în lista de camere", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Multe camere există deja in Matrix, conectate la rețele existente (Slack, IRC, Gitter etc) sau independente. Aruncă o privite in lista de camere!", + "Chat with Riot Bot": "Discută cu Riot Bot", + "Get started with some tips from Riot Bot!": "Începe cu câteva ponturi din partea Riot Bot!", + "General discussion about Matrix and Riot": "Discuție generală despre Matrix și Riot", + "Discussion of all things Matrix!": "Discuții despre toate subiectele Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & Chat pentru desktop", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & chat pentru matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & chat pentru matrix-android-sdk", + "Matrix technical discussions": "Discuții tehnice Matrix", + "Running Matrix services": "Rularea serviciilor Matrix", + "Community-run support for Synapse": "Suport cu ajutorul comunității pentru Synapse", + "Admin support for Dendrite": "Suport Administrare pentru Dendrite", + "Announcements about Synapse releases": "Anunțuri despre lansări Synapse", + "Support for those using and running matrix-appservice-irc": "Suport pentru cei care utilizează și rulează matrix-appservice-irc", + "Building services on Matrix": "Construirea serviciilor cu Matrix", + "Support for those using the Matrix spec": "Suport pentru cei ce utilizează specificațiile Matrix", + "Design and implementation of E2E in Matrix": "Designul și planificarea E2E în Matrix", + "Implementing VR services with Matrix": "Implementarea serviciilor VR cu Matrix", + "Implementing VoIP services with Matrix": "Implementarea serviciilor VoIP cu Matrix", + "Discussion of the Identity Service API": "Discuții despre API-ul Serviciul de Identitate", + "Support for those using, running and writing other bridges": "Suport pentru cei ce folosesc, rulează și programeaza alți conectori", + "Contributing code to Matrix and Riot": "Contribuirea codului pentru Matrix și Riot", + "Dev chat for the Riot/Web dev team": "Chat pentru echipa de dezvoltare Riot/Web", + "Dev chat for the Dendrite dev team": "Chat pentru echipa de dezvoltare Dendrite", + "Co-ordination for Riot translators": "Coordonare pentru translatorii Riot", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s pe %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "Trebuie să folosești HTTPS pentru a plasa un apel de tip screen-sharing.", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Poți folosi opțiunile server personalizate pentru a te conecta la alte servere Matrix prin specificarea unui URL de tip Home server diferit.
    Acestă opțiune îți permite să utilizezi Riot cu un cont existent pe un home server diferit.

    Poți folosi și un server de identitate personalizat, dar nu vei putea invita alți utilizatori prin adresa de email sau să fii tu însuți invitat prim email." +} diff --git a/src/i18n/strings/ru.json b/src/i18n/strings/ru.json index cc5ca1e861..95242e83b8 100644 --- a/src/i18n/strings/ru.json +++ b/src/i18n/strings/ru.json @@ -1,171 +1,39 @@ { - "Add an email address above to configure email notifications": "Добавьте email адрес для оповещений", - "All notifications are currently disabled for all targets.": "Все оповещения отключены.", - "An error occurred whilst saving your email notification preferences.": "Возникла ошибка при сохранении настроек оповещения по электронной почте.", - "and remove": "и удалить", - "Can't update user notification settings": "Не возможно обновить пользовательские настройки оповещения", - "Create new room": "Создать комнату", - "Couldn't find a matching Matrix room": "Не возможно найти подходящую Матрикс комнату", - "Custom Server Options": "Расширенные настройки сервера", - "delete the alias.": "удалить привязку.", - "Delete the room alias": "Удалить привязку комнаты", - "Direct Chat": "Персональное сообщение", - "Directory": "Каталог", - "Dismiss": "Отказ", - "Drop here to": "Перетащите сюда", - "Enable audible notifications in web client": "Включить звуковые оповещения в веб клиенте", - "Enable desktop notifications": "Включить оповещения на рабочем столе", - "Enable email notifications": "Включить оповещения по электронной почте", - "Enable notifications for this account": "Включить оповещения для этого аккаунта", - "Enable them now": "Включить сейчас", - "Enter keywords separated by a comma:": "Введите ключевые слова, разделенные запятой:", - "Error": "Ошибка", - "Error saving email notification preferences": "Ошибка сохранения настроек оповещений по электронной почте", - "#example": "#пример", - "Failed to": "Не удалось", - "Failed to add tag ": "Не удалось добавить тег ", - "Failed to change settings": "Не удалось изменить настройки", - "Failed to update keywords": "Не удалось обновить ключевые слова", - "Failed to get protocol list from Home Server": "Не удалось получить список протоколов с Пользовательского Сервера", - "Failed to get public room list": "Не удалось получить список открытых комнат", - "Failed to join the room": "Не удалось войти в комнату", - "Failed to remove tag ": "Не удалось удалить тег ", - "Failed to set Direct Message status of room": "Не удалось задать статус комнаты Персональное Сообщение", - "Favourite": "Избранное", - "Fetching third party location failed": "Не удалось получить местоположение", - "Files": "Файлы", - "Filter room names": "Фильтр по назв. комнаты", - "Forget": "Забыть", - "from the directory": "из каталога", - " from room": " из комнаты", - "Guests can join": "Гость может присоединиться", - "Guest users can't invite users. Please register to invite.": "Гость не может приглашать пользователей. Зарегистрируйтесь для приглошений.", - "Invite to this room": "Пригласить в эту комнату", - "Keywords": "Ключевые слова", - "Leave": "Покинуть", - "Low Priority": "Низкий приоритет", - "Members": "Пользователи", - "No rooms to show": "Нет комнат для отображения", - "Noisy": "Звук", - "Notification targets": "Цели уведомления", - "Notifications": "Уведомления", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Уведомления по следующим ключевым словам соответствуют правилам, которые нельзя отобразить здесь:", - "Notify for all other messages/rooms": "Уведомить обо всех других сообщениях/комнатах", - "Notify me for anything else": "Уведомить меня обо всем кроме", - "Off": "Выключить", - "On": "Включить", - "Operation failed": "Действие не удалось", - "Please Register": "Пожалуйста, зарегистрируйтесь", - "powered by Matrix": "управляемый с Matrix", - "Reject": "Отклонить", - "Remove": "Удалить", - "remove": "удалить", - "Remove from Directory": "Удалить из каталога", - "Riot does not know how to join a room on this network": "Riot не знает как войти в комнату в этой сети", - "Room directory": "Каталог комнат", - "Room not found": "Комната не найдена", - "Search for a room": "Искать комнату", - "Settings": "Настройки", - "Start chat": "Начать чат", - "The Home Server may be too old to support third party networks": "Пользовательский сервер может быть слишком старым для поддержки сторонних сетей", - "There are advanced notifications which are not shown here": "Существуют расширенные уведомления, которые здесь не показаны", - "The server may be unavailable or overloaded": "Возможно сервер недоступен или перегружен", - "This room is inaccessible to guests. You may be able to join if you register.": "Эта комната недоступна для гостей. Вы можете присоединиться, если зарегистрируетесь.", - " to room": " к комнате", - "Unable to fetch notification target list": "Не удалось получить список целей уведомления", - "Unable to join network": "Не возможно присоединиться к сети", - "Unable to look up room ID from server": "Не возможно найти ID комнаты на сервере", - "unknown error code": "неизвестная ошибка", - "Unnamed room": "Комната без названия", - "World readable": "Доступно всем", - "You are not receiving desktop notifications": "Вы не получаете уведомления на рабочем столе", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Вы могли настроить их в клиенте, отличном от Riot. Вы не можете настроить их в Riot, но они все еще применяются", - "All messages": "Все сообщения", - "All messages (loud)": "Все сообщения (громко)", - "Cancel Sending": "Отмена отправки", - "Close": "Закрыть", - "Download this file": "Скачать этот файл", - "Drop here %(toAction)s": "Вставить сюда: %(toAction)s", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Удалить псевдоним комнаты %(alias)s и очистить %(name)s из каталога?", - "Failed to add tag %(tagName)s to room": "Не удалось добавить тег %(tagName)s в комнату", - "Failed to forget room %(errCode)s": "Не удалось забыть комнату %(errCode)s", - "Failed to remove tag %(tagName)s from room": "Не удалось убрать пометку %(tagName)s из комнаты", - "Failed to set direct chat tag": "Не удалось пометить прямую беседу", - "Unhide Preview": "Показать предпросмотр", - "Uploaded on %(date)s by %(user)s": "Загружено %(date)s %(user)s", - "View Decrypted Source": "Просмотр зашифрованного источника", - "View Source": "Просмотр источника", - "You cannot delete this image. (%(code)s)": "Вы не можете удалить это изображение. (%(code)s)", - "You cannot delete this message. (%(code)s)": "Вы не можете удалить это сообщение. (%(code)s)", - "Sunday": "Воскресенье", - "Monday": "Понедельник", - "Tuesday": "Вторник", - "Wednesday": "Среда", - "Thursday": "Четверг", - "Friday": "Пятница", - "Saturday": "Суббота", - "Today": "Сегодня", - "Yesterday": "Вчера", - "Mentions only": "Только упоминание", - "Mute": "Беззвучный", - "Permalink": "Пстоянная ссылка", - "Quote": "Цитата", - "Redact": "Удалить", - "Remove %(name)s from the directory?": "Удалить %(name)s из каталога?", - "remove %(name)s from the directory.": "удалить %(name)s из каталога.", - "Resend": "Переслать снова", - "Source URL": "Исходный URL", - "Welcome page": "Домашняя страница", - "Advanced notification settings": "Настройки уведомлений", - "Call invitation": "Звонок", - "customServer_text": "Вы можете войти с помощью вашего сервера.
    Это позволяет вам использовать Riot с уже существующей учетной записью на другом сервере.

    Вы также можете задать свой сервер идентификации, но тогда вы не можете приглашать пользователей с помощью email-адреса и не можете быть приглашены по нему.", - "Messages containing my display name": "Сообщения, содержащие мое отображаемое имя", - "Messages containing my user name": "Сообщение, содержащие мое имя пользователя", - "Messages in group chats": "Сообщения в групповых чатах", - "Messages in one-to-one chats": "Сообщения в приватных чатах", - "Messages sent by bot": "Сообщения, отправленные ботом", - "more": "больше", - "When I'm invited to a room": "Когда я приглашен в комнату", - "A new version of Riot is available.": "Доступна новая версия Riot.", - "All Rooms": "Все комнаты", - "Cancel": "Отмена", - "Changelog": "Истоея изменений", - "Collapse panel": "Закрыпть панель", - "Collecting app version information": "Сбор информации о версиях программы", - "Collecting logs": "Сбор протоколов", + "Custom Server Options": "Выбор другого сервера", + "Dismiss": "Отклонить", + "powered by Matrix": "Основано на Matrix", "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s с %(browserName)s на %(osName)s", - "Safari and Opera work too.": "Safari и Opera работают тоже.", - "Describe your problem here.": "Опиши здесь свою проблему.", - "Expand panel": "Открыть панель", - "Failed to send report: ": "Не удалось отослать отчет: ", - "Forward Message": "Переслать сообщение дальше", - "Hide panel": "Скрыть панель", - "I understand the risks and wish to continue": "Я понимаю риск и хочу продолжыть", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Что бы выявить проблему, будет отослан журнал этого клиента с сообщением о ошыбке. Если ты только верхний текст отослать хочешь, отключи следующее:", - "Loading bug report module": "Загрузи Модуль ошыбок", - "Messages containing keywords": "Сообщения, которые содержат определенный ключевые слова", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Пожалуйста опишы (на Английском) ошыбку. Что ты делал? Что ты ожыдал получить? Что произошло?", - "Please describe the bug and/or send logs.": "Пожалуйста опишы ошибку и/или перешли протоколы.", - "Please install Chrome or Firefox for the best experience.": "Пожалуйста проинсталируй Chrome или Firefox для лутшего результата.", - "Report a bug": "Отчет о ошыбке", "Riot Desktop on %(platformName)s": "Riot Desktop на %(platformName)s", - "Riot is not supported on mobile web. Install the app?": "Riot не будет на мобильном Интернете работать. Программу инсталлировать?", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot использует некоторые расширенные фукции интернет-проводника - некоторые из них отсутствуют или экспериментальные в этом проводнике.", - "Search": "Поиск", - "Search…": "Поиск.…", - "Send": "Отослать", - "Send logs": "Отослать протокол", - "Sorry, your browser is not able to run Riot.": "Извените, ваш браузер не может Riot запустить.", - "This Room": "Эта комната", - "Unavailable": "Недоступен", + "Riot is not supported on mobile web. Install the app?": "Веб-сайт Riot не адаптирован для мобильных устройств. Установить приложение?", "Unknown device": "Неизвестное устройство", - "Update": "Обновление", - "Uploading report": "Отчет загружается", - "What's New": "Что нового", - "What's new?": "Что нового?", - "Waiting for response from server": "Подождите ответа от сервера", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "Вы пользуетесь Riot как гость. Зарегистрируйтесь или войдите в систему и плучите доступ к огромному количеству комнат и функций!", - "OK": "ОК", - "You need to be using HTTPS to place a screen-sharing call.": "Вы должны пользоваться HTTPS чтобы пользоваться видиозвонком.", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Еали ваш браузер не корректно отображает информацию и все или некоторые фукции отключены, вы можете и дальше этим браузеом пользоваться но но ваши проблемы останутся с вами!" + "You need to be using HTTPS to place a screen-sharing call.": "Для трансляции рабочего стола требуется использование HTTPS.", + "Welcome to Riot.im": "Добро пожаловать на Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Децентрализованный, зашифрованный чат и совместное рабочее пространство на основе [matrix]", + "Search the room directory": "Поиск в каталоге комнат", + "Chat with Riot Bot": "Пообщаться с ботом Riot", + "Get started with some tips from Riot Bot!": "Начните с советов от бота Riot!", + "General discussion about Matrix and Riot": "Общие разговоры о Matrix и Riot", + "Discussion of all things Matrix!": "Разговоры обо всем, что связано с Matrix!", + "Riot/Web & Desktop chat": "Чат о Riot/Web и Desktop", + "Matrix technical discussions": "Технические разговоры о Matrix", + "Running Matrix services": "Запуск и обслуживание своих серверов Matrix", + "Community-run support for Synapse": "Поддержка Synapse от сообщества", + "Admin support for Dendrite": "Поддержка администраторов Dendrite", + "Building services on Matrix": "Разработка сервисов на основе Matrix", + "Implementing VoIP services with Matrix": "Реализация VoIP-служб на основе Matrix", + "Riot/iOS & matrix-ios-sdk chat": "Чат о Riot/iOS и matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Чат о Riot/Android и matrix-android-sdk", + "Announcements about Synapse releases": "Объявления о релизах Synapse", + "Support for those using and running matrix-appservice-irc": "Поддержка пользователей и администраторов matrix-appservice-irc", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "В Matrix существует множество комнат, как связанных с другими сетями (Slack, IRC, Gitter и пр.), так и самостоятельных. Загляните в каталог!", + "Support for those using the Matrix spec": "Поддержка по вопросам спецификации Matrix", + "Design and implementation of E2E in Matrix": "Разработка и внедрение сквозного шифрования в Matrix", + "Implementing VR services with Matrix": "Реализация сервисов виртуальной реальности (VR) на основе Matrix", + "Discussion of the Identity Service API": "Обсуждение API серверов идентификации", + "Support for those using, running and writing other bridges": "Поддержка пользователей и разработчиков прочих мостов в Matrix", + "Contributing code to Matrix and Riot": "Участие в разработке Matrix и Riot", + "Dev chat for the Riot/Web dev team": "Чат для команды разработчиков Riot/Web", + "Dev chat for the Dendrite dev team": "Чат для команды разработчиков Dendrite", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Вы можете войти на другой сервер Matrix, указав его URL-адрес.
    Это позволяет использовать Riot с учетной записью Matrix на другом сервере.

    Кроме того, можно выбрать другой сервер идентификации, однако в таком случае вы не сможете приглашать пользователей или быть приглашенным по адресу электронной почты.", + "Co-ordination for Riot translators": "Координационный чат для переводчиков Riot" } diff --git a/src/i18n/strings/sk.json b/src/i18n/strings/sk.json new file mode 100644 index 0000000000..e01933b287 --- /dev/null +++ b/src/i18n/strings/sk.json @@ -0,0 +1,39 @@ +{ + "Riot is not supported on mobile web. Install the app?": "Riot nie je podporovaný na mobilných zariadeniach. Želáte si nainštalovať aplikáciu?", + "Riot Desktop on %(platformName)s": "Riot Desktop pre %(platformName)s", + "Unknown device": "Neznáme zariadenie", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s cez %(browserName)s pre %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "Ak si želáte spustiť zdieľanie obrazovky, musíte byť pripojení cez protokol HTTPS.", + "Custom Server Options": "Vlastné možnosti servera", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Vlastné nastavenia servera môžete použiť na pripojenie k iným serverom Matrix a to zadaním URL adresy domovského servera.
    Umožní vám to použiť Riot s už existujúcim Matrix účtom na akomkoľvek domovskom servery.

    Môžete tiež nastaviť vlastný server totožností, no ak tak urobíte, nebudete môcť do konverzácií pozývať používateľov zadaním ich emailovej adresy, ani ostatní nebudú môcť pozvať vás zadaním vašej emailovej adresy.", + "Dismiss": "Zamietnuť", + "powered by Matrix": "poháňa Matrix", + "Welcome to Riot.im": "Víta vás Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentralizovaný, šifrovaný chat a spolupráca na platforme [matrix]", + "Search the room directory": "Prehľadať adresár miestností", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Na Matrixe je k dispozícii množstvo nezávislých diskusných miestností a tiež miestnosti prepojené z iných sietí (Slack, IRC, Gitter atď). Pozrite si adresár!", + "Chat with Riot Bot": "Konverzácia s Riot Bot", + "Get started with some tips from Riot Bot!": "Začnite zopár tipmi v diskusii s Riot Bot!", + "General discussion about Matrix and Riot": "Všeobecná diskusia o Matrix a Riot", + "Discussion of all things Matrix!": "Diskusia o všetkom okolo Matrix!", + "Riot/Web & Desktop chat": "Riot/Web & Desktop chat", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk chat", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk chat", + "Matrix technical discussions": "Technické diskusie o Matrix", + "Running Matrix services": "Prevádzka služieb postavených na Matrix", + "Community-run support for Synapse": "Komunitná podpora pre Synapse", + "Admin support for Dendrite": "Administrátorská podpora pre Dendrite", + "Announcements about Synapse releases": "Oznamy o verziách Synapse", + "Support for those using and running matrix-appservice-irc": "Podpora pre používateľov a prevádzkovateľov matrix-appservice-irc", + "Building services on Matrix": "Stavba služieb na Matrix", + "Support for those using the Matrix spec": "Podpora pre konzumentov špecifikácie Matrix", + "Design and implementation of E2E in Matrix": "Návrh a implementácia E2E pre Matrix", + "Implementing VR services with Matrix": "Implementácia služieb VR s Matrix", + "Implementing VoIP services with Matrix": "Implementácia VoIP služieb s Matrix", + "Discussion of the Identity Service API": "Diskusia o API služby totožností", + "Support for those using, running and writing other bridges": "Podpora pre používateľov, prevádzkovateľov a tvorcov premostení do ďalších sietí", + "Contributing code to Matrix and Riot": "Prispievanie kódu projektom Matrix a Riot", + "Dev chat for the Riot/Web dev team": "Diskusia pre tím vývojárov Riot/Web", + "Dev chat for the Dendrite dev team": "Diskusia pre tím vývojárov Dendrite", + "Co-ordination for Riot translators": "Koordinácia prekladov Riot" +} diff --git a/src/i18n/strings/sq.json b/src/i18n/strings/sq.json new file mode 100644 index 0000000000..5053cb7037 --- /dev/null +++ b/src/i18n/strings/sq.json @@ -0,0 +1,38 @@ +{ + "Riot is not supported on mobile web. Install the app?": "Riot-i nuk mbulohet nën web për celularët. Të instalohet aplikacioni?", + "Riot Desktop on %(platformName)s": "Riot Desktop në %(platformName)s", + "Unknown device": "Pajisje e panjohur", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s përmes %(browserName)s nën %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "Që të bëni një thirrje me ndarje ekrani, duhet të jeni duke përdorur HTTPS-në.", + "Custom Server Options": "Mundësi Vetjake Shërbyesi", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Mund t’i përdorni mundësitë e shërbyesit vetjak për të hyrë në shërbyes të tjerë Matrix, duke dhënë URL-në e një tjetër shërbyesi Home.
    Kjo ju lejon ta përdorni Riot-in me një llogari Matrix ekzistuese në një tjetër shërbyes vatër.

    Mundeni edhe të caktoni një shërbyes vetjak identitetesh, por s’do të jeni në gjendje të ftoni përdorues përmes adresash email, ose të ftoheni ju vetëm përmes adrese email.", + "Dismiss": "Mos e merr parasysh", + "powered by Matrix": "bazuar në Matrix", + "Welcome to Riot.im": "Mirë se vini te Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentralised, encrypted Fjalosje & bashkëpunim i decentralizuar, i fshehtëzuar, bazuar në [matrix]", + "Search the room directory": "Kërkoni te drejtoria e dhomave", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Ka tashmë plot dhoma në Matrix, të lidhura me rrjete ekzistues (Slack, IRC, Gitter, etj) ose të pavarur. Hidhini një sy listës!", + "Chat with Riot Bot": "Fjalosuni me Robotin Riot", + "Get started with some tips from Riot Bot!": "Fillojani me disa ndihmëza nga Roboti Riot!", + "General discussion about Matrix and Riot": "Diskutime të përgjithshme mbi Matrix-in dhe Riot-in", + "Discussion of all things Matrix!": "Diskutime mbi gjithçka të lidhur me Matrix-in!", + "Riot/Web & Desktop chat": "Fjalosje mbi Riot/Web & Desktop", + "Riot/iOS & matrix-ios-sdk chat": "Fjalosje mbi Riot/iOS & matrix-android-sdk", + "Riot/Android & matrix-android-sdk chat": "Fjalosje mbi Riot/Android & matrix-android-sdk", + "Matrix technical discussions": "Diskutime teknike rreth Matrix-it", + "Running Matrix services": "Xhirim shërbimesh Matrix", + "Community-run support for Synapse": "Asistencë për Synapse-in nga bashkësia", + "Admin support for Dendrite": "Asistencë përgjegjësi për Dendrite-in", + "Announcements about Synapse releases": "Njoftime rreth hedhjesh në qarkullim të Synapse-it", + "Support for those using and running matrix-appservice-irc": "Asistencë për ata që përdorin dhe xhirojnë matrix-appservice-irc", + "Building services on Matrix": "Ndërtim shërbimesh mbi Matrix", + "Support for those using the Matrix spec": "Asistencë për ata që përdorin specifikimet Matrix", + "Design and implementation of E2E in Matrix": "Konceptimi dhe sendërtimi i E2E në Matrix", + "Implementing VR services with Matrix": "Sendërtim shërbimesh VR me Matrix-in", + "Implementing VoIP services with Matrix": "Sendërtim shërbimesh VoIP me Matrix-in", + "Discussion of the Identity Service API": "Diskutime mbi Identity Service API", + "Support for those using, running and writing other bridges": "Asistencë për ata që përdorin, xhirojnë ose programojnë ura të tjera", + "Contributing code to Matrix and Riot": "Kontribut me kod te Matrix dhe te Riot", + "Dev chat for the Riot/Web dev team": "Fjalosje mbi zhvillimin, për ekipin e zhvilluesve të Riot/Web-i", + "Dev chat for the Dendrite dev team": "Fjalosje zhvillimi, për ekipin e zhvilluesve të Dendrite-it" +} diff --git a/src/i18n/strings/sr.json b/src/i18n/strings/sr.json new file mode 100644 index 0000000000..053ceb64e9 --- /dev/null +++ b/src/i18n/strings/sr.json @@ -0,0 +1,39 @@ +{ + "Riot is not supported on mobile web. Install the app?": "RIot не ради на мобилном вебу. Инсталирати апликацију?", + "Riot Desktop on %(platformName)s": "Riot стони програм за %(platformName)s", + "Unknown device": "Непознати уређај", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s преко прегледача %(browserName)s на систему %(osName)s", + "You need to be using HTTPS to place a screen-sharing call.": "Морате користити HTTPS да бисте започели позив са дељењем екрана.", + "Custom Server Options": "Прилагођене опције сервера", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Можете користити опције прилагођеног сервера за пријаву у друге Матрикс сервере навођењем другачије адресе кућног сервера.
    Ово вам омогућава да користите Riot са постојећим Матрикс налогомна другом кућном серверу.

    Такође, можете поставити прилагођени идентитески сервер али нећете моћи да позивате кориснике по мејл адреси а ни други вас.", + "Dismiss": "Одбаци", + "powered by Matrix": "покреће Матрикс", + "Welcome to Riot.im": "Добродошли у Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Децентрализовано, шифровано ћаскање и сарадња коју покреће [matrix]", + "Search the room directory": "Претражи фасциклу са собама", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Много соба већ постоји у Матриксу, неке су повезане на постојеће мреже (Slack, IRC, Gitter итд.) а неке независне. Погледајте фасциклу!", + "Chat with Riot Bot": "Ћаскајте са Riot ботом", + "Get started with some tips from Riot Bot!": "Крените уз пар савета од Riot бота!", + "General discussion about Matrix and Riot": "Општи разговори о Матриксу и Riot-у", + "Discussion of all things Matrix!": "Разговори о свим Матрикс стварима!", + "Riot/Web & Desktop chat": "Riot/веб и стоно ћаскање", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS и matrix-ios-sdk ћаскање", + "Riot/Android & matrix-android-sdk chat": "Riot/Андроид и matrix-android-sdk ћаскање", + "Matrix technical discussions": "Технички разговори о Матриксу", + "Running Matrix services": "Покренуте Матрикс услуге", + "Community-run support for Synapse": "Подршка од стране заједнице за Synapse", + "Admin support for Dendrite": "Администраторска подршка за Dendrite", + "Announcements about Synapse releases": "Објаве поводом нових Synapse издања", + "Support for those using and running matrix-appservice-irc": "Подршка за оне који користе и одржавају matrix-appservice-irc", + "Building services on Matrix": "Стварање услуга уз помоћ Матрикса", + "Support for those using the Matrix spec": "Подршка за оне који користе Матрикс спецификацију", + "Design and implementation of E2E in Matrix": "Дизајн и имплементација E2E у Матриксу", + "Implementing VR services with Matrix": "Израда услуга за ВР уз Матрикс", + "Implementing VoIP services with Matrix": "Израда VoIP услуга уз Матрикс", + "Discussion of the Identity Service API": "Разговори о API-ју идентитетског сервиса", + "Support for those using, running and writing other bridges": "Подршка за оне који користе, одржавају и пишу друге мостове", + "Contributing code to Matrix and Riot": "Додавање кода у Матрикс и Riot", + "Dev chat for the Riot/Web dev team": "Програмерско ћаскање за Riot/веб програмерски тим", + "Dev chat for the Dendrite dev team": "Програмерско ћаскање за Dendrite програмерски тим", + "Co-ordination for Riot translators": "Координација за Riot преводиоце" +} diff --git a/src/i18n/strings/sv.json b/src/i18n/strings/sv.json index 146e237d6a..44fa9818d0 100644 --- a/src/i18n/strings/sv.json +++ b/src/i18n/strings/sv.json @@ -1,161 +1,39 @@ { - "Add an email address above to configure email notifications": "Lägg till en epostadress här för att konfigurera epostaviseringar", - "Advanced notification settings": "Avancerade aviseringsinställingar", - "All messages": "Alla meddelanden", - "All messages (loud)": "Alla meddelanden (högljudd)", - "All notifications are currently disabled for all targets.": "Alla aviseringar är för tillfället avstängda för alla mål.", - "An error occurred whilst saving your email notification preferences.": "Ett fel uppstod då epostaviseringsinställningarna sparades.", - "Call invitation": "Inbjudan till samtal", - "Cancel Sending": "Avbryt sändning", - "Can't update user notification settings": "Kan inte uppdatera aviseringsinställningarna", - "Close": "Stäng", - "Create new room": "Nytt rum", - "Couldn't find a matching Matrix room": "Kunde inte hitta ett matchande Matrix-rum", - "Custom Server Options": "Egna serverinställningar", - "customServer_text": "Du kan använda serverinställningarna för att logga in i en annan Matrix-server genom att specifiera en URL till en annan hemserver.
    Så här kan du använda Riot med ett existerande Matrix-konto på en annan hemserver.

    Du kan också specifiera en egen identitetsserver, men du kommer inte att kunna bjuda in andra via epostadress, eller bli inbjuden via epostadress.", - "delete the alias.": "radera adressen.", - "Direct Chat": "Direkt-chatt", - "Directory": "Katalog", + "Custom Server Options": "Anpassade serverinställningar", "Dismiss": "Avvisa", - "Download this file": "Ladda ner filen", - "Drop here %(toAction)s": "Dra hit för att %(toAction)s", - "Enable audible notifications in web client": "Sätt på högljudda aviseringar i webbklienten", - "Enable desktop notifications": "Sätt på skrivbordsaviseringar", - "Enable email notifications": "Sätt på epostaviseringar", - "Enable notifications for this account": "Sätt på aviseringar för det här kontot", - "Enable them now": "Sätt på nu", - "Enter keywords separated by a comma:": "Skriv in nyckelord, separerade med kommatecken:", - "Error": "Fel", - "Error saving email notification preferences": "Ett fel uppstod då epostaviseringsinställningarna sparades", - "Failed to": "Det gick inte att", - "Failed to add tag %(tagName)s to room": "Det gick inte att lägga till \"%(tagName)s\" till rummet", - "Failed to change settings": "Det gick inte att spara inställningarna", - "Failed to forget room %(errCode)s": "Det gick inte att glömma bort rummet %(errCode)s", - "Failed to update keywords": "Det gick inte att uppdatera nyckelorden", - "Failed to get protocol list from Home Server": "Det gick inte att hämta protokollistan från hemservern", - "Failed to get public room list": "Det gick inte att hämta listan över offentliga rum", - "Failed to join the room": "Det gick inte att gå med i rummet", - "Failed to remove tag %(tagName)s from room": "Det gick inte att radera taggen %(tagName)s från rummet", - "Failed to set direct chat tag": "Det gick inte att markera rummet som direkt chatt", "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s på %(osName)s", - "Safari and Opera work too.": "Safari och Opera fungerar också.", - "A new version of Riot is available.": "En ny version av Riot är tillgänglig.", - "All Rooms": "Alla rum", - "Cancel": "Avbryt", - "Changelog": "Ändringslogg", - "Collapse panel": "Kollapsa panel", - "Describe your problem here.": "Beskriv problemet här.", - "Expand panel": "Öppna panel", - "Failed to send report: ": "Det gick inte att sända rapporten: ", - "Failed to set Direct Message status of room": "Det gick inte att sätta Direkt meddelande-status på rummet", - "Favourite": "Favorit", - "Files": "Filer", - "Filter room names": "Filtrera rumsnamn", - "Forget": "Glöm bort", - "Forward Message": "Vidarebefordra meddelande", - " from room": " från rum", - "Guests can join": "Gäster kan bli medlem i rummet", - "Guest users can't invite users. Please register to invite.": "Gäster kan inte skicka inbjudningar. Registrera dig för att bjuda in andra.", - "Hide panel": "Göm panel", - "I understand the risks and wish to continue": "Jag förstår riskerna och vill fortsätta", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "För att diagnostisera problem kommer loggar från den här klienten att sändas med rapporten. Om du bara vill sända texten ovan, kryssa av rutan:", - "Invite to this room": "Bjud in i rummet", - "Keywords": "Nyckelord", - "Leave": "Lämna", - "Loading bug report module": "Laddar buggrapportsmodul", - "Low Priority": "Låg prioritet", - "Members": "Medlemmar", - "Mentions only": "Endast omnämnande", - "Messages containing my display name": "Meddelanden som innehåller mitt namn", - "Messages containing keywords": "Meddelanden som innehåller nyckelord", - "Messages containing my user name": "Meddelanden som innehåller mitt användarnamn", - "Messages in group chats": "Meddelanden i gruppchattar", - "Messages in one-to-one chats": "Meddelanden i privata chattar", - "Messages sent by bot": "Meddelanden från bottar", - "more": "mera", - "Mute": "Dämpa", - "No rooms to show": "Inga fler rum att visa", - "Noisy": "Högljudd", - "Notification targets": "Aviseringsmål", - "Notifications": "Aviseringar", - "Notify for all other messages/rooms": "Avisera för alla andra meddelanden/rum", - "Notify me for anything else": "Avisera för allt annat", - "Off": "Av", - "On": "På", - "Permalink": "Permalink", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Beskriv buggen. Vad gjorde du? Vad förväntade du dig att ska hända? Vad hände?", - "Please describe the bug and/or send logs.": "Beskriv buggen och/eller sänd loggar.", - "Please install Chrome or Firefox for the best experience.": "Installera Chrome eller Firefox för den bästa upplevelsen.", - "Please Register": "Registrera dig", "powered by Matrix": "drivs av Matrix", - "Quote": "Citera", - "Redact": "Dra tillbaka", - "Reject": "Avvisa", - "Remove %(name)s from the directory?": "Ta bort %(name)s från katalogen?", - "Remove": "Ta bort", - "remove %(name)s from the directory.": "ta bort %(name)s från katalogen.", - "Remove from Directory": "Ta bort från katalogen", - "Report a bug": "Rapportera en bugg", - "Resend": "Sänd igen", "Riot Desktop on %(platformName)s": "Riot Desktop på %(platformName)s", - "Riot does not know how to join a room on this network": "Riot kan inte gå med i ett rum på det här nätverket", "Riot is not supported on mobile web. Install the app?": "Riot stöds inte på mobil-webb. Installera appen?", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot använder flera avancerade webbläsaregenskaper, av vilka alla inte stöds eller är experimentella i din nuvarande webbläsare.", - "Room directory": "Rumskatalog", - "Room not found": "Rummet hittades inte", - "Search": "Sök", - "Search…": "Sök…", - "Search for a room": "Sök efter rum", - "Send": "Sänd", - "Send logs": "Sänd loggar", - "Settings": "Inställningar", - "Source URL": "Käll-URL", - "Sorry, your browser is not able to run Riot.": "Beklagar, din webbläsare kan inte köra Riot.", - "Start chat": "Starta chatt", - "The Home Server may be too old to support third party networks": "Hemservern kan vara för gammal för stöda tredje parters nätverk", - "There are advanced notifications which are not shown here": "Det finns avancerade aviseringar som inte visas här", - "The server may be unavailable or overloaded": "Servern kan vara överbelastad eller inte tillgänglig", - "This Room": "Det här rummet", - "This room is inaccessible to guests. You may be able to join if you register.": "Det här rummet är inte tillgängligt till gäster. Du kan möjligtvis gå med i rummet om du registrerar dig.", - " to room": " till rum", - "Unable to fetch notification target list": "Det gick inte att hämta aviseringsmållistan", - "Unable to join network": "Det gick inte att ansluta till nätverket", - "Unable to look up room ID from server": "Det gick inte att hämta rums-ID:t från servern", - "Unavailable": "Inte tillgänglig", - "Unhide Preview": "Visa förhandsvisning", "Unknown device": "Okänd enhet", - "unknown error code": "okänd felkod", - "Unnamed room": "Namnlöst rum", - "Update": "Uppdatera", - "Uploaded on %(date)s by %(user)s": "%(user)s laddade upp %(date)s", - "Uploading report": "Laddar upp rapport", - "View Decrypted Source": "Visa dekrypterad källa", - "View Source": "Visa källa", - "What's New": "Vad är nytt", - "What's new?": "Vad är nytt?", - "Waiting for response from server": "Väntar på svar från servern", - "When I'm invited to a room": "När jag bjuds in till ett rum", - "World readable": "Alla kan läsa", - "You cannot delete this image. (%(code)s)": "Du kan inte radera den här bilden. (%(code)s)", - "You cannot delete this message. (%(code)s)": "Du kan inte radera det här meddelandet. (%(code)s)", - "You are not receiving desktop notifications": "Du får inte skrivbordsaviseringar", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "Du använder Riot som en gäst. Registrera dig eller logga in för att få tillgång till flera rum och egenskaper!", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Du kan ha konfigurerat dem i en annan klient än Riot. Du kan inte ändra dem i Riot men de tillämpas ändå", - "Sunday": "söndag", - "Monday": "måndag", - "Tuesday": "tisdag", - "Wednesday": "onsdag", - "Thursday": "torsdag", - "Friday": "fredag", - "Saturday": "lördag", - "Today": "idag", - "Yesterday": "igår", - "OK": "OK", - "You need to be using HTTPS to place a screen-sharing call.": "Du måste använda HTTPS för att dela din skärm.", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Med din nuvarande webbläsare kan appens utseende vara helt fel, och vissa eller alla egenskaper kommer nödvändigtvis inte att fungera. Om du ändå vill försöka så kan du fortsätta, men gör det på egen risk!", - "Welcome page": "Välkomstsida", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "Radera rumsadressen %(alias)s och ta bort %(name)s från katalogen?", - "Collecting logs": "Samlar in loggar", - "Collecting app version information": "Samlar in appversionsinformation", - "Notifications on the following keywords follow rules which can’t be displayed here:": "Aviseringar för följande nyckelord följer regler som inte kan visas här:" + "You need to be using HTTPS to place a screen-sharing call.": "Du måste använda HTTPS för att ringa med skärmdelning.", + "Welcome to Riot.im": "Välkommen till Riot.im", + "Chat with Riot Bot": "Chatta med Riot Bot", + "Get started with some tips from Riot Bot!": "Kom igång med några tips från Riot Bot!", + "General discussion about Matrix and Riot": "Allmän diskussion om Matrix och Riot", + "Discussion of all things Matrix!": "Diskussion om allt gällande Matrix!", + "Matrix technical discussions": "Teknisk diskussion om Matrix", + "Running Matrix services": "Driva Matrix-tjänster", + "Community-run support for Synapse": "Gemenskapsdriven användarhjälp för Synapse", + "Announcements about Synapse releases": "Meddelanden om Synapse-versioner", + "Support for those using and running matrix-appservice-irc": "Hjälp för de som använder och driver matrix-appservice-irc", + "Support for those using the Matrix spec": "Hjälp för de som använder Matrix specifikation", + "Design and implementation of E2E in Matrix": "Design och implementation av E2E i Matrix", + "Implementing VR services with Matrix": "Implementation av VR-tjänster med Matrix", + "Implementing VoIP services with Matrix": "Implementation av VoIP-tjänster med Matrix", + "Discussion of the Identity Service API": "Diskussion om Identity Service API:n", + "Support for those using, running and writing other bridges": "Hjälp för de som använder, driver och utvecklar andra bryggor", + "Contributing code to Matrix and Riot": "Bidra med kod till Matrix och Riot", + "Dev chat for the Riot/Web dev team": "Chatt för utvecklare av Riot/Web", + "Dev chat for the Dendrite dev team": "Chatt för utvecklare av Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Många rum finns redan i Matrix, länkade till andra nätverk (Slack, IRC, Gitter etc.) eller fristående. Kolla in katalogen!", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentraliserad, krypterad chatt & samarbetsplattform möjliggjort med [matrix]", + "Search the room directory": "Sök i rumskatalogen", + "Riot/Web & Desktop chat": "Riot/Web & Desktop-chatt", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk-chatt", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk-chatt", + "Admin support for Dendrite": "Hjälp för administratörer av Dendrite", + "Building services on Matrix": "Bygga tjänster med Matrix", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Du kan använda anpassade serverinställningar för att logga in på andra Matrix-servrar genom att ange en annan hemserver-URL.
    Du kan då använda Riot med ett befintligt Matrix-konto på en annan hemserver.

    Du kan också ange en anpassad identitetsserver men kommer då inte kunna bjuda in användare med epostadress, eller själv bli inbjuden med epostadress.", + "Co-ordination for Riot translators": "Koordination för Riot-översättare" } diff --git a/src/i18n/strings/ta.json b/src/i18n/strings/ta.json new file mode 100644 index 0000000000..e0a1677087 --- /dev/null +++ b/src/i18n/strings/ta.json @@ -0,0 +1,17 @@ +{ + "%(appName)s via %(browserName)s on %(osName)s": "%(osName)s -ல் %(browserName)s -ன் வழியாக %(appName)s", + "Custom Server Options": "விருப்பிற்கேற்ற வழங்கி இடப்புகள்", + "Dismiss": "நீக்கு", + "powered by Matrix": "Matrix-ஆல் ஆனது", + "Riot is not supported on mobile web. Install the app?": "கைபேசி உலாவியில் Riot இயங்காது. செயலியை நிறுவ வேண்டுமா?", + "Unknown device": "தெரியாத கருவி", + "Riot Desktop on %(platformName)s": "%(platformName)s ற்க்கான Riot", + "You need to be using HTTPS to place a screen-sharing call.": "நீங்கள் திரைபகிர்வு அழைப்பை மேற்க்கொள்ள HTTPS-ஐ பயன்படுத்த வேண்டும்.", + "Welcome to Riot.im": "Riot.im -ற்க்கு வரவேற்க்கிறோம்", + "Search the room directory": "அறை அடைவில் தேடவும்", + "Chat with Riot Bot": "Riot இயங்கியிடம் உரையாடவும்", + "Matrix technical discussions": "Matrix தொழில்நுட்ப விவாதங்கள்", + "Running Matrix services": "இருப்பிலிருக்கும் Matrix சேவைகள்", + "Building services on Matrix": "Matrix- ல் சேவைகளைக் கட்டமைக்க", + "Contributing code to Matrix and Riot": "Matrix மற்றும் Riot -ற்க்கு நிரல் பங்களிக்க" +} diff --git a/src/i18n/strings/te.json b/src/i18n/strings/te.json index 9e26dfeeb6..2d6bd4eb9c 100644 --- a/src/i18n/strings/te.json +++ b/src/i18n/strings/te.json @@ -1 +1,9 @@ -{} \ No newline at end of file +{ + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s %(browserName)s ద్వర %(osName)s కి", + "Custom Server Options": "మలచిన సేవిక ఎంపికలు", + "Dismiss": "రద్దుచేసే", + "Riot Desktop on %(platformName)s": "రియట్ రంగస్థలం లో %(platformName)s", + "Welcome to Riot.im": "రిమోట్.ఇం కి స్వగతం", + "Search the room directory": "గది వివరాన్ని శోధించండి", + "Chat with Riot Bot": "రియోట్ బొట్తో మాటామంతి చేయండి" +} diff --git a/src/i18n/strings/th.json b/src/i18n/strings/th.json index f885c15616..1e2698c6c4 100644 --- a/src/i18n/strings/th.json +++ b/src/i18n/strings/th.json @@ -1,164 +1,37 @@ { "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s ผ่านทาง %(browserName)s บน %(osName)s", - "All messages": "ทุกข้อความ", - "Cancel": "ยกเลิก", - "Close": "ปิด", - "Error": "ข้อผิดพลาด", - "#example": "#example", - "Files": "ไฟล์", - "Forward Message": "ส่งต่อข้อความ", - " from room": " จากห้อง", - "Low Priority": "ความสำคัญต่ำ", - "Members": "สมาชิก", - "more": "เพิ่มเติม", - "Off": "ปิด", - "Report a bug": "รายงานจุดบกพร่อง", "powered by Matrix": "ใช้เทคโนโลยี Matrix", - "Quote": "อ้างอิง", - "Resend": "ส่งใหม่", - "Safari and Opera work too.": "Safari หรือ Opera ก็ใช้ได้", - "A new version of Riot is available.": "มี Riot เวอร์ชั่นใหม่", - "All Rooms": "ทุกห้อง", - "Cancel Sending": "ยกเลิกการส่ง", - "Changelog": "บันทึกการเปลี่ยนแปลง", - "Create new room": "สร้างห้องใหม่", - "Describe your problem here.": "อธิบายปัญหาที่นี่", - "Download this file": "ดาวน์โหลดไฟล์นี้", "Dismiss": "ไม่สนใจ", - "Messages sent by bot": "ข้อความจากบอท", - "Mute": "เงียบ", - "No rooms to show": "ไม่มีห้องที่จะแสดง", - "Notifications": "การแจ้งเตือน", - "On": "เปิด", - "Permalink": "ลิงก์ถาวร", - "Operation failed": "การดำเนินการล้มเหลว", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "กรุณาอธิบายจุดบกพร่อง คุณทำอะไร? ควรจะเกิดอะไรขึ้น? แล้วอะไรคือสิ่งที่เกิดขึ้นจริง?", - "Please describe the bug and/or send logs.": "กรุณาอธิบายจุดบกพร่อง และ/หรือ ส่งล็อก", - "Please install Chrome or Firefox for the best experience.": "กรุณาติดตั้ง Chrome หรือ Firefox เพื่อประสบการณ์ที่ดีที่สุด", - "Please Register": "กรุณาลงทะเบียน", - "Redact": "ลบ", - "Reject": "ปฏิเสธ", - "Remove": "ลบ", - "Messages containing keywords": "ข้อความที่มีคีย์เวิร์ด", - "Messages containing my user name": "ข้อความที่มีชื่อผู้ใช้ของฉัน", - "Search": "ค้นหา", - "Search…": "ค้นหา…", - "Room not found": "ไม่พบห้อง", - "Search for a room": "ค้นหาห้อง", - "Send": "ส่ง", - "Send logs": "ส่งล็อก", - "Settings": "การตั้งค่า", - "Sorry, your browser is not able to run Riot.": "ขออภัย เบราว์เซอร์ของคุณไม่สามารถ run Riot ได้", - "This Room": "ห้องนี้", - " to room": " ไปยังห้อง", - "Unavailable": "ไม่มี", "Unknown device": "อุปกรณ์ที่ไม่รู้จัก", - "unknown error code": "รหัสข้อผิดพลาดที่ไม่รู้จัก", - "Update": "อัปเดต", - "Uploaded on %(date)s by %(user)s": "อัปโหลดเมื่อ %(date)s โดย %(user)s", - "Yesterday": "เมื่อวานนี้", - "Today": "วันนี้", - "Saturday": "วันเสาร์", - "Friday": "วันศุกร์", - "Thursday": "วันพฤหัสบดี", - "Wednesday": "วันพุธ", - "Tuesday": "วันอังคาร", - "Monday": "วันจันทร์", - "Sunday": "วันอาทิตย์", - "You cannot delete this image. (%(code)s)": "คุณไม่สามารถลบรูปนี้ได้ (%(code)s)", - "You cannot delete this message. (%(code)s)": "คุณไม่สามารถลบข้อความนี้ได้ (%(code)s)", - "What's New": "มีอะไรใหม่", - "What's new?": "มีอะไรใหม่?", - "View Source": "ดูซอร์ส", - "Uploading report": "กำลังอัปโหลดรายงาน", - "Advanced notification settings": "ตั้งค่าการแจ้งเตือนขั้นสูง", - "Can't update user notification settings": "ไม่สามารถอัปเดตการตั้งค่าการแจ้งเตือนของผู้ใช้", - "Collecting logs": "กำลังรวบรวมล็อก", - "Collapse panel": "ซ่อนหน้าต่าง", - "Collecting app version information": "กำลังรวบรวมข้อมูลเวอร์ชันแอป", - "OK": "ตกลง", - "Welcome page": "หน้าต้อนรับ", "You need to be using HTTPS to place a screen-sharing call.": "คุณต้องใช้ HTTPS เพื่อเริ่มติดต่อแบบแบ่งปันหน้าจอ", - "You are not receiving desktop notifications": "การแจ้งเตือนบนเดสก์ทอปถูกปิดอยู่", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "คุณกำลังใช้ Riot ในฐานะแขก ลงทะเบียนหรือเข้าสู่ระบบเพื่อเข้าถึงห้องและคุณสมบัติอื่น ๆ เพิ่มเติม!", - "Waiting for response from server": "กำลังรอการตอบสนองจากเซิร์ฟเวอร์", - "View Decrypted Source": "ดูซอร์สที่ถอดรหัสแล้ว", - "Unnamed room": "ห้องที่ไม่มีชื่อ", - "Source URL": "URL ต้นฉบับ", - "Start chat": "เริ่มแชท", "Riot Desktop on %(platformName)s": "Riot เดสก์ทอปบน %(platformName)s", "Riot is not supported on mobile web. Install the app?": "Riot ไม่รองรับเว็บบนอุปกรณ์พกพา ติดตั้งแอป?", - "Riot does not know how to join a room on this network": "Riot ไม่รู้วิธีเข้าร่วมห้องในเครือข่ายนี้", - "Direct Chat": "แชทโดยตรง", - "All messages (loud)": "ทุกข้อความ (เสียงดัง)", "Custom Server Options": "กำหนดเซิร์ฟเวอร์เอง", - "Directory": "ไดเรกทอรี", - "Enable audible notifications in web client": "เปิดใช้งานเสียงแจ้งเตือนบนเว็บไคลเอนต์", - "Enable desktop notifications": "เปิดใช้งานการแจ้งเตือนบนเดสก์ทอป", - "Enable email notifications": "เปิดใช้งานการแจ้งเตือนทางอีเมล", - "Enable notifications for this account": "เปิดใช้งานการแจ้งเตือนสำหรับบัญชีนี้", - "Enable them now": "เปิดใช้งานเดี๋ยวนี้", - "Enter keywords separated by a comma:": "กรอกคีย์เวิร์ดทั้งหมด คั่นด้วยเครื่องหมายจุลภาค:", - "Expand panel": "ขยายหน้าต่าง", - "Failed to update keywords": "การอัปเดตคีย์เวิร์ดล้มเหลว", - "Failed to join the room": "การเข้าร่วมห้องล้มเหลว", - "Failed to remove tag %(tagName)s from room": "การลบแท็ก %(tagName)s จากห้องล้มเหลว", - "Failed to send report: ": "การส่งรายงานล้มเหลว: ", - "Filter room names": "กรองชื่อห้อง", - "Guests can join": "แขกเข้าร่วมได้", - "Hide panel": "ซ่อนหน้าต่าง", - "I understand the risks and wish to continue": "ฉันเข้าใจความเสี่ยงและต้องการดำเนินการต่อ", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "ล็อกจากไคลเอนต์จะถูกแนบพร้อมกับรายงานนี้เพื่อวินิจฉัยปัญหา หากคุณต้องการส่งเฉพาะข้อความด้านบน กรุณาเอาเครื่องหมายออก:", - "Invite to this room": "เชิญเข้าห้องนี้", - "Keywords": "คีย์เวิร์ด", - "Leave": "ออกจากห้อง", - "Loading bug report module": "กำลังโหลดโมดูลรายงานจุดบกพร่อง", - "Mentions only": "เมื่อถูกกล่าวถึงเท่านั้น", - "Messages containing my display name": "ข้อความที่มีชื่อของฉัน", - "Messages in group chats": "ข้อความในแชทกลุ่ม", - "Messages in one-to-one chats": "ข้อความในแชทตัวต่อตัว", - "Noisy": "เสียงดัง", - "Notification targets": "เป้าหมายการแจ้งเตือน", - "Notify for all other messages/rooms": "แจ้งเตือนจากห้อง/ข้อความอื่น ๆ ทั้งหมด", - "Notify me for anything else": "แจ้งเตือนสำหรับอย่างอื่นทั้งหมด", - "Remove %(name)s from the directory?": "ถอด %(name)s ออกจากไดเรกทอรี?", - "remove %(name)s from the directory.": "ถอด %(name)s ออกจากไดเรกทอรี", - "Remove from Directory": "ถอดออกจากไดเรกทอรี", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot ใช้คุณสมบัติขั้นสูงในเบราว์เซอร์หลายประการ คุณสมบัติบางอย่างอาจยังไม่พร้อมใช้งานหรืออยู่ในขั้นทดลองในเบราว์เซอร์ปัจจุบันของคุณ", - "Room directory": "ไดเรกทอรีห้อง", - "There are advanced notifications which are not shown here": "มีการแจ้งเตือนขั้นสูงที่ไม่ได้แสดงที่นี่", - "This room is inaccessible to guests. You may be able to join if you register.": "แขกไม่มีสิทธิ์เข้าถึงห้องนี้ หากคุณลงทะเบียนคุณอาจเข้าร่วมได้", - "Unable to join network": "ไม่สามารถเข้าร่วมเครือข่ายได้", - "Unable to look up room ID from server": "ไม่สามารถหา ID ห้องจากเซิร์ฟเวอร์ได้", - "Unhide Preview": "แสดงตัวอย่าง", - "World readable": "ทุกคนอ่านได้", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "คุณอาจมีการตั้งค่าจากไคลเอนต์อื่นนอกจาก Riot การตั้งต่าเหล่านั้นยังถูกใช้งานอยู่แต่คุณจะปรับแต่งจากใน Riot ไม่ได้", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "การแสดงผลของโปรแกรมอาจผิดพลาด ฟังก์ชันบางอย่างหรือทั้งหมดอาจไม่ทำงานในเบราว์เซอร์ปัจจุบันของคุณ หากคุณต้องการลองดำเนินการต่อ คุณต้องรับมือกับปัญหาที่อาจจะเกิดขึ้นด้วยตัวคุณเอง!", - "Add an email address above to configure email notifications": "เพิ่มที่อยู่อีเมลข้างบนเพื่อตั้งค่าการแจ้งเตือนทางอีเมล", - "All notifications are currently disabled for all targets.": "การแจ้งเตือนทั้งหมดถูกปิดใช้งานสำหรับทุกอุปกรณ์", - "An error occurred whilst saving your email notification preferences.": "เกิดข้อผิดพลาดระหว่างบันทึกการตั้งค่าการแจ้งเตือนทางอีเมล", - "Couldn't find a matching Matrix room": "ไม่พบห้อง Matrix ที่ตรงกับคำค้นหา", - "customServer_text": "คุณสามารถกำหนดเซิร์ฟเวอร์บ้านเองได้โดยใส่ URL ของเซิร์ฟเวอร์นั้น เพื่อเข้าสู่ระบบของเซิร์ฟเวอร์ Matrix อื่น
    ทั้งนี่เพื่อให้คุณสามารถใช้ Riot กับบัญชี Matrix ที่มีอยู่แล้วบนเซิร์ฟเวอร์บ้านอื่น ๆ ได้

    คุณอาจเลือกเซิร์ฟเวอร์ยืนยันตัวตนเองด้วยก็ได้ แต่คุณจะไม่สามารถเชิญผู้ใช้อื่นด้วยที่อยู่อีเมล หรือรับคำเชิญจากผู้ใช้อื่นทางที่อยู่อีเมลได้", - "delete the alias.": "ลบนามแฝง", - "Drop here %(toAction)s": "ปล่อยที่นี่ %(toAction)s", - "Error saving email notification preferences": "การบันทึกการตั้งค่าการแจ้งเตือนทางอีเมลผิดพลาด", - "Failed to add tag %(tagName)s to room": "การเพิ่มแท็ก %(tagName)s ของห้องนี้ล้มเหลว", - "Failed to change settings": "การแก้ไขการตั้งค่าล้มเหลว", - "Failed to get protocol list from Home Server": "การขอรายชื่อโปรโตคอลจากเซิร์ฟเวอร์บ้านล้มเหลว", - "Failed to get public room list": "การขอรายชื่อห้องสาธารณะล้มเหลว", - "Failed to set direct chat tag": "การติดแท็กแชทตรงล้มเหลว", - "Failed to set Direct Message status of room": "การตั้งสถานะข้อความตรงของห้องล้มเหลว", - "Favourite": "รายการโปรด", - "Failed to": "ล้มเหลวในการ", - "Fetching third party location failed": "กำลังเรียกข้อมูลตำแหน่งจากบุคคลที่สามล้มเหลว", - "Guest users can't invite users. Please register to invite.": "แขกไม่สามารถเชิญผู้ใช้ได้ กรุณาลงทะเบียนเพื่อเชิญผู้อื่น", - "The Home Server may be too old to support third party networks": "เซิร์ฟเวอร์บ้านอาจเก่าเกินกว่าจะรองรับเครือข่ายของบุคคลที่สาม", - "The server may be unavailable or overloaded": "เซิร์ฟเวอร์อาจไม่พร้อมใช้งานหรือทำงานหนักเกินไป", - "Unable to fetch notification target list": "ไม่สามารถรับรายชื่ออุปกรณ์แจ้งเตือน", - "When I'm invited to a room": "เมื่อฉันได้รับคำเชิญเข้าห้อง", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "ลบนามแฝง %(alias)s ของห้องและถอด %(name)s ออกจากไดเรกทอรี?", - "Call invitation": "คำเชิญเข้าร่วมการโทร", - "Failed to forget room %(errCode)s": "การลืมห้องล้มเหลว %(errCode)s", - "Forget": "ลืม", - "Notifications on the following keywords follow rules which can’t be displayed here:": "การแจ้งเตือนจากคีย์เวิร์ดเหล่านี้ เป็นไปตามกฏที่ไม่สามารถแสดงที่นี่ได้:" + "Welcome to Riot.im": "ยินดีต้อนรับสู่ Riot.im", + "Search the room directory": "ค้นหาในไดเรกทอรีห้อง", + "Chat with Riot Bot": "แชทกับบอท Riot", + "Get started with some tips from Riot Bot!": "มาเริ่มกันด้วยเคล็ดลับเล็กน้อยจากบอท Riot!", + "Discussion of all things Matrix!": "พูดคุยทุกเรื่อง เรื่อง Matrix!", + "Riot/Web & Desktop chat": "แชทเกี่ยวกับ Riot บนเว็บและเดสก์ทอป", + "Riot/iOS & matrix-ios-sdk chat": "แชทเกี่ยวกับ Riot บน iOS และ matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "แชทเกี่ยวกับ Riot บน Android และ matrix-android-sdk", + "Matrix technical discussions": "พูดคุยเรื่อง Matrix เชิงเทคนิค", + "Running Matrix services": "การติดตั้งบริการ Matrix", + "Community-run support for Synapse": "ฝ่ายสนับสนุน Synapse โดยชุมชนผู้ใช้", + "Admin support for Dendrite": "ฝ่ายสนับสนุน Dendrite จากผู้ดูแล", + "Announcements about Synapse releases": "ประกาศเกี่ยวกับ Synapse รุ่นใหม่", + "Support for those using and running matrix-appservice-irc": "ฝ่ายสนับสนุนสำหรับผู้ใช้ matrix-appservice-irc", + "Building services on Matrix": "การพัฒนาบริการบน Matrix", + "Support for those using the Matrix spec": "ฝ่ายสนับสนุนสำหรับผู้ใช้สเปค Matrix", + "Implementing VR services with Matrix": "การอิมพลีเมนต์บริการ VR ด้วย Matrix", + "Implementing VoIP services with Matrix": "การอิมพลีเมนต์บริการ VoIP ด้วย Matrix", + "Support for those using, running and writing other bridges": "ฝ่ายสนับสนุนสำหรับผู้ใช้หรือพัฒนาตัวเชื่อมอื่น ๆ", + "Contributing code to Matrix and Riot": "สมทบโค๊ดให้ Matrix และ Riot", + "Dev chat for the Riot/Web dev team": "แชทสำหรับทีมพัฒนา Riot บนเว็บ", + "Dev chat for the Dendrite dev team": "แชทสำหรับทีมพัฒนา Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "มีห้องอยู่มากมายใน Matrix ทั้งห้องที่เชื่อมไปยังเครือข่ายอื่น (Slack, IRC, Gitter ฯลฯ) และห้องที่อยู่ด้วยตัวเอง ลองดูไดเรกทอรีสิ!", + "Design and implementation of E2E in Matrix": "การออกแบบและใช้งาน E2E ใน Matrix", + "Discussion of the Identity Service API": "พูดคุยเกี่ยวกับ Identity Service API", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "ระบบแชทและประสานงาน ไร้ศูนย์กลางและเข้ารหัสได้ โดยใช้เทคโนโลยีจาก [matrix]", + "General discussion about Matrix and Riot": "พูดคุยเรื่องทั่วไป ทั้ง Matrix และ Riot" } diff --git a/src/i18n/strings/tr.json b/src/i18n/strings/tr.json new file mode 100644 index 0000000000..f3b0b87510 --- /dev/null +++ b/src/i18n/strings/tr.json @@ -0,0 +1,39 @@ +{ + "%(appName)s via %(browserName)s on %(osName)s": "%(osName)s işletim sisteminde %(browserName)s ile %(appName)s", + "Custom Server Options": "Özelleştirilebilir Sunucu Seçenekleri", + "Dismiss": "Kapat", + "powered by Matrix": "Matrix tarafından desteklenmektedir", + "Riot Desktop on %(platformName)s": "%(platformName)s platformunda Riot Masaüstü", + "Riot is not supported on mobile web. Install the app?": "Riot mobil web'de desteklenmiyor . Uygulamayı yükle ?", + "Unknown device": "Bilinmeyen aygıt", + "You need to be using HTTPS to place a screen-sharing call.": "Ekran paylaşımlı arama yapmak için HTTPS kullanıyor olmalısınız.", + "Welcome to Riot.im": "Riot.im'e hoş geldiniz", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Merkezsiz, şifreli sohbet & işbirliği ile Matrix tarafından desteklenmektedir", + "Search the room directory": "Oda dizinini ara", + "Chat with Riot Bot": "Riot Bot ile sohbet et", + "Get started with some tips from Riot Bot!": "Riot Bot'tan bazı ipuçları ile başlayın!", + "General discussion about Matrix and Riot": "Matrix ve Riot hakkında genel tartışma", + "Discussion of all things Matrix!": "Matrix'in tüm tartışması!", + "Riot/Web & Desktop chat": "Riot/Web & Masaüstü sohbet", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS & matrix-ios-sdk sohbet", + "Riot/Android & matrix-android-sdk chat": "Riot/Android & matrix-android-sdk sohbet", + "Matrix technical discussions": "Matrix teknik tartışmalar", + "Running Matrix services": "Çalışan Matrix hizmetleri", + "Community-run support for Synapse": "Synapse için topluluk tarafından işletilen destek", + "Admin support for Dendrite": "Dendrite için yönetici desteği", + "Announcements about Synapse releases": "Synapse sürümleri hakkında duyurular", + "Support for those using and running matrix-appservice-irc": "matrix-appservice-irc kullanan ve çalıştıran kullanıcılar için destek", + "Building services on Matrix": "Matrix üzerinde yapı hizmetleri", + "Support for those using the Matrix spec": "Matrix teknik özelliklerini kullananlar için destek", + "Design and implementation of E2E in Matrix": "Matrix'te E2E ' nin Tasarımı ve uyglamanması", + "Implementing VR services with Matrix": "Matrix'te VR hizmetlerini uygulamak", + "Implementing VoIP services with Matrix": "Matrix'te VoIP hizmetlerini uygulamak", + "Discussion of the Identity Service API": "Kimlik Hizmet API ( Identity Service API ) tartışması", + "Support for those using, running and writing other bridges": "Diğer köprüleri kullanan , çalıştıran ve yazanlar için destek", + "Contributing code to Matrix and Riot": "Matrix ve Riot'a kod katkısı sağlama", + "Dev chat for the Riot/Web dev team": "Riot/Web Geliştirici takımı için geliştirici sohbeti", + "Dev chat for the Dendrite dev team": "Dendrite geliştirici takımı için geliştirici sohbeti", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Matrix'te var olan ağalara bağlı (Slack , IRC , Gitter vb.) birçok oda var. Dizini kontrol edin!", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Farklı bir ev sunucusu URL'sini belirterek diğer Matrix sunucularına oturum açmak için özel sunucu seçeneklerini kullanabilirsiniz.
    Bu, Riot'u başka bir ev sunucusu üzerinde var olan Matrix hesabını kullanmanıza olanak sağlar.

    Ayrıca özelleştirilebilir bir kimlik de ayarlayabilirsiniz, ama kullanıcılırı ve kendinizi e-posta adreslerinden davet edemeyeceksiniz.", + "Co-ordination for Riot translators": "Riot çeviricileri için iş güdüm (koordinasyon)" +} diff --git a/src/i18n/strings/uk.json b/src/i18n/strings/uk.json index 9e26dfeeb6..6833276a67 100644 --- a/src/i18n/strings/uk.json +++ b/src/i18n/strings/uk.json @@ -1 +1,39 @@ -{} \ No newline at end of file +{ + "Custom Server Options": "Нетипові параметри сервера", + "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s через %(browserName)s на %(osName)s", + "Dismiss": "Відхилити", + "powered by Matrix": "працює на Matrix", + "Riot Desktop on %(platformName)s": "Riot Desktop на %(platformName)s", + "Riot is not supported on mobile web. Install the app?": "Riot не працює через оглядач на мобільних пристроях. Встановити застосунок?", + "Unknown device": "Невідомий пристрій", + "You need to be using HTTPS to place a screen-sharing call.": "Ви маєте використовувати HTTPS щоб зробити виклик із поширенням екрану.", + "Welcome to Riot.im": "Ласкаво просимо до Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "Децентралізований, шифрований чат та засіб для співробітництва, що працює на [matrix]", + "Search the room directory": "Шукати у каталозі кімнат", + "Chat with Riot Bot": "Розмовляти з Riot-ботом", + "Get started with some tips from Riot Bot!": "Розпочніть за допомогою декількох підказок від Riot-боту!", + "General discussion about Matrix and Riot": "Загальне обговорення Matrix та Riot", + "Discussion of all things Matrix!": "Обговорення усіх деталей про Matrix!", + "Riot/Web & Desktop chat": "Обговорення Riot для оглядачів та стільниці", + "Riot/iOS & matrix-ios-sdk chat": "Обговорення Riot/iOS та matrix-ios-sdk", + "Riot/Android & matrix-android-sdk chat": "Обговорення Riot/Android та matrix-android-sdk", + "Matrix technical discussions": "Технічні обговорення Matrix", + "Community-run support for Synapse": "Спільнота підтримки Synapse", + "Admin support for Dendrite": "Адміністрування Dendrite", + "Announcements about Synapse releases": "Оголошення випусків Synapse", + "Support for those using and running matrix-appservice-irc": "Підтримка користувачів matrix-appservice-irc", + "Building services on Matrix": "Створення служб на основі Matrix", + "Support for those using the Matrix spec": "Підтримка користувачів специфікацій Matrix", + "Design and implementation of E2E in Matrix": "Планування та впровадження E2E шифрування у Matrix", + "Implementing VR services with Matrix": "Впровадження служб віртуальної реальності в рамках Matrix", + "Implementing VoIP services with Matrix": "Впровадження служб VoIP через Matrix", + "Discussion of the Identity Service API": "Обговорення Identity Service API", + "Support for those using, running and writing other bridges": "Підтримка користувачів, адміністраторів та розробників інших Matrix-мостів", + "Contributing code to Matrix and Riot": "Тим, хто хоче долучитись до розробки Matrix та Riot", + "Dev chat for the Riot/Web dev team": "Чат команди розробників Riot/Web", + "Dev chat for the Dendrite dev team": "Чат команди розробників Dendrite", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "У мережі Matrix вже існує багато кімнат, що з'єднані як з існуючими мережами (Slack, IRC, Gitter тощо), так і незалежними. Подивіться у каталозі кімнат!", + "Running Matrix services": "Запуск служби Matrix", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Ви можете використовувати параметри користувача сервера для входа на другі сервера Matrix, вказав другий URL-адресу домашнього сервера.
    Це дозволяє використовувати Riot з обліковим записом Matrix який існує на другому домашньому сервері.

    Окрім цього, можливо встановити ідентифікаційний сервер користувача, але ви не зможете запросити других користувачів та бути запрошенному використовуючи адресу електронної пошти.", + "Co-ordination for Riot translators": "Координаційний чат для перекладачів Riot" +} diff --git a/src/i18n/strings/zh_Hans.json b/src/i18n/strings/zh_Hans.json new file mode 100644 index 0000000000..863c22457e --- /dev/null +++ b/src/i18n/strings/zh_Hans.json @@ -0,0 +1,39 @@ +{ + "%(appName)s via %(browserName)s on %(osName)s": "在 %(osName)s 下 %(browserName)s 浏览器中运行的 %(appName)s", + "Custom Server Options": "自定义服务器选项", + "Dismiss": "标记为已读", + "powered by Matrix": "由 Matrix 驱动", + "Riot Desktop on %(platformName)s": "在 %(platformName)s 上运行的 Riot 桌面版", + "Riot is not supported on mobile web. Install the app?": "Riot Web 端不支持移动端网页,你想安装 Riot APP 吗?", + "Unknown device": "未知设备", + "You need to be using HTTPS to place a screen-sharing call.": "您需要使用 HTTPS 以进行共享屏幕通话。", + "Welcome to Riot.im": "欢迎来到 Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "去中心化,加密聊天 & 由 [matrix] 驱动", + "Search the room directory": "搜索聊天室目录", + "Chat with Riot Bot": "与 Riot 机器人聊天", + "Get started with some tips from Riot Bot!": "从 Riot 机器人开始,学习使用 Riot 的小窍门吧!", + "General discussion about Matrix and Riot": "关于 Matrix 与 Riot 的综合讨论", + "Discussion of all things Matrix!": "讨论所有关于 Matrix 的事情!", + "Riot/Web & Desktop chat": "Riot/Web & 桌面聊天", + "Riot/iOS & matrix-ios-sdk chat": "关于 Riot/iOS 与 matrix-ios-sdk 的讨论", + "Riot/Android & matrix-android-sdk chat": "关于 Riot/Android 与 matrix-android-sdk 的讨论", + "Matrix technical discussions": "Matrix 技术讨论", + "Running Matrix services": "正在运行的 Matrix 服务", + "Community-run support for Synapse": "Synapse 支持", + "Admin support for Dendrite": "Dendrite 管理支持", + "Announcements about Synapse releases": "Synapse 发布与公告", + "Support for those using and running matrix-appservice-irc": "matrix-appservice-irc 使用与运维支持", + "Building services on Matrix": "在 Matrix 上建立的服务", + "Support for those using the Matrix spec": "Matrix 规范使用支持", + "Design and implementation of E2E in Matrix": "在 Matrix 中 E2E 的设计与实现", + "Implementing VR services with Matrix": "使用 Matrix 实现虚拟现实服务", + "Implementing VoIP services with Matrix": "使用 Matrix 实现 VoIP 服务", + "Discussion of the Identity Service API": "关于身份认证服务 API 的讨论", + "Support for those using, running and writing other bridges": "使用、运行、撰写其他桥接服务的支持", + "Contributing code to Matrix and Riot": "为 Matrix 和 Riot 贡献代码", + "Dev chat for the Riot/Web dev team": "Riot/Web 开发团队的开发讨论", + "Dev chat for the Dendrite dev team": "Dendrite 的开发团队的开发讨论", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Matrix 中已有许多聊天室,连接到已有的网络(Slack、IRC 与 Gitter 等)或独立的网络,请查看目录!", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "你可以修改主服务器 URL 以登录其他的 Matrix 服务器。
    这样,你就可以使用你在其他 Matrix 服务器上的账号。

    你也可以修改身份认证服务器,但你可能因此无法使用电子邮件地址来邀请其他用户,或者被其他用户通过电子邮件邀请。", + "Co-ordination for Riot translators": "Riot 翻译人员的合作讨论" +} diff --git a/src/i18n/strings/zh_Hant.json b/src/i18n/strings/zh_Hant.json index d6f0930a77..8670b7b2af 100644 --- a/src/i18n/strings/zh_Hant.json +++ b/src/i18n/strings/zh_Hant.json @@ -1,164 +1,39 @@ { - "Direct Chat": "私聊", - "Drop here %(toAction)s": "拖拽到這里 %(toAction)s", - "Error": "錯誤", - "Failed to forget room %(errCode)s": "無法忘記聊天室 %(errCode)s", - "Failed to join the room": "無法加入此聊天室", - "Favourite": "收藏", - "Search": "搜索", - "Settings": "設置", - "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s 透過 %(browserName)s 在 %(osName)s", - "Safari and Opera work too.": "SafariOpera 也能使用。", - "Advanced notification settings": "進階通知設定", - "All messages": "所有訊息", - "All messages (loud)": "所有訊息 (loud)", - "All Rooms": "所有的聊天室", - "Call invitation": "通話邀請", - "Cancel": "取消", - "Cancel Sending": "取消傳送", - "Can't update user notification settings": "無法更新用戶的通知設定", - "Changelog": "變更記錄", - "Close": "關閉", - "Collapse panel": "閤上面版", - "Collecting logs": "收集記錄", - "Create new room": "開設新聊天室", - "Couldn't find a matching Matrix room": "不能找到符合 Matrix 的聊天室", - "Custom Server Options": "自定伺服器選項", - "delete the alias.": "刪除別名", - "Describe your problem here.": "在此描述你的問題", - "Directory": "目錄", - "Dismiss": "無視", - "Download this file": "下載這個檔案", - "Enable desktop notifications": "啟用桌面通知", - "Enable email notifications": "啟用電郵通知", - "Enable notifications for this account": "本帳號啟用通知", - "Enable them now": "現在啟用它們", - "#example": "#例子", - "Expand panel": "擴充面版", - "Failed to": "失敗於", - "Failed to change settings": "變更設定失敗", - "Failed to update keywords": "無法更新關鍵字", - "Members": "成員", - "Mentions only": "只有提到", - "Messages containing my display name": "訊息中有包含我的顯示名稱", - "Messages containing keywords": "訊息包含 關鍵字", - "Messages containing my user name": "訊息中有我的用戶名", - "Messages in group chats": "在群組聊天中的訊息", - "Messages in one-to-one chats": "在一對一聊天中的訊息", - "Messages sent by bot": "由機器人送出的訊息", - "more": "更多", - "Mute": "靜音", - "No rooms to show": "無聊天室可顯示", - "Noisy": "吵鬧", - "Notifications": "通知", - "Off": "關閉", - "On": "開啟", - "Operation failed": "操作失敗", - "powered by Matrix": "由Matrix架設", - "Quote": "引述", - "Remove": "移除", - "Resend": "重新送出", - "Room directory": "聊天室目錄", - "Room not found": "未找到聊天室", - "Search…": "搜尋...", - "Search for a room": "搜尋聊天室", - "Send": "送出", - "Send logs": "送出記錄", - "Source URL": "來源網址", - "Start chat": "開始聊天", - "This Room": "這個聊天室", - "This room is inaccessible to guests. You may be able to join if you register.": "這個聊天室不對訪客開放,要加入須先註冊。", - " to room": "到聊天室", - "Unable to join network": "無法加入網路", - "Unable to look up room ID from server": "無法從伺服器找到聊天室 ID", - "Unavailable": "無法取得", - "Unhide Preview": "不隱藏預覽", - "Unknown device": "不知名的設備", - "unknown error code": "未知的錯誤代碼", - "Unnamed room": "無名的聊天室", - "Update": "更新", - "Uploaded on %(date)s by %(user)s": "由 %(user)s 在 %(date)s 更新", - "Uploading report": "上傳報告", - "View Decrypted Source": "檢示解密的來源", - "View Source": "檢示來源", - "What's New": "新鮮事", - "What's new?": "有什麼新聞?", - "Waiting for response from server": "等候來自伺服器的回應", - "When I'm invited to a room": "當我被邀請加入聊天室", - "You cannot delete this message. (%(code)s)": "你不能刪除這個訊息 (%(code)s)", - "Sunday": "星期日", - "Monday": "星期一", - "Tuesday": "星期二", - "Wednesday": "星期三", - "Thursday": "星期四", - "Friday": "星期五", - "Saturday": "星期六", - "Today": "今天", - "Yesterday": "昨天", - "OK": "OK", - "You need to be using HTTPS to place a screen-sharing call.": "你需要使用 HTTPS 來置放畫面分享的通話。", - "Welcome page": "歡迎頁", - "A new version of Riot is available.": " Riot 發佈了新版本", - "Add an email address above to configure email notifications": "在上面新增電子郵件以設定電郵通知", - "All notifications are currently disabled for all targets.": "目前所有的通知功能已取消", - "An error occurred whilst saving your email notification preferences.": "在儲存你的電郵通知偏好時發生錯誤", - "Collecting app version information": "收集應用程式版本資訊", - "Delete the room alias %(alias)s and remove %(name)s from the directory?": "刪除聊天室別名 %(alias)s並從目錄移除 %(name)s", - "Enable audible notifications in web client": "在網頁客戶端設定聲音通知", - "Enter keywords separated by a comma:": "輸入關鍵字以逼號,區隔", - "Error saving email notification preferences": "儲存電郵通知偏好時出錯", - "Failed to add tag %(tagName)s to room": "無法為聊天室新增標籤 %(tagName)s", - "Failed to get protocol list from Home Server": "無法從主機伺服器取得協議清單", - "Failed to get public room list": "無法取得公開的聊天室清單", - "Failed to remove tag %(tagName)s from room": "移除聊天室的標籤 %(tagName)s 失敗", - "Failed to send report: ": "無法傳送報告:", - "Failed to set direct chat tag": "無法設定直接聊天標籤", - "Failed to set Direct Message status of room": "無法設定聊天室的私訊狀態", - "Fetching third party location failed": "抓取第三方位置失敗", - "Files": "檔案", - "Filter room names": "過濾聊天室名稱", - "Forget": "忘記", - "Forward Message": "轉寄訊息", - " from room": "來自聊天室", - "Guests can join": "訪客可以加入", - "Guest users can't invite users. Please register to invite.": "訪客不能邀請用戶,請先註冊再行邀請。", - "Hide panel": "隱藏面板", - "I understand the risks and wish to continue": "我了解這些風險並願意繼續", - "Invite to this room": "邀請加入這個聊天室", - "Keywords": "關鍵字", - "Leave": "離開", - "Loading bug report module": "載入程式臭蟲報告模組", - "Low Priority": "低度優先", - "Notify for all other messages/rooms": "通知所有其它的訊息/聊天室", - "Notify me for anything else": "所有消息都通知我", - "Permalink": "永久鏈接", - "Please install Chrome or Firefox for the best experience.": "諘安裝 ChromeFirefox 來取得最佳體驗。", - "Please Register": "請註冊", - "Redact": "纂輯\t", - "Reject": "拒絕", - "Remove %(name)s from the directory?": "自目錄中移除 %(name)s?", - "remove %(name)s from the directory.": "自目錄中移除 %(name)s", - "Remove from Directory": "自目錄中移除", - "Report a bug": "回報程式臭蟲", - "Riot Desktop on %(platformName)s": "Riot 在 %(platformName)s 桌面", - "Riot does not know how to join a room on this network": "Riot 不知道如何在此網路中加入聊天室", - "Sorry, your browser is not able to run Riot.": "可惜你的瀏覽器 無法 執行 Riot.", - "The Home Server may be too old to support third party networks": "主機伺服器可能太老舊無法支援第三方網路", - "The server may be unavailable or overloaded": "伺服器可能過載或無法連取", - "Unable to fetch notification target list": "無法抓取通知的目標清單", - "customServer_text": "你可以使用自定伺服器選項來登入其它的 Matrix 伺服器,只要在在主機伺服器網址上指定其網址資料。
    這可讓你透過已有的 Matrix 帳號在不同的主機伺服器上使用 Riot。

    你也可以設定自定的識別伺服器但你將無法透過電子郵件來邀請用戶或是以自己的電子郵件來接受別人的邀請。", - "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "為了診斷問題,來自客戶的活動記錄會隨著這個程式臭蟲報告一起送出。如果你只想送出以上文字,請取消勾選:", - "Notification targets": "通知標的", - "Notifications on the following keywords follow rules which can’t be displayed here:": "以下關鍵字依照規則其通知將不會顯示在此:", - "Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "請描述這個程式臭蟲,你作了什麼動作?你預期會發生什麼狀況?以及實際發生的狀況為何?", - "Please describe the bug and/or send logs.": "請描述這個程式臭蟲以及/或送出活動記錄。", - "Riot is not supported on mobile web. Install the app?": "Riot 不支援行動網頁,要下載應用程式嗎?", - "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Roit 使用了許多先進的瀏覽器功能,有些在你目前所用的瀏覽器上無法使用或僅為試驗效能。", - "There are advanced notifications which are not shown here": "有些進階的通知並未在此顯現", - "World readable": "全世界可讀", - "You cannot delete this image. (%(code)s)": "你不能刪除這個圖片(%(code)s)", - "You are not receiving desktop notifications": "你將不會收到桌面通知", - "You are Rioting as a guest. Register or sign in to access more rooms and features!": "你目前以訪客身份使用 Riot 註冊登錄 來使用更多聊天室和功能!", - "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "你也許不曾在其它Riot之外的客戶端設定它們,在 Riot底下你無法調它們但其仍然可用", - "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "你目前的瀏覽器,其應用程式的外觀和感覺可能完全不正確,有些或全部功能可以無法使用。如果你仍想試,可以繼續但得自負後果。" + "%(appName)s via %(browserName)s on %(osName)s": "在 %(osName)s 的 %(browserName)s 上的 %(appName)s", + "Custom Server Options": "自訂伺服器選項", + "Dismiss": "關閉", + "powered by Matrix": "由 Matrix 提供", + "Unknown device": "未知裝置", + "You need to be using HTTPS to place a screen-sharing call.": "你需要使用 HTTPS 來撥打螢幕分享的通話。", + "Riot Desktop on %(platformName)s": "%(platformName)s 的 Riot 桌面版", + "Riot is not supported on mobile web. Install the app?": "Riot 不支援行動版網頁,要安裝應用程式嗎?", + "Welcome to Riot.im": "歡迎來到 Riot.im", + "Decentralised, encrypted chat & collaboration powered by [matrix]": "去中心化、保密的聊天與協作,由 [matrix] 提供", + "Search the room directory": "搜尋聊天室目錄", + "Chat with Riot Bot": "與 Riot 機器人聊天", + "Get started with some tips from Riot Bot!": "從 Riot 機器人了解使用 Riot 的訣竅吧!", + "General discussion about Matrix and Riot": "Matrix 與 Riot 的一般討論", + "Discussion of all things Matrix!": "所有 Matrix 相關的一般討論", + "Riot/Web & Desktop chat": "Riot/Web 與桌面版的討論", + "Riot/iOS & matrix-ios-sdk chat": "Riot/iOS 與 matrix-ios-sdk 的討論", + "Riot/Android & matrix-android-sdk chat": "Riot/Android 與 matrix-android-sdk 的討論", + "Matrix technical discussions": "Matrix 技術討論", + "Running Matrix services": "關於 Matrix 服務營運", + "Community-run support for Synapse": "Synapse 社群支援聊天室", + "Admin support for Dendrite": "Dendrite 管理員支援聊天室", + "Announcements about Synapse releases": "Synapse 發行公告", + "Support for those using and running matrix-appservice-irc": "matrix-appservice-irc 使用者與營運的支援", + "Building services on Matrix": "關於在 Matrix 上開發服務", + "Support for those using the Matrix spec": "Matrix 規格使用者支援聊天室", + "Design and implementation of E2E in Matrix": "Matrix 中點對點加密的設計與實作討論", + "Implementing VR services with Matrix": "使用 Matrix 實作虛擬實境服務的討論", + "Implementing VoIP services with Matrix": "使用 Matrix 實作 VoIP 服務的討論", + "Discussion of the Identity Service API": "識別服務 API 的討論", + "Support for those using, running and writing other bridges": "使用、執行與撰寫其他橋接服務的支援聊天室", + "Contributing code to Matrix and Riot": "關於貢獻 Matrix 和 Riot", + "Dev chat for the Riot/Web dev team": "Riot/Web 開發團隊的開發聊天室", + "Dev chat for the Dendrite dev team": "Dendrite 開發團隊的開發聊天室", + "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Matrix 中已有許多聊天室,連結到已有的網路(Slack、IRC 與 Gitter 等等)或是獨立的網路。來看看聊天室目錄吧!", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.
    This allows you to use Riot with an existing Matrix account on a different home server.

    You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "您可以使用自訂的伺服器選項,並指定不同的家伺服器 URL 來登入其他的 Matrix 伺服器。
    這讓您可以在不同的伺服器上以既有的 Matrix 帳號使用 Riot。

    您也可以設定一個自訂的識別伺服器,但您可能無法透過電子郵件地址來邀請使用者,或是讓別人透過電子郵件邀請您。", + "Co-ordination for Riot translators": "Riot 翻譯的協作" } diff --git a/src/notifications/ContentRules.js b/src/notifications/ContentRules.js deleted file mode 100644 index 25a7bac96e..0000000000 --- a/src/notifications/ContentRules.js +++ /dev/null @@ -1,125 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -'use strict'; - -var PushRuleVectorState = require('./PushRuleVectorState'); - -module.exports = { - /** - * Extract the keyword rules from a list of rules, and parse them - * into a form which is useful for Vector's UI. - * - * Returns an object containing: - * rules: the primary list of keyword rules - * vectorState: a PushRuleVectorState indicating whether those rules are - * OFF/ON/LOUD - * externalRules: a list of other keyword rules, with states other than - * vectorState - */ - parseContentRules: function(rulesets) { - // first categorise the keyword rules in terms of their actions - var contentRules = this._categoriseContentRules(rulesets); - - // Decide which content rules to display in Vector UI. - // Vector displays a single global rule for a list of keywords - // whereas Matrix has a push rule per keyword. - // Vector can set the unique rule in ON, LOUD or OFF state. - // Matrix has enabled/disabled plus a combination of (highlight, sound) tweaks. - - // The code below determines which set of user's content push rules can be - // displayed by the vector UI. - // Push rules that does not fit, ie defined by another Matrix client, ends - // in externalRules. - // There is priority in the determination of which set will be the displayed one. - // The set with rules that have LOUD tweaks is the first choice. Then, the ones - // with ON tweaks (no tweaks). - - if (contentRules.loud.length) { - return { - vectorState: PushRuleVectorState.LOUD, - rules: contentRules.loud, - externalRules: [].concat(contentRules.loud_but_disabled, contentRules.on, contentRules.on_but_disabled, contentRules.other), - }; - } - else if (contentRules.loud_but_disabled.length) { - return { - vectorState: PushRuleVectorState.OFF, - rules: contentRules.loud_but_disabled, - externalRules: [].concat(contentRules.on, contentRules.on_but_disabled, contentRules.other), - }; - } - else if (contentRules.on.length) { - return { - vectorState: PushRuleVectorState.ON, - rules: contentRules.on, - externalRules: [].concat(contentRules.on_but_disabled, contentRules.other), - }; - } - else if (contentRules.on_but_disabled.length) { - return { - vectorState: PushRuleVectorState.OFF, - rules: contentRules.on_but_disabled, - externalRules: contentRules.other, - } - } else { - return { - vectorState: PushRuleVectorState.ON, - rules: [], - externalRules: contentRules.other, - } - } - }, - - _categoriseContentRules: function(rulesets) { - var contentRules = {on: [], on_but_disabled:[], loud: [], loud_but_disabled: [], other: []}; - for (var kind in rulesets.global) { - for (var i = 0; i < Object.keys(rulesets.global[kind]).length; ++i) { - var r = rulesets.global[kind][i]; - - // check it's not a default rule - if (r.rule_id[0] === '.' || kind !== 'content') { - continue; - } - - r.kind = kind; // is this needed? not sure - - switch (PushRuleVectorState.contentRuleVectorStateKind(r)) { - case PushRuleVectorState.ON: - if (r.enabled) { - contentRules.on.push(r); - } - else { - contentRules.on_but_disabled.push(r); - } - break; - case PushRuleVectorState.LOUD: - if (r.enabled) { - contentRules.loud.push(r); - } - else { - contentRules.loud_but_disabled.push(r); - } - break; - default: - contentRules.other.push(r); - break; - } - } - } - return contentRules; - }, -}; diff --git a/src/notifications/NotificationUtils.js b/src/notifications/NotificationUtils.js deleted file mode 100644 index c8aeb46854..0000000000 --- a/src/notifications/NotificationUtils.js +++ /dev/null @@ -1,89 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -'use strict'; - -module.exports = { - // Encodes a dictionary of { - // "notify": true/false, - // "sound": string or undefined, - // "highlight: true/false, - // } - // to a list of push actions. - encodeActions: function(action) { - var notify = action.notify; - var sound = action.sound; - var highlight = action.highlight; - if (notify) { - var actions = ["notify"]; - if (sound) { - actions.push({"set_tweak": "sound", "value": sound}); - } - if (highlight) { - actions.push({"set_tweak": "highlight"}); - } else { - actions.push({"set_tweak": "highlight", "value": false}); - } - return actions; - } else { - return ["dont_notify"]; - } - }, - - // Decode a list of actions to a dictionary of { - // "notify": true/false, - // "sound": string or undefined, - // "highlight: true/false, - // } - // If the actions couldn't be decoded then returns null. - decodeActions: function(actions) { - var notify = false; - var sound = null; - var highlight = false; - - for (var i = 0; i < actions.length; ++i) { - var action = actions[i]; - if (action === "notify") { - notify = true; - } else if (action === "dont_notify") { - notify = false; - } else if (typeof action === 'object') { - if (action.set_tweak === "sound") { - sound = action.value - } else if (action.set_tweak === "highlight") { - highlight = action.value; - } else { - // We don't understand this kind of tweak, so give up. - return null; - } - } else { - // We don't understand this kind of action, so give up. - return null; - } - } - - if (highlight === undefined) { - // If a highlight tweak is missing a value then it defaults to true. - highlight = true; - } - - var result = {notify: notify, highlight: highlight}; - if (sound !== null) { - result.sound = sound; - } - return result; - }, -}; diff --git a/src/notifications/PushRuleVectorState.js b/src/notifications/PushRuleVectorState.js deleted file mode 100644 index c838aa20ed..0000000000 --- a/src/notifications/PushRuleVectorState.js +++ /dev/null @@ -1,94 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -'use strict'; - -var StandardActions = require('./StandardActions'); -var NotificationUtils = require('./NotificationUtils'); - -var states = { - /** The push rule is disabled */ - OFF: "off", - - /** The user will receive push notification for this rule */ - ON: "on", - - /** The user will receive push notification for this rule with sound and - highlight if this is legitimate */ - LOUD: "loud", -}; - - -module.exports = { - /** - * Enum for state of a push rule as defined by the Vector UI. - * @readonly - * @enum {string} - */ - states: states, - - /** - * Convert a PushRuleVectorState to a list of actions - * - * @return [object] list of push-rule actions - */ - actionsFor: function(pushRuleVectorState) { - if (pushRuleVectorState === this.ON) { - return StandardActions.ACTION_NOTIFY; - } - else if (pushRuleVectorState === this.LOUD) { - return StandardActions.ACTION_HIGHLIGHT_DEFAULT_SOUND; - } - }, - - /** - * Convert a pushrule's actions to a PushRuleVectorState. - * - * Determines whether a content rule is in the PushRuleVectorState.ON - * category or in PushRuleVectorState.LOUD, regardless of its enabled - * state. Returns null if it does not match these categories. - */ - contentRuleVectorStateKind: function(rule) { - var decoded = NotificationUtils.decodeActions(rule.actions); - - if (!decoded) { - return null; - } - - // Count tweaks to determine if it is a ON or LOUD rule - var tweaks = 0; - if (decoded.sound) { - tweaks++; - } - if (decoded.highlight) { - tweaks++; - } - var stateKind = null; - switch (tweaks) { - case 0: - stateKind = this.ON; - break; - case 2: - stateKind = this.LOUD; - break; - } - return stateKind; - }, -}; - -for (var k in states) { - module.exports[k] = states[k]; -}; diff --git a/src/notifications/StandardActions.js b/src/notifications/StandardActions.js deleted file mode 100644 index 22a8f1db40..0000000000 --- a/src/notifications/StandardActions.js +++ /dev/null @@ -1,30 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -'use strict'; - -var NotificationUtils = require('./NotificationUtils'); - -var encodeActions = NotificationUtils.encodeActions; - -module.exports = { - ACTION_NOTIFY: encodeActions({notify: true}), - ACTION_NOTIFY_DEFAULT_SOUND: encodeActions({notify: true, sound: "default"}), - ACTION_NOTIFY_RING_SOUND: encodeActions({notify: true, sound: "ring"}), - ACTION_HIGHLIGHT_DEFAULT_SOUND: encodeActions({notify: true, sound: "default", highlight: true}), - ACTION_DONT_NOTIFY: encodeActions({notify: false}), - ACTION_DISABLED: null, -}; diff --git a/src/notifications/VectorPushRulesDefinitions.js b/src/notifications/VectorPushRulesDefinitions.js deleted file mode 100644 index df6db6c354..0000000000 --- a/src/notifications/VectorPushRulesDefinitions.js +++ /dev/null @@ -1,144 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -'use strict'; - -var StandardActions = require('./StandardActions'); -var PushRuleVectorState = require('./PushRuleVectorState'); - -class VectorPushRuleDefinition { - constructor(opts) { - this.kind = opts.kind; - this.description = opts.description; - this.vectorStateToActions = opts.vectorStateToActions; - } - - // Translate the rule actions and its enabled value into vector state - ruleToVectorState(rule) { - var enabled = false; - var actions = null; - if (rule) { - enabled = rule.enabled; - actions = rule.actions; - } - - for (var stateKey in PushRuleVectorState.states) { - var state = PushRuleVectorState.states[stateKey]; - var vectorStateToActions = this.vectorStateToActions[state]; - - if (!vectorStateToActions) { - // No defined actions means that this vector state expects a disabled (or absent) rule - if (!enabled) { - return state; - } - } else { - // The actions must match to the ones expected by vector state - if (enabled && JSON.stringify(rule.actions) === JSON.stringify(vectorStateToActions)) { - return state; - } - } - } - - console.error("Cannot translate rule actions into Vector rule state. Rule: " + - JSON.stringify(rule)); - return undefined; - } -}; - -/** - * The descriptions of rules managed by the Vector UI. - */ -module.exports = { - // Messages containing user's display name - ".m.rule.contains_display_name": new VectorPushRuleDefinition({ - kind: "override", - description: "Messages containing my display name", // passed through _t() translation in src/components/views/settings/Notifications.js - vectorStateToActions: { // The actions for each vector state, or null to disable the rule. - on: StandardActions.ACTION_NOTIFY, - loud: StandardActions.ACTION_HIGHLIGHT_DEFAULT_SOUND, - off: StandardActions.ACTION_DISABLED - } - }), - - // Messages containing user's username (localpart/MXID) - ".m.rule.contains_user_name": new VectorPushRuleDefinition({ - kind: "override", - description: "Messages containing my user name", // passed through _t() translation in src/components/views/settings/Notifications.js - vectorStateToActions: { // The actions for each vector state, or null to disable the rule. - on: StandardActions.ACTION_NOTIFY, - loud: StandardActions.ACTION_HIGHLIGHT_DEFAULT_SOUND, - off: StandardActions.ACTION_DISABLED - } - }), - - // Messages just sent to the user in a 1:1 room - ".m.rule.room_one_to_one": new VectorPushRuleDefinition({ - kind: "underride", - description: "Messages in one-to-one chats", // passed through _t() translation in src/components/views/settings/Notifications.js - vectorStateToActions: { - on: StandardActions.ACTION_NOTIFY, - loud: StandardActions.ACTION_NOTIFY_DEFAULT_SOUND, - off: StandardActions.ACTION_DONT_NOTIFY - } - }), - - // Messages just sent to a group chat room - // 1:1 room messages are catched by the .m.rule.room_one_to_one rule if any defined - // By opposition, all other room messages are from group chat rooms. - ".m.rule.message": new VectorPushRuleDefinition({ - kind: "underride", - description: "Messages in group chats", // passed through _t() translation in src/components/views/settings/Notifications.js - vectorStateToActions: { - on: StandardActions.ACTION_NOTIFY, - loud: StandardActions.ACTION_NOTIFY_DEFAULT_SOUND, - off: StandardActions.ACTION_DONT_NOTIFY - } - }), - - // Invitation for the user - ".m.rule.invite_for_me": new VectorPushRuleDefinition({ - kind: "underride", - description: "When I'm invited to a room", // passed through _t() translation in src/components/views/settings/Notifications.js - vectorStateToActions: { - on: StandardActions.ACTION_NOTIFY, - loud: StandardActions.ACTION_NOTIFY_DEFAULT_SOUND, - off: StandardActions.ACTION_DISABLED - } - }), - - // Incoming call - ".m.rule.call": new VectorPushRuleDefinition({ - kind: "underride", - description: "Call invitation", // passed through _t() translation in src/components/views/settings/Notifications.js - vectorStateToActions: { - on: StandardActions.ACTION_NOTIFY, - loud: StandardActions.ACTION_NOTIFY_RING_SOUND, - off: StandardActions.ACTION_DISABLED - } - }), - - // Notifications from bots - ".m.rule.suppress_notices": new VectorPushRuleDefinition({ - kind: "override", - description: "Messages sent by bot", // passed through _t() translation in src/components/views/settings/Notifications.js - vectorStateToActions: { - // .m.rule.suppress_notices is a "negative" rule, we have to invert its enabled value for vector UI - on: StandardActions.ACTION_DISABLED, - loud: StandardActions.ACTION_NOTIFY_DEFAULT_SOUND, - off: StandardActions.ACTION_DONT_NOTIFY, - } - }), -}; diff --git a/src/notifications/index.js b/src/notifications/index.js deleted file mode 100644 index 8ed77e9d41..0000000000 --- a/src/notifications/index.js +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -'use strict'; - -module.exports = { - NotificationUtils: require('./NotificationUtils'), - PushRuleVectorState: require('./PushRuleVectorState'), - VectorPushRulesDefinitions: require('./VectorPushRulesDefinitions'), - ContentRules: require('./ContentRules'), -}; diff --git a/src/skins/vector/css/_common.scss b/src/skins/vector/css/_common.scss deleted file mode 100644 index 5b1d1de6f1..0000000000 --- a/src/skins/vector/css/_common.scss +++ /dev/null @@ -1,308 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -html { - /* hack to stop overscroll bounce on OSX and iOS. - N.B. Breaks things when we have legitimate horizontal overscroll */ - height: 100%; - overflow: hidden; -} - -body { - /* Open Sans lacks combining diacritics, so these will fall through - to the next font. Helevetica's diacritics however do not combine - nicely with Open Sans (on OSX, at least) and result in a huge - horizontal mess. Arial empirically gets it right, hence prioritising - Arial here. */ - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; - font-size: 15px; - background-color: $primary-bg-color; - color: $primary-fg-color; - border: 0px; - margin: 0px; - /* This should render the fonts the same accross browsers */ - -webkit-font-smoothing: subpixel-antialiased; -} - -div.error { - color: red; -} - -h2 { - color: $primary-fg-color; - font-weight: 400; - font-size: 18px; - margin-top: 16px; - margin-bottom: 16px; -} - -a:hover, -a:link, -a:visited { - color: $accent-color; -} - -input[type=text], input[type=password], textarea { - background-color: transparent; - color: $primary-fg-color; -} - -input[type=text].error, input[type=password].error { - border: 1px solid $warning-color; -} - -input[type=text]:focus, input[type=password]:focus, textarea:focus { - border: 1px solid $accent-color; - outline: none; - box-shadow: none; -} - -/* Required by Firefox */ -textarea { - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; -} - -/* Prevent ugly dotted highlight around selected elements in Firefox */ -::-moz-focus-inner { - border: 0; -} - -/* applied to side-panels and messagepanel when in RoomSettings */ -.mx_fadable { - opacity: 1; - transition: opacity 0.2s ease-in-out; -} - -/* XXX: critical hack to GeminiScrollbar to allow them to work in FF 42 and Chrome 48. - Stop the scrollbar view from pushing out the container's overall sizing, which causes - flexbox to adapt to the new size and cause the view to keep growing. - */ -.gm-scrollbar-container .gm-scroll-view { - position: absolute; -} - -/* Expand thumbs on hoverover */ -.gm-scrollbar { - border-radius: 5px ! important; -} -.gm-scrollbar.-vertical { - width: 6px; - transition: width 120ms ease-out ! important; -} -.gm-scrollbar.-vertical:hover, -.gm-scrollbar.-vertical:active { - width: 8px; - transition: width 120ms ease-out ! important; -} -.gm-scrollbar.-horizontal { - height: 6px; - transition: height 120ms ease-out ! important; -} -.gm-scrollbar.-horizontal:hover, -.gm-scrollbar.-horizontal:active { - height: 8px; - transition: height 120ms ease-out ! important; -} - -.mx_Dialog_wrapper { - position: fixed; - z-index: 4000; - top: 0; - left: 0; - width: 100%; - height: 100%; - - display: flex; - align-items: center; - justify-content: center; -} - -/* Spinner Dialog overide */ -.mx_Dialog_wrapper.mx_Dialog_spinner .mx_Dialog { - width: auto; - border-radius: 8px; - padding: 0px; - box-shadow: none; -} - -/* View Source Dialog overide */ -.mx_Dialog_wrapper.mx_Dialog_viewsource .mx_Dialog { - padding-left: 10px; - padding-right: 10px; -} - -.mx_Dialog { - background-color: $primary-bg-color; - color: $light-fg-color; - z-index: 4010; - font-weight: 300; - font-size: 15px; - position: relative; - padding-left: 58px; - padding-bottom: 36px; - width: 60%; - max-width: 704px; - box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.2); - max-height: 80%; - overflow-y: auto; -} - -.mx_Dialog_background { - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100%; - background-color: $dialog-background-bg-color; - opacity: 0.8; -} - -.mx_Dialog_lightbox .mx_Dialog_background { - opacity: 0.85; - background-color: $lightbox-background-bg-color; -} - -.mx_Dialog_lightbox .mx_Dialog { - border-radius: 0px; - background-color: transparent; - width: 100%; - height: 100%; - max-width: 100%; - max-height: 100%; - pointer-events: none; -} - -.mx_Dialog_cancelButton { - position: absolute; - right: 11px; - top: 13px; - cursor: pointer; -} - -.mx_Dialog_cancelButton object { - pointer-events: none; -} - -.mx_Dialog_content { - margin: 24px 58px 68px 0; - font-size: 14px; - color: $primary-fg-color; - word-wrap: break-word; -} - -.mx_Dialog button, .mx_Dialog input[type="submit"] { - border: 0px; - height: 36px; - border-radius: 40px; - border: solid 1px $accent-color; - font-weight: 600; - font-size: 14px; - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; - margin-left: 0px; - margin-right: 8px; - padding-left: 1.5em; - padding-right: 1.5em; - outline: none; - cursor: pointer; - color: $accent-color; - background-color: $primary-bg-color; - - /* align images in buttons (eg spinners) */ - vertical-align: middle; -} - -.mx_Dialog button:focus, .mx_Dialog input[type="submit"]:focus { - filter: brightness($focus-brightness); -} - -.mx_Dialog button.mx_Dialog_primary, .mx_Dialog input[type="submit"].mx_Dialog_primary { - color: $accent-fg-color; - background-color: $accent-color; -} - -.mx_Dialog button.danger, .mx_Dialog input[type="submit"].danger { - background-color: $warning-color; - border: solid 1px $warning-color; -} - -.mx_Dialog button:disabled, .mx_Dialog input[type="submit"]:disabled { - background-color: $light-fg-color; - border: solid 1px $light-fg-color; - opacity: 0.7; -} - -.mx_Dialog_title { - min-height: 16px; - padding-top: 40px; - font-weight: bold; - font-size: 22px; - line-height: 1.4; - color: $primary-fg-color; -} - -.mx_Dialog_title.danger { - color: $warning-color; -} - -.mx_TextInputDialog_label { - text-align: left; - padding-bottom: 12px; -} - -.mx_TextInputDialog_input { - font-size: 15px; - border-radius: 3px; - border: 1px solid $input-border-color; - padding: 9px; - color: $primary-fg-color; - background-color: $primary-bg-color; -} - -.mx_emojione { - height: 1em; - vertical-align: middle; -} - -::-moz-selection { - background-color: $accent-color; - color: $selection-fg-color; -} - -::selection { - background-color: $accent-color; - color: $selection-fg-color; -} - -/** green button with rounded corners */ -.mx_textButton { - color: $accent-fg-color; - background-color: $accent-color; - border-radius: 17px; - text-align: center; - padding-left: 1em; - padding-right: 1em; - cursor: pointer; - display: inline; -} - -.mx_button_row { - margin-top: 69px; -} - -.changelog_text { - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; -} diff --git a/src/skins/vector/css/_components.scss b/src/skins/vector/css/_components.scss deleted file mode 100644 index 4637530b56..0000000000 --- a/src/skins/vector/css/_components.scss +++ /dev/null @@ -1,84 +0,0 @@ -// autogenerated by rethemendex.sh -@import "./_common.scss"; -@import "./matrix-react-sdk/structures/_ContextualMenu.scss"; -@import "./matrix-react-sdk/structures/_CreateRoom.scss"; -@import "./matrix-react-sdk/structures/_FilePanel.scss"; -@import "./matrix-react-sdk/structures/_LoginBox.scss"; -@import "./matrix-react-sdk/structures/_MatrixChat.scss"; -@import "./matrix-react-sdk/structures/_NotificationPanel.scss"; -@import "./matrix-react-sdk/structures/_RoomStatusBar.scss"; -@import "./matrix-react-sdk/structures/_RoomView.scss"; -@import "./matrix-react-sdk/structures/_SearchBox.scss"; -@import "./matrix-react-sdk/structures/_UploadBar.scss"; -@import "./matrix-react-sdk/structures/_UserSettings.scss"; -@import "./matrix-react-sdk/structures/login/_Login.scss"; -@import "./matrix-react-sdk/views/avatars/_BaseAvatar.scss"; -@import "./matrix-react-sdk/views/dialogs/_BugReportDialog.scss"; -@import "./matrix-react-sdk/views/dialogs/_ChatCreateOrReuseChatDialog.scss"; -@import "./matrix-react-sdk/views/dialogs/_ChatInviteDialog.scss"; -@import "./matrix-react-sdk/views/dialogs/_ConfirmUserActionDialog.scss"; -@import "./matrix-react-sdk/views/dialogs/_EncryptedEventDialog.scss"; -@import "./matrix-react-sdk/views/dialogs/_SetMxIdDialog.scss"; -@import "./matrix-react-sdk/views/dialogs/_UnknownDeviceDialog.scss"; -@import "./matrix-react-sdk/views/elements/_AccessibleButton.scss"; -@import "./matrix-react-sdk/views/elements/_AddressSelector.scss"; -@import "./matrix-react-sdk/views/elements/_AddressTile.scss"; -@import "./matrix-react-sdk/views/elements/_DirectorySearchBox.scss"; -@import "./matrix-react-sdk/views/elements/_Dropdown.scss"; -@import "./matrix-react-sdk/views/elements/_MemberEventListSummary.scss"; -@import "./matrix-react-sdk/views/elements/_ProgressBar.scss"; -@import "./matrix-react-sdk/views/elements/_RichText.scss"; -@import "./matrix-react-sdk/views/elements/_RoleButton.scss"; -@import "./matrix-react-sdk/views/login/_InteractiveAuthEntryComponents.scss"; -@import "./matrix-react-sdk/views/login/_ServerConfig.scss"; -@import "./matrix-react-sdk/views/messages/_MEmoteBody.scss"; -@import "./matrix-react-sdk/views/messages/_MImageBody.scss"; -@import "./matrix-react-sdk/views/messages/_MNoticeBody.scss"; -@import "./matrix-react-sdk/views/messages/_MTextBody.scss"; -@import "./matrix-react-sdk/views/messages/_RoomAvatarEvent.scss"; -@import "./matrix-react-sdk/views/messages/_TextualEvent.scss"; -@import "./matrix-react-sdk/views/messages/_UnknownBody.scss"; -@import "./matrix-react-sdk/views/rooms/_Autocomplete.scss"; -@import "./matrix-react-sdk/views/rooms/_EntityTile.scss"; -@import "./matrix-react-sdk/views/rooms/_EventTile.scss"; -@import "./matrix-react-sdk/views/rooms/_LinkPreviewWidget.scss"; -@import "./matrix-react-sdk/views/rooms/_MemberDeviceInfo.scss"; -@import "./matrix-react-sdk/views/rooms/_MemberInfo.scss"; -@import "./matrix-react-sdk/views/rooms/_MemberList.scss"; -@import "./matrix-react-sdk/views/rooms/_MessageComposer.scss"; -@import "./matrix-react-sdk/views/rooms/_PresenceLabel.scss"; -@import "./matrix-react-sdk/views/rooms/_RoomHeader.scss"; -@import "./matrix-react-sdk/views/rooms/_RoomList.scss"; -@import "./matrix-react-sdk/views/rooms/_RoomPreviewBar.scss"; -@import "./matrix-react-sdk/views/rooms/_RoomSettings.scss"; -@import "./matrix-react-sdk/views/rooms/_RoomTile.scss"; -@import "./matrix-react-sdk/views/rooms/_SearchableEntityList.scss"; -@import "./matrix-react-sdk/views/rooms/_TabCompleteBar.scss"; -@import "./matrix-react-sdk/views/rooms/_TopUnreadMessagesBar.scss"; -@import "./matrix-react-sdk/views/settings/_DevicesPanel.scss"; -@import "./matrix-react-sdk/views/settings/_IntegrationsManager.scss"; -@import "./matrix-react-sdk/views/voip/_CallView.scss"; -@import "./matrix-react-sdk/views/voip/_IncomingCallbox.scss"; -@import "./matrix-react-sdk/views/voip/_VideoView.scss"; -@import "./vector-web/_fonts.scss"; -@import "./vector-web/structures/_CompatibilityPage.scss"; -@import "./vector-web/structures/_HomePage.scss"; -@import "./vector-web/structures/_LeftPanel.scss"; -@import "./vector-web/structures/_RightPanel.scss"; -@import "./vector-web/structures/_RoomDirectory.scss"; -@import "./vector-web/structures/_RoomSubList.scss"; -@import "./vector-web/structures/_ViewSource.scss"; -@import "./vector-web/views/context_menus/_MessageContextMenu.scss"; -@import "./vector-web/views/context_menus/_RoomTileContextMenu.scss"; -@import "./vector-web/views/dialogs/_ChangelogDialog.scss"; -@import "./vector-web/views/dialogs/_SetPasswordDialog.scss"; -@import "./vector-web/views/directory/_NetworkDropdown.scss"; -@import "./vector-web/views/elements/_ImageView.scss"; -@import "./vector-web/views/elements/_Spinner.scss"; -@import "./vector-web/views/globals/_MatrixToolbar.scss"; -@import "./vector-web/views/messages/_MessageTimestamp.scss"; -@import "./vector-web/views/messages/_SenderProfile.scss"; -@import "./vector-web/views/rooms/_RoomDropTarget.scss"; -@import "./vector-web/views/rooms/_RoomTooltip.scss"; -@import "./vector-web/views/rooms/_SearchBar.scss"; -@import "./vector-web/views/settings/_Notifications.scss"; diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_ContextualMenu.scss b/src/skins/vector/css/matrix-react-sdk/structures/_ContextualMenu.scss deleted file mode 100644 index d3e73a9a15..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_ContextualMenu.scss +++ /dev/null @@ -1,106 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_ContextualMenu_wrapper { - position: fixed; - z-index: 2000; -} - -.mx_ContextualMenu_background { - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100%; - opacity: 1.0; - z-index: 2000; -} - -.mx_ContextualMenu { - border: solid 1px $menu-border-color; - border-radius: 4px; - background-color: $menu-bg-color; - color: $primary-fg-color; - position: absolute; - padding: 6px; - font-size: 14px; - z-index: 2001; -} - -.mx_ContextualMenu.mx_ContextualMenu_right { - right: 8px; -} - -.mx_ContextualMenu_chevron_right { - position: absolute; - right: -8px; - top: 0px; - width: 0; - height: 0; - border-top: 8px solid transparent; - border-left: 8px solid $menu-border-color; - border-bottom: 8px solid transparent; -} - -.mx_ContextualMenu_chevron_right:after { - content:''; - width: 0; - height: 0; - border-top: 7px solid transparent; - border-left: 7px solid $menu-bg-color; - border-bottom: 7px solid transparent; - position:absolute; - top: -7px; - right: 1px; -} - -.mx_ContextualMenu.mx_ContextualMenu_left { - left: 8px; -} - -.mx_ContextualMenu_chevron_left { - position: absolute; - left: -8px; - top: 0px; - width: 0; - height: 0; - border-top: 8px solid transparent; - border-right: 8px solid $menu-border-color; - border-bottom: 8px solid transparent; -} - -.mx_ContextualMenu_chevron_left:after{ - content:''; - width: 0; - height: 0; - border-top: 7px solid transparent; - border-right: 7px solid $menu-bg-color; - border-bottom: 7px solid transparent; - position:absolute; - top: -7px; - left: 1px; -} - -.mx_ContextualMenu_field { - padding: 3px 6px 3px 6px; - cursor: pointer; - white-space: nowrap; -} - -.mx_ContextualMenu_spinner { - display: block; - margin: 0 auto; -} diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_CreateRoom.scss b/src/skins/vector/css/matrix-react-sdk/structures/_CreateRoom.scss deleted file mode 100644 index 2be193525e..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_CreateRoom.scss +++ /dev/null @@ -1,37 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_CreateRoom { - width: 960px; - margin-left: auto; - margin-right: auto; - color: $primary-fg-color; -} - -.mx_CreateRoom input, -.mx_CreateRoom textarea { - border-radius: 3px; - border: 1px solid $strong-input-border-color; - font-weight: 300; - font-size: 13px; - padding: 9px; - margin-top: 6px; -} - -.mx_CreateRoom_description { - width: 330px; -} - diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_FilePanel.scss b/src/skins/vector/css/matrix-react-sdk/structures/_FilePanel.scss deleted file mode 100644 index 58e090645f..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_FilePanel.scss +++ /dev/null @@ -1,114 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_FilePanel { - order: 2; - - flex: 1 1 0; - - width: 100%; - - overflow-y: auto; -} - -.mx_FilePanel .mx_RoomView_messageListWrapper { - margin-right: 20px; -} - -.mx_FilePanel .mx_RoomView_MessageList h2 { - display: none; -} - -/* FIXME: rather than having EventTile's default CSS be for MessagePanel, - we should make EventTile a base CSS class and customise it specifically - for usage in {Message,File,Notification}Panel. */ - -.mx_FilePanel .mx_EventTile_avatar { - display: none; -} - -/* Overrides for the attachment body tiles */ - -.mx_FilePanel .mx_EventTile { - word-break: break-word; -} - -.mx_FilePanel .mx_EventTile .mx_MImageBody { - margin-right: 0px; -} - -.mx_FilePanel .mx_EventTile .mx_MImageBody_download { - display: flex; - font-size: 14px; - color: $event-timestamp-color; -} - -.mx_FilePanel .mx_EventTile .mx_MImageBody_downloadLink { - flex: 1 1 auto; - color: $light-fg-color; -} - -.mx_FilePanel .mx_EventTile .mx_MImageBody_size { - flex: 1 0 0; - font-size: 11px; - text-align: right; - white-space: nowrap; -} - -/* Overides for the sender details line */ - -.mx_FilePanel .mx_EventTile_senderDetails { - display: flex; - margin-top: -2px; -} - -.mx_FilePanel .mx_EventTile_senderDetailsLink { - text-decoration: none; -} - -.mx_FilePanel .mx_EventTile .mx_SenderProfile { - flex: 1 1 auto; - line-height: initial; - padding: 0px; - font-size: 11px; - opacity: 1.0; - color: $event-timestamp-color; -} - -.mx_FilePanel .mx_EventTile .mx_MessageTimestamp { - flex: 1 0 0; - text-align: right; - visibility: visible; - position: initial; - font-size: 11px; - opacity: 1.0; - color: $event-timestamp-color; -} - -/* Overrides for the wrappers around the body tile */ - -.mx_FilePanel .mx_EventTile_line { - margin-right: 0px; - padding-left: 0px; -} - -.mx_FilePanel .mx_EventTile:hover .mx_EventTile_line { - background-color: $primary-bg-color; -} - -.mx_FilePanel .mx_EventTile_selected .mx_EventTile_line { - padding-left: 0px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_LoginBox.scss b/src/skins/vector/css/matrix-react-sdk/structures/_LoginBox.scss deleted file mode 100644 index 3c8091fe9e..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_LoginBox.scss +++ /dev/null @@ -1,36 +0,0 @@ -/* -Copyright 2017 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_LoginBox_loginButton_wrapper { - text-align: center; - width: 100%; -} - -.mx_LoginBox_loginButton { - margin-top: -8px; - height: 40px; - border: 0px; - border-radius: 40px; - padding-left: 1em; - padding-right: 1em; - - background-color: $accent-color; - color: $primary-bg-color; - - cursor: pointer; - - font-size: 15px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_MatrixChat.scss b/src/skins/vector/css/matrix-react-sdk/structures/_MatrixChat.scss deleted file mode 100644 index 156b1709fe..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_MatrixChat.scss +++ /dev/null @@ -1,104 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MatrixChat_splash { - position: relative; - height: 100%; -} - -.mx_MatrixChat_splashButtons { - text-align: center; - width: 100%; - position: absolute; - bottom: 30px; -} - -.mx_MatrixChat_wrapper { - display: flex; - - flex-direction: column; - - width: 100%; - height: 100%; -} - -.mx_MatrixToolbar { - order: 1; - - height: 40px; -} - -.mx_MatrixChat_toolbarShowing { - height: auto; -} - -.mx_MatrixChat { - width: 100%; - height: 100%; - - display: flex; - - order: 2; - - flex: 1; -} - -.mx_MatrixChat .mx_LeftPanel { - order: 1; - - background-color: $secondary-accent-color; - - flex: 0 0 235px; -} - -.mx_MatrixChat .mx_LeftPanel.collapsed { - flex: 0 0 60px; -} - -.mx_MatrixChat .mx_MatrixChat_middlePanel { - order: 2; - - padding-left: 20px; - padding-right: 22px; - background-color: $primary-bg-color; - - flex: 1; - - /* Experimental fix for https://github.com/vector-im/vector-web/issues/947 - and https://github.com/vector-im/vector-web/issues/946. - Empirically this stops the MessagePanel's width exploding outwards when - gemini is in 'prevented' mode - */ - overflow-x: auto; - - display: flex; - - /* To fix https://github.com/vector-im/riot-web/issues/3298 where Safari - needed height 100% all the way down to the HomePage. Height does not - have to be auto, empirically. - */ - height: 100%; -} - -.mx_MatrixChat .mx_RightPanel { - order: 3; - - flex: 0 0 235px; -} - -.mx_MatrixChat .mx_RightPanel.collapsed { - flex: 0 0 122px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_NotificationPanel.scss b/src/skins/vector/css/matrix-react-sdk/structures/_NotificationPanel.scss deleted file mode 100644 index ef75678dce..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_NotificationPanel.scss +++ /dev/null @@ -1,100 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_NotificationPanel { - order: 2; - - flex: 1 1 0; - - width: 100%; - - overflow-y: auto; -} - -.mx_NotificationPanel .mx_RoomView_messageListWrapper { - margin-right: 20px; -} - -.mx_NotificationPanel .mx_RoomView_MessageList h2 { - margin-left: 0px; -} - -/* FIXME: rather than having EventTile's default CSS be for MessagePanel, - we should make EventTile a base CSS class and customise it specifically - for usage in {Message,File,Notification}Panel. */ - -.mx_NotificationPanel .mx_EventTile { - word-break: break-word; -} - -.mx_NotificationPanel .mx_EventTile_roomName { - font-weight: bold; - font-size: 14px; -} - -.mx_NotificationPanel .mx_EventTile_roomName a { - color: $primary-fg-color; -} - -.mx_NotificationPanel .mx_EventTile_avatar { - top: 8px; - left: 0px; -} - -.mx_NotificationPanel .mx_EventTile .mx_SenderProfile, -.mx_NotificationPanel .mx_EventTile .mx_MessageTimestamp { - color: $primary-fg-color; - font-size: 12px; - display: inline; - padding-left: 0px; -} - -.mx_NotificationPanel .mx_EventTile_senderDetails { - padding-left: 32px; - padding-top: 8px; - position: relative; -} - -.mx_NotificationPanel .mx_EventTile_roomName a, -.mx_NotificationPanel .mx_EventTile_senderDetails a { - text-decoration: none ! important; -} - -.mx_NotificationPanel .mx_EventTile .mx_MessageTimestamp { - visibility: visible; - position: initial; - display: inline; -} - -.mx_NotificationPanel .mx_EventTile_line { - margin-right: 0px; - padding-left: 32px; - padding-top: 0px; - padding-bottom: 0px; - padding-right: 0px; -} - -.mx_NotificationPanel .mx_EventTile:hover .mx_EventTile_line { - background-color: $primary-bg-color; -} - -.mx_NotificationPanel .mx_EventTile_selected .mx_EventTile_line { - padding-left: 0px; -} - -.mx_NotificationPanel .mx_EventTile_content { - margin-right: 0px; -} \ No newline at end of file diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_RoomStatusBar.scss b/src/skins/vector/css/matrix-react-sdk/structures/_RoomStatusBar.scss deleted file mode 100644 index 1ae2a47c86..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_RoomStatusBar.scss +++ /dev/null @@ -1,196 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomStatusBar { - margin-left: 65px; - min-height: 50px; -} - -/* position the indicator in the same place horizontally as .mx_EventTile_avatar. */ -.mx_RoomStatusBar_indicator { - padding-left: 17px; - padding-right: 12px; - margin-left: -73px; - margin-top: 15px; - float: left; - width: 24px; - text-align: center; -} - -.mx_RoomStatusBar_callBar { - height: 50px; - line-height: 50px; -} - -.mx_RoomStatusBar_placeholderIndicator span { - color: $primary-fg-color; - opacity: 0.5; - position: relative; - top: -4px; -/* - animation-duration: 1s; - animation-name: bounce; - animation-direction: alternate; - animation-iteration-count: infinite; -*/ -} - -.mx_RoomStatusBar_placeholderIndicator span:nth-child(1) { - animation-delay: 0.3s; -} -.mx_RoomStatusBar_placeholderIndicator span:nth-child(2) { - animation-delay: 0.6s; -} -.mx_RoomStatusBar_placeholderIndicator span:nth-child(3) { - animation-delay: 0.9s; -} - -@keyframes bounce { - from { - opacity: 0.5; - top: 0; - } - - to { - opacity: 0.2; - top: -3px; - } -} - -.mx_RoomStatusBar_typingIndicatorAvatars { - width: 52px; - margin-top: -1px; - text-align: left; -} - -.mx_RoomStatusBar_typingIndicatorAvatars .mx_BaseAvatar_image { - margin-right: -12px; - border: 1px solid $primary-bg-color; -} - -.mx_RoomStatusBar_typingIndicatorAvatars .mx_BaseAvatar_initial { - padding-left: 1px; - padding-top: 1px; -} - -.mx_RoomStatusBar_typingIndicatorRemaining { - display: inline-block; - color: #acacac; - background-color: #ddd; - border: 1px solid $primary-bg-color; - border-radius: 40px; - width: 24px; - height: 24px; - line-height: 24px; - font-size: 0.8em; - vertical-align: top; - text-align: center; - position: absolute; -} - -.mx_RoomStatusBar_scrollDownIndicator { - cursor: pointer; - padding-left: 1px; -} - -.mx_RoomStatusBar_unreadMessagesBar { - padding-top: 10px; - color: $warning-color; - cursor: pointer; -} - -.mx_RoomStatusBar_connectionLostBar { - margin-top: 19px; - min-height: 58px; -} - -.mx_RoomStatusBar_connectionLostBar img { - padding-left: 10px; - padding-right: 22px; - vertical-align: middle; - float: left; -} - -.mx_RoomStatusBar_connectionLostBar_title { - color: $warning-color; -} - -.mx_RoomStatusBar_connectionLostBar_desc { - color: $primary-fg-color; - font-size: 13px; - opacity: 0.5; -} - -.mx_RoomStatusBar_resend_link { - color: $primary-fg-color ! important; - text-decoration: underline ! important; - cursor: pointer; -} - -.mx_RoomStatusBar_tabCompleteBar { - padding-top: 10px; - color: $primary-fg-color; -} - -.mx_RoomStatusBar_typingBar { - height: 50px; - line-height: 50px; - - color: $primary-fg-color; - opacity: 0.5; - overflow-y: hidden; - display: block; -} - -.mx_RoomStatusBar_tabCompleteWrapper { - display: flex; - height: 26px; -} - -.mx_RoomStatusBar_tabCompleteWrapper .mx_TabCompleteBar { - flex: 1 1 auto; -} - -.mx_RoomStatusBar_tabCompleteEol { - flex: 0 0 auto; - color: $accent-color; -} - -.mx_RoomStatusBar_tabCompleteEol object { - vertical-align: middle; - margin-right: 8px; - margin-top: -2px; -} - -.mx_MatrixChat_useCompactLayout { - .mx_RoomStatusBar { - min-height: 40px; - } - - .mx_RoomStatusBar_indicator { - margin-top: 10px; - } - - .mx_RoomStatusBar_callBar { - height: 40px; - line-height: 40px; - } - - .mx_RoomStatusBar_typingBar { - height: 40px; - line-height: 40px; - } -} diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_RoomView.scss b/src/skins/vector/css/matrix-react-sdk/structures/_RoomView.scss deleted file mode 100644 index 6fd44d26f5..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_RoomView.scss +++ /dev/null @@ -1,273 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomView { - word-wrap: break-word; - position: relative; - - display: flex; - width: 100%; - - flex-direction: column; -} - -.mx_RoomView .mx_RoomHeader { - order: 1; - - flex: 0 0 70px; -} - -.mx_RoomView_fileDropTarget { - min-width: 0px; - max-width: 960px; - width: 100%; - font-size: 18px; - text-align: center; - - pointer-events: none; - - padding-left: 12px; - padding-right: 12px; - margin-left: -12px; - - border-top-left-radius: 10px; - border-top-right-radius: 10px; - - background-color: $droptarget-bg-color; - border: 2px #e1dddd solid; - border-bottom: none; - position: absolute; - top: 70px; - bottom: 0px; - z-index: 3000; -} - -.mx_RoomView_fileDropTargetLabel { - top: 50%; - width: 100%; - margin-top: -50px; - position: absolute; -} - -.mx_RoomView_auxPanel { - order: 2; - - min-width: 0px; - max-width: 960px; - width: 100%; - margin: auto; - - overflow: auto; - border-bottom: 1px solid $primary-hairline-color; - - flex: 0 0 auto; -} - -.mx_RoomView_topUnreadMessagesBar { - order: 3; -} - -.mx_RoomView_messagePanel { - order: 4; - - flex: 1 1 0; - - width: 100%; - - overflow-y: auto; -} - -.mx_RoomView_messageListWrapper { - max-width: 960px; - margin: auto; - - min-height: 100%; - - display: flex; - - flex-direction: column; - - justify-content: flex-end; -} - -.mx_RoomView_searchResultsPanel .mx_RoomView_messageListWrapper { - justify-content: flex-start; -} - -.mx_RoomView_empty { - flex: 1 1 auto; - font-size: 13px; - padding-left: 3em; - padding-right: 3em; - margin-right: 20px; - margin-top: 33%; - text-align: center; -} - -.mx_RoomView_MessageList { - width: 100%; - list-style-type: none; - padding: 0px; -} - -.mx_RoomView_MessageList li { - clear: both; -} - -.mx_RoomView_MessageList h2 { - clear: both; - margin-top: 32px; - margin-bottom: 8px; - margin-left: 63px; - padding-bottom: 6px; - border-bottom: 1px solid $primary-hairline-color; -} - -.mx_RoomView_invitePrompt { - order: 2; - - min-width: 0px; - max-width: 960px; - width: 100%; - margin: auto; - - margin-top: 12px; - margin-bottom: 12px; -} - -li.mx_RoomView_myReadMarker_container { - height: 0px; - margin: 0px; - padding: 0px; - border: 0px; -} - -hr.mx_RoomView_myReadMarker { - border-top: solid 1px $accent-color; - border-bottom: solid 1px $accent-color; - margin-top: 0px; - position: relative; - top: -1px; - z-index: 1; -} - -.mx_RoomView_statusArea { - order: 5; - - width: 100%; - flex: 0 0 auto; - - max-height: 0px; - background-color: $primary-bg-color; - z-index: 1000; - overflow: hidden; - - -webkit-transition: all .2s ease-out; - -moz-transition: all .2s ease-out; - -ms-transition: all .2s ease-out; - -o-transition: all .2s ease-out; -} - -.mx_RoomView_statusArea_expanded { - max-height: 100px; -} - -.mx_RoomView_statusAreaBox { - max-width: 960px; - margin: auto; - min-height: 50px; -} - -.mx_RoomView_statusAreaBox_line { - margin-left: 65px; - border-top: 1px solid $primary-hairline-color; - height: 1px; -} - -.mx_RoomView_callStatusBar .mx_UploadBar_uploadProgressInner { - background-color: $primary-bg-color; -} - -.mx_RoomView_callStatusBar .mx_UploadBar_uploadFilename { - color: $accent-fg-color; - opacity: 1.0; -} - -.mx_RoomView_inCall .mx_RoomView_statusAreaBox_line { - margin-top: 2px; - border: none; - height: 0px; -} - -.mx_RoomView_inCall .mx_MessageComposer_wrapper { - border-top: 2px hidden; - padding-top: 1px; -} - -.mx_RoomView_inCall .mx_RoomView_statusAreaBox { - background-color: $accent-color; - color: $accent-fg-color; - position: relative; -} - -.mx_RoomView_voipChevron { - position: absolute; - bottom: -11px; - right: 11px; -} - -.mx_RoomView_voipButton { - float: right; - margin-right: 13px; - margin-top: 10px; - cursor: pointer; -} - -.mx_RoomView_voipButton object { - pointer-events: none; -} - -.mx_RoomView .mx_MessageComposer { - order: 6; - - width: 100%; - flex: 0 0 auto; - margin-right: 2px; -} - -.mx_RoomView_ongoingConfCallNotification { - width: 100%; - text-align: center; - background-color: $warning-color; - color: $accent-fg-color; - font-weight: bold; - padding: 6px 0; - cursor: pointer; -} - -.mx_RoomView_ongoingConfCallNotification a { - color: $accent-fg-color ! important; -} - -.mx_MatrixChat_useCompactLayout { - .mx_RoomView_MessageList { - margin-bottom: 4px; - } - - .mx_RoomView_statusAreaBox { - min-height: 42px; - } -} diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_SearchBox.scss b/src/skins/vector/css/matrix-react-sdk/structures/_SearchBox.scss deleted file mode 100644 index 0f34f056a5..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_SearchBox.scss +++ /dev/null @@ -1,66 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_SearchBox { - height: 24px; - margin-left: 16px; - margin-right: 16px; - padding-top: 24px; - padding-bottom: 22px; - - display: flex; -} - -.mx_SearchBox_searchButton { - margin-right: 10px; - margin-top: 5px; - pointer-events: none; -} - -.mx_SearchBox_closeButton { - cursor: pointer; - margin-top: -5px; -} - -.mx_SearchBox_search { - flex: 1 1 auto; - width: 0px; - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; - font-size: 12px; - margin-top: -2px; - height: 24px; - border: 0px ! important; - /* border-bottom: 1px solid rgba(0, 0, 0, 0.1) ! important; */ - border: 0px; -} - -.mx_SearchBox_minimise, -.mx_SearchBox_maximise { - margin-top: 3px; - cursor: pointer; -} - -.mx_SearchBox_minimise { - margin-left: 10px; -} - -.mx_SearchBox_maximise { - margin-left: 9px; -} - -.mx_SearchBox object { - pointer-events: none; -} diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_UploadBar.scss b/src/skins/vector/css/matrix-react-sdk/structures/_UploadBar.scss deleted file mode 100644 index d76c81668c..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_UploadBar.scss +++ /dev/null @@ -1,61 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_UploadBar { - position: relative; -} - -.mx_UploadBar_uploadProgressOuter { - height: 5px; - margin-left: 63px; - margin-top: -1px; - padding-bottom: 5px; -} - -.mx_UploadBar_uploadProgressInner { - background-color: $accent-color; - height: 5px; -} - -.mx_UploadBar_uploadFilename { - margin-top: 5px; - margin-left: 65px; - opacity: 0.5; - color: $primary-fg-color; -} - -.mx_UploadBar_uploadIcon { - float: left; - margin-top: 5px; - margin-left: 14px; -} - -.mx_UploadBar_uploadCancel { - float: right; - margin-top: 5px; - margin-right: 10px; - position: relative; - opacity: 0.6; - cursor: pointer; - z-index: 1; -} - -.mx_UploadBar_uploadBytes { - float: right; - margin-top: 5px; - margin-right: 30px; - color: $accent-color; -} diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_UserSettings.scss b/src/skins/vector/css/matrix-react-sdk/structures/_UserSettings.scss deleted file mode 100644 index 3075135af2..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/_UserSettings.scss +++ /dev/null @@ -1,239 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_UserSettings { - max-width: 960px; - width: 100%; - margin-left: auto; - margin-right: auto; - - display: flex; - flex-direction: column; -} - -.mx_UserSettings .mx_RoomHeader { - order: 1; - - flex: 0 0 70px; -} - -.mx_UserSettings_body { - order: 2; - - flex: 1 1 0; - - margin-top: -20px; - overflow-y: auto; -} - -.mx_UserSettings h3 { - clear: both; - margin-left: 63px; - text-transform: uppercase; - color: $h3-color; - font-weight: 600; - font-size: 13px; - margin-top: 26px; - margin-bottom: 10px; -} - -.mx_UserSettings_section h3 { - margin-left: 0px; -} - -.mx_UserSettings_spinner { - display: inline-block; - vertical-align: middle; - margin-right: 12px; - width: 32px; - height: 32px; -} - -.mx_UserSettings_button { - display: inline; - vertical-align: middle; - border: 0px; - border-radius: 36px; - font-weight: 400; - font-size: 16px; - color: $accent-fg-color; - background-color: $accent-color; - width: auto; - margin: auto; - padding: 7px; - padding-left: 1.5em; - padding-right: 1.5em; - cursor: pointer; -} - -.mx_UserSettings_button.danger { - background-color: $warning-color; -} - -.mx_UserSettings_section { - margin-left: 63px; - margin-top: 28px; - margin-bottom: 28px; -} - -.mx_UserSettings_cryptoSection ul { - display: table; -} -.mx_UserSettings_cryptoSection li { - display: table-row; -} -.mx_UserSettings_cryptoSection label, -.mx_UserSettings_cryptoSection span { - display: table-cell; - padding-right: 1em; -} - -.mx_UserSettings_importExportButtons { - padding-top: 10px; - padding-left: 40px; -} - -.mx_UserSettings_importExportButtons .mx_UserSettings_button { - margin-right: 1em; -} - -.mx_UserSettings_toggle input { - width: 16px; - margin-right: 8px; - margin-bottom: 8px; -} - -.mx_UserSettings_toggle label { - padding-bottom: 21px; -} - -.mx_UserSettings_accountTable -.mx_UserSettings_notifTable -{ - display: table; -} - -.mx_UserSettings_notifTable .mx_Spinner { - position: absolute; -} - -.mx_UserSettings_language { - width: 200px; -} - -.mx_UserSettings_profileTable -{ - display: table; - float: left; -} - -.mx_UserSettings_profileTableRow -{ - display: table-row; -} - -.mx_UserSettings_profileLabelCell -{ - padding-bottom: 21px; - display: table-cell; - font-weight: bold; - padding-right: 24px; -} - -.mx_UserSettings_profileInputCell { - display: table-cell; - padding-bottom: 21px; - width: 240px; -} - -.mx_UserSettings_profileInputCell input, -.mx_UserSettings_profileInputCell .mx_EditableText -{ - display: inline-block; - border: 0px; - border-bottom: 1px solid $input-underline-color; - padding: 0px; - width: 240px; - color: $input-fg-color; - font-family: 'Open Sans', Helvetica, Arial, Sans-Serif; - font-size: 16px; -} - -.mx_UserSettings_threepidButton { - display: table-cell; - padding-left: 0.5em; - position: relative; - cursor: pointer; -} - -.mx_UserSettings_phoneSection { - display:table; -} - -.mx_UserSettings_phoneCountry { - width: 70px; - display: table-cell; -} - -input.mx_UserSettings_phoneNumberField { - margin-left: 3px; - width: 172px; - border: 1px solid transparent; -} - -.mx_UserSettings_changePasswordButton { - float: right; - margin-right: 32px; - margin-left: 32px; -} - -.mx_UserSettings_logout { - float: right; - margin-right: 32px; - margin-left: 32px; -} - -.mx_UserSettings_avatarPicker { - margin-left: 32px; - margin-right: 32px; - float: right; - cursor: pointer; -} - -.mx_UserSettings_avatarPicker_img .mx_BaseAvatar_image { - object-fit: cover; -} - -.mx_UserSettings_avatarPicker_edit { - text-align: center; - margin-top: 10px; -} - -.mx_UserSettings_avatarPicker_edit img { - cursor: pointer; -} - -.mx_UserSettings_avatarPicker_edit > input { - display: none; -} - -.mx_UserSettings_advanced_spoiler, -.mx_UserSettings_link { - cursor: pointer; - color: $accent-color; - word-break: break-all; -} diff --git a/src/skins/vector/css/matrix-react-sdk/structures/login/_Login.scss b/src/skins/vector/css/matrix-react-sdk/structures/login/_Login.scss deleted file mode 100644 index 805c817a28..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/structures/login/_Login.scss +++ /dev/null @@ -1,267 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_Login { - width: 100%; - height: 100%; - - display: flex; - align-items: center; - justify-content: center; - - overflow: auto; -} - -.mx_Login h2 { - color: $primary-fg-color; - font-weight: 300; - margin-top: 32px; - margin-bottom: 20px; -} - -.mx_Login_box { - width: 300px; - min-height: 450px; - padding-top: 50px; - padding-bottom: 50px; - margin: auto; -} - -.mx_Login_logo { - text-align: center; - height: 150px; - margin-bottom: 45px; -} - -.mx_Login_logo img { - max-height: 100% -} - -.mx_Login_support { - text-align: center; - font-size: 13px; - margin-top: 0px; - opacity: 0.7; -} - -.mx_Login_field { - width: 280px; - border-radius: 3px; - border: 1px solid $strong-input-border-color; - font-weight: 300; - font-size: 13px; - padding: 9px; - margin-bottom: 14px; -} - -.mx_Login_fieldLabel { - margin-top: -10px; - margin-left: 8px; - margin-bottom: 14px; - font-size: 13px; - opacity: 0.8; -} - -.mx_Login_submit { - margin-top: 35px; - margin-bottom: 24px; - width: 100%; - border-radius: 40px; - height: 40px; - border: 0px; - background-color: $accent-color; - font-size: 15px; - color: $accent-fg-color; -} - -.mx_Login_label { - font-size: 13px; - opacity: 0.8; -} - -.mx_Login_checkbox, -.mx_Login_radio { - margin-right: 10px; -} - -.mx_Login_create { - display: block; - text-align: center; - width: 100%; - font-size: 13px; - opacity: 0.8; -} - -.mx_Login_create:link { - color: $primary-fg-color; -} - -.mx_Login_links { - display: block; - text-align: center; - margin-top: 15px; - width: 100%; - font-size: 13px; - opacity: 0.8; -} - -.mx_Login_links a:link { - color: $primary-fg-color; -} - -.mx_Login_prompt { - padding-top: 15px; - padding-bottom: 15px; - font-size: 13px; -} - -.mx_Login_forgot { - font-size: 13px; - opacity: 0.8; -} - -.mx_Login_forgot:link { - color: $primary-fg-color; -} - -.mx_Login_loader { - display: inline; - position: relative; - top: 2px; - left: 8px; -} - -.mx_Login_loader .mx_Spinner { - display: inline; -} - -.mx_Login_loader .mx_Spinner img { - width: 16px; - height: 16px; -} - -.mx_Login_error { - color: $warning-color; - font-weight: bold; - text-align: center; -/* - height: 24px; -*/ - margin-top: 12px; - margin-bottom: 12px; -} - -.mx_Login_type_container { - display: flex; - margin-bottom: 14px; -} - -.mx_Login_type_label { - flex-grow: 1; - line-height: 35px; -} - -.mx_Login_type_dropdown { - display: inline-block; - min-width: 170px; - align-self: flex-end; - flex: 1 1 auto; -} - -.mx_Login_field_group { - display: flex; -} - -.mx_Login_field_prefix { - height: 34px; - padding: 0px 5px; - line-height: 33px; - - background-color: #eee; - border: 1px solid #c7c7c7; - border-right: 0px; - border-radius: 3px 0px 0px 3px; - - text-align: center; -} - -.mx_Login_field_suffix { - height: 34px; - padding: 0px 5px; - line-height: 33px; - - background-color: #eee; - border: 1px solid #c7c7c7; - border-left: 0px; - border-radius: 0px 3px 3px 0px; - - text-align: center; - flex-grow: 1; -} - -.mx_Login_username { - height: 16px; - flex-shrink: 1; - min-width: 0px; - border-radius: 3px; -} - -.mx_Login_phoneNumberField { - height: 16px; -} - -.mx_Login_field_has_prefix { - border-top-left-radius: 0px; - border-bottom-left-radius: 0px; -} - -.mx_Login_field_has_suffix { - border-top-right-radius: 0px; - border-bottom-right-radius: 0px; -} - -.mx_Login_phoneSection { - display:flex; -} - -.mx_Login_phoneCountry { - margin-bottom: 14px; - width: 150px; - - /* To override mx_Login_field_prefix */ - text-align: left; - padding: 0px; - background-color: $primary-bg-color; -} - -.mx_Login_field_prefix .mx_Dropdown_input { - /* To use prefix border instead of dropdown border */ - border: 0; -} - -.mx_Login_phoneCountry .mx_Dropdown_option { - /* - To match height of mx_Login_field - 33px + 2px border from mx_Dropdown_option = 35px - */ - height: 33px; - line-height: 33px; -} - -.mx_Login_phoneCountry .mx_Dropdown_option img { - margin: 3px; - vertical-align: top; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/avatars/_BaseAvatar.scss b/src/skins/vector/css/matrix-react-sdk/views/avatars/_BaseAvatar.scss deleted file mode 100644 index 106f0cde71..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/avatars/_BaseAvatar.scss +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_BaseAvatar { - position: relative; -} - -.mx_BaseAvatar_initial { - position: absolute; - color: $avatar-initial-color; - text-align: center; - speak: none; - pointer-events: none; - font-weight: normal; -} - -.mx_BaseAvatar_image { - border-radius: 40px; - vertical-align: top; - background-color: #fff; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_BugReportDialog.scss b/src/skins/vector/css/matrix-react-sdk/views/dialogs/_BugReportDialog.scss deleted file mode 100644 index 0f47e974da..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_BugReportDialog.scss +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2017 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_BugReportDialog_input { - width: 100%; - box-sizing: border-box; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_ChatCreateOrReuseChatDialog.scss b/src/skins/vector/css/matrix-react-sdk/views/dialogs/_ChatCreateOrReuseChatDialog.scss deleted file mode 100644 index 0f358a588e..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_ChatCreateOrReuseChatDialog.scss +++ /dev/null @@ -1,41 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_ChatCreateOrReuseDialog .mx_ChatCreateOrReuseDialog_tiles { - margin-top: 24px; -} - -.mx_ChatCreateOrReuseDialog .mx_Dialog_content { - margin-bottom: 24px; - - /* - To stop spinner that mx_ChatCreateOrReuseDialog_profile replaces from causing a - height change - */ - min-height: 100px; -} - -.mx_ChatCreateOrReuseDialog .mx_RoomTile_badge { - display: none; -} - -.mx_ChatCreateOrReuseDialog_profile { - display: flex; -} - -.mx_ChatCreateOrReuseDialog_profile_name { - padding: 14px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_ChatInviteDialog.scss b/src/skins/vector/css/matrix-react-sdk/views/dialogs/_ChatInviteDialog.scss deleted file mode 100644 index 4a214b51ce..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_ChatInviteDialog.scss +++ /dev/null @@ -1,71 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -/* Using a textarea for this element, to circumvent autofill */ -.mx_ChatInviteDialog_input, -.mx_ChatInviteDialog_input:focus -{ - height: 26px; - font-size: 14px; - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; - padding-left: 12px; - padding-right: 12px; - margin: 0 !important; - border: 0 !important; - outline: 0 !important; - width: 1000%; /* Pretend that this is an "input type=text" */ - resize: none; - overflow: hidden; - vertical-align: middle; - box-sizing: border-box; - word-wrap: nowrap; -} - -.mx_ChatInviteDialog_inputContainer { - border-radius: 3px; - border: solid 1px $input-border-color; - line-height: 36px; - padding-left: 4px; - padding-right: 4px; - padding-top: 1px; - padding-bottom: 1px; - max-height: 150px; - overflow-x: hidden; - overflow-y: auto; -} - -.mx_ChatInviteDialog_error { - position: absolute; - color: $warning-color; - line-height: 36px; -} - -.mx_ChatInviteDialog_cancel { - position: absolute; - right: 11px; - top: 13px; - cursor: pointer; -} - -.mx_ChatInviteDialog_cancel object { - pointer-events: none; -} - -.mx_ChatInviteDialog_addressSelectHeader { - font-weight: bold; - line-height: 150%; - text-indent: 4px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_ConfirmUserActionDialog.scss b/src/skins/vector/css/matrix-react-sdk/views/dialogs/_ConfirmUserActionDialog.scss deleted file mode 100644 index d12bcd3712..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_ConfirmUserActionDialog.scss +++ /dev/null @@ -1,53 +0,0 @@ -/* -Copyright 2017 Vector Creations Ltd. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_ConfirmUserActionDialog .mx_Dialog_content { - min-height: 48px; - margin-bottom: 24px; -} - -.mx_ConfirmUserActionDialog_avatar { - float: left; - margin-right: 20px; - margin-top: -2px; -} - -.mx_ConfirmUserActionDialog_name { - font-size: 18px; -} - -.mx_ConfirmUserActionDialog_userId { - font-size: 13px; -} - -.mx_ConfirmUserActionDialog_reasonField { - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; - font-size: 14px; - color: $primary-fg-color; - background-color: $primary-bg-color; - - border-radius: 3px; - border: solid 1px $input-border-color; - line-height: 36px; - padding-left: 16px; - padding-right: 16px; - padding-top: 1px; - padding-bottom: 1px; - - margin-bottom: 24px; - - width: 90%; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_EncryptedEventDialog.scss b/src/skins/vector/css/matrix-react-sdk/views/dialogs/_EncryptedEventDialog.scss deleted file mode 100644 index cbc0195cac..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_EncryptedEventDialog.scss +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_EncryptedEventDialog .mx_MemberDeviceInfo { - float: right; - padding: 0px; - margin-right: 42px; -} - -.mx_EncryptedEventDialog .mx_MemberDeviceInfo_textButton { - border: 0px; - height: 36px; - border-radius: 40px; - border: solid 1px $accent-color; - font-weight: 600; - font-size: 14px; - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; - margin-left: 0px; - margin-right: 8px; - padding-left: 1.5em; - padding-right: 1.5em; - outline: none; - cursor: pointer; - color: $accent-color; - background-color: $primary-bg-color; -} \ No newline at end of file diff --git a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_SetMxIdDialog.scss b/src/skins/vector/css/matrix-react-sdk/views/dialogs/_SetMxIdDialog.scss deleted file mode 100644 index f7d8a3d001..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_SetMxIdDialog.scss +++ /dev/null @@ -1,50 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_SetMxIdDialog .mx_Dialog_title { - padding-right: 40px; -} - -.mx_SetMxIdDialog_input_group { - display: flex; -} - -.mx_SetMxIdDialog_input { - border-radius: 3px; - border: 1px solid $input-border-color; - padding: 9px; - color: $primary-fg-color; - background-color: $primary-bg-color; - font-size: 15px; - width: 100%; - max-width: 280px; -} - -.mx_SetMxIdDialog_input.error, -.mx_SetMxIdDialog_input.error:focus { - border: 1px solid $warning-color; -} - -.mx_SetMxIdDialog_input_group .mx_Spinner { - height: 37px; - padding-left: 10px; - justify-content: flex-start; -} - -.mx_SetMxIdDialog .success { - color: $accent-color; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_UnknownDeviceDialog.scss b/src/skins/vector/css/matrix-react-sdk/views/dialogs/_UnknownDeviceDialog.scss deleted file mode 100644 index 804b3f419e..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/dialogs/_UnknownDeviceDialog.scss +++ /dev/null @@ -1,67 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -// CSS voodoo to support a gemini-scrollbar for the contents of the dialog -.mx_Dialog_unknownDevice .mx_Dialog { - // ideally we'd shrink the height to fit when needed, but in practice this - // is a pain in the ass. plus might as well make the dialog big given how - // important it is. - height: 100%; - - // position the gemini scrollbar nicely - padding-right: 58px; -} - -.mx_UnknownDeviceDialog { - height: 100%; - display: flex; - flex-direction: column; -} - -.mx_UnknownDeviceDialog .mx_Dialog_content { - margin-bottom: 24px; -} - -.mx_UnknownDeviceDialog .mx_MemberDeviceInfo { - float: right; - clear: both; - padding: 0px; - padding-top: 8px; -} - -.mx_UnknownDeviceDialog .mx_MemberDeviceInfo_textButton { - border: 0px; - height: 24px; - border-radius: 40px; - border: solid 1px $accent-color; - font-weight: 600; - font-size: 13px; - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; - margin-left: 0px; - margin-right: 8px; - padding-left: 0.5em; - padding-right: 0.5em; - width: 85px; - outline: none; - cursor: pointer; - color: $accent-color; - background-color: $primary-bg-color; -} - -.mx_UnknownDeviceDialog .mx_UnknownDeviceDialog_deviceList li { - height: 40px; - border-bottom: 1px solid $primary-hairline-color; -} \ No newline at end of file diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_AccessibleButton.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_AccessibleButton.scss deleted file mode 100644 index edf455049b..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/elements/_AccessibleButton.scss +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_AccessibleButton:focus { - outline: 0; - filter: brightness($focus-brightness); -} - -.mx_AccessibleButton { - cursor: pointer; -} \ No newline at end of file diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_AddressSelector.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_AddressSelector.scss deleted file mode 100644 index 9871a7e881..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/elements/_AddressSelector.scss +++ /dev/null @@ -1,45 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_AddressSelector { - position: absolute; - background-color: $primary-bg-color; - width: 485px; - max-height: 116px; - overflow-y: auto; - border-radius: 3px; - background-color: $primary-bg-color; - border: solid 1px $accent-color; - cursor: pointer; -} - -.mx_AddressSelector.mx_AddressSelector_empty { - display: none; -} - -.mx_AddressSelector_addressListElement .mx_AddressTile { - background-color: $primary-bg-color; - border: solid 1px $primary-bg-color; -} - -.mx_AddressSelector_addressListElement.mx_AddressSelector_selected { - background-color: $selected-color; -} - -.mx_AddressSelector_addressListElement.mx_AddressSelector_selected .mx_AddressTile { - background-color: $selected-color; - border: solid 1px $selected-color; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_AddressTile.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_AddressTile.scss deleted file mode 100644 index 0ecfb17c83..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/elements/_AddressTile.scss +++ /dev/null @@ -1,138 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_AddressTile { - display: inline-block; - border-radius: 3px; - background-color: rgba(74, 73, 74, 0.1); - border: solid 1px $input-border-color; - line-height: 26px; - color: $primary-fg-color; - font-size: 14px; - font-weight: normal; - margin-right: 4px; -} - -.mx_AddressTile.mx_AddressTile_error { - background-color: rgba(255, 0, 100, 0.1); - color: $warning-color; - border-color: $warning-color; -} - -.mx_AddressTile_network { - display: inline-block; - position: relative; - padding-left: 2px; - padding-right: 4px; - vertical-align: middle; -} - -.mx_AddressTile_avatar { - display: inline-block; - position: relative; - padding-left: 2px; - padding-right: 7px; - vertical-align: middle; -} - -.mx_AddressTile_mx { - display: inline-block; - margin: 0; - border: 0; - padding: 0; -} - -.mx_AddressTile_name { - display: inline-block; - padding-right: 4px; - font-weight: 600; - overflow: hidden; - height: 26px; - vertical-align: middle; -} - -.mx_AddressTile_name.mx_AddressTile_justified { - width: 180px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - vertical-align: middle; -} - -.mx_AddressTile_id { - display: inline-block; - padding-right: 11px; -} - -.mx_AddressTile_id.mx_AddressTile_justified { - width: 200px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - vertical-align: middle; -} - -.mx_AddressTile_unknownMx { - display: inline-block; - font-weight: 600; - padding-right: 11px; -} - -.mx_AddressTile_unknownMxl.mx_AddressTile_justified { - width: 380px; /* name + id width */ - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - vertical-align: middle; -} - -.mx_AddressTile_email { - display: inline-block; - font-weight: 600; - padding-right: 11px; -} - -.mx_AddressTile_email.mx_AddressTile_justified { - width: 200px; /* same as id width */ - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - vertical-align: middle; -} - -.mx_AddressTile_unknown { - display: inline-block; - padding-right: 11px; -} - -.mx_AddressTile_unknown.mx_AddressTile_justified { - width: 380px; /* name + id width */ - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - vertical-align: middle; -} - -.mx_AddressTile_dismiss { - display: inline-block; - padding-right: 11px; - padding-left: 1px; - cursor: pointer; -} - -.mx_AddressTile_dismiss object { - pointer-events: none; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_DirectorySearchBox.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_DirectorySearchBox.scss deleted file mode 100644 index 94a92b23ce..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/elements/_DirectorySearchBox.scss +++ /dev/null @@ -1,70 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_DirectorySearchBox { - position: relative; - border-radius: 3px; - border: 1px solid $strong-input-border-color; -} - -.mx_DirectorySearchBox_container { - display: flex; - padding-left: 9px; - padding-right: 9px; -} - -.mx_DirectorySearchBox_input { - flex-grow: 1; - border: 0; - padding: 0; - font-weight: 300; - font-size: 13px; -} -input[type=text].mx_DirectorySearchBox_input:focus { - border: 0; -} - -.mx_DirectorySearchBox_joinButton { - display: table-cell; - padding: 3px; - padding-left: 10px; - padding-right: 10px; - background-color: $plinth-bg-color; - border-radius: 3px; - background-image: url('../../img/icon-return.svg'); - background-position: 8px 70%; - background-repeat: no-repeat; - text-indent: 18px; - font-weight: 600; - font-size: 12px; - user-select: none; - cursor: pointer; -} - -.mx_DirectorySearchBox_clear_wrapper { - display: table-cell; -} - -.mx_DirectorySearchBox_clear { - display: inline-block; - vertical-align: middle; - background: url('../../img/icon_context_delete.svg'); - background-position: 0 50%; - background-repeat: no-repeat; - width: 15px; - height: 15px; - cursor: pointer; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_Dropdown.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_Dropdown.scss deleted file mode 100644 index 637c5d124b..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/elements/_Dropdown.scss +++ /dev/null @@ -1,116 +0,0 @@ -/* -Copyright 2017 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_Dropdown { - position: relative; -} - -.mx_Dropdown_input { - position: relative; - border-radius: 3px; - border: 1px solid $strong-input-border-color; - font-weight: 300; - font-size: 13px; - user-select: none; -} - -.mx_Dropdown_input:focus { - border-color: $accent-color; -} - -/* Disable dropdown highlight on focus */ -.mx_Dropdown_input.mx_AccessibleButton:focus { - filter: none; -} - -.mx_Dropdown_arrow { - border-color: $primary-fg-color transparent transparent; - border-style: solid; - border-width: 5px 5px 0; - display: block; - height: 0; - position: absolute; - right: 10px; - top: 14px; - width: 0 -} - -.mx_Dropdown.left_aligned .mx_Dropdown_arrow { - left: 10px; -} - -.mx_Dropdown.left_aligned .mx_Dropdown_input > .mx_Dropdown_option { - padding-left: 25px; -} - -.mx_Dropdown_option { - height: 35px; - line-height: 35px; - padding-left: 8px; - padding-right: 8px; -} - -.mx_Dropdown_option div { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; -} - -.mx_Dropdown_option img { - margin: 5px; - width: 27px; - vertical-align: middle; -} - -input.mx_Dropdown_option, input.mx_Dropdown_option:focus { - border: 0; - padding-top: 0; - padding-bottom: 0; - // XXX: hack to prevent text box being too big and pushing - // its parent out / overlapping the dropdown arrow. Only really - // works in the Country dropdown. - width: 60%; -} - -.mx_Dropdown_menu { - position: absolute; - left: -1px; - right: -1px; - top: 100%; - z-index: 2; - margin: 0; - padding: 0px; - border-radius: 3px; - border: 1px solid $accent-color; - background-color: $primary-bg-color; - max-height: 200px; - overflow-y: auto; -} - -.mx_Dropdown_menu .mx_Dropdown_option_highlight { - background-color: $focus-bg-color; -} - -.mx_Dropdown_menu { - font-weight: bold; -} - -.mx_Dropdown_searchPrompt { - font-weight: normal; - margin-left: 5px; - margin-bottom: 5px; -} - diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_MemberEventListSummary.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_MemberEventListSummary.scss deleted file mode 100644 index 1025052beb..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/elements/_MemberEventListSummary.scss +++ /dev/null @@ -1,60 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MemberEventListSummary { - position: relative; -} - -.mx_TextualEvent.mx_MemberEventListSummary_summary { - font-size: 14px; - display: inline-flex; -} - -.mx_MemberEventListSummary_avatars { - display: inline-block; - margin-right: 8px; - padding-top: 8px; - line-height: 12px; -} - -.mx_MemberEventListSummary_avatars .mx_BaseAvatar { - margin-right: -4px; - cursor: pointer; -} - -.mx_MemberEventListSummary_toggle { - color: $accent-color; - cursor: pointer; - float: right; - margin-right: 10px; - margin-top: 8px; -} - -.mx_MemberEventListSummary_line { - border-bottom: 1px solid $primary-hairline-color; - margin-left: 63px; - line-height: 30px; -} - -.mx_MatrixChat_useCompactLayout { - .mx_MemberEventListSummary_line { - line-height: 22px; - } - - .mx_MemberEventListSummary_toggle { - margin-top: 2px; - } -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_ProgressBar.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_ProgressBar.scss deleted file mode 100644 index a3fee232d0..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/elements/_ProgressBar.scss +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_ProgressBar { - height: 5px; - border: 1px solid $progressbar-color; -} - -.mx_ProgressBar_fill { - height: 100%; - background-color: $progressbar-color; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_RichText.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_RichText.scss deleted file mode 100644 index 2dcd813692..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/elements/_RichText.scss +++ /dev/null @@ -1,43 +0,0 @@ -// XXX: bleurgh, what is this? These classes totally break the component -// naming scheme; it's completely unclear where or how they're being used -// --Matthew - -.mx_UserPill { - color: white; - background-color: $accent-color; - padding: 2px 8px; - border-radius: 16px; -} - -.mx_RoomPill { - background-color: white; - color: $accent-color; - border: 1px solid $accent-color; - padding: 2px 8px; - border-radius: 16px; -} - -.mx_Markdown_BOLD { - font-weight: bold; -} - -.mx_Markdown_ITALIC { - font-style: italic; -} - -.mx_Markdown_CODE { - padding: .2em 0; - margin: 0; - font-size: 85%; - background-color: $rte-code-bg-color; - border-radius: 3px; -} - -.mx_Markdown_HR { - display: block; - background: $rte-bg-color; -} - -.mx_Markdown_STRIKETHROUGH { - text-decoration: line-through; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_RoleButton.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_RoleButton.scss deleted file mode 100644 index 094e0b9b1b..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/elements/_RoleButton.scss +++ /dev/null @@ -1,33 +0,0 @@ -/* -Copyright 2107 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoleButton { - margin-left: 4px; - margin-right: 4px; - cursor: pointer; - display: inline-block; -} - -.mx_RoleButton object { - pointer-events: none; -} - -.mx_RoleButton_tooltip { - display: inline-block; - position: relative; - top: -25px; - left: 6px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/login/_InteractiveAuthEntryComponents.scss b/src/skins/vector/css/matrix-react-sdk/views/login/_InteractiveAuthEntryComponents.scss deleted file mode 100644 index 183b5cd251..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/login/_InteractiveAuthEntryComponents.scss +++ /dev/null @@ -1,42 +0,0 @@ -/* -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_InteractiveAuthEntryComponents_msisdnWrapper { - text-align: center; -} - -.mx_InteractiveAuthEntryComponents_msisdnEntry { - font-size: 200%; - font-weight: bold; - border: 1px solid $strong-input-border-color; - border-radius: 3px; - width: 6em; -} - -.mx_InteractiveAuthEntryComponents_msisdnEntry:focus { - border: 1px solid $accent-color; -} - -.mx_InteractiveAuthEntryComponents_msisdnSubmit { - margin-top: 4px; - margin-bottom: 5px; -} - -// XXX: This should be a common button class -.mx_InteractiveAuthEntryComponents_msisdnSubmit:disabled { - background-color: $light-fg-color; - cursor: default; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/login/_ServerConfig.scss b/src/skins/vector/css/matrix-react-sdk/views/login/_ServerConfig.scss deleted file mode 100644 index 894ce19827..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/login/_ServerConfig.scss +++ /dev/null @@ -1,36 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_ServerConfig { - margin-top: 7px; -} - -.mx_ServerConfig .mx_Login_field { - margin-top: 4px; - margin-bottom: 5px; -} - -.mx_ServerConfig_help:link { - opacity: 0.8; - font-size: 13px; - font-weight: 300; - color: $primary-fg-color; -} - -.mx_ServerConfig_selector { - text-align: center; - width: 302px; // for fr i18n -} \ No newline at end of file diff --git a/src/skins/vector/css/matrix-react-sdk/views/messages/_MEmoteBody.scss b/src/skins/vector/css/matrix-react-sdk/views/messages/_MEmoteBody.scss deleted file mode 100644 index e614aca7d8..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/messages/_MEmoteBody.scss +++ /dev/null @@ -1,19 +0,0 @@ -/* -Copyright 2017 Vector Creations Ltd. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MEmoteBody_sender { - cursor: pointer; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/messages/_MImageBody.scss b/src/skins/vector/css/matrix-react-sdk/views/messages/_MImageBody.scss deleted file mode 100644 index 83ae06160d..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/messages/_MImageBody.scss +++ /dev/null @@ -1,60 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MImageBody { - display: block; - margin-right: 34px; -} - -.mx_MImageBody_thumbnail { - max-width: 100%; -/* - background-color: $primary-bg-color; - border: 2px solid $primary-bg-color; - border-radius: 1px; -*/ -} - -.mx_MImageBody_download { - color: $accent-color; -} - -.mx_MImageBody_download a { - color: $accent-color; - text-decoration: none; -} - -.mx_MImageBody_download object { - margin-left: -16px; - padding-right: 4px; - margin-top: -4px; - vertical-align: middle; - pointer-events: none; -} - -/* Remove the border and padding for iframes for download links. */ -.mx_MImageBody_download iframe { - margin: 0px; - padding: 0px; - border: none; - width: 100%; - /* Set the height of the iframe to be 1 line of text. - * Iframes don't automatically size themselves to fit their content. - * So either we have to fix the height of the iframe using CSS or - * use javascript's cross-origin postMessage API to communicate how - * big the content of the iframe is. */ - height: 1.5em; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/messages/_MNoticeBody.scss b/src/skins/vector/css/matrix-react-sdk/views/messages/_MNoticeBody.scss deleted file mode 100644 index a88c20863d..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/messages/_MNoticeBody.scss +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MNoticeBody { - white-space: pre-wrap; - opacity: 0.6; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/messages/_MTextBody.scss b/src/skins/vector/css/matrix-react-sdk/views/messages/_MTextBody.scss deleted file mode 100644 index fcf397fd2d..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/messages/_MTextBody.scss +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MTextBody { - white-space: pre-wrap; -} - -.mx_MTextBody pre{ - overflow-y: auto; - max-height: 30vh; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/messages/_RoomAvatarEvent.scss b/src/skins/vector/css/matrix-react-sdk/views/messages/_RoomAvatarEvent.scss deleted file mode 100644 index 9adce42eef..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/messages/_RoomAvatarEvent.scss +++ /dev/null @@ -1,26 +0,0 @@ -/* -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomAvatarEvent { - opacity: 0.5; - overflow-y: hidden; -} - -.mx_RoomAvatarEvent_avatar { - display: inline; - position: relative; - top: 5px; -} \ No newline at end of file diff --git a/src/skins/vector/css/matrix-react-sdk/views/messages/_TextualEvent.scss b/src/skins/vector/css/matrix-react-sdk/views/messages/_TextualEvent.scss deleted file mode 100644 index be7565b3c5..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/messages/_TextualEvent.scss +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_TextualEvent { - opacity: 0.5; - overflow-y: hidden; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/messages/_UnknownBody.scss b/src/skins/vector/css/matrix-react-sdk/views/messages/_UnknownBody.scss deleted file mode 100644 index 9036e12bf0..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/messages/_UnknownBody.scss +++ /dev/null @@ -1,16 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_UnknownBody { - white-space: pre-wrap; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_Autocomplete.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_Autocomplete.scss deleted file mode 100644 index 062dd0bade..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_Autocomplete.scss +++ /dev/null @@ -1,79 +0,0 @@ -.mx_Autocomplete { - position: absolute; - bottom: 0; - z-index: 1000; - width: 100%; - border: 1px solid $primary-hairline-color; - background: $primary-bg-color; - border-bottom: none; - border-radius: 4px 4px 0 0; - max-height: 50vh; - overflow: auto -} - -.mx_Autocomplete_ProviderSection { - border-bottom: 1px solid $primary-hairline-color; -} - -.mx_Autocomplete_Completion_container_pill { - margin: 12px; - display: flex; -} - -/* a "block" completion takes up a whole line */ -.mx_Autocomplete_Completion_block { - height: 34px; - display: flex; - padding: 0 12px; - user-select: none; - cursor: pointer; - align-items: center; - color: $primary-fg-color; -} - -.mx_Autocomplete_Completion_block * { - margin: 0 3px; -} - -.mx_Autocomplete_Completion_pill { - border-radius: 17px; - height: 34px; - display: flex; - user-select: none; - cursor: pointer; - align-items: center; - color: $primary-fg-color; -} - -.mx_Autocomplete_Completion_pill * { - margin: 0 3px; -} - -/* container for pill-style completions */ -.mx_Autocomplete_Completion_container_pill { - margin: 12px; - display: flex; - flex-flow: wrap; -} - -.mx_Autocomplete_Completion.selected { - background: $menu-bg-color; - outline: none; -} - -.mx_Autocomplete_provider_name { - margin: 12px; - color: $primary-fg-color; - font-weight: 400; - opacity: 0.4; -} - -/* styling for common completion elements */ -.mx_Autocomplete_Completion_subtitle { - font-style: italic; - flex: 1; -} - -.mx_Autocomplete_Completion_description { - color: gray; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_EntityTile.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_EntityTile.scss deleted file mode 100644 index 3f360e79a0..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_EntityTile.scss +++ /dev/null @@ -1,112 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_EntityTile { - display: table-row; - position: relative; - color: $primary-fg-color; - cursor: pointer; -} - -.mx_EntityTile_invite { - display: table-cell; - vertical-align: middle; - margin-left: 10px; - width: 26px; -} - -.mx_EntityTile_avatar { - display: table-cell; - padding-left: 3px; - padding-right: 12px; - padding-top: 4px; - padding-bottom: 4px; - vertical-align: middle; - width: 36px; - height: 36px; - position: relative; -} - -.mx_EntityTile_power { - position: absolute; - width: 16px; - height: 17px; - top: 0px; - right: 6px; -} - -.mx_EntityTile_name { - display: table-cell; - vertical-align: middle; - overflow: hidden; - font-size: 14px; - text-overflow: ellipsis; -} - -.mx_EntityTile_details { - display: table-cell; - padding-right: 14px; - vertical-align: middle; -} - -.mx_EntityTile_name_hover { - font-size: 13px; - overflow: hidden; - text-overflow: ellipsis; -} - -.mx_EntityTile_chevron { - margin-top: 8px; - margin-right: -4px; - margin-left: 6px; - float: right; -} - -.mx_EntityTile_ellipsis .mx_EntityTile_name { - font-style: italic; - color: $primary-fg-color; -} - -.mx_EntityTile_invitePlaceholder .mx_EntityTile_name { - font-style: italic; - color: $primary-fg-color; -} - -.mx_EntityTile_unavailable .mx_EntityTile_avatar, -.mx_EntityTile_unavailable .mx_EntityTile_name, -.mx_EntityTile_unavailable .mx_EntityTile_name_hover, -.mx_EntityTile_offline_beenactive .mx_EntityTile_avatar, -.mx_EntityTile_offline_beenactive .mx_EntityTile_name, -.mx_EntityTile_offline_beenactive .mx_EntityTile_name_hover -{ - opacity: 0.66; -} - -.mx_EntityTile_offline_neveractive .mx_EntityTile_avatar, -.mx_EntityTile_offline_neveractive .mx_EntityTile_name, -.mx_EntityTile_offline_neveractive .mx_EntityTile_name_hover -{ - opacity: 0.25; -} - -.mx_EntityTile_unknown .mx_EntityTile_avatar, -.mx_EntityTile_unknown .mx_EntityTile_name, -.mx_EntityTile_unknown .mx_EntityTile_name_hover -{ - opacity: 0.25; -} - - diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_EventTile.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_EventTile.scss deleted file mode 100644 index 6f029158c7..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_EventTile.scss +++ /dev/null @@ -1,430 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_EventTile { - max-width: 100%; - clear: both; - padding-top: 18px; - font-size: 14px; - position: relative; -} - -.mx_EventTile.mx_EventTile_info { - padding-top: 0px; -} - -.mx_EventTile_avatar { - position: absolute; - top: 14px; - left: 8px; - cursor: pointer; - z-index: 2; -} - -.mx_EventTile.mx_EventTile_info .mx_EventTile_avatar { - top: 8px; - left: 65px; -} - -.mx_EventTile_continuation { - padding-top: 0px ! important; -} - -.mx_EventTile .mx_SenderProfile { - color: $primary-fg-color; - opacity: 0.5; - font-size: 14px; - display: block; /* anti-zalgo, with overflow hidden */ - overflow-y: hidden; - cursor: pointer; - padding-left: 65px; /* left gutter */ - padding-bottom: 0px; - padding-top: 0px; - margin: 0px; - line-height: 22px; -} - -.mx_EventTile .mx_MessageTimestamp { - display: block; - visibility: hidden; - white-space: nowrap; - color: $event-timestamp-color; - font-size: 10px; - left: 0px; - width: 46px; /* 8 + 30 (avatar) + 8 */ - text-align: center; - position: absolute; -} - -.mx_EventTile_line { - position: relative; - /* ideally should be 100px, but 95px gives us a max thumbnail size of 800x600, which is nice */ - margin-right: 110px; - padding-left: 65px; /* left gutter */ - padding-top: 4px; - padding-bottom: 2px; - border-radius: 4px; - min-height: 24px; - line-height: 22px; -} - -.mx_EventTile_info .mx_EventTile_line { - padding-left: 83px; -} - -/* HACK to override line-height which is already marked important elsewhere */ -.mx_EventTile_bigEmoji.mx_EventTile_bigEmoji { - font-size: 48px ! important; - line-height: 48px ! important; -} - -/* this is used for the tile for the event which is selected via the URL. - * TODO: ultimately we probably want some transition on here. - */ -.mx_EventTile_selected .mx_EventTile_line { - border-left: $accent-color 5px solid; - padding-left: 60px; - background-color: $event-selected-color; -} - -.mx_EventTile:hover .mx_EventTile_line, -.mx_EventTile.menu .mx_EventTile_line -{ - background-color: $event-selected-color; -} - -.mx_EventTile_searchHighlight { - background-color: $accent-color; - color: $accent-fg-color; - border-radius: 5px; - padding-left: 2px; - padding-right: 2px; - cursor: pointer; -} - -.mx_EventTile_searchHighlight a { - background-color: $accent-color; - color: $accent-fg-color; -} - -.mx_EventTile_encrypting { - color: $event-encrypting-color ! important; -} - -.mx_EventTile_sending { - color: $event-sending-color; -} - -.mx_EventTile_notSent { - color: $event-notsent-color; -} - -.mx_EventTile_redacted .mx_EventTile_line .mx_UnknownBody { - display: block; - width: 100%; - height: 36px; - background-image: $event-redacted-img; - background-repeat: no-repeat; - background-size: contain; -} - -.mx_EventTile.mx_EventTile_redacted .mx_EventTile_line { - /* - Prevent changing colour of the background because - $event-redacted-img matches $primary-bg-color - */ - background-color: initial !important; -} - -.mx_EventTile_highlight, -.mx_EventTile_highlight .markdown-body - { - color: $warning-color; -} - -.mx_EventTile_contextual { - opacity: 0.4; -} - -.mx_EventTile_msgOption { - float: right; - text-align: right; - z-index: 1; - position: relative; - width: 90px; - - /* Hack to stop the height of this pushing the messages apart. - Replaces margin-top: -6px. This interacts better with a read - marker being in between. Content overflows. */ - height: 1px; - - margin-right: 10px; -} - -.mx_EventTile_msgOption a { - text-decoration: none; -} - -.mx_EventTile_last .mx_MessageTimestamp, -.mx_EventTile:hover .mx_MessageTimestamp, -.mx_EventTile.menu .mx_MessageTimestamp -{ - visibility: visible; -} - -.mx_MessagePanel_alwaysShowTimestamps .mx_MessageTimestamp { - visibility: visible; -} - -.mx_EventTile_selected .mx_MessageTimestamp { - left: 3px; - width: auto; -} - -.mx_EventTile_editButton { - position: absolute; - display: inline-block; - visibility: hidden; - cursor: pointer; - top: 6px; - right: 6px; - width: 19px; - height: 19px; - background-image: url($edit-button-url); -} - -.mx_EventTile:hover .mx_EventTile_editButton, -.mx_EventTile.menu .mx_EventTile_editButton -{ - visibility: visible; -} - -.mx_EventTile.menu .mx_MessageTimestamp { - visibility: visible; -} - -.mx_EventTile_readAvatars { - position: relative; - display: inline-block; - width: 14px; - height: 14px; - top: 29px; -} - -.mx_EventTile_continuation .mx_EventTile_readAvatars, -.mx_EventTile_info .mx_EventTile_readAvatars, -.mx_EventTile_emote .mx_EventTile_readAvatars { - top: 7px; -} - -.mx_EventTile_readAvatars .mx_BaseAvatar { - position: absolute; - display: inline-block; -} - -.mx_EventTile_readAvatarRemainder { - color: $event-timestamp-color; - font-size: 11px; - position: absolute; -} - -/* all the overflow-y: hidden; are to trap Zalgos - - but they introduce an implicit overflow-x: auto. - so make that explicitly hidden too to avoid random - horizontal scrollbars occasionally appearing, like in - https://github.com/vector-im/vector-web/issues/1154 - */ -.mx_EventTile_content { - display: block; - overflow-y: hidden; - overflow-x: hidden; - margin-right: 34px; -} - -/* De-zalgoing */ -.mx_EventTile_body { - overflow-y: hidden; -} - -/* End to end encryption stuff */ - -.mx_EventTile_e2eIcon { - display: block; - position: absolute; - top: 9px; - left: 46px; - z-index: 2; - cursor: pointer; -} - -.mx_EventTile_12hr .mx_EventTile_e2eIcon { - padding-left: 5px; -} - -.mx_EventTile:hover.mx_EventTile_verified .mx_EventTile_line, -.mx_EventTile:hover.mx_EventTile_unverified .mx_EventTile_line { - padding-left: 60px; -} - -.mx_EventTile_selected.mx_EventTile_info .mx_EventTile_line, -.mx_EventTile:hover.mx_EventTile_verified.mx_EventTile_info .mx_EventTile_line, -.mx_EventTile:hover.mx_EventTile_unverified.mx_EventTile_info .mx_EventTile_line { - padding-left: 78px; -} - -.mx_EventTile:hover.mx_EventTile_verified .mx_EventTile_line { - border-left: $e2e-verified-color 5px solid; -} -.mx_EventTile:hover.mx_EventTile_unverified .mx_EventTile_line { - border-left: $e2e-unverified-color 5px solid; -} - -.mx_EventTile:hover.mx_EventTile_verified .mx_MessageTimestamp, -.mx_EventTile:hover.mx_EventTile_unverified .mx_MessageTimestamp { - left: 3px; - width: auto; -} - -/* -.mx_EventTile_verified .mx_EventTile_e2eIcon { - display: none; -} -*/ - -.mx_EventTile:hover.mx_EventTile_verified .mx_EventTile_e2eIcon, -.mx_EventTile:hover.mx_EventTile_unverified .mx_EventTile_e2eIcon { - display: block; - left: 41px; -} - -/* Various markdown overrides */ - -.mx_EventTile_content .markdown-body { - font-family: inherit ! important; - white-space: normal ! important; - line-height: inherit ! important; - color: inherit; - font-size: 14px; -} - -/* have to use overlay rather than auto otherwise Linux and Windows - Chrome gets very confused about vertical spacing: - https://github.com/vector-im/vector-web/issues/754 -*/ -.mx_EventTile_content .markdown-body pre { - overflow-x: overlay; - overflow-y: visible; -} - -.mx_EventTile_content .markdown-body code { - background-color: #f8f8f8; -} - -.mx_EventTile_content .markdown-body h1, -.mx_EventTile_content .markdown-body h2, -.mx_EventTile_content .markdown-body h3, -.mx_EventTile_content .markdown-body h4, -.mx_EventTile_content .markdown-body h5, -.mx_EventTile_content .markdown-body h6 -{ - font-family: inherit ! important; -} - - -/* Make h1 and h2 the same size as h3. */ -.mx_EventTile_content .markdown-body h1, -.mx_EventTile_content .markdown-body h2 -{ - font-size: 1.5em; -} - -.mx_EventTile_content .markdown-body a { - color: $accent-color; -} - -.mx_EventTile_content .markdown-body .hljs { - display: inline ! important; -} - -/* end of overrides */ - -.mx_MatrixChat_useCompactLayout { - .mx_EventTile { - padding-top: 4px; - } - - .mx_EventTile.mx_EventTile_info { - padding-top: 0px; - } - - .mx_EventTile .mx_SenderProfile { - font-size: 13px; - } - - .mx_EventTile.mx_EventTile_emote { - padding-top: 8px; - .mx_EventTile_avatar { - top: 2px; - } - .mx_EventTile_line { - padding-top: 0px; - padding-bottom: 1px; - } - } - - .mx_EventTile.mx_EventTile_emote.mx_EventTile_continuation { - padding-top: 0; - .mx_EventTile_line { - padding-top: 0px; - padding-bottom: 0px; - } - } - - .mx_EventTile_line { - padding-top: 0px; - padding-bottom: 0px; - } - - .mx_EventTile_avatar { - top: 2px; - } - - .mx_EventTile.mx_EventTile_info .mx_EventTile_avatar { - top: 5px; - } - - .mx_EventTile_e2eIcon { - top: 7px; - } - - .mx_EventTile_editButton { - top: 3px; - } - - .mx_EventTile_readAvatars { - top: 27px; - } - - .mx_EventTile_continuation .mx_EventTile_readAvatars, - .mx_EventTile_info .mx_EventTile_readAvatars, - .mx_EventTile_emote .mx_EventTile_readAvatars { - top: 5px; - } - - .mx_RoomView_MessageList h2 { - margin-top: 6px; - } -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_LinkPreviewWidget.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_LinkPreviewWidget.scss deleted file mode 100644 index 4495b142e6..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_LinkPreviewWidget.scss +++ /dev/null @@ -1,69 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_LinkPreviewWidget { - margin-top: 15px; - margin-right: 15px; - margin-bottom: 15px; - display: flex; - border-left: 4px solid $preview-widget-bar-color; - color: $preview-widget-fg-color; -} - -.mx_LinkPreviewWidget_image { - flex: 0 0 100px; - margin-left: 15px; - text-align: center; - cursor: pointer; -} - -.mx_LinkPreviewWidget_caption { - margin-left: 15px; - flex: 1 1 auto; -} - -.mx_LinkPreviewWidget_title { - display: inline; - font-weight: bold; - white-space: normal; -} - -.mx_LinkPreviewWidget_siteName { - display: inline; -} - -.mx_LinkPreviewWidget_description { - margin-top: 8px; - white-space: normal; - word-wrap: break-word; -} - -.mx_LinkPreviewWidget_cancel { - visibility: hidden; - cursor: pointer; - flex: 0 0 40px; -} - -.mx_LinkPreviewWidget:hover .mx_LinkPreviewWidget_cancel { - visibility: visible; -} - -.mx_MatrixChat_useCompactLayout { - .mx_LinkPreviewWidget { - margin-top: 6px; - margin-bottom: 6px; - } -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_MemberDeviceInfo.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_MemberDeviceInfo.scss deleted file mode 100644 index f1584d4e00..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_MemberDeviceInfo.scss +++ /dev/null @@ -1,78 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MemberDeviceInfo { - padding: 10px 0px; -} - - -.mx_MemberDeviceInfo_textButton { - color: $accent-fg-color; - background-color: $accent-color; - border-radius: 17px; - text-align: center; - padding-left: 1em; - padding-right: 1em; - width: 95px; - border: 0px; - font-size: 14px; - - cursor: pointer; - display: inline; -} - -.mx_MemberDeviceInfo_deviceId { - font-size: 13px; -} - -.mx_MemberDeviceInfo_deviceInfo { - margin-bottom: 10px; - padding-bottom: 10px; - border-bottom: 1px solid rgba(0,0,0,0.1); -} - -.mx_MemberDeviceInfo_blacklist, -.mx_MemberDeviceInfo_unblacklist { - float: right; -} - -/* "Unblacklist" is too long for a regular button: make it wider and - reduce the padding. */ -.mx_EncryptedEventDialog .mx_MemberDeviceInfo_blacklist, -.mx_EncryptedEventDialog .mx_MemberDeviceInfo_unblacklist { - width: 8em; - padding-left: 1em; - padding-right: 1em; -} - -.mx_MemberDeviceInfo div.mx_MemberDeviceInfo_verified, -.mx_MemberDeviceInfo div.mx_MemberDeviceInfo_unverified, -.mx_MemberDeviceInfo div.mx_MemberDeviceInfo_blacklisted { - float: right; - padding-left: 1em; -} - -.mx_MemberDeviceInfo div.mx_MemberDeviceInfo_verified { - color: $e2e-verified-color; -} - -.mx_MemberDeviceInfo div.mx_MemberDeviceInfo_unverified { - color: $e2e-unverified-color; -} - -.mx_MemberDeviceInfo div.mx_MemberDeviceInfo_blacklisted { - color: $e2e-warning-color; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_MemberInfo.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_MemberInfo.scss deleted file mode 100644 index 8920c6f69d..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_MemberInfo.scss +++ /dev/null @@ -1,96 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MemberInfo { - margin-top: 20px; - padding-right: 20px; - height: 100%; - overflow-y: auto; -} - -.mx_MemberInfo h2 { - margin-top: 6px; -} - -.mx_MemberInfo .mx_RoomTile_nameContainer { - width: 154px; -} - -.mx_MemberInfo .mx_RoomTile_badge { - display: none; -} - -.mx_MemberInfo .mx_RoomTile_name { - width: 160px; -} - -.mx_MemberInfo_cancel { - float: right; - margin-right: 10px; - cursor: pointer; -} - -.mx_MemberInfo_avatar { - clear: both; -} - -.mx_MemberInfo_avatar .mx_BaseAvatar { -} - -.mx_MemberInfo_avatar .mx_BaseAvatar.mx_BaseAvatar_image { - cursor: zoom-in; -} - -.mx_MemberInfo_profile { - margin-bottom: 16px; -} - -.mx_MemberInfo h3 { - text-transform: uppercase; - color: $h3-color; - font-weight: 600; - font-size: 13px; - margin-top: 16px; - margin-bottom: 14px; -} - -.mx_MemberInfo_profileField { - font-size: 13px; - position: relative; - background-color: $primary-bg-color; -} - -.mx_MemberInfo_buttons { - margin-bottom: 16px; -} - -.mx_MemberInfo_field { - cursor: pointer; - font-size: 13px; - color: $accent-color; - margin-left: 8px; - line-height: 23px; -} - -.mx_MemberInfo_createRoom { - cursor: pointer; -} - -.mx_MemberInfo_createRoom_label { - width: initial ! important; - cursor: pointer; -} - diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_MemberList.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_MemberList.scss deleted file mode 100644 index 45e5c15728..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_MemberList.scss +++ /dev/null @@ -1,107 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MemberList { - height: 100%; - - margin-top: 12px; - margin-right: 20px; - - flex: 1; - - display: flex; - - flex-direction: column; -} - -.mx_MemberList .mx_Spinner { - flex: 0 0 auto; -} - -.mx_MemberList_chevron { - position: absolute; - right: 35px; - margin-top: -15px; -} - -.mx_MemberList_border { - overflow-y: auto; - - order: 1; - flex: 1 1 0px; -} - -.mx_MemberList_query { - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; - border-radius: 3px; - border: 1px solid $input-border-color; - padding: 9px; - color: $primary-fg-color; - background-color: $primary-bg-color; - margin-left: 3px; - font-size: 14px; - margin-bottom: 8px; - width: 189px; -} - -.mx_MemberList_query::-moz-placeholder { - color: $primary-fg-color; - opacity: 0.5; - font-size: 14px; -} - -.mx_MemberList_query::-webkit-input-placeholder { - color: $primary-fg-color; - opacity: 0.5; - font-size: 14px; -} - -.mx_MemberList_joined { - order: 2; - flex: 1 0 0; - - overflow-y: auto; -} - -/* -.mx_MemberList_invited { - order: 3; - flex: 0 0 100px; - overflow-y: auto; -} -*/ - -.mx_MemberList_invited h2 { - text-transform: uppercase; - color: $h3-color; - font-weight: 600; - font-size: 13px; - padding-left: 3px; - padding-right: 12px; - margin-top: 8px; - margin-bottom: 4px; -} - -/* we have to have display: table in order for the horizontal wrapping to work */ -.mx_MemberList_wrapper { - display: table; - table-layout: fixed; - width: 100%; -} - -.mx_MemberList_outerWrapper { - height: 0px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_MessageComposer.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_MessageComposer.scss deleted file mode 100644 index 85c0e2c762..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_MessageComposer.scss +++ /dev/null @@ -1,212 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MessageComposer_wrapper { - max-width: 960px; - vertical-align: middle; - margin: auto; - border-top: 1px solid $primary-hairline-color; - position: relative; -} - -.mx_MessageComposer_autocomplete_wrapper { - position: relative; - height: 0; -} - -.mx_MessageComposer_row { - display: flex; - flex-direction: row; - align-items: center; - width: 100%; -} - -.mx_MessageComposer .mx_MessageComposer_avatar { - padding-left: 10px; - padding-right: 28px; -} - -.mx_MessageComposer .mx_MessageComposer_avatar .mx_BaseAvatar { - display: block; -} - -.mx_MessageComposer_composecontrols { - width: 100%; -} - -.mx_MessageComposer_e2eIcon { - position: absolute; - left: 44px; -} - -.mx_MessageComposer_noperm_error { - width: 100%; - height: 60px; - text-align: center; - font-style: italic; - color: $greyed-fg-color; -} - -.mx_MessageComposer_input_wrapper { - flex: 1; - display: flex; - flex-direction: column; -} - -.mx_MessageComposer_input { - flex: 1; - vertical-align: middle; - display: flex; - flex-direction: column; - min-height: 60px; - justify-content: center; - align-items: flex-start; - font-size: 14px; - margin-right: 6px; -} - -.mx_MessageComposer_input_empty .public-DraftEditorPlaceholder-root { - display: none; -} - -.mx_MessageComposer_input .DraftEditor-root { - width: 100%; - flex: 1; - max-height: 120px; - overflow: auto; -} - -.mx_MessageComposer_input blockquote { - color: $blockquote-fg-color; - margin: 0 0 16px; - padding: 0 15px; - border-left: 4px solid $blockquote-bar-color; -} - -.mx_MessageComposer_input textarea { - display: block; - width: 100%; - padding: 0px; - margin-top: 6px; - margin-bottom: 6px; - border: 0px; - resize: none; - outline: none; - box-shadow: none; - color: $primary-fg-color; - background-color: $primary-bg-color; - font-size: 14px; - max-height: 120px; - overflow: auto; - /* needed for FF */ - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; -} - -/* hack for FF as vertical alignment of custom placeholder text is broken */ -.mx_MessageComposer_input textarea::-moz-placeholder { - line-height: 100%; - color: $accent-color; - opacity: 1.0; -} -.mx_MessageComposer_input textarea::-webkit-input-placeholder { - color: $accent-color; -} - -.mx_MessageComposer_upload, -.mx_MessageComposer_hangup, -.mx_MessageComposer_voicecall, -.mx_MessageComposer_videocall { - /*display: table-cell;*/ - /*vertical-align: middle;*/ - /*padding-left: 10px;*/ - padding-right: 5px; - cursor: pointer; - padding-top: 4px; -} - -.mx_MessageComposer_upload object, -.mx_MessageComposer_hangup object, -.mx_MessageComposer_voicecall object, -.mx_MessageComposer_videocall object { - pointer-events: none; -} - -.mx_MessageComposer_formatting { - cursor: pointer; - margin: 0 11px; -} - -.mx_MessageComposer_formatbar_wrapper { - width: 100%; - background-color: $menu-bg-color; - box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.08); -} - -.mx_MessageComposer_formatbar { - margin: auto; - max-width: 960px; - display: flex; - - height: 30px; - - box-sizing: border-box; - padding-left: 62px; - - flex-direction: row; - align-items: center; - font-size: 10px; - color: $greyed-fg-color; -} - -.mx_MessageComposer_formatbar * { - margin-right: 4px; -} - -.mx_MessageComposer_format_button, -.mx_MessageComposer_formatbar_cancel, -.mx_MessageComposer_formatbar_markdown { - cursor: pointer; -} - -.mx_MessageComposer_format_button_disabled { - cursor: not-allowed; - opacity: 0.5; -} - -.mx_MessageComposer_formatbar_cancel { - margin-right: 22px; -} - -.mx_MessageComposer_formatbar_markdown { - margin-right: 64px; -} - -.mx_MessageComposer_input_markdownIndicator { - cursor: pointer; - height: 10px; - padding: 4px 4px 4px 0; - opacity: 0.8; -} - -.mx_MatrixChat_useCompactLayout { - .mx_MessageComposer_input { - min-height: 50px; - } - - .mx_MessageComposer_noperm_error { - height: 50px; - } -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_PresenceLabel.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_PresenceLabel.scss deleted file mode 100644 index 682c849cee..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_PresenceLabel.scss +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_PresenceLabel { - font-size: 11px; - opacity: 0.5; -} \ No newline at end of file diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomHeader.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomHeader.scss deleted file mode 100644 index bb80832deb..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomHeader.scss +++ /dev/null @@ -1,219 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -/* add 20px to the height of the header when editing */ -.mx_RoomHeader_editing { - flex: 0 0 93px ! important; -} - -.mx_RoomHeader_wrapper { - max-width: 960px; - margin: auto; - height: 70px; - align-items: center; - display: flex; -} - -.mx_RoomHeader_leftRow { - margin-left: -2px; - order: 1; - flex: 1; - overflow: hidden; -} - -.mx_RoomHeader_spinner { - height: 36px; - order: 2; - padding-left: 12px; - padding-right: 12px; -} - -.mx_RoomHeader_textButton { - height: 36px; - background-color: $accent-color; - border-radius: 36px; - margin-right: 8px; - color: $accent-fg-color; - line-height: 34px; - margin-top: -2px; - text-align: center; - order: 2; - cursor: pointer; - -/* - flex: 0 0 90px; -*/ - padding-left: 12px; - padding-right: 12px; -} - -.mx_RoomHeader_cancelButton { - order: 2; - cursor: pointer; - padding-left: 12px; - padding-right: 12px; -} - -.mx_RoomHeader_rightRow { - margin-top: 4px; - background-color: $primary-bg-color; - display: flex; - align-items: center; - order: 3; -} - -.mx_RoomHeader_info { - display: table-cell; - width: 100%; - vertical-align: middle; -} - -.mx_RoomHeader_simpleHeader { - line-height: 70px; - color: $primary-fg-color; - font-size: 22px; - font-weight: bold; - overflow: hidden; - margin-left: 63px; - text-overflow: ellipsis; - width: 100%; -} - -.mx_RoomHeader_simpleHeader .mx_RoomHeader_cancelButton { - float: right; -} - -.mx_RoomHeader_simpleHeader .mx_RoomHeader_icon { - margin-left: 14px; - margin-right: 24px; - vertical-align: -4px; -} - -.mx_RoomHeader_name { - vertical-align: middle; - width: 100%; - height: 31px; - overflow: hidden; - color: $primary-fg-color; - font-weight: bold; - font-size: 22px; - padding-left: 19px; - padding-right: 16px; - /* why isn't text-overflow working? */ - text-overflow: ellipsis; - border-bottom: 1px solid transparent; -} - -.mx_RoomHeader_nametext { - display: inline-block; -} - -.mx_RoomHeader_settingsHint { - color: $settings-grey-fg-color ! important; -} - -.mx_RoomHeader_searchStatus { - display: inline-block; - font-weight: normal; - opacity: 0.6; -} - -.mx_RoomHeader_settingsButton object { - pointer-events: none; -} - -.mx_RoomHeader_name, -.mx_RoomHeader_avatar, -.mx_RoomHeader_avatarPicker, -.mx_RoomHeader_avatarPicker_edit { - cursor: pointer; -} - -.mx_RoomHeader_name:hover div:not(.mx_RoomHeader_editable) { - color: $accent-color; -} - -.mx_RoomHeader_placeholder { - color: $settings-grey-fg-color ! important; -} - -.mx_RoomHeader_editable { - border-bottom: 1px solid $strong-input-border-color ! important; - min-width: 150px; - cursor: text; -} - -.mx_RoomHeader_editable:focus { - border-bottom: 1px solid $accent-color ! important; - outline: none; - box-shadow: none; -} - -.mx_RoomHeader_topic { - vertical-align: bottom; - float: left; - max-height: 42px; - color: $settings-grey-fg-color; - font-weight: 300; - font-size: 13px; - margin-left: 19px; - margin-right: 16px; - overflow: hidden; - text-overflow: ellipsis; - border-bottom: 1px solid transparent; -} - -.mx_RoomHeader_avatar { - display: table-cell; - width: 48px; - height: 50px; - vertical-align: middle; -} - -.mx_RoomHeader_avatar .mx_BaseAvatar_image { - object-fit: cover; -} - -.mx_RoomHeader_avatarPicker_edit { - position: absolute; - margin-left: 16px; - margin-top: 4px; -} - -.mx_RoomHeader_avatarPicker_edit > label { - cursor: pointer; -} - -.mx_RoomHeader_avatarPicker_edit > input { - display: none; -} - -.mx_RoomHeader_button { - margin-left: 12px; - cursor: pointer; -} - -.mx_RoomHeader_button object { - pointer-events: none; -} - -.mx_RoomHeader_voipButton { - display: table-cell; -} - -.mx_RoomHeader_voipButtons { - margin-top: 18px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomList.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomList.scss deleted file mode 100644 index 35787ca0c4..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomList.scss +++ /dev/null @@ -1,62 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd -Copyright 2107 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomList { - padding-bottom: 12px; - min-height: 400px; -} - -.mx_RoomList_expandButton { - margin-left: 8px; - cursor: pointer; - padding-left: 12px; - padding-right: 12px; -} - -/* Evil hacky override until Chrome fixes drop and drag table cells - and we can correctly fix horizontal wrapping in the sidebar again */ -.mx_RoomList_scrollbar .gm-scroll-view { - overflow-x: hidden ! important; - overflow-y: scroll ! important; -} - -/* Make sure the scrollbar is above the sticky headers from RoomList */ -.mx_RoomList_scrollbar .gm-scrollbar.-vertical { - z-index: 6; -} - -.mx_RoomList_emptySubListTip { - font-size: 13px; - margin-left: 18px; - margin-right: 18px; - margin-top: 8px; - margin-bottom: 7px; - padding: 5px; - border: 1px dashed $accent-color; - color: $primary-fg-color; - background-color: $droptarget-bg-color; - border-radius: 4px; -} - -.mx_RoomList_emptySubListTip .mx_RoleButton { - vertical-align: -3px; -} - -.mx_RoomList_headerButtons { - position: absolute; - right: 60px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomPreviewBar.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomPreviewBar.scss deleted file mode 100644 index 331eb582ea..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomPreviewBar.scss +++ /dev/null @@ -1,58 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomPreviewBar { - text-align: center; - height: 176px; - background-color: $event-selected-color; - align-items: center; - flex-direction: column; - justify-content: center; - display: flex; - background-color: $preview-bar-bg-color; - -webkit-align-items: center; -} - -.mx_RoomPreviewBar_wrapper { -} - -.mx_RoomPreviewBar_invite_text { - color: $primary-fg-color; -} - -.mx_RoomPreviewBar_join_text { - color: $warning-color; -} - -.mx_RoomPreviewBar_preview_text { - margin-top: 25px; - color: $settings-grey-fg-color; -} - -.mx_RoomPreviewBar_join_text a { - text-decoration: underline; - cursor: pointer; -} - -.mx_RoomPreviewBar_warning { - display: flex; - align-items: center; - padding: 8px; -} - -.mx_RoomPreviewBar_warningIcon { - padding: 12px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomSettings.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomSettings.scss deleted file mode 100644 index 517ff94c1b..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomSettings.scss +++ /dev/null @@ -1,239 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomSettings { - margin-left: 65px; - margin-bottom: 20px; -} - -.mx_RoomSettings_leaveButton, -.mx_RoomSettings_unbanButton, -.mx_RoomSettings_integrationsButton, -.mx_RoomSettings_integrationsButton_error { - position: relative; - height: 36px; - background-color: $accent-color; - border-radius: 36px; - margin-right: 8px; - color: $accent-fg-color; - line-height: 34px; - text-align: center; - cursor: pointer; - padding-left: 12px; - padding-right: 12px; -} -.mx_RoomSettings_leaveButton, -.mx_RoomSettings_integrationsButton, -.mx_RoomSettings_integrationsButton_error { - float: right; -} -.mx_RoomSettings_integrationsButton_error { - pointer: not-allowed; -} -.mx_RoomSettings_integrationsButton_errorPopup { - position: absolute; - top: 110%; - left: -26%; - width: 150%; - padding: 2%; - font-size: 10pt; - line-height: 1.5em; - border-radius: 5px; - background-color: $accent-color; - color: $accent-fg-color; -} -.mx_RoomSettings_unbanButton { - display: inline; -} - -.mx_RoomSettings_e2eIcon { - padding-left: 4px; - padding-right: 7px; -} - -.mx_RoomSettings_leaveButton { - margin-right: 32px; -} - -.mx_RoomSettings_powerLevels { - display: table; -} - -.mx_RoomSettings_powerLevel { - display: table-row; -} - -.mx_RoomSettings_powerLevelKey, -.mx_RoomSettings_powerLevel .mx_PowerSelector { - display: table-cell; - padding-bottom: 5px; -} - -.mx_RoomSettings_powerLevelKey { - text-align: right; - padding-right: 0.3em; -} - -.mx_RoomSettings h3 { - text-transform: uppercase; - color: $h3-color; - font-weight: 600; - font-size: 13px; - margin-top: 36px; - margin-bottom: 10px; -} - -.mx_RoomSettings .mx_RoomSettings_toggles label { - margin-bottom: 8px; - display: block; -} - -.mx_RoomSettings .mx_RoomSettings_toggles input[type="checkbox"], -.mx_RoomSettings .mx_RoomSettings_toggles input[type="radio"] { - margin-right: 7px; -} - -.mx_RoomSettings .mx_RoomSettings_tags input[type="checkbox"] { - margin-left: 1em; - margin-right: 7px; -} - -.mx_RoomSettings .mx_RoomSettings_tags { - margin-bottom: 8px; -} - -.mx_RoomSettings .mx_RoomSettings_roomColor { - display: inline-block; - position: relative; - width: 37px; - height: 37px; - border: 1px solid #979797; - margin-right: 13px; - cursor: pointer; -} - -.mx_RoomSettings .mx_RoomSettings_roomColor_selected { - position: absolute; - left: 10px; - top: 4px; - cursor: default ! important; -} - -.mx_RoomSettings .mx_RoomSettings_roomColorPrimary { - height: 10px; - position: absolute; - bottom: 0px; - width: 100%; -} - -.mx_RoomSettings .mx_RoomSettings_aliasLabel { - margin-bottom: 8px; -} - -.mx_RoomSettings .mx_RoomSettings_aliasesTable { - margin-top: 12px; - margin-bottom: 0px; - margin-left: 56px; - display: table; -} - -.mx_RoomSettings .mx_RoomSettings_aliasesTableRow { - display: table-row; - margin-bottom: 16px; -} - -.mx_RoomSettings .mx_RoomSettings_alias { - max-width: 400px; - margin-bottom: 16px; - /* - commented out so margin applies - display: table-cell; */ -} - -.mx_RoomSettings .mx_RoomSettings_addAlias, -.mx_RoomSettings .mx_RoomSettings_deleteAlias { - display: table-cell; - padding-left: 0.5em; - position: relative; - cursor: pointer; -} - -.mx_RoomSettings .mx_RoomSettings_addAlias img, -.mx_RoomSettings .mx_RoomSettings_deleteAlias img { - visibility: hidden; -} - -.mx_RoomSettings .mx_RoomSettings_aliasesTableRow:hover .mx_RoomSettings_addAlias img, -.mx_RoomSettings .mx_RoomSettings_aliasesTableRow:hover .mx_RoomSettings_deleteAlias img { - visibility: visible; -} - -.mx_RoomSettings_warning { - color: $warning-color; - font-weight: bold; - margin-top: 8px; - margin-bottom: 8px; -} - -.mx_RoomSettings_editable { - border: 0px; - border-bottom: 1px solid $strong-input-border-color; - padding: 0px; - min-width: 240px; -} - -.mx_RoomSettings_editable:focus { - border-bottom: 1px solid $accent-color; - outline: none; - box-shadow: none; -} - -.mx_RoomSettings_deleteAlias, -.mx_RoomSettings_addAlias { - display: table-cell; - visibility: visible; -} - -.mx_RoomSettings_deleteAlias:hover, -.mx_RoomSettings_addAlias:hover { - visibility: visible; -} - -.mx_RoomSettings_aliasPlaceholder { - color: $settings-grey-fg-color; -} - -.mx_RoomSettings_buttons { - text-align: right; - margin-bottom: 16px; -} - -.mx_RoomSettings_button { - display: inline; - border: 0px; - height: 36px; - border-radius: 36px; - font-weight: 400; - font-size: 15px; - color: $accent-fg-color; - background-color: $accent-color; - width: auto; - margin: auto; - padding: 6px; - padding-left: 1em; - padding-right: 1em; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomTile.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomTile.scss deleted file mode 100644 index 842228b9c3..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_RoomTile.scss +++ /dev/null @@ -1,171 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomTile { - position: relative; - cursor: pointer; - font-size: 13px; - display: block; - height: 34px; -} - -.mx_RoomTile_tooltip { - display: inline-block; - position: relative; - top: -54px; - left: -12px; -} - - -.mx_RoomTile_nameContainer { - display: inline-block; - width: 180px; - height: 24px; -} - -.mx_RoomTile_avatar_container { - position: relative; -} - -.mx_RoomTile_avatar { - display: inline-block; - padding-top: 5px; - padding-bottom: 5px; - padding-left: 16px; - padding-right: 6px; - width: 24px; - height: 24px; - vertical-align: middle; -} - -.mx_RoomTile_dm { - display: block; - position: absolute; - bottom: 0; - right: -5px; - z-index: 2; -} - -.mx_RoomTile_name { - display: inline-block; - position: relative; - width: 165px; - vertical-align: middle; - padding-left: 6px; - padding-right: 6px; - padding-top: 2px; - padding-bottom: 3px; - color: $roomtile-name-color; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; -} - -.mx_RoomTile_invite { -/* color: rgba(69, 69, 69, 0.5); */ -} - -.collapsed .mx_RoomTile_nameContainer { - width: 60px; /* colapsed panel width */ -} - -.collapsed .mx_RoomTile_name { - display: none; -} - -.collapsed .mx_RoomTile_badge { - top: 0px; - min-width: 12px; - border-radius: 16px; - padding: 0px 4px 0px 4px; - z-index: 3; -} - -/* Hide the bottom of speech bubble */ -.collapsed .mx_RoomTile_highlight .mx_RoomTile_badge:after { - display: none; -} - -/* This is the bottom of the speech bubble */ -.mx_RoomTile_highlight .mx_RoomTile_badge:after { - content: ""; - position: absolute; - display: block; - width: 0; - height: 0; - margin-left: 5px; - border-top: 5px solid $warning-color; - border-right: 7px solid transparent; -} - -.mx_RoomTile_badge { - display: inline-block; - min-width: 15px; - height: 15px; - position: absolute; - right: 8px; /*gutter */ - top: 9px; - border-radius: 8px; - color: $accent-fg-color; - font-weight: 600; - font-size: 10px; - text-align: center; - padding-top: 1px; - padding-left: 4px; - padding-right: 4px; -} - -.mx_RoomTile .mx_RoomTile_badge.mx_RoomTile_badgeButton, -.mx_RoomTile.mx_RoomTile_menuDisplayed .mx_RoomTile_badge { - letter-spacing: 0.1em; - opacity: 1; -} - -.mx_RoomTile.mx_RoomTile_noBadges .mx_RoomTile_badge.mx_RoomTile_badgeButton, -.mx_RoomTile.mx_RoomTile_menuDisplayed.mx_RoomTile_noBadges .mx_RoomTile_badge { - background-color: $neutral-badge-color; -} - -.mx_RoomTile_unreadNotify .mx_RoomTile_badge { - background-color: $accent-color; -} - -.mx_RoomTile_highlight .mx_RoomTile_badge { - background-color: $warning-color; -} - -.mx_RoomTile_unread, .mx_RoomTile_highlight { - font-weight: 800; -} - -.mx_RoomTile_selected { - background-color: $roomtile-selected-bg-color; -} - -.mx_RoomTile:focus { - filter: none ! important; - background-color: $roomtile-focused-bg-color; -} - -.mx_RoomTile .mx_RoomTile_name.mx_RoomTile_badgeShown { - width: 140px; -} - -.mx_RoomTile_arrow { - position: absolute; - right: 0px; -} - diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_SearchableEntityList.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_SearchableEntityList.scss deleted file mode 100644 index 6116dd92ca..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_SearchableEntityList.scss +++ /dev/null @@ -1,77 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_SearchableEntityList { - display: flex; - - flex-direction: column; -} - -.mx_SearchableEntityList_query { - font-family: 'Open Sans', Arial, Helvetica, Sans-Serif; - border-radius: 3px; - border: 1px solid $input-border-color; - padding: 9px; - color: $primary-fg-color; - background-color: $primary-bg-color; - margin-left: 3px; - font-size: 15px; - margin-bottom: 8px; - width: 189px; -} - -.mx_SearchableEntityList_query::-moz-placeholder { - color: $primary-fg-color; - opacity: 0.5; - font-size: 12px; -} - -.mx_SearchableEntityList_query::-webkit-input-placeholder { - color: $primary-fg-color; - opacity: 0.5; - font-size: 12px; -} - -.mx_SearchableEntityList_listWrapper { - flex: 1; - - overflow-y: auto; -} - -.mx_SearchableEntityList_list { - display: table; - table-layout: fixed; - width: 100%; -} - -.mx_SearchableEntityList_list .mx_EntityTile_chevron { - display: none; -} - -.mx_SearchableEntityList_hrWrapper { - width: 100%; - flex: 0 0 auto; -} - -.mx_SearchableEntityList hr { - height: 1px; - border: 0px; - color: $primary-fg-color; - background-color: $primary-fg-color; - margin-right: 15px; - margin-top: 11px; - margin-bottom: 11px; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_TabCompleteBar.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_TabCompleteBar.scss deleted file mode 100644 index 5dcbd21a47..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_TabCompleteBar.scss +++ /dev/null @@ -1,56 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_TabCompleteBar { - overflow: hidden; -} - -.mx_TabCompleteBar_item { - display: inline-block; - margin-right: 15px; - margin-bottom: 2px; - cursor: pointer; -} - -.mx_TabCompleteBar_command { - margin-right: 8px; - background-color: $accent-color; - padding-left: 8px; - padding-right: 8px; - padding-top: 2px; - padding-bottom: 2px; - margin-bottom: 6px; - border-radius: 30px; - position: relative; - top: 1px; -} - -.mx_TabCompleteBar_command .mx_TabCompleteBar_text { - opacity: 1.0; - vertical-align: initial; - color: $accent-fg-color; -} - -.mx_TabCompleteBar_item img { - margin-right: 8px; - vertical-align: middle; -} - -.mx_TabCompleteBar_text { - color: $primary-fg-color; - vertical-align: middle; - opacity: 0.5; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_TopUnreadMessagesBar.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_TopUnreadMessagesBar.scss deleted file mode 100644 index 1ee56d9532..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_TopUnreadMessagesBar.scss +++ /dev/null @@ -1,53 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_TopUnreadMessagesBar { - margin: auto; /* centre horizontally */ - max-width: 960px; - padding-top: 10px; - padding-bottom: 10px; - border-bottom: 1px solid $primary-hairline-color; -} - -.mx_TopUnreadMessagesBar_scrollUp { - display: inline; - cursor: pointer; - text-decoration: underline; -} - -.mx_TopUnreadMessagesBar_scrollUp img { - padding-left: 10px; - padding-right: 31px; - vertical-align: middle; -} - -.mx_TopUnreadMessagesBar_scrollUp span { - opacity: 0.5; -} - -.mx_TopUnreadMessagesBar_close { - float: right; - padding-right: 14px; - padding-top: 3px; - cursor: pointer; -} - -.mx_MatrixChat_useCompactLayout { - .mx_TopUnreadMessagesBar { - padding-top: 4px; - padding-bottom: 4px; - } -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/settings/_DevicesPanel.scss b/src/skins/vector/css/matrix-react-sdk/views/settings/_DevicesPanel.scss deleted file mode 100644 index e4856531d9..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/settings/_DevicesPanel.scss +++ /dev/null @@ -1,51 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_DevicesPanel { - display: table; - table-layout: fixed; - width: 880px; - border-spacing: 2px; -} - -.mx_DevicesPanel_header { - display: table-header-group; - font-weight: bold; -} - -.mx_DevicesPanel_header > div { - display: table-cell; -} - -.mx_DevicesPanel_header .mx_DevicesPanel_deviceLastSeen { - width: 30%; -} - -.mx_DevicesPanel_header .mx_DevicesPanel_deviceButtons { - width: 20%; -} - -.mx_DevicesPanel_device { - display: table-row; -} - -.mx_DevicesPanel_device > div { - display: table-cell; -} - -.mx_DevicesPanel_myDevice { - font-weight: bold; -} \ No newline at end of file diff --git a/src/skins/vector/css/matrix-react-sdk/views/settings/_IntegrationsManager.scss b/src/skins/vector/css/matrix-react-sdk/views/settings/_IntegrationsManager.scss deleted file mode 100644 index 93ee0e20fe..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/settings/_IntegrationsManager.scss +++ /dev/null @@ -1,31 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_IntegrationsManager .mx_Dialog { - width: 60%; - height: 70%; - overflow: hidden; - padding: 0px; - max-width: initial; - max-height: initial; -} - -.mx_IntegrationsManager iframe { - background-color: #fff; - border: 0px; - width: 100%; - height: 100%; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/voip/_CallView.scss b/src/skins/vector/css/matrix-react-sdk/views/voip/_CallView.scss deleted file mode 100644 index deb89a837c..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/voip/_CallView.scss +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_CallView_voice { - background-color: $accent-color; - color: $accent-fg-color; - cursor: pointer; - text-align: center; - padding: 6px; - font-weight: bold; - font-size: 13px; -} \ No newline at end of file diff --git a/src/skins/vector/css/matrix-react-sdk/views/voip/_IncomingCallbox.scss b/src/skins/vector/css/matrix-react-sdk/views/voip/_IncomingCallbox.scss deleted file mode 100644 index 64eac25d01..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/voip/_IncomingCallbox.scss +++ /dev/null @@ -1,69 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_IncomingCallBox { - text-align: center; - border: 1px solid #a4a4a4; - border-radius: 8px; - background-color: $primary-bg-color; - position: fixed; - z-index: 1000; - padding: 6px; - margin-top: -3px; - margin-left: -20px; - width: 200px; -} - -.mx_IncomingCallBox_chevron { - padding: 12px; - position: absolute; - left: -21px; - top: 0px; -} - -.mx_IncomingCallBox_title { - padding: 6px; - font-weight: bold; -} - -.mx_IncomingCallBox_buttons { - display: flex; -} - -.mx_IncomingCallBox_buttons_cell { - vertical-align: middle; - padding: 6px; - flex: 1; -} - -.mx_IncomingCallBox_buttons_decline, -.mx_IncomingCallBox_buttons_accept { - vertical-align: middle; - width: 80px; - height: 36px; - line-height: 36px; - border-radius: 36px; - color: $accent-fg-color; - margin: auto; -} - -.mx_IncomingCallBox_buttons_decline { - background-color: $voip-decline-color; -} - -.mx_IncomingCallBox_buttons_accept { - background-color: $voip-accept-color; -} diff --git a/src/skins/vector/css/matrix-react-sdk/views/voip/_VideoView.scss b/src/skins/vector/css/matrix-react-sdk/views/voip/_VideoView.scss deleted file mode 100644 index 8f23ef6ba9..0000000000 --- a/src/skins/vector/css/matrix-react-sdk/views/voip/_VideoView.scss +++ /dev/null @@ -1,45 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_VideoView { - width: 100%; - position: relative; - z-index: 30; -} - -.mx_VideoView video { - width: 100%; -} - -.mx_VideoView_remoteVideoFeed { - width: 100%; - background-color: #000; - z-index: 50; -} - -.mx_VideoView_localVideoFeed { - width: 25%; - height: 25%; - position: absolute; - left: 10px; - bottom: 10px; - z-index: 100; -} - -.mx_VideoView_localVideoFeed video { - width: auto; - height: 100%; -} \ No newline at end of file diff --git a/src/skins/vector/css/rethemendex.sh b/src/skins/vector/css/rethemendex.sh deleted file mode 100755 index a7d9a657ac..0000000000 --- a/src/skins/vector/css/rethemendex.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -cd `dirname $0` - -{ - echo "// autogenerated by rethemendex.sh" - - find . \! \( -path ./themes -prune \) -iname _\*.scss | - fgrep -v _components.scss | LC_ALL=C sort | - while read i; do - echo "@import \"$i\";" - done -} > _components.scss diff --git a/src/skins/vector/css/themes/_base.scss b/src/skins/vector/css/themes/_base.scss deleted file mode 100644 index b601191348..0000000000 --- a/src/skins/vector/css/themes/_base.scss +++ /dev/null @@ -1,117 +0,0 @@ - -// typical text (dark-on-white in light skin) -$primary-fg-color: #454545; -$primary-bg-color: #ffffff; - -// used for dialog box text -$light-fg-color: #747474; - -// used for focusing form controls -$focus-bg-color: #dddddd; - -// button UI (white-on-green in light skin) -$accent-fg-color: #ffffff; -$accent-color: #76CFA6; - -$selection-fg-color: $primary-bg-color; - -$focus-brightness: 125%; - -// red warning colour -$warning-color: #ff0064; - -$preview-bar-bg-color: #f7f7f7; - -// left-panel style muted accent color -$secondary-accent-color: #eaf5f0; - -// used by RoomDirectory permissions -$plinth-bg-color: $secondary-accent-color; - -// used by RoomDropTarget -$droptarget-bg-color: rgba(255,255,255,0.5); - -// used by AddressSelector -$selected-color: #eaf5f0; - -// selected for hoverover & selected event tiles -$event-selected-color: #f7f7f7; - -// used for the hairline dividers in RoomView -$primary-hairline-color: #e5e5e5; - -// used for the border of input text fields -$input-border-color: #f0f0f0; - -// apart from login forms, which have stronger border -$strong-input-border-color: #c7c7c7; - -// used for UserSettings EditableText -$input-underline-color: rgba(151, 151, 151, 0.5); -$input-fg-color: rgba(74, 74, 74, 0.9); - -// context menus -$menu-border-color: rgba(187, 187, 187, 0.5); -$menu-bg-color: #f6f6f6; - -$avatar-initial-color: #ffffff; - -$h3-color: #3d3b39; - -$dialog-background-bg-color: #e9e9e9; -$lightbox-background-bg-color: #000; - -$greyed-fg-color: #888; - -$neutral-badge-color: #dbdbdb; - -$preview-widget-bar-color: #ddd; -$preview-widget-fg-color: $greyed-fg-color; - -$blockquote-bar-color: #ddd; -$blockquote-fg-color: #777; - -$settings-grey-fg-color: #a2a2a2; - -$voip-decline-color: #f48080; -$voip-accept-color: #80f480; - -$rte-bg-color: #e9e9e9; -$rte-code-bg-color: rgba(0, 0, 0, 0.04); - -// ******************** - -$roomtile-name-color: rgba(69, 69, 69, 0.8); -$roomtile-selected-bg-color: rgba(255, 255, 255, 0.8); -$roomtile-focused-bg-color: rgba(255, 255, 255, 0.9); - -$roomsublist-label-fg-color: $h3-color; -$roomsublist-label-bg-color: #d3efe1; - -// ******************** - -// event tile lifecycle -$event-encrypting-color: #abddbc; -$event-sending-color: #ddd; -$event-notsent-color: #f44; - -// event redaction -$event-redacted-img: url('../../img/redacted.jpg'); - -// event timestamp -$event-timestamp-color: #acacac; - -$edit-button-url: "../../img/icon_context_message.svg"; - -// e2e -$e2e-verified-color: #76cfa5; // N.B. *NOT* the same as $accent-color -$e2e-unverified-color: #e8bf37; -$e2e-warning-color: #ba6363; - -/*** ImageView ***/ -$lightbox-bg-color: #454545; -$lightbox-fg-color: #ffffff; -$lightbox-border-color: #ffffff; - -// unused? -$progressbar-color: #000; \ No newline at end of file diff --git a/src/skins/vector/css/themes/_dark.scss b/src/skins/vector/css/themes/_dark.scss deleted file mode 100644 index 72c21b7572..0000000000 --- a/src/skins/vector/css/themes/_dark.scss +++ /dev/null @@ -1,149 +0,0 @@ - -// typical text (dark-on-white in light skin) -$primary-fg-color: #dddddd; -$primary-bg-color: #2d2d2d; - -// used for focusing form controls -$focus-bg-color: #101010; - -// used for dialog box text -$light-fg-color: #747474; - -// button UI (white-on-green in light skin) -$accent-fg-color: $primary-bg-color; -$accent-color: #76CFA6; - -$selection-fg-color: $primary-fg-color; - -$focus-brightness: 200%; - -// red warning colour -$warning-color: #ff0064; - -$preview-bar-bg-color: #333; - -// left-panel style muted accent color -$secondary-accent-color: $primary-bg-color; - -// used by RoomDirectory permissions -$plinth-bg-color: #474747; - -// used by RoomDropTarget -$droptarget-bg-color: rgba(45,45,45,0.5); - -// used by AddressSelector -$selected-color: #000000; - -// selected for hoverover & selected event tiles -$event-selected-color: #353535; - -// used for the hairline dividers in RoomView -$primary-hairline-color: #474747; - -// used for the border of input text fields -$input-border-color: #3a3a3a; - -// apart from login forms, which have stronger border -$strong-input-border-color: #656565; - -// used for UserSettings EditableText -$input-underline-color: $primary-fg-color; -$input-fg-color: $primary-fg-color; - -// context menus -$menu-border-color: rgba(187, 187, 187, 0.5); -$menu-bg-color: #373737; - -$avatar-initial-color: #2d2d2d; - -$h3-color: $primary-fg-color; - -$dialog-background-bg-color: #000; -$lightbox-background-bg-color: #000; - -$greyed-fg-color: #888; - -$neutral-badge-color: #888; - -$preview-widget-bar-color: $menu-bg-color; -$preview-widget-fg-color: $greyed-fg-color; - -$blockquote-bar-color: #ddd; -$blockquote-fg-color: #777; - -$settings-grey-fg-color: #a2a2a2; - -$voip-decline-color: #f48080; -$voip-accept-color: #80f480; - -$rte-bg-color: #353535; -$rte-code-bg-color: #000; - -// ******************** - -$roomtile-name-color: rgba(186, 186, 186, 0.8); -$roomtile-selected-bg-color: rgba(255, 255, 255, 0.05); -$roomtile-focused-bg-color: rgba(255, 255, 255, 0.2); - -$roomsublist-label-fg-color: $h3-color; -$roomsublist-label-bg-color: #454545; - -// ******************** - -// event tile lifecycle -$event-encrypting-color: rgba(171, 221, 188, 0.4); -$event-sending-color: #888; -$event-notsent-color: #f44; - -// event redaction -$event-redacted-img: url('../../img/redacted-dark.jpg'); - -// event timestamp -$event-timestamp-color: #acacac; - -$edit-button-url: "../../img/icon_context_message_dark.svg"; - -// e2e -$e2e-verified-color: #76cfa5; // N.B. *NOT* the same as $accent-color -$e2e-unverified-color: #e8bf37; -$e2e-warning-color: #ba6363; - -/*** ImageView ***/ -$lightbox-bg-color: #454545; -$lightbox-fg-color: #ffffff; -$lightbox-border-color: #ffffff; - -// unused? -$progressbar-color: #000; - -// Nasty hacks to apply a filter to arbitrary monochrome artwork to make it -// better match the theme. Typically applied to dark grey 'off' buttons or -// light grey 'on' buttons. -.mx_filterFlipColor { - filter: invert(1); -} - -.gm-scrollbar .thumb { - filter: invert(1); -} - -// markdown overrides: -.mx_EventTile_content .markdown-body { - pre, code { - filter: invert(1); - } - - pre code { - filter: none; - } - - table { - tr { - background-color: #000000; - } - - tr:nth-child(2n) { - background-color: #080808; - } - } -} diff --git a/src/skins/vector/css/themes/dark.scss b/src/skins/vector/css/themes/dark.scss deleted file mode 100644 index 5a37d0368e..0000000000 --- a/src/skins/vector/css/themes/dark.scss +++ /dev/null @@ -1,3 +0,0 @@ -@import "_base.scss"; -@import "_dark.scss"; -@import "../_components.scss"; diff --git a/src/skins/vector/css/themes/light.scss b/src/skins/vector/css/themes/light.scss deleted file mode 100644 index ea0f93d5a3..0000000000 --- a/src/skins/vector/css/themes/light.scss +++ /dev/null @@ -1,2 +0,0 @@ -@import "_base.scss"; -@import "../_components.scss"; \ No newline at end of file diff --git a/src/skins/vector/css/vector-web/_fonts.scss b/src/skins/vector/css/vector-web/_fonts.scss deleted file mode 100644 index 52ac95b569..0000000000 --- a/src/skins/vector/css/vector-web/_fonts.scss +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Open Sans - * Includes extended Latin, Greek, Cyrillic and Vietnamese character sets - */ - -/* the 'src' links are relative to the bundle.css, which is in a subdirectory. - */ -@font-face { - font-family: 'Open Sans'; - src: url('../../fonts/Open_Sans/OpenSans-Regular.ttf') format('truetype'); - font-weight: 400; - font-style: normal; -} - -@font-face { - font-family: 'Open Sans'; - src: url('../../fonts/Open_Sans/OpenSans-Italic.ttf') format('truetype'); - font-weight: 400; - font-style: italic; -} - -@font-face { - font-family: 'Open Sans'; - src: url('../../fonts/Open_Sans/OpenSans-Semibold.ttf') format('truetype'); - font-weight: 600; - font-style: normal; -} - -@font-face { - font-family: 'Open Sans'; - src: url('../../fonts/Open_Sans/OpenSans-SemiboldItalic.ttf') format('truetype'); - font-weight: 600; - font-style: italic; -} - -@font-face { - font-family: 'Open Sans'; - src: url('../../fonts/Open_Sans/OpenSans-Bold.ttf') format('truetype'); - font-weight: 700; - font-style: normal; -} - -@font-face { - font-family: 'Open Sans'; - src: url('../../fonts/Open_Sans/OpenSans-BoldItalic.ttf') format('truetype'); - font-weight: 700; - font-style: italic; -} - -/* - * Fira Mono - * Used for monospace copy, i.e. code - */ - -@font-face { - font-family: 'Fira Mono'; - src: url('../../fonts/Fira_Mono/FiraMono-Regular.ttf') format('truetype'); - font-weight: 400; - font-style: normal; -} - -@font-face { - font-family: 'Fira Mono'; - src: url('../../fonts/Fira_Mono/FiraMono-Bold.ttf') format('truetype'); - font-weight: 700; - font-style: normal; -} diff --git a/src/skins/vector/css/vector-web/structures/_CompatibilityPage.scss b/src/skins/vector/css/vector-web/structures/_CompatibilityPage.scss deleted file mode 100644 index f3f032c975..0000000000 --- a/src/skins/vector/css/vector-web/structures/_CompatibilityPage.scss +++ /dev/null @@ -1,19 +0,0 @@ -.mx_CompatibilityPage { - width: 100%; - height: 100%; - background-color: #e55; -} - -.mx_CompatibilityPage_box { - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - margin: auto; - width: 500px; - height: 300px; - border: 1px solid; - padding: 10px; - background-color: #fcc; -} \ No newline at end of file diff --git a/src/skins/vector/css/vector-web/structures/_HomePage.scss b/src/skins/vector/css/vector-web/structures/_HomePage.scss deleted file mode 100644 index 81adb3ced1..0000000000 --- a/src/skins/vector/css/vector-web/structures/_HomePage.scss +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2016 OpenMarket Ltd -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_HomePage { - max-width: 960px; - width: 100%; - height: 100%; - overflow-y: hidden; - margin-left: auto; - margin-right: auto; -} -.mx_HomePage iframe { - width: 100%; - height: 90%; - border: 0px; -} - -.mx_HomePage_body { -// margin-left: 63px; -} diff --git a/src/skins/vector/css/vector-web/structures/_LeftPanel.scss b/src/skins/vector/css/vector-web/structures/_LeftPanel.scss deleted file mode 100644 index 418358dd65..0000000000 --- a/src/skins/vector/css/vector-web/structures/_LeftPanel.scss +++ /dev/null @@ -1,106 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_LeftPanel { - position: relative; - - display: flex; - flex-direction: column; -} - -.mx_LeftPanel_hideButton { - position: absolute; - top: 10px; - right: 0px; - padding: 8px; - cursor: pointer; -} - -.mx_LeftPanel_callView { - -} - -.mx_LeftPanel .mx_RoomList_scrollbar { - order: 1; - - flex: 1 1 0; - - overflow-y: auto; - z-index: 6; -} - -.mx_LeftPanel.collapsed .mx_BottomLeftMenu { - flex: 0 0 160px; -} - -.mx_LeftPanel .mx_BottomLeftMenu { - order: 3; - - border-top: 1px solid rgba(118, 207, 166, 0.2); - margin-left: 16px; /* gutter */ - margin-right: 16px; /* gutter */ - flex: 0 0 60px; - z-index: 1; -} - -.mx_LeftPanel .mx_BottomLeftMenu_options { - margin-top: 18px; -} - -.mx_BottomLeftMenu_options object { - pointer-events: none; -} - -.collapsed .mx_RoleButton { - margin-right: 0px ! important; - padding-top: 3px ! important; - padding-bottom: 3px ! important; -} - -.mx_BottomLeftMenu_options > div { - display: inline-block; -} - -.mx_BottomLeftMenu_options .mx_RoleButton { - margin-left: 0px; - margin-right: 10px; -} - -.mx_BottomLeftMenu_options .mx_BottomLeftMenu_settings { - float: right; -} - -.mx_BottomLeftMenu_options .mx_BottomLeftMenu_settings .mx_RoleButton { - margin-right: 0px; -} - -.mx_LeftPanel.collapsed .mx_BottomLeftMenu_settings { - float: none; -} - -.mx_MatrixChat_useCompactLayout { - .mx_LeftPanel .mx_BottomLeftMenu { - flex: 0 0 50px; - } - - .mx_LeftPanel.collapsed .mx_BottomLeftMenu { - flex: 0 0 160px; - } - - .mx_LeftPanel .mx_BottomLeftMenu_options { - margin-top: 12px; - } -} diff --git a/src/skins/vector/css/vector-web/structures/_RightPanel.scss b/src/skins/vector/css/vector-web/structures/_RightPanel.scss deleted file mode 100644 index 056e9bd338..0000000000 --- a/src/skins/vector/css/vector-web/structures/_RightPanel.scss +++ /dev/null @@ -1,131 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RightPanel { - position: relative; - - display: flex; - flex-direction: column; -} - -.mx_RightPanel_header { - order: 1; - - border-bottom: 1px solid $primary-hairline-color; - margin-right: 20px; - - flex: 0 0 70px; -} - -/** Fixme - factor this out with the main header **/ - -.mx_RightPanel_headerButtonGroup { - margin-top: 6px; - display: flex; - width: 100%; - background-color: $primary-bg-color; - margin-left: 0px; -} - -.mx_RightPanel_headerButton { - cursor: pointer; - flex: 0 0 auto; - vertical-align: top; - padding-left: 4px; - padding-right: 5px; - text-align: center; - position: relative; -} - -.mx_RightPanel_headerButton object { - pointer-events: none; - padding-bottom: 3px; -} - -.mx_RightPanel_headerButton_highlight { - width: 25px; - height: 5px; - border-radius: 5px; - background-color: $accent-color; - opacity: 0.2; -} - -.mx_RightPanel_headerButton_badge { - font-size: 11px; - color: $accent-color; - font-weight: bold; - padding-bottom: 2px; -} - -.mx_RightPanel_collapsebutton { - flex: 1; - text-align: right; - margin-top: 20px; -} - -.mx_RightPanel .mx_MemberList, -.mx_RightPanel .mx_MemberInfo, -.mx_RightPanel_blank { - order: 2; - flex: 1 1 0; -} - -.mx_RightPanel_footer { - order: 3; - - border-top: 1px solid $primary-hairline-color; - margin-right: 20px; - - flex: 0 0 60px; -} - -.mx_RightPanel_footer .mx_RightPanel_invite { - line-height: 35px; - font-size: 14px; - color: $primary-fg-color; - padding-top: 13px; - padding-left: 5px; - cursor: pointer; -} - -.collapsed .mx_RightPanel_footer .mx_RightPanel_invite { - display: none; -} - -.mx_RightPanel_invite .mx_RightPanel_icon { - display: inline-block; -} - -.mx_RightPanel_invite .mx_RightPanel_icon object { - pointer-events: none; -} - -.mx_RightPanel_invite .mx_RightPanel_message { - display: inline-block; - vertical-align: top; - padding-left: 10px -} - -.mx_MatrixChat_useCompactLayout { - .mx_RightPanel_footer { - flex: 0 0 50px; - } - - .mx_RightPanel_footer .mx_RightPanel_invite { - line-height: 25px; - padding-top: 8px; - } -} diff --git a/src/skins/vector/css/vector-web/structures/_RoomDirectory.scss b/src/skins/vector/css/vector-web/structures/_RoomDirectory.scss deleted file mode 100644 index 91cf86c934..0000000000 --- a/src/skins/vector/css/vector-web/structures/_RoomDirectory.scss +++ /dev/null @@ -1,130 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomDirectory { - max-width: 960px; - width: 100%; - margin-left: auto; - margin-right: auto; - margin-bottom: 12px; - color: $primary-fg-color; - word-break: break-word; - - display: flex; - - flex-direction: column; -} - -.mx_RoomDirectory .mx_RoomHeader_simpleHeader { - margin-left: 0px; -} - -.mx_RoomDirectory_list { - flex: 1; - - display: flex; - - flex-direction: column; -} - -.mx_RoomDirectory_list .mx_RoomView_messageListWrapper { - justify-content: flex-start; -} - -.mx_RoomDirectory_listheader { - display: table; - table-layout: fixed; - width: 100%; - margin-top: 12px; - margin-bottom: 12px; - border-spacing: 5px; -} - -.mx_RoomDirectory_searchbox { - display: table-cell; - vertical-align: middle; -} - -.mx_RoomDirectory_listheader .mx_NetworkDropdown { - display: table-cell; - width: 200px; -} - -.mx_RoomDirectory_tableWrapper { - overflow-y: auto; - flex: 1 1 0; -} - -.mx_RoomDirectory_table { - font-size: 14px; - color: $primary-fg-color; - width: 100%; - text-align: left; - table-layout: fixed; -} - -.mx_RoomDirectory_roomAvatar { - width: 24px; - padding-left: 12px; - padding-right: 24px; - vertical-align: top; -} - -.mx_RoomDirectory_roomDescription { - padding-bottom: 16px; -} - -.mx_RoomDirectory_name { - display: inline-block; - font-weight: 600; -} - -.mx_RoomDirectory_perms { - display: inline-block; -} - -.mx_RoomDirectory_perm { - display: inline; - padding-left: 5px; - padding-right: 5px; - height: 15px; - border-radius: 11px; - background-color: $plinth-bg-color; - text-transform: uppercase; - font-weight: 600; - font-size: 11px; - color: $accent-color; -} - -.mx_RoomDirectory_topic { - cursor: initial; -} - -.mx_RoomDirectory_alias { - font-size: 12px; - color: $settings-grey-fg-color; -} - -.mx_RoomDirectory_roomMemberCount { - text-align: right; - width: 100px; - padding-right: 10px; -} - -.mx_RoomDirectory_table tr { - padding-bottom: 10px; - cursor: pointer; -} diff --git a/src/skins/vector/css/vector-web/structures/_RoomSubList.scss b/src/skins/vector/css/vector-web/structures/_RoomSubList.scss deleted file mode 100644 index 0d56d6c378..0000000000 --- a/src/skins/vector/css/vector-web/structures/_RoomSubList.scss +++ /dev/null @@ -1,241 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomSubList { - display: table; - table-layout: fixed; - width: 100%; -} - -.mx_RoomSubList_labelContainer { - height: 31px; /* mx_RoomSubList_label height including border */ - width: 235px; /* LHS Panel width */ - position: relative; -} - -.mx_RoomSubList_label { - position: relative; - text-transform: uppercase; - color: $roomsublist-label-fg-color; - font-weight: 600; - font-size: 12px; - width: 203px; /* padding + width = LHS Panel width */ - height: 17px; /* padding + height = 29px, same as mx_RoomSubList_stickyContainer */ - padding-left: 16px; /* gutter */ - padding-right: 16px; /* gutter */ - padding-top: 6px; - padding-bottom: 6px; - cursor: pointer; - background-color: $roomsublist-label-bg-color; - border-top: solid 2px $secondary-accent-color; -} - -.mx_RoomSubList_label.mx_RoomSubList_fixed { - position: fixed; - top: 0; - z-index: 5; - /* pointer-events: none; */ -} - -.collapsed .mx_RoomSubList_label { - height: 17px; - width: 28px; /* collapsed LHS Panel width */ -} - -.collapsed .mx_RoomSubList_labelContainer { - width: 28px; /* collapsed LHS Panel width */ -} - -.mx_RoomSubList_roomCount { - display: inline-block; - font-size: 12px; - font-weight: normal; - color: $accent-color; - padding-left: 5px; - text-transform: none; -} - -.collapsed .mx_RoomSubList_roomCount { - display: none; -} - -.mx_RoomSubList_badge { - display: inline-block; - min-width: 15px; - height: 15px; - position: absolute; - right: 8px; /*gutter */ - top: 7px; - border-radius: 8px; - color: $accent-fg-color; - font-weight: 600; - font-size: 10px; - text-align: center; - padding-top: 1px; - padding-left: 4px; - padding-right: 4px; - background-color: $accent-color; -} - -/* -.collapsed .mx_RoomSubList_badge { - display: none; -} -*/ - -.mx_RoomSubList_badgeHighlight { - background-color: $warning-color; -} - -/* This is the bottom of the speech bubble */ -.mx_RoomSubList_badgeHighlight:after { - content: ""; - position: absolute; - display: block; - width: 0; - height: 0; - margin-left: 5px; - border-top: 5px solid $warning-color; - border-right: 7px solid transparent; -} - -/* Hide the bottom of speech bubble */ -.collapsed .mx_RoomSubList_badgeHighlight:after { - display: none; -} - -.mx_RoomSubList_chevron { - pointer-events: none; - position: absolute; - right: 41px; - top: 11px; -} - -.mx_RoomSubList_chevronDown { - width: 0; - height: 0; - border-left: 5px solid transparent; - border-right: 5px solid transparent; - border-top: 6px solid $accent-color; -} - -.mx_RoomSubList_chevronUp { - width: 0; - height: 0; - border-left: 5px solid transparent; - border-right: 5px solid transparent; - border-bottom: 6px solid $accent-color; -} - -.mx_RoomSubList_chevronRight { - width: 0; - height: 0; - border-top: 5px solid transparent; - border-left: 6px solid $accent-color; - border-bottom: 5px solid transparent; -} - -/* The overflow section */ -.mx_RoomSubList_ellipsis { - display: block; - line-height: 11px; - height: 18px; - position: relative; - cursor: pointer; - font-size: 13px; -} - -.collapsed .mx_RoomSubList_ellipsis { - height: 20px; -} - -.mx_RoomSubList_line { - display: inline-block; - width: 159px; - border-top: dotted 2px $accent-color; - vertical-align: middle; -} - -.collapsed .mx_RoomSubList_line { - display: none; -} - -.mx_RoomSubList_more { - display: inline-block; - text-transform: uppercase; - font-size: 10px; - font-weight: 600; - text-align: left; - color: $accent-color; - padding-left: 7px; - padding-right: 7px; - padding-left: 7px; - vertical-align: middle; -} - -.collapsed .mx_RoomSubList_more { - display: none; -} - -.mx_RoomSubList_moreBadge { - display: inline-block; - min-width: 15px; - height: 13px; - position: absolute; - right: 8px; /*gutter */ - top: -2px; - border-radius: 8px; - border: solid 1px $accent-color; - color: $accent-fg-color; - font-weight: 600; - font-size: 10px; - text-align: center; - padding-top: 1px; - padding-left: 3px; - padding-right: 3px; - background-color: $primary-bg-color; - vertical-align: middle; -} - -.mx_RoomSubList_moreBadge.mx_RoomSubList_moreBadgeNotify { - background-color: $accent-color; - border: 0; - padding-top: 3px; - padding-left: 4px; - padding-right: 4px; -} - -.mx_RoomSubList_moreBadge.mx_RoomSubList_moreBadgeHighlight { - background-color: $warning-color; - border: 0; - padding-top: 3px; - padding-left: 4px; - padding-right: 4px; -} - -.collapsed .mx_RoomSubList_moreBadge { - position: static; - margin-left: 16px; - margin-top: 2px; -} - -.mx_RoomSubList_ellipsis .mx_RoomSubList_chevronDown { - position: relative; - top: 4px; - left: 2px; -} - - diff --git a/src/skins/vector/css/vector-web/structures/_ViewSource.scss b/src/skins/vector/css/vector-web/structures/_ViewSource.scss deleted file mode 100644 index a4c7dcf58a..0000000000 --- a/src/skins/vector/css/vector-web/structures/_ViewSource.scss +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_ViewSource pre { - text-align: left; - font-size: 12px; - padding: 0.5em 1em 0.5em 1em; - word-wrap: break-word; - white-space: pre-wrap; -} diff --git a/src/skins/vector/css/vector-web/views/context_menus/_MessageContextMenu.scss b/src/skins/vector/css/vector-web/views/context_menus/_MessageContextMenu.scss deleted file mode 100644 index 85e8080c88..0000000000 --- a/src/skins/vector/css/vector-web/views/context_menus/_MessageContextMenu.scss +++ /dev/null @@ -1,25 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MessageContextMenu_field { - padding: 3px 6px 3px 6px; - cursor: pointer; - white-space: nowrap; -} - -.mx_MessageContextMenu_field.mx_MessageContextMenu_fieldSet { - font-weight: bold; -} diff --git a/src/skins/vector/css/vector-web/views/context_menus/_RoomTileContextMenu.scss b/src/skins/vector/css/vector-web/views/context_menus/_RoomTileContextMenu.scss deleted file mode 100644 index 598f8ac249..0000000000 --- a/src/skins/vector/css/vector-web/views/context_menus/_RoomTileContextMenu.scss +++ /dev/null @@ -1,114 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomTileContextMenu_tag_field, .mx_RoomTileContextMenu_leave { - padding-top: 8px; - padding-right: 20px; - padding-bottom: 8px; - cursor: pointer; - white-space: nowrap; - display: flex; - align-items: center; - line-height: 16px; -} - -.mx_RoomTileContextMenu_tag_field.mx_RoomTileContextMenu_tag_fieldSet { - font-weight: bold; -} - -.mx_RoomTileContextMenu_tag_field.mx_RoomTileContextMenu_tag_fieldSet .mx_RoomTileContextMenu_tag_icon { - display: none; -} - -.mx_RoomTileContextMenu_tag_field.mx_RoomTileContextMenu_tag_fieldSet .mx_RoomTileContextMenu_tag_icon_set { - display: inline-block; -} - -.mx_RoomTileContextMenu_tag_field.mx_RoomTileContextMenu_tag_fieldDisabled { - color: rgba(0, 0, 0, 0.2); -} - -.mx_RoomTileContextMenu_tag_icon { - padding-right: 8px; - padding-left: 4px; - display: inline-block -} - -.mx_RoomTileContextMenu_tag_icon_set { - padding-right: 8px; - padding-left: 4px; - display: none; -} - -.mx_RoomTileContextMenu_separator { - margin-top: 0; - margin-bottom: 0; - border-bottom-style: none; - border-left-style: none; - border-right-style: none; - border-top-style: solid; - border-top-width: 1px; - border-color: $menu-border-color; -} - -.mx_RoomTileContextMenu_leave { - color: $warning-color; -} - -.mx_RoomTileContextMenu_tag_fieldSet .mx_RoomTileContextMenu_tag_icon { - /* Something to indicate that the icon is the set tag */ -} - -.mx_RoomTileContextMenu_notif_picker { - position: absolute; - top: 16px; - left: 5px; -} - -.mx_RoomTileContextMenu_notif_field { - padding-top: 4px; - padding-right: 6px; - padding-bottom: 10px; - padding-left: 8px; /* 20px */ - cursor: pointer; - white-space: nowrap; - display: flex; - align-items: center; -} - -.mx_RoomTileContextMenu_notif_field.mx_RoomTileContextMenu_notif_fieldSet { - font-weight: bold; -} - -.mx_RoomTileContextMenu_notif_field.mx_RoomTileContextMenu_notif_fieldDisabled { - color: rgba(0, 0, 0, 0.2); -} - -.mx_RoomTileContextMenu_notif_icon { - padding-right: 4px; - padding-left: 4px; -} - -.mx_RoomTileContextMenu_notif_activeIcon { - display: inline-block; - opacity: 0; - position: relative; - left: -5px; -} - -.mx_RoomTileContextMenu_notif_fieldSet .mx_RoomTileContextMenu_notif_activeIcon { - opacity: 1; -} diff --git a/src/skins/vector/css/vector-web/views/dialogs/_ChangelogDialog.scss b/src/skins/vector/css/vector-web/views/dialogs/_ChangelogDialog.scss deleted file mode 100644 index 460a5f94b1..0000000000 --- a/src/skins/vector/css/vector-web/views/dialogs/_ChangelogDialog.scss +++ /dev/null @@ -1,24 +0,0 @@ -/* -Copyright 2016 Aviral Dasgupta - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_ChangelogDialog_content { - max-height: 300px; - overflow: auto; -} - -.mx_ChangelogDialog_li { - padding: 0.2em; -} diff --git a/src/skins/vector/css/vector-web/views/dialogs/_SetPasswordDialog.scss b/src/skins/vector/css/vector-web/views/dialogs/_SetPasswordDialog.scss deleted file mode 100644 index 28a8b7c9d7..0000000000 --- a/src/skins/vector/css/vector-web/views/dialogs/_SetPasswordDialog.scss +++ /dev/null @@ -1,35 +0,0 @@ -/* -Copyright 2017 Vector Creations Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_SetPasswordDialog_change_password input { - border-radius: 3px; - border: 1px solid $input-border-color; - padding: 9px; - color: $primary-fg-color; - background-color: $primary-bg-color; - font-size: 15px; - width: 100%; - max-width: 280px; - margin-bottom: 10px; -} - -.mx_SetPasswordDialog_change_password_button { - margin-top: 68px; -} - -.mx_SetPasswordDialog .mx_Dialog_content { - margin-bottom: 0px; -} diff --git a/src/skins/vector/css/vector-web/views/directory/_NetworkDropdown.scss b/src/skins/vector/css/vector-web/views/directory/_NetworkDropdown.scss deleted file mode 100644 index 9850379597..0000000000 --- a/src/skins/vector/css/vector-web/views/directory/_NetworkDropdown.scss +++ /dev/null @@ -1,84 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_NetworkDropdown { - position: relative; -} - -.mx_NetworkDropdown_input { - position: relative; - border-radius: 3px; - border: 1px solid $strong-input-border-color; - font-weight: 300; - font-size: 13px; - user-select: none; -} - -.mx_NetworkDropdown_arrow { - border-color: $primary-fg-color transparent transparent; - border-style: solid; - border-width: 5px 5px 0; - display: block; - height: 0; - position: absolute; - right: 10px; - top: 14px; - width: 0 -} - -.mx_NetworkDropdown_networkoption { - height: 35px; - line-height: 35px; - padding-left: 8px; - padding-right: 8px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} - -.mx_NetworkDropdown_networkoption img { - margin: 5px; - width: 25px; - vertical-align: middle; -} - -input.mx_NetworkDropdown_networkoption, input.mx_NetworkDropdown_networkoption:focus { - border: 0; - padding-top: 0; - padding-bottom: 0; -} - -.mx_NetworkDropdown_menu { - position: absolute; - left: -1px; - right: -1px; - top: 100%; - z-index: 2; - margin: 0; - padding: 0px; - border-radius: 3px; - border: 1px solid $accent-color; - background-color: $primary-bg-color; -} - -.mx_NetworkDropdown_menu .mx_NetworkDropdown_networkoption:hover { - background-color: $focus-bg-color; -} - -.mx_NetworkDropdown_menu_network { - font-weight: bold; -} - diff --git a/src/skins/vector/css/vector-web/views/elements/_ImageView.scss b/src/skins/vector/css/vector-web/views/elements/_ImageView.scss deleted file mode 100644 index 8ed0698a72..0000000000 --- a/src/skins/vector/css/vector-web/views/elements/_ImageView.scss +++ /dev/null @@ -1,134 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -/* This has got to be the most fragile piece of CSS ever written. - But empirically it works on Chrome/FF/Safari - */ - -.mx_ImageView { - display: flex; - width: 100%; - height: 100%; - align-items: center; -} - -.mx_ImageView_lhs { - order: 1; - flex: 1 1 10%; - min-width: 60px; - // background-color: #080; - // height: 20px; -} - -.mx_ImageView_content { - order: 2; - /* min-width hack needed for FF */ - min-width: 0px; - height: 90%; - flex: 15 15 0; - display: flex; - align-items: center; - justify-content: center; -} - -.mx_ImageView_content img { - max-width: 100%; - /* XXX: max-height interacts badly with flex on Chrome and doesn't relayout properly until you refresh */ - max-height: 100%; - /* object-fit hack needed for Chrome due to Chrome not re-laying-out until you refresh */ - object-fit: contain; - /* background-image: url('../../img/trans.png'); */ - pointer-events: all; -} - -.mx_ImageView_labelWrapper { - position: absolute; - top: 0px; - right: 0px; - height: 100%; - overflow: auto; - pointer-events: all; -} - -.mx_ImageView_label { - text-align: left; - display: flex; - justify-content: center; - flex-direction: column; - padding-left: 30px; - padding-right: 30px; - min-height: 100%; - max-width: 240px; - color: $lightbox-fg-color; -} - -.mx_ImageView_cancel { - position: absolute; - top: 0px; - right: 0px; - padding: 35px; - cursor: pointer; -} - -.mx_ImageView_name { - font-size: 18px; - margin-bottom: 6px; - word-wrap: break-word; -} - -.mx_ImageView_metadata { - font-size: 15px; - opacity: 0.5; -} - -.mx_ImageView_download { - display: table; - margin-top: 24px; - margin-bottom: 6px; - border-radius: 5px; - background-color: $lightbox-bg-color; - font-size: 14px; - padding: 9px; - border: 1px solid $lightbox-border-color; -} - -.mx_ImageView_size { - font-size: 11px; -} - -.mx_ImageView_link { - color: $lightbox-fg-color ! important; - text-decoration: none ! important; -} - -.mx_ImageView_button { - font-size: 15px; - opacity: 0.5; - margin-top: 18px; - cursor: pointer; -} - -.mx_ImageView_shim { - height: 30px; -} - -.mx_ImageView_rhs { - order: 3; - flex: 1 1 10%; - min-width: 300px; - // background-color: #800; - // height: 20px; -} diff --git a/src/skins/vector/css/vector-web/views/elements/_Spinner.scss b/src/skins/vector/css/vector-web/views/elements/_Spinner.scss deleted file mode 100644 index aea5737918..0000000000 --- a/src/skins/vector/css/vector-web/views/elements/_Spinner.scss +++ /dev/null @@ -1,28 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_Spinner { - display: flex; - align-items: center; - justify-content: center; - width: 100%; - height: 100%; - flex: 1; -} - -.mx_MatrixChat_middlePanel .mx_Spinner { - height: auto; -} \ No newline at end of file diff --git a/src/skins/vector/css/vector-web/views/globals/_MatrixToolbar.scss b/src/skins/vector/css/vector-web/views/globals/_MatrixToolbar.scss deleted file mode 100644 index 1a7b1c1646..0000000000 --- a/src/skins/vector/css/vector-web/views/globals/_MatrixToolbar.scss +++ /dev/null @@ -1,58 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MatrixToolbar { - background-color: $accent-color; - color: $accent-fg-color; - - display: flex; - align-items: center; -} - -.mx_MatrixToolbar_warning { - margin-left: 16px; - margin-right: 8px; - margin-top: -2px; -} - -.mx_MatrixToolbar_content { - flex: 1; -} - -.mx_MatrixToolbar_link -{ - color: $accent-fg-color ! important; - text-decoration: underline ! important; - cursor: pointer; -} - -.mx_MatrixToolbar_clickable { - cursor: pointer; -} - -.mx_MatrixToolbar_close { - cursor: pointer; -} - -.mx_MatrixToolbar_close img { - display: block; - float: right; - margin-right: 10px; -} - -.mx_MatrixToolbar_action { - margin-right: 16px; -} diff --git a/src/skins/vector/css/vector-web/views/messages/_MessageTimestamp.scss b/src/skins/vector/css/vector-web/views/messages/_MessageTimestamp.scss deleted file mode 100644 index e21189c59e..0000000000 --- a/src/skins/vector/css/vector-web/views/messages/_MessageTimestamp.scss +++ /dev/null @@ -1,18 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_MessageTimestamp { -} diff --git a/src/skins/vector/css/vector-web/views/messages/_SenderProfile.scss b/src/skins/vector/css/vector-web/views/messages/_SenderProfile.scss deleted file mode 100644 index 060709b82e..0000000000 --- a/src/skins/vector/css/vector-web/views/messages/_SenderProfile.scss +++ /dev/null @@ -1,15 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ diff --git a/src/skins/vector/css/vector-web/views/rooms/_RoomDropTarget.scss b/src/skins/vector/css/vector-web/views/rooms/_RoomDropTarget.scss deleted file mode 100644 index 08229e377b..0000000000 --- a/src/skins/vector/css/vector-web/views/rooms/_RoomDropTarget.scss +++ /dev/null @@ -1,50 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomDropTarget { - font-size: 13px; - margin-left: 18px; - margin-right: 18px; - margin-top: 8px; - margin-bottom: 7px; - padding-top: 5px; - padding-bottom: 5px; - border: 1px dashed $accent-color; - color: $primary-fg-color; - background-color: $droptarget-bg-color; - border-radius: 4px; -} - -.collapsed .mx_RoomDropTarget { - margin-right: 10px; - margin-left: 10px; -} - -.mx_RoomDropTarget_label { - position: relative; - margin-top: 3px; - line-height: 21px; - z-index: 1; - text-align: center; -} - -.collapsed .mx_RoomDropTarget_avatar { - float: none; -} - -.collapsed .mx_RoomDropTarget_label { - display: none; -} diff --git a/src/skins/vector/css/vector-web/views/rooms/_RoomTooltip.scss b/src/skins/vector/css/vector-web/views/rooms/_RoomTooltip.scss deleted file mode 100644 index 5469a9e6d3..0000000000 --- a/src/skins/vector/css/vector-web/views/rooms/_RoomTooltip.scss +++ /dev/null @@ -1,53 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_RoomTooltip_chevron { - position: absolute; - left: -8px; - top: 4px; - width: 0; - height: 0; - border-top: 8px solid transparent; - border-right: 8px solid $menu-border-color; - border-bottom: 8px solid transparent; -} - -.mx_RoomTooltip_chevron:after { - content:''; - width: 0; - height: 0; - border-top: 7px solid transparent; - border-right: 7px solid $primary-bg-color; - border-bottom: 7px solid transparent; - position:absolute; - top: -7px; - left: 1px; -} - -.mx_RoomTooltip { - display: none; - position: fixed; - border: 1px solid $menu-border-color; - border-radius: 5px; - background-color: $primary-bg-color; - z-index: 2000; - padding: 5px; - pointer-events: none; - line-height: 14px; - font-size: 13px; - color: $primary-fg-color; -} - diff --git a/src/skins/vector/css/vector-web/views/rooms/_SearchBar.scss b/src/skins/vector/css/vector-web/views/rooms/_SearchBar.scss deleted file mode 100644 index 079ea16c68..0000000000 --- a/src/skins/vector/css/vector-web/views/rooms/_SearchBar.scss +++ /dev/null @@ -1,83 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_SearchBar { - padding-top: 5px; - padding-bottom: 5px; - display: flex; - align-items: center; -} - -.mx_SearchBar_input { - display: inline block; - border-radius: 3px 0px 0px 3px; - border: 1px solid $input-border-color; - font-size: 15px; - padding: 9px; - padding-left: 11px; - width: auto; - flex: 1 1 0; -} - -.mx_SearchBar_searchButton { - cursor: pointer; - margin-right: 10px; - width: 37px; - height: 37px; - border-radius: 0px 3px 3px 0px; - background-color: $accent-color; -} - -@keyframes pulsate { - 0% { opacity: 1.0; } - 50% { opacity: 0.1; } - 100% { opacity: 1.0; } -} - -.mx_SearchBar_searching img { - animation: pulsate 0.5s ease-out; - animation-iteration-count: infinite; -} - -.mx_SearchBar_button { - display: inline; - border: 0px; - border-radius: 36px; - font-weight: 400; - font-size: 15px; - color: $accent-fg-color; - background-color: $accent-color; - width: auto; - margin: auto; - margin-left: 7px; - padding-top: 6px; - padding-bottom: 4px; - padding-left: 24px; - padding-right: 24px; - cursor: pointer; -} - -.mx_SearchBar_unselected { - background-color: $primary-bg-color; - color: $accent-color; - border: $accent-color 1px solid; -} - -.mx_SearchBar_cancel { - padding-left: 14px; - padding-right: 14px; - cursor: pointer; -} diff --git a/src/skins/vector/css/vector-web/views/settings/_Notifications.scss b/src/skins/vector/css/vector-web/views/settings/_Notifications.scss deleted file mode 100644 index 4c88e44952..0000000000 --- a/src/skins/vector/css/vector-web/views/settings/_Notifications.scss +++ /dev/null @@ -1,70 +0,0 @@ -/* -Copyright 2015, 2016 OpenMarket Ltd - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -.mx_UserNotifSettings_tableRow -{ - display: table-row; -} - -.mx_UserNotifSettings_inputCell { - display: table-cell; - padding-bottom: 8px; - padding-right: 8px; - width: 16px; -} - -.mx_UserNotifSettings_labelCell -{ - padding-bottom: 8px; - width: 400px; - display: table-cell; -} - -.mx_UserNotifSettings_pushRulesTableWrapper { - padding-bottom: 8px; -} - -.mx_UserNotifSettings_pushRulesTable { - width: 100%; - table-layout: fixed; -} - -.mx_UserNotifSettings_pushRulesTable thead { - font-weight: bold; - font-size: 15px; -} - -.mx_UserNotifSettings_pushRulesTable tbody th { - font-weight: 400; - font-size: 15px; -} - -.mx_UserNotifSettings_pushRulesTable tbody th:first-child { - text-align: left; -} - -.mx_UserNotifSettings_keywords { - cursor: pointer; - color: $accent-color; -} - -.mx_UserSettings_devicesTable td { - padding-left: 20px; - padding-right: 20px; -} -.mx_UserSettings_devicesTable_nodevices { - font-style: italic; -} diff --git a/src/skins/vector/fonts/Fira_Mono/FiraMono-Bold.ttf b/src/skins/vector/fonts/Fira_Mono/FiraMono-Bold.ttf deleted file mode 100755 index 4b8b1cfbcb..0000000000 Binary files a/src/skins/vector/fonts/Fira_Mono/FiraMono-Bold.ttf and /dev/null differ diff --git a/src/skins/vector/fonts/Fira_Mono/FiraMono-Regular.ttf b/src/skins/vector/fonts/Fira_Mono/FiraMono-Regular.ttf deleted file mode 100755 index 5238c09eda..0000000000 Binary files a/src/skins/vector/fonts/Fira_Mono/FiraMono-Regular.ttf and /dev/null differ diff --git a/src/skins/vector/fonts/Fira_Mono/OFL.txt b/src/skins/vector/fonts/Fira_Mono/OFL.txt deleted file mode 100755 index ba853c049e..0000000000 --- a/src/skins/vector/fonts/Fira_Mono/OFL.txt +++ /dev/null @@ -1,92 +0,0 @@ -Copyright (c) 2012-2013, The Mozilla Corporation and Telefonica S.A. -This Font Software is licensed under the SIL Open Font License, Version 1.1. -This license is copied below, and is also available with a FAQ at: -http://scripts.sil.org/OFL - - ------------------------------------------------------------ -SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 ------------------------------------------------------------ - -PREAMBLE -The goals of the Open Font License (OFL) are to stimulate worldwide -development of collaborative font projects, to support the font creation -efforts of academic and linguistic communities, and to provide a free and -open framework in which fonts may be shared and improved in partnership -with others. - -The OFL allows the licensed fonts to be used, studied, modified and -redistributed freely as long as they are not sold by themselves. The -fonts, including any derivative works, can be bundled, embedded, -redistributed and/or sold with any software provided that any reserved -names are not used by derivative works. The fonts and derivatives, -however, cannot be released under any other type of license. The -requirement for fonts to remain under this license does not apply -to any document created using the fonts or their derivatives. - -DEFINITIONS -"Font Software" refers to the set of files released by the Copyright -Holder(s) under this license and clearly marked as such. This may -include source files, build scripts and documentation. - -"Reserved Font Name" refers to any names specified as such after the -copyright statement(s). - -"Original Version" refers to the collection of Font Software components as -distributed by the Copyright Holder(s). - -"Modified Version" refers to any derivative made by adding to, deleting, -or substituting -- in part or in whole -- any of the components of the -Original Version, by changing formats or by porting the Font Software to a -new environment. - -"Author" refers to any designer, engineer, programmer, technical -writer or other person who contributed to the Font Software. - -PERMISSION & CONDITIONS -Permission is hereby granted, free of charge, to any person obtaining -a copy of the Font Software, to use, study, copy, merge, embed, modify, -redistribute, and sell modified and unmodified copies of the Font -Software, subject to the following conditions: - -1) Neither the Font Software nor any of its individual components, -in Original or Modified Versions, may be sold by itself. - -2) Original or Modified Versions of the Font Software may be bundled, -redistributed and/or sold with any software, provided that each copy -contains the above copyright notice and this license. These can be -included either as stand-alone text files, human-readable headers or -in the appropriate machine-readable metadata fields within text or -binary files as long as those fields can be easily viewed by the user. - -3) No Modified Version of the Font Software may use the Reserved Font -Name(s) unless explicit written permission is granted by the corresponding -Copyright Holder. This restriction only applies to the primary font name as -presented to the users. - -4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font -Software shall not be used to promote, endorse or advertise any -Modified Version, except to acknowledge the contribution(s) of the -Copyright Holder(s) and the Author(s) or with their explicit written -permission. - -5) The Font Software, modified or unmodified, in part or in whole, -must be distributed entirely under this license, and must not be -distributed under any other license. The requirement for fonts to -remain under this license does not apply to any document created -using the Font Software. - -TERMINATION -This license becomes null and void if any of the above conditions are -not met. - -DISCLAIMER -THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT -OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE -COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL -DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM -OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/src/skins/vector/fonts/Open_Sans/LICENSE.txt b/src/skins/vector/fonts/Open_Sans/LICENSE.txt deleted file mode 100755 index 75b52484ea..0000000000 --- a/src/skins/vector/fonts/Open_Sans/LICENSE.txt +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/src/skins/vector/fonts/Open_Sans/OpenSans-Bold.ttf b/src/skins/vector/fonts/Open_Sans/OpenSans-Bold.ttf deleted file mode 100755 index fd79d43bea..0000000000 Binary files a/src/skins/vector/fonts/Open_Sans/OpenSans-Bold.ttf and /dev/null differ diff --git a/src/skins/vector/fonts/Open_Sans/OpenSans-BoldItalic.ttf b/src/skins/vector/fonts/Open_Sans/OpenSans-BoldItalic.ttf deleted file mode 100755 index 9bc800958a..0000000000 Binary files a/src/skins/vector/fonts/Open_Sans/OpenSans-BoldItalic.ttf and /dev/null differ diff --git a/src/skins/vector/fonts/Open_Sans/OpenSans-Italic.ttf b/src/skins/vector/fonts/Open_Sans/OpenSans-Italic.ttf deleted file mode 100755 index c90da48ff3..0000000000 Binary files a/src/skins/vector/fonts/Open_Sans/OpenSans-Italic.ttf and /dev/null differ diff --git a/src/skins/vector/fonts/Open_Sans/OpenSans-Regular.ttf b/src/skins/vector/fonts/Open_Sans/OpenSans-Regular.ttf deleted file mode 100755 index db433349b7..0000000000 Binary files a/src/skins/vector/fonts/Open_Sans/OpenSans-Regular.ttf and /dev/null differ diff --git a/src/skins/vector/fonts/Open_Sans/OpenSans-Semibold.ttf b/src/skins/vector/fonts/Open_Sans/OpenSans-Semibold.ttf deleted file mode 100755 index 1a7679e394..0000000000 Binary files a/src/skins/vector/fonts/Open_Sans/OpenSans-Semibold.ttf and /dev/null differ diff --git a/src/skins/vector/fonts/Open_Sans/OpenSans-SemiboldItalic.ttf b/src/skins/vector/fonts/Open_Sans/OpenSans-SemiboldItalic.ttf deleted file mode 100755 index 59b6d16b06..0000000000 Binary files a/src/skins/vector/fonts/Open_Sans/OpenSans-SemiboldItalic.ttf and /dev/null differ diff --git a/src/skins/vector/img/50e2c2.png b/src/skins/vector/img/50e2c2.png deleted file mode 100644 index ee0f855895..0000000000 Binary files a/src/skins/vector/img/50e2c2.png and /dev/null differ diff --git a/src/skins/vector/img/76cfa6.png b/src/skins/vector/img/76cfa6.png deleted file mode 100644 index de1ea60d54..0000000000 Binary files a/src/skins/vector/img/76cfa6.png and /dev/null differ diff --git a/src/skins/vector/img/80cef4.png b/src/skins/vector/img/80cef4.png deleted file mode 100644 index 637d03f63c..0000000000 Binary files a/src/skins/vector/img/80cef4.png and /dev/null differ diff --git a/src/skins/vector/img/admin.svg b/src/skins/vector/img/admin.svg deleted file mode 100644 index 7ea7459304..0000000000 --- a/src/skins/vector/img/admin.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - icons_owner - Created with sketchtool. - - - - - - - - - - - - diff --git a/src/skins/vector/img/attach.png b/src/skins/vector/img/attach.png deleted file mode 100644 index 1bcb70045d..0000000000 Binary files a/src/skins/vector/img/attach.png and /dev/null differ diff --git a/src/skins/vector/img/avatar-error.svg b/src/skins/vector/img/avatar-error.svg deleted file mode 100644 index c5e168944c..0000000000 --- a/src/skins/vector/img/avatar-error.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - 5EF602F6-A36C-41EE-BAEC-50801DFD5492 - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/button-md-false.png b/src/skins/vector/img/button-md-false.png deleted file mode 100644 index 6debbccc93..0000000000 Binary files a/src/skins/vector/img/button-md-false.png and /dev/null differ diff --git a/src/skins/vector/img/button-md-false.svg b/src/skins/vector/img/button-md-false.svg deleted file mode 100644 index 6414933d96..0000000000 --- a/src/skins/vector/img/button-md-false.svg +++ /dev/null @@ -1,29 +0,0 @@ - - - - D335F9E8-C813-47D7-B1BE-C8DEF2C8214F - Created with sketchtool. - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-md-false@2x.png b/src/skins/vector/img/button-md-false@2x.png deleted file mode 100644 index 497f5385d1..0000000000 Binary files a/src/skins/vector/img/button-md-false@2x.png and /dev/null differ diff --git a/src/skins/vector/img/button-md-false@3x.png b/src/skins/vector/img/button-md-false@3x.png deleted file mode 100644 index 1184e6b351..0000000000 Binary files a/src/skins/vector/img/button-md-false@3x.png and /dev/null differ diff --git a/src/skins/vector/img/button-md-true.png b/src/skins/vector/img/button-md-true.png deleted file mode 100644 index 2e39c55e1e..0000000000 Binary files a/src/skins/vector/img/button-md-true.png and /dev/null differ diff --git a/src/skins/vector/img/button-md-true.svg b/src/skins/vector/img/button-md-true.svg deleted file mode 100644 index 2acc4f675c..0000000000 --- a/src/skins/vector/img/button-md-true.svg +++ /dev/null @@ -1,14 +0,0 @@ - - - - 2A63B135-4281-4FBB-A88C-012AE22E9594 - Created with sketchtool. - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-md-true@2x.png b/src/skins/vector/img/button-md-true@2x.png deleted file mode 100644 index ad9067f385..0000000000 Binary files a/src/skins/vector/img/button-md-true@2x.png and /dev/null differ diff --git a/src/skins/vector/img/button-md-true@3x.png b/src/skins/vector/img/button-md-true@3x.png deleted file mode 100644 index d615867dc4..0000000000 Binary files a/src/skins/vector/img/button-md-true@3x.png and /dev/null differ diff --git a/src/skins/vector/img/button-text-bold-o-n.svg b/src/skins/vector/img/button-text-bold-o-n.svg deleted file mode 100644 index 161e740e90..0000000000 --- a/src/skins/vector/img/button-text-bold-o-n.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - 01F3F9B2-8F38-4BAF-A345-AECAC3D88E79 - Created with sketchtool. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-bold.svg b/src/skins/vector/img/button-text-bold.svg deleted file mode 100644 index 0fd0baa07e..0000000000 --- a/src/skins/vector/img/button-text-bold.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - 9BC64A5B-F157-43FF-BCC4-02D30CDF520B - Created with sketchtool. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-bullet-o-n.svg b/src/skins/vector/img/button-text-bullet-o-n.svg deleted file mode 100644 index d4a40e889c..0000000000 --- a/src/skins/vector/img/button-text-bullet-o-n.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - 654917CF-20A4-49B6-B0A1-9875D7B733C8 - Created with sketchtool. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-bullet.svg b/src/skins/vector/img/button-text-bullet.svg deleted file mode 100644 index ae3e640d8e..0000000000 --- a/src/skins/vector/img/button-text-bullet.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - B7D94619-44BC-4184-A60A-DBC5BB54E5F9 - Created with sketchtool. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-code-o-n.svg b/src/skins/vector/img/button-text-code-o-n.svg deleted file mode 100644 index 8d1439c97b..0000000000 --- a/src/skins/vector/img/button-text-code-o-n.svg +++ /dev/null @@ -1,25 +0,0 @@ - - - - B76754AB-42E6-48D2-9443-80CBC0DE02ED - Created with sketchtool. - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-code.svg b/src/skins/vector/img/button-text-code.svg deleted file mode 100644 index 24026cb709..0000000000 --- a/src/skins/vector/img/button-text-code.svg +++ /dev/null @@ -1,25 +0,0 @@ - - - - 4CAFF494-61AE-4916-AFE8-D1E62F7CF0DE - Created with sketchtool. - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-formatting.svg b/src/skins/vector/img/button-text-formatting.svg deleted file mode 100644 index d3fc3f5f54..0000000000 --- a/src/skins/vector/img/button-text-formatting.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - F69CBF5F-0BEC-47E8-B1DF-125D6376C0C9 - Created with sketchtool. - - - - - - - A - a - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-italic-o-n.svg b/src/skins/vector/img/button-text-italic-o-n.svg deleted file mode 100644 index 15fe588596..0000000000 --- a/src/skins/vector/img/button-text-italic-o-n.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - 116426C2-0B55-480E-92B3-57D4B3ABAB90 - Created with sketchtool. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-italic.svg b/src/skins/vector/img/button-text-italic.svg deleted file mode 100644 index b5722e827b..0000000000 --- a/src/skins/vector/img/button-text-italic.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - 9FBC844D-96CF-4DCB-B545-FCD23727218B - Created with sketchtool. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-numbullet-o-n.svg b/src/skins/vector/img/button-text-numbullet-o-n.svg deleted file mode 100644 index 869a2c2cc2..0000000000 --- a/src/skins/vector/img/button-text-numbullet-o-n.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - 294F929B-31AA-4D0C-98B3-9CA96764060D - Created with sketchtool. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-numbullet.svg b/src/skins/vector/img/button-text-numbullet.svg deleted file mode 100644 index 8e5b8b87b6..0000000000 --- a/src/skins/vector/img/button-text-numbullet.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - F0F58459-A13A-48C5-9332-ABFB96726F05 - Created with sketchtool. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-quote-o-n.svg b/src/skins/vector/img/button-text-quote-o-n.svg deleted file mode 100644 index f8a86125c9..0000000000 --- a/src/skins/vector/img/button-text-quote-o-n.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - 3B24B8C7-64BE-4B3E-A748-94DB72E1210F - Created with sketchtool. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-quote.svg b/src/skins/vector/img/button-text-quote.svg deleted file mode 100644 index d70c261f5d..0000000000 --- a/src/skins/vector/img/button-text-quote.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - BFC0418B-9081-4789-A231-B75953157748 - Created with sketchtool. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-strike-o-n.svg b/src/skins/vector/img/button-text-strike-o-n.svg deleted file mode 100644 index 2914fcabe6..0000000000 --- a/src/skins/vector/img/button-text-strike-o-n.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - 69B11088-0F3A-4E14-BD9F-4FEF4115E99B - Created with sketchtool. - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-strike.svg b/src/skins/vector/img/button-text-strike.svg deleted file mode 100644 index 5f262dc350..0000000000 --- a/src/skins/vector/img/button-text-strike.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - A34F2223-34C6-46AE-AA47-38EC8984E9B3 - Created with sketchtool. - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-underline-o-n.svg b/src/skins/vector/img/button-text-underline-o-n.svg deleted file mode 100644 index 870be3ce6a..0000000000 --- a/src/skins/vector/img/button-text-underline-o-n.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - FD84FF7C-43E4-4312-90AB-5A59AD018377 - Created with sketchtool. - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/button-text-underline.svg b/src/skins/vector/img/button-text-underline.svg deleted file mode 100644 index 26f448539c..0000000000 --- a/src/skins/vector/img/button-text-underline.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - 13E7EE68-9B16-4A3D-8F9F-31E4BAB7E438 - Created with sketchtool. - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/call.png b/src/skins/vector/img/call.png deleted file mode 100644 index a7805e0596..0000000000 Binary files a/src/skins/vector/img/call.png and /dev/null differ diff --git a/src/skins/vector/img/call.svg b/src/skins/vector/img/call.svg deleted file mode 100644 index f528f9a24e..0000000000 --- a/src/skins/vector/img/call.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - icons_video - Created with bin/sketchtool. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/camera.svg b/src/skins/vector/img/camera.svg deleted file mode 100644 index 6519496f78..0000000000 --- a/src/skins/vector/img/camera.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - icon_camera - Created with Sketch. - - - - - - - diff --git a/src/skins/vector/img/cancel-black.png b/src/skins/vector/img/cancel-black.png deleted file mode 100644 index 87dcfd41a8..0000000000 Binary files a/src/skins/vector/img/cancel-black.png and /dev/null differ diff --git a/src/skins/vector/img/cancel-black2.png b/src/skins/vector/img/cancel-black2.png deleted file mode 100644 index a928c61b09..0000000000 Binary files a/src/skins/vector/img/cancel-black2.png and /dev/null differ diff --git a/src/skins/vector/img/cancel-small.svg b/src/skins/vector/img/cancel-small.svg deleted file mode 100644 index e4c8cafc10..0000000000 --- a/src/skins/vector/img/cancel-small.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - Line + Line - Created with Sketch. - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/cancel-white.svg b/src/skins/vector/img/cancel-white.svg deleted file mode 100644 index 65e14c2fbc..0000000000 --- a/src/skins/vector/img/cancel-white.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - Slice 1 - Created with Sketch. - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/cancel.png b/src/skins/vector/img/cancel.png deleted file mode 100644 index 2bda8ff5bf..0000000000 Binary files a/src/skins/vector/img/cancel.png and /dev/null differ diff --git a/src/skins/vector/img/cancel.svg b/src/skins/vector/img/cancel.svg deleted file mode 100644 index e32060025e..0000000000 --- a/src/skins/vector/img/cancel.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - Slice 1 - Created with Sketch. - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/chevron-left.png b/src/skins/vector/img/chevron-left.png deleted file mode 100644 index efb0065de9..0000000000 Binary files a/src/skins/vector/img/chevron-left.png and /dev/null differ diff --git a/src/skins/vector/img/chevron-right.png b/src/skins/vector/img/chevron-right.png deleted file mode 100644 index 18a4684e47..0000000000 Binary files a/src/skins/vector/img/chevron-right.png and /dev/null differ diff --git a/src/skins/vector/img/chevron.png b/src/skins/vector/img/chevron.png deleted file mode 100644 index 81236f91bc..0000000000 Binary files a/src/skins/vector/img/chevron.png and /dev/null differ diff --git a/src/skins/vector/img/close-white.png b/src/skins/vector/img/close-white.png deleted file mode 100644 index d8752ed9fe..0000000000 Binary files a/src/skins/vector/img/close-white.png and /dev/null differ diff --git a/src/skins/vector/img/create-big.png b/src/skins/vector/img/create-big.png deleted file mode 100644 index b7307a11c7..0000000000 Binary files a/src/skins/vector/img/create-big.png and /dev/null differ diff --git a/src/skins/vector/img/create-big.svg b/src/skins/vector/img/create-big.svg deleted file mode 100644 index 2450542b63..0000000000 --- a/src/skins/vector/img/create-big.svg +++ /dev/null @@ -1,26 +0,0 @@ - - - - icons_create_room - Created with sketchtool. - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/create.png b/src/skins/vector/img/create.png deleted file mode 100644 index 2d6107ac50..0000000000 Binary files a/src/skins/vector/img/create.png and /dev/null differ diff --git a/src/skins/vector/img/delete.png b/src/skins/vector/img/delete.png deleted file mode 100644 index 8ff20a116d..0000000000 Binary files a/src/skins/vector/img/delete.png and /dev/null differ diff --git a/src/skins/vector/img/directory-big.png b/src/skins/vector/img/directory-big.png deleted file mode 100644 index 03cab69c4a..0000000000 Binary files a/src/skins/vector/img/directory-big.png and /dev/null differ diff --git a/src/skins/vector/img/directory-big.svg b/src/skins/vector/img/directory-big.svg deleted file mode 100644 index 5631a2ae3e..0000000000 --- a/src/skins/vector/img/directory-big.svg +++ /dev/null @@ -1,22 +0,0 @@ - - - - icons_directory - Created with sketchtool. - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/download.png b/src/skins/vector/img/download.png deleted file mode 100644 index 1999ebf7ab..0000000000 Binary files a/src/skins/vector/img/download.png and /dev/null differ diff --git a/src/skins/vector/img/download.svg b/src/skins/vector/img/download.svg deleted file mode 100644 index d0ea090d8a..0000000000 --- a/src/skins/vector/img/download.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - Fill 75 - Created with Sketch. - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/e2e-blocked.svg b/src/skins/vector/img/e2e-blocked.svg deleted file mode 100644 index 0ab2c6efbe..0000000000 --- a/src/skins/vector/img/e2e-blocked.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - 2805649B-D39D-43EA-A357-659EF9B97BA4 - Created with sketchtool. - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/e2e-unencrypted.svg b/src/skins/vector/img/e2e-unencrypted.svg deleted file mode 100644 index 1467223638..0000000000 --- a/src/skins/vector/img/e2e-unencrypted.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - 16F5F38E-A6A3-472A-BC13-13F0F12876CF - Created with sketchtool. - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/e2e-verified.svg b/src/skins/vector/img/e2e-verified.svg deleted file mode 100644 index b65f50b2b6..0000000000 --- a/src/skins/vector/img/e2e-verified.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - 48BF5D32-306C-4B20-88EB-24B1F743CAC9 - Created with sketchtool. - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/e2e-warning.svg b/src/skins/vector/img/e2e-warning.svg deleted file mode 100644 index 8a55f199ba..0000000000 --- a/src/skins/vector/img/e2e-warning.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - CCDDE6F6-B552-48FD-AD54-6939841CA2DD - Created with sketchtool. - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/edit.png b/src/skins/vector/img/edit.png deleted file mode 100644 index 6f373d3f3d..0000000000 Binary files a/src/skins/vector/img/edit.png and /dev/null differ diff --git a/src/skins/vector/img/ellipsis.svg b/src/skins/vector/img/ellipsis.svg deleted file mode 100644 index d60c844089..0000000000 --- a/src/skins/vector/img/ellipsis.svg +++ /dev/null @@ -1,25 +0,0 @@ - - - - icons_archive - Created with Sketch. - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/eol.svg b/src/skins/vector/img/eol.svg deleted file mode 100644 index 02d1946cf4..0000000000 --- a/src/skins/vector/img/eol.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - icon_eol - Created with sketchtool. - - - - - - - - - - - diff --git a/src/skins/vector/img/f4c371.png b/src/skins/vector/img/f4c371.png deleted file mode 100644 index ad3b8f1616..0000000000 Binary files a/src/skins/vector/img/f4c371.png and /dev/null differ diff --git a/src/skins/vector/img/file.png b/src/skins/vector/img/file.png deleted file mode 100644 index 5904ea8284..0000000000 Binary files a/src/skins/vector/img/file.png and /dev/null differ diff --git a/src/skins/vector/img/filegrid.png b/src/skins/vector/img/filegrid.png deleted file mode 100644 index c2c2799f37..0000000000 Binary files a/src/skins/vector/img/filegrid.png and /dev/null differ diff --git a/src/skins/vector/img/fileicon.png b/src/skins/vector/img/fileicon.png deleted file mode 100644 index af018efa6d..0000000000 Binary files a/src/skins/vector/img/fileicon.png and /dev/null differ diff --git a/src/skins/vector/img/filelist.png b/src/skins/vector/img/filelist.png deleted file mode 100644 index 3cf6cb494e..0000000000 Binary files a/src/skins/vector/img/filelist.png and /dev/null differ diff --git a/src/skins/vector/img/files.png b/src/skins/vector/img/files.png deleted file mode 100644 index 83932267f8..0000000000 Binary files a/src/skins/vector/img/files.png and /dev/null differ diff --git a/src/skins/vector/img/files.svg b/src/skins/vector/img/files.svg deleted file mode 100644 index 20aba851ea..0000000000 --- a/src/skins/vector/img/files.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - icons_browse_files - Created with bin/sketchtool. - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/fullscreen.svg b/src/skins/vector/img/fullscreen.svg deleted file mode 100644 index e333abb6fb..0000000000 --- a/src/skins/vector/img/fullscreen.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - Zoom - Created with Sketch. - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/hangup.svg b/src/skins/vector/img/hangup.svg deleted file mode 100644 index be038d2b30..0000000000 --- a/src/skins/vector/img/hangup.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - Fill 72 + Path 98 - Created with Sketch. - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/hide.png b/src/skins/vector/img/hide.png deleted file mode 100644 index c5aaf0dd0d..0000000000 Binary files a/src/skins/vector/img/hide.png and /dev/null differ diff --git a/src/skins/vector/img/icon-address-delete.svg b/src/skins/vector/img/icon-address-delete.svg deleted file mode 100644 index 1289d5aafc..0000000000 --- a/src/skins/vector/img/icon-address-delete.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - 943783E9-DBD7-4D4E-BAC9-35437C17C2C4 - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icon-call.svg b/src/skins/vector/img/icon-call.svg deleted file mode 100644 index 0ca5c29e9d..0000000000 --- a/src/skins/vector/img/icon-call.svg +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/src/skins/vector/img/icon-context-delete.svg b/src/skins/vector/img/icon-context-delete.svg deleted file mode 100644 index fba9fa117b..0000000000 --- a/src/skins/vector/img/icon-context-delete.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/skins/vector/img/icon-context-fave-on.svg b/src/skins/vector/img/icon-context-fave-on.svg deleted file mode 100644 index 2ae172d8eb..0000000000 --- a/src/skins/vector/img/icon-context-fave-on.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - DAE17B64-40B5-478A-8E8D-97AD1A6E25C8 - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icon-context-fave.svg b/src/skins/vector/img/icon-context-fave.svg deleted file mode 100644 index 451e1849c8..0000000000 --- a/src/skins/vector/img/icon-context-fave.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - 8A6E1837-F0F1-432E-A0DA-6F3741F71EBF - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icon-context-low-on.svg b/src/skins/vector/img/icon-context-low-on.svg deleted file mode 100644 index 7578c6335c..0000000000 --- a/src/skins/vector/img/icon-context-low-on.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - CD51482C-F2D4-4F63-AF9E-86513F9AF87F - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icon-context-low.svg b/src/skins/vector/img/icon-context-low.svg deleted file mode 100644 index 663f3ca9eb..0000000000 --- a/src/skins/vector/img/icon-context-low.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - B160345F-40D3-4BE6-A860-6D04BF223EF7 - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icon-context-mute-mentions.svg b/src/skins/vector/img/icon-context-mute-mentions.svg deleted file mode 100644 index 3693b7a82a..0000000000 --- a/src/skins/vector/img/icon-context-mute-mentions.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/src/skins/vector/img/icon-context-mute-off-copy.svg b/src/skins/vector/img/icon-context-mute-off-copy.svg deleted file mode 100644 index 861f2975de..0000000000 --- a/src/skins/vector/img/icon-context-mute-off-copy.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/skins/vector/img/icon-context-mute-off.svg b/src/skins/vector/img/icon-context-mute-off.svg deleted file mode 100644 index d801823b5d..0000000000 --- a/src/skins/vector/img/icon-context-mute-off.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/skins/vector/img/icon-context-mute.svg b/src/skins/vector/img/icon-context-mute.svg deleted file mode 100644 index f53b868a76..0000000000 --- a/src/skins/vector/img/icon-context-mute.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/skins/vector/img/icon-email-user.svg b/src/skins/vector/img/icon-email-user.svg deleted file mode 100644 index 2d41e06f98..0000000000 --- a/src/skins/vector/img/icon-email-user.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - 6F488856-F8EF-479C-9747-AB6E0945C7DE - Created with sketchtool. - - - - - - - - - - - - diff --git a/src/skins/vector/img/icon-invite-people.svg b/src/skins/vector/img/icon-invite-people.svg deleted file mode 100644 index f13a03ed70..0000000000 --- a/src/skins/vector/img/icon-invite-people.svg +++ /dev/null @@ -1,24 +0,0 @@ - - - - 9BA71BF4-DC4F-42D2-B2D0-9EAE0F7F8D45 - Created with sketchtool. - - - - - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/icon-mx-user.svg b/src/skins/vector/img/icon-mx-user.svg deleted file mode 100644 index 5780277f38..0000000000 --- a/src/skins/vector/img/icon-mx-user.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - diff --git a/src/skins/vector/img/icon-return.svg b/src/skins/vector/img/icon-return.svg deleted file mode 100644 index 80da0f82aa..0000000000 --- a/src/skins/vector/img/icon-return.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - B542A09B-DBBF-41D4-A5FD-D05EE1E6BBC4 - Created with sketchtool. - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/icon-text-cancel.svg b/src/skins/vector/img/icon-text-cancel.svg deleted file mode 100644 index ce28d128aa..0000000000 --- a/src/skins/vector/img/icon-text-cancel.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - 28D80248-63BA-4A5F-9216-4CFE72784BAC - Created with sketchtool. - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/icon_context_delete.svg b/src/skins/vector/img/icon_context_delete.svg deleted file mode 100644 index 896b94ad13..0000000000 --- a/src/skins/vector/img/icon_context_delete.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/src/skins/vector/img/icon_context_fave.svg b/src/skins/vector/img/icon_context_fave.svg deleted file mode 100644 index da7b14a1f4..0000000000 --- a/src/skins/vector/img/icon_context_fave.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/src/skins/vector/img/icon_context_fave_on.svg b/src/skins/vector/img/icon_context_fave_on.svg deleted file mode 100644 index e22e92d36e..0000000000 --- a/src/skins/vector/img/icon_context_fave_on.svg +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/icon_context_low.svg b/src/skins/vector/img/icon_context_low.svg deleted file mode 100644 index ea579ef4c5..0000000000 --- a/src/skins/vector/img/icon_context_low.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/src/skins/vector/img/icon_context_low_on.svg b/src/skins/vector/img/icon_context_low_on.svg deleted file mode 100644 index 28300f9a74..0000000000 --- a/src/skins/vector/img/icon_context_low_on.svg +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/icon_context_message.svg b/src/skins/vector/img/icon_context_message.svg deleted file mode 100644 index f2ceccfa78..0000000000 --- a/src/skins/vector/img/icon_context_message.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - ED5D3E59-2561-4AC1-9B43-82FBC51767FC - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icon_context_message_dark.svg b/src/skins/vector/img/icon_context_message_dark.svg deleted file mode 100644 index b4336cc377..0000000000 --- a/src/skins/vector/img/icon_context_message_dark.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - ED5D3E59-2561-4AC1-9B43-82FBC51767FC - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icon_context_person.svg b/src/skins/vector/img/icon_context_person.svg deleted file mode 100644 index fff019d377..0000000000 --- a/src/skins/vector/img/icon_context_person.svg +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - image/svg+xml - - 81230A28-D944-4572-B5DB-C03CAA2B1FCA - - - - - - 81230A28-D944-4572-B5DB-C03CAA2B1FCA - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icon_context_person_on.svg b/src/skins/vector/img/icon_context_person_on.svg deleted file mode 100644 index 362944332d..0000000000 --- a/src/skins/vector/img/icon_context_person_on.svg +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - image/svg+xml - - 81230A28-D944-4572-B5DB-C03CAA2B1FCA - - - - - - 81230A28-D944-4572-B5DB-C03CAA2B1FCA - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icon_person.svg b/src/skins/vector/img/icon_person.svg deleted file mode 100644 index 4be70df0db..0000000000 --- a/src/skins/vector/img/icon_person.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - 815EF7DE-169A-4322-AE2A-B65CBE91DCED - Created with sketchtool. - - - - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/icons-close-button.svg b/src/skins/vector/img/icons-close-button.svg deleted file mode 100644 index f960d73a3c..0000000000 --- a/src/skins/vector/img/icons-close-button.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - 206C270A-EB00-48E4-8CC3-5D403C59177C - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icons-close.svg b/src/skins/vector/img/icons-close.svg deleted file mode 100644 index 453b51082f..0000000000 --- a/src/skins/vector/img/icons-close.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - -icons_create_room -Created with sketchtool. - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/icons-create-room.svg b/src/skins/vector/img/icons-create-room.svg deleted file mode 100644 index 252bd2df3b..0000000000 --- a/src/skins/vector/img/icons-create-room.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - 0F9BCC43-B3A7-4C9F-8E34-1F38194362C2 - Created with sketchtool. - - - - - - - - - - - - - diff --git a/src/skins/vector/img/icons-directory.svg b/src/skins/vector/img/icons-directory.svg deleted file mode 100644 index 2688b84713..0000000000 --- a/src/skins/vector/img/icons-directory.svg +++ /dev/null @@ -1,24 +0,0 @@ - - - - icons_directory - Created with Sketch. - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/icons-files.svg b/src/skins/vector/img/icons-files.svg deleted file mode 100644 index 97ba4228e3..0000000000 --- a/src/skins/vector/img/icons-files.svg +++ /dev/null @@ -1,29 +0,0 @@ - - - - 7C98C075-AB4D-45A3-85F9-CCD46F84DA7F - Created with sketchtool. - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/icons-home.svg b/src/skins/vector/img/icons-home.svg deleted file mode 100644 index eb5484c883..0000000000 --- a/src/skins/vector/img/icons-home.svg +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - 81230A28-D944-4572-B5DB-C03CAA2B1FCA - Created with sketchtool. - - - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/icons-notifications.svg b/src/skins/vector/img/icons-notifications.svg deleted file mode 100644 index 66a49d6c0c..0000000000 --- a/src/skins/vector/img/icons-notifications.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - 5E723325-BD0B-454D-BE25-638AF09A97AC - Created with sketchtool. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/icons-people.svg b/src/skins/vector/img/icons-people.svg deleted file mode 100644 index 8854506127..0000000000 --- a/src/skins/vector/img/icons-people.svg +++ /dev/null @@ -1,22 +0,0 @@ - - - - 81230A28-D944-4572-B5DB-C03CAA2B1FCA - Created with sketchtool. - - - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/icons-search-copy.svg b/src/skins/vector/img/icons-search-copy.svg deleted file mode 100644 index b026718b84..0000000000 --- a/src/skins/vector/img/icons-search-copy.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/src/skins/vector/img/icons-search.svg b/src/skins/vector/img/icons-search.svg deleted file mode 100644 index d85709e66c..0000000000 --- a/src/skins/vector/img/icons-search.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/src/skins/vector/img/icons-settings-room.svg b/src/skins/vector/img/icons-settings-room.svg deleted file mode 100644 index 117d134c95..0000000000 --- a/src/skins/vector/img/icons-settings-room.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - 69011392-CE9D-4404-A85C-A8548C5D850B - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icons-settings.svg b/src/skins/vector/img/icons-settings.svg deleted file mode 100644 index 3ca2b655f4..0000000000 --- a/src/skins/vector/img/icons-settings.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - 4D42A2A7-7430-4D4F-A0A2-E19278CF66E3 - Created with sketchtool. - - - - - - - - - - diff --git a/src/skins/vector/img/icons-upload.svg b/src/skins/vector/img/icons-upload.svg deleted file mode 100644 index b0101e87a0..0000000000 --- a/src/skins/vector/img/icons-upload.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/src/skins/vector/img/icons-video.svg b/src/skins/vector/img/icons-video.svg deleted file mode 100644 index d367f49609..0000000000 --- a/src/skins/vector/img/icons-video.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - 05D354CE-86A7-4B6F-B9BE-F1CEBBD81B21 - Created with sketchtool. - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/icons_ellipsis.svg b/src/skins/vector/img/icons_ellipsis.svg deleted file mode 100644 index ba600ccacc..0000000000 --- a/src/skins/vector/img/icons_ellipsis.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/src/skins/vector/img/info.png b/src/skins/vector/img/info.png deleted file mode 100644 index 699fd64e01..0000000000 Binary files a/src/skins/vector/img/info.png and /dev/null differ diff --git a/src/skins/vector/img/leave.svg b/src/skins/vector/img/leave.svg deleted file mode 100644 index 1acbe59313..0000000000 --- a/src/skins/vector/img/leave.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/list-close.png b/src/skins/vector/img/list-close.png deleted file mode 100644 index 82b322f9d4..0000000000 Binary files a/src/skins/vector/img/list-close.png and /dev/null differ diff --git a/src/skins/vector/img/list-close.svg b/src/skins/vector/img/list-close.svg deleted file mode 100644 index cd88b2a88f..0000000000 --- a/src/skins/vector/img/list-close.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - -Slice 1 -Created with Sketch. - - - - diff --git a/src/skins/vector/img/list-open.png b/src/skins/vector/img/list-open.png deleted file mode 100644 index f8c8063197..0000000000 Binary files a/src/skins/vector/img/list-open.png and /dev/null differ diff --git a/src/skins/vector/img/list-open.svg b/src/skins/vector/img/list-open.svg deleted file mode 100644 index e180be8870..0000000000 --- a/src/skins/vector/img/list-open.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - -Slice 1 -Created with Sketch. - - - - diff --git a/src/skins/vector/img/maximise.svg b/src/skins/vector/img/maximise.svg deleted file mode 100644 index 79c6c0ab8b..0000000000 --- a/src/skins/vector/img/maximise.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - -minimise -Created with sketchtool. - - - - - - - - - - - - diff --git a/src/skins/vector/img/member_chevron.png b/src/skins/vector/img/member_chevron.png deleted file mode 100644 index cbbd289dcf..0000000000 Binary files a/src/skins/vector/img/member_chevron.png and /dev/null differ diff --git a/src/skins/vector/img/menu.png b/src/skins/vector/img/menu.png deleted file mode 100755 index b45f88950f..0000000000 Binary files a/src/skins/vector/img/menu.png and /dev/null differ diff --git a/src/skins/vector/img/minimise.svg b/src/skins/vector/img/minimise.svg deleted file mode 100644 index 491756b15a..0000000000 --- a/src/skins/vector/img/minimise.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - minimise - Created with sketchtool. - - - - - - - - - - - - - diff --git a/src/skins/vector/img/mod.svg b/src/skins/vector/img/mod.svg deleted file mode 100644 index 847baf98f9..0000000000 --- a/src/skins/vector/img/mod.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - icons_admin - Created with sketchtool. - - - - - - - - - - - diff --git a/src/skins/vector/img/network-matrix.svg b/src/skins/vector/img/network-matrix.svg deleted file mode 100644 index bb8278ae39..0000000000 --- a/src/skins/vector/img/network-matrix.svg +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - diff --git a/src/skins/vector/img/newmessages.png b/src/skins/vector/img/newmessages.png deleted file mode 100644 index a22156ab21..0000000000 Binary files a/src/skins/vector/img/newmessages.png and /dev/null differ diff --git a/src/skins/vector/img/newmessages.svg b/src/skins/vector/img/newmessages.svg deleted file mode 100644 index a2ffca9020..0000000000 --- a/src/skins/vector/img/newmessages.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - icon_newmessages - Created with Sketch. - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/notif-active.svg b/src/skins/vector/img/notif-active.svg deleted file mode 100644 index 9eb279f851..0000000000 --- a/src/skins/vector/img/notif-active.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - E15782FC-B5FA-472A-AE12-CFFF484E7253 - Created with sketchtool. - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/notif-slider.svg b/src/skins/vector/img/notif-slider.svg deleted file mode 100644 index 55fa06d11a..0000000000 --- a/src/skins/vector/img/notif-slider.svg +++ /dev/null @@ -1,22 +0,0 @@ - - - - 16CB4618-0BD3-4568-BB20-FC56EBC46046 - Created with sketchtool. - - - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/p/p0.png b/src/skins/vector/img/p/p0.png deleted file mode 100644 index 300cc22654..0000000000 Binary files a/src/skins/vector/img/p/p0.png and /dev/null differ diff --git a/src/skins/vector/img/p/p1.png b/src/skins/vector/img/p/p1.png deleted file mode 100644 index 5a6e3054e4..0000000000 Binary files a/src/skins/vector/img/p/p1.png and /dev/null differ diff --git a/src/skins/vector/img/p/p10.png b/src/skins/vector/img/p/p10.png deleted file mode 100644 index 7cead0f239..0000000000 Binary files a/src/skins/vector/img/p/p10.png and /dev/null differ diff --git a/src/skins/vector/img/p/p11.png b/src/skins/vector/img/p/p11.png deleted file mode 100644 index d744d8af2f..0000000000 Binary files a/src/skins/vector/img/p/p11.png and /dev/null differ diff --git a/src/skins/vector/img/p/p12.png b/src/skins/vector/img/p/p12.png deleted file mode 100644 index 02492d554a..0000000000 Binary files a/src/skins/vector/img/p/p12.png and /dev/null differ diff --git a/src/skins/vector/img/p/p13.png b/src/skins/vector/img/p/p13.png deleted file mode 100644 index 0ae8029d87..0000000000 Binary files a/src/skins/vector/img/p/p13.png and /dev/null differ diff --git a/src/skins/vector/img/p/p14.png b/src/skins/vector/img/p/p14.png deleted file mode 100644 index 23a3840bf8..0000000000 Binary files a/src/skins/vector/img/p/p14.png and /dev/null differ diff --git a/src/skins/vector/img/p/p15.png b/src/skins/vector/img/p/p15.png deleted file mode 100644 index b07f463a07..0000000000 Binary files a/src/skins/vector/img/p/p15.png and /dev/null differ diff --git a/src/skins/vector/img/p/p16.png b/src/skins/vector/img/p/p16.png deleted file mode 100644 index f8fa4abfa1..0000000000 Binary files a/src/skins/vector/img/p/p16.png and /dev/null differ diff --git a/src/skins/vector/img/p/p17.png b/src/skins/vector/img/p/p17.png deleted file mode 100644 index 20e985bb1c..0000000000 Binary files a/src/skins/vector/img/p/p17.png and /dev/null differ diff --git a/src/skins/vector/img/p/p18.png b/src/skins/vector/img/p/p18.png deleted file mode 100644 index 2ecd29b350..0000000000 Binary files a/src/skins/vector/img/p/p18.png and /dev/null differ diff --git a/src/skins/vector/img/p/p19.png b/src/skins/vector/img/p/p19.png deleted file mode 100644 index ec35f0fc80..0000000000 Binary files a/src/skins/vector/img/p/p19.png and /dev/null differ diff --git a/src/skins/vector/img/p/p2.png b/src/skins/vector/img/p/p2.png deleted file mode 100644 index 82f16d6078..0000000000 Binary files a/src/skins/vector/img/p/p2.png and /dev/null differ diff --git a/src/skins/vector/img/p/p20.png b/src/skins/vector/img/p/p20.png deleted file mode 100644 index 0ff816d61b..0000000000 Binary files a/src/skins/vector/img/p/p20.png and /dev/null differ diff --git a/src/skins/vector/img/p/p3.png b/src/skins/vector/img/p/p3.png deleted file mode 100644 index ae215557a8..0000000000 Binary files a/src/skins/vector/img/p/p3.png and /dev/null differ diff --git a/src/skins/vector/img/p/p4.png b/src/skins/vector/img/p/p4.png deleted file mode 100644 index 011ff6f541..0000000000 Binary files a/src/skins/vector/img/p/p4.png and /dev/null differ diff --git a/src/skins/vector/img/p/p5.png b/src/skins/vector/img/p/p5.png deleted file mode 100644 index 1a90da9aac..0000000000 Binary files a/src/skins/vector/img/p/p5.png and /dev/null differ diff --git a/src/skins/vector/img/p/p6.png b/src/skins/vector/img/p/p6.png deleted file mode 100644 index 453110f62f..0000000000 Binary files a/src/skins/vector/img/p/p6.png and /dev/null differ diff --git a/src/skins/vector/img/p/p7.png b/src/skins/vector/img/p/p7.png deleted file mode 100644 index 6418817ca8..0000000000 Binary files a/src/skins/vector/img/p/p7.png and /dev/null differ diff --git a/src/skins/vector/img/p/p8.png b/src/skins/vector/img/p/p8.png deleted file mode 100644 index 0e821fd675..0000000000 Binary files a/src/skins/vector/img/p/p8.png and /dev/null differ diff --git a/src/skins/vector/img/p/p9.png b/src/skins/vector/img/p/p9.png deleted file mode 100644 index f4b6941b24..0000000000 Binary files a/src/skins/vector/img/p/p9.png and /dev/null differ diff --git a/src/skins/vector/img/p/piechart.pde b/src/skins/vector/img/p/piechart.pde deleted file mode 100644 index 44fe628378..0000000000 --- a/src/skins/vector/img/p/piechart.pde +++ /dev/null @@ -1,19 +0,0 @@ -// a trivial processing.org snippet to generate these -// using java2d (ugh). Peity and JS might have been -// a better idea. Or SVG. - -size(48, 48); -g = createGraphics(48, 48, JAVA2D); - -for (int i = 0; i <= 20; i++) { - g.beginDraw(); - g.background(0.0, 0.0); - g.smooth(); - g.strokeCap(SQUARE); - g.strokeWeight(3); - g.stroke(0x80, 0xcf, 0xf4, 255.0); - g.fill(0.0, 0.0); - g.arc(24, 24, 43, 43, -PI/2, -PI/2 + (i*2*PI/20.0)); - g.save("p" + i + ".png"); - g.endDraw(); -} diff --git a/src/skins/vector/img/placeholder.png b/src/skins/vector/img/placeholder.png deleted file mode 100644 index 7da32f259c..0000000000 Binary files a/src/skins/vector/img/placeholder.png and /dev/null differ diff --git a/src/skins/vector/img/plus.svg b/src/skins/vector/img/plus.svg deleted file mode 100644 index e1d59ec6f4..0000000000 --- a/src/skins/vector/img/plus.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - Line + Line - Created with Sketch. - - - - - - - - diff --git a/src/skins/vector/img/redacted-dark.jpg b/src/skins/vector/img/redacted-dark.jpg deleted file mode 100644 index f0a91ceadb..0000000000 Binary files a/src/skins/vector/img/redacted-dark.jpg and /dev/null differ diff --git a/src/skins/vector/img/redacted.jpg b/src/skins/vector/img/redacted.jpg deleted file mode 100644 index e19d5cc4a8..0000000000 Binary files a/src/skins/vector/img/redacted.jpg and /dev/null differ diff --git a/src/skins/vector/img/right_search.svg b/src/skins/vector/img/right_search.svg deleted file mode 100644 index b430a6be19..0000000000 --- a/src/skins/vector/img/right_search.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - right_search - Created with Sketch. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/scrolldown.svg b/src/skins/vector/img/scrolldown.svg deleted file mode 100644 index d6599c5fc7..0000000000 --- a/src/skins/vector/img/scrolldown.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - icon_newmessages - Created with Sketch. - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/scrollto.svg b/src/skins/vector/img/scrollto.svg deleted file mode 100644 index 75df053a68..0000000000 --- a/src/skins/vector/img/scrollto.svg +++ /dev/null @@ -1,21 +0,0 @@ - - - - Slice 1 - Created with Sketch. - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/scrollup.svg b/src/skins/vector/img/scrollup.svg deleted file mode 100644 index 1692f2a6c0..0000000000 --- a/src/skins/vector/img/scrollup.svg +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - image/svg+xml - - - - - - - icon_newmessages - Created with Sketch. - - - - - - - - - - diff --git a/src/skins/vector/img/search-button.svg b/src/skins/vector/img/search-button.svg deleted file mode 100644 index f4808842ff..0000000000 --- a/src/skins/vector/img/search-button.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - icon_search - Created with Sketch. - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/search-icon-vector.svg b/src/skins/vector/img/search-icon-vector.svg deleted file mode 100644 index 5780277f38..0000000000 --- a/src/skins/vector/img/search-icon-vector.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - diff --git a/src/skins/vector/img/search.png b/src/skins/vector/img/search.png deleted file mode 100644 index 2f98d29048..0000000000 Binary files a/src/skins/vector/img/search.png and /dev/null differ diff --git a/src/skins/vector/img/search.svg b/src/skins/vector/img/search.svg deleted file mode 100644 index bd4cd9200c..0000000000 --- a/src/skins/vector/img/search.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - icons_search - Created with bin/sketchtool. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/selected.png b/src/skins/vector/img/selected.png deleted file mode 100644 index 8931cba75f..0000000000 Binary files a/src/skins/vector/img/selected.png and /dev/null differ diff --git a/src/skins/vector/img/settings-big.png b/src/skins/vector/img/settings-big.png deleted file mode 100644 index cb2e0a62d0..0000000000 Binary files a/src/skins/vector/img/settings-big.png and /dev/null differ diff --git a/src/skins/vector/img/settings-big.svg b/src/skins/vector/img/settings-big.svg deleted file mode 100644 index c9587d58c2..0000000000 --- a/src/skins/vector/img/settings-big.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - icons_settings - Created with sketchtool. - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/settings.png b/src/skins/vector/img/settings.png deleted file mode 100644 index 264b3c9bc3..0000000000 Binary files a/src/skins/vector/img/settings.png and /dev/null differ diff --git a/src/skins/vector/img/settings.svg b/src/skins/vector/img/settings.svg deleted file mode 100644 index 4190c7b8de..0000000000 --- a/src/skins/vector/img/settings.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - icon_settings_small - Created with bin/sketchtool. - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/sound-indicator.svg b/src/skins/vector/img/sound-indicator.svg deleted file mode 100644 index 9b8de53d81..0000000000 --- a/src/skins/vector/img/sound-indicator.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - sound_indicator - Created with Sketch. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/spinner.gif b/src/skins/vector/img/spinner.gif deleted file mode 100644 index ab4871214b..0000000000 Binary files a/src/skins/vector/img/spinner.gif and /dev/null differ diff --git a/src/skins/vector/img/tick.svg b/src/skins/vector/img/tick.svg deleted file mode 100644 index 6177f15f5e..0000000000 --- a/src/skins/vector/img/tick.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - icon_tick - Created with sketchtool. - - - - - - - diff --git a/src/skins/vector/img/trans.png b/src/skins/vector/img/trans.png deleted file mode 100644 index 8ba2310a06..0000000000 Binary files a/src/skins/vector/img/trans.png and /dev/null differ diff --git a/src/skins/vector/img/typing.png b/src/skins/vector/img/typing.png deleted file mode 100644 index 066a0ce8fd..0000000000 Binary files a/src/skins/vector/img/typing.png and /dev/null differ diff --git a/src/skins/vector/img/upload-big.png b/src/skins/vector/img/upload-big.png deleted file mode 100644 index c11c0c452d..0000000000 Binary files a/src/skins/vector/img/upload-big.png and /dev/null differ diff --git a/src/skins/vector/img/upload-big.svg b/src/skins/vector/img/upload-big.svg deleted file mode 100644 index 6099c2e976..0000000000 --- a/src/skins/vector/img/upload-big.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - icons_upload_drop - Created with bin/sketchtool. - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/upload.png b/src/skins/vector/img/upload.png deleted file mode 100644 index 7457bcd0f1..0000000000 Binary files a/src/skins/vector/img/upload.png and /dev/null differ diff --git a/src/skins/vector/img/upload.svg b/src/skins/vector/img/upload.svg deleted file mode 100644 index 039014a2f3..0000000000 --- a/src/skins/vector/img/upload.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - icons_upload - Created with bin/sketchtool. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/video-mute.svg b/src/skins/vector/img/video-mute.svg deleted file mode 100644 index 6de60ba39b..0000000000 --- a/src/skins/vector/img/video-mute.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - icons_video copy - Created with Sketch. - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/video-unmute.svg b/src/skins/vector/img/video-unmute.svg deleted file mode 100644 index a6c6c3b681..0000000000 --- a/src/skins/vector/img/video-unmute.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - icons_video copy - Created with Sketch. - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/video.png b/src/skins/vector/img/video.png deleted file mode 100644 index 2a788f6fa4..0000000000 Binary files a/src/skins/vector/img/video.png and /dev/null differ diff --git a/src/skins/vector/img/voice-mute.svg b/src/skins/vector/img/voice-mute.svg deleted file mode 100644 index 336641078e..0000000000 --- a/src/skins/vector/img/voice-mute.svg +++ /dev/null @@ -1,14 +0,0 @@ - - - - Audio - Created with Sketch. - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/voice-unmute.svg b/src/skins/vector/img/voice-unmute.svg deleted file mode 100644 index 0d7e6f429f..0000000000 --- a/src/skins/vector/img/voice-unmute.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - Audio - Created with Sketch. - - - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/voice.png b/src/skins/vector/img/voice.png deleted file mode 100644 index 5ba765b0f4..0000000000 Binary files a/src/skins/vector/img/voice.png and /dev/null differ diff --git a/src/skins/vector/img/voice.svg b/src/skins/vector/img/voice.svg deleted file mode 100644 index ff87270ba5..0000000000 --- a/src/skins/vector/img/voice.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - icon_voice - Created with Sketch. - - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/voip-chevron.svg b/src/skins/vector/img/voip-chevron.svg deleted file mode 100644 index 5f7cbe7153..0000000000 --- a/src/skins/vector/img/voip-chevron.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - Triangle 1 - Created with Sketch. - - - - - - - \ No newline at end of file diff --git a/src/skins/vector/img/voip-mute.png b/src/skins/vector/img/voip-mute.png deleted file mode 100644 index a16d1001e5..0000000000 Binary files a/src/skins/vector/img/voip-mute.png and /dev/null differ diff --git a/src/skins/vector/img/voip.png b/src/skins/vector/img/voip.png deleted file mode 100644 index e8f05bcc37..0000000000 Binary files a/src/skins/vector/img/voip.png and /dev/null differ diff --git a/src/skins/vector/img/warning.png b/src/skins/vector/img/warning.png deleted file mode 100644 index c5553530a8..0000000000 Binary files a/src/skins/vector/img/warning.png and /dev/null differ diff --git a/src/skins/vector/img/warning.svg b/src/skins/vector/img/warning.svg deleted file mode 100644 index b9a96a88e5..0000000000 --- a/src/skins/vector/img/warning.svg +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/skins/vector/img/warning2.png b/src/skins/vector/img/warning2.png deleted file mode 100644 index db0fd4a897..0000000000 Binary files a/src/skins/vector/img/warning2.png and /dev/null differ diff --git a/src/skins/vector/img/zoom.png b/src/skins/vector/img/zoom.png deleted file mode 100644 index f05ea959b4..0000000000 Binary files a/src/skins/vector/img/zoom.png and /dev/null differ diff --git a/src/utils/DirectoryUtils.js b/src/utils/DirectoryUtils.js deleted file mode 100644 index 72e44681b6..0000000000 --- a/src/utils/DirectoryUtils.js +++ /dev/null @@ -1,23 +0,0 @@ -// Find a protocol 'instance' with a given instance_id -// in the supplied protocols dict -export function instanceForInstanceId(protocols, instance_id) { - if (!instance_id) return null; - for (const proto of Object.keys(protocols)) { - if (!protocols[proto].instances && protocols[proto].instances instanceof Array) continue; - for (const instance of protocols[proto].instances) { - if (instance.instance_id == instance_id) return instance; - } - } -} - -// given an instance_id, return the name of the protocol for -// that instance ID in the supplied protocols dict -export function protocolNameForInstanceId(protocols, instance_id) { - if (!instance_id) return null; - for (const proto of Object.keys(protocols)) { - if (!protocols[proto].instances && protocols[proto].instances instanceof Array) continue; - for (const instance of protocols[proto].instances) { - if (instance.instance_id == instance_id) return proto; - } - } -} diff --git a/src/vector/getconfig.js b/src/vector/getconfig.js new file mode 100644 index 0000000000..239ba8067a --- /dev/null +++ b/src/vector/getconfig.js @@ -0,0 +1,65 @@ +/* +Copyright 2018 New Vector Ltd + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import Promise from 'bluebird'; +import request from 'browser-request'; + +export async function getVectorConfig(relativeLocation) { + if (relativeLocation === undefined) relativeLocation = ''; + if (relativeLocation !== '' && !relativeLocation.endsWith('/')) relativeLocation += '/'; + try { + const configJson = await getConfig(`${relativeLocation}config.${document.domain}.json`); + // 404s succeed with an empty json config, so check that there are keys + if (Object.keys(configJson).length === 0) { + throw new Error(); // throw to enter the catch + } + return configJson; + } catch (e) { + return await getConfig(relativeLocation + "config.json"); + } +} + +function getConfig(configJsonFilename) { + return new Promise(function(resolve, reject) { + request( + { method: "GET", url: configJsonFilename }, + (err, response, body) => { + if (err || response.status < 200 || response.status >= 300) { + // Lack of a config isn't an error, we should + // just use the defaults. + // Also treat a blank config as no config, assuming + // the status code is 0, because we don't get 404s + // from file: URIs so this is the only way we can + // not fail if the file doesn't exist when loading + // from a file:// URI. + if (response) { + if (response.status == 404 || (response.status == 0 && body == '')) { + resolve({}); + } + } + reject({err: err, response: response}); + return; + } + + // We parse the JSON ourselves rather than use the JSON + // parameter, since this throws a parse error on empty + // which breaks if there's no config.json and we're + // loading from the filesystem (see above). + resolve(JSON.parse(body)); + }, + ); + }); +} diff --git a/src/vector/index.html b/src/vector/index.html index 49c2979ed1..4ba65c3e06 100644 --- a/src/vector/index.html +++ b/src/vector/index.html @@ -20,15 +20,14 @@ + <% for (var i=0; i < htmlWebpackPlugin.files.css.length; i++) { var file = htmlWebpackPlugin.files.css[i]; var match = file.match(/^bundles\/.*?\/theme-(.*)\.css$/); if (match) { var title = match[1].charAt(0).toUpperCase() + match[1].slice(1); - var light = match[1] == 'light'; %> - + <% } else { %> <% } @@ -38,6 +37,14 @@
    <% for (var i=0; i < htmlWebpackPlugin.files.js.length; i++) { + if (_.endsWith(htmlWebpackPlugin.files.js[i], 'olm.js')) { + var array = htmlWebpackPlugin.files.js; + htmlWebpackPlugin.files.js.unshift(htmlWebpackPlugin.files.js[i]); + htmlWebpackPlugin.files.js.splice(i, 1); + } + } + + for (var i=0; i < htmlWebpackPlugin.files.js.length; i++) { // Not a particularly graceful way of not putting the indexeddb worker script // into the main page if (_.endsWith(htmlWebpackPlugin.files.js[i], 'indexeddb-worker.js')) { @@ -72,6 +79,8 @@ -