Compare commits

..

82 Commits
8.15.x ... main

Author SHA1 Message Date
Fedor Indutny
c0019a1079 v8.19.0-alpha.1
Some checks failed
CI / Danger (push) Has been cancelled
CI / Dependencies (push) Has been cancelled
CI / Lint (push) Has been cancelled
Commits Check / Commit Title Check (push) Has been cancelled
CI / Sticker Creator (push) Has been cancelled
CI / Storybook (push) Has been cancelled
CI / Benchmark (10, 500, 500, 2, 500, largeGroupSendWithBlocks, 50, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (500, 50, 2, 500, largeGroupSend, 20, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (500, groupSend, 100, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (backup, ts/test-mock/benchmarks/backup_bench.node.js) (push) Has been cancelled
CI / Benchmark (callHistorySearch, 100, ts/test-mock/benchmarks/call_history_search_bench.node.js) (push) Has been cancelled
CI / Benchmark (convoOpen, 100, ts/test-mock/benchmarks/convo_open_bench.node.js) (push) Has been cancelled
CI / Benchmark (send, 100, ts/test-mock/benchmarks/send_bench.node.js) (push) Has been cancelled
CI / Benchmark (startup, 10, ts/test-mock/benchmarks/startup_bench.node.js) (push) Has been cancelled
CI / MacOS (push) Has been cancelled
CI / Linux (arm64, ubuntu-22.04-arm64-4-cores) (push) Has been cancelled
CI / Check Min OS Version (ubuntu-latest) (push) Has been cancelled
CI / Check Min OS Version (windows-latest) (push) Has been cancelled
CI / Linux (x64, ubuntu-22.04-8-cores) (push) Has been cancelled
CI / Windows (push) Has been cancelled
CI / Mock Tests (0) (push) Has been cancelled
CI / Mock Tests (1) (push) Has been cancelled
CI / Mock Tests (2) (push) Has been cancelled
CI / Mock Tests (3) (push) Has been cancelled
CI / Check Min OS Version (macos-latest) (push) Has been cancelled
CI / Auto Merge Ready (push) Has been cancelled
2026-06-24 15:22:46 -07:00
Fedor Indutny
21f819184d Update DNS fallback
Some checks failed
CI / Lint (push) Has been cancelled
CI / Sticker Creator (push) Has been cancelled
CI / Danger (push) Has been cancelled
CI / Dependencies (push) Has been cancelled
CI / Storybook (push) Has been cancelled
CI / Benchmark (10, 500, 500, 2, 500, largeGroupSendWithBlocks, 50, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (500, 50, 2, 500, largeGroupSend, 20, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (500, groupSend, 100, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (backup, ts/test-mock/benchmarks/backup_bench.node.js) (push) Has been cancelled
CI / Benchmark (callHistorySearch, 100, ts/test-mock/benchmarks/call_history_search_bench.node.js) (push) Has been cancelled
CI / Benchmark (convoOpen, 100, ts/test-mock/benchmarks/convo_open_bench.node.js) (push) Has been cancelled
CI / Benchmark (send, 100, ts/test-mock/benchmarks/send_bench.node.js) (push) Has been cancelled
CI / Benchmark (startup, 10, ts/test-mock/benchmarks/startup_bench.node.js) (push) Has been cancelled
Commits Check / Commit Title Check (push) Has been cancelled
CI / MacOS (push) Has been cancelled
CI / Linux (arm64, ubuntu-22.04-arm64-4-cores) (push) Has been cancelled
CI / Linux (x64, ubuntu-22.04-8-cores) (push) Has been cancelled
CI / Windows (push) Has been cancelled
CI / Check Min OS Version (macos-latest) (push) Has been cancelled
CI / Check Min OS Version (ubuntu-latest) (push) Has been cancelled
CI / Check Min OS Version (windows-latest) (push) Has been cancelled
CI / Mock Tests (0) (push) Has been cancelled
CI / Mock Tests (1) (push) Has been cancelled
CI / Mock Tests (2) (push) Has been cancelled
CI / Mock Tests (3) (push) Has been cancelled
CI / Auto Merge Ready (push) Has been cancelled
2026-06-24 15:22:45 -07:00
Fedor Indutny
3ee1058f7f Update strings 2026-06-24 15:22:39 -07:00
Fedor Indutny
8107ab3ad8 Release notes for 8.17 2026-06-24 15:22:39 -07:00
Jamie
92012b3546
Init update-signal-symbols script 2026-06-24 14:58:51 -07:00
ayumi-signal
79004c7727
Add donation permit support 2026-06-24 13:58:26 -07:00
ayumi-signal
4492e2f799
Fix deprecated name field in donation config 2026-06-24 20:26:43 +00:00
Fedor Indutny
d553336adc
Fix crash on Linux when calling memoryUsage 2026-06-24 13:24:03 -07:00
Fedor Indutny
86d105dea0
Update copy and UI for MAS 2026-06-24 13:20:50 -07:00
trevor-signal
83617e3ff3
Improve incoming call start behavior 2026-06-24 09:44:42 -07:00
ayumi-signal
3dfc580a92
Ensure consistent sticker pack order when importing from storage 2026-06-24 08:58:20 -07:00
trevor-signal
21bca063a7
Improve handling of invalid title transition and contact messages 2026-06-24 13:39:34 +00:00
andrew-signal
93cbb121f1
Update libsignal to v0.96.3 2026-06-24 01:41:08 +00:00
Fedor Indutny
5331862e44
Update singleArchFiles 2026-06-23 12:34:25 -07:00
trevor-signal
d829a84af9
Quill custom blot improvements 2026-06-24 05:09:59 +10:00
trevor-signal
7c467ef85c
Update pinnedMessageLimit flag name 2026-06-23 18:53:37 +00:00
Fedor Indutny
c6e087b842
Include .node files from updated mac-screen-share 2026-06-23 18:41:15 +00:00
ayumi-signal
83dcbfb143
Update libsignal to v0.96.2 2026-06-24 03:06:35 +10:00
Jamie
72afecc4f3
Wrap labels in AxoStackedButton 2026-06-22 12:23:36 -07:00
Fedor Indutny
2edee6f807
Update mac-screen-share/windows-notifications
Co-authored-by: Backport Bot <backport-bot@signal.org>
2026-06-22 11:13:41 -07:00
Jamie
dfec1ef0fb
accessibility: silence relative timestamp screen reader announcements
Co-authored-by: UlisesMilani <ulisesmilani@gmail.com>
Co-authored-by: Backport Bot <backport-bot@signal.org>
2026-06-22 11:01:24 -07:00
Jamie
eab19262cb
Upgrade audit deps 2026-06-22 10:48:25 -07:00
Fedor Indutny
a36e7aad48
Update sqlcipher to 3.3.9 2026-06-18 10:55:51 -07:00
trevor-signal
90ae26db67
Fix test-electron glob to include .tsx files 2026-06-18 11:47:18 -04:00
trevor-signal
4c4b2aa353
Update local call history when call is auto-rejected 2026-06-17 16:59:46 -07:00
ayumi-signal
240a262285
Fix MediaEditor CompositionInput enter key so it saves changes 2026-06-17 16:59:28 -07:00
Jamie Kyle
c6996e6184 v8.18.0-alpha.1
Some checks failed
CI / Dependencies (push) Has been cancelled
CI / Lint (push) Has been cancelled
CI / Sticker Creator (push) Has been cancelled
CI / Danger (push) Has been cancelled
CI / Storybook (push) Has been cancelled
CI / Benchmark (10, 500, 500, 2, 500, largeGroupSendWithBlocks, 50, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (500, 50, 2, 500, largeGroupSend, 20, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (500, groupSend, 100, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (backup, ts/test-mock/benchmarks/backup_bench.node.js) (push) Has been cancelled
CI / Benchmark (callHistorySearch, 100, ts/test-mock/benchmarks/call_history_search_bench.node.js) (push) Has been cancelled
CI / Benchmark (convoOpen, 100, ts/test-mock/benchmarks/convo_open_bench.node.js) (push) Has been cancelled
CI / Benchmark (send, 100, ts/test-mock/benchmarks/send_bench.node.js) (push) Has been cancelled
CI / Benchmark (startup, 10, ts/test-mock/benchmarks/startup_bench.node.js) (push) Has been cancelled
Commits Check / Commit Title Check (push) Has been cancelled
CI / MacOS (push) Has been cancelled
CI / Linux (arm64, ubuntu-22.04-arm64-4-cores) (push) Has been cancelled
CI / Mock Tests (1) (push) Has been cancelled
CI / Linux (x64, ubuntu-22.04-8-cores) (push) Has been cancelled
CI / Windows (push) Has been cancelled
CI / Mock Tests (0) (push) Has been cancelled
CI / Mock Tests (2) (push) Has been cancelled
CI / Mock Tests (3) (push) Has been cancelled
CI / Check Min OS Version (macos-latest) (push) Has been cancelled
CI / Check Min OS Version (ubuntu-latest) (push) Has been cancelled
CI / Check Min OS Version (windows-latest) (push) Has been cancelled
CI / Auto Merge Ready (push) Has been cancelled
2026-06-17 16:03:57 -07:00
Jamie Kyle
c80b7e2744 Update DNS fallback
Some checks failed
CI / Dependencies (push) Has been cancelled
CI / Lint (push) Has been cancelled
CI / Sticker Creator (push) Has been cancelled
CI / Danger (push) Has been cancelled
CI / Storybook (push) Has been cancelled
CI / Benchmark (10, 500, 500, 2, 500, largeGroupSendWithBlocks, 50, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (500, 50, 2, 500, largeGroupSend, 20, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (500, groupSend, 100, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
CI / Benchmark (backup, ts/test-mock/benchmarks/backup_bench.node.js) (push) Has been cancelled
CI / Benchmark (callHistorySearch, 100, ts/test-mock/benchmarks/call_history_search_bench.node.js) (push) Has been cancelled
CI / Benchmark (convoOpen, 100, ts/test-mock/benchmarks/convo_open_bench.node.js) (push) Has been cancelled
CI / Benchmark (send, 100, ts/test-mock/benchmarks/send_bench.node.js) (push) Has been cancelled
CI / Benchmark (startup, 10, ts/test-mock/benchmarks/startup_bench.node.js) (push) Has been cancelled
Commits Check / Commit Title Check (push) Has been cancelled
CI / MacOS (push) Has been cancelled
CI / Linux (arm64, ubuntu-22.04-arm64-4-cores) (push) Has been cancelled
CI / Linux (x64, ubuntu-22.04-8-cores) (push) Has been cancelled
CI / Windows (push) Has been cancelled
CI / Mock Tests (0) (push) Has been cancelled
CI / Mock Tests (1) (push) Has been cancelled
CI / Mock Tests (2) (push) Has been cancelled
CI / Mock Tests (3) (push) Has been cancelled
CI / Check Min OS Version (macos-latest) (push) Has been cancelled
CI / Check Min OS Version (ubuntu-latest) (push) Has been cancelled
CI / Check Min OS Version (windows-latest) (push) Has been cancelled
CI / Auto Merge Ready (push) Has been cancelled
2026-06-17 16:03:57 -07:00
Jamie Kyle
55c5c00e26 Update strings 2026-06-17 16:03:02 -07:00
Jamie Kyle
9be0fabd94 Update release notes 2026-06-17 16:03:02 -07:00
trevor-signal
97721dff60
Update to latest AccountRecord proto 2026-06-17 14:57:36 -04:00
trevor-signal
4aca3b9445
Avoid toasting on remote config changes when linking as new device 2026-06-17 14:54:38 -04:00
Jamie
80fb55fed0
Add toast for sticker creator for invalid file formats 2026-06-17 11:51:16 -07:00
Jamie
cb4fac7bb4
Fix highlight when scrolling to unloaded pinned message 2026-06-17 11:17:36 -07:00
Fedor Indutny
49d87a5f6f
Re-enable requestSingleInstanceLock for MAS 2026-06-17 17:30:58 +00:00
Jamie
6c37a4005b
Remove plaintextExport feature flag 2026-06-17 10:18:04 -07:00
Jamie
86c2a8420d
Fix jumbomoji for messages with whitespace 2026-06-17 10:17:13 -07:00
Fedor Indutny
d0235ff8f1
Fix dependency errors 2026-06-17 10:14:25 -07:00
trevor-signal
cfe2193db0
Harden attachment file ref-counting when reusing files on disk 2026-06-17 12:52:25 -04:00
trevor-signal
7b1db7325c
Request backfill and skip queueing for undownloadable attachments 2026-06-17 13:55:11 +00:00
Jamie
39a851c4c4
Fix sticker creator localization
Co-authored-by: Fedor Indutny <indutny@signal.org>
2026-06-17 05:18:46 +00:00
Jamie
734f710345
Disable text selection in sticker creator
Co-authored-by: Fedor Indutny <indutny@signal.org>
2026-06-17 05:15:08 +00:00
Fedor Indutny
12ba35bcd5
Update yauzl to 3.4.0 2026-06-16 22:31:29 +00:00
trevor-signal
9ba4145f00
Pin node-gyp to fix windows CI
Co-authored-by: Fedor Indutny <indutny@signal.org>
2026-06-16 22:18:49 +00:00
trevor-signal
a23020d18a
Fix document ordering in All Media gallery 2026-06-15 15:36:12 -07:00
Fedor Indutny
4c3ec21815
More localization strings for MAS 2026-06-15 15:35:47 -07:00
Fedor Indutny
e74e4d1e02
Simplify CI dependencies 2026-06-15 15:19:14 -07:00
Fedor Indutny
128e6e1e5e
Get/push MAS strings 2026-06-15 13:45:30 -07:00
Fedor Indutny
8853dead2b
Fix boolean condition in remove-strings 2026-06-15 13:42:13 -07:00
Fedor Indutny
fd1e60d46e
Add package.json version tag for MAS builds
Co-authored-by: ayumi-signal <143036029+ayumi-signal@users.noreply.github.com>
2026-06-15 12:47:30 -07:00
trevor-signal
04a18e7812
Show system contact icon in GroupMembershipList 2026-06-13 04:34:03 +10:00
trevor-signal
ab91e69cac
Respect global pinned chat remoteConfig value 2026-06-13 04:13:30 +10:00
Fedor Indutny
8140261b5b
Support building for MAS 2026-06-12 09:59:04 -07:00
Fedor Indutny
01dde9aac3
Move windows-ucv into the monorepo 2026-06-11 16:05:04 -07:00
trevor-signal
1db0ad06b2
Simplify recovery key warning dialogs 2026-06-11 13:13:25 -07:00
ayumi-signal
12c7df49f3
Refresh StickerManager to use design system components
Co-authored-by: trevor-signal <131492920+trevor-signal@users.noreply.github.com>
2026-06-11 13:13:13 -07:00
Fedor Indutny
108241e477 v8.17.0-alpha.1
Some checks failed
Benchmark / Benchmark (10, 500, 500, 2, 500, largeGroupSendWithBlocks, 50, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (500, 50, 2, 500, largeGroupSend, 20, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (500, groupSend, 100, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (backup, ts/test-mock/benchmarks/backup_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (callHistorySearch, 100, ts/test-mock/benchmarks/call_history_search_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (convoOpen, 100, ts/test-mock/benchmarks/convo_open_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (send, 100, ts/test-mock/benchmarks/send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (startup, 10, ts/test-mock/benchmarks/startup_bench.node.js) (push) Has been cancelled
CI / Dependencies (push) Has been cancelled
CI / Lint (push) Has been cancelled
CI / Sticker Creator (push) Has been cancelled
Commits Check / Commit Title Check (push) Has been cancelled
Stories / Storybook (push) Has been cancelled
CI / MacOS (push) Has been cancelled
CI / Linux (arm64, ubuntu-22.04-arm64-4-cores) (push) Has been cancelled
CI / Linux (x64, ubuntu-22.04-8-cores) (push) Has been cancelled
CI / Windows (push) Has been cancelled
CI / Mock Tests (0) (push) Has been cancelled
CI / Mock Tests (1) (push) Has been cancelled
CI / Mock Tests (2) (push) Has been cancelled
CI / Mock Tests (3) (push) Has been cancelled
CI / Check Min OS Version (macos-latest) (push) Has been cancelled
CI / Check Min OS Version (ubuntu-latest) (push) Has been cancelled
CI / Check Min OS Version (windows-latest) (push) Has been cancelled
2026-06-10 14:38:25 -07:00
Fedor Indutny
f5020bde61 Update DNS fallback
Some checks failed
Benchmark / Benchmark (10, 500, 500, 2, 500, largeGroupSendWithBlocks, 50, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (500, 50, 2, 500, largeGroupSend, 20, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (500, groupSend, 100, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (backup, ts/test-mock/benchmarks/backup_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (callHistorySearch, 100, ts/test-mock/benchmarks/call_history_search_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (convoOpen, 100, ts/test-mock/benchmarks/convo_open_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (send, 100, ts/test-mock/benchmarks/send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (startup, 10, ts/test-mock/benchmarks/startup_bench.node.js) (push) Has been cancelled
CI / Dependencies (push) Has been cancelled
CI / Lint (push) Has been cancelled
CI / Sticker Creator (push) Has been cancelled
Commits Check / Commit Title Check (push) Has been cancelled
Stories / Storybook (push) Has been cancelled
CI / MacOS (push) Has been cancelled
CI / Linux (arm64, ubuntu-22.04-arm64-4-cores) (push) Has been cancelled
CI / Linux (x64, ubuntu-22.04-8-cores) (push) Has been cancelled
CI / Windows (push) Has been cancelled
CI / Mock Tests (0) (push) Has been cancelled
CI / Mock Tests (1) (push) Has been cancelled
CI / Mock Tests (2) (push) Has been cancelled
CI / Mock Tests (3) (push) Has been cancelled
CI / Check Min OS Version (macos-latest) (push) Has been cancelled
CI / Check Min OS Version (ubuntu-latest) (push) Has been cancelled
CI / Check Min OS Version (windows-latest) (push) Has been cancelled
2026-06-10 14:38:25 -07:00
Fedor Indutny
16239c00b8 Update strings 2026-06-10 14:37:50 -07:00
Fedor Indutny
a4888e69bf Release notes for 8.15 2026-06-10 14:37:50 -07:00
Fedor Indutny
2a437ce2e2
Revert "Update electron to 42.4.0" 2026-06-10 18:44:44 +00:00
trevor-signal
8d32b9cf9d
Autofocus on close button when opening lightbox 2026-06-09 22:56:26 -04:00
trevor-signal
4e6edd921a
Require confirmation on recovery key paste 2026-06-09 22:43:36 -04:00
andrew-signal
cb9b9cacaf
Update libsignal to v0.95.0
Co-authored-by: Fedor Indutny <indutny@signal.org>
2026-06-10 00:46:27 +00:00
emir-signal
e11f4e8651
Update to RingRTC v2.69.3 2026-06-09 17:16:05 -07:00
ayumi-signal
48f7e72cbd
Linux AppImage: Use static runtime 2026-06-09 14:28:07 -07:00
Fedor Indutny
6d47e89e38
Update electron to 42.4.0 2026-06-09 13:56:21 -07:00
trevor-signal
6a31fbc05c
Improve error dialogs during local backups setup 2026-06-09 16:36:09 -04:00
Jamie
8c5073512f
Add SKIP_VERIFY_DEPS_BEFORE_RUN option to pnpm tasks 2026-06-09 12:49:00 -07:00
Fedor Indutny
d7082bad17
Add 5% jitter to CheckScheduler 2026-06-09 18:51:28 +00:00
trevor-signal
bd9a23c5ef
Improve call screen header buttons and context menu 2026-06-09 12:39:14 -04:00
Jamie
6914bf38f9
Fix padding of edit history dialog 2026-06-09 11:11:23 +10:00
Jamie
21e2b03a92
Upgrade pnpm 2026-06-08 13:12:24 -07:00
trevor-signal
e1e09e3a8b
Fix isPermanentlyUndownloadable check for outgoing attachments 2026-06-08 12:29:36 -07:00
ayumi-signal
ffd3b9ea35
Save JPEG files with jpg extension and update default filename 2026-06-08 14:33:30 -04:00
trevor-signal
2f772e96ab
Add warning dialog when copying recovery key 2026-06-05 13:38:53 -04:00
ayumi-signal
4eddde9922
Fix padding in CallLinkEditModal 2026-06-05 13:36:38 -04:00
trevor-signal
add9b36540
Use libsignal API for 1:1 sends 2026-06-05 09:18:33 +10:00
ayumi-signal
34dd2c7f70
[signalapp/Signal-Desktop#7904] Skip edit-previous shortcut during IME composition
Co-authored-by: ayu <ayu@ayu.dev>
2026-06-04 11:17:10 -07:00
ayumi-signal
8e1728ff63
[signalapp/Signal-Desktop#7202] Add Linux arm64 to CI pipeline
Co-authored-by: Dennis Ameling <dennis@dennisameling.com>
2026-06-04 10:33:07 -07:00
ayumi-signal
37b5b39a3e
Update sticker pack link preview in chat and composer
Co-authored-by: Jamie Kyle <jamie@signal.org>
2026-06-03 17:47:08 -07:00
ayumi-signal
a0af83d748 v8.16.0-alpha.1
Some checks failed
Benchmark / Benchmark (convoOpen, 100, ts/test-mock/benchmarks/convo_open_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (send, 100, ts/test-mock/benchmarks/send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (startup, 10, ts/test-mock/benchmarks/startup_bench.node.js) (push) Has been cancelled
CI / Lint (push) Has been cancelled
Commits Check / Commit Title Check (push) Has been cancelled
Stories / Storybook (push) Has been cancelled
Benchmark / Benchmark (10, 500, 500, 2, 500, largeGroupSendWithBlocks, 50, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (500, 50, 2, 500, largeGroupSend, 20, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (500, groupSend, 100, ts/test-mock/benchmarks/group_send_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (backup, ts/test-mock/benchmarks/backup_bench.node.js) (push) Has been cancelled
Benchmark / Benchmark (callHistorySearch, 100, ts/test-mock/benchmarks/call_history_search_bench.node.js) (push) Has been cancelled
CI / Sticker Creator (push) Has been cancelled
CI / MacOS (push) Has been cancelled
CI / Linux (push) Has been cancelled
CI / Windows (push) Has been cancelled
CI / Check Min OS Version (macos-latest) (push) Has been cancelled
CI / Mock Tests (0) (push) Has been cancelled
CI / Mock Tests (1) (push) Has been cancelled
CI / Mock Tests (2) (push) Has been cancelled
CI / Mock Tests (3) (push) Has been cancelled
CI / Check Min OS Version (ubuntu-latest) (push) Has been cancelled
CI / Check Min OS Version (windows-latest) (push) Has been cancelled
2026-06-03 14:40:46 -07:00
479 changed files with 12794 additions and 6005 deletions

View File

@ -1,168 +0,0 @@
# Copyright 2020 Signal Messenger, LLC
# SPDX-License-Identifier: AGPL-3.0-only
name: Benchmark
on:
push:
branches:
- development
- main
- '[0-9]+.[0-9]+.x'
pull_request:
schedule:
- cron: '0 */12 * * *'
jobs:
linux:
name: Benchmark
strategy:
matrix:
metric:
- startup
- send
- groupSend
- largeGroupSendWithBlocks
- largeGroupSend
- convoOpen
- callHistorySearch
- backup
include:
- metric: startup
script: ts/test-mock/benchmarks/startup_bench.node.js
runCount: 10
- metric: send
script: ts/test-mock/benchmarks/send_bench.node.js
runCount: 100
- metric: groupSend
script: ts/test-mock/benchmarks/group_send_bench.node.js
runCount: 100
conversationSize: 500
- metric: largeGroupSendWithBlocks
script: ts/test-mock/benchmarks/group_send_bench.node.js
runCount: 50
conversationSize: 500
groupSize: 500
contactCount: 500
blockedCount: 10
discardCount: 2
- metric: largeGroupSend
script: ts/test-mock/benchmarks/group_send_bench.node.js
runCount: 20
conversationSize: 50
groupSize: 500
contactCount: 500
discardCount: 2
- metric: convoOpen
script: ts/test-mock/benchmarks/convo_open_bench.node.js
runCount: 100
- metric: callHistorySearch
script: ts/test-mock/benchmarks/call_history_search_bench.node.js
runCount: 100
- metric: backup
script: ts/test-mock/benchmarks/backup_bench.node.js
runs-on: ubuntu-22.04-8-cores
if: ${{ github.repository == 'signalapp/Signal-Desktop-Private' && (!github.event.schedule || github.ref == 'refs/heads/main') }}
timeout-minutes: 30
steps:
- name: Get system specs
run: lsb_release -a
- name: Get other system specs
run: uname -a
- name: Clone Desktop repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
# - name: Setup sccache
# uses: mozilla-actions/sccache-action@054db53350805f83040bf3e6e9b8cf5a139aa7c9 # v0.0.7
# - name: Restore sccache
# uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
# id: cache-sccache
# with:
# path: ${{ env.SCCACHE_PATH }}
# key: sccache-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml', 'patches/**') }}
- name: Setup pnpm
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4
- name: Setup node.js
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
with:
node-version-file: '.nvmrc'
cache: 'pnpm'
cache-dependency-path: 'pnpm-lock.yaml'
- name: Cache .electron-gyp
uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
with:
path: ~/.electron-gyp
key: electron-gyp-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }}
- name: Install xvfb and libpulse0
run: sudo apt-get install xvfb libpulse0 || (sudo apt-get update && sudo apt-get install xvfb libpulse0)
- name: Install Desktop node_modules
run: pnpm install
env:
# CC: sccache gcc
# CXX: sccache g++
# SCCACHE_GHA_ENABLED: "true"
NPM_CONFIG_LOGLEVEL: verbose
# We rebuild in `electron:install-app-deps` that doesn't look at this
# environment variable
NPM_CONFIG_NODE_GYP: echo
- name: Build typescript
run: pnpm run generate
- name: Create preload cache
run: xvfb-run --auto-servernum pnpm run build:preload-cache
- name: Set MAX_CYCLES=2 on main
if: ${{ github.ref == 'refs/heads/main' }}
run: |
echo "MAX_CYCLES=2" >> "$GITHUB_ENV"
- name: Run ${{ matrix.metric }}
run: |
set -o pipefail
xvfb-run --auto-servernum ./node_modules/.bin/tsx \
${{ matrix.script }} | tee benchmark.log
timeout-minutes: 10
env:
NODE_ENV: production
ELECTRON_ENABLE_STACK_DUMPING: on
DEBUG: 'mock:benchmarks'
ARTIFACTS_DIR: artifacts/${{ matrix.metric }}
GROUP_SIZE: ${{ matrix.groupSize }}
CONTACT_COUNT: ${{ matrix.contactCount }}
BLOCKED_COUNT: ${{ matrix.blockedCount }}
DISCARD_COUNT: ${{ matrix.discardCount }}
RUN_COUNT: ${{ matrix.runCount }}
CONVERSATION_SIZE: ${{ matrix.conversationSize }}
- name: Upload benchmark logs on failure
if: failure()
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: logs
path: artifacts
- name: Clone benchmark repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
with:
repository: 'signalapp/Signal-Desktop-Benchmarks-Private'
path: 'benchmark-results'
token: ${{ secrets.AUTOMATED_GITHUB_PAT }}
- name: Build benchmark repo
working-directory: benchmark-results
run: |
pnpm install
pnpm run build
- name: Publish
working-directory: benchmark-results
run: |
node ./bin/publish.js ../benchmark.log desktop.ci.performance.${{ matrix.metric }}
env:
OTEL_EXPORTER_OTLP_ENDPOINT: ${{ secrets.OTEL_EXPORTER_OTLP_ENDPOINT }}
OTEL_EXPORTER_OTLP_PROTOCOL: ${{ secrets.OTEL_EXPORTER_OTLP_PROTOCOL }}
OTEL_EXPORTER_OTLP_HEADERS: ${{ secrets.OTEL_EXPORTER_OTLP_HEADERS }}

View File

@ -10,7 +10,26 @@ on:
- '[0-9]+.[0-9]+.x'
pull_request:
permissions:
contents: read
jobs:
audit:
name: Dependencies
runs-on: ubuntu-22.04-8-cores
timeout-minutes: 30
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- name: Setup pnpm
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4
- name: Setup node.js
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
with:
node-version-file: '.nvmrc'
- run: node --test .pnpmfile.mjs
- run: pnpm audit --audit-level=high
- run: pnpm audit signatures
- run: pnpm dedupe --check
lint:
name: Lint
runs-on: ubuntu-22.04-8-cores
@ -268,7 +287,6 @@ jobs:
needs: lint
runs-on: windows-latest-8-cores
timeout-minutes: 30
steps:
- run: systeminfo
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
@ -372,8 +390,8 @@ jobs:
name: Mock Tests
needs: lint
continue-on-error: true
strategy:
fail-fast: false
matrix:
workerIndex: [0, 1, 2, 3]
@ -477,8 +495,8 @@ jobs:
name: Check Min OS Version
needs: lint
continue-on-error: true
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
@ -527,3 +545,242 @@ jobs:
- name: Run OS version check
run: |
node scripts/check-min-os-version.mjs
danger:
name: Danger
runs-on: ubuntu-latest
timeout-minutes: 30
if: github.event_name == 'pull_request'
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- name: Setup pnpm
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4
- name: Setup node.js
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
with:
node-version-file: '.nvmrc'
package-manager-cache: false # Avoid cache key clashes
- name: Install danger node_modules
run: pnpm install
working-directory: danger
- name: Run DangerJS
run: pnpm run danger:ci
working-directory: danger
env:
DANGER_GITHUB_API_TOKEN: ${{ secrets.AUTOMATED_GITHUB_PAT }}
storybook:
name: Storybook
runs-on: ubuntu-latest-8-cores
timeout-minutes: 30
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- name: Setup pnpm
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4
- name: Setup node.js
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
with:
node-version-file: '.nvmrc'
cache: 'pnpm'
cache-dependency-path: 'pnpm-lock.yaml'
- name: Cache .electron-gyp
uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
with:
path: ~/.electron-gyp
key: electron-gyp-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }}
# - name: Setup sccache
# uses: mozilla-actions/sccache-action@054db53350805f83040bf3e6e9b8cf5a139aa7c9 # v0.0.7
# - name: Restore sccache
# uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
# id: cache-sccache
# with:
# path: ${{ env.SCCACHE_PATH }}
# key: sccache-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml', 'patches/**') }}
- name: Install Desktop node_modules
run: pnpm install
env:
# CC: sccache gcc
# CXX: sccache g++
# SCCACHE_GHA_ENABLED: "true"
NPM_CONFIG_LOGLEVEL: verbose
# We rebuild in `electron:install-app-deps` that doesn't look at this
# environment variable
NPM_CONFIG_NODE_GYP: echo
- run: pnpm run build:storybook
- run: ./node_modules/.bin/playwright install chromium
- run: ./node_modules/.bin/run-p --race test:storybook:serve test:storybook:test
benchmark:
name: Benchmark
strategy:
matrix:
metric:
- startup
- send
- groupSend
- largeGroupSendWithBlocks
- largeGroupSend
- convoOpen
- callHistorySearch
- backup
include:
- metric: startup
script: ts/test-mock/benchmarks/startup_bench.node.js
runCount: 10
- metric: send
script: ts/test-mock/benchmarks/send_bench.node.js
runCount: 100
- metric: groupSend
script: ts/test-mock/benchmarks/group_send_bench.node.js
runCount: 100
conversationSize: 500
- metric: largeGroupSendWithBlocks
script: ts/test-mock/benchmarks/group_send_bench.node.js
runCount: 50
conversationSize: 500
groupSize: 500
contactCount: 500
blockedCount: 10
discardCount: 2
- metric: largeGroupSend
script: ts/test-mock/benchmarks/group_send_bench.node.js
runCount: 20
conversationSize: 50
groupSize: 500
contactCount: 500
discardCount: 2
- metric: convoOpen
script: ts/test-mock/benchmarks/convo_open_bench.node.js
runCount: 100
- metric: callHistorySearch
script: ts/test-mock/benchmarks/call_history_search_bench.node.js
runCount: 100
- metric: backup
script: ts/test-mock/benchmarks/backup_bench.node.js
runs-on: ubuntu-22.04-8-cores
if: ${{ github.repository == 'signalapp/Signal-Desktop-Private' }}
timeout-minutes: 30
steps:
- name: Get system specs
run: lsb_release -a
- name: Get other system specs
run: uname -a
- name: Clone Desktop repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
# - name: Setup sccache
# uses: mozilla-actions/sccache-action@054db53350805f83040bf3e6e9b8cf5a139aa7c9 # v0.0.7
# - name: Restore sccache
# uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
# id: cache-sccache
# with:
# path: ${{ env.SCCACHE_PATH }}
# key: sccache-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml', 'patches/**') }}
- name: Setup pnpm
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4
- name: Setup node.js
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
with:
node-version-file: '.nvmrc'
cache: 'pnpm'
cache-dependency-path: 'pnpm-lock.yaml'
- name: Cache .electron-gyp
uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
with:
path: ~/.electron-gyp
key: electron-gyp-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }}
- name: Install xvfb and libpulse0
run: sudo apt-get install xvfb libpulse0 || (sudo apt-get update && sudo apt-get install xvfb libpulse0)
- name: Install Desktop node_modules
run: pnpm install
env:
# CC: sccache gcc
# CXX: sccache g++
# SCCACHE_GHA_ENABLED: "true"
NPM_CONFIG_LOGLEVEL: verbose
# We rebuild in `electron:install-app-deps` that doesn't look at this
# environment variable
NPM_CONFIG_NODE_GYP: echo
- name: Build typescript
run: pnpm run generate
- name: Create preload cache
run: xvfb-run --auto-servernum pnpm run build:preload-cache
- name: Set MAX_CYCLES=2 on main
if: ${{ github.ref == 'refs/heads/main' }}
run: |
echo "MAX_CYCLES=2" >> "$GITHUB_ENV"
- name: Run ${{ matrix.metric }}
run: |
set -o pipefail
xvfb-run --auto-servernum ./node_modules/.bin/tsx \
${{ matrix.script }} | tee benchmark.log
timeout-minutes: 10
env:
NODE_ENV: production
ELECTRON_ENABLE_STACK_DUMPING: on
DEBUG: 'mock:benchmarks'
ARTIFACTS_DIR: artifacts/${{ matrix.metric }}
GROUP_SIZE: ${{ matrix.groupSize }}
CONTACT_COUNT: ${{ matrix.contactCount }}
BLOCKED_COUNT: ${{ matrix.blockedCount }}
DISCARD_COUNT: ${{ matrix.discardCount }}
RUN_COUNT: ${{ matrix.runCount }}
CONVERSATION_SIZE: ${{ matrix.conversationSize }}
- name: Upload benchmark logs on failure
if: failure()
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
name: logs
path: artifacts
- name: Clone benchmark repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
with:
repository: 'signalapp/Signal-Desktop-Benchmarks-Private'
path: 'benchmark-results'
token: ${{ secrets.AUTOMATED_GITHUB_PAT }}
- name: Build benchmark repo
working-directory: benchmark-results
run: |
pnpm install
pnpm run build
- name: Publish
working-directory: benchmark-results
run: |
node ./bin/publish.js ../benchmark.log desktop.ci.performance.${{ matrix.metric }}
env:
OTEL_EXPORTER_OTLP_ENDPOINT: ${{ secrets.OTEL_EXPORTER_OTLP_ENDPOINT }}
OTEL_EXPORTER_OTLP_PROTOCOL: ${{ secrets.OTEL_EXPORTER_OTLP_PROTOCOL }}
OTEL_EXPORTER_OTLP_HEADERS: ${{ secrets.OTEL_EXPORTER_OTLP_HEADERS }}
auto-merge-ready:
if: ${{ github.event_name == 'pull_request' && github.repository == 'signalapp/Signal-Desktop-Private' }}
name: Auto Merge Ready
needs:
- lint
- linux
- windows
- sticker-creator
- mock-tests
- check-min-os-version
- danger
- storybook
- benchmark
runs-on: ubuntu-latest
steps:
- name: Ok
run: echo ok

View File

@ -1,27 +0,0 @@
# Copyright 2020 Signal Messenger, LLC
# SPDX-License-Identifier: AGPL-3.0-only
name: Danger
on:
pull_request:
jobs:
danger:
name: Danger
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- name: Setup pnpm
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4
- name: Setup node.js
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
with:
node-version-file: '.nvmrc'
package-manager-cache: false # Avoid cache key clashes
- name: Install danger node_modules
run: (cd danger && pnpm install --ignore-workspace)
- name: Run DangerJS
run: pnpm run danger:ci
env:
DANGER_GITHUB_API_TOKEN: ${{ secrets.AUTOMATED_GITHUB_PAT }}

View File

@ -1,54 +0,0 @@
# Copyright 2023 Signal Messenger, LLC
# SPDX-License-Identifier: AGPL-3.0-only
name: Stories
on:
push:
branches:
- development
- main
- '[0-9]+.[0-9]+.x'
pull_request:
jobs:
test:
name: Storybook
runs-on: ubuntu-latest-8-cores
timeout-minutes: 30
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- name: Setup pnpm
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4
- name: Setup node.js
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
with:
node-version-file: '.nvmrc'
cache: 'pnpm'
cache-dependency-path: 'pnpm-lock.yaml'
- name: Cache .electron-gyp
uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
with:
path: ~/.electron-gyp
key: electron-gyp-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }}
# - name: Setup sccache
# uses: mozilla-actions/sccache-action@054db53350805f83040bf3e6e9b8cf5a139aa7c9 # v0.0.7
# - name: Restore sccache
# uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
# id: cache-sccache
# with:
# path: ${{ env.SCCACHE_PATH }}
# key: sccache-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml', 'patches/**') }}
- name: Install Desktop node_modules
run: pnpm install
env:
# CC: sccache gcc
# CXX: sccache g++
# SCCACHE_GHA_ENABLED: "true"
NPM_CONFIG_LOGLEVEL: verbose
# We rebuild in `electron:install-app-deps` that doesn't look at this
# environment variable
NPM_CONFIG_NODE_GYP: echo
- run: pnpm run build:storybook
- run: ./node_modules/.bin/playwright install chromium
- run: ./node_modules/.bin/run-p --race test:storybook:serve test:storybook:test

9
.npmrc
View File

@ -1,9 +0,0 @@
legacy-peer-deps=true
save-exact=true
public-hoist-pattern[]=*eslint-*
minimum-release-age=4320 # 3 days
minimum-release-age-exclude[]=@signalapp/*
minimum-release-age-exclude[]=electron
# one-time manually-reviewed exception for @indutny/protopiler@4.0.2
minimum-release-age-exclude[]=@indutny/protopiler

View File

@ -184,7 +184,6 @@ const DOM_PACKAGES = new Set([
'@storybook/addon-toolbars',
'@storybook/addon-viewport',
'@storybook/addon-webpack5-compiler-swc',
'@storybook/csf',
'@storybook/react',
'@storybook/react-webpack5',
'@storybook/test',

View File

@ -1704,6 +1704,7 @@
"danger/**",
"scripts/**",
"test/test.m",
".pnpmfile.mjs",
".babelrc.mjs",
".prettierrc.mjs",
".storybook/main.ts",
@ -1765,6 +1766,7 @@
"packages/**",
"scripts/**",
"test/test.mjs",
".pnpmfile.mjs",
".babelrc.mjs",
".prettierrc.mjs",
".stylelintrc.mjs",
@ -1778,6 +1780,15 @@
"signal-desktop/enforce-file-suffix": "off"
}
},
{
"files": ["packages/windows-ucv/**"],
"env": { "node": true },
"globals": {
"window": "readonly",
"process": "readonly",
"Buffer": "readonly"
}
},
{
"files": ["*.stories.tsx"],
"rules": {

269
.pnpmfile.mjs Normal file
View File

@ -0,0 +1,269 @@
// Copyright 2026 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
// @ts-check
//
// WARNING: Do not import (or even `import()`) any packages, they won't always be installed.
//
import { execSync } from 'node:child_process';
import { styleText } from 'node:util';
import { test } from 'node:test';
import assert from 'node:assert/strict';
/**
* From @pnpm/pnpmfile/lib/Hooks.d.ts
*
* @typedef {{
* deprecated?: boolean;
* }} PackageSnapshot
*
* @typedef {Record<string, PackageSnapshot>} PackageSnapshots
*
* @typedef {{
* packages?: PackageSnapshots
* }} LockfileObject
*
* @typedef {{
* log: (message: string) => void;
* }} HookContext
*
* @typedef {{
* verifyDepsBeforeRun?: unknown,
* }} Config
*
* @typedef {{
* afterAllResolved?: (
* lockfile: LockfileObject,
* context: HookContext,
* ) => LockfileObject | Promise<LockfileObject>;
* updateConfig?: (config: Config) => Config | Promise<Config>
* }} Hooks
*/
/**
* @param {boolean} condition
* @param {string} message
* @returns {asserts condition}
*/
// function assert(condition, message) {
// if (!condition) {
// throw new TypeError(message);
// }
// }
/**
* @param {string} message
*/
function formatError(message) {
return `${styleText(['bgRed', 'whiteBright'], '[ERROR]')} ${styleText('red', message)}`;
}
/** @type {any} */
let CACHED_WORKSPACE_CONFIG;
async function getWorkspaceConfig() {
if (CACHED_WORKSPACE_CONFIG == null) {
const stdout = execSync('pnpm config list --json', {
encoding: 'utf-8',
env: { PATH: process.env.PATH },
});
const config = JSON.parse(stdout);
CACHED_WORKSPACE_CONFIG = config;
}
return CACHED_WORKSPACE_CONFIG;
}
/**
* Samples:
* - "jest-process-manager@0.4.0"
* - "@jest/process-manager@0.4.0"
* - "jest-process-manager@0.4.0(debug@4.4.3)"
*
* @param {string} packagePath
*/
function parsePackagePath(packagePath) {
const truncateAt = packagePath.indexOf('(');
const packageSpec =
truncateAt === -1 ? packagePath : packagePath.slice(0, truncateAt);
const splitAt = packageSpec.lastIndexOf('@');
const name = packageSpec.slice(0, splitAt);
const version = packageSpec.slice(splitAt + 1);
return { name, version };
}
/**
* @typedef {{
* path: string,
* name: string,
* version: string,
* snapshot: PackageSnapshot,
* }} PackageSnapshotEntry
*/
/**
* @param {LockfileObject} lockfile
* @returns {ReadonlyArray<PackageSnapshotEntry>}
*/
function getPackages(lockfile) {
const { packages = {} } = lockfile;
return Object.keys(packages).map(path => {
const snapshot = packages[path];
const { name, version } = parsePackagePath(path);
return { path, name, version, snapshot };
});
}
/**
* Minimal semver support, only supports exact versions and `||`
* @param {string} version
* @param {string} range
*/
function satisfies(version, range) {
return range.split('||').some(choice => {
return choice.trim() === version;
});
}
/**
* @typedef {(lockfile: LockfileObject, context: HookContext) => Promise<boolean>} CustomCheck
*/
/** @type {CustomCheck} */
async function noDeprecatedPackages(lockfile, context) {
const config = await getWorkspaceConfig();
const packages = getPackages(lockfile);
const deprecated = packages.filter(pkg => {
if (!pkg.snapshot.deprecated) {
return false;
}
const allowed = config.allowedDeprecatedVersions?.[pkg.name];
if (allowed != null && satisfies(pkg.version, allowed)) {
return false;
}
return true;
});
const success = deprecated.length === 0;
if (!success) {
context.log('');
context.log(
formatError(
'Found deprecated packages, to ignore them add this to the pnpm-workspace.yaml file:'
)
);
context.log('');
context.log('allowedDeprecatedVersions:');
for (const pkg of deprecated) {
context.log(` '${pkg.name}': '${pkg.version}'`);
}
context.log('');
}
return success;
}
/** @type {ReadonlyArray<RegExp>} */
const RESTRICTED_DUPLICATE_DEPENDENCIES = [
// /^@signalapp\//,
// /^@indutny\//,
];
/**
* @param {string} name
* @returns {boolean}
*/
function isRestrictedDuplicateDependency(name) {
return RESTRICTED_DUPLICATE_DEPENDENCIES.some(regex => {
return regex.test(name);
});
}
/** @type {CustomCheck} */
async function restrictDuplicateDependencies(lockfile, context) {
const packages = getPackages(lockfile);
/** @type {Map<string, Set<string>>} */
const seen = new Map();
/** @type {Set<string>} */
const duplicates = new Set();
for (const pkg of packages) {
if (!isRestrictedDuplicateDependency(pkg.name)) {
continue;
}
let versions = seen.get(pkg.name);
if (versions != null) {
duplicates.add(pkg.name);
} else {
versions = new Set();
seen.set(pkg.name, versions);
}
versions.add(pkg.version);
}
const success = duplicates.size === 0;
if (!success) {
context.log('');
context.log(formatError('Found duplicate restricted packages:'));
context.log('');
for (const duplicate of duplicates) {
const versions = seen.get(duplicate);
assert(versions != null, `Missing package versions for ${duplicate}`);
context.log(` ${duplicate}: ${Array.from(versions).join(', ')}`);
}
context.log('');
}
return success;
}
/** @type {Hooks} */
export const hooks = {
async afterAllResolved(lockfile, context) {
const results = await Promise.all([
noDeprecatedPackages(lockfile, context),
restrictDuplicateDependencies(lockfile, context),
]);
const hasAnyFailures = results.includes(false);
if (hasAnyFailures) {
context.log(
formatError(
'pnpm install failed because of a custom check in .pnpmfile.mjs'
)
);
context.log('');
process.exit(1);
}
return lockfile;
},
updateConfig(config) {
return {
...config,
verifyDepsBeforeRun:
process.env.CI || process.env.SKIP_VERIFY_DEPS_BEFORE_RUN
? false
: config.verifyDepsBeforeRun,
};
},
};
if (process.env.NODE_TEST_CONTEXT) {
await test('noDeprecatedPackages', async () => {
const pkg = '@scope/pkg-name@1.0.0(@other-scope/other-pkg@2.0.0)';
const success = await noDeprecatedPackages(
{ packages: { [pkg]: { deprecated: true } } },
{ log: () => undefined }
);
assert(!success);
});
}

View File

@ -28,6 +28,7 @@ node_modules/**
packages/*/node_modules/**
packages/lame/wrapper.mjs
packages/lame/lame-*/
packages/windows-ucv/dist/**
danger/node_modules/**
sticker-creator/node_modules/**
components/**

View File

@ -4088,30 +4088,6 @@ Signal Desktop makes use of the following open source projects.
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
## @storybook/csf
MIT License
Copyright (c) 2022 CSF contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
## @storybook/react
License: MIT
@ -16642,7 +16618,7 @@ DEALINGS IN THE SOFTWARE.
```
## memmap2 0.9.9
## memmap2 0.9.11
```
Copyright (c) 2020 Yevhenii Reizner
@ -19611,7 +19587,7 @@ For more information on this, and how to apply and follow the GNU AGPL, see
```
## libsignal-account-keys 0.1.0, libsignal-core 0.1.0, libsignal-debug 0.89.2, mrp 2.69.3, protobuf 2.69.3, ringrtc 2.69.3, regex-aot 0.1.0, partial-default-derive 0.1.0, partial-default 0.1.0
## libsignal-account-keys 0.1.0, libsignal-core 0.1.0, libsignal-debug 0.89.2, mrp 2.69.4, protobuf 2.69.4, ringrtc 2.69.4, regex-aot 0.1.0, partial-default-derive 0.1.0, partial-default 0.1.0
```
GNU AFFERO GENERAL PUBLIC LICENSE
@ -20706,7 +20682,7 @@ THIS SOFTWARE.
```
## cubeb-core 0.34.0, cubeb-sys 0.34.0, cubeb 0.34.0
## cubeb-core 0.35.3, cubeb-sys 0.35.3, cubeb 0.35.3
```
Copyright © 2017 Mozilla Foundation

View File

@ -215,11 +215,20 @@ CREATE TABLE attachment_downloads_backup_stats (
```sql
CREATE TABLE attachments_protected_from_deletion (
path TEXT NOT NULL,
messageId TEXT NOT NULL,
PRIMARY KEY (path, messageId)
reuseToken TEXT NOT NULL,
PRIMARY KEY (path, reuseToken)
) STRICT
```
<details>
<summary>Index: attachments_protected_from_deletion → attachments_protected_from_deletion_reuseToken</summary>
```sql
CREATE INDEX attachments_protected_from_deletion_reuseToken ON attachments_protected_from_deletion (reuseToken)
```
</details>
<details>
<summary>Index: attachments_protected_from_deletion → sqlite_autoindex_attachments_protected_from_deletion_1</summary>
@ -1169,53 +1178,6 @@ CREATE INDEX message_attachments_thumbnailPath ON message_attachments (thumbnail
</details>
<details>
<summary>Trigger: message_attachments → stop_protecting_attachments_after_insert</summary>
```sql
CREATE TRIGGER stop_protecting_attachments_after_insert AFTER INSERT ON message_attachments BEGIN
DELETE FROM attachments_protected_from_deletion
WHERE
messageId IS NEW.messageId
AND path IN (
NEW.path,
NEW.thumbnailPath,
NEW.screenshotPath,
NEW.backupThumbnailPath
);
END
```
</details>
<details>
<summary>Trigger: message_attachments → stop_protecting_attachments_after_update</summary>
```sql
CREATE TRIGGER stop_protecting_attachments_after_update AFTER
UPDATE OF path,
thumbnailPath,
screenshotPath,
backupThumbnailPath ON message_attachments WHEN OLD.path IS NOT NEW.path
OR OLD.thumbnailPath IS NOT NEW.thumbnailPath
OR OLD.screenshotPath IS NOT NEW.screenshotPath
OR OLD.backupThumbnailPath IS NOT NEW.backupThumbnailPath BEGIN
DELETE FROM attachments_protected_from_deletion
WHERE
messageId IS NEW.messageId
AND path IN (
NEW.path,
NEW.thumbnailPath,
NEW.screenshotPath,
NEW.backupThumbnailPath
);
END
```
</details>
---
</details>

View File

@ -0,0 +1,21 @@
Signal is 'n boodskaptoepassing wat privaatheid as kernwaarde het. Dis gratis en maklik om te gebruik, met kragtige end-tot-end-enkriptering wat jou kletse en oproepe heeltemal privaat hou. Signal kan nie jou boodskappe lees of na jou oproepe luister nie, en niemand anders kan ook nie.
• Signal in MacOS is gekoppel aan Signal op jou foon.
• Stuur end-tot-end-geënkripteerde teksboodskappe, stemboodskappe, fotos, videos, GIFs en lêers gratis.
• Bly in verbinding met groepkletse vir tot 1000 deelnemers. Beheer wie boodskappe mag plaas en bestuur groeplede met administrateurtoestemming-instellings.
• Bel jou vriende met klokhelder end-tot-end-geënkripteerde stem- en video-oproepe. Groepoproepe ondersteun tot 75 deelnemers.
• Signal is gebou vir jou privaatheid. Ons weet glad nie wie jy is of met wie jy praat nie. Ons oopbron Signal-protokol beteken dat ons nie jou boodskappe kan lees of na jou oproepe kan luister nie. En niemand anders kan ook nie. Geen agterdeure nie, geen data-insameling nie, geen kompromisse nie.
• Deel foto-, teks- en video-Stories wat ná 24 uur verdwyn. Privaatheidinstellings hou jou in beheer van presies wie elke Storie kan sien.
• Signal is onafhanklik en niewinsgewend; dit is 'n ander soort tegnologie van 'n ander soort organisasie. As 'n 501c3-niewinsgewende organisasie word ons ondersteun deur jou skenkings, nie deur adverteerders of beleggers nie.
• Vir steundiens, vrae of meer inligting, besoek asb. https://support.signal.org/
Om na ons bronkode te kyk, besoek https://github.com/signalapp
Volg ons op X @signalapp en Instagram @signal_app

View File

@ -0,0 +1 @@
signal,boodskap(per),oproep,stem,geënkripteer,privaat,veilig,privaatheid,groep,video,klets,stories

View File

@ -0,0 +1 @@
Sê “hallo” vir privaatheid.

View File

@ -0,0 +1 @@
Signal Private Messenger

View File

@ -453,7 +453,7 @@
"messageformat": "Jy kan slegs tot 4 kletse merk met 'n speld"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Jy kan slegs {maxPinnedConversations,number} klets met 'n speld merk} other {Jy kan slegs tot soveel as {maxPinnedConversations,number} kletse met 'n speld merk}}"
},
"icu:view": {
"messageformat": "Bekyk"
@ -2787,7 +2787,7 @@
"messageformat": "Geen plakkers geïnstalleer nie"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Geen plakkerpakkette nie, voeg plakkers by om aan jou vriende te stuur."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Voeg Plakkers by"
@ -2802,10 +2802,10 @@
"messageformat": "Plakkers wat jy ontvang het"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Met jou gedeel"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "As jy 'n plakker van iemand ontvang, sal die plakkerpakket hier verskyn."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Plakkers van inkomende boodskappe sal hier verskyn"
@ -2826,7 +2826,7 @@
"messageformat": "Almal"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "My plakkers"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Voeg toe"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Bywerking afgelaai"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Maak Signal op jou foon oop"
},
@ -8266,6 +8269,12 @@
"messageformat": "Ondersteuning vir die donker ikoonstyl in macOS."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Ons het 'n fout in die plakkerpakket-skepper wat die koppelvlak in die verkeerde taal vertoon het, herstel."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
سيجنال هو تطبيق للمراسلة قائم على مراعاة الخصوصية. هو تطبيق مجاني وسهل الاستخدام، ويُوفِّر تشفيرًا قويًا من طرف لِطرف للحفاظ على السرية التامة لمراسلاتك. لا يمكن لسيجنال قراءة رسائلك أو التنصت على مكالماتك، ولا يُمكن لأي أحد آخر القيام بذلك أيضًا.
• يتصل سيجنال على نظام macOS بسيجنال المُثبَّت على هاتفك.
• أرسِل رسائل نصيّة ورسائل صوتية وصور وفيديوهات وصورة متحركة وملفات مُشفَّرة من طرف لطرف بالمجان.
• ابقَ على اتصال مع دردشات جماعية تجمع أكثر من 1000 شخص. تحكَّم في من يُمكنه النشر والقيام بإدارة أعضاء المجموعة باستخدام إعدادات أذونات المُشرِف.
• أجرِ مُكالمات صوتية ومكالمات فيديو مُشفَّرة بجودة عالية مع أصدقائك. تدعم المكالمات الجماعية ما يصل إلى 75 شخصًا.
صُمِّمَ سيجنال للحفاظ على خصوصيتك. لا نعرف شيئًا عنك أو مع من تتحدث. بروتوكول سيجنال الخاص بنا ذو المصدر المفتوح يعني أنه لا يُمكننا قراءة رسائلك أو الاستماع إلى مكالماتك. ولا يُمكن لأي شخص آخر القيام بذلك. لا أبواب خلفية ولا عملية جمع بيانات ولا مساومات.
• شارِك الصور والرسائل وقِصص الفيديو التي تختفي بعد 24 ساعة. تُتيح لك إعدادات الخصوصية فرصة البقاء مسؤولًا عن من يُمكنه رؤية كل قصة.
• تطبيق سيجنال مُستقل ولا يهدف إلى الربح؛ نوع مختلف من التكنولوجيا من نوع مختلف من المنظمات. وبصفتنا مؤسسة غير ربحية، فإننا نستمد دعمنا من التبرُّعات وليس من الإعلانات ولا المُستثمرين.
• للدعم أو لطرح الأسئلة أو للمزيد من المعلومات، يُرجى زيارة https://support.signal.org/
لإلقاء نظرة على كود المصدر الخاص بنا، قُم بزيارة https://github.com/signalapp
تابعنا على X على العنوان @signalapp وعلى انستغرام على العنوان @signal_app

View File

@ -0,0 +1 @@
سيجنال،رسالة،تطبيق،دردشة،مكالمة،صوت،مشفر،خاص،آمن،خصوصية،مجموعة،فيديو،دردشة،قصص

View File

@ -0,0 +1 @@
مرحبًا بكم في عالم الخصوصية.

View File

@ -0,0 +1 @@
سيجنال - تطبيق مراسلة يحترم الخصوصية

View File

@ -453,7 +453,7 @@
"messageformat": "يمكنك تثبيت فقط حتى أربع دردشات."
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, zero {يمكنك تثبيت ما يصل إلى {maxPinnedConversations,number} دردشات فقط} one {يمكنك تثبيت ما يصل إلى {maxPinnedConversations,number} دردشة فقط} two {يمكنك تثبيت ما يصل إلى {maxPinnedConversations,number} دردشتين فقط} few {يمكنك تثبيت ما يصل إلى {maxPinnedConversations,number} دردشات فقط} many {يمكنك تثبيت ما يصل إلى {maxPinnedConversations,number} دردشة فقط} other {يمكنك تثبيت ما يصل إلى {maxPinnedConversations,number} دردشة فقط}}"
},
"icu:view": {
"messageformat": "عرض"
@ -2787,7 +2787,7 @@
"messageformat": "لا توجد مُلصقَات مُثبَّتة"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "لا توجد حزم مُلصَقات. قُم بإضافة مُلصَقات لإرسالها لأصدقائك."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "إضافة مُلصَقات"
@ -2802,10 +2802,10 @@
"messageformat": "المُلصَقات المستلَمة"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "تمَّت مشاركتها معك"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "عندما تستلم مُلصَق من شخص ما، ستظهر حزمة المُلصَقات هنا."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "ستظهر هنا المُلصَقات القادمة من الرسائل الواردة"
@ -2826,7 +2826,7 @@
"messageformat": "الجميع"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "مُلصَقاتي"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "إضافة"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "تمَّ تنزيل التحديث"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "افتح تطبيق سيجنال على هاتفك"
},
@ -8266,6 +8269,12 @@
"messageformat": "إذا كُنتَ ترغب في إظهار دعمك للألوان الداكنة، فقد أضفنا أيضًا دعمًا لنمط الأيقونات الداكنة في نظام macOS."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "أصلحنا خطًأ في مُنشِئ المُلصَقات كان يتسبَّب في عرض الواجهة بلغة خاطئة. على الرغم من أن المُلصَقات عبارة عن صور (أي أنها تُعبِّر عن ألف كلمة)، إلّا أنه لا يزال من المهم اختيار الكلمات المناسبة أيضًا."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Signal məxfiliyə əsaslanan bir mesajlaşma tətbiqidir. Çatlar və zənglərinizin məxfiliyini tamamilə qoruyan güclü tam şifrələmə xüsusiyyəti ilə ondan istifadə pulsuz və asandır. Signal mesajlarınızı oxuya və ya zənglərinizi dinləyə bilmir, digərlərinə də bunu etməyə icazə vermir.
• MacOS ilə işləyən Signal telefonunuzdakı Signal tətbiqi ilə əlaqələndirilir.
• Tam şifrələnmiş mətnləri, səsli mesajları, fotoları, videoları, GIF və faylları pulsuz göndərin.
• 1000 nəfərə qədər iştirakçını dəstəkləyən qrup çatlarına qoşulun. Admin icazəsi parametrləri ilə kimin qrup üzvləri ilə yazı paylaşacağına və onları idarə edəcəyinə nəzarət edin.
• Dostlarınıza tam şifrələnmiş yüksək səs keyfiyyətinə malik audio və video zənglər edin. Qrup zəngləri 75 nəfərə qədər insanın qoşulmasını dəstəkləyir.
• Signal məxfiliyinizi qorumaq üçün yaradılıb. Siz və ya söhbət etdiyiniz şəxslər haqqında heç nə bilmirik. Açıq mənbəli Signal Protokolumuz mesajlarınızı oxuya və zənglərinizi dinləyə bilməyəcəyimizi nəzərdə tutur. Bunu nə biz, nə də başqası edə bilməz. Arxa qapılar, verilənlərin toplanması və kompromislər yoxdur.
• 24 saat sonra yox olacaq foto, mətn və video Hekayələri paylaşın. Məxfilik parametrləri sayəsində hər bir Hekayəni kimin görə biləcəyini dəqiqliklə seçirsiniz.
• Signal müstəqildir və mənfəət məqsədi güdmür, o, fərqli bir təşkilatın fərq yaradan bir texnologiyasıdır. Bir 501c3 qeyri-kommersiya təşkilatı kimi biz, reklamçı və investorların deyil, sizin ianələrinizlə dəstəklənirik.
• Dəstək, sual və əlavə məlumat üçün https://support.signal.org/ keçidinə daxil olun
Mənbə kodumuzu yoxlamaq üçün https://github.com/signalapp keçidinə daxil olun
Bizi X-də @signalapp, Instagram-da isə @signal_app istifadəçi profilləri ilə izləyin

View File

@ -0,0 +1 @@
signal,mesaj,messenger,zəng,səsli,şifrələnmiş,şəxsi,təhlükəsiz,məxfilik,qrup,video,çat,hekayələr

View File

@ -0,0 +1 @@
Məxfiliyə "Salam" verin.

View File

@ -0,0 +1 @@
Signal Gizli Mesajlaşma

View File

@ -453,7 +453,7 @@
"messageformat": "Yalnız 4 söhbətə qədər sancaqlaya bilərsiniz"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Maksimum {maxPinnedConversations,number} çata qədər sancaqlaya bilərsiniz} other {Maksimum {maxPinnedConversations,number} çata qədər sabitləyə bilərsiniz}}"
},
"icu:view": {
"messageformat": "Baxış"
@ -2787,7 +2787,7 @@
"messageformat": "Heç bir stiker quraşdırılmayıb"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Stiker paketi yoxdur, dostlarınıza göndərmək üçün stikerlər əlavə edin."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Stikerlər əlavə edin"
@ -2802,10 +2802,10 @@
"messageformat": "Aldığınız stikerlər"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Sizinlə paylaşılanlar"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Kimsə sizə stiker göndərdikdə, stiker paketi burada görünür."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Gələn mesajlardakı stikerlər burada görünəcək"
@ -2826,7 +2826,7 @@
"messageformat": "Hamısı"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Stikerlərim"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Əlavə et"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Yeniləmə yükləndi"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Signal-ı telefonunuzda açın"
},
@ -8266,6 +8269,12 @@
"messageformat": "Əgər ruhunuzdakı qotik insanı kəşf etmək istəsəniz, sizin üçün macOS-un tünd rəngli piktoqram tərzində dəstəyini də əlavə etdik."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "İnterfeysi səhv dildə göstərən stiker yaradıcısı ilə bağlı bir nasazlığı aradan qaldırdıq. Bununla belə stikerlər sadəcə şəkillərdən ibarətdir (buna görə min sözə dəyər) və sözləri doğru seçmək də çox vacibdir."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Signal е приложение за съобщения, изградено около поверителността. То е безплатно и лесно за използване, със силно криптиране от край до край, което поддържа вашите чатове и обаждания напълно поверителни. Signal не може да чете вашите съобщения или да слуша вашите обаждания, а и никой друг не може.
• Signal на MacOS се свързва със Signal на телефона ви.
• Изпращайте криптирани от край до край текстови и гласови съобщения, снимки, видеоклипове, GIF-ове и файлове безплатно.
• Поддържайте връзка с групови чатове до 1000 души. Контролирайте кой може да публикува и управлява членовете на групата с настройките за администраторски разрешения.
• Обаждайте се на приятелите си с кристално чисти криптирани от край до край гласови и видео обаждания. Поддържат се групови разговори до 75 души.
• Signal е създаден за вашата поверителност. Не знаем нищо за вас или хората, с които говорите. Нашият Signal протокол с отворен код означава, че не можем да четем вашите съобщения или да слушаме вашите обаждания. И никой друг не може. Без задни вратички, без събиране на данни, без компромиси.
• Споделяйте снимки, текст и видео истории, които изчезват след 24 часа. Настройките за поверителност ви позволяват да контролирате точно кой може да вижда всяка история.
• Signal е независим и не е с цел печалба; различен вид технология от различен вид организация. Като организация с нестопанска цел, ние се издържаме от вашите дарения, а не от рекламодатели или инвеститори.
За поддръжка, въпроси или повече информация, моля посетете https://support.signal.org/
За да разгледате нашия изходен код, посетете https://github.com/signalapp
Последвайте ни в X @signalapp и Instagram @signal_app

View File

@ -0,0 +1 @@
signal,съобщения,обаждане,глас,криптиран,поверителен,сигурно,поверителност,група,видео,чат,истории

View File

@ -0,0 +1 @@
Поверителността преди всичко.

View File

@ -0,0 +1 @@
Signal - Private Messenger

View File

@ -453,7 +453,7 @@
"messageformat": "Можете да закачите до 4 чата"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Може да закачите максимум {maxPinnedConversations,number} чат} other {Може да закачите максимум {maxPinnedConversations,number} чата}}"
},
"icu:view": {
"messageformat": "Преглед"
@ -2787,7 +2787,7 @@
"messageformat": "Няма инсталирани стикери"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Няма пакети със стикери, добавете стикери, за да ги изпращате на приятели."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Добавяне на стикери"
@ -2802,10 +2802,10 @@
"messageformat": "Получени стикери"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Споделени с вас"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Когато получите стикер от някого, пакетът със стикери ще се показва тук."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Стикери от входящи съобщения ще се появяват тук"
@ -2826,7 +2826,7 @@
"messageformat": "Всички"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Моите стикери"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Добавяне"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Актуализацията е изтеглена"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Отворете Signal на телефона си"
},
@ -8266,6 +8269,12 @@
"messageformat": "Ако искате да се отдадете на тъмната си страна, добавихме поддръжка за стила с тъмни икони на macOS."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Отстранихме бъг в създателя на стикери, заради който на интерфейса се показваше грешният език."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Signal একটি মেসেজিং অ্যাপ যার মূল ভিত্তি হলো গোপনীয়তা। এটি ফ্রি-তে ব্যবহার করা যায় এবং ব্যবহার করা সহজ, এতে রয়েছে শক্তিশালী এন্ড-টু-এন্ড এনক্রিপশন ব্যবস্থা যা আপনার চ্যাট ও কল সম্পূর্ণ গোপন রাখে। Signal আপনার মেসেজ পড়তে বা আপনার কল শুনতে পারে না, এবং অন্য কেউই তা পারে না।
• MacOS-এর Signal আপনার ফোনের Signal-এর সাথে সংযুক্ত হয়।
• ফ্রি-তে এন্ড-টু-এন্ড এনক্রিপ্ট করা টেক্সট, ভয়েস মেসেজ, ছবি, ভিডিও, GIF ও ফাইল পাঠান।
• 1,000 জন পর্যন্ত ব্যক্তি নিয়ে সংগঠিত গ্রুপ চ্যাটের মাধ্যমে সংযুক্ত থাকুন সবার সাথে। অ্যাডমিন অনুমতির সেটিংস সহ গ্রুপ সদস্যদের মধ্যে কে কে পোস্ট করতে পারবেন এবং কে কে নিয়ন্ত্রণ করতে পারবেন তা নিয়ন্ত্রণ করুন।
• আপনার বন্ধুদের সাথে এন্ড-টু-এন্ড এনক্রিপ্ট করা ভয়েস ও ভিডিও কলের মাধ্যমে কল করুন। গ্ৰুপ কলে একসাথে সর্বোচ্চ 75 জন যোগ দিতে পারে।
• Signal আপনার গোপনীয়তা রক্ষা করার জন্য তৈরি করা হয়েছে। আমরা আপনার সম্পর্কে এবং আপনি কার সাথে কথা বলছেন তার সম্পর্কে কিছুই জানি না। আমাদের ওপেন সোর্স Signal Protocol-এর অর্থ হলো আমরা আপনার ম্যাসেজ পড়তে বা আপনার কল থেকে কথা শুনতে পারি না। এটি অন্য আর কেউও পারে না। নেই কোনো অসৎ উদ্দেশ্য, নেই কোনো তথ্য সংগ্রহের চর্চা, নেই কোনো আপোষ।
• ছবি, টেক্সট ও ভিডিও স্টোরি শেয়ার করা যায়, যা 24 ঘন্টা পরে অদৃশ্য হয়ে যায়। গোপনীয়তা সেটিংস আপনাকে প্রত্যেকটি স্টোরি কে দেখতে পাবেন তা নিয়ন্ত্রণ করার সুযোগ দেয়।
• Signal একটি স্বাধীন এবং অলাভজনক উদ্যোগ; একটি ভিন্নধর্মী প্রতিষ্ঠানের প্রচেষ্টায় তৈরি একটি ভিন্নধর্মী প্রযুক্তি। একটি 501c3 অলাভজনক প্রতিষ্ঠান হিসাবে আমরা আপনার দেওয়া ডোনেশনের সমর্থনে পরিচালিত, কোনো বিজ্ঞাপনদাতা বা বিনিয়োগকারীর দ্বারা সমর্থিত নয়।
• এ সংক্রান্ত সহায়তা, প্রশ্ন বা আরো তথ্যের জন্য অনুগ্রহ করে ভিজিট করুন: https://support.signal.org/
আমাদের সোর্স কোড চেক করতে, ভিজিট করুন: https://github.com/signalapp
X-এ @signalapp পেজে এবং Instagram-এ @signal_app পেজে আমাদের ফলো করুন

View File

@ -0,0 +1 @@
signal,মেসেজ,মেসেঞ্জার,কল,ভয়েস,এনক্রিপ্ট করা,ব্যক্তিগত,সুরক্ষিত,গোপনীয়তা,গ্ৰুপ,ভিডিও,চ্যাট,স্টোরি

View File

@ -0,0 +1 @@
গোপনীয়তাকে “হ্যালো” বলুন।

View File

@ -0,0 +1 @@
Signal - প্রাইভেট মেসেঞ্জার

View File

@ -453,7 +453,7 @@
"messageformat": "আপনি কেবলমাত্র 4টি পর্যন্ত চ্যাট পিন করতে পারবেন"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {আপনি সর্বোচ্চ {maxPinnedConversations,number}-টি চ্যাটের সাথে শেয়ার করতে পারবেন} other {আপনি শুধু {maxPinnedConversations,number}-টি চ্যাট পিন করতে পারবেন}}"
},
"icu:view": {
"messageformat": "দেখান"
@ -2787,7 +2787,7 @@
"messageformat": "কোনো স্টিকার ইনস্টল করা নেই"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "কোনো স্টিকার প্যাক নেই, বন্ধুদের পাঠানোর জন্য স্টিকার যোগ করুন।"
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "স্টিকার যোগ করুন"
@ -2802,10 +2802,10 @@
"messageformat": "আপনার প্রাপ্ত স্টিকার"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "আপনার সাথে শেয়ার করা হয়েছে"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "যখন আপনি কারো কাছ থেকে স্টিকার পাবেন, তখন স্টিকার প্যাকটি এখানে দেখা যাবে।"
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "আগত বার্তাগুলির স্টিকারসমূহ এখানে উপস্থিত হবে"
@ -2826,7 +2826,7 @@
"messageformat": "সকল"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "আমার স্টিকার"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "যোগ করুন"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "আপডেট ডাউনলোড হয়েছে"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "আপনার ফোনে সিগন্যাল খুলুন"
},
@ -8266,6 +8269,12 @@
"messageformat": "macOS-এ গাঢ় আইকন স্টাইলের জন্য সমর্থন যোগ করা হয়েছে।"
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "আমরা স্টিকার ক্রিয়েটর-এর একটি বাগ সংশোধন করেছি, যার কারণে ইন্টারফেইসটি ভুল ভাষায় দেখানো হচ্ছিলো।"
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Signal je aplikacija za razmjenu poruka čiji je ključ privatnost. Besplatna je i jednostavna za korištenje, sa snažnim sveobuhvatnim šifriranjem koje čuva vaše razgovore i pozive potpuno privatnima. Ne možemo čitati vaše poruke niti slušati vaše pozive, a ne može ni niko drugi.
• Signal na MacOS-u se povezuje sa Signalom na vašem telefonu.
• Besplatno šaljite tekstualne poruke, glasovne poruke, fotografije, videozapise, GIF-ove i datoteke, sve sveobuhvatno šifrirano.
• Ostanite povezani uz grupne razgovore i do 1000 ljudi. Kontrolirajte ko može objavljivati i upravljati članovima grupe pomoću postavki administratorskih dozvola.
• Pozovite svoje prijatelje kristalno čistim glasovnim i video pozivima, sve sveobhvatno šifrirano. Grupni pozivi podržavaju do 75 osoba.
• Signal je kreiran za vašu privatnost. Ne znamo ništa o vama niti s kim razgovarate. Naš Signal protokol otvorenog koda podrazumijeva da ne možemo čitati vaše poruke niti slušati vaše pozive. A to ne može ni niko drugi. Nema skrivenih motiva, prikupljanja podataka niti kompromisa.
• Dijelite fotografije, tekstualne i video priče koje nestaju nakon 24 sata. S postavkama privatnosti kontrolirate ko tačno može vidjeti svaku vašu priču.
• Signal je nezavisan i neprofitan; drugačija vrsta tehnologije od drugačije vrste organizacije. Kao neprofitna organizacija, podržavaju nas vaše donacije, a ne oglašivači ili investitori.
• Za podršku, pitanja ili više informacija posjetite https://support.signal.org/
Da provjerite naš izvorni kȏd, posjetite https://github.com/signalapp
Pratite nas na X @signalapp i Instagramu @signal_app

View File

@ -0,0 +1 @@
signal,poruka,messenger,poziv,glas,šifrirano,privatno,sigurno,privatnost,grupa,video,chat,priče

View File

@ -0,0 +1 @@
Uživajte u svojoj privatnosti.

View File

@ -0,0 +1 @@
Signal - Privatna aplikacija za razmjenu poruka

View File

@ -453,7 +453,7 @@
"messageformat": "Možete prikvačiti samo 4 chata"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Možete zakačiti najviše {maxPinnedConversations,number} chat} few {Možete zakačiti najviše {maxPinnedConversations,number} chata} many {Možete zakačiti najviše {maxPinnedConversations,number} chatova} other {Možete zakačiti najviše {maxPinnedConversations,number} chata}}"
},
"icu:view": {
"messageformat": "Pregled"
@ -2787,7 +2787,7 @@
"messageformat": "Nema instaliranih naljepnica"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Nema paketa naljepnica, dodajte naljepnice da ih pošaljete prijateljima."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Dodaj naljepnice"
@ -2802,10 +2802,10 @@
"messageformat": "Primljene naljepnice"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Podijeljeno s vama"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Kada primite naljepnicu od nekoga, paket naljepnica će se pojaviti ovdje."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Naljepnice iz primljenih poruka prikazat će se ovdje"
@ -2826,7 +2826,7 @@
"messageformat": "Sve"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Moje naljepnice"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Dodaj"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Ažuriranje je preuzeto"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Otvorite Signal na telefonu"
},
@ -8266,6 +8269,12 @@
"messageformat": "Podrška za tamni stil ikona u macOS-u."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Ispravili smo grešku u kreatoru naljepnica koja je prikazivala interfejs na pogrešnom jeziku."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
• Signal és una aplicació de missatgeria centrada en la privacitat. És gratuïta i fàcil d'utilitzar, amb un fort xifratge d'extrem a extrem que manté els teus xats i trucades completament privats. Ni Signal ni ningú més pot llegir els teus missatges o escoltar les teves trucades.
• El Signal de macOS s'enllaça amb el Signal del teu telèfon.
• Envia de manera gratuïta missatges, notes de veu, fotos, vídeos, GIFs i arxius xifrats d'extrem a extrem.
• No perdis mai el contacte amb xats grupals de fins a 1.000 persones. Controla qui pot publicar i gestionar els membres del grup amb la configuració de permisos d'administrador.
• Comunica't amb els teus amics amb trucades de veu i videotrucades totalment xifrades i nítides. S'admeten trucades en grup per a un màxim de 75 persones.
• Signal està dissenyada per a la teva privacitat. No sabem res de tu ni amb qui estàs parlant. El nostre protocol de codi obert de Signal significa que no podem llegir els teus missatges ni escoltar les teves trucades. Ni tampoc pot fer-ho ningú més. Sense portes posteriors, sense recollida de dades, sense compromisos.
• Comparteix Històries d'imatge, text i vídeo que desapareixeran automàticament al cap de 24 hores. La configuració de privacitat et manté a càrrec de qui pot veure exactament cada història.
• Signal és independent i sense ànim de lucre; un tipus de tecnologia diferent d'un tipus d'organització diferent. Com a entitat sense ànim de lucre 501c3, comptem amb el suport de les teves donacions, no d'anunciants o inversors.
• Si necessites assistència, tens alguna pregunta o vols saber-ne més, visita https://support.signal.org/
Per consultar el nostre codi font, visita https://github.com/signalapp
Segueix-nos a X @signalapp i Instagram @signal_app

View File

@ -0,0 +1 @@
signal,missatge,messenger,trucada,veu,xifrat,privat,segur,privacitat,grup,vídeo,xat,històries

View File

@ -0,0 +1 @@
Digues "hola" a la privacitat.

View File

@ -0,0 +1 @@
Signal Private Messenger

View File

@ -453,7 +453,7 @@
"messageformat": "Només pots fixar fins a 4 xats."
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Pots compartir un màxim d''{maxPinnedConversations,number} xat.} other {Pots compartir un màxim de {maxPinnedConversations,number} xats.}}"
},
"icu:view": {
"messageformat": "Mostra"
@ -2787,7 +2787,7 @@
"messageformat": "No hi ha adhesius instal·lats."
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "No tens paquets d'stickers, afegeix stickers per enviar als teus amics."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Afegir stickers"
@ -2802,10 +2802,10 @@
"messageformat": "Adhesius que heu rebut"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Compartit amb tu"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Quan rebis un sticker d'algú, el paquet d'stickers apareixerà aquí."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Els adhesius dels missatges d'entrada apareixeran aquí."
@ -2826,7 +2826,7 @@
"messageformat": "Tot"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Els meus stickers"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Afegeix"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Actualització descarregada"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Obriu el Signal al telèfon."
},
@ -8266,6 +8269,12 @@
"messageformat": "Compatibilitat amb macOS de les icones de mode fosc."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Hem solucionat un error al creador d'stickers que feia que la interfície es mostrés en l'idioma incorrecte."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Signal je aplikace pro zasílání zpráv, pro kterou je ochrana soukromí na prvním místě. Je bezplatná, snadno se používá a má silné koncové šifrování, díky kterému jsou vaše chaty a hovory zcela soukromé. Signál nemůže číst vaše zprávy ani poslouchat vaše hovory, a nemůže to dělat ani nikdo jiný.
• Aplikace Signal v systému MacOS se propojí s aplikací Signal ve vašem telefonu.
• Posílejte zdarma koncové šifrované textové a hlasové zprávy, fotky, videa, GIFy a soubory.
• Zůstaňte ve spojení díky skupinovým chatům až pro 1 000 lidí. Nastavte, kdo může posílat příspěvky, a spravujte členy skupiny pomocí nastavení s oprávněním správce.
• Volejte svým přátelům a užívejte si koncově šifrované hlasové hovory a videohovory s dokonale čistým zvukem. Podpora skupinových hovorů až pro 75 osob.
• Služba Signal je vytvořena s ohledem na vaše soukromí. Nemáme žádné informace o vás ani o tom, s kým komunikujete. Náš otevřený protokol Signal znamená, že nemůžeme číst vaše zprávy ani poslouchat vaše hovory. A nemůže je číst a poslouchat ani nikdo jiný. Nemáme žádná zadní vrátka, neshromažďujeme žádné údaje ani se neuchylujeme ke kompromisům.
• Sdílejte fotky, texty a videa ve formě Příběhů, které po 24 hodinách zmizí. Nastavení soukromí vám umožní přesně určit, kdo může jednotlivé Příběhy vidět.
• Signal je nezávislý a neziskový projekt. Tak trochu jiná technologie od tak trochu jiné organizace. Jako nezisková organizace jsme jsme financováni z vašich příspěvků, nikoli inzerenty nebo investory.
• Podporu, odpovědi na vaše otázky a další informace najdete na adrese: https://support.signal.org/
Náš zdrojový kód si můžete prohlédnout na adrese: https://github.com/signalapp
Sledujte nás na X @signalapp a Instagramu @signal_app

View File

@ -0,0 +1 @@
signal,zpráva,messenger,volání,hlas,šifrováno,soukromí,zabezpečení,skupina,video,chat,příběhy

View File

@ -0,0 +1 @@
Soukromí máte zaručeno.

View File

@ -0,0 +1 @@
Signal soukromá komunikace

View File

@ -453,7 +453,7 @@
"messageformat": "Připnout lze nejvýše 4 chaty"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Můžete připnout nanejvýš {maxPinnedConversations,number} chat} few {Můžete připnout nanejvýš {maxPinnedConversations,number} chaty} many {Můžete připnout nanejvýš {maxPinnedConversations,number} chatů} other {Můžete připnout nanejvýš {maxPinnedConversations,number} chatů}}"
},
"icu:view": {
"messageformat": "Zobrazit"
@ -2787,7 +2787,7 @@
"messageformat": "Nejsou instalovány žádné nálepky"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Žádné nainstalované balíčky nálepek. Přidejte si nálepky, abyste je mohli posílat přátelům."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Přidat nálepky"
@ -2802,10 +2802,10 @@
"messageformat": "Přijaté nálepky"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Sdíleno s vámi"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Jakmile od někoho dostanete nálepku, její balíček se zobrazí zde."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Nálepky z příchozích zpráv se objeví zde"
@ -2826,7 +2826,7 @@
"messageformat": "Vše"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Moje nálepky"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Přidat"
@ -6461,7 +6461,7 @@
"messageformat": "Svůj klíč pro obnovení s nikým nesdílejte. Útočník by pomocí něj mohl ovládnout váš účet. <strong>Signal od vás nikdy nebude ve zprávě</strong> vyžadovat váš klíč pro obnovení. Nikdy neodpovídejte na chat, který se tváří jako Signal."
},
"icu:CompositionInput__recovery-key-warning--description": {
"messageformat": "Svůj klíč pro obnovení s nikým nesdílejte. Útočník by pomocí něj mohl ovládnout váš účet. <strong>Signal od vás nikdy nebude ve zprávě</strong> vyžadovat váš klíč pro obnovení. Nikdy neodpovídejte na chat, který se tváří jako Signal. <learnMoreLink>Víc informací.</learnMoreLink>"
"messageformat": "Svůj klíč pro obnovení s nikým nesdílejte. Útočník by pomocí něj mohl ovládnout váš účet. <strong>Signal od vás nikdy nebude ve zprávě</strong> vyžadovat váš klíč pro obnovení. Nikdy neodpovídejte na chat, který se tváří jako Signal. <learnMoreLink>Zjistit více</learnMoreLink>"
},
"icu:CompositionInput__recovery-key-paste__confirm-dont-share": {
"messageformat": "Nesdílet"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Aktualizace stažena"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Otevřete Signal na svém telefonu"
},
@ -8266,6 +8269,12 @@
"messageformat": "Aplikace nyní podporuje tmavý styl ikon v macOS."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Opravili jsme chybu v nástroji na tvorbu nálepek, kvůli které se rozhraní zobrazovalo v nesprávném jazyce."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Signal er en beskedapp med fokus på privatliv. Den er gratis og nem at bruge, og så har den stærk end-to-end-kryptering, der sikrer, at dine chats og opkald er helt private. Signal kan hverken læse dine beskeder eller lytte til dine opkald, og det kan andre heller ikke.
• Signal på MacOS forbinder med Signal på din telefon.
• Send end-to-end-krypterede beskeder, talebeskeder, billeder, videoer, GIFs og filer helt gratis.
• Hold kontakten med gruppechats med op til 1.000 personer. Bestem, hvem der kan lave opslag og administrere gruppemedlemmer med administratorindstillinger.
• Ring til dine venner med krystalklare, end-to-end-krypterede stemme- og videoopkald. Gruppesamtaler understøtter op til 75 personer.
• Signal er bygget til at beskytte dit privatliv. Vi ved intet om dig, eller hvem du taler med. Vores open source Signal-protokol betyder, at vi ikke kan læse dine beskeder eller lytte til dine opkald. Det er der heller ikke andre, der kan. Ingen bagdøre, ingen dataindsamling, ingen kompromiser.
• Del billeder, tekst og videohistorier, som forsvinder efter 24 timer. Med privatlivsindstillingerne, kan du selv bestemme, hvem der kan se hver enkelt historie.
• Signal er en uafhængig nonprofit; en anden slags teknologi fra en anden slags organisation. Som 501c3-nonprofitorganisation, støttes vi af jeres donationer, ikke af annoncører eller investorer.
• Har du brug for støtte, svar eller flere oplysninger, kan du besøge https://support.signal.org/
Du kan se vores kildekode på https://github.com/signalapp
Følg os på X @signalapp og Instagram @signal_app

View File

@ -0,0 +1 @@
signal,besked,messenger,opkald,krypteret,privat,sikker,privatliv,gruppe,video,chat,historier

View File

@ -0,0 +1 @@
Sæt fokus på dit privatliv.

View File

@ -0,0 +1 @@
Signal Privat messenger

View File

@ -453,7 +453,7 @@
"messageformat": "Du kan kun fastgøre op til 4 chats"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Du kan kun fastgøre op til {maxPinnedConversations,number} chats} other {Du kan kun fastgøre op til {maxPinnedConversations,number} chats}}"
},
"icu:view": {
"messageformat": "Vis"
@ -2787,7 +2787,7 @@
"messageformat": "Ingen klistermærker er installeret"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Ingen klistermærkepakker. Tilføj klistermærker, og send dem til dine venner."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Tilføj klistermærke"
@ -2802,10 +2802,10 @@
"messageformat": "Klistermærker, du har modtaget"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Delt med dig"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Når du modtager et klistermærke fra nogen, vises klistermærkepakken her."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Klistermærker fra indgående beskeder vises her"
@ -2826,7 +2826,7 @@
"messageformat": "Alle"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Mine klistermærker"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Tilføj"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Opdatering downloadet"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Åbn Signal på din telefon"
},
@ -8266,6 +8269,12 @@
"messageformat": "Hvis du vil omfavne din indre goth, har vi også tilføjet understøttelse af den mørke ikonstil i macOS."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Vi har rettet en fejl i klistermærkeværktøjet, hvor brugerfladen blev vist på det forkerte sprog. Selvom klistermærker er billeder (og derfor siger mere end tusind ord), er det stadig vigtigt at få ordene sagt rigtigt."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Signal ist eine Messaging-App, bei der Datenschutz und Privatsphäre im Mittelpunkt stehen. Sie ist kostenlos und einfach zu benutzen, mit einer starken Ende-zu-Ende-Verschlüsselung, die deine Chats und Anrufe absolut vertraulich macht. Weder Signal noch irgendjemand sonst kann deine Nachrichten lesen oder deine Anrufe mithören.
• Signal auf MacOS verbindet sich mit Signal auf deinem Telefon.
• Versende kostenlos Ende-zu-Ende-verschlüsselte Text- und Sprachnachrichten, Fotos, Videos, GIFs und sonstige Dateien.
• Bleibe in Verbindung durch Gruppen-Chats mit bis zu 1.000 Personen. Lege fest, wer posten darf, und verwalte die Gruppenmitglieder mit Admin-Berechtigungseinstellungen.
• Kommuniziere mit kristallklaren Ende-zu-Ende-verschlüsselten Sprach- und Videoanrufen. Gruppenanrufe sind für bis zu 75 Personen möglich.
• Signal ist für deine Privatsphäre gemacht. Wir wissen nichts über dich oder mit wem du sprichst. Unser offenes Signal Protokoll stellt sicher, dass wir deine Nachrichten nicht lesen und deine Anrufe nicht mithören können. Ebenso wenig wie alle anderen. Keine Hintertüren, keine Datensammlung, keine Kompromisse.
• Teile Bild-, Text- und Video-Storys, die nach 24 Stunden wieder verschwinden. Mit den Datenschutz-Einstellungen kannst du genau festlegen, wer jede Story sehen kann.
• Signal ist unabhängig und nicht auf Gewinn ausgerichtet eine andere Art von Technologie von einer anderen Art von Organisation. Als gemeinnützige Non-Profit-Organisation werden wir durch deine Spenden unterstützt, nicht durch Werbekunden oder Investoren.
• Für Support, Fragen oder weitere Informationen besuche bitte https://support.signal.org/
Um unseren Quellcode zu sehen, besuche https://github.com/signalapp
Folge uns auf X unter @signalapp und auf Instagram unter @signal_app

View File

@ -0,0 +1 @@
signal,messenger,verschlüsselt,privat,datenschutz,sicher,kostenlos,video,nachricht,gruppe,anruf

View File

@ -0,0 +1 @@
Wir leben Datenschutz.

View File

@ -0,0 +1 @@
Signal Sicherer Messenger

View File

@ -453,7 +453,7 @@
"messageformat": "Du kannst maximal 4 Chats fixieren"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Du kannst maximal {maxPinnedConversations,number} Chat fixieren} other {Du kannst maximal {maxPinnedConversations,number} Chats fixieren}}"
},
"icu:view": {
"messageformat": "Anzeigen"
@ -2787,7 +2787,7 @@
"messageformat": "Keine Sticker installiert"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Keine Sticker-Sets füge Sticker hinzu, um sie an deine Freunde und Freundinnen zu schicken."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Sticker hinzufügen"
@ -2802,10 +2802,10 @@
"messageformat": "Empfangene Sticker"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Mit dir geteilt"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Wenn du von jemandem einen Sticker erhältst, erscheint das Sticker-Set hier."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Hier werden Sticker eingehender Nachrichten erscheinen"
@ -2826,7 +2826,7 @@
"messageformat": "Alle"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Meine Sticker"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Hinzufügen"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Update heruntergeladen"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Öffne Signal auf deinem Telefon"
},
@ -8266,6 +8269,12 @@
"messageformat": "Wenn du deinen inneren Goth ausleben möchtest: Wir unterstützen jetzt auch den dunklen Icon-Stil in MacOS."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Wir haben einen Fehler im Sticker-Creator behoben, der die Benutzeroberfläche in der falschen Sprache anzeigte. Auch wenn Sticker Bilder sind (und somit mehr sagen als tausend Worte), ist es dennoch wichtig, die richtigen Worte zu finden."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Το Signal είναι μια εφαρμογή ανταλλαγής μηνυμάτων με επίκεντρο το απόρρητο. Είναι δωρεάν και εύκολο στη χρήση, με πλήρη και ισχυρή κρυπτογράφηση που διατηρεί τις συνομιλίες και τις κλήσεις σου απόλυτα ιδιωτικές. Το Signal δεν μπορεί να διαβάσει τα μηνύματά σου ή να ακούσει τις κλήσεις σου, και κανείς άλλος δεν μπορεί.
Το Signal σε MacOS συνδέεται με το Signal στο τηλέφωνό σου.
• Στείλε δωρεάν κείμενα, ηχητικά μηνύματα, φωτογραφίες, βίντεο, GIF και αρχεία με κρυπτογράφηση από άκρο σε άκρο.
• Μείνε σε σύνδεση με ομαδικές συνομιλίες έως και 1.000 ατόμων. Διαχειρίσου τα άτομα που μπορούν να δημοσιεύουν και να διαχειρίζονται μέλη ομάδας με ρυθμίσεις αδειών διαχειριστή.
• Κάλεσε τους φίλους σου με πλήρως κρυπτογραφημένες από άκρο σε άκρο φωνητικές κλήσεις και βιντεοκλήσεις. Οι ομαδικές κλήσεις υποστηρίζουν έως και 75 άτομα.
Η Signal εστιάζει στη προστασία της ιδιωτικότητάς σου. Δεν γνωρίζουμε τίποτα για εσένα ή τα άτομα με τα οποία μιλάς. Το πρωτόκολλο Signal ανοιχτού κώδικα σημαίνει ότι δεν μπορούμε να διαβάσουμε τα μηνύματά σου ή να ακούσουμε τις κλήσεις σου. Κανείς δεν μπορεί. Χωρίς backdoor, συλλογή δεδομένων, συμβιβασμούς.
• Κοινοποίησε φωτογραφίες, κείμενο και βίντεο Ιστορίες που εξαφανίζονται μετά από 24 ώρες. Οι ρυθμίσεις απορρήτου σού δίνουν την ευκαιρία να διαχειρίζεσαι ποιος ακριβώς μπορεί να δει κάθε ιστορία.
Το Signal είναι ανεξάρτητο και μη κερδοσκοπικό. Ένα διαφορετικό είδος τεχνολογίας από ένα διαφορετικό είδος οργανισμού. Ως μη κερδοσκοπικός οργανισμός 501c3 δεχόμαστε υποστήριξη από τις δωρεές σας και όχι από διαφημιστές ή επενδυτές.
• Για υποστήριξη, ερωτήσεις, ή περισσότερες πληροφορίες, επισκέψου τη διεύθυνση https://support.signal.org/
Για να τσεκάρεις τον πηγαίο μας κώδικα, επισκέψου τη διεύθυνση https://github.com/signalapp
Ακολούθησέ μας στο X @signalapp και στο Instagram @signal_app

View File

@ -0,0 +1 @@
signal,μήνυμα,messenger,κρυπτογράφηση,ιδιωτικό,ασφαλές

View File

@ -0,0 +1 @@
Καλωσόρισε το απόρρητο.

View File

@ -0,0 +1 @@
Signal Private Messenger

View File

@ -453,7 +453,7 @@
"messageformat": "Μπορείς να καρφιτσώσεις μέχρι 4 συνομιλίες"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Μπορείς να καρφιτσώσεις έως {maxPinnedConversations,number} συνομιλία} other {Μπορείς να καρφιτσώσεις έως {maxPinnedConversations,number} συνομιλίες}}"
},
"icu:view": {
"messageformat": "Εμφάνιση"
@ -2787,7 +2787,7 @@
"messageformat": "Δεν υπάρχουν εγκατεστημένα αυτοκόλλητα"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Δεν υπάρχουν πακέτα αυτοκόλλητων, πρόσθεσε αυτοκόλλητα για να τα στείλεις στους φίλους σου."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Προσθήκη αυτοκόλλητων"
@ -2802,10 +2802,10 @@
"messageformat": "Αυτοκόλλητα που έχεις λάβει"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Κοινοποιήθηκαν σε σένα"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Όταν λάβεις ένα αυτοκόλλητο από κάποιον, το πακέτο αυτοκόλλητων θα εμφανιστεί εδώ."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Αυτοκόλλητα από εισερχόμενα μηνύματα θα εμφανίζονται εδώ"
@ -2826,7 +2826,7 @@
"messageformat": "Όλα"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Τα αυτοκόλλητά μου"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Προσθήκη"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Έγινε λήψη της ενημέρωσης"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Άνοιξε το Signal στο κινητό σου"
},
@ -8266,6 +8269,12 @@
"messageformat": "Υποστήριξη για το στυλ «σκοτεινά εικονίδια» στο macOS."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Διορθώσαμε ένα σφάλμα στο εργαλείο δημιουργίας αυτοκόλλητων, το οποίο εμφάνιζε τη διεπαφή σε λάθος γλώσσα."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Signal is a messaging app with privacy at its core. It is free and easy to use, with strong end-to-end encryption that keeps your chats and calls completely private. Signal can't read your messages or listen to your calls, and no one else can either.
• Signal on MacOS links with Signal on your phone.
• Send end-to-end encrypted texts, voice messages, photos, videos, GIFs, and files for free.
• Stay connected with group chats up to 1,000 people. Control who can post and manage group members with admin permission settings.
• Call your friends with crystal-clear end-to-end encrypted voice and video calls. Group calls support up to 75 people.
• Signal is built for your privacy. We know nothing about you or who youre talking to. Our open source Signal Protocol means that we cant read your messages or listen to your calls. Neither can anyone else. No back doors, no data collection, no compromises.
• Share photo, text, and video Stories that disappear after 24 hours. Privacy settings keep you in charge of exactly who can see each Story.
• Signal is independent and not for profit; a different kind of tech from a different kind of organization. As a 501c3 nonprofit we are supported by your donations, not by advertisers or investors.
• For support, questions, or more information please visit https://support.signal.org/
To check out our source code, visit https://github.com/signalapp
Follow us on X @signalapp and Instagram @signal_app

View File

@ -0,0 +1 @@
signal,message,messenger,call,voice,encrypted,private,secure,privacy,group,video,chat,stories

View File

@ -0,0 +1 @@
Say “hello” to privacy.

View File

@ -0,0 +1 @@
Signal Private Messenger

View File

@ -613,7 +613,7 @@
},
"icu:pinnedConversationsFull": {
"messageformat": "You can only pin up to 4 chats",
"description": "(Deleted 2026/06/17) Shown in a toast when a user attempts to pin more than the maximum number of chats"
"description": "(Deleted 2026/06/15) Shown in a toast when a user attempts to pin more than the maximum number of chats"
},
"icu:pinnedConversations--max": {
"messageformat": "You can only pin up to {maxPinnedConversations, plural, one {# chat} other {# chats}}",
@ -3684,15 +3684,23 @@
},
"icu:stickers--StickerManager--Available": {
"messageformat": "Available",
"description": "Shown in the sticker pack manager as a tab for available stickers"
"description": "(Deleted 2026/06/15) Shown in the sticker pack manager as a tab for available stickers"
},
"icu:stickers--StickerManager--InstalledPacks": {
"messageformat": "Installed",
"description": "Shown in the sticker pack manager above your installed sticker packs."
"description": "(Deleted 2026/06/15) Shown in the sticker pack manager above your installed sticker packs."
},
"icu:stickers--StickerManager--InstalledPacks--Empty": {
"messageformat": "No stickers installed",
"description": "Shown in the sticker pack manager when you don't have any installed sticker packs."
"description": "(Deleted 2026/06/15) Shown in the sticker pack manager when you don't have any installed sticker packs."
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends.",
"description": "Text shown in the sticker pack manager on the installed stickers tab when you don't have any installed sticker packs."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Add stickers",
"description": "Button in the sticker pack manager on the installed stickers tab when you don't have any installed sticker packs. The button takes you to the All Stickers tab where you can install stickers."
},
"icu:stickers--StickerManager--BlessedPacks": {
"messageformat": "Signal Artist Series",
@ -3704,16 +3712,28 @@
},
"icu:stickers--StickerManager--ReceivedPacks": {
"messageformat": "Stickers You Received",
"description": "(Deleted 2026/06/15) Shown in the sticker pack manager above sticker packs which you have received in messages."
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You",
"description": "Shown in the sticker pack manager above sticker packs which you have received in messages."
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here.",
"description": "Section description shown in the sticker pack manager above sticker packs which you have received in messages."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Stickers from incoming messages will appear here",
"description": "Shown in the sticker pack manager when you have not received any sticker packs in messages."
"description": "(Deleted 2026/06/15) Shown in the sticker pack manager when you have not received any sticker packs in messages."
},
"icu:stickers--StickerManager--Install": {
"messageformat": "Install",
"description": "Shown in the sticker pack manager next to sticker packs which can be installed."
},
"icu:stickers--StickerManager--Installed": {
"messageformat": "Installed",
"description": "Accessibility label in the sticker pack manager next to sticker packs which are already installed."
},
"icu:stickers--StickerManager--Uninstall": {
"messageformat": "Uninstall",
"description": "Shown in the sticker pack manager next to sticker packs which are already installed."
@ -3722,6 +3742,22 @@
"messageformat": "You may not be able to re-install this sticker pack if you no longer have the source message.",
"description": "Shown in the sticker pack manager next to sticker packs which are already installed."
},
"icu:stickers--StickerManagerHeader--All": {
"messageformat": "All",
"description": "Shown in the sticker pack manager in the navigation tabs. This tab shows all sticker packs available to install."
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers",
"description": "Shown in the sticker pack manager in the navigation tabs. This tab shows all sticker packs you have currently installed."
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Add",
"description": "Context menu item to add a sticker pack. Shown in the sticker pack manager when right clicking a sticker pack."
},
"icu:stickers--StickerManagerPackContextMenu--Remove": {
"messageformat": "Remove",
"description": "Context menu item to remove a sticker pack. Shown in the sticker pack manager when right clicking a sticker pack."
},
"icu:stickers--StickerPreview--Title": {
"messageformat": "Sticker Pack",
"description": "The title that appears in the sticker pack preview modal."
@ -8534,7 +8570,7 @@
},
"icu:Preferences__recovery-key__do-not-share-description": {
"messageformat": "<strong>Signal will never message you</strong> for your recovery key. Never respond to a chat pretending to be Signal. Store your recovery key somewhere safe and never share it with anyone. <learnMoreLink>Learn more.</learnMoreLink>",
"description": "Body of the dialog warning the user not to share their recovery key, shown after copying the recovery key."
"description": "(Deleted 2026/06/15) Body of the dialog warning the user not to share their recovery key, shown after copying the recovery key."
},
"icu:Preferences__recovery-key__do-not-share-confirm": {
"messageformat": "Got it",
@ -8550,15 +8586,19 @@
},
"icu:CompositionInput__recovery-key-paste__confirm-description": {
"messageformat": "Do not share your recovery key with anyone. This will let them take over your account. <strong>Signal will never message you</strong> for your recovery key. Never respond to a chat pretending to be Signal.",
"description": "Body of the second confirmation dialog shown before allowing the user to paste their recovery key into a chat."
"description": "(Deleted 2026/06/15) Body of the second confirmation dialog shown before allowing the user to paste their recovery key into a chat."
},
"icu:CompositionInput__recovery-key-warning--description": {
"messageformat": "Do not share your recovery key with anyone. This will let them take over your account. <strong>Signal will never message you</strong> for your recovery key. Never respond to a chat pretending to be Signal. <learnMoreLink>Learn more.</learnMoreLink>",
"description": "Body of the confirmation dialog shown before allowing the user to paste their recovery key into a chat."
},
"icu:CompositionInput__recovery-key-paste__confirm-dont-share": {
"messageformat": "Don't share",
"description": "Button to cancel pasting the recovery key into a chat on the second confirmation dialog."
"description": "(Deleted 2026/06/15) Button to cancel pasting the recovery key into a chat on the second confirmation dialog."
},
"icu:CompositionInput__recovery-key-paste__confirm-paste": {
"messageformat": "Paste key",
"description": "Button to confirm pasting the recovery key into a chat on the second confirmation dialog."
"description": "(Deleted 2026/06/15) Button to confirm pasting the recovery key into a chat on the second confirmation dialog."
},
"icu:Preferences--local-backups-confirm-recovery-key": {
"messageformat": "Confirm your recovery key",
@ -8868,6 +8908,10 @@
"messageformat": "Update Downloaded",
"description": "The title of update dialog when update download is completed."
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store",
"description": "The action text of build expiration dialog when app is installed from the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Open Signal on your phone",
"description": "Title of a banner alerting users if their primary device (e.g. phone) has not been logged into recently."
@ -10943,10 +10987,22 @@
},
"icu:WhatsNew__8.15--0": {
"messageformat": "\"This extra E is vexing me,\" said the cries and pleas of the people displeased that their favorite file extension was four letters instead of three. We're happy to appease (the change was a breeze) and now you will see that the default filename when saving a JPEG will end as it should in dot jpg.",
"description": "Release notes for 8.15"
"description": "(Deleted 2026/06/17) Release notes for 8.15"
},
"icu:WhatsNew__8.15--1": {
"messageformat": "If you want to embrace your inner goth, we also added support for the dark icon style in macOS.",
"description": "Release notes for 8.15"
"description": "(Deleted 2026/06/17) Release notes for 8.15"
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too.",
"description": "(Deleted 2026/06/24) Release notes for 8.16"
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature.",
"description": "Release notes for 8.17"
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say.",
"description": "Release notes for 8.17"
}
}

View File

@ -0,0 +1,21 @@
Signal es una aplicación de mensajería diseñada para proteger tu privacidad. Es gratuita, fácil de usar y ofrece un potente cifrado de extremo a extremo que mantiene tus chats y llamadas completamente privados. Ni Signal ni nadie más puede leer tus mensajes o escuchar tus llamadas.
• Signal en macOS se vincula con Signal en tu teléfono.
• Envía y recibe mensajes, audios, fotos, vídeos, GIF y archivos cifrados de extremo a extremo de forma gratuita.
• Descubre un nuevo nivel de comunicación con chats grupales de hasta 1000 personas. Elige quién puede publicar contenido y gestionar la lista de participantes del grupo en los ajustes de permisos de admin.
• Disfruta de llamadas y videollamadas totalmente cifradas y de alta calidad. Puedes hacer llamadas grupales de hasta 75 personas.
• Signal está diseñada para proteger tu privacidad. No sabemos nada sobre ti ni con quién hablas. El protocolo de código abierto de Signal garantiza que no podemos leer tus mensajes ni escuchar tus llamadas. Ni nosotros ni nadie más. Sin puertas traseras, sin recopilación de datos, sin concesiones.
• Comparte historias con imágenes, texto y vídeo que desaparecerán automáticamente después de 24 horas. Los ajustes de privacidad te permiten decidir quién puede ver cada historia.
• Signal es una entidad independiente y sin fines de lucro; una tecnología diferente impulsada por una organización diferente. Al ser una organización sin ánimo de lucro, Signal se financia gracias a donaciones de personas como tú. No dependemos de anunciantes ni inversores.
• Si tienes alguna pregunta, necesitas asistencia o buscas más información, visita https://support.signal.org/.
Para consultar nuestro código fuente, visita https://github.com/signalapp.
Síguenos en nuestro perfil de X @signalapp e Instagram @signal_app.

View File

@ -0,0 +1 @@
signal,mensaje,messenger,llamada,voz,cifrado,privado,seguro,privacidad,grupo,vídeo,chat,historias

View File

@ -0,0 +1 @@
La privacidad primero.

View File

@ -0,0 +1 @@
Signal - Mensajería privada

View File

@ -453,7 +453,7 @@
"messageformat": "Solo puedes fijar un máximo de 4 chats"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Solo puedes fijar un máximo de {maxPinnedConversations,number} chat} other {Solo puedes fijar un máximo de {maxPinnedConversations,number} chats}}"
},
"icu:view": {
"messageformat": "Ver"
@ -2787,7 +2787,7 @@
"messageformat": "No hay ningún paquete de stickers instalado"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "No hay paquetes de stickers. Añade stickers para enviar a tus amigos."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Añadir stickers"
@ -2802,10 +2802,10 @@
"messageformat": "Stickers recibidos"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Compartido contigo"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Cuando recibas un sticker de alguien, el paquete de stickers aparecerá aquí."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Aquí se mostrarán los stickers de tus mensajes recibidos."
@ -2826,7 +2826,7 @@
"messageformat": "Todos"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Mis stickers"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Añadir"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Actualización descargada"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Abre Signal en tu teléfono"
},
@ -8266,6 +8269,12 @@
"messageformat": "Además, los iconos de modo oscuro ya son compatibles con macOS, por si te apetece invocar un poco de tinieblas en tu escritorio."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Hemos solucionado un error en el creador de stickers que hacía que la interfaz se mostrase en el idioma incorrecto. Aunque los stickers sean imágenes (y ya por sí solos valgan más que mil palabras), sigue siendo importante encontrar las palabras adecuadas."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Signal on sõnumirakendus, mille keskmes on privaatsus. See on tasuta, seda on lihtne kasutada ning tugev otspunktkrüptimine hoiab kogu sinu suhtluse täiesti privaatsena. Signal ega keegi teine ei saa sinu sõnumeid lugeda ega kõnesid kuulata.
• MacOS Signali äpp ühendub sinu telefoni Signali äpiga.
• Saada tasuta otspunktktüptitud tekstsõnumeid, häälsõnumeid, fotosid, videoid, GIFe ja faile.
• Suhtle grupivestlustes kuni 1000 inimesega. Kontrolli administraatori sätete abil, kes saavad postitada ja grupiliikmeid hallata.
• Tee oma sõpradega kristallselge kvaliteediga otspunktkrüptitud hääl- ja videokõnesid. Grupikõnede funktsioon on toetatud kuni 75 inimese puhul.
• Signal on loodud sinu privaatsuse jaoks. Me ei tea mitte midagi ei sinust ega sellest, kellega sa räägid. Meie avatud lähtekoodiga Signali protokoll tähendab, et me ei saa sinu sõnumeid lugeda ega sinu kõnesid pealt kuulata. Seda ei saa teha ka keegi teine. Ei mingeid trikke, ei mingit andmekogumist, ei mingeid järeleandmisi.
• Jaga pildi, teksti ja video kujul lugusid, mis kaovad 24 tunni möödudes. Privaatsussätete abil saad täpselt valida, kes iga lugu näevad.
• Signal on sõltumatu ja mittetulunduslik ettevõte teistmoodi tehnoloogia teistmoodi organisatsioonilt. USA 501c3-tüüpi mittetulundusühinguna on kasutajate annetused meie ainus sissetulekuallikas. Meil ei ole ei reklaame ega investoreid.
• Kui vajad abi, täiendavat infot, või soovid esitada küsimuse, külasta veebilehte https://support.signal.org/
Meie lähtekoodi vaatamiseks külasta veebilehte https://github.com/signalapp
Jälgi meid X-is @signalapp ja Instagramis @signal_app

View File

@ -0,0 +1 @@
signal,sõnum,sõnumiäpp,kõned,hääl,krüptitud,privaatne,turvaline,privaatsus,grupp,video,vestlus,lood

View File

@ -0,0 +1 @@
Tervita privaatsust.

View File

@ -0,0 +1 @@
Privaatsõnumite rakendus Signal

View File

@ -453,7 +453,7 @@
"messageformat": "Saad kinnitada kuni 4 vestlust"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Sa saad kinnitada vaid kuni {maxPinnedConversations,number} vestluse} other {Sa saad kinnitada vaid kuni {maxPinnedConversations,number} vestlust}}"
},
"icu:view": {
"messageformat": "Vaata"
@ -2787,7 +2787,7 @@
"messageformat": "Kleebiseid pole paigaldatud"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Kleebiste komplekte ei ole, lisa sõpradele saatmiseks kleebiseid."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Lisa kleebiseid"
@ -2802,10 +2802,10 @@
"messageformat": "Vastuvõetud kleebised"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Sinuga jagatud"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Kui kelleltki kleebise saad, kuvatakse kleebiste komplekt siin."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Siia ilmuvad saabuvate sõnumite kleebised"
@ -2826,7 +2826,7 @@
"messageformat": "Kõik"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Minu kleebised"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Lisa"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Uuendus alla laaditud"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Ava Signal enda telefonis"
},
@ -8266,6 +8269,12 @@
"messageformat": "Nüüd toetab macOS ikooni tumedat stiili."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Parandasime kleebistelooja vea, mille tõttu kuvati liidest vales keeles."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Pribatutasuna ardatz duen mezularitza-aplikazio bat da Signal. Doakoa eta erabilerraza da, eta txatak eta deiak erabat pribatu mantentzen dituen muturretik muturrerako enkriptatze sendoa du. Signal-ek ezin ditu irakurri zure mezuak, ez eta zure deiak entzun ere; ez guk, ez beste inork.
• MacOS-rako Signal telefonoko Signal-ekin lot daiteke.
• Bidali muturretik muturrera enkriptatutako mezuak, ahots-mezuak, argazkiak, bideoak, GIFak eta fitxategiak doan.
• Egon konektatuta 1.000 lagunerainoko talde-txatekin. Administratzaile-baimenen ezarpenen bidez, kontrolatu nork argitara dezakeen edukia eta nork kudea ditzakeen taldeko kideak.
• Deitu zure lagunei goitik behera, muturretik muturrera enkriptatutako ahots-dei eta bideodeiekin. 75 lagunerainoko talde-deiak onartzen dira.
• Signal zure pribatutasuna babesteko sortu da. Ez dakigu ezer zutaz, ez eta norekin hitz egiten duzun ere. Signal-en kode irekiko protokoloari esker, ezin ditugu irakurri zure mezuak, ez eta zure deiak entzun ere. Ez guk, ez beste inork ere. Ez dago ezkutuko helbururik, ez datu-bilketarik, ez konpromisorik.
• Partekatu argazkiak, testuak eta bideoak 24 orduren buruan desagertzen diren istorioetan. Pribatutasun-ezarpenen bidez, istorio bakoitza nork ikus dezakeen kontrola dezakezu.
• Signal independentea da, eta ez du irabazi-asmorik; beste teknologia mota bat da, beste erakunde mota batek sortua. Irabazi-asmorik gabeko 501c3 erakunde gisa, zure dohaintzek sostengatzen gaituzte, ez iragarleek edo inbertitzaileek.
• Laguntza, galderak edo informazio gehiago lortzeko, joan https://support.signal.org/ helbidera.
Gure iturburu-kodea ikusteko, bisitatu https://github.com/signalapp
Jarrai iezaguzu X-en (@signalapp) eta Instagram-en (@signal_app)

View File

@ -0,0 +1 @@
signal,mezua,deia,ahotsa,enkriptatua,pribatua,segurua,pribatutasuna,taldea,bideoa,txata,istorioak

View File

@ -0,0 +1 @@
Esan "kaixo" pribatutasunari.

View File

@ -0,0 +1 @@
Signal Mezularitza pribatua

View File

@ -453,7 +453,7 @@
"messageformat": "Gehienez 4 txat aingura ditzakezu"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Gehienez {maxPinnedConversations,number} txat aingura dezakezu} other {Gehienez {maxPinnedConversations,number} txat aingura ditzakezu}}"
},
"icu:view": {
"messageformat": "Ikusi"
@ -2787,7 +2787,7 @@
"messageformat": "Ez dago eranskailurik instalatuta"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Ez dago eranskailu-paketerik; lagunei eranskailuak bidaltzeko, gehi itzazu."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Gehitu eranskailuak"
@ -2802,10 +2802,10 @@
"messageformat": "Jaso dituzun eranskailuak"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Zurekin partekatua"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Norbaitek eranskailu bat bidaltzen dizunean, eranskailu-paketea hemen agertuko da."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Jasotako mezuetako eranskailuak hemen agertuko dira"
@ -2826,7 +2826,7 @@
"messageformat": "Denak"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Nire eranskailuak"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Gehitu"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Deskargatu da eguneraketa"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Ireki Signal telefonoan"
},
@ -8266,6 +8269,12 @@
"messageformat": "Ikono ilunen estiloa erabiltzeko aukera macOS-n."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Interfazea hizkuntza okerrean bistaratzen zuen akats bat konpondu dugu eranskailu-sortzailean."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
• سیگنال پیام‌رسانی است که تأکید اصلی‌اش را بر حفظ حریم خصوصی گذاشته است. این پیام‌رسان رایگان و استفاده از آن آسان است و رمزگذاری سرتاسری قدرتمندی دارد که گفتگوها و تماس‌های شما را کاملاً خصوصی نگه می‌دارد. نه سیگنال و نه هیچ فرد دیگری نمی‌تواند پیام‌های شما را بخواند یا تماس‌هایتان را شنود کند.
• نسخه MacOS سیگنال، به سیگنال روی تلفن شما متصل می‌شود.
• پیامک، پیام صوتی، عکس، ویدئو، گیف و فایل‌هایتان را به‌صورت رمزگذاری‌شده سرتاسری و رایگان ارسال کنید.
• با گفتگوهای گروهی تا ۱۰۰۰ نفر در ارتباط بمانید. با تنظیمات مجوز سرپرست، کنترل کنید که چه کسی بتواند مطلب پست کند و اعضای گروه را مدیریت کند.
• تماس‌های صوتی و تصویری رمزگذاری‌شده و شفاف با دوستان خود بگیرید. تماس‌های گروهی تا حداکثر ۷۵ نفر پشتیبانی می‌شود.
• سیگنال برای حفظ حریم خصوصی شما ساخته شده است. ما چیزی در مورد شما و این‌که با چه کسی صحبت می‌کنید نمی‌دانیم. پروتکل سیگنال منبع باز ما به این معنی است که ما نمی‌توانیم پیام‌های شما را بخوانیم یا به تماس‌های شما گوش دهیم. هیچ فرد دیگری هم نمی‌تواند این کار را بکند. بدون درب پشتی، بدون جمع‌آوری داده‌ها، بدون به‌خطر انداختن امنیت.
• استوری‌های تصویری، متنی و ویدیویی را هم‌رسانی کنید که پس از ۲۴ ساعت ناپدید می‌شوند. با تنظیمات حریم خصوصی، کنترل کامل اینکه چه کسی می‌تواند هر استوری را ببینند به عهده شماست.
• سیگنال مستقل است و انتفاعی نیست؛ نوعی فناوری متفاوت از یک سازمان متفاوت است. ما به‌عنوان یک سازمان غیرانتفاعی 501c3 توسط کمک‌های مالی شما پشتیبانی می‌شویم، نه توسط تبلیغ‌کنندگان یا سرمایه‌گذاران.
• برای پشتیبانی، سوالات یا اطلاعات بیشتر لطفاً به نشانی https://support.signal.org/ مراجعه کنید
برای بررسی کد منبع ما، از https://github.com/signalapp بازدید کنید
ما را در ایکس @signalapp و اینستاگرام @signal_app دنبال کنید

View File

@ -0,0 +1 @@
سیگنال،پیام،پیام‌رسان،تماس،صدا،رمزگذاری‌شده،خصوصی،امن،حریم خصوصی،گروه،ویدیو،چت،استوری‌ها

View File

@ -0,0 +1 @@
به حریم خصوصی «سلام» کنید.

View File

@ -0,0 +1 @@
پیام‌رسان خصوصی سیگنال

View File

@ -453,7 +453,7 @@
"messageformat": "حداکثر ۴ گفتگو را می‌توانید سنجاق کنید"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {حداکثر {maxPinnedConversations,number} گفتگو را می‌توانید سنجاق کنید} other {حداکثر {maxPinnedConversations,number} گفتگو را می‌توانید سنجاق کنید}}"
},
"icu:view": {
"messageformat": "مشاهده"
@ -2787,7 +2787,7 @@
"messageformat": "هیچ استیکری نصب نیست"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "بسته استیکر وجود ندارد، استیکر اضافه کنید تا به دوستانتان بفرستید."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "افزودن استیکر"
@ -2802,10 +2802,10 @@
"messageformat": "استیکر هایی که دریافت کردید"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "به‌اشتراک‌گذاشته‌شده با شما"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "وقتی از کسی استیکر دریافت می‌کنید، بسته استیکر در اینجا نمایش داده می‌شود."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "استیکر ها از پیام های دریافتی در اینجا پدیدار خواهند شد"
@ -2826,7 +2826,7 @@
"messageformat": "همه"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "استیکرهای من"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "افزودن"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "به‌روزرسانی بارگیری شد"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "باز کردن سیگنال روی گوشی"
},
@ -8266,6 +8269,12 @@
"messageformat": "پشتیبانی از سبک آیکون تیره در macOS."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "اشکالی را در سازنده استیکر برطرف کردیم که رابط کاربری را به زبان اشتباه نمایش می‌داد."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
Signal on viestisovellus, joka keskittyy yksityisyyteen. Se on ilmainen ja helppokäyttöinen sovellus, jonka vahva päästä päähän -salaus pitää keskustelut ja puhelut täysin yksityisenä. Signal ei voi lukea viestejäsi tai kuunnella puheluitasi, eikä voi kukaan muukaan.
• Signalin MacOS-sovellus yhdistyy puhelimesi Signal-sovellukseen.
• Lähetä päästä päähän salattuja tekstiviestejä, puheviestejä, kuvia, videoita, GIF-tiedostoja ja muita tiedostoja ilmaiseksi.
• Pidä yhteyttä osallistumalla jopa 1 000 henkilön ryhmäkeskusteluihin. Hallinnoi julkaisuoikeuksia ja ryhmän jäsenyyksiä järjestelmänvalvojan käyttöoikeuksien asetuksilla.
• Soita ystävillesi kristallinkirkkaita, päästä päähän salattuja ääni- ja videopuheluita. Sovellus tukee jopa 75 henkilön ryhmäpuheluita.
• Signal on luotu yksityisyyttäsi varten. Emme tiedä mitään sinusta tai keskustelukumppaneistasi. Avoimen lähdekoodin Signal-protokolla varmistaa, että me emme voi lukea viestejäsi tai kuunnella puheluitasi. Eikä voi kukaan muukaan. Ei takaportteja, ei tiedonkeruuta, ei kompromisseja.
• Jaa kuva-, teksti- ja videotarinoita, jotka katoavat 24 tunnin kuluttua. Voit määrittää jokaisen tarinan katseluoikeudet yksityisyysasetusten avulla.
• Signal on riippumaton ja voittoa tavoittelematon taho, joka tarjoaa erilaista teknologiaa erilaiselta organisaatiolta. Voittoa tavoittelemattomana, 501c3-luokiteltuna organisaationa toimintaamme tuetaan käyttäjien lahjoituksilla emme saa tukea mainostajilta tai sijoittajilta.
• Tukea, ohjeita ja lisätietoja on saatavilla osoitteessa https://support.signal.org/
Jos haluat tietoja lähdekoodistamme, siirry osoitteeseen https://github.com/signalapp
Seuraa meitä X:ssä: @signalapp ja Instagramissa: @signal_app

View File

@ -0,0 +1 @@
signal,viesti,messenger,puhelu,ääni,salattu,yksityinen,turvallinen,ryhmä,video,chat,tarinoita

View File

@ -0,0 +1 @@
Nauti yksityisyydestä.

View File

@ -0,0 +1 @@
Signal yksityistä viestintää

View File

@ -453,7 +453,7 @@
"messageformat": "Voit kiinnittää enintään 4 keskustelua"
},
"icu:pinnedConversations--max": {
"messageformat": "{maxPinnedConversations, plural, one {You can only pin up to {maxPinnedConversations,number} chat} other {You can only pin up to {maxPinnedConversations,number} chats}}"
"messageformat": "{maxPinnedConversations, plural, one {Voit kiinnittää enintään {maxPinnedConversations,number} keskustelun} other {Voit kiinnittää enintään {maxPinnedConversations,number} keskustelua}}"
},
"icu:view": {
"messageformat": "Näytä"
@ -2787,7 +2787,7 @@
"messageformat": "Tarroja ei ole asennettu"
},
"icu:stickers--StickerManager--MyStickers--None": {
"messageformat": "No sticker packs, add stickers to send to your friends."
"messageformat": "Sinulla ei ole tarrapaketteja. Lisää tarroja, jotta voit lähettää niitä ystävillesi."
},
"icu:stickers--StickerManager--AddStickers": {
"messageformat": "Lisää tarroja"
@ -2802,10 +2802,10 @@
"messageformat": "Vastaanotetut tarrat"
},
"icu:stickers--StickerManager--ReceivedPacks2": {
"messageformat": "Shared With You"
"messageformat": "Jaettu sinulle"
},
"icu:stickers--StickerManager--ReceivedPacksDescription": {
"messageformat": "When you receive a sticker from someone, the sticker pack will appear here."
"messageformat": "Kun saat tarrapaketin toiselta, paketti näkyy täällä."
},
"icu:stickers--StickerManager--ReceivedPacks--Empty": {
"messageformat": "Vastaanotetut tarrat näytetään tässä"
@ -2826,7 +2826,7 @@
"messageformat": "Kaikki"
},
"icu:stickers--StickerManagerHeader--MyStickers": {
"messageformat": "My Stickers"
"messageformat": "Omat tarrat"
},
"icu:stickers--StickerManagerPackContextMenu--Add": {
"messageformat": "Lisää"
@ -6700,6 +6700,9 @@
"icu:DialogUpdate__downloaded": {
"messageformat": "Päivitys ladattu"
},
"icu:DialogExpiredBuild__upgrade-mas": {
"messageformat": "Click to go to the App Store"
},
"icu:CriticalIdlePrimaryDevice__title": {
"messageformat": "Avaa Signal puhelimessa"
},
@ -8266,6 +8269,12 @@
"messageformat": "Tuki tummille kuvakkeille macOS:ssa."
},
"icu:WhatsNew__8.16--0": {
"messageformat": "We fixed a bug in the sticker creator that displayed the interface in the wrong language. Even though stickers are pictures (and therefore worth a thousand words) it's still important to get the words right too."
"messageformat": "Korjasimme tarrojen luontisovelluksen virheen, joka näytti käyttöliittymän väärällä kielellä."
},
"icu:WhatsNew__8.17--0": {
"messageformat": "Group admins can now delete recently sent messages in a group chat. If someone accidentally posts a spoiler in your Book Club group and then walks away from their phone, a group admin can delete it to keep the plot twist intact. You can easily see when a message was deleted and who removed it, just like the existing \"Delete for Everyone\" feature."
},
"icu:WhatsNew__8.17--1": {
"messageformat": "We also increased the maximum number of pinned chats from 4 to 10, so you can show 6 more people how much you love what they have to say."
}
}

View File

@ -0,0 +1,21 @@
L'application de messagerie Signal est conçue pour protéger votre vie privée. Gratuite et facile à utiliser, elle assure un véritable chiffrement de bout en bout pour des communications vraiment confidentielles. Personne ne peut lire vos messages ni écouter vos appels. Pas même Signal.
• La version de Signal exécutée sous macOS est associée à l'appli Signal installée sur votre téléphone.
• Envoyez des messages texte ou vocaux, des photos, des vidéos, des GIF et des fichiers chiffrés de bout en bout. Le tout, gratuitement.
• Gardez le contact avec des groupes de discussion pouvant réunir jusqu'à 1 000 personnes. Les paramètres d'administration vous permettent de gérer les membres du groupe, mais aussi de décider quels utilisateurs sont autorisés à publier des messages.
• Passez des appels vocaux et vidéo de très grande qualité toujours chiffrés de bout en bout. Les appels de groupe peuvent compter jusqu'à 75 personnes.
• L'application Signal est conçue pour protéger votre vie privée. Nous ne disposons d'aucune information à votre sujet et ignorons qui sont vos contacts. Notre protocole open source ne nous permet ni de lire vos messages, ni d'écouter vos appels. En clair : personne d'autre que vous ne peut y accéder. Aucune porte dérobée, aucune collecte de données, zéro compromis.
• Partagez des stories éphémères : elles peuvent contenir des images, du texte ou des vidéos et disparaissent automatiquement au bout de 24 heures. Côté confidentialité, vous êtes seul maître à bord : chaque fois que vous publiez une story, vous contrôlez précisément qui peut la consulter via les paramètres.
• Signal est un organisme indépendant à but non lucratif. Nous proposons une solution technologique alternative, pensée par un organisme alternatif. En tant que tels, nous existons grâce à vos dons. Nous ne sommes soutenus ni par des annonceurs, ni par des investisseurs.
• Des questions ? Besoin d'aide ? Envie d'en savoir plus ? Visitez https://support.signal.org/.
Pour consulter notre code source, rendez-vous sur https://github.com/signalapp.
Suivez-nous sur X @signalapp et Instagram @signal_app.

View File

@ -0,0 +1 @@
signal,messagerie,appel,vocal,chiffré,crypté,privé,sécurisé,confidentialité,groupe,vidéo,gratuit

View File

@ -0,0 +1 @@
Priorité à la confidentialité.

View File

@ -0,0 +1 @@
Signal - Messagerie privée

Some files were not shown because too many files have changed in this diff Show More