Compare commits
106 Commits
dependabot
...
backport/4
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9207f567b1 | ||
|
|
24d4d86aa4 | ||
|
|
c30bf3c936 | ||
|
|
e4e5c9a651 | ||
|
|
9e813f322a | ||
|
|
70144b9061 | ||
|
|
27af65731e | ||
|
|
2778e5940c | ||
|
|
e20f2eac97 | ||
|
|
a91262b153 | ||
|
|
084c3649b2 | ||
|
|
c6584b93f3 | ||
|
|
57ed57ce23 | ||
|
|
77a81d273a | ||
|
|
b2e3d75b75 | ||
|
|
4de693a402 | ||
|
|
08febcb29a | ||
|
|
c1b6cc1149 | ||
|
|
2f43aabb2e | ||
|
|
50293ffbb4 | ||
|
|
a52bc5dc3f | ||
|
|
5acf52370a | ||
|
|
85e46f2513 | ||
|
|
db485aa713 | ||
|
|
e8aaa7c165 | ||
|
|
281d6c2af7 | ||
|
|
c8714ec821 | ||
|
|
84b2036374 | ||
|
|
5c65bf9b00 | ||
|
|
237f832ad1 | ||
|
|
d019d80efa | ||
|
|
42a2ef39db | ||
|
|
ed7c9fbf05 | ||
|
|
4f4627a600 | ||
|
|
7900c73d90 | ||
|
|
0030b8c20c | ||
|
|
fbc7d3135d | ||
|
|
7350ae2ef3 | ||
|
|
9cebe7ac56 | ||
|
|
bfe45c5af4 | ||
|
|
c3c8faffea | ||
|
|
96508580fd | ||
|
|
ee7fcefd73 | ||
|
|
ac31ff6efe | ||
|
|
af6111b51e | ||
|
|
6700c903eb | ||
|
|
10e48aded1 | ||
|
|
e80ba82d77 | ||
|
|
48202e6d98 | ||
|
|
e3ba870577 | ||
|
|
56fae37144 | ||
|
|
af9177584c | ||
|
|
d850c744cd | ||
|
|
cd60f4bf80 | ||
|
|
eddb6fc460 | ||
|
|
6684023424 | ||
|
|
43bec159ff | ||
|
|
27d960340e | ||
|
|
3cda8eab77 | ||
|
|
aac5c1ff72 | ||
|
|
65c0fcfdc9 | ||
|
|
c71d54a26e | ||
|
|
0224da2127 | ||
|
|
3114e1a477 | ||
|
|
375c78271d | ||
|
|
2b903ecf7f | ||
|
|
9e256921ba | ||
|
|
d7e85ac4da | ||
|
|
4495fc3554 | ||
|
|
6996c862ce | ||
|
|
f81d98fb4b | ||
|
|
cd942a1dfb | ||
|
|
ddd15e7451 | ||
|
|
21908ef534 | ||
|
|
426f1a33dd | ||
|
|
713271d525 | ||
|
|
a43efce576 | ||
|
|
07f2fb7c28 | ||
|
|
72563feaf0 | ||
|
|
763a474d11 | ||
|
|
3977d71892 | ||
|
|
25f3da3603 | ||
|
|
2920ca8c86 | ||
|
|
da7e075ee9 | ||
|
|
c7341bed78 | ||
|
|
d9014903ac | ||
|
|
5dad6bb0b0 | ||
|
|
e7529e2d74 | ||
|
|
c0e07dc202 | ||
|
|
2619219618 | ||
|
|
87a0a4ed4f | ||
|
|
df01d8ef79 | ||
|
|
9f38e51d9b | ||
|
|
3f2e343541 | ||
|
|
ea6006bec0 | ||
|
|
1e625d3955 | ||
|
|
4b0a27d6b5 | ||
|
|
9cc38000fd | ||
|
|
3574abe0cb | ||
|
|
fb5aed2143 | ||
|
|
3506ac2a42 | ||
|
|
1f2f8fe001 | ||
|
|
97d9c4cc2c | ||
|
|
b169ecd0fe | ||
|
|
912376a99d | ||
|
|
3ec2ad99b1 |
2
.github/workflows/cypress.yml
vendored
2
.github/workflows/cypress.yml
vendored
@@ -23,7 +23,7 @@ jobs:
|
||||
# containers: [1, 2, 3]
|
||||
php-versions: [ '8.0' ]
|
||||
databases: [ 'sqlite' ]
|
||||
server-versions: [ 'master' ]
|
||||
server-versions: [ 'stable26' ]
|
||||
|
||||
steps:
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
|
||||
4
.github/workflows/integration.yml
vendored
4
.github/workflows/integration.yml
vendored
@@ -28,7 +28,7 @@ jobs:
|
||||
matrix:
|
||||
php-versions: ['8.1']
|
||||
databases: ['sqlite', 'mysql', 'pgsql']
|
||||
server-versions: ['master']
|
||||
server-versions: ['stable26']
|
||||
|
||||
name: php${{ matrix.php-versions }}-${{ matrix.databases }}-${{ matrix.server-versions }}
|
||||
|
||||
@@ -151,4 +151,4 @@ jobs:
|
||||
repo: context.repo.repo,
|
||||
body: comment
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
4
.github/workflows/phpunit.yml
vendored
4
.github/workflows/phpunit.yml
vendored
@@ -26,9 +26,9 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
php-versions: ['8.0', '8.1']
|
||||
php-versions: ['8.0', '8.1', '8.2']
|
||||
databases: ['sqlite', 'mysql', 'pgsql']
|
||||
server-versions: ['master']
|
||||
server-versions: ['stable26']
|
||||
|
||||
name: php${{ matrix.php-versions }}-${{ matrix.databases }}-${{ matrix.server-versions }}
|
||||
|
||||
|
||||
58
CHANGELOG.md
58
CHANGELOG.md
@@ -1,20 +1,52 @@
|
||||
# Changelog
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
|
||||
## 1.9.0-beta.1
|
||||
|
||||
### Added
|
||||
|
||||
- Export Board @david-loe [#3065](https://github.com/nextcloud/deck/pull/3065)
|
||||
- basic notify_push usage with session handling @alangecker [#3876](https://github.com/nextcloud/deck/pull/3876)
|
||||
- feat(Description): Use text as editor if available @juliushaertl [#4399](https://github.com/nextcloud/deck/pull/4399)
|
||||
- Improve reference provider and add reference widgets @julien-nc [#4422](https://github.com/nextcloud/deck/pull/4422)
|
||||
- live updates 🎉 @alangecker [#4273](https://github.com/nextcloud/deck/pull/4273)
|
||||
- Tag creation from card view @juliushaertl [#4344](https://github.com/nextcloud/deck/pull/4344)
|
||||
## 1.9.2
|
||||
|
||||
### Fixed
|
||||
|
||||
- fix: Properly overwrite z-index of datepicker above modal [#4665](https://github.com/nextcloud/deck/pull/4665)
|
||||
|
||||
|
||||
## 1.9.1
|
||||
|
||||
### Fixed
|
||||
|
||||
- Gracefully handle not found card for a share [#4567](https://github.com/nextcloud/deck/pull/4567)
|
||||
- fix: Adapt NcEmptyContent usages to new slots [#4562](https://github.com/nextcloud/deck/pull/4562)
|
||||
- allow user to toggle visibility of the calendar for a deck board [#4625](https://github.com/nextcloud/deck/pull/4625)
|
||||
- fix: Append datetime picker to body to avoid cut off [#4644](https://github.com/nextcloud/deck/pull/4644)
|
||||
- chore: Remove unused @nextcloud/vue-dashboard @juliushaertl [#4650](https://github.com/nextcloud/deck/pull/4650)
|
||||
- fix: Bring back overdue column by removing faulty condition [#4662](https://github.com/nextcloud/deck/pull/4662)
|
||||
- Fix : Overlapping expiry dates on tags [#4537](https://github.com/nextcloud/deck/pull/4537)
|
||||
- Better display of card dates (creation and change dates) [#4619](https://github.com/nextcloud/deck/pull/4619)
|
||||
- Update dependencies
|
||||
|
||||
## 1.9.0
|
||||
|
||||
### Added
|
||||
|
||||
- Live updates on board collaboration using notify_push @alangecker [#4273](https://github.com/nextcloud/deck/pull/4273)
|
||||
- Basic notify_push usage with session handling @alangecker [#3876](https://github.com/nextcloud/deck/pull/3876)
|
||||
- Use text as editor if available [#4399](https://github.com/nextcloud/deck/pull/4399)
|
||||
- Improve reference provider and add reference widgets @julien-nc [#4422](https://github.com/nextcloud/deck/pull/4422)
|
||||
- Tag creation from card view @juliushaertl [#4344](https://github.com/nextcloud/deck/pull/4344)
|
||||
- Optimize query performance with larger board or card count @[#4452](https://github.com/nextcloud/deck/pull/4452)
|
||||
- Export Board as CSV @david-loe [#3065](https://github.com/nextcloud/deck/pull/3065)
|
||||
|
||||
|
||||
### Fixed
|
||||
|
||||
- fix(cards): Fix card sizing by limiting too wide style rules [#4521](https://github.com/nextcloud/deck/pull/4521)
|
||||
- fix(references): Mute NoPermissionException as it is expected to happen for references [#4516](https://github.com/nextcloud/deck/pull/4516)
|
||||
- fix(API): Fix board API details parameter to work as expected [#4519](https://github.com/nextcloud/deck/pull/4519)
|
||||
- fix(sessions): Do not send close request without token [#4525](https://github.com/nextcloud/deck/pull/4525)
|
||||
- fix: Avoid mutating the due date when calculating days @juliushaertl [#4488](https://github.com/nextcloud/deck/pull/4488)
|
||||
- fix: Pass user id along to properly check permissions in background jobs @juliushaertl [#4485](https://github.com/nextcloud/deck/pull/4485)
|
||||
- fix: Use passed userid when getting attachment folder @juliushaertl [#4487](https://github.com/nextcloud/deck/pull/4487)
|
||||
- fix: Use proper z-index for text menubar @juliushaertl [#4490](https://github.com/nextcloud/deck/pull/4490)
|
||||
- fix(dashboard): Fix undefined array index @marcelklehr [#4492](https://github.com/nextcloud/deck/pull/4492)
|
||||
- fix: Always return sorted index array to make sure a json array is the result @juliushaertl [#4493](https://github.com/nextcloud/deck/pull/4493)
|
||||
- Fix component renaming so that acl works on shares again @small1 [#4315](https://github.com/nextcloud/deck/pull/4315)
|
||||
- fix(Sidebar): Only close sidebar on v-click-outside for specific targets @juliushaertl [#4350](https://github.com/nextcloud/deck/pull/4350)
|
||||
- add basic e2e tests for stack title @shoetten [#4206](https://github.com/nextcloud/deck/pull/4206)
|
||||
@@ -24,10 +56,6 @@ All notable changes to this project will be documented in this file.
|
||||
- perf: Register notifier and resource listener lazy @juliushaertl [#4439](https://github.com/nextcloud/deck/pull/4439)
|
||||
- perf: Lazy load dashboard components @juliushaertl [#4440](https://github.com/nextcloud/deck/pull/4440)
|
||||
- Optimise upcomming overview creation @Raudius [#3793](https://github.com/nextcloud/deck/pull/3793)
|
||||
- Performance boost @juliushaertl [#4452](https://github.com/nextcloud/deck/pull/4452)
|
||||
|
||||
### Other
|
||||
- Dependency updates
|
||||
|
||||
|
||||
## 1.8.0-beta.1
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
- 🚀 Get your project organized
|
||||
|
||||
</description>
|
||||
<version>1.9.0-beta.1</version>
|
||||
<version>1.9.2</version>
|
||||
<licence>agpl</licence>
|
||||
<author>Julius Härtl</author>
|
||||
<documentation>
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
"symfony/event-dispatcher": "^4.0",
|
||||
"vimeo/psalm": "^5.4",
|
||||
"php-parallel-lint/php-parallel-lint": "^1.2",
|
||||
"nextcloud/ocp": "dev-master"
|
||||
"nextcloud/ocp": "dev-stable26"
|
||||
},
|
||||
"config": {
|
||||
"optimize-autoloader": true,
|
||||
|
||||
64
composer.lock
generated
64
composer.lock
generated
@@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "22d201a4569de6d4fafbc13277ae91a6",
|
||||
"content-hash": "7f234626b3fd062832a6387b9434427c",
|
||||
"packages": [
|
||||
{
|
||||
"name": "cogpowered/finediff",
|
||||
@@ -1253,26 +1253,24 @@
|
||||
},
|
||||
{
|
||||
"name": "nextcloud/ocp",
|
||||
"version": "dev-master",
|
||||
"version": "dev-stable26",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nextcloud-deps/ocp.git",
|
||||
"reference": "5636b942e35ee391b1103150261d83d3d753d657"
|
||||
"reference": "37923c381f59247ae6a4049561454f5d3cc2fa01"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/nextcloud-deps/ocp/zipball/5636b942e35ee391b1103150261d83d3d753d657",
|
||||
"reference": "5636b942e35ee391b1103150261d83d3d753d657",
|
||||
"url": "https://api.github.com/repos/nextcloud-deps/ocp/zipball/37923c381f59247ae6a4049561454f5d3cc2fa01",
|
||||
"reference": "37923c381f59247ae6a4049561454f5d3cc2fa01",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.4 || ~8.0 || ~8.1",
|
||||
"psr/clock": "^1.0",
|
||||
"psr/container": "^1.1.1",
|
||||
"psr/event-dispatcher": "^1.0",
|
||||
"psr/log": "^1.1"
|
||||
},
|
||||
"default-branch": true,
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
@@ -1292,9 +1290,9 @@
|
||||
"description": "Composer package containing Nextcloud's public API (classes, interfaces)",
|
||||
"support": {
|
||||
"issues": "https://github.com/nextcloud-deps/ocp/issues",
|
||||
"source": "https://github.com/nextcloud-deps/ocp/tree/master"
|
||||
"source": "https://github.com/nextcloud-deps/ocp/tree/stable26"
|
||||
},
|
||||
"time": "2023-02-08T00:37:37+00:00"
|
||||
"time": "2023-05-05T00:32:37+00:00"
|
||||
},
|
||||
{
|
||||
"name": "nikic/php-parser",
|
||||
@@ -2206,54 +2204,6 @@
|
||||
},
|
||||
"time": "2021-02-03T23:26:27+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/clock",
|
||||
"version": "1.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-fig/clock.git",
|
||||
"reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d",
|
||||
"reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.0 || ^8.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Psr\\Clock\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "PHP-FIG",
|
||||
"homepage": "https://www.php-fig.org/"
|
||||
}
|
||||
],
|
||||
"description": "Common interface for reading the clock.",
|
||||
"homepage": "https://github.com/php-fig/clock",
|
||||
"keywords": [
|
||||
"clock",
|
||||
"now",
|
||||
"psr",
|
||||
"psr-20",
|
||||
"time"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/php-fig/clock/issues",
|
||||
"source": "https://github.com/php-fig/clock/tree/1.0.0"
|
||||
},
|
||||
"time": "2022-11-25T14:36:26+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/container",
|
||||
"version": "1.1.2",
|
||||
|
||||
50
l10n/ast.js
50
l10n/ast.js
@@ -1,50 +0,0 @@
|
||||
OC.L10N.register(
|
||||
"deck",
|
||||
{
|
||||
"Deck" : "Deck",
|
||||
"Personal" : "Personal",
|
||||
"%s on %s" : "%s en %s",
|
||||
"Finished" : "Finó",
|
||||
"Action needed" : "Precísase aición",
|
||||
"Later" : "Más sero",
|
||||
"Done" : "Fecho",
|
||||
"The file was uploaded" : "Xubióse'l ficheru",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "El ficheru xubíu perpasa la direutiva de xuba upload_max_filesize en php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "El ficheru xubíu perpasa la direutiva \"MAX_FILE_SIZE\" especificada nel formulariu HTML",
|
||||
"No file was uploaded" : "Nun se xubieron fichjeros",
|
||||
"Missing a temporary folder" : "Falta un direutoriu temporal",
|
||||
"Could not write file to disk" : "Nun pudo escribise nel discu'l ficheru",
|
||||
"A PHP extension stopped the file upload" : "Una estensión de PHP paró la xuba de ficheros",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Data non válida, el formatu ha ser AAAA-MM-DD",
|
||||
"Cancel" : "Encaboxar",
|
||||
"Close" : "Zarrar",
|
||||
"File already exists" : "Yá esiste'l ficheru",
|
||||
"Show archived cards" : "Amosar tarxetes archivaes",
|
||||
"Details" : "Detalles",
|
||||
"Sharing" : "Compartiendo",
|
||||
"Tags" : "Etiquetes",
|
||||
"Undo" : "Desfacer",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Owner",
|
||||
"Delete" : "Desaniciar",
|
||||
"Edit" : "Editar",
|
||||
"Members" : "Miembros",
|
||||
"Download" : "Baxar",
|
||||
"Attachments" : "Axuntos",
|
||||
"Comments" : "Comentarios",
|
||||
"Modified" : "Modificóse'l",
|
||||
"Created" : "Creóse",
|
||||
"Today" : "Güei",
|
||||
"Tomorrow" : "Mañana",
|
||||
"Save" : "Guardar",
|
||||
"Reply" : "Rempuesta",
|
||||
"Update" : "Anovar",
|
||||
"Description" : "Descripción",
|
||||
"(group)" : "(grupu)",
|
||||
"seconds ago" : "hai segundos",
|
||||
"Shared with you" : "Shared with you",
|
||||
"No notifications" : "Ensin avisos",
|
||||
"Share" : "Share"
|
||||
},
|
||||
"nplurals=2; plural=(n != 1);");
|
||||
@@ -1,48 +0,0 @@
|
||||
{ "translations": {
|
||||
"Deck" : "Deck",
|
||||
"Personal" : "Personal",
|
||||
"%s on %s" : "%s en %s",
|
||||
"Finished" : "Finó",
|
||||
"Action needed" : "Precísase aición",
|
||||
"Later" : "Más sero",
|
||||
"Done" : "Fecho",
|
||||
"The file was uploaded" : "Xubióse'l ficheru",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "El ficheru xubíu perpasa la direutiva de xuba upload_max_filesize en php.ini",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "El ficheru xubíu perpasa la direutiva \"MAX_FILE_SIZE\" especificada nel formulariu HTML",
|
||||
"No file was uploaded" : "Nun se xubieron fichjeros",
|
||||
"Missing a temporary folder" : "Falta un direutoriu temporal",
|
||||
"Could not write file to disk" : "Nun pudo escribise nel discu'l ficheru",
|
||||
"A PHP extension stopped the file upload" : "Una estensión de PHP paró la xuba de ficheros",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Data non válida, el formatu ha ser AAAA-MM-DD",
|
||||
"Cancel" : "Encaboxar",
|
||||
"Close" : "Zarrar",
|
||||
"File already exists" : "Yá esiste'l ficheru",
|
||||
"Show archived cards" : "Amosar tarxetes archivaes",
|
||||
"Details" : "Detalles",
|
||||
"Sharing" : "Compartiendo",
|
||||
"Tags" : "Etiquetes",
|
||||
"Undo" : "Desfacer",
|
||||
"Can edit" : "Can edit",
|
||||
"Can share" : "Can share",
|
||||
"Owner" : "Owner",
|
||||
"Delete" : "Desaniciar",
|
||||
"Edit" : "Editar",
|
||||
"Members" : "Miembros",
|
||||
"Download" : "Baxar",
|
||||
"Attachments" : "Axuntos",
|
||||
"Comments" : "Comentarios",
|
||||
"Modified" : "Modificóse'l",
|
||||
"Created" : "Creóse",
|
||||
"Today" : "Güei",
|
||||
"Tomorrow" : "Mañana",
|
||||
"Save" : "Guardar",
|
||||
"Reply" : "Rempuesta",
|
||||
"Update" : "Anovar",
|
||||
"Description" : "Descripción",
|
||||
"(group)" : "(grupu)",
|
||||
"seconds ago" : "hai segundos",
|
||||
"Shared with you" : "Shared with you",
|
||||
"No notifications" : "Ensin avisos",
|
||||
"Share" : "Share"
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
}
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Кликване за разширяване на коментара",
|
||||
"No upcoming cards" : "Няма предстоящи карти",
|
||||
"upcoming cards" : "предстоящи карти",
|
||||
"New card" : "Нова карта",
|
||||
"Due on {date}" : "Краен срок до {date}",
|
||||
"Link to a board" : "Линк към табло",
|
||||
"Link to a card" : "Линк към карта",
|
||||
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "Кликване за разширяване на коментара",
|
||||
"No upcoming cards" : "Няма предстоящи карти",
|
||||
"upcoming cards" : "предстоящи карти",
|
||||
"New card" : "Нова карта",
|
||||
"Due on {date}" : "Краен срок до {date}",
|
||||
"Link to a board" : "Линк към табло",
|
||||
"Link to a card" : "Линк към карта",
|
||||
|
||||
10
l10n/ca.js
10
l10n/ca.js
@@ -79,8 +79,12 @@ OC.L10N.register(
|
||||
"The board \"%s\" has been shared with you by %s." : "El tauler \"%s\" se us ha compartit per %s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} us ha compartit {board}.",
|
||||
"Deck board" : "Tauler de Deck",
|
||||
"Owned by %1$s" : "Propietat de %1$s",
|
||||
"Deck boards, cards and comments" : "Taulers, targetes i comentaris",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "De %1$s, a %2$s/%3$s, propietat de %4$s",
|
||||
"Card comments" : "Comentaris de la targeta",
|
||||
"%s on %s" : "%s a %s",
|
||||
"Deck boards and cards" : "Taulers de piles i targetes",
|
||||
"No data was provided to create an attachment." : "No s’ha proporcionat cap dada per crear un fitxer adjunt.",
|
||||
"Finished" : "Acabat",
|
||||
"To review" : "Per revisar",
|
||||
@@ -153,6 +157,7 @@ OC.L10N.register(
|
||||
"Toggle compact mode" : "Commuta el mode compacte",
|
||||
"Open details" : "Obre els detalls",
|
||||
"Details" : "Detalls",
|
||||
"Currently present people" : "Persones presents actuals",
|
||||
"Loading board" : "S'està carregant el tauler",
|
||||
"No lists available" : "No hi ha cap llista disponible",
|
||||
"Create a new list to add cards to this board" : "Crea una llista nova per afegir targetes a aquest tauler",
|
||||
@@ -181,6 +186,7 @@ OC.L10N.register(
|
||||
"Transfer" : "Transferència",
|
||||
"The board has been transferred to {user}" : "El tauler s'ha transferit a {user}",
|
||||
"Failed to transfer the board to {user}" : "No s'ha pogut transferir el tauler a {user}",
|
||||
"Edit list title" : "Edita el títol de la llista",
|
||||
"Archive all cards" : "Arxiva totes les targetes",
|
||||
"Unarchive all cards" : "Desarxivar totes les targetes",
|
||||
"Delete list" : "Suprimeix la llista",
|
||||
@@ -271,6 +277,7 @@ OC.L10N.register(
|
||||
"Clone board" : "Clonar tauler",
|
||||
"Unarchive board" : "Desarxiva el tauler",
|
||||
"Archive board" : "Arxiva el tauler",
|
||||
"Export board" : "Exportació de tauler",
|
||||
"Turn on due date reminders" : "Activa els recordatoris de data de venciment",
|
||||
"Turn off due date reminders" : "Desactiva els recordatoris de data de venciment",
|
||||
"Due date reminders" : "Recordatoris de data de venciment",
|
||||
@@ -288,12 +295,15 @@ OC.L10N.register(
|
||||
"No due" : "Sense venciment",
|
||||
"Search for {searchQuery} in all boards" : "Busca {searchQuery} a tots els taulers",
|
||||
"No results found" : "No s'han trobat resultats",
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "Tauler de piles {name}\n* Última modificació el dia {lastMod}",
|
||||
"{stack} in {board}" : "{stack} a {board}",
|
||||
"Click to expand description" : "Feu clic per ampliar la descripció",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Creat el {created}\n* Última modificació el dia {lastMod}\n* {nbAttachments} fitxers adjunts\n* {nbComments} comentaris",
|
||||
"{nbCards} cards" : "{nbCards} targetes",
|
||||
"Click to expand comment" : "Feu clic per ampliar el comentari",
|
||||
"No upcoming cards" : "No hi ha pròximes targetes",
|
||||
"upcoming cards" : "pròximes targetes",
|
||||
"New card" : "Nova targeta",
|
||||
"Due on {date}" : "Venciment el dia {date}",
|
||||
"Link to a board" : "Enllaça a un tauler",
|
||||
"Link to a card" : "Enllaç una targeta",
|
||||
|
||||
10
l10n/ca.json
10
l10n/ca.json
@@ -77,8 +77,12 @@
|
||||
"The board \"%s\" has been shared with you by %s." : "El tauler \"%s\" se us ha compartit per %s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} us ha compartit {board}.",
|
||||
"Deck board" : "Tauler de Deck",
|
||||
"Owned by %1$s" : "Propietat de %1$s",
|
||||
"Deck boards, cards and comments" : "Taulers, targetes i comentaris",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "De %1$s, a %2$s/%3$s, propietat de %4$s",
|
||||
"Card comments" : "Comentaris de la targeta",
|
||||
"%s on %s" : "%s a %s",
|
||||
"Deck boards and cards" : "Taulers de piles i targetes",
|
||||
"No data was provided to create an attachment." : "No s’ha proporcionat cap dada per crear un fitxer adjunt.",
|
||||
"Finished" : "Acabat",
|
||||
"To review" : "Per revisar",
|
||||
@@ -151,6 +155,7 @@
|
||||
"Toggle compact mode" : "Commuta el mode compacte",
|
||||
"Open details" : "Obre els detalls",
|
||||
"Details" : "Detalls",
|
||||
"Currently present people" : "Persones presents actuals",
|
||||
"Loading board" : "S'està carregant el tauler",
|
||||
"No lists available" : "No hi ha cap llista disponible",
|
||||
"Create a new list to add cards to this board" : "Crea una llista nova per afegir targetes a aquest tauler",
|
||||
@@ -179,6 +184,7 @@
|
||||
"Transfer" : "Transferència",
|
||||
"The board has been transferred to {user}" : "El tauler s'ha transferit a {user}",
|
||||
"Failed to transfer the board to {user}" : "No s'ha pogut transferir el tauler a {user}",
|
||||
"Edit list title" : "Edita el títol de la llista",
|
||||
"Archive all cards" : "Arxiva totes les targetes",
|
||||
"Unarchive all cards" : "Desarxivar totes les targetes",
|
||||
"Delete list" : "Suprimeix la llista",
|
||||
@@ -269,6 +275,7 @@
|
||||
"Clone board" : "Clonar tauler",
|
||||
"Unarchive board" : "Desarxiva el tauler",
|
||||
"Archive board" : "Arxiva el tauler",
|
||||
"Export board" : "Exportació de tauler",
|
||||
"Turn on due date reminders" : "Activa els recordatoris de data de venciment",
|
||||
"Turn off due date reminders" : "Desactiva els recordatoris de data de venciment",
|
||||
"Due date reminders" : "Recordatoris de data de venciment",
|
||||
@@ -286,12 +293,15 @@
|
||||
"No due" : "Sense venciment",
|
||||
"Search for {searchQuery} in all boards" : "Busca {searchQuery} a tots els taulers",
|
||||
"No results found" : "No s'han trobat resultats",
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "Tauler de piles {name}\n* Última modificació el dia {lastMod}",
|
||||
"{stack} in {board}" : "{stack} a {board}",
|
||||
"Click to expand description" : "Feu clic per ampliar la descripció",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Creat el {created}\n* Última modificació el dia {lastMod}\n* {nbAttachments} fitxers adjunts\n* {nbComments} comentaris",
|
||||
"{nbCards} cards" : "{nbCards} targetes",
|
||||
"Click to expand comment" : "Feu clic per ampliar el comentari",
|
||||
"No upcoming cards" : "No hi ha pròximes targetes",
|
||||
"upcoming cards" : "pròximes targetes",
|
||||
"New card" : "Nova targeta",
|
||||
"Due on {date}" : "Venciment el dia {date}",
|
||||
"Link to a board" : "Enllaça a un tauler",
|
||||
"Link to a card" : "Enllaç una targeta",
|
||||
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Komentář rozbalíte kliknutím",
|
||||
"No upcoming cards" : "Žádné nadcházející karty",
|
||||
"upcoming cards" : "nadcházející karty",
|
||||
"New card" : "Nová karta",
|
||||
"Due on {date}" : "Termín {date}",
|
||||
"Link to a board" : "Propojit s tabulí",
|
||||
"Link to a card" : "Propojit s kartou",
|
||||
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "Komentář rozbalíte kliknutím",
|
||||
"No upcoming cards" : "Žádné nadcházející karty",
|
||||
"upcoming cards" : "nadcházející karty",
|
||||
"New card" : "Nová karta",
|
||||
"Due on {date}" : "Termín {date}",
|
||||
"Link to a board" : "Propojit s tabulí",
|
||||
"Link to a card" : "Propojit s kartou",
|
||||
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Klicken, um den Kommentar zu erweitern",
|
||||
"No upcoming cards" : "Keine anstehenden Karten",
|
||||
"upcoming cards" : "Anstehende Karten",
|
||||
"New card" : "Neue Karte",
|
||||
"Due on {date}" : "Fällig am {date}",
|
||||
"Link to a board" : "Mit einem Board verknüpfen",
|
||||
"Link to a card" : "Mit einer Karte verknüpfen",
|
||||
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "Klicken, um den Kommentar zu erweitern",
|
||||
"No upcoming cards" : "Keine anstehenden Karten",
|
||||
"upcoming cards" : "Anstehende Karten",
|
||||
"New card" : "Neue Karte",
|
||||
"Due on {date}" : "Fällig am {date}",
|
||||
"Link to a board" : "Mit einem Board verknüpfen",
|
||||
"Link to a card" : "Mit einer Karte verknüpfen",
|
||||
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Klicken, um den Kommentar zu erweitern",
|
||||
"No upcoming cards" : "Keine anstehenden Karten",
|
||||
"upcoming cards" : "Anstehende Karten",
|
||||
"New card" : "Neue Karte",
|
||||
"Due on {date}" : "Fällig am {date}",
|
||||
"Link to a board" : "Mit einem Board verknüpfen",
|
||||
"Link to a card" : "Mit einer Karte verknüpfen",
|
||||
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "Klicken, um den Kommentar zu erweitern",
|
||||
"No upcoming cards" : "Keine anstehenden Karten",
|
||||
"upcoming cards" : "Anstehende Karten",
|
||||
"New card" : "Neue Karte",
|
||||
"Due on {date}" : "Fällig am {date}",
|
||||
"Link to a board" : "Mit einem Board verknüpfen",
|
||||
"Link to a card" : "Mit einer Karte verknüpfen",
|
||||
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Click to expand comment",
|
||||
"No upcoming cards" : "No upcoming cards",
|
||||
"upcoming cards" : "upcoming cards",
|
||||
"New card" : "New card",
|
||||
"Due on {date}" : "Due on {date}",
|
||||
"Link to a board" : "Link to a board",
|
||||
"Link to a card" : "Link to a card",
|
||||
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "Click to expand comment",
|
||||
"No upcoming cards" : "No upcoming cards",
|
||||
"upcoming cards" : "upcoming cards",
|
||||
"New card" : "New card",
|
||||
"Due on {date}" : "Due on {date}",
|
||||
"Link to a board" : "Link to a board",
|
||||
"Link to a card" : "Link to a card",
|
||||
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Pulse para expandir el comentario",
|
||||
"No upcoming cards" : "No hay tarjetas próximas",
|
||||
"upcoming cards" : "próximas tarjetas",
|
||||
"New card" : "Nueva tarjeta",
|
||||
"Due on {date}" : "Vence en {date}",
|
||||
"Link to a board" : "Enlace a un tablero",
|
||||
"Link to a card" : "Enlace a una tarjeta",
|
||||
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "Pulse para expandir el comentario",
|
||||
"No upcoming cards" : "No hay tarjetas próximas",
|
||||
"upcoming cards" : "próximas tarjetas",
|
||||
"New card" : "Nueva tarjeta",
|
||||
"Due on {date}" : "Vence en {date}",
|
||||
"Link to a board" : "Enlace a un tablero",
|
||||
"Link to a card" : "Enlace a una tarjeta",
|
||||
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Egin klik iruzkina handitzeko",
|
||||
"No upcoming cards" : "Ez dago hurrengo txartelik",
|
||||
"upcoming cards" : "hurrengo txartelak",
|
||||
"New card" : "Txartel berria",
|
||||
"Due on {date}" : "Iraungitze-data {date}",
|
||||
"Link to a board" : "Estekatu taula batera",
|
||||
"Link to a card" : "Estekatu txartel batera",
|
||||
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "Egin klik iruzkina handitzeko",
|
||||
"No upcoming cards" : "Ez dago hurrengo txartelik",
|
||||
"upcoming cards" : "hurrengo txartelak",
|
||||
"New card" : "Txartel berria",
|
||||
"Due on {date}" : "Iraungitze-data {date}",
|
||||
"Link to a board" : "Estekatu taula batera",
|
||||
"Link to a card" : "Estekatu txartel batera",
|
||||
|
||||
@@ -125,7 +125,7 @@ OC.L10N.register(
|
||||
"Card \"{card}\" was added to \"{board}\"" : "La carte \"{card}\" a été ajoutée au tableau \"{board}\"",
|
||||
"Open card" : "Ouvrir la carte",
|
||||
"Close" : "Fermer",
|
||||
"Create card" : "Créer une carte",
|
||||
"Create card" : "Créer la carte",
|
||||
"Select a card" : "Sélectionnez une carte",
|
||||
"Select the card to link to a project" : "Sélectionner la carte à relier à un projet",
|
||||
"Link to card" : "Relier à une carte",
|
||||
@@ -212,7 +212,7 @@ OC.L10N.register(
|
||||
"File to share" : "Fichier à partager",
|
||||
"Invalid path selected" : "Chemin sélectionné non valide",
|
||||
"Open in sidebar view" : "Ouvrir dans le panneau latéral",
|
||||
"Open in bigger view" : "Ouvrir dans la vue principale",
|
||||
"Open in bigger view" : "Ouvrir dans la vue large",
|
||||
"Attachments" : "Pièces jointes",
|
||||
"Comments" : "Commentaires",
|
||||
"Modified" : "Modifiée",
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Cliquer pour déplier le commentaire",
|
||||
"No upcoming cards" : "Pas de cartes à venir",
|
||||
"upcoming cards" : "cartes à venir",
|
||||
"New card" : "Nouvelle carte",
|
||||
"Due on {date}" : "Échéance le {date}",
|
||||
"Link to a board" : "Relier à un tableau",
|
||||
"Link to a card" : "Relier à une carte",
|
||||
|
||||
@@ -123,7 +123,7 @@
|
||||
"Card \"{card}\" was added to \"{board}\"" : "La carte \"{card}\" a été ajoutée au tableau \"{board}\"",
|
||||
"Open card" : "Ouvrir la carte",
|
||||
"Close" : "Fermer",
|
||||
"Create card" : "Créer une carte",
|
||||
"Create card" : "Créer la carte",
|
||||
"Select a card" : "Sélectionnez une carte",
|
||||
"Select the card to link to a project" : "Sélectionner la carte à relier à un projet",
|
||||
"Link to card" : "Relier à une carte",
|
||||
@@ -210,7 +210,7 @@
|
||||
"File to share" : "Fichier à partager",
|
||||
"Invalid path selected" : "Chemin sélectionné non valide",
|
||||
"Open in sidebar view" : "Ouvrir dans le panneau latéral",
|
||||
"Open in bigger view" : "Ouvrir dans la vue principale",
|
||||
"Open in bigger view" : "Ouvrir dans la vue large",
|
||||
"Attachments" : "Pièces jointes",
|
||||
"Comments" : "Commentaires",
|
||||
"Modified" : "Modifiée",
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "Cliquer pour déplier le commentaire",
|
||||
"No upcoming cards" : "Pas de cartes à venir",
|
||||
"upcoming cards" : "cartes à venir",
|
||||
"New card" : "Nouvelle carte",
|
||||
"Due on {date}" : "Échéance le {date}",
|
||||
"Link to a board" : "Relier à un tableau",
|
||||
"Link to a card" : "Relier à une carte",
|
||||
|
||||
@@ -220,7 +220,7 @@ OC.L10N.register(
|
||||
"Formatting help" : "Axuda de formatado",
|
||||
"Edit description" : "Editar a descrición",
|
||||
"View description" : "Ver a descrición",
|
||||
"Add Attachment" : "Engadir o anexo",
|
||||
"Add Attachment" : "Engadir un anexo",
|
||||
"Write a description …" : "Escriba unha descrición…",
|
||||
"Choose attachment" : "Escoller o anexo",
|
||||
"(group)" : "(grupo)",
|
||||
|
||||
@@ -218,7 +218,7 @@
|
||||
"Formatting help" : "Axuda de formatado",
|
||||
"Edit description" : "Editar a descrición",
|
||||
"View description" : "Ver a descrición",
|
||||
"Add Attachment" : "Engadir o anexo",
|
||||
"Add Attachment" : "Engadir un anexo",
|
||||
"Write a description …" : "Escriba unha descrición…",
|
||||
"Choose attachment" : "Escoller o anexo",
|
||||
"(group)" : "(grupo)",
|
||||
|
||||
@@ -79,8 +79,12 @@ OC.L10N.register(
|
||||
"The board \"%s\" has been shared with you by %s." : "A(z) „%s” táblát %s osztotta meg Önnel.",
|
||||
"{user} has shared {deck-board} with you." : "{user} megosztotta Önnel a(z) {deck-board} táblát.",
|
||||
"Deck board" : "Kártyatábla",
|
||||
"Owned by %1$s" : "Tulajdonos: %1$s",
|
||||
"Deck boards, cards and comments" : "Kártyatáblák, kártyák és megjegyzések",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "A következőtől: %1$s, ebben: %2$s/%3$s, tulajdonos: %4$s",
|
||||
"Card comments" : "Kártya hozzászólásai",
|
||||
"%s on %s" : "%s ezen: %s",
|
||||
"Deck boards and cards" : "Kártyatáblák és kártyák",
|
||||
"No data was provided to create an attachment." : "Nincsenek megadva adatok a melléklet létrehozásához.",
|
||||
"Finished" : "Kész",
|
||||
"To review" : "Áttekintendő",
|
||||
@@ -291,6 +295,7 @@ OC.L10N.register(
|
||||
"No due" : "Nincs határidő",
|
||||
"Search for {searchQuery} in all boards" : "Keresés a(z) {searchQuery} kifejezésre az összes táblában",
|
||||
"No results found" : "Nincs találat",
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "{name} kártyatábla\n* Legutóbb módosítva: {lastMod}",
|
||||
"{stack} in {board}" : "{stack} itt: {board}",
|
||||
"Click to expand description" : "Kattintson a leírás kibontásához",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Létrehozva: {created}\n* Utoljára módosítva: {lastMod}\n* {nbAttachments} melléklet\n* {nbComments} megjegyzés",
|
||||
@@ -298,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Kattintson a megjegyzés kibontásához",
|
||||
"No upcoming cards" : "Nincsenek közelgő kártyák",
|
||||
"upcoming cards" : "közelgő kártyák",
|
||||
"New card" : "Új kártya",
|
||||
"Due on {date}" : "Határidő: {date}",
|
||||
"Link to a board" : "Hivatkozás egy táblához",
|
||||
"Link to a card" : "Hivatkozás egy kártyához",
|
||||
|
||||
@@ -77,8 +77,12 @@
|
||||
"The board \"%s\" has been shared with you by %s." : "A(z) „%s” táblát %s osztotta meg Önnel.",
|
||||
"{user} has shared {deck-board} with you." : "{user} megosztotta Önnel a(z) {deck-board} táblát.",
|
||||
"Deck board" : "Kártyatábla",
|
||||
"Owned by %1$s" : "Tulajdonos: %1$s",
|
||||
"Deck boards, cards and comments" : "Kártyatáblák, kártyák és megjegyzések",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "A következőtől: %1$s, ebben: %2$s/%3$s, tulajdonos: %4$s",
|
||||
"Card comments" : "Kártya hozzászólásai",
|
||||
"%s on %s" : "%s ezen: %s",
|
||||
"Deck boards and cards" : "Kártyatáblák és kártyák",
|
||||
"No data was provided to create an attachment." : "Nincsenek megadva adatok a melléklet létrehozásához.",
|
||||
"Finished" : "Kész",
|
||||
"To review" : "Áttekintendő",
|
||||
@@ -289,6 +293,7 @@
|
||||
"No due" : "Nincs határidő",
|
||||
"Search for {searchQuery} in all boards" : "Keresés a(z) {searchQuery} kifejezésre az összes táblában",
|
||||
"No results found" : "Nincs találat",
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "{name} kártyatábla\n* Legutóbb módosítva: {lastMod}",
|
||||
"{stack} in {board}" : "{stack} itt: {board}",
|
||||
"Click to expand description" : "Kattintson a leírás kibontásához",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Létrehozva: {created}\n* Utoljára módosítva: {lastMod}\n* {nbAttachments} melléklet\n* {nbComments} megjegyzés",
|
||||
@@ -296,6 +301,7 @@
|
||||
"Click to expand comment" : "Kattintson a megjegyzés kibontásához",
|
||||
"No upcoming cards" : "Nincsenek közelgő kártyák",
|
||||
"upcoming cards" : "közelgő kártyák",
|
||||
"New card" : "Új kártya",
|
||||
"Due on {date}" : "Határidő: {date}",
|
||||
"Link to a board" : "Hivatkozás egy táblához",
|
||||
"Link to a card" : "Hivatkozás egy kártyához",
|
||||
|
||||
@@ -3,6 +3,14 @@ OC.L10N.register(
|
||||
{
|
||||
"Personal" : "Անձնական",
|
||||
"Done" : "Done",
|
||||
"The file was uploaded" : "Նիշքը վերբերռնված է",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Վերբեռնած նիշքը գերազանցում է upload_max_filesize սահմանված php.ini֊ում",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Վերբեռնած նիշքը գերազանցում է MAX_FILE_SIZE, որը սահմանված է HTML ձևաթղթում",
|
||||
"The file was only partially uploaded" : "Նիշքի մի մասն է վերբեռնված",
|
||||
"No file was uploaded" : "Ոչ մի նիշք չի վերնբեռնվել",
|
||||
"Missing a temporary folder" : "Բացակայում է ժամանակավոր պանակը",
|
||||
"Could not write file to disk" : "Չհաջողվեց գրառել նիշքը սկավառակի վրա",
|
||||
"A PHP extension stopped the file upload" : "PHP֊ի ընդլայնումն կանգնեցրեց նիշքի վերբեռնումը",
|
||||
"Cancel" : "ընդհատել",
|
||||
"Close" : "Փակել",
|
||||
"Details" : "Մանրամասներ",
|
||||
|
||||
@@ -1,6 +1,14 @@
|
||||
{ "translations": {
|
||||
"Personal" : "Անձնական",
|
||||
"Done" : "Done",
|
||||
"The file was uploaded" : "Նիշքը վերբերռնված է",
|
||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Վերբեռնած նիշքը գերազանցում է upload_max_filesize սահմանված php.ini֊ում",
|
||||
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Վերբեռնած նիշքը գերազանցում է MAX_FILE_SIZE, որը սահմանված է HTML ձևաթղթում",
|
||||
"The file was only partially uploaded" : "Նիշքի մի մասն է վերբեռնված",
|
||||
"No file was uploaded" : "Ոչ մի նիշք չի վերնբեռնվել",
|
||||
"Missing a temporary folder" : "Բացակայում է ժամանակավոր պանակը",
|
||||
"Could not write file to disk" : "Չհաջողվեց գրառել նիշքը սկավառակի վրա",
|
||||
"A PHP extension stopped the file upload" : "PHP֊ի ընդլայնումն կանգնեցրեց նիշքի վերբեռնումը",
|
||||
"Cancel" : "ընդհատել",
|
||||
"Close" : "Փակել",
|
||||
"Details" : "Մանրամասներ",
|
||||
|
||||
@@ -67,6 +67,7 @@ OC.L10N.register(
|
||||
"Deck" : "Longgok",
|
||||
"Changes in the <strong>Deck app</strong>" : "Perubahan pada <strong>aplikasi Longgok</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "<strong>Komentar</strong> telah dibuat pada suatu kartu",
|
||||
"Upcoming cards" : "Kartu berikut",
|
||||
"Personal" : "Personal",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Kartu \"%s\" pada \"%s\" telah ditugaskan kepada Anda oleh %s.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Kartu \"%s\" pada \"%s\" telah melampaui tenggat.",
|
||||
@@ -93,6 +94,7 @@ OC.L10N.register(
|
||||
"Could not write file to disk" : "Tidak dapat menulis berkas ke diska",
|
||||
"A PHP extension stopped the file upload" : "Ekstensi PHP menghentikan proses unggah berkas",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Gagal unggah berkas atau ukuran melampaui batas maksimum %s",
|
||||
"Card not found" : "Kartu tidak ditemukan",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Tanggal salah, format tanggal harus TTTT-BB-HH",
|
||||
"Personal planning and team project organization" : "Perencanaan pribadi dan pengelolaan proyek tim",
|
||||
"Add board" : "Tambah papan",
|
||||
@@ -115,10 +117,12 @@ OC.L10N.register(
|
||||
"Drop your files to upload" : "Lepas berkas Anda untuk mengunggah",
|
||||
"Add card" : "Tambah kartu",
|
||||
"Archived cards" : "Arsip kartu",
|
||||
"Add list" : "Tambahkan daftar",
|
||||
"List name" : "Nama daftar",
|
||||
"Apply filter" : "Terapkan filter",
|
||||
"Filter by tag" : "Filter dengan tag",
|
||||
"Filter by assigned user" : "Filter dengan pengguna",
|
||||
"Unassigned" : "Belum ditugaskan",
|
||||
"Filter by due date" : "Filter dengan tenggat",
|
||||
"Overdue" : "Lewat tenggat",
|
||||
"Next 24 hours" : "Jangka 24 jam",
|
||||
@@ -208,11 +212,14 @@ OC.L10N.register(
|
||||
"Clone board" : "Pengklonaan papan",
|
||||
"Unarchive board" : "Memulihkan papan",
|
||||
"Archive board" : "Mengarsipkan papan",
|
||||
"No notifications" : "Tidak ada notifikasi.",
|
||||
"No notifications" : "Tidak ada notifikasi",
|
||||
"Delete board" : "Hapus papan",
|
||||
"Board {0} deleted" : "{0} papan terhapus",
|
||||
"An error occurred" : "Terjadi kesalahan",
|
||||
"Delete the board?" : "Hapus papan?",
|
||||
"Click to expand comment" : "Klik untuk membuka komentar",
|
||||
"No upcoming cards" : "Tidak ada kartu berikut",
|
||||
"upcoming cards" : "kartu berikut",
|
||||
"Link to a board" : "Tautan ke papan",
|
||||
"Link to a card" : "Tautan ke kartu",
|
||||
"Something went wrong" : "Ada yang salah",
|
||||
|
||||
@@ -65,6 +65,7 @@
|
||||
"Deck" : "Longgok",
|
||||
"Changes in the <strong>Deck app</strong>" : "Perubahan pada <strong>aplikasi Longgok</strong>",
|
||||
"A <strong>comment</strong> was created on a card" : "<strong>Komentar</strong> telah dibuat pada suatu kartu",
|
||||
"Upcoming cards" : "Kartu berikut",
|
||||
"Personal" : "Personal",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Kartu \"%s\" pada \"%s\" telah ditugaskan kepada Anda oleh %s.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Kartu \"%s\" pada \"%s\" telah melampaui tenggat.",
|
||||
@@ -91,6 +92,7 @@
|
||||
"Could not write file to disk" : "Tidak dapat menulis berkas ke diska",
|
||||
"A PHP extension stopped the file upload" : "Ekstensi PHP menghentikan proses unggah berkas",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Gagal unggah berkas atau ukuran melampaui batas maksimum %s",
|
||||
"Card not found" : "Kartu tidak ditemukan",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Tanggal salah, format tanggal harus TTTT-BB-HH",
|
||||
"Personal planning and team project organization" : "Perencanaan pribadi dan pengelolaan proyek tim",
|
||||
"Add board" : "Tambah papan",
|
||||
@@ -113,10 +115,12 @@
|
||||
"Drop your files to upload" : "Lepas berkas Anda untuk mengunggah",
|
||||
"Add card" : "Tambah kartu",
|
||||
"Archived cards" : "Arsip kartu",
|
||||
"Add list" : "Tambahkan daftar",
|
||||
"List name" : "Nama daftar",
|
||||
"Apply filter" : "Terapkan filter",
|
||||
"Filter by tag" : "Filter dengan tag",
|
||||
"Filter by assigned user" : "Filter dengan pengguna",
|
||||
"Unassigned" : "Belum ditugaskan",
|
||||
"Filter by due date" : "Filter dengan tenggat",
|
||||
"Overdue" : "Lewat tenggat",
|
||||
"Next 24 hours" : "Jangka 24 jam",
|
||||
@@ -206,11 +210,14 @@
|
||||
"Clone board" : "Pengklonaan papan",
|
||||
"Unarchive board" : "Memulihkan papan",
|
||||
"Archive board" : "Mengarsipkan papan",
|
||||
"No notifications" : "Tidak ada notifikasi.",
|
||||
"No notifications" : "Tidak ada notifikasi",
|
||||
"Delete board" : "Hapus papan",
|
||||
"Board {0} deleted" : "{0} papan terhapus",
|
||||
"An error occurred" : "Terjadi kesalahan",
|
||||
"Delete the board?" : "Hapus papan?",
|
||||
"Click to expand comment" : "Klik untuk membuka komentar",
|
||||
"No upcoming cards" : "Tidak ada kartu berikut",
|
||||
"upcoming cards" : "kartu berikut",
|
||||
"Link to a board" : "Tautan ke papan",
|
||||
"Link to a card" : "Tautan ke kartu",
|
||||
"Something went wrong" : "Ada yang salah",
|
||||
|
||||
@@ -175,6 +175,7 @@ OC.L10N.register(
|
||||
"Owner" : "Proprietario",
|
||||
"Delete" : "Elimina",
|
||||
"Failed to create share with {displayName}" : "Creazione della condivisione con {displayName} non riuscita",
|
||||
"Transfer the board." : "Trasferisci la bacheca.",
|
||||
"Transfer" : "Trasferisci",
|
||||
"Archive all cards" : "Archivia tutte le schede",
|
||||
"Delete list" : "Elimina elenco",
|
||||
@@ -290,6 +291,8 @@ OC.L10N.register(
|
||||
"Share with a Deck card" : "Condividi con una scheda di Deck",
|
||||
"Share {file} with a Deck card" : "Condividi {file} con una scheda di Deck",
|
||||
"Share" : "Condividi",
|
||||
"Transfer the board for {user} successfully" : "Trasferimento della bacheca per {user} avvenuta con successo.",
|
||||
"Failed to transfer the board for {user}" : "Trasferimento della bacheca per {user} fallito",
|
||||
"Add a new list" : "Aggiungi un nuovo elenco",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Sei sicuro di voler eliminare la lavagna {title}? Questo eliminerà tutti i dati di questa lavagna?"
|
||||
},
|
||||
|
||||
@@ -173,6 +173,7 @@
|
||||
"Owner" : "Proprietario",
|
||||
"Delete" : "Elimina",
|
||||
"Failed to create share with {displayName}" : "Creazione della condivisione con {displayName} non riuscita",
|
||||
"Transfer the board." : "Trasferisci la bacheca.",
|
||||
"Transfer" : "Trasferisci",
|
||||
"Archive all cards" : "Archivia tutte le schede",
|
||||
"Delete list" : "Elimina elenco",
|
||||
@@ -288,6 +289,8 @@
|
||||
"Share with a Deck card" : "Condividi con una scheda di Deck",
|
||||
"Share {file} with a Deck card" : "Condividi {file} con una scheda di Deck",
|
||||
"Share" : "Condividi",
|
||||
"Transfer the board for {user} successfully" : "Trasferimento della bacheca per {user} avvenuta con successo.",
|
||||
"Failed to transfer the board for {user}" : "Trasferimento della bacheca per {user} fallito",
|
||||
"Add a new list" : "Aggiungi un nuovo elenco",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Sei sicuro di voler eliminare la lavagna {title}? Questo eliminerà tutti i dati di questa lavagna?"
|
||||
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
|
||||
|
||||
@@ -79,8 +79,12 @@ OC.L10N.register(
|
||||
"The board \"%s\" has been shared with you by %s." : "Tablica \"%s\" została Tobie udostępniona przez %s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} udostępnił Tobie {deck-board}.",
|
||||
"Deck board" : "Tablica Deck",
|
||||
"Owned by %1$s" : "Właścicielem jest %1$s",
|
||||
"Deck boards, cards and comments" : "Tablice, karty i komentarze",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "Od %1$s, w %2$s/%3$s, posiadane przez %4$s",
|
||||
"Card comments" : "Komentarze karty",
|
||||
"%s on %s" : "%s na %s",
|
||||
"Deck boards and cards" : "Tablice i karty",
|
||||
"No data was provided to create an attachment." : "Nie podano żadnych danych do utworzenia załącznika.",
|
||||
"Finished" : "Ukończone",
|
||||
"To review" : "Do sprawdzenia",
|
||||
@@ -291,6 +295,7 @@ OC.L10N.register(
|
||||
"No due" : "Bez ważności",
|
||||
"Search for {searchQuery} in all boards" : "Wyszukaj dla {searchQuery} na wszystkich tablicach",
|
||||
"No results found" : "Nie znaleziono wyników",
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "Tablica {name}\n* Ostatnia modyfikacja w dniu {lastMod}",
|
||||
"{stack} in {board}" : "{stack} na {board}",
|
||||
"Click to expand description" : "Kliknij, aby rozwinąć opis",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Utworzono {created}\n* Ostatnia modyfikacja {lastMod}\n* Załączniki {nbAttachments}\n* Komentarze {nbComments}",
|
||||
@@ -298,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Kliknij, aby rozwinąć komentarz",
|
||||
"No upcoming cards" : "Brak nadchodzących kart",
|
||||
"upcoming cards" : "nadchodzące karty",
|
||||
"New card" : "Nowa karta",
|
||||
"Due on {date}" : "Termin {date}",
|
||||
"Link to a board" : "Link do tablicy",
|
||||
"Link to a card" : "Link do karty",
|
||||
|
||||
@@ -77,8 +77,12 @@
|
||||
"The board \"%s\" has been shared with you by %s." : "Tablica \"%s\" została Tobie udostępniona przez %s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} udostępnił Tobie {deck-board}.",
|
||||
"Deck board" : "Tablica Deck",
|
||||
"Owned by %1$s" : "Właścicielem jest %1$s",
|
||||
"Deck boards, cards and comments" : "Tablice, karty i komentarze",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "Od %1$s, w %2$s/%3$s, posiadane przez %4$s",
|
||||
"Card comments" : "Komentarze karty",
|
||||
"%s on %s" : "%s na %s",
|
||||
"Deck boards and cards" : "Tablice i karty",
|
||||
"No data was provided to create an attachment." : "Nie podano żadnych danych do utworzenia załącznika.",
|
||||
"Finished" : "Ukończone",
|
||||
"To review" : "Do sprawdzenia",
|
||||
@@ -289,6 +293,7 @@
|
||||
"No due" : "Bez ważności",
|
||||
"Search for {searchQuery} in all boards" : "Wyszukaj dla {searchQuery} na wszystkich tablicach",
|
||||
"No results found" : "Nie znaleziono wyników",
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "Tablica {name}\n* Ostatnia modyfikacja w dniu {lastMod}",
|
||||
"{stack} in {board}" : "{stack} na {board}",
|
||||
"Click to expand description" : "Kliknij, aby rozwinąć opis",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Utworzono {created}\n* Ostatnia modyfikacja {lastMod}\n* Załączniki {nbAttachments}\n* Komentarze {nbComments}",
|
||||
@@ -296,6 +301,7 @@
|
||||
"Click to expand comment" : "Kliknij, aby rozwinąć komentarz",
|
||||
"No upcoming cards" : "Brak nadchodzących kart",
|
||||
"upcoming cards" : "nadchodzące karty",
|
||||
"New card" : "Nowa karta",
|
||||
"Due on {date}" : "Termin {date}",
|
||||
"Link to a board" : "Link do tablicy",
|
||||
"Link to a card" : "Link do karty",
|
||||
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Clique para expandir o comentário",
|
||||
"No upcoming cards" : "Não há mais cartões",
|
||||
"upcoming cards" : "próximos cartões",
|
||||
"New card" : "New card",
|
||||
"Due on {date}" : "Vencimento em {date}",
|
||||
"Link to a board" : "Vincular a um painel",
|
||||
"Link to a card" : "Vincular a um cartão",
|
||||
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "Clique para expandir o comentário",
|
||||
"No upcoming cards" : "Não há mais cartões",
|
||||
"upcoming cards" : "próximos cartões",
|
||||
"New card" : "New card",
|
||||
"Due on {date}" : "Vencimento em {date}",
|
||||
"Link to a board" : "Vincular a um painel",
|
||||
"Link to a card" : "Vincular a um cartão",
|
||||
|
||||
@@ -81,6 +81,7 @@ OC.L10N.register(
|
||||
"Deck board" : "Доска",
|
||||
"Owned by %1$s" : "Владелец: %1$s",
|
||||
"Deck boards, cards and comments" : "Доски, карточки и комментарии",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "Из %1$s, в %2$s/%3$s, принадлежит %4$s",
|
||||
"Card comments" : "Комментарии карточки",
|
||||
"%s on %s" : "%s на %s",
|
||||
"Deck boards and cards" : "Доски и карточки",
|
||||
@@ -156,6 +157,7 @@ OC.L10N.register(
|
||||
"Toggle compact mode" : "Выбор компактного или обычного режима просмотра",
|
||||
"Open details" : "Открыть подробности",
|
||||
"Details" : "Свойства",
|
||||
"Currently present people" : "Присутствующие в настоящее время люди",
|
||||
"Loading board" : "Загрузка доски",
|
||||
"No lists available" : "Нет ни одного списка",
|
||||
"Create a new list to add cards to this board" : "Создайте список чтобы добавить карточки на эту доску",
|
||||
@@ -296,10 +298,12 @@ OC.L10N.register(
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "Доска «{name}»\n* Последнее изменение: {lastMod}",
|
||||
"{stack} in {board}" : "«{stack}» с доски «{board}»",
|
||||
"Click to expand description" : "Нажмите, чтобы развернуть поле описания",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Создано {created}\n* Последнее изменение {lastMod}\n* {nbAttachments} вложений\n* {nbComments} комментариев",
|
||||
"{nbCards} cards" : "карточек: {nbCards}",
|
||||
"Click to expand comment" : "Нажмите, чтобы развернуть комментарии",
|
||||
"No upcoming cards" : "Отсутствуют карточки, ожидающие выполнения",
|
||||
"upcoming cards" : "карточки, ожидающие выполнения",
|
||||
"New card" : "Новая карточка",
|
||||
"Due on {date}" : "Дата исполнения: {date}",
|
||||
"Link to a board" : "Ссылка на доску",
|
||||
"Link to a card" : "Ссылка на карточку",
|
||||
|
||||
@@ -79,6 +79,7 @@
|
||||
"Deck board" : "Доска",
|
||||
"Owned by %1$s" : "Владелец: %1$s",
|
||||
"Deck boards, cards and comments" : "Доски, карточки и комментарии",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "Из %1$s, в %2$s/%3$s, принадлежит %4$s",
|
||||
"Card comments" : "Комментарии карточки",
|
||||
"%s on %s" : "%s на %s",
|
||||
"Deck boards and cards" : "Доски и карточки",
|
||||
@@ -154,6 +155,7 @@
|
||||
"Toggle compact mode" : "Выбор компактного или обычного режима просмотра",
|
||||
"Open details" : "Открыть подробности",
|
||||
"Details" : "Свойства",
|
||||
"Currently present people" : "Присутствующие в настоящее время люди",
|
||||
"Loading board" : "Загрузка доски",
|
||||
"No lists available" : "Нет ни одного списка",
|
||||
"Create a new list to add cards to this board" : "Создайте список чтобы добавить карточки на эту доску",
|
||||
@@ -294,10 +296,12 @@
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "Доска «{name}»\n* Последнее изменение: {lastMod}",
|
||||
"{stack} in {board}" : "«{stack}» с доски «{board}»",
|
||||
"Click to expand description" : "Нажмите, чтобы развернуть поле описания",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Создано {created}\n* Последнее изменение {lastMod}\n* {nbAttachments} вложений\n* {nbComments} комментариев",
|
||||
"{nbCards} cards" : "карточек: {nbCards}",
|
||||
"Click to expand comment" : "Нажмите, чтобы развернуть комментарии",
|
||||
"No upcoming cards" : "Отсутствуют карточки, ожидающие выполнения",
|
||||
"upcoming cards" : "карточки, ожидающие выполнения",
|
||||
"New card" : "Новая карточка",
|
||||
"Due on {date}" : "Дата исполнения: {date}",
|
||||
"Link to a board" : "Ссылка на доску",
|
||||
"Link to a card" : "Ссылка на карточку",
|
||||
|
||||
69
l10n/sr.js
69
l10n/sr.js
@@ -71,11 +71,20 @@ OC.L10N.register(
|
||||
"Load more" : "Учитај још",
|
||||
"Personal" : "Лично",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Корисник %s Вам је доделио картицу „%s“ са табле „%s“.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} вам је доделио картицу {deck-card} на {deck-board}.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Картици „%s“ на табли „%s“ је истекао рок.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "Картица {deck-card} на {deck-board} је дошла достигла датум када треба да се реши.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s Вас је поменуо у коментару на „%s“.",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} вас је поменуо у коментару на {deck-card}.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Корисник „%s“ је поделио са Вама таблу „%s“.",
|
||||
"{user} has shared {deck-board} with you." : "{user} је са вама поделио {deck-board}.",
|
||||
"Deck board" : "Табла Шпила",
|
||||
"Owned by %1$s" : "Власник је %1$s",
|
||||
"Deck boards, cards and comments" : "Табле шпилова, картице и коментари",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "Од %1$s, у %2$s/%3$s, власник је %4$s",
|
||||
"Card comments" : "Коментари картица",
|
||||
"%s on %s" : "%s на %s",
|
||||
"Deck boards and cards" : "Табле шпилова и картице",
|
||||
"No data was provided to create an attachment." : "Нису дати подаци за креирање прилога.",
|
||||
"Finished" : "Завршено",
|
||||
"To review" : "Треба прегледати",
|
||||
@@ -97,16 +106,24 @@ OC.L10N.register(
|
||||
"Could not write file to disk" : "Не могу да пишем на диск",
|
||||
"A PHP extension stopped the file upload" : "PHP екстензија је зауставила отпремање фајла",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Ниједан фајл није отпремљен или величина фајла премашује максимум од %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Овај коментар има више од %s карактера.\nДодат је као прилог картици под именом %s.\nДоступно је на URL адреси: %s.",
|
||||
"Card not found" : "Картица није нађена",
|
||||
"Path is already shared with this card" : "Путања се већ дели са овом картицом",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Неисправан датим, формат датума мора бити ГГГГ-ММ-ДД",
|
||||
"Personal planning and team project organization" : "Лични планер и организатор тимског пројекта",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Шпил је организациони алат у канбан стилу који је намењен личном планирању и организацији пројекта у тимовима интегрисаним са Nextcloud.\n\n\n- 📥 Додајте своје задатке у картице и поређајте их по редоследу\n- 📄 Напишите додатне белешке употребом Markdown синтаксе\n- 🔖 Доделите ознаке у циљу још боље организације\n- 👥 Делите са својим тимом, пријатељима или породицом\n- 📎 Прикачите фајлове и уградите их у свој Markdown опис\n- 💬 Дискутујте са својим тимом користећи коментаре\n- ⚡ Пратите измене у току активности\n- 🚀 Организујте свој пројекат",
|
||||
"Add board" : "Додај таблу",
|
||||
"Select the board to link to a project" : "Одаберите таблу да је повежете са пројектом",
|
||||
"Search by board title" : "Претражи по наслову табле",
|
||||
"Select board" : "Одаберите таблу",
|
||||
"Create a new card" : "Креирај нову картицу",
|
||||
"Select a board" : "Изаберите таблу",
|
||||
"Select a list" : "Одабери списак",
|
||||
"Card title" : "Наслов картицњ",
|
||||
"Cancel" : "Одустани",
|
||||
"Creating the new card …" : "Креира се нова картица ...",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "Картица „{card}” је додта на „{board}",
|
||||
"Open card" : "Отвори картицу",
|
||||
"Close" : "Затвори",
|
||||
"Create card" : "Направите картицу",
|
||||
"Select a card" : "Изаберите картицу",
|
||||
@@ -123,6 +140,7 @@ OC.L10N.register(
|
||||
"Archived cards" : "Архивиране картице",
|
||||
"Add list" : "Додај списак",
|
||||
"List name" : "Назив листе",
|
||||
"Active filters" : "Активни филтери",
|
||||
"Apply filter" : "Примени филтер",
|
||||
"Filter by tag" : "Филтрирај по ознаци",
|
||||
"Filter by assigned user" : "Филтрирај по додељеном кориснику",
|
||||
@@ -139,6 +157,7 @@ OC.L10N.register(
|
||||
"Toggle compact mode" : "Укључи/искључи компактни режим",
|
||||
"Open details" : "Отвори детаље",
|
||||
"Details" : "Детаљи",
|
||||
"Currently present people" : "Тренутно присутне особе",
|
||||
"Loading board" : "Учитавам таблу",
|
||||
"No lists available" : "Нема доступних спискова",
|
||||
"Create a new list to add cards to this board" : "Направите нови списак да додате картице на ову таблу",
|
||||
@@ -151,6 +170,7 @@ OC.L10N.register(
|
||||
"Undo" : "Опозови",
|
||||
"Deleted cards" : "Обрисане картице",
|
||||
"Share board with a user, group or circle …" : "Подели таблу са корисником, групом или кругом…",
|
||||
"Searching for users, groups and circles …" : "Претрага корисника, група и кругова ...",
|
||||
"No participants found" : "Нема нађених учесника",
|
||||
"Board owner" : "Власник табле",
|
||||
"(Group)" : "(група)",
|
||||
@@ -161,10 +181,17 @@ OC.L10N.register(
|
||||
"Owner" : "Власник",
|
||||
"Delete" : "Избриши",
|
||||
"Failed to create share with {displayName}" : "Грешка у прављењу дељења са {displayName}",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Да ли сте сигурни да кориснику {user} пренесете таблу {title}?",
|
||||
"Transfer the board." : "Пренос табле.",
|
||||
"Transfer" : "Пренеси",
|
||||
"The board has been transferred to {user}" : "Табла је пренета кориснику {user}",
|
||||
"Failed to transfer the board to {user}" : "Није успео пренос табле кориснику {user}",
|
||||
"Edit list title" : "Уреди наслов листе",
|
||||
"Archive all cards" : "Архивирај све картице",
|
||||
"Unarchive all cards" : "Врати све картице из архиве",
|
||||
"Delete list" : "Обриши списак",
|
||||
"Archive all cards in this list" : "Архивирај све картице са овог списка",
|
||||
"Unarchive all cards in this list" : "Враћа из архиве све картице у овој листи",
|
||||
"Add a new card" : "Додај нову картицу",
|
||||
"Card name" : "Име картице",
|
||||
"List deleted" : "Листа обрисана",
|
||||
@@ -173,8 +200,13 @@ OC.L10N.register(
|
||||
"title and color value must be provided" : "морају се дати вредности за наслов и боју",
|
||||
"Board name" : "Име табле",
|
||||
"Members" : "Чланови",
|
||||
"Upload new files" : "Отпреми нове фајлове",
|
||||
"Share from Files" : "Подели из Фајлова",
|
||||
"Pending share" : "Дељење на чекању",
|
||||
"Add this attachment" : "Додај овај прилог",
|
||||
"Show in Files" : "Прикажи у Фајловима",
|
||||
"Download" : "Преузми",
|
||||
"Remove attachment" : "Уклони прилог",
|
||||
"Delete Attachment" : "Обриши прилог",
|
||||
"Restore Attachment" : "Поврати прилог",
|
||||
"File to share" : "Фајл за дељење",
|
||||
@@ -187,6 +219,7 @@ OC.L10N.register(
|
||||
"Created" : "Направљен",
|
||||
"The title cannot be empty." : "Наслов не може бити празан.",
|
||||
"No comments yet. Begin the discussion!" : "Нема још коментара. Започните дискусију!",
|
||||
"Failed to load comments" : "Није успело учитавање коментара",
|
||||
"Assign a tag to this card…" : "Додели ознаку овој картици…",
|
||||
"Assign to users" : "Додели корисницима",
|
||||
"Assign to users/groups/circles" : "Додели корисницима/групама/круговима",
|
||||
@@ -197,10 +230,13 @@ OC.L10N.register(
|
||||
"Select Date" : "Одаберите датум",
|
||||
"Today" : "Данас",
|
||||
"Tomorrow" : "сутра",
|
||||
"Next week" : "Наредне недеље",
|
||||
"Next month" : "Наредног месеца",
|
||||
"Save" : "Сачувај",
|
||||
"The comment cannot be empty." : "Коментар не може да буде празан.",
|
||||
"The comment cannot be longer than 1000 characters." : "Коментар не може да има преко 1000 карактера.",
|
||||
"In reply to" : "Као одговор на",
|
||||
"Cancel reply" : "Откажи одговор",
|
||||
"Reply" : "Одговори",
|
||||
"Update" : "Ажурирај",
|
||||
"Description" : "Опис",
|
||||
@@ -210,8 +246,12 @@ OC.L10N.register(
|
||||
"Edit description" : "Измени опис",
|
||||
"View description" : "Погледај опис",
|
||||
"Add Attachment" : "Додај прилог",
|
||||
"Write a description …" : "Напишите опис ...",
|
||||
"Choose attachment" : "Одабери прилог",
|
||||
"(group)" : "(група)",
|
||||
"Todo items" : "Ставке обавеза",
|
||||
"{count} comments, {unread} unread" : "{count} коментара, {unread} није прочитано",
|
||||
"Edit card title" : "Уреди наслов картице",
|
||||
"Assign to me" : "Додели мени",
|
||||
"Unassign myself" : "Склони са мене",
|
||||
"Move card" : "Премести картицу",
|
||||
@@ -226,6 +266,9 @@ OC.L10N.register(
|
||||
"All boards" : "Све табле",
|
||||
"Archived boards" : "Архивиране табле",
|
||||
"Shared with you" : "Дељено са Вама",
|
||||
"Deck settings" : "Поставке Шпила",
|
||||
"Use bigger card view" : "Користи већи приказ картице",
|
||||
"Show card ID badge" : "Прикажи беџ ID картице",
|
||||
"Show boards in calendar/tasks" : "Прикажи табле у календару/задацима",
|
||||
"Limit deck usage of groups" : "Ограничи употребу шпила на групе",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Ограничавање Deck апликације ће блокирати кориснике који нису део одабраних група да креирају своје табле. Корисници ће и даље моћи да раде на таблама које су подељене са њима.",
|
||||
@@ -234,22 +277,48 @@ OC.L10N.register(
|
||||
"Clone board" : "Клонирај таблу",
|
||||
"Unarchive board" : "Врати таблу из архиве",
|
||||
"Archive board" : "Архивирај таблу",
|
||||
"Export board" : "Извези таблу",
|
||||
"Turn on due date reminders" : "Укључи подсетнике о року",
|
||||
"Turn off due date reminders" : "Искључи подсетнике о року",
|
||||
"Due date reminders" : "Подсетници о року",
|
||||
"All cards" : "Све картице",
|
||||
"Assigned cards" : "Додељене картице",
|
||||
"No notifications" : "Нема обавештења",
|
||||
"Delete board" : "Избриши таблу",
|
||||
"Board {0} deleted" : "Табла {0} обрисана",
|
||||
"Only assigned cards" : "Само додељене картице",
|
||||
"No reminder" : "Нема подсетника",
|
||||
"An error occurred" : "Догодила се грешка",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Да ли сте сигурни да желите да обришете таблу {title}? Ово ће да обрише све податке на овој табли, укључијући и архивиране картице.",
|
||||
"Delete the board?" : "Обрисати таблу?",
|
||||
"Loading filtered view" : "Учитам филтрирани преглед",
|
||||
"No due" : "Нема рокова",
|
||||
"Search for {searchQuery} in all boards" : "Тражи се {searchQuery} у свим таблама",
|
||||
"No results found" : "Нема пронађених резултата",
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "Шпил табла {name}\n* Последњи пут измењена дана {lastMod}",
|
||||
"{stack} in {board}" : "{stack} у {board}",
|
||||
"Click to expand description" : "Кликните да проширите опис",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Креирано дана {created}\n* Последњи пут измењено дана {lastMod}\n* {nbAttachments} прилога\n* {nbComments} коментара",
|
||||
"{nbCards} cards" : "{nbCards} картица",
|
||||
"Click to expand comment" : "Кликните да проширите коментар",
|
||||
"No upcoming cards" : "Нема предстојећих картица",
|
||||
"upcoming cards" : "предстојеће картице",
|
||||
"New card" : "Нова картица",
|
||||
"Due on {date}" : "Рок је {date}",
|
||||
"Link to a board" : "Веза ка табли",
|
||||
"Link to a card" : "Веза ка картици",
|
||||
"Create a card" : "Креирај картицу",
|
||||
"Message from {author} in {conversationName}" : "Порука од {author} у {conversationName}",
|
||||
"Something went wrong" : "Нешто је пошло наопако",
|
||||
"Failed to upload {name}" : "Није успело отпремање {name}",
|
||||
"Maximum file size of {size} exceeded" : "Премашена максимална величина фајла од {size}",
|
||||
"Error creating the share" : "Грешка при прављењу дељења",
|
||||
"Share with a Deck card" : "Дели са Шпил картицом",
|
||||
"Share {file} with a Deck card" : "Дели {file} са Шпил картицом",
|
||||
"Share" : "Подели",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Да ли сте сигурни да желите пренети таблу {title} за {user}?",
|
||||
"Transfer the board for {user} successfully" : "Пренос табле за {user} је успео",
|
||||
"Failed to transfer the board for {user}" : "Пренос табле за {user} није успео",
|
||||
"Add a new list" : "Додај нови списак",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Да ли стварно желите да обришете таблу {title}? Овим ћете обрисати све податке са табле."
|
||||
},
|
||||
|
||||
69
l10n/sr.json
69
l10n/sr.json
@@ -69,11 +69,20 @@
|
||||
"Load more" : "Учитај још",
|
||||
"Personal" : "Лично",
|
||||
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Корисник %s Вам је доделио картицу „%s“ са табле „%s“.",
|
||||
"{user} has assigned the card {deck-card} on {deck-board} to you." : "{user} вам је доделио картицу {deck-card} на {deck-board}.",
|
||||
"The card \"%s\" on \"%s\" has reached its due date." : "Картици „%s“ на табли „%s“ је истекао рок.",
|
||||
"The card {deck-card} on {deck-board} has reached its due date." : "Картица {deck-card} на {deck-board} је дошла достигла датум када треба да се реши.",
|
||||
"%s has mentioned you in a comment on \"%s\"." : "%s Вас је поменуо у коментару на „%s“.",
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} вас је поменуо у коментару на {deck-card}.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Корисник „%s“ је поделио са Вама таблу „%s“.",
|
||||
"{user} has shared {deck-board} with you." : "{user} је са вама поделио {deck-board}.",
|
||||
"Deck board" : "Табла Шпила",
|
||||
"Owned by %1$s" : "Власник је %1$s",
|
||||
"Deck boards, cards and comments" : "Табле шпилова, картице и коментари",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "Од %1$s, у %2$s/%3$s, власник је %4$s",
|
||||
"Card comments" : "Коментари картица",
|
||||
"%s on %s" : "%s на %s",
|
||||
"Deck boards and cards" : "Табле шпилова и картице",
|
||||
"No data was provided to create an attachment." : "Нису дати подаци за креирање прилога.",
|
||||
"Finished" : "Завршено",
|
||||
"To review" : "Треба прегледати",
|
||||
@@ -95,16 +104,24 @@
|
||||
"Could not write file to disk" : "Не могу да пишем на диск",
|
||||
"A PHP extension stopped the file upload" : "PHP екстензија је зауставила отпремање фајла",
|
||||
"No file uploaded or file size exceeds maximum of %s" : "Ниједан фајл није отпремљен или величина фајла премашује максимум од %s",
|
||||
"This comment has more than %s characters.\nAdded as an attachment to the card with name %s.\nAccessible on URL: %s." : "Овај коментар има више од %s карактера.\nДодат је као прилог картици под именом %s.\nДоступно је на URL адреси: %s.",
|
||||
"Card not found" : "Картица није нађена",
|
||||
"Path is already shared with this card" : "Путања се већ дели са овом картицом",
|
||||
"Invalid date, date format must be YYYY-MM-DD" : "Неисправан датим, формат датума мора бити ГГГГ-ММ-ДД",
|
||||
"Personal planning and team project organization" : "Лични планер и организатор тимског пројекта",
|
||||
"Deck is a kanban style organization tool aimed at personal planning and project organization for teams integrated with Nextcloud.\n\n\n- 📥 Add your tasks to cards and put them in order\n- 📄 Write down additional notes in Markdown\n- 🔖 Assign labels for even better organization\n- 👥 Share with your team, friends or family\n- 📎 Attach files and embed them in your Markdown description\n- 💬 Discuss with your team using comments\n- ⚡ Keep track of changes in the activity stream\n- 🚀 Get your project organized" : "Шпил је организациони алат у канбан стилу који је намењен личном планирању и организацији пројекта у тимовима интегрисаним са Nextcloud.\n\n\n- 📥 Додајте своје задатке у картице и поређајте их по редоследу\n- 📄 Напишите додатне белешке употребом Markdown синтаксе\n- 🔖 Доделите ознаке у циљу још боље организације\n- 👥 Делите са својим тимом, пријатељима или породицом\n- 📎 Прикачите фајлове и уградите их у свој Markdown опис\n- 💬 Дискутујте са својим тимом користећи коментаре\n- ⚡ Пратите измене у току активности\n- 🚀 Организујте свој пројекат",
|
||||
"Add board" : "Додај таблу",
|
||||
"Select the board to link to a project" : "Одаберите таблу да је повежете са пројектом",
|
||||
"Search by board title" : "Претражи по наслову табле",
|
||||
"Select board" : "Одаберите таблу",
|
||||
"Create a new card" : "Креирај нову картицу",
|
||||
"Select a board" : "Изаберите таблу",
|
||||
"Select a list" : "Одабери списак",
|
||||
"Card title" : "Наслов картицњ",
|
||||
"Cancel" : "Одустани",
|
||||
"Creating the new card …" : "Креира се нова картица ...",
|
||||
"Card \"{card}\" was added to \"{board}\"" : "Картица „{card}” је додта на „{board}",
|
||||
"Open card" : "Отвори картицу",
|
||||
"Close" : "Затвори",
|
||||
"Create card" : "Направите картицу",
|
||||
"Select a card" : "Изаберите картицу",
|
||||
@@ -121,6 +138,7 @@
|
||||
"Archived cards" : "Архивиране картице",
|
||||
"Add list" : "Додај списак",
|
||||
"List name" : "Назив листе",
|
||||
"Active filters" : "Активни филтери",
|
||||
"Apply filter" : "Примени филтер",
|
||||
"Filter by tag" : "Филтрирај по ознаци",
|
||||
"Filter by assigned user" : "Филтрирај по додељеном кориснику",
|
||||
@@ -137,6 +155,7 @@
|
||||
"Toggle compact mode" : "Укључи/искључи компактни режим",
|
||||
"Open details" : "Отвори детаље",
|
||||
"Details" : "Детаљи",
|
||||
"Currently present people" : "Тренутно присутне особе",
|
||||
"Loading board" : "Учитавам таблу",
|
||||
"No lists available" : "Нема доступних спискова",
|
||||
"Create a new list to add cards to this board" : "Направите нови списак да додате картице на ову таблу",
|
||||
@@ -149,6 +168,7 @@
|
||||
"Undo" : "Опозови",
|
||||
"Deleted cards" : "Обрисане картице",
|
||||
"Share board with a user, group or circle …" : "Подели таблу са корисником, групом или кругом…",
|
||||
"Searching for users, groups and circles …" : "Претрага корисника, група и кругова ...",
|
||||
"No participants found" : "Нема нађених учесника",
|
||||
"Board owner" : "Власник табле",
|
||||
"(Group)" : "(група)",
|
||||
@@ -159,10 +179,17 @@
|
||||
"Owner" : "Власник",
|
||||
"Delete" : "Избриши",
|
||||
"Failed to create share with {displayName}" : "Грешка у прављењу дељења са {displayName}",
|
||||
"Are you sure you want to transfer the board {title} to {user}?" : "Да ли сте сигурни да кориснику {user} пренесете таблу {title}?",
|
||||
"Transfer the board." : "Пренос табле.",
|
||||
"Transfer" : "Пренеси",
|
||||
"The board has been transferred to {user}" : "Табла је пренета кориснику {user}",
|
||||
"Failed to transfer the board to {user}" : "Није успео пренос табле кориснику {user}",
|
||||
"Edit list title" : "Уреди наслов листе",
|
||||
"Archive all cards" : "Архивирај све картице",
|
||||
"Unarchive all cards" : "Врати све картице из архиве",
|
||||
"Delete list" : "Обриши списак",
|
||||
"Archive all cards in this list" : "Архивирај све картице са овог списка",
|
||||
"Unarchive all cards in this list" : "Враћа из архиве све картице у овој листи",
|
||||
"Add a new card" : "Додај нову картицу",
|
||||
"Card name" : "Име картице",
|
||||
"List deleted" : "Листа обрисана",
|
||||
@@ -171,8 +198,13 @@
|
||||
"title and color value must be provided" : "морају се дати вредности за наслов и боју",
|
||||
"Board name" : "Име табле",
|
||||
"Members" : "Чланови",
|
||||
"Upload new files" : "Отпреми нове фајлове",
|
||||
"Share from Files" : "Подели из Фајлова",
|
||||
"Pending share" : "Дељење на чекању",
|
||||
"Add this attachment" : "Додај овај прилог",
|
||||
"Show in Files" : "Прикажи у Фајловима",
|
||||
"Download" : "Преузми",
|
||||
"Remove attachment" : "Уклони прилог",
|
||||
"Delete Attachment" : "Обриши прилог",
|
||||
"Restore Attachment" : "Поврати прилог",
|
||||
"File to share" : "Фајл за дељење",
|
||||
@@ -185,6 +217,7 @@
|
||||
"Created" : "Направљен",
|
||||
"The title cannot be empty." : "Наслов не може бити празан.",
|
||||
"No comments yet. Begin the discussion!" : "Нема још коментара. Започните дискусију!",
|
||||
"Failed to load comments" : "Није успело учитавање коментара",
|
||||
"Assign a tag to this card…" : "Додели ознаку овој картици…",
|
||||
"Assign to users" : "Додели корисницима",
|
||||
"Assign to users/groups/circles" : "Додели корисницима/групама/круговима",
|
||||
@@ -195,10 +228,13 @@
|
||||
"Select Date" : "Одаберите датум",
|
||||
"Today" : "Данас",
|
||||
"Tomorrow" : "сутра",
|
||||
"Next week" : "Наредне недеље",
|
||||
"Next month" : "Наредног месеца",
|
||||
"Save" : "Сачувај",
|
||||
"The comment cannot be empty." : "Коментар не може да буде празан.",
|
||||
"The comment cannot be longer than 1000 characters." : "Коментар не може да има преко 1000 карактера.",
|
||||
"In reply to" : "Као одговор на",
|
||||
"Cancel reply" : "Откажи одговор",
|
||||
"Reply" : "Одговори",
|
||||
"Update" : "Ажурирај",
|
||||
"Description" : "Опис",
|
||||
@@ -208,8 +244,12 @@
|
||||
"Edit description" : "Измени опис",
|
||||
"View description" : "Погледај опис",
|
||||
"Add Attachment" : "Додај прилог",
|
||||
"Write a description …" : "Напишите опис ...",
|
||||
"Choose attachment" : "Одабери прилог",
|
||||
"(group)" : "(група)",
|
||||
"Todo items" : "Ставке обавеза",
|
||||
"{count} comments, {unread} unread" : "{count} коментара, {unread} није прочитано",
|
||||
"Edit card title" : "Уреди наслов картице",
|
||||
"Assign to me" : "Додели мени",
|
||||
"Unassign myself" : "Склони са мене",
|
||||
"Move card" : "Премести картицу",
|
||||
@@ -224,6 +264,9 @@
|
||||
"All boards" : "Све табле",
|
||||
"Archived boards" : "Архивиране табле",
|
||||
"Shared with you" : "Дељено са Вама",
|
||||
"Deck settings" : "Поставке Шпила",
|
||||
"Use bigger card view" : "Користи већи приказ картице",
|
||||
"Show card ID badge" : "Прикажи беџ ID картице",
|
||||
"Show boards in calendar/tasks" : "Прикажи табле у календару/задацима",
|
||||
"Limit deck usage of groups" : "Ограничи употребу шпила на групе",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Ограничавање Deck апликације ће блокирати кориснике који нису део одабраних група да креирају своје табле. Корисници ће и даље моћи да раде на таблама које су подељене са њима.",
|
||||
@@ -232,22 +275,48 @@
|
||||
"Clone board" : "Клонирај таблу",
|
||||
"Unarchive board" : "Врати таблу из архиве",
|
||||
"Archive board" : "Архивирај таблу",
|
||||
"Export board" : "Извези таблу",
|
||||
"Turn on due date reminders" : "Укључи подсетнике о року",
|
||||
"Turn off due date reminders" : "Искључи подсетнике о року",
|
||||
"Due date reminders" : "Подсетници о року",
|
||||
"All cards" : "Све картице",
|
||||
"Assigned cards" : "Додељене картице",
|
||||
"No notifications" : "Нема обавештења",
|
||||
"Delete board" : "Избриши таблу",
|
||||
"Board {0} deleted" : "Табла {0} обрисана",
|
||||
"Only assigned cards" : "Само додељене картице",
|
||||
"No reminder" : "Нема подсетника",
|
||||
"An error occurred" : "Догодила се грешка",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Да ли сте сигурни да желите да обришете таблу {title}? Ово ће да обрише све податке на овој табли, укључијући и архивиране картице.",
|
||||
"Delete the board?" : "Обрисати таблу?",
|
||||
"Loading filtered view" : "Учитам филтрирани преглед",
|
||||
"No due" : "Нема рокова",
|
||||
"Search for {searchQuery} in all boards" : "Тражи се {searchQuery} у свим таблама",
|
||||
"No results found" : "Нема пронађених резултата",
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "Шпил табла {name}\n* Последњи пут измењена дана {lastMod}",
|
||||
"{stack} in {board}" : "{stack} у {board}",
|
||||
"Click to expand description" : "Кликните да проширите опис",
|
||||
"* Created on {created}\n* Last modified on {lastMod}\n* {nbAttachments} attachments\n* {nbComments} comments" : "* Креирано дана {created}\n* Последњи пут измењено дана {lastMod}\n* {nbAttachments} прилога\n* {nbComments} коментара",
|
||||
"{nbCards} cards" : "{nbCards} картица",
|
||||
"Click to expand comment" : "Кликните да проширите коментар",
|
||||
"No upcoming cards" : "Нема предстојећих картица",
|
||||
"upcoming cards" : "предстојеће картице",
|
||||
"New card" : "Нова картица",
|
||||
"Due on {date}" : "Рок је {date}",
|
||||
"Link to a board" : "Веза ка табли",
|
||||
"Link to a card" : "Веза ка картици",
|
||||
"Create a card" : "Креирај картицу",
|
||||
"Message from {author} in {conversationName}" : "Порука од {author} у {conversationName}",
|
||||
"Something went wrong" : "Нешто је пошло наопако",
|
||||
"Failed to upload {name}" : "Није успело отпремање {name}",
|
||||
"Maximum file size of {size} exceeded" : "Премашена максимална величина фајла од {size}",
|
||||
"Error creating the share" : "Грешка при прављењу дељења",
|
||||
"Share with a Deck card" : "Дели са Шпил картицом",
|
||||
"Share {file} with a Deck card" : "Дели {file} са Шпил картицом",
|
||||
"Share" : "Подели",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Да ли сте сигурни да желите пренети таблу {title} за {user}?",
|
||||
"Transfer the board for {user} successfully" : "Пренос табле за {user} је успео",
|
||||
"Failed to transfer the board for {user}" : "Пренос табле за {user} није успео",
|
||||
"Add a new list" : "Додај нови списак",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Да ли стварно желите да обришете таблу {title}? Овим ћете обрисати све податке са табле."
|
||||
},"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"
|
||||
|
||||
15
l10n/sv.js
15
l10n/sv.js
@@ -78,7 +78,7 @@ OC.L10N.register(
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} har nämnt dig i en kommentar i {deck-card}.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Tavlan \"%s\" har delats med dig av %s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} har delat {deck-board} med dig.",
|
||||
"Deck board" : "Deck-plank",
|
||||
"Deck board" : "Deck-tavla",
|
||||
"Owned by %1$s" : "Ägd av %1$s",
|
||||
"Deck boards, cards and comments" : "Deck tavlor, kort och kommentarer",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "Från %1$s, i %2$s/%3$s, ägd av %4$s",
|
||||
@@ -92,7 +92,7 @@ OC.L10N.register(
|
||||
"Later" : "Senare",
|
||||
"copy" : "kopiera",
|
||||
"To do" : "Att göra",
|
||||
"Doing" : "Gör",
|
||||
"Doing" : "Pågående",
|
||||
"Done" : "Klart",
|
||||
"Example Task 3" : "Exempeluppgift 3",
|
||||
"Example Task 2" : "Exempeluppgift 2",
|
||||
@@ -249,7 +249,7 @@ OC.L10N.register(
|
||||
"Write a description …" : "Ange en beskrivning ...",
|
||||
"Choose attachment" : "Välj bilaga",
|
||||
"(group)" : " (grupp)",
|
||||
"Todo items" : "Todo saker",
|
||||
"Todo items" : "Att göra saker",
|
||||
"{count} comments, {unread} unread" : "{count} kommentarer, {unread} olästa",
|
||||
"Edit card title" : "Ändra korttitel",
|
||||
"Assign to me" : "Tilldela till mig",
|
||||
@@ -289,7 +289,7 @@ OC.L10N.register(
|
||||
"Only assigned cards" : "Bara tilldelade kort",
|
||||
"No reminder" : "Ingen påminnelse",
|
||||
"An error occurred" : "Ett fel uppstod",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Är du säker på att du vill radera brädet {title}? Detta kommer radera all data som tillhör brädet inklusive arkiverade kort.",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Är du säker på att du vill radera tavla {title}? Detta kommer radera all data som tillhör tavlan inklusive arkiverade kort.",
|
||||
"Delete the board?" : "Ta bort tavlan?",
|
||||
"Loading filtered view" : "Laddar filtrerad vy",
|
||||
"No due" : "Inget slut",
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Klicka för att utöka kommentaren",
|
||||
"No upcoming cards" : "Inga kommande kort",
|
||||
"upcoming cards" : "kommande kort",
|
||||
"New card" : "Nytt kort",
|
||||
"Due on {date}" : "Går ut {date}",
|
||||
"Link to a board" : "Länka till en tavla",
|
||||
"Link to a card" : "Länka till ett kort",
|
||||
@@ -315,9 +316,9 @@ OC.L10N.register(
|
||||
"Share with a Deck card" : "Dela med ett Deck-kort",
|
||||
"Share {file} with a Deck card" : "Dela {file} med ett Deck-kort",
|
||||
"Share" : "Dela",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Är du säker på att du vill överföra brädet {title} för {user}?",
|
||||
"Transfer the board for {user} successfully" : "Överförde brädet för {user}",
|
||||
"Failed to transfer the board for {user}" : "Misslyckades med att överföra brädet för {user}",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Är du säker på att du vill överföra tavla {title} för {user}?",
|
||||
"Transfer the board for {user} successfully" : "Överförde tavlan för {user}",
|
||||
"Failed to transfer the board for {user}" : "Misslyckades med att överföra tavlan för {user}",
|
||||
"Add a new list" : "Lägg till en ny lista",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Är du säker på att du vill radera tavla {title}? Detta kommer att radera all information från denna tavla."
|
||||
},
|
||||
|
||||
15
l10n/sv.json
15
l10n/sv.json
@@ -76,7 +76,7 @@
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} har nämnt dig i en kommentar i {deck-card}.",
|
||||
"The board \"%s\" has been shared with you by %s." : "Tavlan \"%s\" har delats med dig av %s.",
|
||||
"{user} has shared {deck-board} with you." : "{user} har delat {deck-board} med dig.",
|
||||
"Deck board" : "Deck-plank",
|
||||
"Deck board" : "Deck-tavla",
|
||||
"Owned by %1$s" : "Ägd av %1$s",
|
||||
"Deck boards, cards and comments" : "Deck tavlor, kort och kommentarer",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "Från %1$s, i %2$s/%3$s, ägd av %4$s",
|
||||
@@ -90,7 +90,7 @@
|
||||
"Later" : "Senare",
|
||||
"copy" : "kopiera",
|
||||
"To do" : "Att göra",
|
||||
"Doing" : "Gör",
|
||||
"Doing" : "Pågående",
|
||||
"Done" : "Klart",
|
||||
"Example Task 3" : "Exempeluppgift 3",
|
||||
"Example Task 2" : "Exempeluppgift 2",
|
||||
@@ -247,7 +247,7 @@
|
||||
"Write a description …" : "Ange en beskrivning ...",
|
||||
"Choose attachment" : "Välj bilaga",
|
||||
"(group)" : " (grupp)",
|
||||
"Todo items" : "Todo saker",
|
||||
"Todo items" : "Att göra saker",
|
||||
"{count} comments, {unread} unread" : "{count} kommentarer, {unread} olästa",
|
||||
"Edit card title" : "Ändra korttitel",
|
||||
"Assign to me" : "Tilldela till mig",
|
||||
@@ -287,7 +287,7 @@
|
||||
"Only assigned cards" : "Bara tilldelade kort",
|
||||
"No reminder" : "Ingen påminnelse",
|
||||
"An error occurred" : "Ett fel uppstod",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Är du säker på att du vill radera brädet {title}? Detta kommer radera all data som tillhör brädet inklusive arkiverade kort.",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Är du säker på att du vill radera tavla {title}? Detta kommer radera all data som tillhör tavlan inklusive arkiverade kort.",
|
||||
"Delete the board?" : "Ta bort tavlan?",
|
||||
"Loading filtered view" : "Laddar filtrerad vy",
|
||||
"No due" : "Inget slut",
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "Klicka för att utöka kommentaren",
|
||||
"No upcoming cards" : "Inga kommande kort",
|
||||
"upcoming cards" : "kommande kort",
|
||||
"New card" : "Nytt kort",
|
||||
"Due on {date}" : "Går ut {date}",
|
||||
"Link to a board" : "Länka till en tavla",
|
||||
"Link to a card" : "Länka till ett kort",
|
||||
@@ -313,9 +314,9 @@
|
||||
"Share with a Deck card" : "Dela med ett Deck-kort",
|
||||
"Share {file} with a Deck card" : "Dela {file} med ett Deck-kort",
|
||||
"Share" : "Dela",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Är du säker på att du vill överföra brädet {title} för {user}?",
|
||||
"Transfer the board for {user} successfully" : "Överförde brädet för {user}",
|
||||
"Failed to transfer the board for {user}" : "Misslyckades med att överföra brädet för {user}",
|
||||
"Are you sure you want to transfer the board {title} for {user}?" : "Är du säker på att du vill överföra tavla {title} för {user}?",
|
||||
"Transfer the board for {user} successfully" : "Överförde tavlan för {user}",
|
||||
"Failed to transfer the board for {user}" : "Misslyckades med att överföra tavlan för {user}",
|
||||
"Add a new list" : "Lägg till en ny lista",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Är du säker på att du vill radera tavla {title}? Detta kommer att radera all information från denna tavla."
|
||||
},"pluralForm" :"nplurals=2; plural=(n != 1);"
|
||||
|
||||
15
l10n/tr.js
15
l10n/tr.js
@@ -63,10 +63,10 @@ OC.L10N.register(
|
||||
"{user} has restored the attachment {attachment} to card {card}" : "{user}, {card} kartındaki {attachment} dosyasını geri yükledi",
|
||||
"You have commented on card {card}" : "{card} kartı hakkında yorum yaptınız",
|
||||
"{user} has commented on card {card}" : "{user}, {card} kartı hakkında yorum yaptı",
|
||||
"A <strong>card description</strong> inside the Deck app has been changed" : "Tahta uygulamasında bir <strong>kart açıklaması</strong> değiştirildi",
|
||||
"A <strong>card description</strong> inside the Deck app has been changed" : "Tahta uygulamasında bir <strong>kart açıklaması</strong> değiştirildiğinde",
|
||||
"Deck" : "Tahta",
|
||||
"Changes in the <strong>Deck app</strong>" : "<strong>Tahta uygulamasındaki</strong> değişiklikler",
|
||||
"A <strong>comment</strong> was created on a card" : "Bir kart için bir <strong>yorum</strong> yapıldı",
|
||||
"Changes in the <strong>Deck app</strong>" : "<strong>Tahta uygulamasında</strong> değişiklik yapıldığında",
|
||||
"A <strong>comment</strong> was created on a card" : "Bir kart için bir <strong>yorum</strong> yapıldığında",
|
||||
"Upcoming cards" : "Yaklaşan kartlar",
|
||||
"Load more" : "Diğerlerini yükle",
|
||||
"Personal" : "Kişisel",
|
||||
@@ -128,7 +128,7 @@ OC.L10N.register(
|
||||
"Create card" : "Kart ekle",
|
||||
"Select a card" : "Bir kart seçin",
|
||||
"Select the card to link to a project" : "Bir proje ile ilişkilendirilecek kart bağlantısını seçin",
|
||||
"Link to card" : "Kart ile ilişkilendir",
|
||||
"Link to card" : "Kart bağlantısı",
|
||||
"File already exists" : "Dosya zaten var",
|
||||
"A file with the name {filename} already exists." : "{filename} adlı bir dosya zaten var.",
|
||||
"Do you want to overwrite it?" : "Üzerine yazmak ister misiniz?",
|
||||
@@ -293,7 +293,7 @@ OC.L10N.register(
|
||||
"Delete the board?" : "Pano silinsin mi?",
|
||||
"Loading filtered view" : "Süzülmüş görünüm yükleniyor",
|
||||
"No due" : "Bitiş yok",
|
||||
"Search for {searchQuery} in all boards" : "Tüm panolarda {searchQuery} için sonuçlar",
|
||||
"Search for {searchQuery} in all boards" : "Tüm panolarda {searchQuery} araması için sonuçlar",
|
||||
"No results found" : "Herhangi bir sonuç bulunamadı",
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "{name} tahta panosu\n* Son değişiklik: {lastMod}",
|
||||
"{stack} in {board}" : "{stack} {board} panosunda",
|
||||
@@ -303,9 +303,10 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "Yorumu genişletmek için tıklayın",
|
||||
"No upcoming cards" : "Yaklaşan bir kart yok",
|
||||
"upcoming cards" : "yaklaşan kartlar",
|
||||
"New card" : "Kart ekle",
|
||||
"Due on {date}" : "{date} tarihinde bitecek",
|
||||
"Link to a board" : "Bir pano ile ilişkilendir",
|
||||
"Link to a card" : "Bir kart ile ilişkilendir",
|
||||
"Link to a board" : "Bir pano bağlantısı",
|
||||
"Link to a card" : "Bir kart bağlantısı",
|
||||
"Create a card" : "Bir kart ekle",
|
||||
"Message from {author} in {conversationName}" : "{conversationName} görüşmesinde {author} iletisi",
|
||||
"Something went wrong" : "Bir şeyler ters gitti",
|
||||
|
||||
15
l10n/tr.json
15
l10n/tr.json
@@ -61,10 +61,10 @@
|
||||
"{user} has restored the attachment {attachment} to card {card}" : "{user}, {card} kartındaki {attachment} dosyasını geri yükledi",
|
||||
"You have commented on card {card}" : "{card} kartı hakkında yorum yaptınız",
|
||||
"{user} has commented on card {card}" : "{user}, {card} kartı hakkında yorum yaptı",
|
||||
"A <strong>card description</strong> inside the Deck app has been changed" : "Tahta uygulamasında bir <strong>kart açıklaması</strong> değiştirildi",
|
||||
"A <strong>card description</strong> inside the Deck app has been changed" : "Tahta uygulamasında bir <strong>kart açıklaması</strong> değiştirildiğinde",
|
||||
"Deck" : "Tahta",
|
||||
"Changes in the <strong>Deck app</strong>" : "<strong>Tahta uygulamasındaki</strong> değişiklikler",
|
||||
"A <strong>comment</strong> was created on a card" : "Bir kart için bir <strong>yorum</strong> yapıldı",
|
||||
"Changes in the <strong>Deck app</strong>" : "<strong>Tahta uygulamasında</strong> değişiklik yapıldığında",
|
||||
"A <strong>comment</strong> was created on a card" : "Bir kart için bir <strong>yorum</strong> yapıldığında",
|
||||
"Upcoming cards" : "Yaklaşan kartlar",
|
||||
"Load more" : "Diğerlerini yükle",
|
||||
"Personal" : "Kişisel",
|
||||
@@ -126,7 +126,7 @@
|
||||
"Create card" : "Kart ekle",
|
||||
"Select a card" : "Bir kart seçin",
|
||||
"Select the card to link to a project" : "Bir proje ile ilişkilendirilecek kart bağlantısını seçin",
|
||||
"Link to card" : "Kart ile ilişkilendir",
|
||||
"Link to card" : "Kart bağlantısı",
|
||||
"File already exists" : "Dosya zaten var",
|
||||
"A file with the name {filename} already exists." : "{filename} adlı bir dosya zaten var.",
|
||||
"Do you want to overwrite it?" : "Üzerine yazmak ister misiniz?",
|
||||
@@ -291,7 +291,7 @@
|
||||
"Delete the board?" : "Pano silinsin mi?",
|
||||
"Loading filtered view" : "Süzülmüş görünüm yükleniyor",
|
||||
"No due" : "Bitiş yok",
|
||||
"Search for {searchQuery} in all boards" : "Tüm panolarda {searchQuery} için sonuçlar",
|
||||
"Search for {searchQuery} in all boards" : "Tüm panolarda {searchQuery} araması için sonuçlar",
|
||||
"No results found" : "Herhangi bir sonuç bulunamadı",
|
||||
"Deck board {name}\n* Last modified on {lastMod}" : "{name} tahta panosu\n* Son değişiklik: {lastMod}",
|
||||
"{stack} in {board}" : "{stack} {board} panosunda",
|
||||
@@ -301,9 +301,10 @@
|
||||
"Click to expand comment" : "Yorumu genişletmek için tıklayın",
|
||||
"No upcoming cards" : "Yaklaşan bir kart yok",
|
||||
"upcoming cards" : "yaklaşan kartlar",
|
||||
"New card" : "Kart ekle",
|
||||
"Due on {date}" : "{date} tarihinde bitecek",
|
||||
"Link to a board" : "Bir pano ile ilişkilendir",
|
||||
"Link to a card" : "Bir kart ile ilişkilendir",
|
||||
"Link to a board" : "Bir pano bağlantısı",
|
||||
"Link to a card" : "Bir kart bağlantısı",
|
||||
"Create a card" : "Bir kart ekle",
|
||||
"Message from {author} in {conversationName}" : "{conversationName} görüşmesinde {author} iletisi",
|
||||
"Something went wrong" : "Bir şeyler ters gitti",
|
||||
|
||||
19
l10n/uk.js
19
l10n/uk.js
@@ -34,6 +34,7 @@ OC.L10N.register(
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "Ви оновили опис картки {card} у списку {stack} на дошці {board}",
|
||||
"Deck" : "Колода",
|
||||
"Changes in the <strong>Deck app</strong>" : "Зміни у застосунку <strong>Колода</strong>",
|
||||
"Upcoming cards" : "Очікують на виконання",
|
||||
"Load more" : "Більше",
|
||||
"Personal" : "Особисте",
|
||||
"Deck board" : "Дошка Deck",
|
||||
@@ -64,8 +65,10 @@ OC.L10N.register(
|
||||
"Select the board to link to a project" : "Виберіть дошку для прив'зки до проєкту",
|
||||
"Search by board title" : "Шукати за назвою дошки",
|
||||
"Select board" : "Вибрати дошку",
|
||||
"Create a new card" : "Створити нову картку",
|
||||
"Select a board" : "Вибрати дошку",
|
||||
"Select a list" : "Виберіть список",
|
||||
"Card title" : "Заголовок картки",
|
||||
"Cancel" : "Скасувати",
|
||||
"Close" : "закрити",
|
||||
"Select a card" : "Вибрати картку",
|
||||
@@ -97,6 +100,7 @@ OC.L10N.register(
|
||||
"Toggle compact mode" : "Перемкнути компактний вигляд",
|
||||
"Details" : "Деталі",
|
||||
"Loading board" : "Завантаження дошки",
|
||||
"Create a new list to add cards to this board" : "Створіть список щоб додати картки на цю дошку",
|
||||
"Board not found" : "Дошку не знайдено",
|
||||
"Sharing" : "Поділитися",
|
||||
"Tags" : "Теги",
|
||||
@@ -120,6 +124,7 @@ OC.L10N.register(
|
||||
"Edit" : "Редагувати",
|
||||
"Add a new tag" : "Додати нову позначку",
|
||||
"title and color value must be provided" : "потрібно зазначити назву та колір",
|
||||
"Board name" : "Назва дошки",
|
||||
"Members" : "Учасники",
|
||||
"Upload new files" : "Додати файл",
|
||||
"Share from Files" : "Відкрити Файли",
|
||||
@@ -133,6 +138,7 @@ OC.L10N.register(
|
||||
"Comments" : "Коментарі",
|
||||
"Modified" : "Змінено",
|
||||
"Created" : "Створено",
|
||||
"No comments yet. Begin the discussion!" : "Коментарів немає, почніть обговорення!",
|
||||
"Assign a tag to this card…" : "Додати позначку до цієї картки",
|
||||
"Assign to users" : "Призначити користувачам",
|
||||
"Assign to users/groups/circles" : "Призначити користувачам/групам/колам",
|
||||
@@ -153,13 +159,15 @@ OC.L10N.register(
|
||||
"Description" : "Опис",
|
||||
"(Unsaved)" : "(Не збережено)",
|
||||
"(Saving…)" : "(Зберігання...)",
|
||||
"Formatting help" : "Форматування довідки",
|
||||
"Formatting help" : "Допомога",
|
||||
"Edit description" : "Редагувати опис",
|
||||
"View description" : "Переглянути опис",
|
||||
"Add Attachment" : "Долучити вкладення",
|
||||
"Write a description …" : "Додайте опис ...",
|
||||
"Choose attachment" : "Вибрати вкладення",
|
||||
"(group)" : "(група)",
|
||||
"Todo items" : "Пункти завдань",
|
||||
"Edit card title" : "Редагувати заголовок картки",
|
||||
"Assign to me" : "Призначити мені",
|
||||
"Move card" : "Пересунути картку",
|
||||
"Card details" : "Деталі картки",
|
||||
@@ -171,13 +179,19 @@ OC.L10N.register(
|
||||
"All boards" : "Усі дошки",
|
||||
"Archived boards" : "Архівні дошки",
|
||||
"Shared with you" : "Вам надано доступ",
|
||||
"Deck settings" : "Налаштування колоди",
|
||||
"Use bigger card view" : "Режим перегляду зі збільшеними картками",
|
||||
"Show boards in calendar/tasks" : "Показувати дошки в календарі та завданнях",
|
||||
"Limit deck usage of groups" : "Обмежити доступ до колоди для груп",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Створення власних робочих дощок користувачам, які не входять у задані групи, буде заблоковано. Проте, такі користувачі зможуть продовжити працювати зі спільними дошками, до яких у них є доступ.",
|
||||
"Board details" : "Деталі дошки",
|
||||
"Edit board" : "Редагувати дошку",
|
||||
"Clone board" : "Копіювати дошку",
|
||||
"Unarchive board" : "Розархівувати дошку",
|
||||
"Archive board" : "Архівувати дошку",
|
||||
"Turn on due date reminders" : "Нагадування про термін виконання",
|
||||
"Turn off due date reminders" : "Вимкнути нагадування про терміни виконання",
|
||||
"Due date reminders" : "Нагадування про терміни виконання",
|
||||
"No notifications" : "Немає сповіщень",
|
||||
"Delete board" : "Вилучити дошку",
|
||||
"Board {0} deleted" : "Дошку {0} вилучено",
|
||||
@@ -185,6 +199,9 @@ OC.L10N.register(
|
||||
"An error occurred" : "Виникла помилка",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Ви впевнені, що хочете вилучити дошку {title}? Це призведе до видалення всіх даних цієї дошки, включаючи архівні картки.",
|
||||
"Delete the board?" : "Вилучити дошку?",
|
||||
"No due" : "Без призначеної дати",
|
||||
"No upcoming cards" : "Немає майбутніх завдань",
|
||||
"upcoming cards" : "очікують на виконання",
|
||||
"Due on {date}" : "До {date}",
|
||||
"Link to a board" : "Прив'язати до дошки",
|
||||
"Link to a card" : "Прив'язати до картки",
|
||||
|
||||
19
l10n/uk.json
19
l10n/uk.json
@@ -32,6 +32,7 @@
|
||||
"You have updated the description of card {card} in list {stack} on board {board}" : "Ви оновили опис картки {card} у списку {stack} на дошці {board}",
|
||||
"Deck" : "Колода",
|
||||
"Changes in the <strong>Deck app</strong>" : "Зміни у застосунку <strong>Колода</strong>",
|
||||
"Upcoming cards" : "Очікують на виконання",
|
||||
"Load more" : "Більше",
|
||||
"Personal" : "Особисте",
|
||||
"Deck board" : "Дошка Deck",
|
||||
@@ -62,8 +63,10 @@
|
||||
"Select the board to link to a project" : "Виберіть дошку для прив'зки до проєкту",
|
||||
"Search by board title" : "Шукати за назвою дошки",
|
||||
"Select board" : "Вибрати дошку",
|
||||
"Create a new card" : "Створити нову картку",
|
||||
"Select a board" : "Вибрати дошку",
|
||||
"Select a list" : "Виберіть список",
|
||||
"Card title" : "Заголовок картки",
|
||||
"Cancel" : "Скасувати",
|
||||
"Close" : "закрити",
|
||||
"Select a card" : "Вибрати картку",
|
||||
@@ -95,6 +98,7 @@
|
||||
"Toggle compact mode" : "Перемкнути компактний вигляд",
|
||||
"Details" : "Деталі",
|
||||
"Loading board" : "Завантаження дошки",
|
||||
"Create a new list to add cards to this board" : "Створіть список щоб додати картки на цю дошку",
|
||||
"Board not found" : "Дошку не знайдено",
|
||||
"Sharing" : "Поділитися",
|
||||
"Tags" : "Теги",
|
||||
@@ -118,6 +122,7 @@
|
||||
"Edit" : "Редагувати",
|
||||
"Add a new tag" : "Додати нову позначку",
|
||||
"title and color value must be provided" : "потрібно зазначити назву та колір",
|
||||
"Board name" : "Назва дошки",
|
||||
"Members" : "Учасники",
|
||||
"Upload new files" : "Додати файл",
|
||||
"Share from Files" : "Відкрити Файли",
|
||||
@@ -131,6 +136,7 @@
|
||||
"Comments" : "Коментарі",
|
||||
"Modified" : "Змінено",
|
||||
"Created" : "Створено",
|
||||
"No comments yet. Begin the discussion!" : "Коментарів немає, почніть обговорення!",
|
||||
"Assign a tag to this card…" : "Додати позначку до цієї картки",
|
||||
"Assign to users" : "Призначити користувачам",
|
||||
"Assign to users/groups/circles" : "Призначити користувачам/групам/колам",
|
||||
@@ -151,13 +157,15 @@
|
||||
"Description" : "Опис",
|
||||
"(Unsaved)" : "(Не збережено)",
|
||||
"(Saving…)" : "(Зберігання...)",
|
||||
"Formatting help" : "Форматування довідки",
|
||||
"Formatting help" : "Допомога",
|
||||
"Edit description" : "Редагувати опис",
|
||||
"View description" : "Переглянути опис",
|
||||
"Add Attachment" : "Долучити вкладення",
|
||||
"Write a description …" : "Додайте опис ...",
|
||||
"Choose attachment" : "Вибрати вкладення",
|
||||
"(group)" : "(група)",
|
||||
"Todo items" : "Пункти завдань",
|
||||
"Edit card title" : "Редагувати заголовок картки",
|
||||
"Assign to me" : "Призначити мені",
|
||||
"Move card" : "Пересунути картку",
|
||||
"Card details" : "Деталі картки",
|
||||
@@ -169,13 +177,19 @@
|
||||
"All boards" : "Усі дошки",
|
||||
"Archived boards" : "Архівні дошки",
|
||||
"Shared with you" : "Вам надано доступ",
|
||||
"Deck settings" : "Налаштування колоди",
|
||||
"Use bigger card view" : "Режим перегляду зі збільшеними картками",
|
||||
"Show boards in calendar/tasks" : "Показувати дошки в календарі та завданнях",
|
||||
"Limit deck usage of groups" : "Обмежити доступ до колоди для груп",
|
||||
"Limiting Deck will block users not part of those groups from creating their own boards. Users will still be able to work on boards that have been shared with them." : "Створення власних робочих дощок користувачам, які не входять у задані групи, буде заблоковано. Проте, такі користувачі зможуть продовжити працювати зі спільними дошками, до яких у них є доступ.",
|
||||
"Board details" : "Деталі дошки",
|
||||
"Edit board" : "Редагувати дошку",
|
||||
"Clone board" : "Копіювати дошку",
|
||||
"Unarchive board" : "Розархівувати дошку",
|
||||
"Archive board" : "Архівувати дошку",
|
||||
"Turn on due date reminders" : "Нагадування про термін виконання",
|
||||
"Turn off due date reminders" : "Вимкнути нагадування про терміни виконання",
|
||||
"Due date reminders" : "Нагадування про терміни виконання",
|
||||
"No notifications" : "Немає сповіщень",
|
||||
"Delete board" : "Вилучити дошку",
|
||||
"Board {0} deleted" : "Дошку {0} вилучено",
|
||||
@@ -183,6 +197,9 @@
|
||||
"An error occurred" : "Виникла помилка",
|
||||
"Are you sure you want to delete the board {title}? This will delete all the data of this board including archived cards." : "Ви впевнені, що хочете вилучити дошку {title}? Це призведе до видалення всіх даних цієї дошки, включаючи архівні картки.",
|
||||
"Delete the board?" : "Вилучити дошку?",
|
||||
"No due" : "Без призначеної дати",
|
||||
"No upcoming cards" : "Немає майбутніх завдань",
|
||||
"upcoming cards" : "очікують на виконання",
|
||||
"Due on {date}" : "До {date}",
|
||||
"Link to a board" : "Прив'язати до дошки",
|
||||
"Link to a card" : "Прив'язати до картки",
|
||||
|
||||
@@ -173,7 +173,7 @@ OC.L10N.register(
|
||||
"Can manage" : "可以管理",
|
||||
"Owner" : "所有者",
|
||||
"Delete" : "删除",
|
||||
"Failed to create share with {displayName}" : "用 {displayName} 创建分享失败",
|
||||
"Failed to create share with {displayName}" : "用{displayName}创建分享失败",
|
||||
"Transfer" : "传输",
|
||||
"Archive all cards" : "归档所有卡片",
|
||||
"Delete list" : "删除列表",
|
||||
@@ -285,7 +285,7 @@ OC.L10N.register(
|
||||
"Create a card" : "创建一张卡片",
|
||||
"Message from {author} in {conversationName}" : "{conversationName} 会话中来自 {author} 的消息",
|
||||
"Something went wrong" : "发生了错误",
|
||||
"Failed to upload {name}" : "未能上传 {name}",
|
||||
"Failed to upload {name}" : "未能上传{name}",
|
||||
"Maximum file size of {size} exceeded" : "文件容量已超过 {size} 的上限",
|
||||
"Error creating the share" : "创建分享出错",
|
||||
"Share with a Deck card" : "分享给一张看板卡片",
|
||||
|
||||
@@ -171,7 +171,7 @@
|
||||
"Can manage" : "可以管理",
|
||||
"Owner" : "所有者",
|
||||
"Delete" : "删除",
|
||||
"Failed to create share with {displayName}" : "用 {displayName} 创建分享失败",
|
||||
"Failed to create share with {displayName}" : "用{displayName}创建分享失败",
|
||||
"Transfer" : "传输",
|
||||
"Archive all cards" : "归档所有卡片",
|
||||
"Delete list" : "删除列表",
|
||||
@@ -283,7 +283,7 @@
|
||||
"Create a card" : "创建一张卡片",
|
||||
"Message from {author} in {conversationName}" : "{conversationName} 会话中来自 {author} 的消息",
|
||||
"Something went wrong" : "发生了错误",
|
||||
"Failed to upload {name}" : "未能上传 {name}",
|
||||
"Failed to upload {name}" : "未能上传{name}",
|
||||
"Maximum file size of {size} exceeded" : "文件容量已超过 {size} 的上限",
|
||||
"Error creating the share" : "创建分享出错",
|
||||
"Share with a Deck card" : "分享给一张看板卡片",
|
||||
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "點擊展開評論",
|
||||
"No upcoming cards" : "沒有快將到期的卡片",
|
||||
"upcoming cards" : "快將到期的卡片",
|
||||
"New card" : "新卡片",
|
||||
"Due on {date}" : "於 {date} 到期",
|
||||
"Link to a board" : "連結到面板",
|
||||
"Link to a card" : "連結到卡片",
|
||||
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "點擊展開評論",
|
||||
"No upcoming cards" : "沒有快將到期的卡片",
|
||||
"upcoming cards" : "快將到期的卡片",
|
||||
"New card" : "新卡片",
|
||||
"Due on {date}" : "於 {date} 到期",
|
||||
"Link to a board" : "連結到面板",
|
||||
"Link to a card" : "連結到卡片",
|
||||
|
||||
@@ -78,7 +78,7 @@ OC.L10N.register(
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} 在 {deck-card} 的留言中提及您。",
|
||||
"The board \"%s\" has been shared with you by %s." : "佈告欄「%s」已由 %s 分享給您。",
|
||||
"{user} has shared {deck-board} with you." : "{user} 已與您分享 {deck-board}。",
|
||||
"Deck board" : "看板佈告欄",
|
||||
"Deck board" : "Deck 佈告欄",
|
||||
"Owned by %1$s" : "由 %1$s 擁有",
|
||||
"Deck boards, cards and comments" : "Deck 看板、卡片與評論",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "來自 %1$s,在 %2$s/%3$s,由 %4$s 擁有",
|
||||
@@ -303,6 +303,7 @@ OC.L10N.register(
|
||||
"Click to expand comment" : "點擊展開留言",
|
||||
"No upcoming cards" : "無接下來的卡片",
|
||||
"upcoming cards" : "接下來的卡片",
|
||||
"New card" : "新卡片",
|
||||
"Due on {date}" : "於 {date} 到期",
|
||||
"Link to a board" : "連結到佈告欄",
|
||||
"Link to a card" : "連結到卡片",
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
"{user} has mentioned you in a comment on {deck-card}." : "{user} 在 {deck-card} 的留言中提及您。",
|
||||
"The board \"%s\" has been shared with you by %s." : "佈告欄「%s」已由 %s 分享給您。",
|
||||
"{user} has shared {deck-board} with you." : "{user} 已與您分享 {deck-board}。",
|
||||
"Deck board" : "看板佈告欄",
|
||||
"Deck board" : "Deck 佈告欄",
|
||||
"Owned by %1$s" : "由 %1$s 擁有",
|
||||
"Deck boards, cards and comments" : "Deck 看板、卡片與評論",
|
||||
"From %1$s, in %2$s/%3$s, owned by %4$s" : "來自 %1$s,在 %2$s/%3$s,由 %4$s 擁有",
|
||||
@@ -301,6 +301,7 @@
|
||||
"Click to expand comment" : "點擊展開留言",
|
||||
"No upcoming cards" : "無接下來的卡片",
|
||||
"upcoming cards" : "接下來的卡片",
|
||||
"New card" : "新卡片",
|
||||
"Due on {date}" : "於 {date} 到期",
|
||||
"Link to a board" : "連結到佈告欄",
|
||||
"Link to a card" : "連結到卡片",
|
||||
|
||||
@@ -60,9 +60,11 @@ class BoardApiController extends ApiController {
|
||||
* @NoCSRFRequired
|
||||
*
|
||||
* Return all of the boards that the current user has access to.
|
||||
*
|
||||
* @param bool $details
|
||||
* @throws StatusException
|
||||
*/
|
||||
public function index($details = null) {
|
||||
public function index(bool $details = false) {
|
||||
$modified = $this->request->getHeader('If-Modified-Since');
|
||||
if ($modified === null || $modified === '') {
|
||||
$boards = $this->boardService->findAll(0, $details === true);
|
||||
|
||||
@@ -59,20 +59,21 @@ class Calendar extends ExternalCalendar {
|
||||
}
|
||||
|
||||
public function getACL() {
|
||||
// the calendar should always have the read and the write-properties permissions
|
||||
// write-properties is needed to allow the user to toggle the visibility of shared deck calendars
|
||||
$acl = [
|
||||
[
|
||||
'privilege' => '{DAV:}read',
|
||||
'principal' => $this->getOwner(),
|
||||
'protected' => true,
|
||||
]
|
||||
];
|
||||
if ($this->backend->checkBoardPermission($this->board->getId(), Acl::PERMISSION_MANAGE)) {
|
||||
$acl[] = [
|
||||
],
|
||||
[
|
||||
'privilege' => '{DAV:}write-properties',
|
||||
'principal' => $this->getOwner(),
|
||||
'protected' => true,
|
||||
];
|
||||
}
|
||||
]
|
||||
];
|
||||
|
||||
return $acl;
|
||||
}
|
||||
|
||||
@@ -187,12 +188,18 @@ class Calendar extends ExternalCalendar {
|
||||
foreach ($properties as $key => $value) {
|
||||
switch ($key) {
|
||||
case '{DAV:}displayname':
|
||||
if (!$this->backend->checkBoardPermission($this->board->getId(), Acl::PERMISSION_MANAGE)) {
|
||||
throw new Forbidden('no permission to change the displayname');
|
||||
}
|
||||
if (mb_strpos($value, 'Deck: ') === 0) {
|
||||
$value = mb_substr($value, strlen('Deck: '));
|
||||
}
|
||||
$this->board->setTitle($value);
|
||||
break;
|
||||
case '{http://apple.com/ns/ical/}calendar-color':
|
||||
if (!$this->backend->checkBoardPermission($this->board->getId(), Acl::PERMISSION_MANAGE)) {
|
||||
throw new Forbidden('no permission to change the calendar color');
|
||||
}
|
||||
$color = substr($value, 1, 6);
|
||||
if (!preg_match('/[a-f0-9]{6}/i', $color)) {
|
||||
throw new InvalidDataException('No valid color provided');
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
namespace OCA\Deck\Reference;
|
||||
|
||||
use OCA\Deck\AppInfo\Application;
|
||||
use OCA\Deck\NoPermissionException;
|
||||
use OCA\Deck\Service\BoardService;
|
||||
use OCP\Collaboration\Reference\IReference;
|
||||
use OCP\Collaboration\Reference\IReferenceProvider;
|
||||
@@ -67,7 +68,12 @@ class BoardReferenceProvider implements IReferenceProvider {
|
||||
if ($this->matchReference($referenceText)) {
|
||||
$boardId = $this->getBoardId($referenceText);
|
||||
if ($boardId !== null) {
|
||||
$board = $this->boardService->find($boardId)->jsonSerialize();
|
||||
try {
|
||||
$board = $this->boardService->find($boardId)->jsonSerialize();
|
||||
} catch (NoPermissionException $e) {
|
||||
// Skip throwing if user has no permissions
|
||||
return null;
|
||||
}
|
||||
$board = $this->sanitizeSerializedBoard($board);
|
||||
/** @var IReference $reference */
|
||||
$reference = new Reference($referenceText);
|
||||
|
||||
@@ -27,6 +27,7 @@ use OCA\Deck\Db\Assignment;
|
||||
use OCA\Deck\Db\Attachment;
|
||||
use OCA\Deck\Db\Label;
|
||||
use OCA\Deck\Model\CardDetails;
|
||||
use OCA\Deck\NoPermissionException;
|
||||
use OCA\Deck\Service\BoardService;
|
||||
use OCA\Deck\Service\CardService;
|
||||
use OCA\Deck\Service\StackService;
|
||||
@@ -121,9 +122,15 @@ class CardReferenceProvider extends ADiscoverableReferenceProvider implements IS
|
||||
$ids = $this->getBoardCardId($referenceText);
|
||||
if ($ids !== null) {
|
||||
[$boardId, $cardId] = $ids;
|
||||
$card = $this->cardService->find((int) $cardId)->jsonSerialize();
|
||||
$board = $this->boardService->find((int) $boardId)->jsonSerialize();
|
||||
$stack = $this->stackService->find((int) $card['stackId'])->jsonSerialize();
|
||||
try {
|
||||
$card = $this->cardService->find((int) $cardId)->jsonSerialize();
|
||||
$board = $this->boardService->find((int) $boardId)->jsonSerialize();
|
||||
$stack = $this->stackService->find((int) $card['stackId'])->jsonSerialize();
|
||||
} catch (NoPermissionException $e) {
|
||||
// Skip throwing if user has no permissions
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
$card = $this->sanitizeSerializedCard($card);
|
||||
$board = $this->sanitizeSerializedBoard($board);
|
||||
|
||||
@@ -27,6 +27,7 @@ use OCA\Deck\Db\Assignment;
|
||||
use OCA\Deck\Db\Attachment;
|
||||
use OCA\Deck\Db\Label;
|
||||
use OCA\Deck\Model\CardDetails;
|
||||
use OCA\Deck\NoPermissionException;
|
||||
use OCA\Deck\Service\BoardService;
|
||||
use OCA\Deck\Service\CardService;
|
||||
use OCA\Deck\Service\CommentService;
|
||||
@@ -85,9 +86,14 @@ class CommentReferenceProvider implements IReferenceProvider {
|
||||
if ($ids !== null) {
|
||||
[$boardId, $cardId, $commentId] = $ids;
|
||||
|
||||
$card = $this->cardService->find($cardId)->jsonSerialize();
|
||||
$board = $this->boardService->find($boardId)->jsonSerialize();
|
||||
$stack = $this->stackService->find((int) $card['stackId'])->jsonSerialize();
|
||||
try {
|
||||
$card = $this->cardService->find($cardId)->jsonSerialize();
|
||||
$board = $this->boardService->find($boardId)->jsonSerialize();
|
||||
$stack = $this->stackService->find((int) $card['stackId'])->jsonSerialize();
|
||||
} catch (NoPermissionException $e) {
|
||||
// Skip throwing if user has no permissions
|
||||
return null;
|
||||
}
|
||||
$card = $this->sanitizeSerializedCard($card);
|
||||
$board = $this->sanitizeSerializedBoard($board);
|
||||
$stack = $this->sanitizeSerializedStack($stack);
|
||||
|
||||
@@ -30,8 +30,10 @@ use OCA\Deck\Db\Acl;
|
||||
use OCA\Deck\Db\CardMapper;
|
||||
use OCA\Deck\NoPermissionException;
|
||||
use OCA\Deck\Service\PermissionService;
|
||||
use OCP\AppFramework\Db\DoesNotExistException;
|
||||
use OCP\AppFramework\OCS\OCSNotFoundException;
|
||||
use OCP\AppFramework\Utility\ITimeFactory;
|
||||
use OCP\Files\NotFoundException;
|
||||
use OCP\IL10N;
|
||||
use OCP\IURLGenerator;
|
||||
use OCP\Share\IShare;
|
||||
@@ -53,7 +55,11 @@ class ShareAPIHelper {
|
||||
|
||||
public function formatShare(IShare $share): array {
|
||||
$result = [];
|
||||
$card = $this->cardMapper->find($share->getSharedWith());
|
||||
try {
|
||||
$card = $this->cardMapper->find($share->getSharedWith());
|
||||
} catch (DoesNotExistException $e) {
|
||||
throw new NotFoundException($e->getMessage());
|
||||
}
|
||||
$boardId = $this->cardMapper->findBoardId($card->getId());
|
||||
$result['share_with'] = $share->getSharedWith();
|
||||
$result['share_with_displayname'] = $card->getTitle();
|
||||
|
||||
64395
package-lock.json
generated
64395
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
216
package.json
216
package.json
@@ -1,109 +1,109 @@
|
||||
{
|
||||
"name": "deck",
|
||||
"description": "",
|
||||
"version": "1.9.0-beta.1",
|
||||
"authors": [
|
||||
{
|
||||
"name": "Julius Härtl",
|
||||
"email": "jus@bitgrid.net",
|
||||
"role": "Developer"
|
||||
},
|
||||
{
|
||||
"name": "Michael Weimann",
|
||||
"email": "mail@michael-weimann.eu",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"license": "agpl",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"build": "NODE_ENV=production webpack --progress --config webpack.js",
|
||||
"dev": "NODE_ENV=development webpack --progress --config webpack.js",
|
||||
"watch": "NODE_ENV=development webpack --progress --watch --config webpack.js",
|
||||
"lint": "eslint --ext .js,.vue src",
|
||||
"lint:fix": "eslint --ext .js,.vue src --fix",
|
||||
"lint:cypress": "eslint --ext .js cypress",
|
||||
"stylelint": "stylelint src",
|
||||
"stylelint:fix": "stylelint src --fix",
|
||||
"test": "jest",
|
||||
"test:coverage": "jest --coverage"
|
||||
},
|
||||
"dependencies": {
|
||||
"@babel/polyfill": "^7.12.1",
|
||||
"@babel/runtime": "^7.21.0",
|
||||
"@nextcloud/auth": "^2.0.0",
|
||||
"@nextcloud/axios": "^2.3.0",
|
||||
"@nextcloud/dialogs": "^4.0.1",
|
||||
"@nextcloud/event-bus": "^3.0.2",
|
||||
"@nextcloud/files": "^2.1.0",
|
||||
"@nextcloud/initial-state": "^2.0.0",
|
||||
"@nextcloud/l10n": "^2.1.0",
|
||||
"@nextcloud/moment": "^1.2.1",
|
||||
"@nextcloud/notify_push": "^1.1.3",
|
||||
"@nextcloud/router": "^2.0.1",
|
||||
"@nextcloud/vue": "^7.7.1",
|
||||
"@nextcloud/vue-dashboard": "^2.0.1",
|
||||
"@nextcloud/vue-richtext": "^2.0.4",
|
||||
"blueimp-md5": "^2.19.0",
|
||||
"dompurify": "^3.0.0",
|
||||
"lodash": "^4.17.21",
|
||||
"markdown-it": "^13.0.1",
|
||||
"markdown-it-link-attributes": "^4.0.1",
|
||||
"markdown-it-task-checkbox": "^1.0.6",
|
||||
"moment": "^2.29.4",
|
||||
"nextcloud-vue-collections": "^0.11.0",
|
||||
"p-queue": "^7.3.4",
|
||||
"url-search-params-polyfill": "^8.1.1",
|
||||
"vue": "^2.7.14",
|
||||
"vue-at": "^2.5.1",
|
||||
"vue-click-outside": "^1.1.0",
|
||||
"vue-easymde": "^2.0.0",
|
||||
"vue-infinite-loading": "^2.4.5",
|
||||
"vue-material-design-icons": "^5.2.0",
|
||||
"vue-router": "^3.6.5",
|
||||
"vue-smooth-dnd": "^0.8.1",
|
||||
"vuex": "^3.6.2",
|
||||
"vuex-router-sync": "^5.0.0"
|
||||
},
|
||||
"browserslist": [
|
||||
"extends @nextcloud/browserslist-config"
|
||||
],
|
||||
"engines": {
|
||||
"node": "^16.0.0",
|
||||
"npm": "^7.0.0 || ^8.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@nextcloud/babel-config": "^1.0.0",
|
||||
"@nextcloud/browserslist-config": "^2.3.0",
|
||||
"@nextcloud/cypress": "^1.0.0-beta.2",
|
||||
"@nextcloud/eslint-config": "^8.2.1",
|
||||
"@nextcloud/stylelint-config": "^2.3.0",
|
||||
"@nextcloud/webpack-vue-config": "^5.4.0",
|
||||
"@relative-ci/agent": "^4.1.3",
|
||||
"@vue/test-utils": "^1.3.4",
|
||||
"@vue/vue2-jest": "^29.2.2",
|
||||
"cypress": "^12.7.0",
|
||||
"eslint-plugin-cypress": "^2.12.1",
|
||||
"eslint-webpack-plugin": "^4.0.0",
|
||||
"jest": "^29.4.3",
|
||||
"jest-serializer-vue": "^3.1.0",
|
||||
"stylelint-webpack-plugin": "^4.1.0",
|
||||
"vue-template-compiler": "^2.7.14"
|
||||
},
|
||||
"jest": {
|
||||
"moduleFileExtensions": [
|
||||
"js",
|
||||
"vue"
|
||||
],
|
||||
"moduleNameMapper": {
|
||||
"^@/(.*)$": "<rootDir>/src/$1"
|
||||
},
|
||||
"transform": {
|
||||
"^.+\\.js$": "<rootDir>/node_modules/babel-jest",
|
||||
".*\\.(vue)$": "<rootDir>/node_modules/vue-jest"
|
||||
},
|
||||
"snapshotSerializers": [
|
||||
"<rootDir>/node_modules/jest-serializer-vue"
|
||||
]
|
||||
}
|
||||
}
|
||||
"name": "deck",
|
||||
"description": "",
|
||||
"version": "1.9.2",
|
||||
"authors": [
|
||||
{
|
||||
"name": "Julius Härtl",
|
||||
"email": "jus@bitgrid.net",
|
||||
"role": "Developer"
|
||||
},
|
||||
{
|
||||
"name": "Michael Weimann",
|
||||
"email": "mail@michael-weimann.eu",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"license": "agpl",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"build": "NODE_ENV=production webpack --progress --config webpack.js",
|
||||
"dev": "NODE_ENV=development webpack --progress --config webpack.js",
|
||||
"watch": "NODE_ENV=development webpack --progress --watch --config webpack.js",
|
||||
"serve": "webpack serve --node-env development --allowed-hosts all --config webpack.js",
|
||||
"lint": "eslint --ext .js,.vue src",
|
||||
"lint:fix": "eslint --ext .js,.vue src --fix",
|
||||
"lint:cypress": "eslint --ext .js cypress",
|
||||
"stylelint": "stylelint src",
|
||||
"stylelint:fix": "stylelint src --fix",
|
||||
"test": "jest",
|
||||
"test:coverage": "jest --coverage"
|
||||
},
|
||||
"dependencies": {
|
||||
"@babel/polyfill": "^7.12.1",
|
||||
"@babel/runtime": "^7.21.0",
|
||||
"@nextcloud/auth": "^2.0.0",
|
||||
"@nextcloud/axios": "^2.3.0",
|
||||
"@nextcloud/dialogs": "^4.0.1",
|
||||
"@nextcloud/event-bus": "^3.0.2",
|
||||
"@nextcloud/files": "^2.1.0",
|
||||
"@nextcloud/initial-state": "^2.0.0",
|
||||
"@nextcloud/l10n": "^2.1.0",
|
||||
"@nextcloud/moment": "^1.2.1",
|
||||
"@nextcloud/notify_push": "^1.1.3",
|
||||
"@nextcloud/router": "^2.0.1",
|
||||
"@nextcloud/vue": "^7.8.4",
|
||||
"@nextcloud/vue-richtext": "^2.0.4",
|
||||
"blueimp-md5": "^2.19.0",
|
||||
"dompurify": "^3.0.0",
|
||||
"lodash": "^4.17.21",
|
||||
"markdown-it": "^13.0.1",
|
||||
"markdown-it-link-attributes": "^4.0.1",
|
||||
"markdown-it-task-checkbox": "^1.0.6",
|
||||
"moment": "^2.29.4",
|
||||
"nextcloud-vue-collections": "^0.11.0",
|
||||
"p-queue": "^7.3.4",
|
||||
"url-search-params-polyfill": "^8.1.1",
|
||||
"vue": "^2.7.14",
|
||||
"vue-at": "^2.5.1",
|
||||
"vue-click-outside": "^1.1.0",
|
||||
"vue-easymde": "^2.0.0",
|
||||
"vue-infinite-loading": "^2.4.5",
|
||||
"vue-material-design-icons": "^5.2.0",
|
||||
"vue-router": "^3.6.5",
|
||||
"vue-smooth-dnd": "^0.8.1",
|
||||
"vuex": "^3.6.2",
|
||||
"vuex-router-sync": "^5.0.0"
|
||||
},
|
||||
"browserslist": [
|
||||
"extends @nextcloud/browserslist-config"
|
||||
],
|
||||
"engines": {
|
||||
"node": "^16.0.0",
|
||||
"npm": "^7.0.0 || ^8.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@nextcloud/babel-config": "^1.0.0",
|
||||
"@nextcloud/browserslist-config": "^2.3.0",
|
||||
"@nextcloud/cypress": "^1.0.0-beta.2",
|
||||
"@nextcloud/eslint-config": "^8.2.1",
|
||||
"@nextcloud/stylelint-config": "^2.3.0",
|
||||
"@nextcloud/webpack-vue-config": "^5.4.0",
|
||||
"@relative-ci/agent": "^4.1.3",
|
||||
"@vue/test-utils": "^1.3.4",
|
||||
"@vue/vue2-jest": "^29.2.2",
|
||||
"cypress": "^12.7.0",
|
||||
"eslint-plugin-cypress": "^2.12.1",
|
||||
"eslint-webpack-plugin": "^4.0.0",
|
||||
"jest": "^29.4.3",
|
||||
"jest-serializer-vue": "^3.1.0",
|
||||
"stylelint-webpack-plugin": "^4.1.0",
|
||||
"vue-template-compiler": "^2.7.14"
|
||||
},
|
||||
"jest": {
|
||||
"moduleFileExtensions": [
|
||||
"js",
|
||||
"vue"
|
||||
],
|
||||
"moduleNameMapper": {
|
||||
"^@/(.*)$": "<rootDir>/src/$1"
|
||||
},
|
||||
"transform": {
|
||||
"^.+\\.js$": "<rootDir>/node_modules/babel-jest",
|
||||
".*\\.(vue)$": "<rootDir>/node_modules/vue-jest"
|
||||
},
|
||||
"snapshotSerializers": [
|
||||
"<rootDir>/node_modules/jest-serializer-vue"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -71,12 +71,22 @@
|
||||
</div>
|
||||
</div>
|
||||
<div v-else id="modal-inner">
|
||||
<NcEmptyContent v-if="creating" icon="icon-loading">
|
||||
{{ t('deck', 'Creating the new card …') }}
|
||||
<NcEmptyContent v-if="creating">
|
||||
<template #icon>
|
||||
<NcLoadingIcon />
|
||||
</template>
|
||||
<template #title>
|
||||
{{ t('deck', 'Creating the new card …') }}
|
||||
</template>
|
||||
</NcEmptyContent>
|
||||
<NcEmptyContent v-else-if="created" icon="icon-checkmark">
|
||||
{{ t('deck', 'Card "{card}" was added to "{board}"', { card: pendingTitle, board: selectedBoard.title }) }}
|
||||
<template #desc>
|
||||
<NcEmptyContent v-else-if="created">
|
||||
<template #icon>
|
||||
<CardPlusOutline />
|
||||
</template>
|
||||
<template #title>
|
||||
{{ t('deck', 'Card "{card}" was added to "{board}"', { card: pendingTitle, board: selectedBoard.title }) }}
|
||||
</template>
|
||||
<template #action>
|
||||
<button class="primary" @click="openNewCard">
|
||||
{{ t('deck', 'Open card') }}
|
||||
</button>
|
||||
@@ -92,7 +102,8 @@
|
||||
|
||||
<script>
|
||||
import { generateUrl } from '@nextcloud/router'
|
||||
import { NcModal, NcMultiselect, NcEmptyContent } from '@nextcloud/vue'
|
||||
import { NcModal, NcMultiselect, NcEmptyContent, NcLoadingIcon } from '@nextcloud/vue'
|
||||
import CardPlusOutline from 'vue-material-design-icons/CardPlusOutline.vue'
|
||||
import axios from '@nextcloud/axios'
|
||||
import { CardApi } from './services/CardApi.js'
|
||||
|
||||
@@ -104,6 +115,8 @@ export default {
|
||||
NcEmptyContent,
|
||||
NcModal,
|
||||
NcMultiselect,
|
||||
NcLoadingIcon,
|
||||
CardPlusOutline,
|
||||
},
|
||||
props: {
|
||||
title: {
|
||||
@@ -203,6 +216,7 @@ export default {
|
||||
max-width: 400px;
|
||||
padding: 10px;
|
||||
min-height: 200px;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.multiselect-board, .multiselect-list, input, textarea {
|
||||
|
||||
@@ -30,9 +30,14 @@
|
||||
<h2>{{ t('deck', 'Loading board') }}</h2>
|
||||
<p />
|
||||
</div>
|
||||
<NcEmptyContent v-else-if="isEmpty" key="empty" icon="icon-deck">
|
||||
{{ t('deck', 'No lists available') }}
|
||||
<template v-if="canManage" #desc>
|
||||
<NcEmptyContent v-else-if="isEmpty" key="empty">
|
||||
<template #icon>
|
||||
<DeckIcon />
|
||||
</template>
|
||||
<template #title>
|
||||
{{ t('deck', 'No lists available') }}
|
||||
</template>
|
||||
<template v-if="canManage" #action>
|
||||
{{ t('deck', 'Create a new list to add cards to this board') }}
|
||||
<form @submit.prevent="addNewStack()">
|
||||
<input id="new-stack-input-main"
|
||||
@@ -57,7 +62,10 @@
|
||||
@drag-start="draggingStack = true"
|
||||
@drag-end="draggingStack = false"
|
||||
@drop="onDropStack">
|
||||
<Draggable v-for="stack in stacksByBoard" :key="stack.id" data-click-closes-sidebar="true">
|
||||
<Draggable v-for="stack in stacksByBoard"
|
||||
:key="stack.id"
|
||||
data-click-closes-sidebar="true"
|
||||
class="stack-draggable-wrapper">
|
||||
<Stack :stack="stack" :dragging="draggingStack" data-click-closes-sidebar="true" />
|
||||
</Draggable>
|
||||
</Container>
|
||||
@@ -77,6 +85,7 @@
|
||||
import { Container, Draggable } from 'vue-smooth-dnd'
|
||||
import { mapState, mapGetters } from 'vuex'
|
||||
import Controls from '../Controls.vue'
|
||||
import DeckIcon from '../icons/DeckIcon.vue'
|
||||
import Stack from './Stack.vue'
|
||||
import { NcEmptyContent } from '@nextcloud/vue'
|
||||
import GlobalSearchResults from '../search/GlobalSearchResults.vue'
|
||||
@@ -89,6 +98,7 @@ export default {
|
||||
GlobalSearchResults,
|
||||
Controls,
|
||||
Container,
|
||||
DeckIcon,
|
||||
Draggable,
|
||||
Stack,
|
||||
NcEmptyContent,
|
||||
@@ -223,7 +233,7 @@ export default {
|
||||
align-items: stretch;
|
||||
height: 100%;
|
||||
|
||||
&:deep(.smooth-dnd-draggable-wrapper) {
|
||||
&:deep(.stack-draggable-wrapper.smooth-dnd-draggable-wrapper) {
|
||||
display: flex;
|
||||
height: auto;
|
||||
|
||||
|
||||
@@ -147,7 +147,7 @@ export default {
|
||||
return this.$store.getters.cardById(this.id)
|
||||
},
|
||||
subtitle() {
|
||||
return t('deck', 'Modified') + ': ' + this.relativeDate(this.currentCard.lastModified * 1000) + ' ' + t('deck', 'Created') + ': ' + this.relativeDate(this.currentCard.createdAt * 1000)
|
||||
return t('deck', 'Modified') + ': ' + this.relativeDate(this.currentCard.lastModified * 1000) + ' ⸱ ' + t('deck', 'Created') + ': ' + this.relativeDate(this.currentCard.createdAt * 1000)
|
||||
},
|
||||
subtitleTooltip() {
|
||||
return t('deck', 'Modified') + ': ' + this.formatDate(this.currentCard.lastModified) + '\n' + t('deck', 'Created') + ': ' + this.formatDate(this.currentCard.createdAt)
|
||||
|
||||
@@ -103,6 +103,7 @@
|
||||
:formatter="format"
|
||||
:disabled="saving || !canEdit"
|
||||
:shortcuts="shortcuts"
|
||||
:append-to-body="true"
|
||||
confirm />
|
||||
<NcActions v-if="canEdit">
|
||||
<NcActionButton v-if="copiedCard.duedate" icon="icon-delete" @click="removeDue()">
|
||||
@@ -448,5 +449,10 @@ export default {
|
||||
.multiselect.multiselect--active:deep(.multiselect__tags-wrap) {
|
||||
z-index: 0;
|
||||
}
|
||||
|
||||
</style>
|
||||
<style>
|
||||
.mx-datepicker-main.mx-datepicker-popup {
|
||||
/* above the modal */
|
||||
z-index: 9999 !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -417,7 +417,7 @@ h5 {
|
||||
|
||||
.app-sidebar__tab .description__text .text-menubar {
|
||||
top: -10px !important;
|
||||
z-index: 100;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.modal__card .description__text .text-menubar {
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
</div>
|
||||
|
||||
<div v-else-if="isValidFilter" class="overview">
|
||||
<div v-if="assignedCardsDashboard.length > 0" class="dashboard-column">
|
||||
<div class="dashboard-column">
|
||||
<h3>{{ t('deck', 'Overdue') }}</h3>
|
||||
<div v-for="card in assignedCardsDashboard.overdue" :key="card.id">
|
||||
<CardItem :id="card.id" />
|
||||
|
||||
@@ -23,6 +23,8 @@
|
||||
import { subscribe } from '@nextcloud/event-bus'
|
||||
import { generateUrl } from '@nextcloud/router'
|
||||
|
||||
import './shared-init.js'
|
||||
|
||||
subscribe('calendar:handle-todo-click', ({ calendarId, taskId }) => {
|
||||
const deckAppPrefix = 'app-generated--deck--board-'
|
||||
if (calendarId.startsWith(deckAppPrefix)) {
|
||||
|
||||
@@ -26,10 +26,7 @@ import './../css/collections.css'
|
||||
import FileSharingPicker from './views/FileSharingPicker.js'
|
||||
import { buildSelector } from './helpers/selector.js'
|
||||
|
||||
// eslint-disable-next-line
|
||||
__webpack_nonce__ = btoa(OC.requestToken);
|
||||
// eslint-disable-next-line
|
||||
__webpack_public_path__ = OC.linkTo('deck', 'js/');
|
||||
import './shared-init.js'
|
||||
|
||||
Vue.prototype.t = t
|
||||
Vue.prototype.n = n
|
||||
|
||||
@@ -22,18 +22,16 @@
|
||||
|
||||
import './css/dashboard.scss'
|
||||
|
||||
const debug = process.env.NODE_ENV !== 'production'
|
||||
import './shared-init.js'
|
||||
|
||||
// eslint-disable-next-line
|
||||
__webpack_nonce__ = btoa(OC.requestToken);
|
||||
// eslint-disable-next-line
|
||||
__webpack_public_path__ = OC.linkTo('deck', 'js/');
|
||||
const debug = process.env.NODE_ENV !== 'production'
|
||||
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
OCA.Dashboard.register('deck', async (el) => {
|
||||
const { default: Vue } = await import('vue')
|
||||
const { default: Vuex } = await import('vuex')
|
||||
const { default: overview } = await import('./store/overview.js')
|
||||
const { default: dashboard } = await import('./store/dashboard.js')
|
||||
|
||||
const { default: Dashboard } = await import('./views/Dashboard.vue')
|
||||
Vue.prototype.t = t
|
||||
Vue.prototype.n = n
|
||||
@@ -42,7 +40,7 @@ document.addEventListener('DOMContentLoaded', () => {
|
||||
|
||||
const store = new Vuex.Store({
|
||||
modules: {
|
||||
overview,
|
||||
dashboard,
|
||||
},
|
||||
strict: debug,
|
||||
})
|
||||
|
||||
@@ -28,6 +28,8 @@ import CommentReferenceWidget from './views/CommentReferenceWidget.vue'
|
||||
|
||||
import { translate, translatePlural } from '@nextcloud/l10n'
|
||||
|
||||
import './shared-init.js'
|
||||
|
||||
Vue.prototype.t = translate
|
||||
Vue.prototype.n = translatePlural
|
||||
Vue.prototype.OC = window.OC
|
||||
|
||||
@@ -27,10 +27,7 @@ import CardCreateDialog from './CardCreateDialog.vue'
|
||||
import { buildSelector } from './helpers/selector.js'
|
||||
import './init-collections.js'
|
||||
|
||||
// eslint-disable-next-line
|
||||
__webpack_nonce__ = btoa(OC.requestToken);
|
||||
// eslint-disable-next-line
|
||||
__webpack_public_path__ = OC.linkTo('deck', 'js/');
|
||||
import './shared-init.js'
|
||||
|
||||
Vue.prototype.t = t
|
||||
Vue.prototype.n = n
|
||||
|
||||
@@ -25,23 +25,17 @@ import router from './router.js'
|
||||
import store from './store/main.js'
|
||||
import { sync } from 'vuex-router-sync'
|
||||
import { translate, translatePlural } from '@nextcloud/l10n'
|
||||
import { generateFilePath } from '@nextcloud/router'
|
||||
import { showError } from '@nextcloud/dialogs'
|
||||
import { subscribe } from '@nextcloud/event-bus'
|
||||
import { Tooltip } from '@nextcloud/vue'
|
||||
import ClickOutside from 'vue-click-outside'
|
||||
import './shared-init.js'
|
||||
import './models/index.js'
|
||||
import './sessions.js'
|
||||
|
||||
// the server snap.js conflicts with vertical scrolling so we disable it
|
||||
document.body.setAttribute('data-snap-ignore', 'true')
|
||||
|
||||
// eslint-disable-next-line
|
||||
__webpack_nonce__ = btoa(OC.requestToken)
|
||||
if (!process.env.HOT) {
|
||||
// eslint-disable-next-line
|
||||
__webpack_public_path__ = generateFilePath('deck', '', 'js/')
|
||||
}
|
||||
sync(store, router)
|
||||
|
||||
Vue.prototype.t = translate
|
||||
|
||||
@@ -143,7 +143,12 @@ export function createSession(boardId) {
|
||||
async close() {
|
||||
clearInterval(interval)
|
||||
document.removeEventListener('visibilitychange', visibilitychangeListener)
|
||||
await sessionApi.closeSession(boardId, await tokenPromise)
|
||||
if (token) {
|
||||
await sessionApi.closeSession(boardId, token)
|
||||
tokenPromise = null
|
||||
token = null
|
||||
delete axios.defaults.headers['x-nc-deck-session']
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
12
src/shared-init.js
Normal file
12
src/shared-init.js
Normal file
@@ -0,0 +1,12 @@
|
||||
import { generateFilePath } from '@nextcloud/router'
|
||||
|
||||
// eslint-disable-next-line
|
||||
__webpack_nonce__ = btoa(OC.requestToken)
|
||||
|
||||
if (!process.env.WEBPACK_SERVE) {
|
||||
// eslint-disable-next-line
|
||||
__webpack_public_path__ = generateFilePath('deck', '', 'js/')
|
||||
} else {
|
||||
// eslint-disable-next-line
|
||||
__webpack_public_path__ = 'http://127.0.0.1:3000/'
|
||||
}
|
||||
51
src/store/dashboard.js
Normal file
51
src/store/dashboard.js
Normal file
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* @copyright Copyright (c) 2020 Jakob Röhrl <jakob.roehrl@web.de>
|
||||
*
|
||||
* @author Jakob Röhrl <jakob.roehrl@web.de>
|
||||
*
|
||||
* @license GNU AGPL version 3 or any later version
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
import Vue from 'vue'
|
||||
import Vuex from 'vuex'
|
||||
import { OverviewApi } from '../services/OverviewApi.js'
|
||||
|
||||
Vue.use(Vuex)
|
||||
|
||||
const apiClient = new OverviewApi()
|
||||
|
||||
export default {
|
||||
state: {
|
||||
assignedCards: [],
|
||||
},
|
||||
getters: {
|
||||
assignedCardsDashboard: state => {
|
||||
return Object.values(state.assignedCards).flat()
|
||||
},
|
||||
},
|
||||
mutations: {
|
||||
setAssignedCards(state, assignedCards) {
|
||||
state.assignedCards = assignedCards
|
||||
},
|
||||
},
|
||||
actions: {
|
||||
async loadUpcoming({ commit }) {
|
||||
const upcommingCards = await apiClient.get('upcoming')
|
||||
commit('setAssignedCards', upcommingCards)
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -167,8 +167,9 @@ export default {
|
||||
.duedate:deep {
|
||||
.due {
|
||||
margin: 0 0 0 10px;
|
||||
padding: 2px 4px;
|
||||
padding: 0px 4px;
|
||||
font-size: 90%;
|
||||
margin-bottom: 7px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
const webpack = require('webpack');
|
||||
const merge = require('webpack-merge');
|
||||
const dev = require('./webpack.dev.js');
|
||||
|
||||
module.exports = merge(dev, {
|
||||
devServer: {
|
||||
hot: true,
|
||||
port: 3000,
|
||||
/**
|
||||
* This makes sure the main entrypoint is written to disk so it is
|
||||
* loaded by Nextcloud though our existing addScript calls
|
||||
*/
|
||||
writeToDisk: (filePath) => {
|
||||
return /deck\.js$/.test(filePath);
|
||||
},
|
||||
headers: {
|
||||
'Access-Control-Allow-Origin': '*'
|
||||
}
|
||||
},
|
||||
plugins: [
|
||||
new webpack.DefinePlugin({
|
||||
'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV),
|
||||
'process.env.HOT': true
|
||||
})
|
||||
]
|
||||
})
|
||||
24
webpack.js
24
webpack.js
@@ -1,10 +1,11 @@
|
||||
const webpackConfig = require('@nextcloud/webpack-vue-config')
|
||||
const webpack = require('webpack')
|
||||
const path = require('path')
|
||||
const ESLintPlugin = require('eslint-webpack-plugin')
|
||||
const StyleLintPlugin = require('stylelint-webpack-plugin')
|
||||
|
||||
const buildMode = process.env.NODE_ENV
|
||||
const isDev = buildMode === 'development'
|
||||
const isDevServer = process.env.WEBPACK_SERVE
|
||||
|
||||
webpackConfig.entry = {
|
||||
...webpackConfig.entry,
|
||||
@@ -15,12 +16,21 @@ webpackConfig.entry = {
|
||||
reference: path.join(__dirname, 'src', 'init-reference.js'),
|
||||
}
|
||||
|
||||
webpackConfig.stats = {
|
||||
context: path.resolve(__dirname, 'src'),
|
||||
assets: true,
|
||||
entrypoints: true,
|
||||
chunks: true,
|
||||
modules: true,
|
||||
if (isDevServer) {
|
||||
webpackConfig.output.publicPath = 'http://127.0.0.1:3000/'
|
||||
webpackConfig.plugins.push(
|
||||
new webpack.DefinePlugin({
|
||||
'process.env.WEBPACK_SERVE': true,
|
||||
})
|
||||
)
|
||||
} else {
|
||||
webpackConfig.stats = {
|
||||
context: path.resolve(__dirname, 'src'),
|
||||
assets: true,
|
||||
entrypoints: true,
|
||||
chunks: true,
|
||||
modules: true,
|
||||
}
|
||||
}
|
||||
|
||||
webpackConfig.plugins.push(
|
||||
|
||||
Reference in New Issue
Block a user