Compare commits

..

12 Commits

Author SHA1 Message Date
Danny Coates
cda38f9bcf v2.5.3 2018-03-29 00:03:04 -07:00
Danny Coates
cc9b622bde fixed cryptofill on edge 2018-03-28 22:03:46 -07:00
Danny Coates
fb91fd03cc adjusted selectbox styles 2018-03-27 23:19:07 -07:00
rcmainak
77e3b5a3e6 Replaced the selectbox with native HTML <select> 2018-03-27 21:40:59 -07:00
صفا الفليج
0ed5c7f1e7 Pontoon: Update Arabic (ar) localization of Test Pilot: Firefox Send
Localization authors:
- صفا الفليج <safa1996alfulaij@gmail.com>
2018-03-26 01:32:08 +00:00
Alberto Castro
5afadd4ff1 Pontoon: Update Portuguese (Portugal) (pt-PT) localization of Test Pilot: Firefox Send
Localization authors:
- Alberto Castro <albertdcastro@gmail.com>
- Rodrigo <rodrigo.mcunha@hotmail.com>
2018-03-22 17:10:58 +00:00
వీవెన్
0f53c718a2 Pontoon: Update Telugu (te) localization of Test Pilot: Firefox Send
Localization authors:
- వీవెన్ <veeven@gmail.com>
2018-03-22 16:31:46 +00:00
Gonçalo Matos
ad4e6c8dec Pontoon: Update Portuguese (Portugal) (pt-PT) localization of Test Pilot: Firefox Send
Localization authors:
- Alberto Castro <albertdcastro@gmail.com>
- Gonçalo Matos <goncalo.matos@me.com>
- Rodrigo <rodrigo.mcunha@hotmail.com>
2018-03-22 02:31:41 +00:00
Rodrigo
9e0195deaa Pontoon: Update Portuguese (Portugal) (pt-PT) localization of Test Pilot: Firefox Send
Localization authors:
- Rodrigo <rodrigo.mcunha@hotmail.com>
2018-03-22 02:12:00 +00:00
Rodrigo
253216e6fc Pontoon: Update Portuguese (Portugal) (pt-PT) localization of Test Pilot: Firefox Send
Localization authors:
- Rodrigo <rodrigo.mcunha@hotmail.com>
2018-03-21 20:10:48 +00:00
Roberto Alvarado
78eab6335d Pontoon: Update Spanish (Mexico) (es-MX) localization of Test Pilot: Firefox Send
Localization authors:
- Roberto Alvarado <ralv888@gmail.com>
2018-03-19 22:11:09 +00:00
Enol
1d20b5ba11 Pontoon: Update Asturian (ast) localization of Test Pilot: Firefox Send
Localization authors:
- Enol <enolp@softastur.org>
2018-03-15 15:11:13 +00:00
14 changed files with 144 additions and 113 deletions

View File

@@ -1,6 +1,6 @@
## Change Log
### upcoming (2018/03/12 19:25 +00:00)
### v2.5.1 (2018/03/12 19:26 +00:00)
- [#789](https://github.com/mozilla/send/pull/789) Fixed #775 : Made text not-selectable (@RCMainak)
### v2.5.0 (2018/03/08 19:31 +00:00)

View File

@@ -37,6 +37,7 @@ Frederick Villaluna
Gabriela
Gautam krishna.R
Georgianizator
Gonçalo Matos
Hyeonseok Shin
Håvar Henriksen
Jae Hyeon Park
@@ -153,3 +154,4 @@ ybouhamam
Μιχάλης
Марко Костић (Marko Kostić)
صفا الفليج
వీవెన్

View File

@@ -16,7 +16,7 @@ module.exports = function(state, emit) {
return html`
<div id="shareWrapper" class="effect--fadeIn">
<div class="title">${expireInfo(file, state.translate, emit)}</div>
${expireInfo(file, state.translate, emit)}
<div class="sharePage">
<div class="sharePage__copyText">
${state.translate('copyUrlFormLabelWithName', { filename: file.name })}
@@ -97,7 +97,7 @@ module.exports = function(state, emit) {
function expireInfo(file, translate, emit) {
const hours = Math.floor(EXPIRE_SECONDS / 60 / 60);
const el = html`<div>${raw(
const el = html`<div class="title">${raw(
translate('expireInfo', {
downloadCount: '<select></select>',
timespan: translate('timespanHours', { num: hours })
@@ -107,9 +107,6 @@ function expireInfo(file, translate, emit) {
const options = [1, 2, 3, 4, 5, 20].filter(i => i > (file.dtotal || 0));
const t = num => translate('downloadCount', { num });
const changed = value => emit('changeLimit', { file, value });
select.parentNode.replaceChild(
selectbox(file.dlimit || 1, options, t, changed),
select
);
el.replaceChild(selectbox(file.dlimit || 1, options, t, changed), select);
return el;
}

View File

@@ -1,59 +1,28 @@
const html = require('choo/html');
const number = require('../../utils').number;
module.exports = function(selected, options, translate, changed) {
const id = `select-${Math.random()}`;
let x = selected;
return html`
<div class="selectbox">
<div onclick=${toggle}>
<span class="link">${translate(selected)}</span>
<svg width="32" height="32">
<polygon points="8 18 17 28 26 18" fill="#0094fb"/>
</svg>
</div>
<ul id="${id}" class="selectbox__options">
<div class="select">
<select id="${id}" onchange=${choose}>
${options.map(
i => html`
<li
class="selectbox__option"
onclick=${choose}
data-value="${i}">${number(i)}</li>`
i =>
html`<option value="${i}" ${
i === selected ? 'selected' : ''
}>${translate(i)}</option>`
)}
</ul>
</select>
</div>`;
function close() {
const ul = document.getElementById(id);
const body = document.querySelector('body');
ul.classList.remove('selectbox__options--active');
body.removeEventListener('click', close);
}
function toggle(event) {
event.stopPropagation();
const ul = document.getElementById(id);
if (ul.classList.contains('selectbox__options--active')) {
close();
} else {
ul.classList.add('selectbox__options--active');
const body = document.querySelector('body');
body.addEventListener('click', close);
}
}
function choose(event) {
event.stopPropagation();
const target = event.target;
const value = +target.dataset.value;
target.parentNode.previousSibling.firstElementChild.textContent = translate(
value
);
const value = +target.value;
if (x !== value) {
x = value;
changed(value);
}
close();
}
};

View File

@@ -1,36 +1,47 @@
.selectbox {
display: inline-block;
position: relative;
cursor: pointer;
}
.selectbox__options {
display: none;
}
.selectbox__options--active {
display: block;
position: absolute;
top: 0;
left: 0;
padding: 0;
margin: 40px 0;
.select {
background-color: var(--pageBGColor);
border: 1px solid rgba(12, 12, 13, 0.3);
overflow: hidden;
padding: 4px 2px 1px 2px;
border: 1px dotted #0094fb88;
border-radius: 4px;
box-shadow: 1px 2px 4px rgba(12, 12, 13, 0.3);
display: inline;
position: relative;
}
.selectbox__option {
color: var(--lightTextColor);
font-size: 12pt;
list-style: none;
user-select: none;
white-space: nowrap;
padding: 0 60px;
border-bottom: 1px solid rgba(12, 12, 13, 0.3);
.select::after {
color: #0094fb;
content: '\25BC';
position: absolute;
right: 0;
padding: 0 10px;
pointer-events: none;
font-size: 20px;
}
.selectbox__option:hover {
background-color: #f4f4f4;
option {
padding: 0;
}
select {
appearance: none;
outline: 0;
box-shadow: none;
border: 0;
background: #fff;
background-image: none;
font-size: 1em;
font-weight: 200;
margin: 0;
color: #0094fb;
cursor: pointer;
padding-right: 40px;
}
select:active {
background-color: var(--pageBGColor);
border: 0;
}
#arrow {
position: relative;
}

View File

@@ -9,9 +9,7 @@ function arrayToB64(array) {
}
function b64ToArray(str) {
return b64.toByteArray(
str + '==='.slice((str.length + 3) % 4)
);
return b64.toByteArray(str + '==='.slice((str.length + 3) % 4));
}
function loadShim(polyfill) {
@@ -59,6 +57,7 @@ async function canHasSend() {
);
return true;
} catch (err) {
console.error(err);
return false;
}
}

File diff suppressed because one or more lines are too long

2
package-lock.json generated
View File

@@ -1,6 +1,6 @@
{
"name": "firefox-send",
"version": "2.5.2",
"version": "2.5.3",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@@ -1,7 +1,7 @@
{
"name": "firefox-send",
"description": "File Sharing Experiment",
"version": "2.5.2",
"version": "2.5.3",
"author": "Mozilla (https://mozilla.org)",
"repository": "mozilla/send",
"homepage": "https://github.com/mozilla/send/",

View File

@@ -29,7 +29,8 @@ uploadSvgAlt =
.alt = ارفع
uploadSuccessTimingHeader = ستنتهي صلاحية الرابط الذي يشير إلى الملف في حال: نُزِّل لأول مرة، أو مرّ ٢٤ ساعة على رفعه.
expireInfo = ستنتهي صلاحية رابط الملف بعد { $downloadCount } أو { $timespan }.
downloadCount = { $num ->
downloadCount =
{ $num ->
[zero] لا تنزيلات
[one] تنزيل واحد
[two] تنزيلين
@@ -37,7 +38,8 @@ downloadCount = { $num ->
[many] { $num } تنزيلًا
*[other] { $num } تنزيل
}
timespanHours = { $num ->
timespanHours =
{ $num ->
[zero] أقل من ساعة
[one] ساعة
[two] ساعتين
@@ -122,8 +124,6 @@ requirePasswordCheckbox = اطلب كلمة سر لتنزيل هذا الملف
addPasswordButton = أضِف كلمة سر
changePasswordButton = غيّر
passwordTryAgain = كلمة السر خاطئة. أعِد المحاولة.
# This label is followed by the password needed to download a file
passwordResult = كلمة السر: { $password }
reportIPInfringement = أبلغ عن انتهاك للملكية الفكرية
javascriptRequired = يتطلب فَيَرفُكس سِنْد جافاسكربت
whyJavascript = لماذا يتطلب فَيَرفُكس سِنْد جافاسكربت؟
@@ -134,3 +134,7 @@ expiresHoursMinutes = { $hours }س { $minutes }د
expiresMinutes = { $minutes }د
# A short status message shown when a password is successfully set
passwordIsSet = ضُبطت كلمة السر
# A short status message shown when the user enters a long password
maxPasswordLength = أقصر طول لكلمة السر: { $length }
# A short status message shown when there was an error setting the password
passwordSetError = يجب ألا تُضبط كلمة السر هذه

View File

@@ -1,4 +1,4 @@
// Firefox Send is a brand name and should not be localized.
# Firefox Send is a brand name and should not be localized.
title = Firefox Send
siteSubtitle = esperimentu web
siteFeedback = Feedback
@@ -25,28 +25,41 @@ uploadingFileNotification = Avísame cuando se complete la xuba.
uploadSuccessConfirmHeader = Preparáu pa unviar
uploadSvgAlt = Xubir
uploadSuccessTimingHeader = L'enllaz del to ficheru caducará dempués d'una descarga o en 24 hores.
downloadCount =
{ $num ->
[one] 1 descarga
*[other] { $num } descargues
}
timespanHours =
{ $num ->
[one] 1 hora
*[other] { $num } hores
}
copyUrlFormLabelWithName = Copia y comparti l'enllaz pa unviar el to ficheru: { $filename }
copyUrlFormButton = Copiar al cartafueyu
copiedUrl = ¡Copióse!
deleteFileButton = Desaniciar ficheru
sendAnotherFileLink = Unviar otru ficheru
// Alternative text used on the download link/button (indicates an action).
# Alternative text used on the download link/button (indicates an action).
downloadAltText = Baxar
downloadsFileList = Descargues
# Used as header in a column indicating the number of times a file has been
# downloaded
downloadFileName = Baxar { $filename }
downloadFileSize = ({ $size })
unlockInputLabel = Introducir contraseña
unlockInputPlaceholder = Contraseña
unlockButtonLabel = Desbloquiar
downloadFileTitle = Baxar ficheru cifráu
// Firefox Send is a brand name and should not be localized.
# Firefox Send is a brand name and should not be localized.
downloadMessage = El to collaciu unvióte un ficheru usando Firefox Send, un serviciu que te permite compartir ficheros con un enllaz seguru, priváu y cifráu que caduca automáticamente p'asegurar que les to coses nun queden siempres na rede.
// Text and title used on the download link/button (indicates an action).
# Text and title used on the download link/button (indicates an action).
downloadButtonLabel = Baxar
downloadNotification = Completóse la to descarga.
downloadFinish = Descarga completada
// This message is displayed when uploading or downloading a file, e.g. "(1,3 MB of 10 MB)".
# This message is displayed when uploading or downloading a file, e.g. "(1,3 MB of 10 MB)".
fileSizeProgress = ({ $partialSize } de { $totalSize })
// Firefox Send is a brand name and should not be localized.
# Firefox Send is a brand name and should not be localized.
sendYourFilesLink = Prueba Firefox Send
downloadingPageProgress = Baxando { $filename } ({ $size })
downloadingPageMessage = Dexa esta llingüeta abierta entrín vamos en cata del to ficheru y lu desciframos, por favor.
@@ -58,7 +71,7 @@ fileTooBig = Esti ficheru ye mui grande como pa xubilu. Debería tener menos de
linkExpiredAlt = Enllaz caducáu
expiredPageHeader = ¡Esti enllaz caducó o enxamás nun esistó!
notSupportedHeader = El to restolador nun ta sofitáu.
// Firefox Send is a brand name and should not be localized.
# Firefox Send is a brand name and should not be localized.
notSupportedDetail = Desafortunadamente esti restolador nun sofita la teunoloxía web qu'usa Firefox Send. Precisarás d'usar otru restolador. ¡Aconseyámoste Firefox!
notSupportedLink = ¿Por qué'l mio restolador nun ta sofitáu?
notSupportedOutdatedDetail = Desafortunadamente esta versión de Firefox nun sofita la teunoloxía web qu'usa Firefox Send. Precisarás d'anovar Firefox.
@@ -66,7 +79,7 @@ updateFirefox = Anovar Firefox
downloadFirefoxButtonSub = Descarga de baldre
uploadedFile = Ficheru
copyFileList = Copiar URL
// expiryFileList is used as a column header
# expiryFileList is used as a column header
expiryFileList = Caduca en
deleteFileList = Desaniciar
nevermindButton = Nun m'importa
@@ -79,13 +92,14 @@ deletePopupCancel = Encaboxar
deleteButtonHover = Desaniciar
copyUrlHover = Copiar URL
footerLinkLegal = Llegal
// Test Pilot is a proper name and should not be localized.
# Test Pilot is a proper name and should not be localized.
footerLinkAbout = Tocante a Test Pilot
footerLinkPrivacy = Privacidá
footerLinkTerms = Términos
footerLinkCookies = Cookies
requirePasswordCheckbox = Riquir una contraseña pa baxar esti ficheru
addPasswordButton = Amestar contraseña
changePasswordButton = Camudar
passwordTryAgain = Contraseña incorreuta. Volvi tentalo.
// This label is followed by the password needed to download a file
passwordResult = Contraseña: { $password }
# A short status message shown when there was an error setting the password
passwordSetError = Nun pudo afitase esta contraseña

View File

@@ -26,10 +26,12 @@ uploadSuccessConfirmHeader = Listo para enviar
uploadSvgAlt = Subir
uploadSuccessTimingHeader = El enlace a tu archivo expirará después de una descarga o en 24 horas.
expireInfo = El enlace a tu archivo expirará después de { $downloadCount } o { $timespan }.
downloadCount = { $num ->
downloadCount =
{ $num ->
*[one] 1 descarga
}
timespanHours = { $num ->
timespanHours =
{ $num ->
[one] 1 hora
*[other] { $num } horas
}
@@ -102,8 +104,6 @@ requirePasswordCheckbox = Se necesita una contraseña para descargar este archiv
addPasswordButton = Agregar contraseña
changePasswordButton = Cambiar
passwordTryAgain = Contraseña incorrecta. Intenta de nuevo.
# This label is followed by the password needed to download a file
passwordResult = Contraseña: { $password }
reportIPInfringement = Denunciar una infracción de PI
javascriptRequired = Firefox Send requiere JavaScript
whyJavascript = ¿Por qué Firefox Send requiere JavaScript?
@@ -114,3 +114,7 @@ expiresHoursMinutes = { $hours }h { $minutes }m
expiresMinutes = { $minutes }m
# A short status message shown when a password is successfully set
passwordIsSet = Contraseña establecida
# A short status message shown when the user enters a long password
maxPasswordLength = Longitud máxima de la contraseña: { $length }
# A short status message shown when there was an error setting the password
passwordSetError = No se ha podido establecer la contraseña

View File

@@ -8,7 +8,7 @@ uploadPageLearnMore = Saber mais
uploadPageDropMessage = Largue o seu ficheiro aqui para começar a carregar
uploadPageSizeMessage = Para uma operação mais confiável, é melhor manter o seu ficheiro abaixo de 1GB
uploadPageBrowseButton = Selecionar um ficheiro no seu computador
uploadPageBrowseButton1 = Selecione um ficheiro a enviar
uploadPageBrowseButton1 = Selecionar um ficheiro a carregar
uploadPageMultipleFilesAlert = Carregar múltiplos ficheiros ou uma pasta não é atualmente suportado.
uploadPageBrowseButtonTitle = Carregar ficheiro
uploadingPageProgress = A carregar { $filename } ({ $size })
@@ -26,7 +26,8 @@ uploadSuccessConfirmHeader = Pronto para enviar
uploadSvgAlt = Carregar
uploadSuccessTimingHeader = A ligação para o seu ficheiro irá expirar depois de 1 transferência ou em 24 horas.
expireInfo = A ligação para o seu ficheiro irá expirar depois de { $downloadCount } or { $timespan }.
downloadCount = { $num ->
downloadCount =
{ $num ->
[one] 1 transferência
*[other] { $num } transferências
}

View File

@@ -1,4 +1,4 @@
// Firefox Send is a brand name and should not be localized.
# Firefox Send is a brand name and should not be localized.
title = Firefox Send
siteSubtitle = జాల ప్రయోగం
siteFeedback = అభిప్రాయం
@@ -22,25 +22,41 @@ uploadingFileNotification = ఎగుమతి పూర్తయినప్ప
uploadSuccessConfirmHeader = పంపించడానికి సిద్ధంగా ఉంది
uploadSvgAlt = ఎగుమతి చేయండి
uploadSuccessTimingHeader = మీ ఫైలు లంకె గడువు 1 దిగుమతి తరువాత లేదా 24 గంటల తరువాత ముగుస్తుంది.
downloadCount =
{ $num ->
[one] 1 దింపుకోలు
*[other] { $num } దింపుకోళ్ళు
}
timespanHours =
{ $num ->
[one] 1 గంట
*[other] { $num } గంటలు
}
copyUrlFormLabelWithName = మీ ఫైల్ను పంపడానికి లంకెను నకలు చేయండి మరియు పంచండి: { $filename }
copyUrlFormButton = క్లిప్బోర్డ్కు నకలు చేయండి
copiedUrl = నకలు చేయబడింది!
deleteFileButton = ఫైలును తొలగించండి
sendAnotherFileLink = మరో ఫైలును పంపండి
// Alternative text used on the download link/button (indicates an action).
# Alternative text used on the download link/button (indicates an action).
downloadAltText = దిగుమతి
downloadsFileList = దింపుకోళ్ళు
# Used as header in a column indicating the amount of time left before a
# download link expires (e.g. "10h 5m")
timeFileList = సమయం
# Used as header in a column indicating the number of times a file has been
# downloaded
downloadFileName = దిగుమతి { $filename }
downloadFileSize = ({ $size })
unlockInputLabel = సంకేతపదాన్ని తెలపండి
unlockInputPlaceholder = సంకేతపదం
unlockButtonLabel = తాళం తీయి
// Text and title used on the download link/button (indicates an action).
# Text and title used on the download link/button (indicates an action).
downloadButtonLabel = దిగుమతి
downloadNotification = మీ దిగుమతి పూర్తయ్యింది.
downloadFinish = దిగుమతి పూర్తయింది
// This message is displayed when uploading or downloading a file, e.g. "(1,3 MB of 10 MB)".
# This message is displayed when uploading or downloading a file, e.g. "(1,3 MB of 10 MB)".
fileSizeProgress = { $totalSize }) యొక్క ({ $partialSize }
// Firefox Send is a brand name and should not be localized.
# Firefox Send is a brand name and should not be localized.
sendYourFilesLink = Firefox sendను ప్రయత్నించండి
downloadingPageProgress = దిగుమతిచేస్తున్నది { $filename } ({ $size })
errorAltText = ఎగుమతిలో లోపం
@@ -56,7 +72,7 @@ updateFirefox = Firefoxను నవీకరించు
downloadFirefoxButtonSub = ఉచిత దిగుమతులు
uploadedFile = దస్త్రం
copyFileList = URL నకలుతీయి
// expiryFileList is used as a column header
# expiryFileList is used as a column header
expiryFileList = ఇంతలో గడువుతీరును
deleteFileList = తొలగించు
nevermindButton = పర్వాలేదు
@@ -67,13 +83,25 @@ deletePopupCancel = రద్దుచేయి
deleteButtonHover = తొలగించు
copyUrlHover = URLను నకలు చేయండి
footerLinkLegal = చట్టపరమైన
// Test Pilot is a proper name and should not be localized.
# Test Pilot is a proper name and should not be localized.
footerLinkAbout = టెస్ట్ పైలట్ గురించి
footerLinkPrivacy = గోప్యత
footerLinkTerms = నియమాలు
footerLinkCookies = కుకీలు
requirePasswordCheckbox = ఈ ఫైల్ను దింపుకోటానికి సంకేతపదం అవసరం
addPasswordButton = సంకేతపదం జోడించండి
changePasswordButton = మార్చు
passwordTryAgain = సరికాని సంకేతపదం. మళ్ళీ ప్రయత్నించండి.
// This label is followed by the password needed to download a file
passwordResult = సంకేతపదం: { $password }
javascriptRequired = Firefox Sendకి జావాస్క్రిప్టు కావాలి
whyJavascript = Firefox Sendకి జావాస్క్రిప్టు ఎందుకు కావాలి?
enableJavascript = జావాస్క్రిప్టు చేతనంచేసి మళ్ళీ ప్రయత్నించండి.
# A short representation of a countdown timer containing the number of hours and minutes remaining as digits, example "13h 47m"
expiresHoursMinutes = { $hours }గం { $minutes }ని
# A short representation of a countdown timer containing the number of minutes remaining as digits, example "56m"
expiresMinutes = { $minutes }ని
# A short status message shown when a password is successfully set
passwordIsSet = సంకేతపదం అమరింది
# A short status message shown when the user enters a long password
maxPasswordLength = సంకేతపదం గరిష్ఠ పొడవు: { $length }
# A short status message shown when there was an error setting the password
passwordSetError = ఈ సంకేతపదం పెట్టలేకపోయాం