Compare commits

...

116 Commits

Author SHA1 Message Date
Julius Härtl
d7b64ea17d Implement done state for due dates
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-11-05 16:24:14 +01:00
Julius Härtl
a777169487 Merge pull request #2500 from nextcloud/bugfix/noid/sidebar 2020-11-04 18:44:39 +01:00
Julius Härtl
859e3494e5 Move details and description to dedicated component
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-11-04 17:42:46 +01:00
Julius Härtl
b8fef527c3 Fix glitch when editing the title in the sidebar (fixes #2499)
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-11-04 17:00:13 +01:00
Nextcloud bot
dbe1663c4e [tx-robot] updated from transifex 2020-11-04 02:31:43 +00:00
Nextcloud bot
680e5c9fa3 [tx-robot] updated from transifex 2020-11-03 02:31:06 +00:00
Julius Härtl
c6033ba57e Merge pull request #2456 from nextcloud/dependabot/npm_and_yarn/master/babel/polyfill-7.12.1
Bump @babel/polyfill from 7.11.5 to 7.12.1
2020-11-02 12:14:00 +01:00
Julius Härtl
60ccfe79b4 Merge pull request #2460 from nextcloud/dependabot/npm_and_yarn/master/babel/preset-env-7.12.1
Bump @babel/preset-env from 7.11.5 to 7.12.1
2020-11-02 12:13:31 +01:00
Julius Härtl
40f7d98166 Merge pull request #2455 from nextcloud/dependabot/npm_and_yarn/master/babel/core-7.12.3
Bump @babel/core from 7.11.6 to 7.12.3
2020-11-02 12:12:59 +01:00
Julius Härtl
eec1aa3863 Merge pull request #2490 from nextcloud/dependabot/npm_and_yarn/master/nextcloud/vue-2.8.2
Bump @nextcloud/vue from 2.7.0 to 2.8.2
2020-11-02 12:12:50 +01:00
Julius Härtl
5b730bc490 Merge pull request #2475 from nextcloud/dependabot/npm_and_yarn/master/markdown-it-12.0.2
Bump markdown-it from 11.0.1 to 12.0.2
2020-11-02 12:12:41 +01:00
Julius Härtl
d0b36e6e6e Merge pull request #2457 from nextcloud/dependabot/npm_and_yarn/master/stylelint-webpack-plugin-2.1.1
Bump stylelint-webpack-plugin from 2.1.0 to 2.1.1
2020-11-02 12:12:25 +01:00
dependabot[bot]
52fb6daf1f Bump markdown-it from 11.0.1 to 12.0.2
Bumps [markdown-it](https://github.com/markdown-it/markdown-it) from 11.0.1 to 12.0.2.
- [Release notes](https://github.com/markdown-it/markdown-it/releases)
- [Changelog](https://github.com/markdown-it/markdown-it/blob/master/CHANGELOG.md)
- [Commits](https://github.com/markdown-it/markdown-it/compare/11.0.1...12.0.2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-11-02 11:04:28 +00:00
dependabot[bot]
c2b8493167 Bump @babel/polyfill from 7.11.5 to 7.12.1
Bumps [@babel/polyfill](https://github.com/babel/babel/tree/HEAD/packages/babel-polyfill) from 7.11.5 to 7.12.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.12.1/packages/babel-polyfill)

Signed-off-by: dependabot[bot] <support@github.com>
2020-11-02 11:04:25 +00:00
dependabot[bot]
0254cb3709 Bump @nextcloud/vue from 2.7.0 to 2.8.2
Bumps [@nextcloud/vue](https://github.com/nextcloud/nextcloud-vue) from 2.7.0 to 2.8.2.
- [Release notes](https://github.com/nextcloud/nextcloud-vue/releases)
- [Commits](https://github.com/nextcloud/nextcloud-vue/compare/v2.7.0...v2.8.2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-11-02 11:02:48 +00:00
Julius Härtl
57d96b7760 Merge pull request #2473 from nextcloud/dependabot/npm_and_yarn/master/sass-loader-10.0.4
Bump sass-loader from 10.0.3 to 10.0.4
2020-11-02 12:02:05 +01:00
Julius Härtl
3fffe74992 Merge pull request #2454 from nextcloud/dependabot/npm_and_yarn/master/babel/runtime-7.12.1
Bump @babel/runtime from 7.11.2 to 7.12.1
2020-11-02 12:01:54 +01:00
Julius Härtl
485006f812 Merge pull request #2474 from nextcloud/dependabot/npm_and_yarn/master/dompurify-2.2.0
Bump dompurify from 2.1.1 to 2.2.0
2020-11-02 12:00:37 +01:00
Julius Härtl
413bf7e2c9 Merge pull request #2463 from nextcloud/rakekniven-patch-1
Changed triple dots to ellipsis
2020-11-02 11:59:22 +01:00
Julius Härtl
3dc572c3aa Merge pull request #2488 from nextcloud/dependabot/npm_and_yarn/master/vue-router-3.4.8
Bump vue-router from 3.4.6 to 3.4.8
2020-11-02 11:36:07 +01:00
Nextcloud bot
fe3aa5b816 [tx-robot] updated from transifex 2020-11-02 02:31:20 +00:00
Nextcloud bot
2a904400c8 [tx-robot] updated from transifex 2020-11-01 02:29:54 +00:00
Nextcloud bot
c5a2206f9e [tx-robot] updated from transifex 2020-10-31 02:30:59 +00:00
dependabot[bot]
9452865071 Bump vue-router from 3.4.6 to 3.4.8
Bumps [vue-router](https://github.com/vuejs/vue-router) from 3.4.6 to 3.4.8.
- [Release notes](https://github.com/vuejs/vue-router/releases)
- [Changelog](https://github.com/vuejs/vue-router/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-router/compare/v3.4.6...v3.4.8)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-31 02:14:55 +00:00
Nextcloud bot
613b6dfa80 [tx-robot] updated from transifex 2020-10-30 02:31:22 +00:00
Nextcloud bot
60fa52f36d [tx-robot] updated from transifex 2020-10-29 02:31:38 +00:00
Nextcloud bot
6a4f1b73b8 [tx-robot] updated from transifex 2020-10-28 02:30:47 +00:00
Nextcloud bot
6128e50800 [tx-robot] updated from transifex 2020-10-27 02:30:17 +00:00
Nextcloud bot
6d2582d2f7 [tx-robot] updated from transifex 2020-10-25 02:29:49 +00:00
dependabot[bot]
7562306914 Bump dompurify from 2.1.1 to 2.2.0
Bumps [dompurify](https://github.com/cure53/DOMPurify) from 2.1.1 to 2.2.0.
- [Release notes](https://github.com/cure53/DOMPurify/releases)
- [Commits](https://github.com/cure53/DOMPurify/compare/2.1.1...2.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-24 01:05:40 +00:00
dependabot[bot]
6d7a3606df Bump sass-loader from 10.0.3 to 10.0.4
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 10.0.3 to 10.0.4.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v10.0.3...v10.0.4)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-24 01:05:00 +00:00
Nextcloud bot
0cd5ca99bd [tx-robot] updated from transifex 2020-10-23 02:30:35 +00:00
Nextcloud bot
a1431a4150 [tx-robot] updated from transifex 2020-10-20 02:30:01 +00:00
rakekniven
297436770a Changed triple dots to ellipsis
Reported at Transifex.

Signed-off-by: rakekniven <mark.ziegler@rakekniven.de>
2020-10-19 12:05:37 +02:00
Nextcloud bot
00dd093eb7 [tx-robot] updated from transifex 2020-10-18 02:28:51 +00:00
Nextcloud bot
c0dfe9d9ea [tx-robot] updated from transifex 2020-10-17 02:30:05 +00:00
dependabot[bot]
9be57c7a3f Bump @babel/preset-env from 7.11.5 to 7.12.1
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.11.5 to 7.12.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.12.1/packages/babel-preset-env)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-17 01:08:44 +00:00
dependabot[bot]
57004ca01b Bump stylelint-webpack-plugin from 2.1.0 to 2.1.1
Bumps [stylelint-webpack-plugin](https://github.com/webpack-contrib/stylelint-webpack-plugin) from 2.1.0 to 2.1.1.
- [Release notes](https://github.com/webpack-contrib/stylelint-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/stylelint-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/stylelint-webpack-plugin/compare/v2.1.0...v2.1.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-17 01:06:18 +00:00
dependabot[bot]
a48a79066b Bump @babel/core from 7.11.6 to 7.12.3
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.11.6 to 7.12.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.12.3/packages/babel-core)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-17 01:04:57 +00:00
dependabot[bot]
f1e768b34e Bump @babel/runtime from 7.11.2 to 7.12.1
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) from 7.11.2 to 7.12.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.12.1/packages/babel-runtime)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-17 01:04:25 +00:00
Nextcloud bot
6f2297efda [tx-robot] updated from transifex 2020-10-16 02:29:37 +00:00
Nextcloud bot
4e1ba6aaf8 [tx-robot] updated from transifex 2020-10-15 02:29:18 +00:00
Nextcloud bot
4c8362d760 [tx-robot] updated from transifex 2020-10-14 02:31:02 +00:00
Julius Härtl
c5b6c45845 Merge pull request #2435 from nextcloud/bugfix/2423 2020-10-13 21:21:19 +02:00
Julius Härtl
9869fceffc Merge pull request #2440 from nextcloud/bugfix/2148-2284 2020-10-13 17:20:47 +02:00
Julius Härtl
d85365378f Fix spacing in AppContent
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-13 13:05:30 +02:00
Julius Härtl
ab9549102d Fix control bar toggle
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-13 13:03:56 +02:00
Julius Härtl
1ac4a696d0 Move navigation toggle to vue components
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-13 13:03:56 +02:00
Julius Härtl
d559482b4b Merge pull request #2437 from nextcloud/bugfix/2356
Only remove card padding for editable cards
2020-10-13 11:44:29 +02:00
Julius Härtl
919f7d83e6 Merge pull request #2433 from nextcloud/bugfix/1855
Fix scrollable titles with Dyslexia font
2020-10-13 11:44:16 +02:00
Julius Härtl
9731b439c0 Only remove card padding for editable cards
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-13 10:22:55 +02:00
Julius Härtl
09ff5a7578 Merge pull request #2434 from Nienzu/card_menu_rearrange
Move most destructive actions in drop down menus to the bottom
2020-10-13 10:02:32 +02:00
Julius Härtl
1315fb6d02 Always have pointer for cards by default
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-13 09:58:04 +02:00
Julius Härtl
1fa33f76dc Avoid issues with clicking in compact mode
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-13 09:57:48 +02:00
Julius Härtl
4e996402c7 Give modal a bit more padding
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-13 09:57:22 +02:00
Julius Härtl
1f54ecca5b Do not trigger card open when updating the title
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-13 09:47:35 +02:00
nienzu
3a057bdb62 Move most destructive actions in drop down menus to the bottom
Signed-off-by: nienzu <ibqqz0602@gmail.com>
2020-10-13 15:43:56 +08:00
Julius Härtl
4df7a9caf9 Do not open the dialog automatically upon card creation, only upon click
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-13 09:38:30 +02:00
Julius Härtl
f0f1f136be Fix scrollable titles with Dyslexia font
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-13 09:36:31 +02:00
Julius Härtl
d6b6ac638e Merge pull request #2367 from nextcloud/bugfix/noid/sharing-fix-search-assign 2020-10-13 08:18:37 +02:00
Nextcloud bot
c80d729771 [tx-robot] updated from transifex 2020-10-13 02:29:52 +00:00
Julius Härtl
656149ec52 Merge pull request #2412 from nextcloud/dependabot/npm_and_yarn/master/raw-loader-4.0.2
Bump raw-loader from 4.0.1 to 4.0.2
2020-10-12 09:31:39 +02:00
Julius Härtl
67ce692816 Merge pull request #2427 from nextcloud/dependabot/npm_and_yarn/master/jest-26.5.3
Bump jest from 26.5.2 to 26.5.3
2020-10-12 09:31:15 +02:00
Julius Härtl
9d16b9f4e0 Merge pull request #2426 from nextcloud/dependabot/npm_and_yarn/master/p-queue-6.6.2
Bump p-queue from 6.6.1 to 6.6.2
2020-10-12 09:31:04 +02:00
dependabot[bot]
ab5afc9db8 Bump jest from 26.5.2 to 26.5.3
Bumps [jest](https://github.com/facebook/jest) from 26.5.2 to 26.5.3.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/compare/v26.5.2...v26.5.3)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-12 07:22:49 +00:00
dependabot[bot]
784bb6e7c5 Bump p-queue from 6.6.1 to 6.6.2
Bumps [p-queue](https://github.com/sindresorhus/p-queue) from 6.6.1 to 6.6.2.
- [Release notes](https://github.com/sindresorhus/p-queue/releases)
- [Commits](https://github.com/sindresorhus/p-queue/compare/v6.6.1...v6.6.2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-12 07:20:52 +00:00
dependabot[bot]
715ced1617 Bump raw-loader from 4.0.1 to 4.0.2
Bumps [raw-loader](https://github.com/webpack-contrib/raw-loader) from 4.0.1 to 4.0.2.
- [Release notes](https://github.com/webpack-contrib/raw-loader/releases)
- [Changelog](https://github.com/webpack-contrib/raw-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/raw-loader/compare/v4.0.1...v4.0.2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-12 07:20:50 +00:00
Julius Härtl
1cea90165d Merge pull request #2404 from Flamenco/patch-1
Update Controls.vue
2020-10-12 08:49:59 +02:00
Julius Härtl
556d3d1164 Properly handle multiple shares in a row and refactor sharee loading
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-12 08:48:00 +02:00
Julius Härtl
974f4b0f6d Merge pull request #2406 from nextcloud/dependabot/npm_and_yarn/master/file-loader-6.1.1
Bump file-loader from 6.1.0 to 6.1.1
2020-10-12 08:43:08 +02:00
Julius Härtl
21feff07bc Merge pull request #2421 from nextcloud/dependabot/npm_and_yarn/master/nextcloud/initial-state-1.2.0
Bump @nextcloud/initial-state from 1.1.2 to 1.2.0
2020-10-12 08:42:58 +02:00
Julius Härtl
ccffff96f0 Merge pull request #2417 from nextcloud/dependabot/npm_and_yarn/master/url-loader-4.1.1
Bump url-loader from 4.1.0 to 4.1.1
2020-10-12 08:42:41 +02:00
Julius Härtl
142ffdf018 Merge pull request #2419 from nextcloud/dependabot/npm_and_yarn/master/vue-router-3.4.6
Bump vue-router from 3.4.5 to 3.4.6
2020-10-12 08:42:32 +02:00
Julius Härtl
c3c564fc6f Merge pull request #2408 from nextcloud/dependabot/npm_and_yarn/master/nextcloud/dialogs-3.0.0 2020-10-12 08:32:22 +02:00
Julius Härtl
9c74683873 Merge pull request #2410 from nextcloud/dependabot/npm_and_yarn/master/nextcloud/vue-2.7.0
Bump @nextcloud/vue from 2.6.9 to 2.7.0
2020-10-12 08:32:09 +02:00
Julius Härtl
ba74780f62 Merge pull request #2414 from nextcloud/dependabot/npm_and_yarn/master/sass-loader-10.0.3
Bump sass-loader from 10.0.2 to 10.0.3
2020-10-12 08:31:45 +02:00
Julius Härtl
cf7f2df1e2 Update dependabot.yml 2020-10-12 08:31:18 +02:00
Nextcloud bot
be447709a8 [tx-robot] updated from transifex 2020-10-12 02:28:49 +00:00
dependabot[bot]
8d7033ddb8 Bump @nextcloud/initial-state from 1.1.2 to 1.2.0
Bumps [@nextcloud/initial-state](https://github.com/nextcloud/nextcloud-initial-state) from 1.1.2 to 1.2.0.
- [Release notes](https://github.com/nextcloud/nextcloud-initial-state/releases)
- [Changelog](https://github.com/nextcloud/nextcloud-initial-state/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/nextcloud-initial-state/compare/v1.1.2...v1.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-10 01:09:30 +00:00
dependabot[bot]
3651023326 Bump vue-router from 3.4.5 to 3.4.6
Bumps [vue-router](https://github.com/vuejs/vue-router) from 3.4.5 to 3.4.6.
- [Release notes](https://github.com/vuejs/vue-router/releases)
- [Changelog](https://github.com/vuejs/vue-router/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-router/compare/v3.4.5...v3.4.6)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-10 01:08:11 +00:00
dependabot[bot]
abc4086ec4 Bump url-loader from 4.1.0 to 4.1.1
Bumps [url-loader](https://github.com/webpack-contrib/url-loader) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/webpack-contrib/url-loader/releases)
- [Changelog](https://github.com/webpack-contrib/url-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/url-loader/compare/v4.1.0...v4.1.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-10 01:07:16 +00:00
dependabot[bot]
6e4e561f97 Bump sass-loader from 10.0.2 to 10.0.3
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 10.0.2 to 10.0.3.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v10.0.2...v10.0.3)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-10 01:06:22 +00:00
dependabot[bot]
b8d90e06d9 Bump @nextcloud/vue from 2.6.9 to 2.7.0
Bumps [@nextcloud/vue](https://github.com/nextcloud/nextcloud-vue) from 2.6.9 to 2.7.0.
- [Release notes](https://github.com/nextcloud/nextcloud-vue/releases)
- [Commits](https://github.com/nextcloud/nextcloud-vue/compare/v2.6.9...v2.7.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-10 01:04:38 +00:00
dependabot[bot]
b2860dd7a9 Bump @nextcloud/dialogs from 2.0.1 to 3.0.0
Bumps [@nextcloud/dialogs](https://github.com/nextcloud/nextcloud-dialogs) from 2.0.1 to 3.0.0.
- [Release notes](https://github.com/nextcloud/nextcloud-dialogs/releases)
- [Changelog](https://github.com/nextcloud/nextcloud-dialogs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/nextcloud-dialogs/compare/v2.0.1...v3.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-10 01:04:05 +00:00
dependabot[bot]
33c6b2640f Bump file-loader from 6.1.0 to 6.1.1
Bumps [file-loader](https://github.com/webpack-contrib/file-loader) from 6.1.0 to 6.1.1.
- [Release notes](https://github.com/webpack-contrib/file-loader/releases)
- [Changelog](https://github.com/webpack-contrib/file-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/file-loader/compare/v6.1.0...v6.1.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-10 01:03:28 +00:00
Flamenco
905f32e229 Update Controls.vue
Add padding to filter popup.
2020-10-09 09:36:59 -04:00
Julius Härtl
eddacc0509 Merge pull request #2359 from nextcloud/bugfix/2357
Also exclude deleted items from calendar boards
2020-10-07 16:47:07 +02:00
Julius Härtl
ca6e01d23b Merge pull request #2358 from nextcloud/bugfix/2344
Properly check if FTSEvent has an argument set
2020-10-07 16:46:41 +02:00
Julius Härtl
3336225a56 Merge pull request #2371 from nextcloud/dependabot/npm_and_yarn/babel-jest-26.5.2 2020-10-07 16:39:55 +02:00
Julius Härtl
c5b8d4f6b9 Merge pull request #2374 from nextcloud/dependabot/npm_and_yarn/moment-2.29.1 2020-10-07 16:39:13 +02:00
dependabot[bot]
af15d3e0e6 Bump moment from 2.29.0 to 2.29.1
Bumps [moment](https://github.com/moment/moment) from 2.29.0 to 2.29.1.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.29.0...2.29.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 14:10:59 +00:00
dependabot[bot]
f01caa4c8f Bump babel-jest from 26.3.0 to 26.5.2
Bumps [babel-jest](https://github.com/facebook/jest/tree/HEAD/packages/babel-jest) from 26.3.0 to 26.5.2.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v26.5.2/packages/babel-jest)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 14:10:08 +00:00
Julius Härtl
83fcc8a328 Merge pull request #2376 from nextcloud/dependabot/npm_and_yarn/style-loader-1.3.0
Bump style-loader from 1.2.1 to 1.3.0
2020-10-07 16:09:24 +02:00
Julius Härtl
4df4c8bc3f Merge pull request #2385 from nextcloud/dependabot/npm_and_yarn/master/style-loader-1.3.0
Bump style-loader from 1.2.1 to 1.3.0
2020-10-07 16:08:46 +02:00
Julius Härtl
f4bd978c71 Merge pull request #2375 from nextcloud/dependabot/npm_and_yarn/webpack-merge-5.2.0
Bump webpack-merge from 5.1.4 to 5.2.0
2020-10-07 16:08:03 +02:00
Julius Härtl
56d82395b5 Merge pull request #2392 from nextcloud/dependabot/npm_and_yarn/master/nextcloud/vue-2.6.9
Bump @nextcloud/vue from 2.6.8 to 2.6.9
2020-10-07 16:07:37 +02:00
Julius Härtl
6b6ebd8b71 Merge pull request #2370 from nextcloud/dependabot/npm_and_yarn/jest-26.5.2
Bump jest from 26.4.2 to 26.5.2
2020-10-07 16:07:30 +02:00
Julius Härtl
24682519c2 Merge pull request #2384 from nextcloud/dependabot/npm_and_yarn/master/jest-26.5.2
Bump jest from 26.4.2 to 26.5.2
2020-10-07 16:07:19 +02:00
Julius Härtl
d2a2e788d4 Merge pull request #2380 from nextcloud/dependabot/npm_and_yarn/master/acorn-8.0.4
Bump acorn from 8.0.3 to 8.0.4
2020-10-07 16:07:14 +02:00
Julius Härtl
36fcb429de Merge pull request #2372 from nextcloud/dependabot/npm_and_yarn/acorn-8.0.4
Bump acorn from 8.0.3 to 8.0.4
2020-10-07 16:06:40 +02:00
dependabot[bot]
7d9d4fd9c1 Bump acorn from 8.0.3 to 8.0.4
Bumps [acorn](https://github.com/acornjs/acorn) from 8.0.3 to 8.0.4.
- [Release notes](https://github.com/acornjs/acorn/releases)
- [Commits](https://github.com/acornjs/acorn/compare/8.0.3...8.0.4)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:55:32 +00:00
dependabot[bot]
fef24cb994 Bump jest from 26.4.2 to 26.5.2
Bumps [jest](https://github.com/facebook/jest) from 26.4.2 to 26.5.2.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/compare/v26.4.2...v26.5.2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:55:27 +00:00
dependabot[bot]
2e6555306b Bump acorn from 8.0.3 to 8.0.4
Bumps [acorn](https://github.com/acornjs/acorn) from 8.0.3 to 8.0.4.
- [Release notes](https://github.com/acornjs/acorn/releases)
- [Commits](https://github.com/acornjs/acorn/compare/8.0.3...8.0.4)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:55:22 +00:00
dependabot[bot]
31b9b0f2fb Bump jest from 26.4.2 to 26.5.2
Bumps [jest](https://github.com/facebook/jest) from 26.4.2 to 26.5.2.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/compare/v26.4.2...v26.5.2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:55:18 +00:00
dependabot[bot]
0b665f5712 Bump @nextcloud/vue from 2.6.8 to 2.6.9
Bumps [@nextcloud/vue](https://github.com/nextcloud/nextcloud-vue) from 2.6.8 to 2.6.9.
- [Release notes](https://github.com/nextcloud/nextcloud-vue/releases)
- [Commits](https://github.com/nextcloud/nextcloud-vue/compare/v2.6.8...v2.6.9)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:54:08 +00:00
Julius Härtl
3f14e52b2e Merge pull request #2373 from nextcloud/dependabot/npm_and_yarn/nextcloud/eslint-plugin-1.5.0
Bump @nextcloud/eslint-plugin from 1.4.0 to 1.5.0
2020-10-07 14:53:16 +02:00
dependabot[bot]
7bd6709c3a Bump style-loader from 1.2.1 to 1.3.0
Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 1.2.1 to 1.3.0.
- [Release notes](https://github.com/webpack-contrib/style-loader/releases)
- [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/style-loader/compare/v1.2.1...v1.3.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:51:02 +00:00
dependabot[bot]
2d7f13e266 Bump style-loader from 1.2.1 to 1.3.0
Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 1.2.1 to 1.3.0.
- [Release notes](https://github.com/webpack-contrib/style-loader/releases)
- [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/style-loader/compare/v1.2.1...v1.3.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:47:11 +00:00
Julius Härtl
b59cec406c Fix dependabot branch config
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-07 14:47:09 +02:00
dependabot[bot]
5d41fa8c78 Bump webpack-merge from 5.1.4 to 5.2.0
Bumps [webpack-merge](https://github.com/survivejs/webpack-merge) from 5.1.4 to 5.2.0.
- [Release notes](https://github.com/survivejs/webpack-merge/releases)
- [Changelog](https://github.com/survivejs/webpack-merge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/survivejs/webpack-merge/compare/v5.1.4...v5.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:46:32 +00:00
dependabot[bot]
c55ef58ea9 Bump @nextcloud/eslint-plugin from 1.4.0 to 1.5.0
Bumps [@nextcloud/eslint-plugin](https://github.com/nextcloud/eslint-plugin) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/nextcloud/eslint-plugin/releases)
- [Changelog](https://github.com/nextcloud/eslint-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/eslint-plugin/compare/v1.4.0...v1.5.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 12:44:48 +00:00
Julius Härtl
a009492bb7 Fix dependabot branch config
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-07 14:44:01 +02:00
Julius Härtl
9bd5be1824 Dependabot updates for stable1.1
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-07 14:42:42 +02:00
Nextcloud bot
29d80fb2df [tx-robot] updated from transifex 2020-10-07 02:29:22 +00:00
Julius Härtl
ffa6d74440 Also exclude deleted items from calendar boards
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-06 08:17:46 +02:00
Julius Härtl
a69fd53bb4 Properly check if FTSEvent has an argument set
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-10-06 08:10:17 +02:00
103 changed files with 3637 additions and 1969 deletions

View File

@@ -2,6 +2,7 @@ version: 2
updates:
- package-ecosystem: npm
directory: "/"
target-branch: "master"
schedule:
interval: weekly
day: saturday
@@ -11,6 +12,18 @@ updates:
reviewers:
- juliushaertl
- jakobroehrl
#- package-ecosystem: npm
# directory: "/"
# target-branch: "stable1.1"
# schedule:
# interval: weekly
# day: saturday
# time: "03:00"
# timezone: Europe/Paris
# open-pull-requests-limit: 10
# reviewers:
# - juliushaertl
# - jakobroehrl
- package-ecosystem: composer
directory: "/"
schedule:

View File

@@ -125,8 +125,8 @@ OC.L10N.register(
"(group)" : "(مجموعة)",
"(circle)" : "(دائرة)",
"Assign to me" : "ينسب لي",
"Delete card" : "حذف البطاقة",
"Move card" : "حرك البطاقة",
"Delete card" : "حذف البطاقة",
"Move card to another board" : "حرك البطاقة الى لوح اخر",
"seconds ago" : "ثوانٍ مضت",
"All boards" : "جميع الالواح",

View File

@@ -123,8 +123,8 @@
"(group)" : "(مجموعة)",
"(circle)" : "(دائرة)",
"Assign to me" : "ينسب لي",
"Delete card" : "حذف البطاقة",
"Move card" : "حرك البطاقة",
"Delete card" : "حذف البطاقة",
"Move card to another board" : "حرك البطاقة الى لوح اخر",
"seconds ago" : "ثوانٍ مضت",
"All boards" : "جميع الالواح",

View File

@@ -202,10 +202,10 @@ OC.L10N.register(
"(circle)" : "(cercle)",
"Assign to me" : "Assigna'm a mi",
"Unassign myself" : "Desasignar a mi mateix",
"Move card" : "Mou la targeta",
"Unarchive card" : "Desarxiva targeta",
"Archive card" : "Arxiva la targeta",
"Delete card" : "Suprimeix targeta",
"Move card" : "Mou la targeta",
"Move card to another board" : "Mou la targeta a un altre tauler",
"Select a list" : "Seleccioneu una llista",
"seconds ago" : "fa uns segons",

View File

@@ -200,10 +200,10 @@
"(circle)" : "(cercle)",
"Assign to me" : "Assigna'm a mi",
"Unassign myself" : "Desasignar a mi mateix",
"Move card" : "Mou la targeta",
"Unarchive card" : "Desarxiva targeta",
"Archive card" : "Arxiva la targeta",
"Delete card" : "Suprimeix targeta",
"Move card" : "Mou la targeta",
"Move card to another board" : "Mou la targeta a un altre tauler",
"Select a list" : "Seleccioneu una llista",
"seconds ago" : "fa uns segons",

View File

@@ -146,6 +146,7 @@ OC.L10N.register(
"Undo" : "Vrátit zpět",
"Deleted cards" : "Smazané karty",
"Share board with a user, group or circle …" : "Sdílet tabuli s uživatelem, skupinou nebo okruhem…",
"No participants found" : "Nenalezeni žádní účastníci",
"Board owner" : "Vlastník tabule",
"(Group)" : "(Skupina)",
"(Circle)" : "(Okruh)",
@@ -153,6 +154,7 @@ OC.L10N.register(
"Can share" : "Může sdílet",
"Can manage" : "Může spravovat",
"Delete" : "Smazat",
"Failed to create share with {displayName}" : "Nepodařilo se vytvořit sdílení s {displayName}",
"Add a new list" : "Přidat nový sloupec",
"Archive all cards" : "Archivovat všechny karty",
"Delete list" : "Smazat seznam",
@@ -204,10 +206,10 @@ OC.L10N.register(
"(circle)" : "(okruh)",
"Assign to me" : "Přiřadit mě",
"Unassign myself" : "Zrušit přiřazení sobě",
"Move card" : "Přesunout kartu",
"Unarchive card" : "Zrušit archivaci karty",
"Archive card" : "Archivovat kartu",
"Delete card" : "Smazat kartu",
"Move card" : "Přesunout kartu",
"Move card to another board" : "Přesunout kartu na jinou tabuli",
"Select a list" : "Vyberte sloupec",
"Card deleted" : "Karta smazána",

View File

@@ -144,6 +144,7 @@
"Undo" : "Vrátit zpět",
"Deleted cards" : "Smazané karty",
"Share board with a user, group or circle …" : "Sdílet tabuli s uživatelem, skupinou nebo okruhem…",
"No participants found" : "Nenalezeni žádní účastníci",
"Board owner" : "Vlastník tabule",
"(Group)" : "(Skupina)",
"(Circle)" : "(Okruh)",
@@ -151,6 +152,7 @@
"Can share" : "Může sdílet",
"Can manage" : "Může spravovat",
"Delete" : "Smazat",
"Failed to create share with {displayName}" : "Nepodařilo se vytvořit sdílení s {displayName}",
"Add a new list" : "Přidat nový sloupec",
"Archive all cards" : "Archivovat všechny karty",
"Delete list" : "Smazat seznam",
@@ -202,10 +204,10 @@
"(circle)" : "(okruh)",
"Assign to me" : "Přiřadit mě",
"Unassign myself" : "Zrušit přiřazení sobě",
"Move card" : "Přesunout kartu",
"Unarchive card" : "Zrušit archivaci karty",
"Archive card" : "Archivovat kartu",
"Delete card" : "Smazat kartu",
"Move card" : "Přesunout kartu",
"Move card to another board" : "Přesunout kartu na jinou tabuli",
"Select a list" : "Vyberte sloupec",
"Card deleted" : "Karta smazána",

View File

@@ -50,9 +50,9 @@ OC.L10N.register(
"Reply" : "Besvar",
"Update" : "Opdatér",
"(group)" : "(gruppe)",
"Move card" : "Flyt kort",
"Archive card" : "Arkivér kort",
"Delete card" : "Slet kort",
"Move card" : "Flyt kort",
"seconds ago" : "sekunder siden",
"Archived boards" : "Arkiverede lister",
"Shared with you" : "Shared with you",

View File

@@ -48,9 +48,9 @@
"Reply" : "Besvar",
"Update" : "Opdatér",
"(group)" : "(gruppe)",
"Move card" : "Flyt kort",
"Archive card" : "Arkivér kort",
"Delete card" : "Slet kort",
"Move card" : "Flyt kort",
"seconds ago" : "sekunder siden",
"Archived boards" : "Arkiverede lister",
"Shared with you" : "Shared with you",

View File

@@ -49,7 +49,7 @@ OC.L10N.register(
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} hat von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
"You have assigned {assigneduser} to card {card} on board {board}" : "Du hast {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} hat {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
"You have unassigned {assigneduser} from card {card} on board {board}" : "Du hast die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"You have unassigned {assigneduser} from card {card} on board {board}" : "Du hast die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} hat die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"You have moved the card {card} from list {stackBefore} to {stack}" : "Du hast die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} hat die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
@@ -67,13 +67,13 @@ OC.L10N.register(
"Deck" : "Deck",
"Changes in the <strong>Deck app</strong>" : "Änderungen in der <strong>Deck-App</strong>",
"A <strong>comment</strong> was created on a card" : "Ein <strong>Kommentar</strong> zu einer Karte wurde erstellt",
"Upcoming cards" : "Kommende Karten",
"Upcoming cards" : "Zukünftige Karten",
"Personal" : "Persönlich",
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Die Karte \"%s\" auf \"%s\" wurde Dir von %s zugewiesen.",
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} hat Dir die Karte \"%s\" auf \"%s\" zugewiesen.",
"The card \"%s\" on \"%s\" has reached its due date." : "Die Karte \"%s\" in \"%s\" ist überfällig.",
"%s has mentioned you in a comment on \"%s\"." : " %s hat Dich in einem Kommentar zu \"%s\" erwähnt.",
"{user} has mentioned you in a comment on \"%s\"." : "{user} hat Dich in einem Kommentar zu “%s” erwähnt.",
"%s has mentioned you in a comment on \"%s\"." : "%s hat Dich in einem Kommentar zu \"%s\" erwähnt.",
"{user} has mentioned you in a comment on \"%s\"." : "{user} hat Dich in einem Kommentar zu \"%s\" erwähnt.",
"The board \"%s\" has been shared with you by %s." : "Das Board \"%s\" wurde von %s mit Dir geteilt.",
"{user} has shared the board %s with you." : "{user} hat das Board %s mit Dir geteilt.",
"No data was provided to create an attachment." : "Es wurden keine Daten zum Erstellen eines Anhangs bereitgestellt.",
@@ -81,7 +81,7 @@ OC.L10N.register(
"To review" : "Zu überprüfen",
"Action needed" : "Handlung erforderlich",
"Later" : "Später",
"copy" : "Kopieren",
"copy" : "Kopie",
"To do" : "Offen",
"Doing" : "In Arbeit",
"Done" : "Erledigt",
@@ -90,7 +90,7 @@ OC.L10N.register(
"Example Task 1" : "Beispielaufgabe 1",
"The file was uploaded" : "Die Datei wurde hochgeladen",
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Die hochgeladene Datei überschreitet die upload_max_filesize-Vorgabe in php.ini",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Die Datei ist größer als die MAX_FILE_SIZE-Vorgabe, die im HTML-Formular angegeben ist.",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Die Datei ist größer als die MAX_FILE_SIZE-Vorgabe, die im HTML-Formular angegeben ist",
"The file was only partially uploaded" : "Die Datei konnte nur teilweise hochgeladen werden",
"No file was uploaded" : "Es wurde keine Datei hochgeladen",
"Missing a temporary folder" : "Kein temporärer Ordner vorhanden",
@@ -98,7 +98,7 @@ OC.L10N.register(
"A PHP extension stopped the file upload" : "Eine PHP-Erweiterung hat das Hochladen der Datei gestoppt",
"No file uploaded or file size exceeds maximum of %s" : "Keine Datei hochgeladen oder die Dateigröße überschreitet %s",
"Personal planning and team project organization" : "Persönliche Planung und Teamprojektorganisation",
"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" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Füge Deine Aufgaben zu den Karten hinzu und ordne diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Vergabe von Schlagworten für noch bessere Organisation\n- 👥 Teile mit Deinem Team, Freunden oder der Familie\n- 📎 Füge Dateien hinzu und verwende diese in Deinen Markdown-Beschreibungen\n- 💬 Diskutiere mit Deinem Team mit Kommentaren\n- ⚡ Behalte Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisiere Dein Projekt",
"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" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Füge Deine Aufgaben zu den Karten hinzu und ordne diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisen von Schlagworten für noch bessere Organisation\n- 👥 Teile mit Deinem Team, Freunden oder der Familie\n- 📎 Füge Dateien hinzu und verwende diese in Deinen Markdown-Beschreibungen\n- 💬 Diskutiere mit Deinem Team mit Kommentaren\n- ⚡ Behalte Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisiere Dein Projekt",
"Card details" : "Kartendetails",
"Add board" : "Board hinzufügen",
"Select the board to link to a project" : "Wähle ein Board aus, um dieses mit einem Projekt zu verknüpfen",
@@ -146,6 +146,8 @@ OC.L10N.register(
"Undo" : "Rückgängig",
"Deleted cards" : "Gelöschte Karten",
"Share board with a user, group or circle …" : "Board mit Benutzer, Gruppe oder Kreis teilen…",
"Searching for users, groups and circles …" : "Suche nach Benutzern, Gruppen und Kreisen …",
"No participants found" : "Keine Teilnehmer gefunden",
"Board owner" : "Board-Besitzer",
"(Group)" : "(Gruppe)",
"(Circle)" : "(Kreis)",
@@ -153,6 +155,7 @@ OC.L10N.register(
"Can share" : "kann teilen",
"Can manage" : "kann verwalten",
"Delete" : "Löschen",
"Failed to create share with {displayName}" : "Fehler beim Erstellen der Freigabe mit dem Namen {displayName}",
"Add a new list" : "Eine neue Liste hinzufügen",
"Archive all cards" : "Alle Karten archivieren",
"Delete list" : "Liste löschen",
@@ -204,10 +207,10 @@ OC.L10N.register(
"(circle)" : "(Kreis)",
"Assign to me" : "Mir zuweisen",
"Unassign myself" : "Nicht mehr mir zuweisen",
"Move card" : "Karte verschieben",
"Unarchive card" : "Karte dearchivieren",
"Archive card" : "Karte archivieren",
"Delete card" : "Karte löschen",
"Move card" : "Karte verschieben",
"Move card to another board" : "Karte auf ein anderes Board verschieben",
"Select a list" : "Eine Liste auswählen",
"Card deleted" : "Karte gelöscht",
@@ -216,7 +219,7 @@ OC.L10N.register(
"Archived boards" : "Archivierte Boards",
"Shared with you" : "Mit Dir geteilt",
"Use modal card view" : "Modale Kartenansicht verwenden",
"Show boards in calendar/tasks" : "Board im Kalender/Aufgaben anzeigen",
"Show boards in calendar/tasks" : "Board in Kalender/Aufgaben anzeigen",
"Limit deck usage of groups" : "Nutzung von Deck auf Gruppen einschränken",
"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." : "Durch die Begrenzung von Deck werden Benutzer, die nicht Teil dieser Gruppen sind, daran gehindert, eigene Boards zu erstellen. Benutzer können weiterhin an Boards arbeiten, die für sie freigegeben wurden.",
"Board name" : "Board-Name",
@@ -235,8 +238,8 @@ OC.L10N.register(
"Tomorrow" : "Morgen",
"This week" : "Diese Woche",
"No due" : "Kein Fälligkeitsdatum",
"No upcoming cards" : "Keine kommenden Karten",
"upcoming cards" : "Kommende Karten",
"No upcoming cards" : "Keine zukünftigen Karten",
"upcoming cards" : "zukünftige Karten",
"Link to a board" : "Mit einem Board verknüpfen",
"Link to a card" : "Mit einer Karte verknüpfen",
"Something went wrong" : "Etwas ist schiefgelaufen",

View File

@@ -47,7 +47,7 @@
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} hat von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
"You have assigned {assigneduser} to card {card} on board {board}" : "Du hast {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} hat {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
"You have unassigned {assigneduser} from card {card} on board {board}" : "Du hast die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"You have unassigned {assigneduser} from card {card} on board {board}" : "Du hast die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} hat die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"You have moved the card {card} from list {stackBefore} to {stack}" : "Du hast die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} hat die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
@@ -65,13 +65,13 @@
"Deck" : "Deck",
"Changes in the <strong>Deck app</strong>" : "Änderungen in der <strong>Deck-App</strong>",
"A <strong>comment</strong> was created on a card" : "Ein <strong>Kommentar</strong> zu einer Karte wurde erstellt",
"Upcoming cards" : "Kommende Karten",
"Upcoming cards" : "Zukünftige Karten",
"Personal" : "Persönlich",
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Die Karte \"%s\" auf \"%s\" wurde Dir von %s zugewiesen.",
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} hat Dir die Karte \"%s\" auf \"%s\" zugewiesen.",
"The card \"%s\" on \"%s\" has reached its due date." : "Die Karte \"%s\" in \"%s\" ist überfällig.",
"%s has mentioned you in a comment on \"%s\"." : " %s hat Dich in einem Kommentar zu \"%s\" erwähnt.",
"{user} has mentioned you in a comment on \"%s\"." : "{user} hat Dich in einem Kommentar zu “%s” erwähnt.",
"%s has mentioned you in a comment on \"%s\"." : "%s hat Dich in einem Kommentar zu \"%s\" erwähnt.",
"{user} has mentioned you in a comment on \"%s\"." : "{user} hat Dich in einem Kommentar zu \"%s\" erwähnt.",
"The board \"%s\" has been shared with you by %s." : "Das Board \"%s\" wurde von %s mit Dir geteilt.",
"{user} has shared the board %s with you." : "{user} hat das Board %s mit Dir geteilt.",
"No data was provided to create an attachment." : "Es wurden keine Daten zum Erstellen eines Anhangs bereitgestellt.",
@@ -79,7 +79,7 @@
"To review" : "Zu überprüfen",
"Action needed" : "Handlung erforderlich",
"Later" : "Später",
"copy" : "Kopieren",
"copy" : "Kopie",
"To do" : "Offen",
"Doing" : "In Arbeit",
"Done" : "Erledigt",
@@ -88,7 +88,7 @@
"Example Task 1" : "Beispielaufgabe 1",
"The file was uploaded" : "Die Datei wurde hochgeladen",
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Die hochgeladene Datei überschreitet die upload_max_filesize-Vorgabe in php.ini",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Die Datei ist größer als die MAX_FILE_SIZE-Vorgabe, die im HTML-Formular angegeben ist.",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Die Datei ist größer als die MAX_FILE_SIZE-Vorgabe, die im HTML-Formular angegeben ist",
"The file was only partially uploaded" : "Die Datei konnte nur teilweise hochgeladen werden",
"No file was uploaded" : "Es wurde keine Datei hochgeladen",
"Missing a temporary folder" : "Kein temporärer Ordner vorhanden",
@@ -96,7 +96,7 @@
"A PHP extension stopped the file upload" : "Eine PHP-Erweiterung hat das Hochladen der Datei gestoppt",
"No file uploaded or file size exceeds maximum of %s" : "Keine Datei hochgeladen oder die Dateigröße überschreitet %s",
"Personal planning and team project organization" : "Persönliche Planung und Teamprojektorganisation",
"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" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Füge Deine Aufgaben zu den Karten hinzu und ordne diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Vergabe von Schlagworten für noch bessere Organisation\n- 👥 Teile mit Deinem Team, Freunden oder der Familie\n- 📎 Füge Dateien hinzu und verwende diese in Deinen Markdown-Beschreibungen\n- 💬 Diskutiere mit Deinem Team mit Kommentaren\n- ⚡ Behalte Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisiere Dein Projekt",
"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" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Füge Deine Aufgaben zu den Karten hinzu und ordne diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisen von Schlagworten für noch bessere Organisation\n- 👥 Teile mit Deinem Team, Freunden oder der Familie\n- 📎 Füge Dateien hinzu und verwende diese in Deinen Markdown-Beschreibungen\n- 💬 Diskutiere mit Deinem Team mit Kommentaren\n- ⚡ Behalte Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisiere Dein Projekt",
"Card details" : "Kartendetails",
"Add board" : "Board hinzufügen",
"Select the board to link to a project" : "Wähle ein Board aus, um dieses mit einem Projekt zu verknüpfen",
@@ -144,6 +144,8 @@
"Undo" : "Rückgängig",
"Deleted cards" : "Gelöschte Karten",
"Share board with a user, group or circle …" : "Board mit Benutzer, Gruppe oder Kreis teilen…",
"Searching for users, groups and circles …" : "Suche nach Benutzern, Gruppen und Kreisen …",
"No participants found" : "Keine Teilnehmer gefunden",
"Board owner" : "Board-Besitzer",
"(Group)" : "(Gruppe)",
"(Circle)" : "(Kreis)",
@@ -151,6 +153,7 @@
"Can share" : "kann teilen",
"Can manage" : "kann verwalten",
"Delete" : "Löschen",
"Failed to create share with {displayName}" : "Fehler beim Erstellen der Freigabe mit dem Namen {displayName}",
"Add a new list" : "Eine neue Liste hinzufügen",
"Archive all cards" : "Alle Karten archivieren",
"Delete list" : "Liste löschen",
@@ -202,10 +205,10 @@
"(circle)" : "(Kreis)",
"Assign to me" : "Mir zuweisen",
"Unassign myself" : "Nicht mehr mir zuweisen",
"Move card" : "Karte verschieben",
"Unarchive card" : "Karte dearchivieren",
"Archive card" : "Karte archivieren",
"Delete card" : "Karte löschen",
"Move card" : "Karte verschieben",
"Move card to another board" : "Karte auf ein anderes Board verschieben",
"Select a list" : "Eine Liste auswählen",
"Card deleted" : "Karte gelöscht",
@@ -214,7 +217,7 @@
"Archived boards" : "Archivierte Boards",
"Shared with you" : "Mit Dir geteilt",
"Use modal card view" : "Modale Kartenansicht verwenden",
"Show boards in calendar/tasks" : "Board im Kalender/Aufgaben anzeigen",
"Show boards in calendar/tasks" : "Board in Kalender/Aufgaben anzeigen",
"Limit deck usage of groups" : "Nutzung von Deck auf Gruppen einschränken",
"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." : "Durch die Begrenzung von Deck werden Benutzer, die nicht Teil dieser Gruppen sind, daran gehindert, eigene Boards zu erstellen. Benutzer können weiterhin an Boards arbeiten, die für sie freigegeben wurden.",
"Board name" : "Board-Name",
@@ -233,8 +236,8 @@
"Tomorrow" : "Morgen",
"This week" : "Diese Woche",
"No due" : "Kein Fälligkeitsdatum",
"No upcoming cards" : "Keine kommenden Karten",
"upcoming cards" : "Kommende Karten",
"No upcoming cards" : "Keine zukünftigen Karten",
"upcoming cards" : "zukünftige Karten",
"Link to a board" : "Mit einem Board verknüpfen",
"Link to a card" : "Mit einer Karte verknüpfen",
"Something went wrong" : "Etwas ist schiefgelaufen",

View File

@@ -21,7 +21,7 @@ OC.L10N.register(
"{user} has created a new list {stack} on board {board}" : "{user} hat die neue Liste {stack} auf dem Board {board} erstellt",
"You have renamed list {before} to {stack} on board {board}" : "Sie haben die Liste {before} auf dem Board {board} in {stack} umbenannt",
"{user} has renamed list {before} to {stack} on board {board}" : "{user} hat die Liste {before} in {stack} auf dem Board {board} umbenannt",
"You have deleted list {stack} on board {board}" : "Sie haben die Liste {stack} aus dem Board {board} entfernt",
"You have deleted list {stack} on board {board}" : "Sie haben die Liste {stack} auf dem Board {board} gelöscht",
"{user} has deleted list {stack} on board {board}" : "{user} hat die Liste {stack} aus dem Board {board} entfernt",
"You have created card {card} in list {stack} on board {board}" : "Sie haben die Karte {card} in der Liste {stack} auf dem Board {board} erstellt",
"{user} has created card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} erstellt",
@@ -47,9 +47,9 @@ OC.L10N.register(
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} hat der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Sie haben von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} hat von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
"You have assigned {assigneduser} to card {card} on board {board}" : "Sie haben {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
"You have assigned {assigneduser} to card {card} on board {board}" : "Sie haben {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} hat {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
"You have unassigned {assigneduser} from card {card} on board {board}" : "Sie haben die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"You have unassigned {assigneduser} from card {card} on board {board}" : "Sie haben die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} hat die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"You have moved the card {card} from list {stackBefore} to {stack}" : "Sie haben die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} hat die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
@@ -67,7 +67,7 @@ OC.L10N.register(
"Deck" : "Deck",
"Changes in the <strong>Deck app</strong>" : "Änderungen in der <strong>Deck-App</strong>",
"A <strong>comment</strong> was created on a card" : "Ein <strong>Kommentar</strong> zu einer Karte wurde erstellt",
"Upcoming cards" : "Kommende Karten",
"Upcoming cards" : "Zukünftige Karten",
"Personal" : "Persönlich",
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Die Karte \"%s\" auf \"%s\" wurde Ihnen von %s zugewiesen.",
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} hat Ihnen die Karte \"%s\" auf \"%s\" zugewiesen.",
@@ -81,7 +81,7 @@ OC.L10N.register(
"To review" : "Zu überprüfen",
"Action needed" : "Handlung erforderlich",
"Later" : "Später",
"copy" : "kopieren",
"copy" : "Kopie",
"To do" : "Offen",
"Doing" : "In Arbeit",
"Done" : "Erledigt",
@@ -98,7 +98,7 @@ OC.L10N.register(
"A PHP extension stopped the file upload" : "Eine PHP-Erweiterung hat das Hochladen der Datei gestoppt",
"No file uploaded or file size exceeds maximum of %s" : "Keine Datei hochgeladen oder die Dateigröße überschreitet %s",
"Personal planning and team project organization" : "Persönliche Planung und Teamprojektorganisation",
"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" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Fügen Sie Ihre Aufgaben zu den Karten hinzu und ordnen Sie diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisung von Schlagworten für noch bessere Organisation\n- 👥 Teilen Sie mit Ihrem Team, Ihren Freunden oder Ihrer Familie\n- 📎 Fügen Sie Dateien hinzu und verwende diese in Ihren Markdown-Beschreibungen\n- 💬 Diskutieren Sie mit Ihrem Team mit Kommentaren\n- ⚡ Behalten Sie Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisieren Sie Ihr Projekt",
"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" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Fügen Sie Ihre Aufgaben zu den Karten hinzu und ordnen Sie diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisen von Schlagworten für noch bessere Organisation\n- 👥 Teilen Sie mit Ihrem Team, Ihren Freunden oder Ihrer Familie\n- 📎 Fügen Sie Dateien hinzu und verwende diese in Ihren Markdown-Beschreibungen\n- 💬 Diskutieren Sie mit Ihrem Team mit Kommentaren\n- ⚡ Behalten Sie Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisieren Sie Ihr Projekt",
"Card details" : "Kartendetails",
"Add board" : "Board hinzufügen",
"Select the board to link to a project" : "Wählen Sie ein Board aus, um dieses mit einem Projekt zu verknüpfen",
@@ -134,9 +134,9 @@ OC.L10N.register(
"Show archived cards" : "Archivierte Karten anzeigen",
"Toggle compact mode" : "Kompaktmodus umschalten",
"Details" : "Details",
"Loading board" : "Board laden",
"Loading board" : "Lade Board",
"No lists available" : "Keine Listen verfügbar",
"Create a new list to add cards to this board" : "Erstelle eine neue Liste, um diesem Board Karten hinzuzufügen",
"Create a new list to add cards to this board" : "Erstellen Sie eine neue Liste, um diesem Board Karten hinzuzufügen",
"Board not found" : "Board nicht gefunden",
"Sharing" : "Teilen",
"Tags" : "Schlagworte",
@@ -146,6 +146,8 @@ OC.L10N.register(
"Undo" : "Rückgängig",
"Deleted cards" : "Gelöschte Karten",
"Share board with a user, group or circle …" : "Board mit Benutzer, Gruppe oder Kreis teilen…",
"Searching for users, groups and circles …" : "Suche nach Benutzern, Gruppen und Kreisen …",
"No participants found" : "Keine Teilnehmer gefunden",
"Board owner" : "Board-Besitzer",
"(Group)" : "(Gruppe)",
"(Circle)" : "(Kreis)",
@@ -153,6 +155,7 @@ OC.L10N.register(
"Can share" : "kann teilen",
"Can manage" : "kann verwalten",
"Delete" : "Löschen",
"Failed to create share with {displayName}" : "Fehler beim Erstellen der Freigabe mit dem Namen {displayName}",
"Add a new list" : "Eine neue Liste hinzufügen",
"Archive all cards" : "Alle Karten archivieren",
"Delete list" : "Liste löschen",
@@ -178,7 +181,7 @@ OC.L10N.register(
"Assign a user to this card…" : "Diese Karte einem Benutzer zuweisen…",
"Due date" : "Fälligkeitsdatum",
"Set a due date" : "Ein Ablaufdatum setzen",
"Remove due date" : "Fälligkeitsdatum entfernen",
"Remove due date" : "Fälligkeitsdatum löschen",
"Description" : "Beschreibung",
"(Unsaved)" : "(nicht gespeichert)",
"(Saving…)" : "(Speichere…)",
@@ -204,10 +207,10 @@ OC.L10N.register(
"(circle)" : "(Kreis)",
"Assign to me" : "Mir zuweisen",
"Unassign myself" : "Nicht mehr mir zuweisen",
"Move card" : "Karte verschieben",
"Unarchive card" : "Karte dearchivieren",
"Archive card" : "Karte archivieren",
"Delete card" : "Karte löschen",
"Move card" : "Karte verschieben",
"Move card to another board" : "Karte auf ein anderes Board verschieben",
"Select a list" : "Eine Liste auswählen",
"Card deleted" : "Karte gelöscht",
@@ -228,15 +231,15 @@ OC.L10N.register(
"Board details" : "Board-Details",
"Board {0} deleted" : "Board {0} gelöscht",
"An error occurred" : "Es ist ein Fehler aufgetreten",
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Möchten Sie wirklich dieses Board {title} mit all dessen Daten löschen?",
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Möchten Sie wirklich dieses Board {title} mit all seinen Daten löschen?",
"Delete the board?" : "Das Board löschen?",
"Loading filtered view" : "Lade gefilterte Ansicht",
"Today" : "Heute",
"Tomorrow" : "Morgen",
"This week" : "Diese Woche",
"No due" : "Kein Fälligkeitsdatum",
"No upcoming cards" : "Keine kommenden Karten",
"upcoming cards" : "Kommende Karten",
"No upcoming cards" : "Keine zukünftigen Karten",
"upcoming cards" : "zukünftige Karten",
"Link to a board" : "Mit einem Board verknüpfen",
"Link to a card" : "Mit einer Karte verknüpfen",
"Something went wrong" : "Etwas ist schiefgelaufen",

View File

@@ -19,7 +19,7 @@
"{user} has created a new list {stack} on board {board}" : "{user} hat die neue Liste {stack} auf dem Board {board} erstellt",
"You have renamed list {before} to {stack} on board {board}" : "Sie haben die Liste {before} auf dem Board {board} in {stack} umbenannt",
"{user} has renamed list {before} to {stack} on board {board}" : "{user} hat die Liste {before} in {stack} auf dem Board {board} umbenannt",
"You have deleted list {stack} on board {board}" : "Sie haben die Liste {stack} aus dem Board {board} entfernt",
"You have deleted list {stack} on board {board}" : "Sie haben die Liste {stack} auf dem Board {board} gelöscht",
"{user} has deleted list {stack} on board {board}" : "{user} hat die Liste {stack} aus dem Board {board} entfernt",
"You have created card {card} in list {stack} on board {board}" : "Sie haben die Karte {card} in der Liste {stack} auf dem Board {board} erstellt",
"{user} has created card {card} in list {stack} on board {board}" : "{user} hat die Karte {card} in der Liste {stack} auf dem Board {board} erstellt",
@@ -45,9 +45,9 @@
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} hat der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} hinzugefügt",
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Sie haben von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} hat von der Karte {card} in der Liste {stack} auf dem Board {board} das Schlagwort {label} entfernt",
"You have assigned {assigneduser} to card {card} on board {board}" : "Sie haben {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
"You have assigned {assigneduser} to card {card} on board {board}" : "Sie haben {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} hat {assigneduser} der Karte {card} auf dem Board {board} zugewiesen",
"You have unassigned {assigneduser} from card {card} on board {board}" : "Sie haben die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"You have unassigned {assigneduser} from card {card} on board {board}" : "Sie haben die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} hat die Zuweisung von {assigneduser} zur Karte {card} auf dem Board {board} aufgehoben",
"You have moved the card {card} from list {stackBefore} to {stack}" : "Sie haben die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} hat die Karte {card} von der Liste {stackBefore} nach {stack} verschoben",
@@ -65,7 +65,7 @@
"Deck" : "Deck",
"Changes in the <strong>Deck app</strong>" : "Änderungen in der <strong>Deck-App</strong>",
"A <strong>comment</strong> was created on a card" : "Ein <strong>Kommentar</strong> zu einer Karte wurde erstellt",
"Upcoming cards" : "Kommende Karten",
"Upcoming cards" : "Zukünftige Karten",
"Personal" : "Persönlich",
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Die Karte \"%s\" auf \"%s\" wurde Ihnen von %s zugewiesen.",
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} hat Ihnen die Karte \"%s\" auf \"%s\" zugewiesen.",
@@ -79,7 +79,7 @@
"To review" : "Zu überprüfen",
"Action needed" : "Handlung erforderlich",
"Later" : "Später",
"copy" : "kopieren",
"copy" : "Kopie",
"To do" : "Offen",
"Doing" : "In Arbeit",
"Done" : "Erledigt",
@@ -96,7 +96,7 @@
"A PHP extension stopped the file upload" : "Eine PHP-Erweiterung hat das Hochladen der Datei gestoppt",
"No file uploaded or file size exceeds maximum of %s" : "Keine Datei hochgeladen oder die Dateigröße überschreitet %s",
"Personal planning and team project organization" : "Persönliche Planung und Teamprojektorganisation",
"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" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Fügen Sie Ihre Aufgaben zu den Karten hinzu und ordnen Sie diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisung von Schlagworten für noch bessere Organisation\n- 👥 Teilen Sie mit Ihrem Team, Ihren Freunden oder Ihrer Familie\n- 📎 Fügen Sie Dateien hinzu und verwende diese in Ihren Markdown-Beschreibungen\n- 💬 Diskutieren Sie mit Ihrem Team mit Kommentaren\n- ⚡ Behalten Sie Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisieren Sie Ihr Projekt",
"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" : "Deck ist ein Organisationstool im Kanban-Stil für die persönliche Planung und Projektorganisation von Teams, die in Nextcloud integriert sind.\n\n\n- 📥 Fügen Sie Ihre Aufgaben zu den Karten hinzu und ordnen Sie diese\n- 📄 Zusätzliche Hinweise in der Abschrift notieren\n- 🔖 Zuweisen von Schlagworten für noch bessere Organisation\n- 👥 Teilen Sie mit Ihrem Team, Ihren Freunden oder Ihrer Familie\n- 📎 Fügen Sie Dateien hinzu und verwende diese in Ihren Markdown-Beschreibungen\n- 💬 Diskutieren Sie mit Ihrem Team mit Kommentaren\n- ⚡ Behalten Sie Überblick über Änderungen mit dem Aktivitäten-Stream\n- 🚀 Organisieren Sie Ihr Projekt",
"Card details" : "Kartendetails",
"Add board" : "Board hinzufügen",
"Select the board to link to a project" : "Wählen Sie ein Board aus, um dieses mit einem Projekt zu verknüpfen",
@@ -132,9 +132,9 @@
"Show archived cards" : "Archivierte Karten anzeigen",
"Toggle compact mode" : "Kompaktmodus umschalten",
"Details" : "Details",
"Loading board" : "Board laden",
"Loading board" : "Lade Board",
"No lists available" : "Keine Listen verfügbar",
"Create a new list to add cards to this board" : "Erstelle eine neue Liste, um diesem Board Karten hinzuzufügen",
"Create a new list to add cards to this board" : "Erstellen Sie eine neue Liste, um diesem Board Karten hinzuzufügen",
"Board not found" : "Board nicht gefunden",
"Sharing" : "Teilen",
"Tags" : "Schlagworte",
@@ -144,6 +144,8 @@
"Undo" : "Rückgängig",
"Deleted cards" : "Gelöschte Karten",
"Share board with a user, group or circle …" : "Board mit Benutzer, Gruppe oder Kreis teilen…",
"Searching for users, groups and circles …" : "Suche nach Benutzern, Gruppen und Kreisen …",
"No participants found" : "Keine Teilnehmer gefunden",
"Board owner" : "Board-Besitzer",
"(Group)" : "(Gruppe)",
"(Circle)" : "(Kreis)",
@@ -151,6 +153,7 @@
"Can share" : "kann teilen",
"Can manage" : "kann verwalten",
"Delete" : "Löschen",
"Failed to create share with {displayName}" : "Fehler beim Erstellen der Freigabe mit dem Namen {displayName}",
"Add a new list" : "Eine neue Liste hinzufügen",
"Archive all cards" : "Alle Karten archivieren",
"Delete list" : "Liste löschen",
@@ -176,7 +179,7 @@
"Assign a user to this card…" : "Diese Karte einem Benutzer zuweisen…",
"Due date" : "Fälligkeitsdatum",
"Set a due date" : "Ein Ablaufdatum setzen",
"Remove due date" : "Fälligkeitsdatum entfernen",
"Remove due date" : "Fälligkeitsdatum löschen",
"Description" : "Beschreibung",
"(Unsaved)" : "(nicht gespeichert)",
"(Saving…)" : "(Speichere…)",
@@ -202,10 +205,10 @@
"(circle)" : "(Kreis)",
"Assign to me" : "Mir zuweisen",
"Unassign myself" : "Nicht mehr mir zuweisen",
"Move card" : "Karte verschieben",
"Unarchive card" : "Karte dearchivieren",
"Archive card" : "Karte archivieren",
"Delete card" : "Karte löschen",
"Move card" : "Karte verschieben",
"Move card to another board" : "Karte auf ein anderes Board verschieben",
"Select a list" : "Eine Liste auswählen",
"Card deleted" : "Karte gelöscht",
@@ -226,15 +229,15 @@
"Board details" : "Board-Details",
"Board {0} deleted" : "Board {0} gelöscht",
"An error occurred" : "Es ist ein Fehler aufgetreten",
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Möchten Sie wirklich dieses Board {title} mit all dessen Daten löschen?",
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Möchten Sie wirklich dieses Board {title} mit all seinen Daten löschen?",
"Delete the board?" : "Das Board löschen?",
"Loading filtered view" : "Lade gefilterte Ansicht",
"Today" : "Heute",
"Tomorrow" : "Morgen",
"This week" : "Diese Woche",
"No due" : "Kein Fälligkeitsdatum",
"No upcoming cards" : "Keine kommenden Karten",
"upcoming cards" : "Kommende Karten",
"No upcoming cards" : "Keine zukünftigen Karten",
"upcoming cards" : "zukünftige Karten",
"Link to a board" : "Mit einem Board verknüpfen",
"Link to a card" : "Mit einer Karte verknüpfen",
"Something went wrong" : "Etwas ist schiefgelaufen",

View File

@@ -198,10 +198,10 @@ OC.L10N.register(
"(circle)" : "(κύκλος)",
"Assign to me" : "Ανάθεση σε εμένα",
"Unassign myself" : "Αποδέσμευσή μου",
"Move card" : "Μετακίνηση κάρτας",
"Unarchive card" : "Αναίρεση αρχειοθέτησης κάρτας",
"Archive card" : "Αρχειοθέτηση κάρτας",
"Delete card" : "Διαγραφή κάρτας",
"Move card" : "Μετακίνηση κάρτας",
"Move card to another board" : "Μετακίνηση καρτέλας σε άλλο πίνακα",
"Select a list" : "Επιλέξτε μια λίστα",
"seconds ago" : " δευτερόλεπτα πριν ",

View File

@@ -196,10 +196,10 @@
"(circle)" : "(κύκλος)",
"Assign to me" : "Ανάθεση σε εμένα",
"Unassign myself" : "Αποδέσμευσή μου",
"Move card" : "Μετακίνηση κάρτας",
"Unarchive card" : "Αναίρεση αρχειοθέτησης κάρτας",
"Archive card" : "Αρχειοθέτηση κάρτας",
"Delete card" : "Διαγραφή κάρτας",
"Move card" : "Μετακίνηση κάρτας",
"Move card to another board" : "Μετακίνηση καρτέλας σε άλλο πίνακα",
"Select a list" : "Επιλέξτε μια λίστα",
"seconds ago" : " δευτερόλεπτα πριν ",

View File

@@ -146,6 +146,8 @@ OC.L10N.register(
"Undo" : "Deshacer",
"Deleted cards" : "Cartas eliminadas",
"Share board with a user, group or circle …" : "Compartir tablero con un usuario, grupo o círculo ...",
"Searching for users, groups and circles …" : "Buscando usuarios, grupos o círculos...",
"No participants found" : "No se encontraron participantes",
"Board owner" : "Propietario del tablero",
"(Group)" : "(Grupo)",
"(Circle)" : "(Circle)",
@@ -153,6 +155,7 @@ OC.L10N.register(
"Can share" : "Puede compartir",
"Can manage" : "Puede gestionar",
"Delete" : "Eliminar",
"Failed to create share with {displayName}" : "Fallo al crear el recurso compartido denominado {displayName}",
"Add a new list" : "Añadir una lista nueva",
"Archive all cards" : "Archivar todas las tarjetas",
"Delete list" : "Eliminar lista",
@@ -204,10 +207,10 @@ OC.L10N.register(
"(circle)" : "(circle)",
"Assign to me" : "Asignarme a mí",
"Unassign myself" : "Desasignarme a mí mismo",
"Move card" : "Mover tarjeta",
"Unarchive card" : "Desarchivar tarjeta",
"Archive card" : "Archivar tarjeta",
"Delete card" : "Eliminar tarjeta",
"Move card" : "Mover tarjeta",
"Move card to another board" : "Mover la tarjeta a otro tablero",
"Select a list" : "Seleccionar una lista",
"Card deleted" : "Tarjeta borrada",

View File

@@ -144,6 +144,8 @@
"Undo" : "Deshacer",
"Deleted cards" : "Cartas eliminadas",
"Share board with a user, group or circle …" : "Compartir tablero con un usuario, grupo o círculo ...",
"Searching for users, groups and circles …" : "Buscando usuarios, grupos o círculos...",
"No participants found" : "No se encontraron participantes",
"Board owner" : "Propietario del tablero",
"(Group)" : "(Grupo)",
"(Circle)" : "(Circle)",
@@ -151,6 +153,7 @@
"Can share" : "Puede compartir",
"Can manage" : "Puede gestionar",
"Delete" : "Eliminar",
"Failed to create share with {displayName}" : "Fallo al crear el recurso compartido denominado {displayName}",
"Add a new list" : "Añadir una lista nueva",
"Archive all cards" : "Archivar todas las tarjetas",
"Delete list" : "Eliminar lista",
@@ -202,10 +205,10 @@
"(circle)" : "(circle)",
"Assign to me" : "Asignarme a mí",
"Unassign myself" : "Desasignarme a mí mismo",
"Move card" : "Mover tarjeta",
"Unarchive card" : "Desarchivar tarjeta",
"Archive card" : "Archivar tarjeta",
"Delete card" : "Eliminar tarjeta",
"Move card" : "Mover tarjeta",
"Move card to another board" : "Mover la tarjeta a otro tablero",
"Select a list" : "Seleccionar una lista",
"Card deleted" : "Tarjeta borrada",

View File

@@ -27,6 +27,7 @@ OC.L10N.register(
"Reply" : "Vasta",
"Update" : "Uuenda",
"(group)" : "(grupp)",
"Delete card" : "Kustuta kaart",
"seconds ago" : "sekundit tagasi",
"Shared with you" : "Sinuga jagatud",
"An error occurred" : "Tekkis tõrge",

View File

@@ -25,6 +25,7 @@
"Reply" : "Vasta",
"Update" : "Uuenda",
"(group)" : "(grupp)",
"Delete card" : "Kustuta kaart",
"seconds ago" : "sekundit tagasi",
"Shared with you" : "Sinuga jagatud",
"An error occurred" : "Tekkis tõrge",

View File

@@ -188,6 +188,7 @@ OC.L10N.register(
"Select Date" : "Hautatu data",
"Modified" : "Aldatua",
"Created" : "Sortua",
"The title cannot be empty." : "Izenburua ezin da hutsik egon.",
"No comments yet. Begin the discussion!" : "Ez dago iruzkinik oraindik. Hasi eztabaidatzen!",
"Save" : "Gorde",
"The comment cannot be empty." : "Iruzkina ezin da hutsik egon.",
@@ -199,18 +200,20 @@ OC.L10N.register(
"(circle)" : "(zirkulua)",
"Assign to me" : "Esleitu niri",
"Unassign myself" : "Niri esleitzeari utzi",
"Move card" : "Mugitu txartela",
"Unarchive card" : "Berreskuratu txartela artxibotik",
"Archive card" : "Artxibatu txartela",
"Delete card" : "Ezabatu txartela",
"Move card" : "Mugitu txartela",
"Move card to another board" : "Mugitu txartela beste mahai batera",
"Select a list" : "Hautatu zerrenda bat",
"seconds ago" : "segundo lehenago",
"All boards" : "Mahai guztiak",
"Archived boards" : "Artxibatutako mahaiak",
"Shared with you" : "Zurekin partekatua",
"Show boards in calendar/tasks" : "Erakutsi taulak egutegi/zereginetan",
"Limit deck usage of groups" : "Mugatu taldeek Deck erabiltzeko aukera",
"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 mugatzeak taldeetako kide ez diren erabiltzaileei beren mahai propioak sortzea eragotziko die. Erabiltzaileek beraiekin partekatu diren mahaietan lan egin ahalko dute.",
"Board name" : "Mahaiaren izena",
"Edit board" : "Editatu mahaia",
"Clone board " : "Klonatu mahaia",
"Unarchive board " : "Berreskuratu mahaia artxibotik",

View File

@@ -186,6 +186,7 @@
"Select Date" : "Hautatu data",
"Modified" : "Aldatua",
"Created" : "Sortua",
"The title cannot be empty." : "Izenburua ezin da hutsik egon.",
"No comments yet. Begin the discussion!" : "Ez dago iruzkinik oraindik. Hasi eztabaidatzen!",
"Save" : "Gorde",
"The comment cannot be empty." : "Iruzkina ezin da hutsik egon.",
@@ -197,18 +198,20 @@
"(circle)" : "(zirkulua)",
"Assign to me" : "Esleitu niri",
"Unassign myself" : "Niri esleitzeari utzi",
"Move card" : "Mugitu txartela",
"Unarchive card" : "Berreskuratu txartela artxibotik",
"Archive card" : "Artxibatu txartela",
"Delete card" : "Ezabatu txartela",
"Move card" : "Mugitu txartela",
"Move card to another board" : "Mugitu txartela beste mahai batera",
"Select a list" : "Hautatu zerrenda bat",
"seconds ago" : "segundo lehenago",
"All boards" : "Mahai guztiak",
"Archived boards" : "Artxibatutako mahaiak",
"Shared with you" : "Zurekin partekatua",
"Show boards in calendar/tasks" : "Erakutsi taulak egutegi/zereginetan",
"Limit deck usage of groups" : "Mugatu taldeek Deck erabiltzeko aukera",
"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 mugatzeak taldeetako kide ez diren erabiltzaileei beren mahai propioak sortzea eragotziko die. Erabiltzaileek beraiekin partekatu diren mahaietan lan egin ahalko dute.",
"Board name" : "Mahaiaren izena",
"Edit board" : "Editatu mahaia",
"Clone board " : "Klonatu mahaia",
"Unarchive board " : "Berreskuratu mahaia artxibotik",

View File

@@ -120,9 +120,9 @@ OC.L10N.register(
"Update" : "به‌روزرسانی",
"(group)" : "(گروه)",
"(circle)" : "(حلقه)",
"Move card" : "انتقال کارت",
"Archive card" : "کارت بایگانی",
"Delete card" : "حذف کارت",
"Move card" : "انتقال کارت",
"Move card to another board" : "انتقال کارت به تخته‌ای دیگر",
"seconds ago" : "ثانیه‌هایی پیش",
"All boards" : "همه تخته‌ها",

View File

@@ -118,9 +118,9 @@
"Update" : "به‌روزرسانی",
"(group)" : "(گروه)",
"(circle)" : "(حلقه)",
"Move card" : "انتقال کارت",
"Archive card" : "کارت بایگانی",
"Delete card" : "حذف کارت",
"Move card" : "انتقال کارت",
"Move card to another board" : "انتقال کارت به تخته‌ای دیگر",
"seconds ago" : "ثانیه‌هایی پیش",
"All boards" : "همه تخته‌ها",

View File

@@ -157,10 +157,10 @@ OC.L10N.register(
"Reply" : "Vastaa",
"Update" : "Päivitä",
"(group)" : "(ryhmä)",
"Move card" : "Siirrä kortti",
"Unarchive card" : "Poista kortti arkistosta",
"Archive card" : "Arkistoi kortti",
"Delete card" : "Poista kortti",
"Move card" : "Siirrä kortti",
"seconds ago" : "sekuntia sitten",
"All boards" : "Kaikki taulut",
"Archived boards" : "Arkistoidut taulut",

View File

@@ -155,10 +155,10 @@
"Reply" : "Vastaa",
"Update" : "Päivitä",
"(group)" : "(ryhmä)",
"Move card" : "Siirrä kortti",
"Unarchive card" : "Poista kortti arkistosta",
"Archive card" : "Arkistoi kortti",
"Delete card" : "Poista kortti",
"Move card" : "Siirrä kortti",
"seconds ago" : "sekuntia sitten",
"All boards" : "Kaikki taulut",
"Archived boards" : "Arkistoidut taulut",

View File

@@ -146,6 +146,8 @@ OC.L10N.register(
"Undo" : "Annuler",
"Deleted cards" : "Cartes supprimées",
"Share board with a user, group or circle …" : "Partager le tableau avec un utilisateur, un groupe ou un cercle…",
"Searching for users, groups and circles …" : "Recherche d'utilisateurs, de groupes et de cercles ...",
"No participants found" : "Aucun participant trouvé",
"Board owner" : "Propriétaire du tableau",
"(Group)" : "(Groupe)",
"(Circle)" : "(Cercle)",
@@ -153,6 +155,7 @@ OC.L10N.register(
"Can share" : "Peut partager",
"Can manage" : "Peut gérer",
"Delete" : "Supprimer",
"Failed to create share with {displayName}" : "Échec de la création du partage avec {displayName}",
"Add a new list" : "Ajouter une nouvelle liste",
"Archive all cards" : "Archiver toutes les cartes",
"Delete list" : "Supprimer la liste",
@@ -160,6 +163,7 @@ OC.L10N.register(
"Archive all cards in this list" : "Archiver toutes les cartes de cette liste",
"Add a new card" : "Ajouter une nouvelle carte",
"Card name" : "Nom de la carte",
"List deleted" : "Liste supprimée",
"Edit" : "Modifier",
"Add a new tag" : "Ajouter une nouvelle étiquette",
"title and color value must be provided" : "le titre et la couleur doivent être renseignés",
@@ -203,12 +207,13 @@ OC.L10N.register(
"(circle)" : "(cercle)",
"Assign to me" : "Me l'assigner",
"Unassign myself" : "Me le désassigner",
"Move card" : "Déplacer la carte",
"Unarchive card" : "Sortir la carte des archives",
"Archive card" : "Archiver la carte",
"Delete card" : "Supprimer la carte",
"Move card" : "Déplacer la carte",
"Move card to another board" : "Déplacer la carte vers un autre tableau ",
"Select a list" : "Sélectionner une liste",
"Card deleted" : "Carte supprimée",
"seconds ago" : "à l'instant",
"All boards" : "Tous les tableaux",
"Archived boards" : "Tableaux archivés",

View File

@@ -144,6 +144,8 @@
"Undo" : "Annuler",
"Deleted cards" : "Cartes supprimées",
"Share board with a user, group or circle …" : "Partager le tableau avec un utilisateur, un groupe ou un cercle…",
"Searching for users, groups and circles …" : "Recherche d'utilisateurs, de groupes et de cercles ...",
"No participants found" : "Aucun participant trouvé",
"Board owner" : "Propriétaire du tableau",
"(Group)" : "(Groupe)",
"(Circle)" : "(Cercle)",
@@ -151,6 +153,7 @@
"Can share" : "Peut partager",
"Can manage" : "Peut gérer",
"Delete" : "Supprimer",
"Failed to create share with {displayName}" : "Échec de la création du partage avec {displayName}",
"Add a new list" : "Ajouter une nouvelle liste",
"Archive all cards" : "Archiver toutes les cartes",
"Delete list" : "Supprimer la liste",
@@ -158,6 +161,7 @@
"Archive all cards in this list" : "Archiver toutes les cartes de cette liste",
"Add a new card" : "Ajouter une nouvelle carte",
"Card name" : "Nom de la carte",
"List deleted" : "Liste supprimée",
"Edit" : "Modifier",
"Add a new tag" : "Ajouter une nouvelle étiquette",
"title and color value must be provided" : "le titre et la couleur doivent être renseignés",
@@ -201,12 +205,13 @@
"(circle)" : "(cercle)",
"Assign to me" : "Me l'assigner",
"Unassign myself" : "Me le désassigner",
"Move card" : "Déplacer la carte",
"Unarchive card" : "Sortir la carte des archives",
"Archive card" : "Archiver la carte",
"Delete card" : "Supprimer la carte",
"Move card" : "Déplacer la carte",
"Move card to another board" : "Déplacer la carte vers un autre tableau ",
"Select a list" : "Sélectionner une liste",
"Card deleted" : "Carte supprimée",
"seconds ago" : "à l'instant",
"All boards" : "Tous les tableaux",
"Archived boards" : "Tableaux archivés",

View File

@@ -146,6 +146,8 @@ OC.L10N.register(
"Undo" : "Desfacer",
"Deleted cards" : "Eliminar tarxetas",
"Share board with a user, group or circle …" : "Compartir taboleiro cun usuario, grupo ou círculo…",
"Searching for users, groups and circles …" : "Buscando por usuarios, grupos e círculos…",
"No participants found" : "Non se atoparon participantes",
"Board owner" : "Propietariio do taboleiro",
"(Group)" : "(grupo)",
"(Circle)" : "(Círculo)",
@@ -153,6 +155,7 @@ OC.L10N.register(
"Can share" : "Pode compartir",
"Can manage" : "Pode xestionar",
"Delete" : "Eliminar",
"Failed to create share with {displayName}" : "Produciuse un fallo ao crear o uso compartido con {displayName}",
"Add a new list" : "Engadir unha lista nova",
"Archive all cards" : "Arquivar todas as tarxetas",
"Delete list" : "Eliminar lista",
@@ -204,10 +207,10 @@ OC.L10N.register(
"(circle)" : "(círculo)",
"Assign to me" : "Asignarme",
"Unassign myself" : "Desasignarme",
"Move card" : "Mover a tarxeta",
"Unarchive card" : "Desarquivar a tarxeta",
"Archive card" : "Arquivar a tarxeta",
"Delete card" : "Eliminar tarxeta",
"Move card" : "Mover a tarxeta",
"Move card to another board" : "Mover a tarxeta a outro taboleiro",
"Select a list" : "Seleccionar unha lista",
"Card deleted" : "Tarxeta eliminada",

View File

@@ -144,6 +144,8 @@
"Undo" : "Desfacer",
"Deleted cards" : "Eliminar tarxetas",
"Share board with a user, group or circle …" : "Compartir taboleiro cun usuario, grupo ou círculo…",
"Searching for users, groups and circles …" : "Buscando por usuarios, grupos e círculos…",
"No participants found" : "Non se atoparon participantes",
"Board owner" : "Propietariio do taboleiro",
"(Group)" : "(grupo)",
"(Circle)" : "(Círculo)",
@@ -151,6 +153,7 @@
"Can share" : "Pode compartir",
"Can manage" : "Pode xestionar",
"Delete" : "Eliminar",
"Failed to create share with {displayName}" : "Produciuse un fallo ao crear o uso compartido con {displayName}",
"Add a new list" : "Engadir unha lista nova",
"Archive all cards" : "Arquivar todas as tarxetas",
"Delete list" : "Eliminar lista",
@@ -202,10 +205,10 @@
"(circle)" : "(círculo)",
"Assign to me" : "Asignarme",
"Unassign myself" : "Desasignarme",
"Move card" : "Mover a tarxeta",
"Unarchive card" : "Desarquivar a tarxeta",
"Archive card" : "Arquivar a tarxeta",
"Delete card" : "Eliminar tarxeta",
"Move card" : "Mover a tarxeta",
"Move card to another board" : "Mover a tarxeta a outro taboleiro",
"Select a list" : "Seleccionar unha lista",
"Card deleted" : "Tarxeta eliminada",

View File

@@ -148,10 +148,10 @@ OC.L10N.register(
"(group)" : "(קבוצה)",
"(circle)" : "(מעגל)",
"Assign to me" : "הקצאה אלי",
"Move card" : "העברת כרטיס",
"Unarchive card" : "הוצאת הכרטיס מהארכיון",
"Archive card" : "העברת כרטיס לארכיון",
"Delete card" : "מחיקת כרטיס לארכיון",
"Move card" : "העברת כרטיס",
"Move card to another board" : "העברת כרטיס ללוח אחר",
"seconds ago" : "לפני מספר שניות",
"All boards" : "כל הלוחות",

View File

@@ -146,10 +146,10 @@
"(group)" : "(קבוצה)",
"(circle)" : "(מעגל)",
"Assign to me" : "הקצאה אלי",
"Move card" : "העברת כרטיס",
"Unarchive card" : "הוצאת הכרטיס מהארכיון",
"Archive card" : "העברת כרטיס לארכיון",
"Delete card" : "מחיקת כרטיס לארכיון",
"Move card" : "העברת כרטיס",
"Move card to another board" : "העברת כרטיס ללוח אחר",
"seconds ago" : "לפני מספר שניות",
"All boards" : "כל הלוחות",

View File

@@ -196,10 +196,10 @@ OC.L10N.register(
"(circle)" : "(krug)",
"Assign to me" : "Dodijeli meni",
"Unassign myself" : "Ukloni sebe",
"Move card" : "Premjesti karticu",
"Unarchive card" : "Dearhiviraj karticu",
"Archive card" : "Arhiviraj karticu",
"Delete card" : "Izbriši karticu",
"Move card" : "Premjesti karticu",
"Move card to another board" : "Premjesti karticu na drugu ploču",
"Select a list" : "Odaberi popis",
"seconds ago" : "prije nekoliko sekundi",

View File

@@ -194,10 +194,10 @@
"(circle)" : "(krug)",
"Assign to me" : "Dodijeli meni",
"Unassign myself" : "Ukloni sebe",
"Move card" : "Premjesti karticu",
"Unarchive card" : "Dearhiviraj karticu",
"Archive card" : "Arhiviraj karticu",
"Delete card" : "Izbriši karticu",
"Move card" : "Premjesti karticu",
"Move card to another board" : "Premjesti karticu na drugu ploču",
"Select a list" : "Odaberi popis",
"seconds ago" : "prije nekoliko sekundi",

View File

@@ -168,10 +168,10 @@ OC.L10N.register(
"(group)" : "(csoport)",
"(circle)" : "(kör)",
"Assign to me" : "Hozzám rendelés",
"Move card" : "Kártya áthelyezése",
"Unarchive card" : "Kártya archiválásának visszavonása",
"Archive card" : "Kártya archiválása",
"Delete card" : "Kártya törlése",
"Move card" : "Kártya áthelyezése",
"Move card to another board" : "Kártya áthelyezése egy másik táblára",
"seconds ago" : "másodperce",
"All boards" : "Az összes tábla",

View File

@@ -166,10 +166,10 @@
"(group)" : "(csoport)",
"(circle)" : "(kör)",
"Assign to me" : "Hozzám rendelés",
"Move card" : "Kártya áthelyezése",
"Unarchive card" : "Kártya archiválásának visszavonása",
"Archive card" : "Kártya archiválása",
"Delete card" : "Kártya törlése",
"Move card" : "Kártya áthelyezése",
"Move card to another board" : "Kártya áthelyezése egy másik táblára",
"seconds ago" : "másodperce",
"All boards" : "Az összes tábla",

View File

@@ -188,10 +188,10 @@ OC.L10N.register(
"(group)" : "(grup)",
"(circle)" : "(lingkaran)",
"Assign to me" : "Tugaskan saya",
"Move card" : "Pindahkan kartu",
"Unarchive card" : "Memulihkan kartu",
"Archive card" : "Mengarsipkan kartu",
"Delete card" : "Hapus kartu",
"Move card" : "Pindahkan kartu",
"Move card to another board" : "Pindahkan kartu ke papan lain",
"Select a list" : "Pilih daftar",
"seconds ago" : "beberapa detik yang lalu",

View File

@@ -186,10 +186,10 @@
"(group)" : "(grup)",
"(circle)" : "(lingkaran)",
"Assign to me" : "Tugaskan saya",
"Move card" : "Pindahkan kartu",
"Unarchive card" : "Memulihkan kartu",
"Archive card" : "Mengarsipkan kartu",
"Delete card" : "Hapus kartu",
"Move card" : "Pindahkan kartu",
"Move card to another board" : "Pindahkan kartu ke papan lain",
"Select a list" : "Pilih daftar",
"seconds ago" : "beberapa detik yang lalu",

View File

@@ -145,10 +145,10 @@ OC.L10N.register(
"Update" : "Uppfæra",
"(group)" : "(hópur)",
"Assign to me" : "Úthluta mér",
"Move card" : "Færa spjald",
"Unarchive card" : "Taka spjald úr geymslu",
"Archive card" : "Setja spjald í geymslu",
"Delete card" : "Eyða spjaldi",
"Move card" : "Færa spjald",
"seconds ago" : "sekúndum síðan",
"All boards" : "Öll borð",
"Archived boards" : "Borð í geymslu",

View File

@@ -143,10 +143,10 @@
"Update" : "Uppfæra",
"(group)" : "(hópur)",
"Assign to me" : "Úthluta mér",
"Move card" : "Færa spjald",
"Unarchive card" : "Taka spjald úr geymslu",
"Archive card" : "Setja spjald í geymslu",
"Delete card" : "Eyða spjaldi",
"Move card" : "Færa spjald",
"seconds ago" : "sekúndum síðan",
"All boards" : "Öll borð",
"Archived boards" : "Borð í geymslu",

View File

@@ -146,6 +146,8 @@ OC.L10N.register(
"Undo" : "Annulla",
"Deleted cards" : "Schede eliminate",
"Share board with a user, group or circle …" : "Condividi lavagna con un utente, gruppo o cerchia…",
"Searching for users, groups and circles …" : "Ricerca di utenti, gruppi e cerchie…",
"No participants found" : "Nessun partecipante trovato",
"Board owner" : "Proprietario della lavagna",
"(Group)" : "(Gruppo)",
"(Circle)" : "(Cerchia)",
@@ -153,6 +155,7 @@ OC.L10N.register(
"Can share" : "Può condividere",
"Can manage" : "Può gestire",
"Delete" : "Elimina",
"Failed to create share with {displayName}" : "Creazione della condivisione con {displayName} non riuscita",
"Add a new list" : "Aggiungi un nuovo elenco",
"Archive all cards" : "Archivia tutte le schede",
"Delete list" : "Elimina elenco",
@@ -204,10 +207,10 @@ OC.L10N.register(
"(circle)" : "(cerchia)",
"Assign to me" : "Assegna a me",
"Unassign myself" : "Rimuovi assegnazione da me",
"Move card" : "Sposta scheda",
"Unarchive card" : "Recupera lavagna dall'archivio",
"Archive card" : "Archivia scheda",
"Delete card" : "Elimina scheda",
"Move card" : "Sposta scheda",
"Move card to another board" : "Sposta scheda in un'altra lavagna",
"Select a list" : "Seleziona un elenco",
"Card deleted" : "Scheda eliminata",

View File

@@ -144,6 +144,8 @@
"Undo" : "Annulla",
"Deleted cards" : "Schede eliminate",
"Share board with a user, group or circle …" : "Condividi lavagna con un utente, gruppo o cerchia…",
"Searching for users, groups and circles …" : "Ricerca di utenti, gruppi e cerchie…",
"No participants found" : "Nessun partecipante trovato",
"Board owner" : "Proprietario della lavagna",
"(Group)" : "(Gruppo)",
"(Circle)" : "(Cerchia)",
@@ -151,6 +153,7 @@
"Can share" : "Può condividere",
"Can manage" : "Può gestire",
"Delete" : "Elimina",
"Failed to create share with {displayName}" : "Creazione della condivisione con {displayName} non riuscita",
"Add a new list" : "Aggiungi un nuovo elenco",
"Archive all cards" : "Archivia tutte le schede",
"Delete list" : "Elimina elenco",
@@ -202,10 +205,10 @@
"(circle)" : "(cerchia)",
"Assign to me" : "Assegna a me",
"Unassign myself" : "Rimuovi assegnazione da me",
"Move card" : "Sposta scheda",
"Unarchive card" : "Recupera lavagna dall'archivio",
"Archive card" : "Archivia scheda",
"Delete card" : "Elimina scheda",
"Move card" : "Sposta scheda",
"Move card to another board" : "Sposta scheda in un'altra lavagna",
"Select a list" : "Seleziona un elenco",
"Card deleted" : "Scheda eliminata",

View File

@@ -194,10 +194,10 @@ OC.L10N.register(
"(circle)" : "(サークル)",
"Assign to me" : "自分に割り当てる",
"Unassign myself" : "自分への割り当てを解除",
"Move card" : "カードの移動",
"Unarchive card" : "カードのアーカイブを解除する",
"Archive card" : "カードをアーカイブ",
"Delete card" : "カードを削除する",
"Move card" : "カードの移動",
"Move card to another board" : "カードを他のボードに移動",
"Select a list" : "リストを選択",
"seconds ago" : "数秒前",

View File

@@ -192,10 +192,10 @@
"(circle)" : "(サークル)",
"Assign to me" : "自分に割り当てる",
"Unassign myself" : "自分への割り当てを解除",
"Move card" : "カードの移動",
"Unarchive card" : "カードのアーカイブを解除する",
"Archive card" : "カードをアーカイブ",
"Delete card" : "カードを削除する",
"Move card" : "カードの移動",
"Move card to another board" : "カードを他のボードに移動",
"Select a list" : "リストを選択",
"seconds ago" : "数秒前",

View File

@@ -80,9 +80,9 @@ OC.L10N.register(
"Reply" : "답장",
"Update" : "업데이트",
"(group)" : "(그룹)",
"Move card" : "카드 이동",
"Archive card" : "보관 카드",
"Delete card" : "카드 삭제",
"Move card" : "카드 이동",
"seconds ago" : "초 전",
"All boards" : "모든 보드",
"Archived boards" : "보관된 게시판",

View File

@@ -78,9 +78,9 @@
"Reply" : "답장",
"Update" : "업데이트",
"(group)" : "(그룹)",
"Move card" : "카드 이동",
"Archive card" : "보관 카드",
"Delete card" : "카드 삭제",
"Move card" : "카드 이동",
"seconds ago" : "초 전",
"All boards" : "모든 보드",
"Archived boards" : "보관된 게시판",

View File

@@ -17,16 +17,40 @@ OC.L10N.register(
"{user} has archived the board {before}" : "{user} užarchyvavo lentą {before}",
"You have unarchived the board {board}" : "Jūs išarchyvavote lentą {board}",
"{user} has unarchived the board {before}" : "{user} išarchyvavo lentą {before}",
"You have created a new list {stack} on board {board}" : "Jūs lentoje {board} sukūrėte naują sąrašą {stack}",
"{user} has created a new list {stack} on board {board}" : "{user} lentoje {board} sukūrė naują sąrašą {stack}",
"You have renamed list {before} to {stack} on board {board}" : "Jūs lentoje {board} pervadinote sąrašą {before} į {stack}",
"{user} has renamed list {before} to {stack} on board {board}" : "{user} lentoje {board} pervadino sąrašą {before} į {stack}",
"You have deleted list {stack} on board {board}" : "Jūs lentoje {board} ištrynėte sąrašą {stack}",
"{user} has deleted list {stack} on board {board}" : "{user} lentoje {board} ištrynė sąrašą {stack}",
"You have created card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} sukūrėte kortelę {card}",
"{user} has created card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} sukūrė kortelę {card}",
"You have deleted card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} ištrynėte kortelę {card}",
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} ištrynė kortelę {card} ",
"You have renamed the card {before} to {card}" : "Jūs pervadinote kortelę {before} į {card}",
"{user} has renamed the card {before} to {card}" : "{user} pervadino kortelę {before} į {card}",
"You have added a description to card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} į kortelę {card} pridėjote aprašą",
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} į kortelę {card} pridėjo aprašą",
"You have updated the description of card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} atnaujinote kortelės {card} aprašą",
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} atnaujino kortelės {card} aprašą",
"You have archived card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} užarchyvavote kortelę {card}",
"{user} has archived card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} užarchyvavo kortelę {card}",
"You have unarchived card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} išarchyvavote kortelę {card}",
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} išarchyvavo kortelę {card}",
"You have removed the due date of card {card}" : "Jūs pašalinote galutinį kortelės {card} terminą",
"{user} has removed the due date of card {card}" : "{user} pašalino galutinį kortelės {card} terminą",
"You have set the due date of card {card} to {after}" : "Jūs nustatėte galutinį kortelės {card} terminą į {after}",
"{user} has set the due date of card {card} to {after}" : "{user} nustatė galutinį kortelės {card} terminą į {after}",
"You have updated the due date of card {card} to {after}" : "Jūs atnaujinote galutinį kortelės {card} terminą į {after}",
"{user} has updated the due date of card {card} to {after}" : "{user} atnaujino galutinį kortelės {card} terminą į {after}",
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} į kortelę {card} pridėjote žymę {label}",
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} į kortelę {card} pridėjo žymę {label}",
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} iš kortelės {card} pašalinote žymę {label}",
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} iš kortelės {card} pašalino žymę {label}",
"You have assigned {assigneduser} to card {card} on board {board}" : "Jūs lentoje {board} prie kortelės {card} priskyrėte {assigneduser}",
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} lentoje {board} prie kortelės {card} priskyrė {assigneduser}",
"You have moved the card {card} from list {stackBefore} to {stack}" : "Jūs perkėlėte kortelę {card} iš sąrašo {stackBefore} į sąrašą {stack}",
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} perkėlė kortelę {card} iš sąrašo {stackBefore} į sąrašą {stack}",
"You have added the attachment {attachment} to card {card}" : "Jūs pridėjote priedą {attachment} į kortelę {card}",
"{user} has added the attachment {attachment} to card {card}" : "{user} pridėjo priedą {attachment} į kortelę {card}",
"You have updated the attachment {attachment} on card {card}" : "Jūs atnaujinote priedą {attachment} kortelėje {card}",
@@ -41,6 +65,7 @@ OC.L10N.register(
"Deck" : "Darbai",
"Changes in the <strong>Deck app</strong>" : "Pakeitimai <strong>Darbų programėlėje</strong>",
"A <strong>comment</strong> was created on a card" : "Kortelėje buvo sukurtas <strong>komentaras</strong>",
"Upcoming cards" : "Artėjančios kortelės",
"Personal" : "Asmeniniai",
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Kortelę \"%s\" ties \"%s\" priskyrė jums %s.",
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} priskyrė jums kortelę \"%s\" ties \"%s\".",
@@ -105,6 +130,8 @@ OC.L10N.register(
"Toggle compact mode" : "Perjungti kompaktišką veikseną",
"Details" : "Išsamiau",
"Loading board" : "Įkeliama lenta",
"No lists available" : "Nėra sąrašų",
"Create a new list to add cards to this board" : "Norėdami pridėti korteles į šią lentą, sukurkite naują sąrašą",
"Board not found" : "Lenta nerasta",
"Sharing" : "Bendrinimas",
"Tags" : "Žymės",
@@ -114,6 +141,7 @@ OC.L10N.register(
"Undo" : "Atšaukti",
"Deleted cards" : "Ištrintos kortelės",
"Share board with a user, group or circle …" : "Bendrinti lentą su naudotoju, grupe ar ratu…",
"No participants found" : "Nerasta jokių dalyvių",
"Board owner" : "Lentos savininkas",
"(Group)" : "(Grupė)",
"(Circle)" : "(Ratas)",
@@ -121,9 +149,14 @@ OC.L10N.register(
"Can share" : "Can share",
"Can manage" : "Gali tvarkyti",
"Delete" : "Ištrinti",
"Add a new list" : "Pridėti naują sąrašą",
"Archive all cards" : "Archyvuoti visas korteles",
"Delete list" : "Ištrinti sąrašą",
"Add card" : "Pridėti kortelę",
"Archive all cards in this list" : "Archyvuoti visas korteles šiame sąraše",
"Add a new card" : "Pridėti naują kortelę",
"Card name" : "Kortelės pavadinimas",
"List deleted" : "Sąrašas ištrintas",
"Edit" : "Taisyti",
"Add a new tag" : "Pridėti naują žymę",
"title and color value must be provided" : "privalo būti pateiktos pavadinimo ir spalvos reikšmės",
@@ -162,15 +195,19 @@ OC.L10N.register(
"(group)" : "(grupė)",
"(circle)" : "(ratas)",
"Assign to me" : "Priskirti sau",
"Move card" : "Perkelti kortelę",
"Unarchive card" : "Išarchyvuoti kortelę",
"Archive card" : "Archyvuoti kortelę",
"Delete card" : "Ištrinti kortelę",
"Move card" : "Perkelti kortelę",
"Move card to another board" : "Perkelti kortelę į kitą lentą",
"Select a list" : "Pasirinkite sąrašą",
"Card deleted" : "Kortelė ištrinta",
"seconds ago" : "prieš keletą sekundžių",
"All boards" : "Visos lentos",
"Archived boards" : "Archyvuotos lentos",
"Shared with you" : "Bendrinama su jumis",
"Show boards in calendar/tasks" : "Rodyti darbus kalendoriuje/užduotyse",
"Board name" : "Lentos pavadinimas",
"Edit board" : "Taisyti lentą",
"Clone board " : "Dubliuoti lentą ",
"Unarchive board " : "Išarchyvuoti lentą ",

View File

@@ -15,16 +15,40 @@
"{user} has archived the board {before}" : "{user} užarchyvavo lentą {before}",
"You have unarchived the board {board}" : "Jūs išarchyvavote lentą {board}",
"{user} has unarchived the board {before}" : "{user} išarchyvavo lentą {before}",
"You have created a new list {stack} on board {board}" : "Jūs lentoje {board} sukūrėte naują sąrašą {stack}",
"{user} has created a new list {stack} on board {board}" : "{user} lentoje {board} sukūrė naują sąrašą {stack}",
"You have renamed list {before} to {stack} on board {board}" : "Jūs lentoje {board} pervadinote sąrašą {before} į {stack}",
"{user} has renamed list {before} to {stack} on board {board}" : "{user} lentoje {board} pervadino sąrašą {before} į {stack}",
"You have deleted list {stack} on board {board}" : "Jūs lentoje {board} ištrynėte sąrašą {stack}",
"{user} has deleted list {stack} on board {board}" : "{user} lentoje {board} ištrynė sąrašą {stack}",
"You have created card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} sukūrėte kortelę {card}",
"{user} has created card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} sukūrė kortelę {card}",
"You have deleted card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} ištrynėte kortelę {card}",
"{user} has deleted card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} ištrynė kortelę {card} ",
"You have renamed the card {before} to {card}" : "Jūs pervadinote kortelę {before} į {card}",
"{user} has renamed the card {before} to {card}" : "{user} pervadino kortelę {before} į {card}",
"You have added a description to card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} į kortelę {card} pridėjote aprašą",
"{user} has added a description to card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} į kortelę {card} pridėjo aprašą",
"You have updated the description of card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} atnaujinote kortelės {card} aprašą",
"{user} has updated the description of the card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} atnaujino kortelės {card} aprašą",
"You have archived card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} užarchyvavote kortelę {card}",
"{user} has archived card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} užarchyvavo kortelę {card}",
"You have unarchived card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} išarchyvavote kortelę {card}",
"{user} has unarchived card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} išarchyvavo kortelę {card}",
"You have removed the due date of card {card}" : "Jūs pašalinote galutinį kortelės {card} terminą",
"{user} has removed the due date of card {card}" : "{user} pašalino galutinį kortelės {card} terminą",
"You have set the due date of card {card} to {after}" : "Jūs nustatėte galutinį kortelės {card} terminą į {after}",
"{user} has set the due date of card {card} to {after}" : "{user} nustatė galutinį kortelės {card} terminą į {after}",
"You have updated the due date of card {card} to {after}" : "Jūs atnaujinote galutinį kortelės {card} terminą į {after}",
"{user} has updated the due date of card {card} to {after}" : "{user} atnaujino galutinį kortelės {card} terminą į {after}",
"You have added the tag {label} to card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} į kortelę {card} pridėjote žymę {label}",
"{user} has added the tag {label} to card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} į kortelę {card} pridėjo žymę {label}",
"You have removed the tag {label} from card {card} in list {stack} on board {board}" : "Jūs lentoje {board}, sąraše {stack} iš kortelės {card} pašalinote žymę {label}",
"{user} has removed the tag {label} from card {card} in list {stack} on board {board}" : "{user} lentoje {board}, sąraše {stack} iš kortelės {card} pašalino žymę {label}",
"You have assigned {assigneduser} to card {card} on board {board}" : "Jūs lentoje {board} prie kortelės {card} priskyrėte {assigneduser}",
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} lentoje {board} prie kortelės {card} priskyrė {assigneduser}",
"You have moved the card {card} from list {stackBefore} to {stack}" : "Jūs perkėlėte kortelę {card} iš sąrašo {stackBefore} į sąrašą {stack}",
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} perkėlė kortelę {card} iš sąrašo {stackBefore} į sąrašą {stack}",
"You have added the attachment {attachment} to card {card}" : "Jūs pridėjote priedą {attachment} į kortelę {card}",
"{user} has added the attachment {attachment} to card {card}" : "{user} pridėjo priedą {attachment} į kortelę {card}",
"You have updated the attachment {attachment} on card {card}" : "Jūs atnaujinote priedą {attachment} kortelėje {card}",
@@ -39,6 +63,7 @@
"Deck" : "Darbai",
"Changes in the <strong>Deck app</strong>" : "Pakeitimai <strong>Darbų programėlėje</strong>",
"A <strong>comment</strong> was created on a card" : "Kortelėje buvo sukurtas <strong>komentaras</strong>",
"Upcoming cards" : "Artėjančios kortelės",
"Personal" : "Asmeniniai",
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Kortelę \"%s\" ties \"%s\" priskyrė jums %s.",
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} priskyrė jums kortelę \"%s\" ties \"%s\".",
@@ -103,6 +128,8 @@
"Toggle compact mode" : "Perjungti kompaktišką veikseną",
"Details" : "Išsamiau",
"Loading board" : "Įkeliama lenta",
"No lists available" : "Nėra sąrašų",
"Create a new list to add cards to this board" : "Norėdami pridėti korteles į šią lentą, sukurkite naują sąrašą",
"Board not found" : "Lenta nerasta",
"Sharing" : "Bendrinimas",
"Tags" : "Žymės",
@@ -112,6 +139,7 @@
"Undo" : "Atšaukti",
"Deleted cards" : "Ištrintos kortelės",
"Share board with a user, group or circle …" : "Bendrinti lentą su naudotoju, grupe ar ratu…",
"No participants found" : "Nerasta jokių dalyvių",
"Board owner" : "Lentos savininkas",
"(Group)" : "(Grupė)",
"(Circle)" : "(Ratas)",
@@ -119,9 +147,14 @@
"Can share" : "Can share",
"Can manage" : "Gali tvarkyti",
"Delete" : "Ištrinti",
"Add a new list" : "Pridėti naują sąrašą",
"Archive all cards" : "Archyvuoti visas korteles",
"Delete list" : "Ištrinti sąrašą",
"Add card" : "Pridėti kortelę",
"Archive all cards in this list" : "Archyvuoti visas korteles šiame sąraše",
"Add a new card" : "Pridėti naują kortelę",
"Card name" : "Kortelės pavadinimas",
"List deleted" : "Sąrašas ištrintas",
"Edit" : "Taisyti",
"Add a new tag" : "Pridėti naują žymę",
"title and color value must be provided" : "privalo būti pateiktos pavadinimo ir spalvos reikšmės",
@@ -160,15 +193,19 @@
"(group)" : "(grupė)",
"(circle)" : "(ratas)",
"Assign to me" : "Priskirti sau",
"Move card" : "Perkelti kortelę",
"Unarchive card" : "Išarchyvuoti kortelę",
"Archive card" : "Archyvuoti kortelę",
"Delete card" : "Ištrinti kortelę",
"Move card" : "Perkelti kortelę",
"Move card to another board" : "Perkelti kortelę į kitą lentą",
"Select a list" : "Pasirinkite sąrašą",
"Card deleted" : "Kortelė ištrinta",
"seconds ago" : "prieš keletą sekundžių",
"All boards" : "Visos lentos",
"Archived boards" : "Archyvuotos lentos",
"Shared with you" : "Bendrinama su jumis",
"Show boards in calendar/tasks" : "Rodyti darbus kalendoriuje/užduotyse",
"Board name" : "Lentos pavadinimas",
"Edit board" : "Taisyti lentą",
"Clone board " : "Dubliuoti lentą ",
"Unarchive board " : "Išarchyvuoti lentą ",

View File

@@ -14,16 +14,20 @@ OC.L10N.register(
"Could not write file to disk" : "Неможе да се запишува на дискот",
"A PHP extension stopped the file upload" : "PHP додаток го стопираше прикачувањето на датотеката",
"Cancel" : "Откажи",
"Drop your files to upload" : "Повлечи датотеки за да прикачите",
"Details" : "Детали",
"Sharing" : "Споделување",
"Tags" : "Ознаки",
"(Group)" : "(Група)",
"Can edit" : "Може да се уредува",
"Can share" : "Can share",
"Delete" : "Избриши",
"Edit" : "Уреди",
"Title" : "Наслов",
"Upload attachment" : "Прикачи прилог",
"Due date" : "До датум",
"Description" : "Опис",
"Attachments" : "Прилози",
"Comments" : "Коментари",
"Select Date" : "Избери датум",
"Modified" : "Изменето",

View File

@@ -12,16 +12,20 @@
"Could not write file to disk" : "Неможе да се запишува на дискот",
"A PHP extension stopped the file upload" : "PHP додаток го стопираше прикачувањето на датотеката",
"Cancel" : "Откажи",
"Drop your files to upload" : "Повлечи датотеки за да прикачите",
"Details" : "Детали",
"Sharing" : "Споделување",
"Tags" : "Ознаки",
"(Group)" : "(Група)",
"Can edit" : "Може да се уредува",
"Can share" : "Can share",
"Delete" : "Избриши",
"Edit" : "Уреди",
"Title" : "Наслов",
"Upload attachment" : "Прикачи прилог",
"Due date" : "До датум",
"Description" : "Опис",
"Attachments" : "Прилози",
"Comments" : "Коментари",
"Select Date" : "Избери датум",
"Modified" : "Изменето",

View File

@@ -117,10 +117,10 @@ OC.L10N.register(
"Reply" : "Svar",
"Update" : "Oppdater",
"(group)" : "(gruppe)",
"Move card" : "Flytt kort",
"Unarchive card" : "Hent kort fra arkiv",
"Archive card" : "Arkiver kort",
"Delete card" : "Slett kort",
"Move card" : "Flytt kort",
"seconds ago" : "sekunder siden",
"Archived boards" : "Arkiverte tavler",
"Shared with you" : "Delt med deg",

View File

@@ -115,10 +115,10 @@
"Reply" : "Svar",
"Update" : "Oppdater",
"(group)" : "(gruppe)",
"Move card" : "Flytt kort",
"Unarchive card" : "Hent kort fra arkiv",
"Archive card" : "Arkiver kort",
"Delete card" : "Slett kort",
"Move card" : "Flytt kort",
"seconds ago" : "sekunder siden",
"Archived boards" : "Arkiverte tavler",
"Shared with you" : "Delt med deg",

View File

@@ -202,10 +202,10 @@ OC.L10N.register(
"(circle)" : "(kring)",
"Assign to me" : "Aan mij toewijzen",
"Unassign myself" : "Eigen toewijzing opheffen",
"Move card" : "Verplaats kaart",
"Unarchive card" : "Terughalen kaart uit archief",
"Archive card" : "Archiveer kaart",
"Delete card" : "Verwijderen kaart",
"Move card" : "Verplaats kaart",
"Move card to another board" : "Verplaats kaart naar een ander bord",
"Select a list" : "Selecteer een lijst",
"seconds ago" : "seconden geleden",

View File

@@ -200,10 +200,10 @@
"(circle)" : "(kring)",
"Assign to me" : "Aan mij toewijzen",
"Unassign myself" : "Eigen toewijzing opheffen",
"Move card" : "Verplaats kaart",
"Unarchive card" : "Terughalen kaart uit archief",
"Archive card" : "Archiveer kaart",
"Delete card" : "Verwijderen kaart",
"Move card" : "Verplaats kaart",
"Move card to another board" : "Verplaats kaart naar een ander bord",
"Select a list" : "Selecteer een lijst",
"seconds ago" : "seconden geleden",

View File

@@ -146,6 +146,8 @@ OC.L10N.register(
"Undo" : "Cofnij",
"Deleted cards" : "Usunięte karty",
"Share board with a user, group or circle …" : "Udostępnij tablicę użytkownikowi, grupie lub kręgowi…",
"Searching for users, groups and circles …" : "Szukam użytkowników, grup i kręgów…",
"No participants found" : "Nie znaleziono uczestników",
"Board owner" : "Właściciel tablicy",
"(Group)" : "(Grupa)",
"(Circle)" : "(Krąg)",
@@ -153,6 +155,7 @@ OC.L10N.register(
"Can share" : "Może udostępnić",
"Can manage" : "Może zarządzać",
"Delete" : "Usuń",
"Failed to create share with {displayName}" : "Nie udało się utworzyć udostępnienia dla {displayName}",
"Add a new list" : "Dodaj nową listę",
"Archive all cards" : "Zarchiwizuj wszystkie karty",
"Delete list" : "Usuń listę",
@@ -181,7 +184,7 @@ OC.L10N.register(
"Remove due date" : "Usuń datę realizacji",
"Description" : "Opis",
"(Unsaved)" : "(Niezapisane)",
"(Saving…)" : "(Zapisywanie...)",
"(Saving…)" : "(Zapisywanie)",
"Formatting help" : "Pomoc przy formatowaniu",
"Edit description" : "Edytuj opis",
"View description" : "Zobacz opis",
@@ -204,10 +207,10 @@ OC.L10N.register(
"(circle)" : "(krąg)",
"Assign to me" : "Przydziel do mnie",
"Unassign myself" : "Cofnij moje przypisanie",
"Move card" : "Przenieś kartę",
"Unarchive card" : "Nie archiwizuj karty",
"Archive card" : "Zarchiwizuj kartę",
"Delete card" : "Usuń kartę",
"Move card" : "Przenieś kartę",
"Move card to another board" : "Przenieś kartę na inną tablicę",
"Select a list" : "Wybierz listę",
"Card deleted" : "Karta usunięta",

View File

@@ -144,6 +144,8 @@
"Undo" : "Cofnij",
"Deleted cards" : "Usunięte karty",
"Share board with a user, group or circle …" : "Udostępnij tablicę użytkownikowi, grupie lub kręgowi…",
"Searching for users, groups and circles …" : "Szukam użytkowników, grup i kręgów…",
"No participants found" : "Nie znaleziono uczestników",
"Board owner" : "Właściciel tablicy",
"(Group)" : "(Grupa)",
"(Circle)" : "(Krąg)",
@@ -151,6 +153,7 @@
"Can share" : "Może udostępnić",
"Can manage" : "Może zarządzać",
"Delete" : "Usuń",
"Failed to create share with {displayName}" : "Nie udało się utworzyć udostępnienia dla {displayName}",
"Add a new list" : "Dodaj nową listę",
"Archive all cards" : "Zarchiwizuj wszystkie karty",
"Delete list" : "Usuń listę",
@@ -179,7 +182,7 @@
"Remove due date" : "Usuń datę realizacji",
"Description" : "Opis",
"(Unsaved)" : "(Niezapisane)",
"(Saving…)" : "(Zapisywanie...)",
"(Saving…)" : "(Zapisywanie)",
"Formatting help" : "Pomoc przy formatowaniu",
"Edit description" : "Edytuj opis",
"View description" : "Zobacz opis",
@@ -202,10 +205,10 @@
"(circle)" : "(krąg)",
"Assign to me" : "Przydziel do mnie",
"Unassign myself" : "Cofnij moje przypisanie",
"Move card" : "Przenieś kartę",
"Unarchive card" : "Nie archiwizuj karty",
"Archive card" : "Zarchiwizuj kartę",
"Delete card" : "Usuń kartę",
"Move card" : "Przenieś kartę",
"Move card to another board" : "Przenieś kartę na inną tablicę",
"Select a list" : "Wybierz listę",
"Card deleted" : "Karta usunięta",

View File

@@ -1,17 +0,0 @@
OC.L10N.register(
"deck",
{
"Personal" : "شخصي",
"copy" : "کاپي",
"Cancel" : "پرېښول",
"Details" : "معلومات",
"Tags" : "نښکې",
"Can edit" : "سمون راوستی شي",
"Delete" : "ړنګول",
"Comments" : "تبصرې",
"Modified" : "د بدلون نېټه",
"Save" : "ساتل",
"Shared with you" : "تاسې سره شريک شوي",
"Today" : "نن"
},
"nplurals=2; plural=(n != 1);");

View File

@@ -1,15 +0,0 @@
{ "translations": {
"Personal" : "شخصي",
"copy" : "کاپي",
"Cancel" : "پرېښول",
"Details" : "معلومات",
"Tags" : "نښکې",
"Can edit" : "سمون راوستی شي",
"Delete" : "ړنګول",
"Comments" : "تبصرې",
"Modified" : "د بدلون نېټه",
"Save" : "ساتل",
"Shared with you" : "تاسې سره شريک شوي",
"Today" : "نن"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}

View File

@@ -146,6 +146,7 @@ OC.L10N.register(
"Undo" : "Desfazer",
"Deleted cards" : "Cartões excluídos",
"Share board with a user, group or circle …" : "Compartilhar o painel com um usuário, grupo ou círculo...",
"No participants found" : "Nenhum participante encontrado",
"Board owner" : "Proprietário do painel",
"(Group)" : "(Grupo)",
"(Circle)" : "(Círculo)",
@@ -153,6 +154,7 @@ OC.L10N.register(
"Can share" : "Pode compartilhar",
"Can manage" : "Pode gerenciar",
"Delete" : "Excluir",
"Failed to create share with {displayName}" : "Falha ao criar compartilhamento com {displayName}",
"Add a new list" : "Adicionar nova lista",
"Archive all cards" : "Arquivar todos os cartões",
"Delete list" : "Excluir lista",
@@ -204,10 +206,10 @@ OC.L10N.register(
"(circle)" : "(círculo)",
"Assign to me" : "Atribuir a mim",
"Unassign myself" : "Desatribuir-me",
"Move card" : "Mover cartão",
"Unarchive card" : "Desarquivar cartão",
"Archive card" : "Arquivar cartão",
"Delete card" : "Excluir cartão",
"Move card" : "Mover cartão",
"Move card to another board" : "Mover o cartão para outro painel",
"Select a list" : "Selecione uma lista",
"Card deleted" : "Cartão excluído",

View File

@@ -144,6 +144,7 @@
"Undo" : "Desfazer",
"Deleted cards" : "Cartões excluídos",
"Share board with a user, group or circle …" : "Compartilhar o painel com um usuário, grupo ou círculo...",
"No participants found" : "Nenhum participante encontrado",
"Board owner" : "Proprietário do painel",
"(Group)" : "(Grupo)",
"(Circle)" : "(Círculo)",
@@ -151,6 +152,7 @@
"Can share" : "Pode compartilhar",
"Can manage" : "Pode gerenciar",
"Delete" : "Excluir",
"Failed to create share with {displayName}" : "Falha ao criar compartilhamento com {displayName}",
"Add a new list" : "Adicionar nova lista",
"Archive all cards" : "Arquivar todos os cartões",
"Delete list" : "Excluir lista",
@@ -202,10 +204,10 @@
"(circle)" : "(círculo)",
"Assign to me" : "Atribuir a mim",
"Unassign myself" : "Desatribuir-me",
"Move card" : "Mover cartão",
"Unarchive card" : "Desarquivar cartão",
"Archive card" : "Arquivar cartão",
"Delete card" : "Excluir cartão",
"Move card" : "Mover cartão",
"Move card to another board" : "Mover o cartão para outro painel",
"Select a list" : "Selecione uma lista",
"Card deleted" : "Cartão excluído",

View File

@@ -67,6 +67,7 @@ OC.L10N.register(
"Deck" : "Карточки",
"Changes in the <strong>Deck app</strong>" : "Изменения в <strong>приложении Карточки</strong>",
"A <strong>comment</strong> was created on a card" : "Добавлен <strong>комментарий</strong> к карточке",
"Upcoming cards" : "Ожидающие выполнения карточки",
"Personal" : "Личное",
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Вам назначена карточка «%s» с рабочей доски «%s» пользователем %s.",
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} назначил Вам карточку «%s» из «%s».",
@@ -134,6 +135,8 @@ OC.L10N.register(
"Toggle compact mode" : "Выбор компактного или обычного режима просмотра",
"Details" : "Свойства",
"Loading board" : "Загрузка доски",
"No lists available" : "Нет ни одного списка",
"Create a new list to add cards to this board" : "Создайте список чтобы добавить карточки на эту доску",
"Board not found" : "Доска не найдена",
"Sharing" : "Общий доступ",
"Tags" : "Метки",
@@ -157,6 +160,7 @@ OC.L10N.register(
"Archive all cards in this list" : "Переместить в архив все карточки текущего списка",
"Add a new card" : "Создать карточку",
"Card name" : "Название карточки",
"List deleted" : "Список удалён",
"Edit" : "Редактировать",
"Add a new tag" : "Добавить метку",
"title and color value must be provided" : "необходимо указать цвет и название",
@@ -188,6 +192,7 @@ OC.L10N.register(
"Select Date" : "Выберите дату",
"Modified" : "Изменено",
"Created" : "Создано",
"The title cannot be empty." : "Название не может быть пустым",
"No comments yet. Begin the discussion!" : "Комментарии отсутствуют, начните обсуждение!",
"Save" : "Сохранить",
"The comment cannot be empty." : "Комментарий не может быть пустым.",
@@ -199,19 +204,22 @@ OC.L10N.register(
"(circle)" : "(круг)",
"Assign to me" : "Назначить себе",
"Unassign myself" : "Отказаться от назначения",
"Move card" : "Переместить карточку",
"Unarchive card" : "Восстановить из архива",
"Archive card" : "Переместить в архив",
"Delete card" : "Удалить",
"Move card" : "Переместить карточку",
"Move card to another board" : "Переместить карточку на другую доску",
"Select a list" : "Выберите список",
"Card deleted" : "Карточка удалена",
"seconds ago" : "несколько секунд назад",
"All boards" : "Все доски",
"Archived boards" : "Архив досок",
"Shared with you" : "Предоставленные вам",
"Use modal 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 name" : "Название доски",
"Edit board" : "Редактировать",
"Clone board " : "Копировать",
"Unarchive board " : "Восстановить из архива",
@@ -222,10 +230,13 @@ 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." : "Подтвердите удаление доски «{title}»; это действие приведёт к удалению также все данных, принадлежащих этой доске.",
"Delete the board?" : "Удалить доску?",
"Loading filtered view" : "Выполняется отбор",
"Today" : "Сегодня",
"Tomorrow" : "Завтра",
"This week" : "Эта неделя",
"No due" : "Без назначенной даты",
"No upcoming cards" : "Отсутствуют карточки, ожидающие выполнения",
"upcoming cards" : "карточки, ожидающие выполнения",
"Link to a board" : "Ссылка на доску",
"Link to a card" : "Ссылка на карточку",
"Something went wrong" : "Неизвестная ошибка",

View File

@@ -65,6 +65,7 @@
"Deck" : "Карточки",
"Changes in the <strong>Deck app</strong>" : "Изменения в <strong>приложении Карточки</strong>",
"A <strong>comment</strong> was created on a card" : "Добавлен <strong>комментарий</strong> к карточке",
"Upcoming cards" : "Ожидающие выполнения карточки",
"Personal" : "Личное",
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Вам назначена карточка «%s» с рабочей доски «%s» пользователем %s.",
"{user} has assigned the card \"%s\" on \"%s\" to you." : "{user} назначил Вам карточку «%s» из «%s».",
@@ -132,6 +133,8 @@
"Toggle compact mode" : "Выбор компактного или обычного режима просмотра",
"Details" : "Свойства",
"Loading board" : "Загрузка доски",
"No lists available" : "Нет ни одного списка",
"Create a new list to add cards to this board" : "Создайте список чтобы добавить карточки на эту доску",
"Board not found" : "Доска не найдена",
"Sharing" : "Общий доступ",
"Tags" : "Метки",
@@ -155,6 +158,7 @@
"Archive all cards in this list" : "Переместить в архив все карточки текущего списка",
"Add a new card" : "Создать карточку",
"Card name" : "Название карточки",
"List deleted" : "Список удалён",
"Edit" : "Редактировать",
"Add a new tag" : "Добавить метку",
"title and color value must be provided" : "необходимо указать цвет и название",
@@ -186,6 +190,7 @@
"Select Date" : "Выберите дату",
"Modified" : "Изменено",
"Created" : "Создано",
"The title cannot be empty." : "Название не может быть пустым",
"No comments yet. Begin the discussion!" : "Комментарии отсутствуют, начните обсуждение!",
"Save" : "Сохранить",
"The comment cannot be empty." : "Комментарий не может быть пустым.",
@@ -197,19 +202,22 @@
"(circle)" : "(круг)",
"Assign to me" : "Назначить себе",
"Unassign myself" : "Отказаться от назначения",
"Move card" : "Переместить карточку",
"Unarchive card" : "Восстановить из архива",
"Archive card" : "Переместить в архив",
"Delete card" : "Удалить",
"Move card" : "Переместить карточку",
"Move card to another board" : "Переместить карточку на другую доску",
"Select a list" : "Выберите список",
"Card deleted" : "Карточка удалена",
"seconds ago" : "несколько секунд назад",
"All boards" : "Все доски",
"Archived boards" : "Архив досок",
"Shared with you" : "Предоставленные вам",
"Use modal 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 name" : "Название доски",
"Edit board" : "Редактировать",
"Clone board " : "Копировать",
"Unarchive board " : "Восстановить из архива",
@@ -220,10 +228,13 @@
"An error occurred" : "Произошла ошибка",
"Are you sure you want to delete the board {title}? This will delete all the data of this board." : "Подтвердите удаление доски «{title}»; это действие приведёт к удалению также все данных, принадлежащих этой доске.",
"Delete the board?" : "Удалить доску?",
"Loading filtered view" : "Выполняется отбор",
"Today" : "Сегодня",
"Tomorrow" : "Завтра",
"This week" : "Эта неделя",
"No due" : "Без назначенной даты",
"No upcoming cards" : "Отсутствуют карточки, ожидающие выполнения",
"upcoming cards" : "карточки, ожидающие выполнения",
"Link to a board" : "Ссылка на доску",
"Link to a card" : "Ссылка на карточку",
"Something went wrong" : "Неизвестная ошибка",

View File

@@ -198,10 +198,10 @@ OC.L10N.register(
"(circle)" : "(okruh)",
"Assign to me" : "Priradiť mne",
"Unassign myself" : "Zrušiť priradenie mne",
"Move card" : "Presunúť kartu",
"Unarchive card" : "Zrušiť archiváciu karty",
"Archive card" : "Archivovať kartu",
"Delete card" : "Zmazať kartu",
"Move card" : "Presunúť kartu",
"Move card to another board" : "Presunúť kartu na inú nástenku",
"Select a list" : "Vybrať zoznam",
"seconds ago" : "pred niekoľkými sekundami",

View File

@@ -196,10 +196,10 @@
"(circle)" : "(okruh)",
"Assign to me" : "Priradiť mne",
"Unassign myself" : "Zrušiť priradenie mne",
"Move card" : "Presunúť kartu",
"Unarchive card" : "Zrušiť archiváciu karty",
"Archive card" : "Archivovať kartu",
"Delete card" : "Zmazať kartu",
"Move card" : "Presunúť kartu",
"Move card to another board" : "Presunúť kartu na inú nástenku",
"Select a list" : "Vybrať zoznam",
"seconds ago" : "pred niekoľkými sekundami",

View File

@@ -51,8 +51,8 @@ OC.L10N.register(
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} dodeli nalogo {card} v zbirki {board} → {assigneduser}",
"You have unassigned {assigneduser} from card {card} on board {board}" : "Odvzamete nalogo {card} v zbirki {board} ✕ {assigneduser}",
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} odvzame nalogo {card} v zbirki {board} ✕ {assigneduser}",
"You have moved the card {card} from list {stackBefore} to {stack}" : "Premaknete nalogo {card} iz seznama nalog {stackBefore} v {stack}",
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} premakne nalogo {card} iz seznama nalog {stackBefore} v {stack}",
"You have moved the card {card} from list {stackBefore} to {stack}" : "Premaknete nalogo {card} s seznama nalog {stackBefore} v {stack}",
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} premakne nalogo {card} s seznama nalog {stackBefore} v {stack}",
"You have added the attachment {attachment} to card {card}" : "Dodate prilogo {attachment} k nalogi {card}",
"{user} has added the attachment {attachment} to card {card}" : "{user} doda prilogo {attachment} k nalogi {card}",
"You have updated the attachment {attachment} on card {card}" : "Posodobite prilogo {attachment} v nalogi {card}",
@@ -63,7 +63,7 @@ OC.L10N.register(
"{user} has restored the attachment {attachment} to card {card}" : "{user} obnovi prilogo {attachment} naloge {card}",
"You have commented on card {card}" : "Vpišete opombo k nalogi {card}",
"{user} has commented on card {card}" : "{user} vpiše opombo k nalogi {card}",
"A <strong>card description</strong> inside the Deck app has been changed" : "Spremenjen je<strong>opis ene izmed nalog</strong> v programu Deck",
"A <strong>card description</strong> inside the Deck app has been changed" : "V programu Deck je spremenjen <strong>opis ene izmed nalog</strong>",
"Deck" : "Deck",
"Changes in the <strong>Deck app</strong>" : "Spremembe v programu <strong>Deck</strong>",
"A <strong>comment</strong> was created on a card" : "Nalogi je dodana nova <strong>opomba</strong>",
@@ -146,6 +146,7 @@ OC.L10N.register(
"Undo" : "Razveljavi",
"Deleted cards" : "Izbrisane naloge",
"Share board with a user, group or circle …" : "Souporaba z uporabniki, skupinami ali krogi ...",
"No participants found" : "Ni zaznanih udeleženev",
"Board owner" : "Lastnik zbirke",
"(Group)" : "(Skupina)",
"(Circle)" : "(Krog)",
@@ -153,6 +154,7 @@ OC.L10N.register(
"Can share" : "Lahko omogoči souporabo",
"Can manage" : "Lahko upravlja",
"Delete" : "Izbriši",
"Failed to create share with {displayName}" : "Souporaba z uporabnikom {displayName} je spodletela",
"Add a new list" : "Dodaj nov seznam",
"Archive all cards" : "Arhiviraj vse kartice",
"Delete list" : "Izbriši seznam",
@@ -204,10 +206,10 @@ OC.L10N.register(
"(circle)" : "(krog)",
"Assign to me" : "Nalogo dodeli meni",
"Unassign myself" : "Odstrani me z naloge",
"Move card" : "Premakni nalogo",
"Unarchive card" : "Povrni nalogo",
"Archive card" : "Arhiviraj nalogo",
"Delete card" : "Izbriši nalogo",
"Move card" : "Premakni nalogo",
"Move card to another board" : "Premakni nalogo v drugo zbirko",
"Select a list" : "Izbor seznama",
"Card deleted" : "Naloga je izbrisana",

View File

@@ -49,8 +49,8 @@
"{user} has assigned {assigneduser} to card {card} on board {board}" : "{user} dodeli nalogo {card} v zbirki {board} → {assigneduser}",
"You have unassigned {assigneduser} from card {card} on board {board}" : "Odvzamete nalogo {card} v zbirki {board} ✕ {assigneduser}",
"{user} has unassigned {assigneduser} from card {card} on board {board}" : "{user} odvzame nalogo {card} v zbirki {board} ✕ {assigneduser}",
"You have moved the card {card} from list {stackBefore} to {stack}" : "Premaknete nalogo {card} iz seznama nalog {stackBefore} v {stack}",
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} premakne nalogo {card} iz seznama nalog {stackBefore} v {stack}",
"You have moved the card {card} from list {stackBefore} to {stack}" : "Premaknete nalogo {card} s seznama nalog {stackBefore} v {stack}",
"{user} has moved the card {card} from list {stackBefore} to {stack}" : "{user} premakne nalogo {card} s seznama nalog {stackBefore} v {stack}",
"You have added the attachment {attachment} to card {card}" : "Dodate prilogo {attachment} k nalogi {card}",
"{user} has added the attachment {attachment} to card {card}" : "{user} doda prilogo {attachment} k nalogi {card}",
"You have updated the attachment {attachment} on card {card}" : "Posodobite prilogo {attachment} v nalogi {card}",
@@ -61,7 +61,7 @@
"{user} has restored the attachment {attachment} to card {card}" : "{user} obnovi prilogo {attachment} naloge {card}",
"You have commented on card {card}" : "Vpišete opombo k nalogi {card}",
"{user} has commented on card {card}" : "{user} vpiše opombo k nalogi {card}",
"A <strong>card description</strong> inside the Deck app has been changed" : "Spremenjen je<strong>opis ene izmed nalog</strong> v programu Deck",
"A <strong>card description</strong> inside the Deck app has been changed" : "V programu Deck je spremenjen <strong>opis ene izmed nalog</strong>",
"Deck" : "Deck",
"Changes in the <strong>Deck app</strong>" : "Spremembe v programu <strong>Deck</strong>",
"A <strong>comment</strong> was created on a card" : "Nalogi je dodana nova <strong>opomba</strong>",
@@ -144,6 +144,7 @@
"Undo" : "Razveljavi",
"Deleted cards" : "Izbrisane naloge",
"Share board with a user, group or circle …" : "Souporaba z uporabniki, skupinami ali krogi ...",
"No participants found" : "Ni zaznanih udeleženev",
"Board owner" : "Lastnik zbirke",
"(Group)" : "(Skupina)",
"(Circle)" : "(Krog)",
@@ -151,6 +152,7 @@
"Can share" : "Lahko omogoči souporabo",
"Can manage" : "Lahko upravlja",
"Delete" : "Izbriši",
"Failed to create share with {displayName}" : "Souporaba z uporabnikom {displayName} je spodletela",
"Add a new list" : "Dodaj nov seznam",
"Archive all cards" : "Arhiviraj vse kartice",
"Delete list" : "Izbriši seznam",
@@ -202,10 +204,10 @@
"(circle)" : "(krog)",
"Assign to me" : "Nalogo dodeli meni",
"Unassign myself" : "Odstrani me z naloge",
"Move card" : "Premakni nalogo",
"Unarchive card" : "Povrni nalogo",
"Archive card" : "Arhiviraj nalogo",
"Delete card" : "Izbriši nalogo",
"Move card" : "Premakni nalogo",
"Move card to another board" : "Premakni nalogo v drugo zbirko",
"Select a list" : "Izbor seznama",
"Card deleted" : "Naloga je izbrisana",

View File

@@ -67,6 +67,7 @@ OC.L10N.register(
"Deck" : "Deck",
"Changes in the <strong>Deck app</strong>" : "Измене у <strong>Deck апликацији</strong>",
"A <strong>comment</strong> was created on a card" : "Направљен је <strong>коментар</strong> на картици",
"Upcoming cards" : "Предстојеће картице",
"Personal" : "Лично",
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Корисник %s Вам је доделио картицу „%s“ са табле „%s“.",
"{user} has assigned the card \"%s\" on \"%s\" to you." : "Корисник {user} Вам је доделио картицу „%s“ са табле „%s“.",
@@ -145,6 +146,7 @@ OC.L10N.register(
"Undo" : "Опозови",
"Deleted cards" : "Обрисане картице",
"Share board with a user, group or circle …" : "Подели таблу са корисником, групом или кругом…",
"No participants found" : "Нема нађених учесника",
"Board owner" : "Власник табле",
"(Group)" : "(група)",
"(Circle)" : "(Круг)",
@@ -152,12 +154,15 @@ OC.L10N.register(
"Can share" : "Може да дели",
"Can manage" : "Може да управља",
"Delete" : "Избриши",
"Failed to create share with {displayName}" : "Грешка у прављењу дељења са {displayName}",
"Add a new list" : "Додај нови списак",
"Archive all cards" : "Архивирај све картице",
"Delete list" : "Обриши списак",
"Add card" : "Додај картицу",
"Archive all cards in this list" : "Архивирај све картице са овог списка",
"Add a new card" : "Додај нову картицу",
"Card name" : "Име картице",
"List deleted" : "Листа обрисана",
"Edit" : "Измени",
"Add a new tag" : "Додај нову ознаку",
"title and color value must be provided" : "морају се дати вредности за наслов и боју",
@@ -167,6 +172,8 @@ OC.L10N.register(
"Add this attachment" : "Додај овај прилог",
"Delete Attachment" : "Обриши прилог",
"Restore Attachment" : "Поврати прилог",
"Open in sidebar view" : "Отвори у бочном прегледу",
"Open in bigger view" : "Отвори на већем приказу",
"Assign a tag to this card…" : "Додели ознаку овој картици…",
"Assign to users" : "Додели корисницима",
"Assign to users/groups/circles" : "Додели корисницима/групама/круговима",
@@ -187,6 +194,7 @@ OC.L10N.register(
"Select Date" : "Одаберите датум",
"Modified" : "Измењен",
"Created" : "Направљен",
"The title cannot be empty." : "Наслов не може бити празан.",
"No comments yet. Begin the discussion!" : "Нема још коментара. Започните дискусију!",
"Save" : "Сачувај",
"The comment cannot be empty." : "Коментар не може да буде празан.",
@@ -198,18 +206,22 @@ OC.L10N.register(
"(circle)" : "(круг)",
"Assign to me" : "Додели мени",
"Unassign myself" : "Склони са мене",
"Move card" : "Премести картицу",
"Unarchive card" : "Врати картицу из архиве",
"Archive card" : "Архивирај картицу",
"Delete card" : "Обриши картицу",
"Move card" : "Премести картицу",
"Move card to another board" : "Помери картицу на другу таблу",
"Select a list" : "Одабери списак",
"Card deleted" : "Картица обрисана",
"seconds ago" : "пре неколико секунди",
"All boards" : "Све табле",
"Archived boards" : "Архивиране табле",
"Shared with you" : "Дељено са Вама",
"Use modal 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." : "Ограничавање Deck апликације ће блокирати кориснике који нису део одабраних група да креирају своје табле. Корисници ће и даље моћи да раде на таблама које су подељене са њима.",
"Board name" : "Име табле",
"Edit board" : "Измени таблу",
"Clone board " : "Клонирај таблу",
"Unarchive board " : "Врати таблу из архиве",
@@ -225,6 +237,8 @@ OC.L10N.register(
"Tomorrow" : "сутра",
"This week" : "Ове недеље",
"No due" : "Нема рокова",
"No upcoming cards" : "Нема предстојећих картица",
"upcoming cards" : "предстојеће картице",
"Link to a board" : "Веза ка табли",
"Link to a card" : "Веза ка картици",
"Something went wrong" : "Нешто је пошло наопако",

View File

@@ -65,6 +65,7 @@
"Deck" : "Deck",
"Changes in the <strong>Deck app</strong>" : "Измене у <strong>Deck апликацији</strong>",
"A <strong>comment</strong> was created on a card" : "Направљен је <strong>коментар</strong> на картици",
"Upcoming cards" : "Предстојеће картице",
"Personal" : "Лично",
"The card \"%s\" on \"%s\" has been assigned to you by %s." : "Корисник %s Вам је доделио картицу „%s“ са табле „%s“.",
"{user} has assigned the card \"%s\" on \"%s\" to you." : "Корисник {user} Вам је доделио картицу „%s“ са табле „%s“.",
@@ -143,6 +144,7 @@
"Undo" : "Опозови",
"Deleted cards" : "Обрисане картице",
"Share board with a user, group or circle …" : "Подели таблу са корисником, групом или кругом…",
"No participants found" : "Нема нађених учесника",
"Board owner" : "Власник табле",
"(Group)" : "(група)",
"(Circle)" : "(Круг)",
@@ -150,12 +152,15 @@
"Can share" : "Може да дели",
"Can manage" : "Може да управља",
"Delete" : "Избриши",
"Failed to create share with {displayName}" : "Грешка у прављењу дељења са {displayName}",
"Add a new list" : "Додај нови списак",
"Archive all cards" : "Архивирај све картице",
"Delete list" : "Обриши списак",
"Add card" : "Додај картицу",
"Archive all cards in this list" : "Архивирај све картице са овог списка",
"Add a new card" : "Додај нову картицу",
"Card name" : "Име картице",
"List deleted" : "Листа обрисана",
"Edit" : "Измени",
"Add a new tag" : "Додај нову ознаку",
"title and color value must be provided" : "морају се дати вредности за наслов и боју",
@@ -165,6 +170,8 @@
"Add this attachment" : "Додај овај прилог",
"Delete Attachment" : "Обриши прилог",
"Restore Attachment" : "Поврати прилог",
"Open in sidebar view" : "Отвори у бочном прегледу",
"Open in bigger view" : "Отвори на већем приказу",
"Assign a tag to this card…" : "Додели ознаку овој картици…",
"Assign to users" : "Додели корисницима",
"Assign to users/groups/circles" : "Додели корисницима/групама/круговима",
@@ -185,6 +192,7 @@
"Select Date" : "Одаберите датум",
"Modified" : "Измењен",
"Created" : "Направљен",
"The title cannot be empty." : "Наслов не може бити празан.",
"No comments yet. Begin the discussion!" : "Нема још коментара. Започните дискусију!",
"Save" : "Сачувај",
"The comment cannot be empty." : "Коментар не може да буде празан.",
@@ -196,18 +204,22 @@
"(circle)" : "(круг)",
"Assign to me" : "Додели мени",
"Unassign myself" : "Склони са мене",
"Move card" : "Премести картицу",
"Unarchive card" : "Врати картицу из архиве",
"Archive card" : "Архивирај картицу",
"Delete card" : "Обриши картицу",
"Move card" : "Премести картицу",
"Move card to another board" : "Помери картицу на другу таблу",
"Select a list" : "Одабери списак",
"Card deleted" : "Картица обрисана",
"seconds ago" : "пре неколико секунди",
"All boards" : "Све табле",
"Archived boards" : "Архивиране табле",
"Shared with you" : "Дељено са Вама",
"Use modal 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." : "Ограничавање Deck апликације ће блокирати кориснике који нису део одабраних група да креирају своје табле. Корисници ће и даље моћи да раде на таблама које су подељене са њима.",
"Board name" : "Име табле",
"Edit board" : "Измени таблу",
"Clone board " : "Клонирај таблу",
"Unarchive board " : "Врати таблу из архиве",
@@ -223,6 +235,8 @@
"Tomorrow" : "сутра",
"This week" : "Ове недеље",
"No due" : "Нема рокова",
"No upcoming cards" : "Нема предстојећих картица",
"upcoming cards" : "предстојеће картице",
"Link to a board" : "Веза ка табли",
"Link to a card" : "Веза ка картици",
"Something went wrong" : "Нешто је пошло наопако",

View File

@@ -22,9 +22,9 @@ OC.L10N.register(
"Save" : "Sačuvaj",
"Reply" : "Odgovori",
"Update" : "Ažuriraj",
"Move card" : "Premesti karticu",
"Archive card" : "Arhiviraj karticu",
"Delete card" : "Obriši karticu",
"Move card" : "Premesti karticu",
"seconds ago" : "pre nekoliko sekundi",
"Shared with you" : "Shared with you",
"Edit board" : "Izmeni tablu",

View File

@@ -20,9 +20,9 @@
"Save" : "Sačuvaj",
"Reply" : "Odgovori",
"Update" : "Ažuriraj",
"Move card" : "Premesti karticu",
"Archive card" : "Arhiviraj karticu",
"Delete card" : "Obriši karticu",
"Move card" : "Premesti karticu",
"seconds ago" : "pre nekoliko sekundi",
"Shared with you" : "Shared with you",
"Edit board" : "Izmeni tablu",

View File

@@ -201,10 +201,10 @@ OC.L10N.register(
"(circle)" : "(cirkel)",
"Assign to me" : "Tilldela till mig",
"Unassign myself" : "Ta bort från mig själv",
"Move card" : "Flytta kort",
"Unarchive card" : "Avarkivera kort",
"Archive card" : "Arkivera kort",
"Delete card" : "Ta bort kort",
"Move card" : "Flytta kort",
"Move card to another board" : "Flytta kort till en annan tavla",
"Select a list" : "Välj en lista",
"seconds ago" : "sekunder sedan",

View File

@@ -199,10 +199,10 @@
"(circle)" : "(cirkel)",
"Assign to me" : "Tilldela till mig",
"Unassign myself" : "Ta bort från mig själv",
"Move card" : "Flytta kort",
"Unarchive card" : "Avarkivera kort",
"Archive card" : "Arkivera kort",
"Delete card" : "Ta bort kort",
"Move card" : "Flytta kort",
"Move card to another board" : "Flytta kort till en annan tavla",
"Select a list" : "Välj en lista",
"seconds ago" : "sekunder sedan",

View File

@@ -146,6 +146,8 @@ OC.L10N.register(
"Undo" : "Geri al",
"Deleted cards" : "Silinmiş kartlar",
"Share board with a user, group or circle …" : "Panoyu kullanıcılar, gruplar ve çevrelerle paylaş …",
"Searching for users, groups and circles …" : "Kullanıcılar, gruplar ve çevreler aranıyor …",
"No participants found" : "Herhangi bir katılımcı bulunamadı",
"Board owner" : "Pano sahibi",
"(Group)" : "(Grup)",
"(Circle)" : "(Çevre)",
@@ -153,6 +155,7 @@ OC.L10N.register(
"Can share" : "Paylaşabilir",
"Can manage" : "Yönetebilir",
"Delete" : "Sil",
"Failed to create share with {displayName}" : "{displayName} ile paylaşılamadı",
"Add a new list" : "Yeni liste ekle",
"Archive all cards" : "Tüm kartları arşivle",
"Delete list" : "Listeyi sil",
@@ -160,6 +163,7 @@ OC.L10N.register(
"Archive all cards in this list" : "Bu listedeki tüm kartları arşivle",
"Add a new card" : "Yeni kart ekle",
"Card name" : "Kart adı",
"List deleted" : "Liste silindi",
"Edit" : "Düzenle",
"Add a new tag" : "Yeni etiket ekle",
"title and color value must be provided" : "başlık ve renk değeri belirtilmelidir",
@@ -203,12 +207,13 @@ OC.L10N.register(
"(circle)" : "(çevre)",
"Assign to me" : "Bana ata",
"Unassign myself" : "Kendi atamamı kaldır",
"Move card" : "Kartı taşı",
"Unarchive card" : "Kartı arşivden çıkar",
"Archive card" : "Kartı arşivle",
"Delete card" : "Kartı sil",
"Move card" : "Kartı taşı",
"Move card to another board" : "Kartı başka bir panoya taşı",
"Select a list" : "Bir liste seçin",
"Card deleted" : "Kart silindi",
"seconds ago" : "saniye önce",
"All boards" : "Tüm panolar",
"Archived boards" : "Arşivlenmiş panolar",

View File

@@ -144,6 +144,8 @@
"Undo" : "Geri al",
"Deleted cards" : "Silinmiş kartlar",
"Share board with a user, group or circle …" : "Panoyu kullanıcılar, gruplar ve çevrelerle paylaş …",
"Searching for users, groups and circles …" : "Kullanıcılar, gruplar ve çevreler aranıyor …",
"No participants found" : "Herhangi bir katılımcı bulunamadı",
"Board owner" : "Pano sahibi",
"(Group)" : "(Grup)",
"(Circle)" : "(Çevre)",
@@ -151,6 +153,7 @@
"Can share" : "Paylaşabilir",
"Can manage" : "Yönetebilir",
"Delete" : "Sil",
"Failed to create share with {displayName}" : "{displayName} ile paylaşılamadı",
"Add a new list" : "Yeni liste ekle",
"Archive all cards" : "Tüm kartları arşivle",
"Delete list" : "Listeyi sil",
@@ -158,6 +161,7 @@
"Archive all cards in this list" : "Bu listedeki tüm kartları arşivle",
"Add a new card" : "Yeni kart ekle",
"Card name" : "Kart adı",
"List deleted" : "Liste silindi",
"Edit" : "Düzenle",
"Add a new tag" : "Yeni etiket ekle",
"title and color value must be provided" : "başlık ve renk değeri belirtilmelidir",
@@ -201,12 +205,13 @@
"(circle)" : "(çevre)",
"Assign to me" : "Bana ata",
"Unassign myself" : "Kendi atamamı kaldır",
"Move card" : "Kartı taşı",
"Unarchive card" : "Kartı arşivden çıkar",
"Archive card" : "Kartı arşivle",
"Delete card" : "Kartı sil",
"Move card" : "Kartı taşı",
"Move card to another board" : "Kartı başka bir panoya taşı",
"Select a list" : "Bir liste seçin",
"Card deleted" : "Kart silindi",
"seconds ago" : "saniye önce",
"All boards" : "Tüm panolar",
"Archived boards" : "Arşivlenmiş panolar",

View File

@@ -125,10 +125,10 @@ OC.L10N.register(
"(group)" : "(група)",
"(circle)" : "(коло)",
"Assign to me" : "Призначити мені",
"Move card" : "Пересунути картку",
"Unarchive card" : "Розархівувати картку",
"Archive card" : "Архівувати картку",
"Delete card" : "Вилучити картку",
"Move card" : "Пересунути картку",
"Move card to another board" : "Перемістити картку до іншої дошки",
"Select a list" : "Виберіть список",
"seconds ago" : "секунд тому",

View File

@@ -123,10 +123,10 @@
"(group)" : "(група)",
"(circle)" : "(коло)",
"Assign to me" : "Призначити мені",
"Move card" : "Пересунути картку",
"Unarchive card" : "Розархівувати картку",
"Archive card" : "Архівувати картку",
"Delete card" : "Вилучити картку",
"Move card" : "Пересунути картку",
"Move card to another board" : "Перемістити картку до іншої дошки",
"Select a list" : "Виберіть список",
"seconds ago" : "секунд тому",

View File

@@ -121,6 +121,7 @@ OC.L10N.register(
"Undo" : "撤消",
"Deleted cards" : "已删除卡片",
"Share board with a user, group or circle …" : "与一个用户,群组或圈子共享面板...",
"No participants found" : "未找到参与者",
"Board owner" : "面板拥有者",
"(Group)" : "(群组)",
"(Circle)" : "(圈子)",
@@ -171,10 +172,10 @@ OC.L10N.register(
"(group)" : "(组)",
"(circle)" : "(圈子)",
"Assign to me" : "指派给我",
"Move card" : "移动卡片",
"Unarchive card" : "恢复卡片存档",
"Archive card" : "归档卡片",
"Delete card" : "删除卡片",
"Move card" : "移动卡片",
"Move card to another board" : "将卡片移到其他面板",
"seconds ago" : "几秒前",
"All boards" : "全部面板",

View File

@@ -119,6 +119,7 @@
"Undo" : "撤消",
"Deleted cards" : "已删除卡片",
"Share board with a user, group or circle …" : "与一个用户,群组或圈子共享面板...",
"No participants found" : "未找到参与者",
"Board owner" : "面板拥有者",
"(Group)" : "(群组)",
"(Circle)" : "(圈子)",
@@ -169,10 +170,10 @@
"(group)" : "(组)",
"(circle)" : "(圈子)",
"Assign to me" : "指派给我",
"Move card" : "移动卡片",
"Unarchive card" : "恢复卡片存档",
"Archive card" : "归档卡片",
"Delete card" : "删除卡片",
"Move card" : "移动卡片",
"Move card to another board" : "将卡片移到其他面板",
"seconds ago" : "几秒前",
"All boards" : "全部面板",

View File

@@ -55,9 +55,9 @@ OC.L10N.register(
"Update" : "更新",
"(group)" : "(群組)",
"Assign to me" : "分派給我",
"Move card" : "移動卡片",
"Archive card" : "封存卡片",
"Delete card" : "刪除作業",
"Move card" : "移動卡片",
"seconds ago" : "幾秒前",
"Shared with you" : "與您分享",
"Edit board" : "編輯專案",

View File

@@ -53,9 +53,9 @@
"Update" : "更新",
"(group)" : "(群組)",
"Assign to me" : "分派給我",
"Move card" : "移動卡片",
"Archive card" : "封存卡片",
"Delete card" : "刪除作業",
"Move card" : "移動卡片",
"seconds ago" : "幾秒前",
"Shared with you" : "與您分享",
"Edit board" : "編輯專案",

View File

@@ -94,8 +94,8 @@ class CardController extends Controller {
* @param $deletedAt
* @return \OCP\AppFramework\Db\Entity
*/
public function update($id, $title, $stackId, $type, $order, $description, $duedate, $deletedAt) {
return $this->cardService->update($id, $title, $stackId, $type, $order, $description, $this->userId, $duedate, $deletedAt);
public function update($id, $title, $stackId, $type, $order, $description, $duedate, $deletedAt, $dueDone) {
return $this->cardService->update($id, $title, $stackId, $type, $order, $description, $this->userId, $duedate, $deletedAt, null, $dueDone);
}
/**

View File

@@ -97,13 +97,13 @@ class BoardMapper extends DeckMapper implements IPermissionMapper {
// FIXME: One moving to QBMapper we should allow filtering the boards probably by method chaining for additional where clauses
$sql = 'SELECT id, title, owner, color, archived, deleted_at, 0 as shared, last_modified FROM `*PREFIX*deck_boards` WHERE owner = ? AND last_modified > ?';
if (!$includeArchived) {
$sql .= ' AND NOT archived';
$sql .= ' AND NOT archived AND deleted_at = 0';
}
$sql .= ' UNION ' .
'SELECT boards.id, title, owner, color, archived, deleted_at, 1 as shared, last_modified FROM `*PREFIX*deck_boards` as boards ' .
'JOIN `*PREFIX*deck_board_acl` as acl ON boards.id=acl.board_id WHERE acl.participant=? AND acl.type=? AND boards.owner != ? AND last_modified > ?';
if (!$includeArchived) {
$sql .= ' AND NOT archived';
$sql .= ' AND NOT archived AND deleted_at = 0';
}
$entries = $this->findEntities($sql, [$userId, $since, $userId, Acl::PERMISSION_TYPE_USER, $userId, $since], $limit, $offset);
/* @var Board $entry */
@@ -142,7 +142,7 @@ class BoardMapper extends DeckMapper implements IPermissionMapper {
}
$sql .= ')';
if (!$includeArchived) {
$sql .= ' AND NOT archived';
$sql .= ' AND NOT archived AND deleted_at = 0';
}
$entries = $this->findEntities($sql, array_merge([$userId, Acl::PERMISSION_TYPE_GROUP], $groups), $limit, $offset);
/* @var Board $entry */
@@ -174,7 +174,7 @@ class BoardMapper extends DeckMapper implements IPermissionMapper {
}
$sql .= ')';
if (!$includeArchived) {
$sql .= ' AND NOT archived';
$sql .= ' AND NOT archived AND deleted_at = 0';
}
$entries = $this->findEntities($sql, array_merge([$userId, Acl::PERMISSION_TYPE_CIRCLE], $circles), $limit, $offset);
/* @var Board $entry */

View File

@@ -36,17 +36,19 @@ class Card extends RelationalEntity {
protected $lastModified;
protected $lastEditor;
protected $createdAt;
protected $labels;
protected $assignedUsers;
protected $attachments;
protected $attachmentCount;
protected $owner;
protected $order;
protected $archived = false;
protected $duedate;
protected $notified = false;
protected $deletedAt = 0;
protected $dueDone = false;
protected $labels;
protected $assignedUsers;
protected $commentsUnread = 0;
protected $attachments;
protected $attachmentCount = 0;
private $databaseType = 'sqlite';
@@ -64,6 +66,8 @@ class Card extends RelationalEntity {
$this->addType('archived', 'boolean');
$this->addType('notified', 'boolean');
$this->addType('deletedAt', 'integer');
$this->addType('dueDone', 'boolean');
$this->addRelation('labels');
$this->addRelation('assignedUsers');
$this->addRelation('attachments');

View File

@@ -42,7 +42,7 @@ class FTSEvent extends Event {
}
public function getArgument($key) {
if ($this->hasArgument($key)) {
if (isset($this->arguments[$key])) {
return $this->arguments[$key];
}

View File

@@ -0,0 +1,54 @@
<?php
declare(strict_types=1);
namespace OCA\Deck\Migration;
use Closure;
use OCP\DB\ISchemaWrapper;
use OCP\Migration\IOutput;
use OCP\Migration\SimpleMigrationStep;
/**
* Auto-generated migration step: Please modify to your needs!
*/
class Version10200Date20201104190344 extends SimpleMigrationStep {
/**
* @param IOutput $output
* @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @param array $options
*/
public function preSchemaChange(IOutput $output, Closure $schemaClosure, array $options): void {
}
/**
* @param IOutput $output
* @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @param array $options
* @return null|ISchemaWrapper
*/
public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper {
/** @var ISchemaWrapper $schema */
$schema = $schemaClosure();
$table = $schema->getTable('deck_cards');
if (!$table->hasColumn('due_done')) {
$table->addColumn('due_done', 'boolean', [
'notnull' => false,
'default' => false
]);
}
return $schema;
}
/**
* @param IOutput $output
* @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @param array $options
*/
public function postSchemaChange(IOutput $output, Closure $schemaClosure, array $options): void {
}
}

View File

@@ -261,7 +261,7 @@ class CardService {
* @throws \OCP\AppFramework\Db\MultipleObjectsReturnedException
* @throws BadRequestException
*/
public function update($id, $title, $stackId, $type, $order = 0, $description = '', $owner, $duedate = null, $deletedAt = null, $archived = null) {
public function update($id, $title, $stackId, $type, $order = 0, $description = '', $owner, $duedate = null, ?int $deletedAt = null, ?bool $archived = null, ?bool $dueDone = null) {
if (is_numeric($id) === false) {
throw new BadRequestException('card id must be a number');
}
@@ -320,6 +320,9 @@ class CardService {
if ($archived !== null) {
$card->setArchived($archived);
}
if ($dueDone !== null) {
$card->setDueDone($dueDone);
}
// Trigger update events before setting description as it is handled separately
@@ -590,7 +593,7 @@ class CardService {
*/
public function findAllWithDue($userId) {
$cards = $this->cardMapper->findAllWithDue($userId);
return $cards;
}
@@ -602,7 +605,7 @@ class CardService {
*/
public function findAssignedCards($userId) {
$cards = $this->cardMapper->findAssignedCards($userId);
return $cards;
}
}

3466
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -28,35 +28,35 @@
"test:coverage": "jest --coverage"
},
"dependencies": {
"@babel/polyfill": "^7.11.5",
"@babel/runtime": "^7.11.2",
"@babel/polyfill": "^7.12.1",
"@babel/runtime": "^7.12.1",
"@juliushaertl/vue-richtext": "^0.3.3",
"@nextcloud/auth": "^1.3.0",
"@nextcloud/axios": "^1.4.0",
"@nextcloud/dialogs": "^2.0.1",
"@nextcloud/dialogs": "^3.0.0",
"@nextcloud/event-bus": "^1.2.0",
"@nextcloud/files": "^1.1.0",
"@nextcloud/initial-state": "^1.1.2",
"@nextcloud/initial-state": "^1.2.0",
"@nextcloud/l10n": "^1.4.1",
"@nextcloud/moment": "^1.1.1",
"@nextcloud/router": "^1.2.0",
"@nextcloud/vue": "^2.6.8",
"@nextcloud/vue": "^2.8.2",
"@nextcloud/vue-dashboard": "^1.0.1",
"blueimp-md5": "^2.18.0",
"dompurify": "^2.1.1",
"dompurify": "^2.2.0",
"lodash": "^4.17.20",
"markdown-it": "^11.0.1",
"markdown-it": "^12.0.2",
"markdown-it-task-lists": "^2.1.1",
"moment": "^2.29.0",
"moment": "^2.29.1",
"nextcloud-vue-collections": "^0.8.1",
"p-queue": "^6.6.1",
"p-queue": "^6.6.2",
"url-search-params-polyfill": "^8.1.0",
"vue": "^2.6.12",
"vue-at": "^2.5.0-beta.2",
"vue-click-outside": "^1.1.0",
"vue-easymde": "^1.3.0",
"vue-infinite-loading": "^2.4.5",
"vue-router": "^3.4.5",
"vue-router": "^3.4.8",
"vue-smooth-dnd": "^0.8.1",
"vuex": "^3.5.1",
"vuex-router-sync": "^5.0.0"
@@ -68,17 +68,17 @@
"node": ">=10.0.0"
},
"devDependencies": {
"@babel/core": "^7.11.6",
"@babel/core": "^7.12.3",
"@babel/plugin-syntax-dynamic-import": "^7.8.3",
"@babel/preset-env": "^7.11.5",
"@babel/preset-env": "^7.12.1",
"@nextcloud/browserslist-config": "^1.0.0",
"@nextcloud/eslint-config": "^2.1.0",
"@nextcloud/eslint-plugin": "^1.4.0",
"@nextcloud/eslint-plugin": "^1.5.0",
"@nextcloud/webpack-vue-config": "^1.4.1",
"@vue/test-utils": "^1.1.0",
"acorn": "^8.0.3",
"acorn": "^8.0.4",
"babel-eslint": "^10.1.0",
"babel-jest": "^26.3.0",
"babel-jest": "^26.5.2",
"babel-loader": "^8.1.0",
"css-loader": "^4.3.0",
"eslint": "^6.8.0",
@@ -90,27 +90,27 @@
"eslint-plugin-promise": "^4.2.1",
"eslint-plugin-standard": "^4.0.1",
"eslint-plugin-vue": "^6.2.2",
"file-loader": "^6.1.0",
"jest": "^26.4.2",
"file-loader": "^6.1.1",
"jest": "^26.5.3",
"jest-serializer-vue": "^2.0.2",
"minimist": "^1.2.5",
"node-sass": "^4.14.1",
"raw-loader": "^4.0.1",
"sass-loader": "^10.0.2",
"style-loader": "^1.2.1",
"raw-loader": "^4.0.2",
"sass-loader": "^10.0.4",
"style-loader": "^1.3.0",
"stylelint": "^13.7.2",
"stylelint-config-recommended": "^3.0.0",
"stylelint-config-recommended-scss": "^4.2.0",
"stylelint-scss": "^3.18.0",
"stylelint-webpack-plugin": "^2.1.0",
"url-loader": "^4.1.0",
"stylelint-webpack-plugin": "^2.1.1",
"url-loader": "^4.1.1",
"vue-jest": "^3.0.7",
"vue-loader": "^15.9.3",
"vue-template-compiler": "^2.6.12",
"webpack": "^4.44.2",
"webpack-cli": "^3.3.12",
"webpack-dev-server": "^3.11.0",
"webpack-merge": "^5.1.4"
"webpack-merge": "^5.2.0"
},
"jest": {
"moduleFileExtensions": [

View File

@@ -21,11 +21,11 @@
-->
<template>
<div id="content" :class="{ 'nav-hidden': !navShown, 'sidebar-hidden': !sidebarRouterView }">
<AppNavigation v-show="navShown" />
<div id="app-content">
<Content id="content" app-name="deck" :class="{ 'nav-hidden': !navShown, 'sidebar-hidden': !sidebarRouterView }">
<AppNavigation />
<AppContent>
<router-view />
</div>
</AppContent>
<Modal v-if="cardDetailsInModal && $route.params.cardId" :title="t('deck', 'Card details')" @close="hideModal()">
<div class="modal__content modal__card">
@@ -34,15 +34,16 @@
</Modal>
<router-view v-show="!cardDetailsInModal || !$route.params.cardId" name="sidebar" />
</div>
</Content>
</template>
<script>
import { mapState } from 'vuex'
import AppNavigation from './components/navigation/AppNavigation'
import { Modal } from '@nextcloud/vue'
import { Modal, Content, AppContent } from '@nextcloud/vue'
import { BoardApi } from './services/BoardApi'
import { emit, subscribe } from '@nextcloud/event-bus'
const boardApi = new BoardApi()
@@ -51,6 +52,8 @@ export default {
components: {
AppNavigation,
Modal,
Content,
AppContent,
},
data() {
return {
@@ -91,6 +94,15 @@ export default {
this.$store.dispatch('loadBoards')
this.$store.dispatch('loadSharees')
},
mounted() {
// Set navigation to initial state and update in case it gets toggled
emit('toggle-navigation', { open: this.navShown, _initial: true })
this.$nextTick(() => {
subscribe('navigation-toggled', (navState) => {
this.$store.dispatch('toggleNav', navState.open)
})
})
},
methods: {
hideModal() {
this.$router.push({ name: 'board' })
@@ -131,13 +143,6 @@ export default {
}
}
}
</style>
<style lang="scss">
.multiselect {
width: 100%;
}
.modal__card {
min-width: 320px;
@@ -147,3 +152,11 @@ export default {
height: 80vh;
}
</style>
<style lang="scss">
.multiselect {
width: 100%;
}
</style>

View File

@@ -22,17 +22,17 @@
<template>
<div class="controls">
<div id="app-navigation-toggle-custom" class="icon-menu" @click="toggleNav" />
<div v-if="board" class="board-title">
<div v-if="overviewName" class="board-title">
<div class="board-bullet icon-calendar-dark" />
<h2>{{ overviewName }}</h2>
</div>
<div v-else-if="board" class="board-title">
<div :style="{backgroundColor: '#' + board.color}" class="board-bullet" />
<h2><a href="#">{{ board.title }}</a></h2>
<h2>{{ board.title }}</h2>
<p v-if="showArchived">
({{ t('deck', 'Archived cards') }})
</p>
</div>
<div v-if="overviewName" class="board-title">
<h2><a href="#">{{ overviewName }}</a></h2>
</div>
<div v-if="board" class="board-actions">
<div v-if="canManage && !showArchived && !board.archived"
id="stack-add"
@@ -321,6 +321,9 @@ export default {
<style lang="scss" scoped>
.controls {
display: flex;
padding: 3px;
height: 44px;
padding-left: 44px;
.board-title {
display: flex;
@@ -337,7 +340,7 @@ export default {
height: 20px;
border: none;
border-radius: 50%;
background-color: #aaa;
background-color: transparent;
margin: 12px;
margin-left: -4px;
}
@@ -395,6 +398,7 @@ export default {
width: 250px;
max-height: 80vh;
overflow: auto;
padding: 8px;
}
.filter h3 {

View File

@@ -181,7 +181,7 @@ export default {
}
.board {
margin-left: $board-spacing;
padding-left: $board-spacing;
position: relative;
height: calc(100% - 44px);
overflow-x: scroll;

View File

@@ -7,10 +7,19 @@
:options="formatedSharees"
:user-select="true"
label="displayName"
:loading="isLoading || !!isSearching"
:disabled="isLoading"
track-by="multiselectKey"
:internal-search="true"
@input="clickAddAcl"
@search-change="asyncFind" />
@search-change="asyncFind">
<template #noOptions>
{{ isSearching ? t('deck', 'Searching for users, groups and circles …') : t('deck', 'No participants found') }}
</template>
<template #noResult>
{{ isSearching ? t('deck', 'Searching for users, groups and circles …') : t('deck', 'No participants found') }}
</template>
</Multiselect>
<ul
id="shareWithList"
@@ -63,6 +72,7 @@ import { Avatar, Multiselect, Actions, ActionButton, ActionCheckbox } from '@nex
import { CollectionList } from 'nextcloud-vue-collections'
import { mapGetters, mapState } from 'vuex'
import { getCurrentUser } from '@nextcloud/auth'
import { showError } from '@nextcloud/dialogs'
export default {
name: 'SharingTabSidebar',
@@ -83,6 +93,7 @@ export default {
data() {
return {
isLoading: false,
isSearching: false,
addAcl: null,
addAclForAPI: null,
}
@@ -137,13 +148,20 @@ export default {
this.asyncFind('')
},
methods: {
asyncFind(query) {
this.isLoading = true
this.$store.dispatch('loadSharees', query).then(response => {
this.isLoading = false
})
async asyncFind(query) {
// manual debounce to handle async searching more easily and have more control over the loading state
const timestamp = (new Date()).getTime()
if (!this.isSearching || timestamp > this.isSearching + 300) {
this.isSearching = timestamp
await this.$store.dispatch('loadSharees', query)
// only reset searching flag if the most recent search finished
if (this.isSearching === timestamp) {
this.isSearching = false
}
}
},
clickAddAcl() {
async clickAddAcl() {
this.addAclForAPI = {
type: this.addAcl.value.shareType,
participant: this.addAcl.value.shareWith,
@@ -151,7 +169,16 @@ export default {
permissionShare: false,
permissionManage: false,
}
this.$store.dispatch('addAclToCurrentBoard', this.addAclForAPI)
this.isLoading = true
try {
await this.$store.dispatch('addAclToCurrentBoard', this.addAclForAPI)
} catch (e) {
const errorMessage = t('deck', 'Failed to create share with {displayName}', { displayName: this.addAcl.displayName })
console.error(errorMessage, e)
showError(errorMessage)
}
this.addAcl = null
this.isLoading = false
},
clickEditAcl(acl) {
this.addAclForAPI = Object.assign({}, acl)

View File

@@ -162,6 +162,7 @@ export default {
]),
...mapState({
showArchived: state => state.showArchived,
cardDetailsInModal: state => state.cardDetailsInModal,
}),
cardsByStack() {
return this.$store.getters.cardsByStack(this.stack.id).filter((card) => {
@@ -248,7 +249,9 @@ export default {
this.$refs.newCardInput.focus()
this.animate = false
})
this.$router.push({ name: 'card', params: { cardId: newCard.id } })
if (!this.cardDetailsInModal) {
this.$router.push({ name: 'card', params: { cardId: newCard.id } })
}
} catch (e) {
showError('Could not create card: ' + e.response.data.message)
} finally {

View File

@@ -21,11 +21,13 @@
-->
<template>
<AppSidebar v-if="currentBoard && currentCard && copiedCard"
:title="currentCard.title"
<AppSidebar v-if="currentBoard && currentCard"
:title="title"
:subtitle="subtitle"
:title-editable.sync="titleEditable"
@update:title="updateTitle"
:title-editable="titleEditable"
@update:titleEditable="handleUpdateTitleEditable"
@update:title="handleUpdateTitle"
@submit-title="handleSubmitTitle"
@close="closeSidebar">
<template #secondary-actions>
<ActionButton v-if="cardDetailsInModal" icon="icon-menu-sidebar" @click.stop="showModal()">
@@ -41,135 +43,7 @@
:order="0"
:name="t('deck', 'Details')"
icon="icon-home">
<div class="section-wrapper">
<div v-tooltip="t('deck', 'Tags')" class="section-label icon-tag">
<span class="hidden-visually">{{ t('deck', 'Tags') }}</span>
</div>
<div class="section-details">
<Multiselect v-model="assignedLabels"
:multiple="true"
:disabled="!canEdit"
:options="labelsSorted"
:placeholder="t('deck', 'Assign a tag to this card…')"
:taggable="true"
label="title"
track-by="id"
@select="addLabelToCard"
@remove="removeLabelFromCard">
<template #option="scope">
<div :style="{ backgroundColor: '#' + scope.option.color, color: textColor(scope.option.color)}" class="tag">
{{ scope.option.title }}
</div>
</template>
<template #tag="scope">
<div :style="{ backgroundColor: '#' + scope.option.color, color: textColor(scope.option.color)}" class="tag">
{{ scope.option.title }}
</div>
</template>
</Multiselect>
</div>
</div>
<div class="section-wrapper">
<div v-tooltip="t('deck', 'Assign to users')" class="section-label icon-group">
<span class="hidden-visually">{{ t('deck', 'Assign to users/groups/circles') }}</span>
</div>
<div class="section-details">
<Multiselect v-if="canEdit"
v-model="assignedUsers"
:multiple="true"
:options="formatedAssignables"
:user-select="true"
:auto-limit="false"
:placeholder="t('deck', 'Assign a user to this card…')"
label="displayname"
track-by="multiselectKey"
@select="assignUserToCard"
@remove="removeUserFromCard">
<template #tag="scope">
<div class="avatarlist--inline">
<Avatar :user="scope.option.uid"
:display-name="scope.option.displayname"
:size="24"
:is-no-user="scope.option.isNoUser"
:disable-menu="true" />
</div>
</template>
</Multiselect>
<div v-else class="avatar-list--readonly">
<Avatar v-for="option in assignedUsers"
:key="option.primaryKey"
:user="option.uid"
:display-name="option.displayname"
:is-no-user="option.isNoUser"
:size="32" />
</div>
</div>
</div>
<div class="section-wrapper">
<div v-tooltip="t('deck', 'Due date')" class="section-label icon-calendar-dark">
<span class="hidden-visually">{{ t('deck', 'Due date') }}</span>
</div>
<div class="section-details">
<DatetimePicker v-model="duedate"
:placeholder="t('deck', 'Set a due date')"
type="datetime"
:minute-step="5"
:show-second="false"
:lang="lang"
:format="format"
:disabled="saving || !canEdit"
confirm />
<Actions v-if="canEdit">
<ActionButton v-if="copiedCard.duedate" icon="icon-delete" @click="removeDue()">
{{ t('deck', 'Remove due date') }}
</ActionButton>
</Actions>
</div>
</div>
<div class="section-wrapper">
<CollectionList v-if="currentCard.id"
:id="`${currentCard.id}`"
:name="currentCard.title"
type="deck-card" />
</div>
<h5>
{{ t('deck', 'Description') }}
<span v-if="copiedCard.descriptionLastEdit && !descriptionSaving">{{ t('deck', '(Unsaved)') }}</span>
<span v-if="descriptionSaving">{{ t('deck', '(Saving)') }}</span>
<a v-tooltip="t('deck', 'Formatting help')"
href="https://deck.readthedocs.io/en/latest/Markdown/"
target="_blank"
class="icon icon-info" />
<Actions v-if="canEdit">
<ActionButton v-if="!descriptionEditing" icon="icon-rename" @click="showEditor()">
{{ t('deck', 'Edit description') }}
</ActionButton>
<ActionButton v-else icon="icon-toggle" @click="hideEditor()">
{{ t('deck', 'View description') }}
</ActionButton>
</Actions>
<Actions v-if="canEdit">
<ActionButton v-if="descriptionEditing" icon="icon-attach" @click="showAttachmentModal()">
{{ t('deck', 'Add Attachment') }}
</ActionButton>
</Actions>
</h5>
<div v-if="!descriptionEditing"
id="description-preview"
@click="clickedPreview"
v-html="renderedDescription" />
<VueEasymde v-else
:key="copiedCard.id"
ref="markdownEditor"
v-model="copiedCard.description"
:configs="mdeConfig"
@input="updateDescription"
@blur="saveDescription" />
<CardSidebarTabDetails :card="currentCard" />
</AppSidebarTab>
<AppSidebarTab id="attachments"
@@ -194,45 +68,19 @@
icon="icon-activity">
<CardSidebarTabActivity :card="currentCard" />
</AppSidebarTab>
<Modal v-if="modalShow" :title="t('deck', 'Choose attachment')" @close="modalShow=false">
<div class="modal__content">
<h3>{{ t('deck', 'Choose attachment') }}</h3>
<AttachmentList
:card-id="currentCard.id"
:selectable="true"
@selectAttachment="addAttachment" />
</div>
</Modal>
</AppSidebar>
</template>
<script>
import { Avatar, Actions, ActionButton, Multiselect, AppSidebar, AppSidebarTab, DatetimePicker, Modal } from '@nextcloud/vue'
import { ActionButton, AppSidebar, AppSidebarTab } from '@nextcloud/vue'
import { mapState, mapGetters } from 'vuex'
import Color from '../../mixins/color'
import { CollectionList } from 'nextcloud-vue-collections'
import CardSidebarTabDetails from './CardSidebarTabDetails'
import CardSidebarTabAttachments from './CardSidebarTabAttachments'
import CardSidebarTabComments from './CardSidebarTabComments'
import CardSidebarTabActivity from './CardSidebarTabActivity'
import MarkdownIt from 'markdown-it'
import MarkdownItTaskLists from 'markdown-it-task-lists'
import { formatFileSize } from '@nextcloud/files'
import relativeDate from '../../mixins/relativeDate'
import AttachmentList from './AttachmentList'
import { generateUrl } from '@nextcloud/router'
import {
getLocale,
getDayNamesMin,
getFirstDay,
getMonthNamesShort,
} from '@nextcloud/l10n'
import moment from '@nextcloud/moment'
import { showError } from '@nextcloud/dialogs'
const markdownIt = new MarkdownIt({
linkify: true,
})
markdownIt.use(MarkdownItTaskLists, { enabled: true, label: true, labelAfter: true })
import { showError } from '@nextcloud/dialogs'
const capabilities = window.OC.getCapabilities()
@@ -241,20 +89,13 @@ export default {
components: {
AppSidebar,
AppSidebarTab,
Multiselect,
DatetimePicker,
VueEasymde: () => import('vue-easymde/dist/VueEasyMDE.common'),
Actions,
ActionButton,
Avatar,
CollectionList,
CardSidebarTabAttachments,
CardSidebarTabComments,
CardSidebarTabActivity,
Modal,
AttachmentList,
CardSidebarTabDetails,
},
mixins: [Color, relativeDate],
mixins: [relativeDate],
props: {
id: {
type: Number,
@@ -263,41 +104,9 @@ export default {
},
data() {
return {
assignedUsers: null,
addedLabelToCard: null,
copiedCard: null,
assignedLabels: null,
locale: getLocale(),
saving: false,
markdownIt: null,
titleEditable: false,
descriptionEditing: false,
mdeConfig: {
autoDownloadFontAwesome: false,
spellChecker: false,
autofocus: true,
autosave: { enabled: false, uniqueId: 'unique' },
toolbar: false,
},
descriptionSaveTimeout: null,
descriptionSaving: false,
titleEditing: '',
hasActivity: capabilities && capabilities.activity,
modalShow: false,
lang: {
days: getDayNamesMin(),
months: getMonthNamesShort(),
formatLocale: {
firstDayOfWeek: getFirstDay() === 0 ? 7 : getFirstDay(),
},
placeholder: {
date: t('deck', 'Select Date'),
},
},
format: {
stringify: this.stringify,
parse: this.parse,
},
}
},
computed: {
@@ -306,23 +115,8 @@ export default {
cardDetailsInModal: state => state.cardDetailsInModal,
}),
...mapGetters(['canEdit', 'assignables']),
attachments() {
return [...this.$store.getters.attachmentsByCard(this.id)].sort((a, b) => b.id - a.id)
},
mimetypeForAttachment() {
return (mimetype) => {
const url = OC.MimeType.getIconUrl(mimetype)
const styles = {
'background-image': `url("${url}")`,
}
return styles
}
},
attachmentUrl() {
return (attachment) => generateUrl(`/apps/deck/cards/${attachment.cardId}/attachment/${attachment.id}`)
},
formattedFileSize() {
return (filesize) => formatFileSize(filesize)
title() {
return this.titleEditable ? this.titleEditing : this.currentCard.title
},
currentCard() {
return this.$store.getters.cardById(this.id)
@@ -330,214 +124,30 @@ export default {
subtitle() {
return t('deck', 'Modified') + ': ' + this.relativeDate(this.currentCard.lastModified * 1000) + ' ' + t('deck', 'Created') + ': ' + this.relativeDate(this.currentCard.createdAt * 1000)
},
formatedAssignables() {
return this.assignables.map(item => {
const assignable = {
...item,
user: item.primaryKey,
displayName: item.displayname,
icon: 'icon-user',
isNoUser: false,
multiselectKey: item.type + ':' + item.uid,
}
if (item.type === 1) {
assignable.icon = 'icon-group'
assignable.isNoUser = true
}
if (item.type === 7) {
assignable.icon = 'icon-circles'
assignable.isNoUser = true
}
return assignable
})
},
duedate: {
get() {
return this.currentCard.duedate ? new Date(this.currentCard.duedate) : null
},
async set(val) {
this.saving = true
await this.$store.dispatch('updateCardDue', {
...this.copiedCard,
duedate: val ? (new Date(val)).toISOString() : null,
})
this.saving = false
},
},
renderedDescription() {
return markdownIt.render(this.copiedCard.description || '')
},
labelsSorted() {
return [...this.currentBoard.labels].sort((a, b) => (a.title < b.title) ? -1 : 1)
},
},
watch: {
currentCard() {
this.initialize()
},
},
mounted() {
this.initialize()
},
methods: {
async initialize() {
if (!this.currentCard) {
return
}
if (this.copiedCard) {
await this.saveDescription()
}
this.copiedCard = JSON.parse(JSON.stringify(this.currentCard))
this.assignedLabels = [...this.currentCard.labels].sort((a, b) => (a.title < b.title) ? -1 : 1)
if (this.currentCard.assignedUsers && this.currentCard.assignedUsers.length > 0) {
this.assignedUsers = this.currentCard.assignedUsers.map((item) => ({
...item.participant,
isNoUser: item.participant.type !== 0,
multiselectKey: item.participant.type + ':' + item.participant.primaryKey,
}))
} else {
this.assignedUsers = []
}
this.desc = this.currentCard.description
},
showEditor() {
if (!this.canEdit) {
return
}
this.descriptionEditing = true
},
hideEditor() {
this.descriptionEditing = false
},
showAttachmentModal() {
this.modalShow = true
},
addAttachment(attachment) {
const descString = this.$refs.markdownEditor.easymde.value()
let embed = ''
if (attachment.extendedData.mimetype.includes('image')) {
embed = '!'
}
const attachmentString = embed + '[📎 ' + attachment.data + '](' + this.attachmentUrl(attachment) + ')'
this.$refs.markdownEditor.easymde.value(descString + '\n' + attachmentString)
this.modalShow = false
},
clickedPreview(e) {
if (e.target.getAttribute('type') === 'checkbox') {
const clickedIndex = [...document.querySelector('#description-preview').querySelectorAll('input')].findIndex((li) => li.id === e.target.id)
const reg = /\[(X|\s|_|-)\]/ig
let nth = 0
const updatedDescription = this.copiedCard.description.replace(reg, (match, i, original) => {
let result = match
if ('' + nth++ === '' + clickedIndex) {
if (match.match(/^\[\s\]/i)) {
result = match.replace(/\[\s\]/i, '[x]')
}
if (match.match(/^\[x\]/i)) {
result = match.replace(/\[x\]/i, '[ ]')
}
return result
}
return match
})
this.$set(this.copiedCard, 'description', updatedDescription)
this.$store.dispatch('updateCardDesc', this.copiedCard)
handleUpdateTitleEditable(value) {
this.titleEditable = value
if (value) {
this.titleEditing = this.currentCard.title
}
},
setDue() {
this.$store.dispatch('updateCardDue', this.copiedCard)
handleUpdateTitle(value) {
this.titleEditing = value
},
removeDue() {
this.copiedCard.duedate = null
this.$store.dispatch('updateCardDue', this.copiedCard)
},
async saveDescription() {
if (!Object.prototype.hasOwnProperty.call(this.copiedCard, 'descriptionLastEdit') || this.descriptionSaving) {
return
}
this.descriptionSaving = true
await this.$store.dispatch('updateCardDesc', this.copiedCard)
delete this.copiedCard.descriptionLastEdit
this.descriptionSaving = false
},
updateTitle(newTitle) {
if (newTitle.trim === '') {
handleSubmitTitle(value) {
if (value.trim === '') {
showError(t('deck', 'The title cannot be empty.'))
return
}
this.$set(this.copiedCard, 'title', newTitle)
this.$store.dispatch('updateCardTitle', this.copiedCard).then(() => {
this.titleEditable = false
})
},
updateDescription() {
this.copiedCard.descriptionLastEdit = Date.now()
clearTimeout(this.descriptionSaveTimeout)
this.descriptionSaveTimeout = setTimeout(async() => {
await this.saveDescription()
}, 2500)
this.titleEditable = false
this.$store.dispatch('updateCardTitle', { ...this.currentCard, title: this.titleEditing })
},
closeSidebar() {
this.$router.push({ name: 'board' })
},
assignUserToCard(user) {
this.$store.dispatch('assignCardToUser', {
card: this.copiedCard,
assignee: {
userId: user.uid,
type: user.type,
},
})
},
removeUserFromCard(user) {
this.$store.dispatch('removeUserFromCard', {
card: this.copiedCard,
assignee: {
userId: user.uid,
type: user.type,
},
})
},
addLabelToCard(newLabel) {
this.copiedCard.labels.push(newLabel)
const data = {
card: this.copiedCard,
labelId: newLabel.id,
}
this.$store.dispatch('addLabel', data)
},
removeLabelFromCard(removedLabel) {
const removeIndex = this.copiedCard.labels.findIndex((label) => {
return label.id === removedLabel.id
})
if (removeIndex !== -1) {
this.copiedCard.labels.splice(removeIndex, 1)
}
const data = {
card: this.copiedCard,
labelId: removedLabel.id,
}
this.$store.dispatch('removeLabel', data)
},
stringify(date) {
return moment(date).locale(this.locale).format('LLL')
},
parse(value) {
return moment(value).toDate()
},
showModal() {
this.$store.dispatch('setCardDetailsInModal', true)
},
@@ -545,40 +155,21 @@ export default {
}
</script>
<style>
@import '~easymde/dist/easymde.min.css';
.vue-easymde, .CodeMirror {
border: none;
margin: 0;
padding: 0;
background-color: var(--color-main-background);
color: var(--color-main-text);
}
.editor-preview,
.editor-statusbar {
display: none;
}
#app-sidebar .app-sidebar-header__desc h4 {
font-size: 12px !important;
}
</style>
<style lang="scss" scoped>
// FIXME: Obivously we should at some point not randomly reuse the sidebar component
// since this is not oficially supported
.modal__card .app-sidebar {
$modal-padding: 14px;
border: 0;
min-width: 100%;
min-width: calc(100% - #{$modal-padding*2});
position: relative;
top: 0;
left: 0;
right: 0;
max-width: 100%;
max-height: 100%;
max-width: calc(100% - #{$modal-padding*2});
padding: 14px;
max-height: calc(100% - #{$modal-padding*2});
&::v-deep {
.app-sidebar-header {
position: sticky;
@@ -596,6 +187,8 @@ export default {
section {
min-height: auto;
display: flex;
flex-direction: column;
}
#emptycontent, .emptycontent {
@@ -604,128 +197,4 @@ export default {
}
}
h5 {
border-bottom: 1px solid var(--color-border);
margin-top: 20px;
margin-bottom: 5px;
color: var(--color-text-maxcontrast);
.icon-info {
display: inline-block;
width: 32px;
height: 16px;
float: right;
opacity: .7;
}
.icon-attach {
background-size: 16px;
float: right;
margin-top: -14px;
opacity: .7;
}
.icon-toggle, .icon-rename {
float: right;
margin-top: -14px;
}
}
aside::v-deep section {
display: flex;
flex-direction: column;
}
.section-wrapper {
display: flex;
max-width: 100%;
margin-top: 10px;
.section-label {
background-position: 0px center;
width: 28px;
margin-left: 9px;
flex-shrink: 0;
}
.section-details {
flex-grow: 1;
button.action-item--single {
margin-top: -6px;
}
}
}
.tag {
flex-grow: 0;
flex-shrink: 1;
overflow: hidden;
padding: 0px 5px;
border-radius: 15px;
font-size: 85%;
margin-right: 3px;
}
.avatarLabel {
padding: 6px
}
.section-details::v-deep .multiselect__tags-wrap {
flex-wrap: wrap;
}
.avatar-list--readonly .avatardiv {
margin-right: 3px;
}
.avatarlist--inline {
display: flex;
align-items: center;
margin-right: 3px;
.avatarLabel {
padding: 0;
}
}
.multiselect::v-deep .multiselect__tags-wrap {
z-index: 2;
}
.multiselect.multiselect--active::v-deep .multiselect__tags-wrap {
z-index: 0;
}
#description-preview {
min-height: 100px;
&::v-deep {
@import './../../css/markdown';
}
&::v-deep input {
min-height: auto;
}
&::v-deep a {
text-decoration: underline;
}
}
.modal__content {
width: 25vw;
min-width: 250px;
min-height: 120px;
margin: 20px;
padding-bottom: 20px;
display: flex;
flex-direction: column;
&::v-deep .attachment-list {
flex-shrink: 1;
overflow: scroll;
max-height: 50vh;
}
}
</style>

View File

@@ -0,0 +1,379 @@
<!--
- @copyright Copyright (c) 2020 Julius Härtl <jus@bitgrid.net>
-
- @author Julius Härtl <jus@bitgrid.net>
-
- @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/>.
-
-->
<template>
<div v-if="copiedCard">
<div class="section-wrapper">
<div v-tooltip="t('deck', 'Tags')" class="section-label icon-tag">
<span class="hidden-visually">{{ t('deck', 'Tags') }}</span>
</div>
<div class="section-details">
<Multiselect v-model="assignedLabels"
:multiple="true"
:disabled="!canEdit"
:options="labelsSorted"
:placeholder="t('deck', 'Assign a tag to this card…')"
:taggable="true"
label="title"
track-by="id"
@select="addLabelToCard"
@remove="removeLabelFromCard">
<template #option="scope">
<div :style="{ backgroundColor: '#' + scope.option.color, color: textColor(scope.option.color)}" class="tag">
{{ scope.option.title }}
</div>
</template>
<template #tag="scope">
<div :style="{ backgroundColor: '#' + scope.option.color, color: textColor(scope.option.color)}" class="tag">
{{ scope.option.title }}
</div>
</template>
</Multiselect>
</div>
</div>
<div class="section-wrapper">
<div v-tooltip="t('deck', 'Assign to users')" class="section-label icon-group">
<span class="hidden-visually">{{ t('deck', 'Assign to users/groups/circles') }}</span>
</div>
<div class="section-details">
<Multiselect v-if="canEdit"
v-model="assignedUsers"
:multiple="true"
:options="formatedAssignables"
:user-select="true"
:auto-limit="false"
:placeholder="t('deck', 'Assign a user to this card…')"
label="displayname"
track-by="multiselectKey"
@select="assignUserToCard"
@remove="removeUserFromCard">
<template #tag="scope">
<div class="avatarlist--inline">
<Avatar :user="scope.option.uid"
:display-name="scope.option.displayname"
:size="24"
:is-no-user="scope.option.isNoUser"
:disable-menu="true" />
</div>
</template>
</Multiselect>
<div v-else class="avatar-list--readonly">
<Avatar v-for="option in assignedUsers"
:key="option.primaryKey"
:user="option.uid"
:display-name="option.displayname"
:is-no-user="option.isNoUser"
:size="32" />
</div>
</div>
</div>
<div class="section-wrapper">
<div v-tooltip="t('deck', 'Due date')" class="section-label icon-calendar-dark">
<span class="hidden-visually">{{ t('deck', 'Due date') }}</span>
</div>
<div class="section-details">
<DatetimePicker v-model="duedate"
:placeholder="t('deck', 'Set a due date')"
type="datetime"
:minute-step="5"
:show-second="false"
:lang="lang"
:formatter="format"
:disabled="saving || !canEdit"
confirm />
<Actions v-if="canEdit">
<ActionButton v-if="copiedCard.duedate" icon="icon-delete" @click="removeDue()">
{{ t('deck', 'Remove due date') }}
</ActionButton>
</Actions>
</div>
</div>
<div class="section-wrapper">
<CollectionList v-if="card.id"
:id="`${card.id}`"
:name="card.title"
type="deck-card" />
</div>
<Description :card="card" />
</div>
</template>
<script>
import { mapState, mapGetters } from 'vuex'
import moment from '@nextcloud/moment'
import { Avatar, Actions, ActionButton, Multiselect, DatetimePicker } from '@nextcloud/vue'
import { CollectionList } from 'nextcloud-vue-collections'
import Color from '../../mixins/color'
import {
getLocale,
getDayNamesMin,
getFirstDay,
getMonthNamesShort,
} from '@nextcloud/l10n'
import Description from './Description'
export default {
name: 'CardSidebarTabDetails',
components: {
Description,
Multiselect,
DatetimePicker,
Actions,
ActionButton,
Avatar,
CollectionList,
},
mixins: [Color],
props: {
card: {
type: Object,
default: null,
},
},
data() {
return {
saving: false,
assignedUsers: null,
addedLabelToCard: null,
copiedCard: null,
assignedLabels: null,
locale: getLocale(),
lang: {
days: getDayNamesMin(),
months: getMonthNamesShort(),
formatLocale: {
firstDayOfWeek: getFirstDay() === 0 ? 7 : getFirstDay(),
},
placeholder: {
date: t('deck', 'Select Date'),
},
},
format: {
stringify: this.stringify,
parse: this.parse,
},
}
},
computed: {
...mapState({
currentBoard: state => state.currentBoard,
cardDetailsInModal: state => state.cardDetailsInModal,
}),
...mapGetters(['canEdit', 'assignables']),
formatedAssignables() {
return this.assignables.map(item => {
const assignable = {
...item,
user: item.primaryKey,
displayName: item.displayname,
icon: 'icon-user',
isNoUser: false,
multiselectKey: item.type + ':' + item.uid,
}
if (item.type === 1) {
assignable.icon = 'icon-group'
assignable.isNoUser = true
}
if (item.type === 7) {
assignable.icon = 'icon-circles'
assignable.isNoUser = true
}
return assignable
})
},
duedate: {
get() {
return this.card.duedate ? new Date(this.card.duedate) : null
},
async set(val) {
this.saving = true
await this.$store.dispatch('updateCardDue', {
...this.copiedCard,
duedate: val ? (new Date(val)).toISOString() : null,
})
this.saving = false
},
},
labelsSorted() {
return [...this.currentBoard.labels].sort((a, b) => (a.title < b.title) ? -1 : 1)
},
},
watch: {
card() {
this.initialize()
},
},
mounted() {
this.initialize()
},
methods: {
async initialize() {
if (!this.card) {
return
}
this.copiedCard = JSON.parse(JSON.stringify(this.card))
this.assignedLabels = [...this.card.labels].sort((a, b) => (a.title < b.title) ? -1 : 1)
if (this.card.assignedUsers && this.card.assignedUsers.length > 0) {
this.assignedUsers = this.card.assignedUsers.map((item) => ({
...item.participant,
isNoUser: item.participant.type !== 0,
multiselectKey: item.participant.type + ':' + item.participant.primaryKey,
}))
} else {
this.assignedUsers = []
}
},
setDue() {
this.$store.dispatch('updateCardDue', this.copiedCard)
},
removeDue() {
this.copiedCard.duedate = null
this.$store.dispatch('updateCardDue', this.copiedCard)
},
assignUserToCard(user) {
this.$store.dispatch('assignCardToUser', {
card: this.copiedCard,
assignee: {
userId: user.uid,
type: user.type,
},
})
},
removeUserFromCard(user) {
this.$store.dispatch('removeUserFromCard', {
card: this.copiedCard,
assignee: {
userId: user.uid,
type: user.type,
},
})
},
addLabelToCard(newLabel) {
this.copiedCard.labels.push(newLabel)
const data = {
card: this.copiedCard,
labelId: newLabel.id,
}
this.$store.dispatch('addLabel', data)
},
removeLabelFromCard(removedLabel) {
const removeIndex = this.copiedCard.labels.findIndex((label) => {
return label.id === removedLabel.id
})
if (removeIndex !== -1) {
this.copiedCard.labels.splice(removeIndex, 1)
}
const data = {
card: this.copiedCard,
labelId: removedLabel.id,
}
this.$store.dispatch('removeLabel', data)
},
stringify(date) {
return moment(date).locale(this.locale).format('LLL')
},
parse(value) {
return moment(value).toDate()
},
},
}
</script>
<style lang="scss" scoped>
.section-wrapper {
display: flex;
max-width: 100%;
margin-top: 10px;
.section-label {
background-position: 0px center;
width: 28px;
margin-left: 9px;
flex-shrink: 0;
}
.section-details {
flex-grow: 1;
button.action-item--single {
margin-top: -6px;
}
}
}
.tag {
flex-grow: 0;
flex-shrink: 1;
overflow: hidden;
padding: 0px 5px;
border-radius: 15px;
font-size: 85%;
margin-right: 3px;
}
.avatarLabel {
padding: 6px
}
.section-details::v-deep .multiselect__tags-wrap {
flex-wrap: wrap;
}
.avatar-list--readonly .avatardiv {
margin-right: 3px;
}
.avatarlist--inline {
display: flex;
align-items: center;
margin-right: 3px;
.avatarLabel {
padding: 0;
}
}
.multiselect::v-deep .multiselect__tags-wrap {
z-index: 2;
}
.multiselect.multiselect--active::v-deep .multiselect__tags-wrap {
z-index: 0;
}
</style>

View File

@@ -0,0 +1,292 @@
<!--
- @copyright Copyright (c) 2020 Julius Härtl <jus@bitgrid.net>
-
- @author Julius Härtl <jus@bitgrid.net>
-
- @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/>.
-
-->
<template>
<div>
<h5>
{{ t('deck', 'Description') }}
<span v-if="descriptionLastEdit && !descriptionSaving">{{ t('deck', '(Unsaved)') }}</span>
<span v-if="descriptionSaving">{{ t('deck', '(Saving)') }}</span>
<a v-tooltip="t('deck', 'Formatting help')"
href="https://deck.readthedocs.io/en/latest/Markdown/"
target="_blank"
class="icon icon-info" />
<Actions v-if="canEdit">
<ActionButton v-if="!descriptionEditing" icon="icon-rename" @click="showEditor()">
{{ t('deck', 'Edit description') }}
</ActionButton>
<ActionButton v-else icon="icon-toggle" @click="hideEditor()">
{{ t('deck', 'View description') }}
</ActionButton>
</Actions>
<Actions v-if="canEdit">
<ActionButton v-if="descriptionEditing" icon="icon-attach" @click="showAttachmentModal()">
{{ t('deck', 'Add Attachment') }}
</ActionButton>
</Actions>
</h5>
<div v-if="!descriptionEditing"
id="description-preview"
@click="clickedPreview"
v-html="renderedDescription" />
<VueEasymde v-else
:key="card.id"
ref="markdownEditor"
v-model="description"
:configs="mdeConfig"
@input="updateDescription"
@blur="saveDescription" />
<Modal v-if="modalShow" :title="t('deck', 'Choose attachment')" @close="modalShow=false">
<div class="modal__content">
<h3>{{ t('deck', 'Choose attachment') }}</h3>
<AttachmentList
:card-id="card.id"
:selectable="true"
@selectAttachment="addAttachment" />
</div>
</Modal>
</div>
</template>
<script>
import MarkdownIt from 'markdown-it'
import MarkdownItTaskLists from 'markdown-it-task-lists'
import AttachmentList from './AttachmentList'
import { Actions, ActionButton, Modal } from '@nextcloud/vue'
import { formatFileSize } from '@nextcloud/files'
import { generateUrl } from '@nextcloud/router'
import { mapState, mapGetters } from 'vuex'
const markdownIt = new MarkdownIt({
linkify: true,
})
markdownIt.use(MarkdownItTaskLists, { enabled: true, label: true, labelAfter: true })
export default {
name: 'Description',
components: {
VueEasymde: () => import('vue-easymde/dist/VueEasyMDE.common'),
Actions,
ActionButton,
Modal,
AttachmentList,
},
props: {
card: {
type: Object,
default: null,
},
},
data() {
return {
description: '',
markdownIt: null,
descriptionEditing: false,
mdeConfig: {
autoDownloadFontAwesome: false,
spellChecker: false,
autofocus: true,
autosave: { enabled: false, uniqueId: 'unique' },
toolbar: false,
},
descriptionSaveTimeout: null,
descriptionSaving: false,
descriptionLastEdit: 0,
modalShow: false,
}
},
computed: {
...mapState({
currentBoard: state => state.currentBoard,
cardDetailsInModal: state => state.cardDetailsInModal,
}),
...mapGetters(['canEdit']),
attachments() {
return [...this.$store.getters.attachmentsByCard(this.id)].sort((a, b) => b.id - a.id)
},
mimetypeForAttachment() {
return (mimetype) => {
const url = OC.MimeType.getIconUrl(mimetype)
const styles = {
'background-image': `url("${url}")`,
}
return styles
}
},
attachmentUrl() {
return (attachment) => generateUrl(`/apps/deck/cards/${attachment.cardId}/attachment/${attachment.id}`)
},
formattedFileSize() {
return (filesize) => formatFileSize(filesize)
},
renderedDescription() {
return markdownIt.render(this.card.description || '')
},
},
methods: {
showEditor() {
if (!this.canEdit) {
return
}
this.descriptionEditing = true
this.description = this.card.description
},
hideEditor() {
this.descriptionEditing = false
},
showAttachmentModal() {
this.modalShow = true
},
addAttachment(attachment) {
const descString = this.$refs.markdownEditor.easymde.value()
let embed = ''
if (attachment.extendedData.mimetype.includes('image')) {
embed = '!'
}
const attachmentString = embed + '[📎 ' + attachment.data + '](' + this.attachmentUrl(attachment) + ')'
this.$refs.markdownEditor.easymde.value(descString + '\n' + attachmentString)
this.modalShow = false
},
clickedPreview(e) {
if (e.target.getAttribute('type') === 'checkbox') {
const clickedIndex = [...document.querySelector('#description-preview').querySelectorAll('input')].findIndex((li) => li.id === e.target.id)
const reg = /\[(X|\s|_|-)\]/ig
let nth = 0
const updatedDescription = this.description.replace(reg, (match, i, original) => {
let result = match
if ('' + nth++ === '' + clickedIndex) {
if (match.match(/^\[\s\]/i)) {
result = match.replace(/\[\s\]/i, '[x]')
}
if (match.match(/^\[x\]/i)) {
result = match.replace(/\[x\]/i, '[ ]')
}
return result
}
return match
})
this.$store.dispatch('updateCardDesc', { ...this.card, description: updatedDescription })
}
},
async saveDescription() {
if (this.descriptionLastEdit === 0 || this.descriptionSaving) {
return
}
this.descriptionSaving = true
await this.$store.dispatch('updateCardDesc', { ...this.card, description: this.description })
this.descriptionLastEdit = 0
this.descriptionSaving = false
},
updateDescription() {
this.descriptionLastEdit = Date.now()
clearTimeout(this.descriptionSaveTimeout)
this.descriptionSaveTimeout = setTimeout(async() => {
await this.saveDescription()
}, 2500)
},
},
}
</script>
<style lang="scss" scoped>
.modal__content {
width: 25vw;
min-width: 250px;
min-height: 120px;
margin: 20px;
padding-bottom: 20px;
display: flex;
flex-direction: column;
&::v-deep .attachment-list {
flex-shrink: 1;
overflow: scroll;
max-height: 50vh;
}
}
#description-preview {
min-height: 100px;
&::v-deep {
@import './../../css/markdown';
}
&::v-deep input {
min-height: auto;
}
&::v-deep a {
text-decoration: underline;
}
}
h5 {
border-bottom: 1px solid var(--color-border);
margin-top: 20px;
margin-bottom: 5px;
color: var(--color-text-maxcontrast);
.icon-info {
display: inline-block;
width: 32px;
height: 16px;
float: right;
opacity: .7;
}
.icon-attach {
background-size: 16px;
float: right;
margin-top: -14px;
opacity: .7;
}
.icon-toggle, .icon-rename {
float: right;
margin-top: -14px;
}
}
</style>
<style>
@import '~easymde/dist/easymde.min.css';
.vue-easymde, .CodeMirror {
border: none;
margin: 0;
padding: 0;
background-color: var(--color-main-background);
color: var(--color-main-text);
}
.editor-preview,
.editor-statusbar {
display: none;
}
#app-sidebar .app-sidebar-header__desc h4 {
font-size: 12px !important;
}
</style>

View File

@@ -144,17 +144,19 @@ export default {
}
}
$avatar-offset: 12px;
.avatar-list {
float: right;
display: inline-flex;
padding-right: 8px;
padding-right: $avatar-offset;
flex-direction: row-reverse;
.avatardiv,
/deep/ .avatardiv {
width: 36px;
height: 36px;
box-sizing: content-box !important;
margin-right: -12px;
margin-right: -$avatar-offset;
transition: margin-right 0.2s ease-in-out;
&.icon-more {

View File

@@ -121,10 +121,6 @@ export default {
}
}
.card:not(.card__editable) .avatars {
margin-right: 10px;
}
.fade-enter-active, .fade-leave-active {
transition: opacity .125s;
}

View File

@@ -31,7 +31,7 @@
class="card"
@click="openCard">
<div class="card-upper">
<h3 v-if="isArchived || showArchived || !canEdit">
<h3 v-if="compactMode || isArchived || showArchived || !canEdit">
{{ card.title }}
</h3>
<h3 v-else-if="!editing">
@@ -41,6 +41,7 @@
<form v-if="editing"
v-click-outside="cancelEdit"
class="dragDisabled"
@click.stop
@keyup.esc="cancelEdit"
@submit.prevent="finishedEdit(card)">
<input v-model="copiedCard.title"
@@ -59,9 +60,9 @@
name="zoom"
tag="ul"
class="labels"
@click="openCard">
@click.stop="openCard">
<li v-for="label in labelsSorted" :key="label.id" :style="labelStyle(label)">
<span @click="applyLabelFilter(label)">{{ label.title }}</span>
<span @click.stop="applyLabelFilter(label)">{{ label.title }}</span>
</li>
</transition-group>
<div v-show="!compactMode" class="card-controls compact-item" @click="openCard">
@@ -115,10 +116,10 @@ export default {
]),
canEdit() {
if (this.currentBoard) {
return this.$store.getters.canEdit
return !this.currentBoard.archived && this.$store.getters.canEdit
}
const board = this.$store.getters.boards.find((item) => item.id === this.card.boardId)
return board ? board.permissions.PERMISSION_EDIT : false
return board ? !board.archived && board.permissions.PERMISSION_EDIT : false
},
card() {
return this.item ? this.item : this.$store.getters.cardById(this.id)
@@ -171,6 +172,10 @@ export default {
background-color: var(--color-main-background);
margin-bottom: $card-spacing;
&::v-deep * {
cursor: pointer;
}
body.dark &, body.theme--dark & {
border: 2px solid var(--color-border);
}
@@ -195,7 +200,7 @@ export default {
margin: 12px $card-padding;
flex-grow: 1;
font-size: 100%;
overflow-x: hidden;
overflow: hidden;
word-wrap: break-word;
padding-left: 4px;
span {
@@ -212,11 +217,16 @@ export default {
.card-controls {
display: flex;
margin-left: $card-padding;
margin-right: $card-padding;
& > div {
display: flex;
max-height: 44px;
}
}
&.card__editable .card-controls {
margin-right: 0;
}
}
.duedate {

View File

@@ -24,24 +24,45 @@
<div v-if="card">
<div @click.stop.prevent>
<Actions v-if="canEdit && !isArchived">
<ActionButton v-if="showArchived === false && !isCurrentUserAssigned" icon="icon-user" @click="assignCardToMe()">
<ActionButton v-if="showArchived === false && !isCurrentUserAssigned"
icon="icon-user"
:close-after-click="true"
@click="assignCardToMe()">
{{ t('deck', 'Assign to me') }}
</ActionButton>
<ActionButton v-if="showArchived === false && isCurrentUserAssigned" icon="icon-user" @click="unassignCardFromMe()">
<ActionButton v-if="showArchived === false && isCurrentUserAssigned"
icon="icon-user"
:close-after-click="true"
@click="unassignCardFromMe()">
{{ t('deck', 'Unassign myself') }}
</ActionButton>
<ActionButton icon="icon-archive" @click="archiveUnarchiveCard()">
{{ showArchived ? t('deck', 'Unarchive card') : t('deck', 'Archive card') }}
<ActionButton v-if="showArchived === false && card.duedate && !card.dueDone"
icon="icon-checkmark"
:close-after-click="true"
@click="toggleDoneState(true)">
{{ t('deck', 'Mark card as done') }}
</ActionButton>
<ActionButton v-if="showArchived === false" icon="icon-delete" @click="deleteCard()">
{{ t('deck', 'Delete card') }}
<ActionButton v-if="showArchived === false && card.duedate && card.dueDone"
icon="icon-checkmark"
:close-after-click="true"
@click="toggleDoneState(false)">
{{ t('deck', 'Mark card as pending') }}
</ActionButton>
<ActionButton icon="icon-external" @click.stop="modalShow=true">
<ActionButton icon="icon-external" :close-after-click="true" @click.stop="modalShow=true">
{{ t('deck', 'Move card') }}
</ActionButton>
<ActionButton icon="icon-settings-dark" @click="openCard">
<ActionButton icon="icon-settings-dark" :close-after-click="true" @click="openCard">
{{ t('deck', 'Card details') }}
</ActionButton>
<ActionButton icon="icon-archive" :close-after-click="true" @click="archiveUnarchiveCard()">
{{ showArchived ? t('deck', 'Unarchive card') : t('deck', 'Archive card') }}
</ActionButton>
<ActionButton v-if="showArchived === false"
icon="icon-delete"
:close-after-click="true"
@click="deleteCard()">
{{ t('deck', 'Delete card') }}
</ActionButton>
</Actions>
</div>
<Modal v-if="modalShow" :title="t('deck', 'Move card to another board')" @close="modalShow=false">
@@ -108,7 +129,7 @@ export default {
return this.$store.getters.canEdit
}
const board = this.$store.getters.boards.find((item) => item.id === this.card.boardId)
return board.permissions.PERMISSION_EDIT
return !!board?.permissions?.PERMISSION_EDIT
},
isBoardAndStackChoosen() {
if (this.selectedBoard === '' || this.selectedStack === '') {
@@ -154,6 +175,9 @@ export default {
},
})
},
toggleDoneState(state) {
this.$store.dispatch('updateCardDueDone', { ...this.card, dueDone: state })
},
moveCard() {
this.copiedCard = Object.assign({}, this.card)
this.copiedCard.stackId = this.selectedStack.id

View File

@@ -23,8 +23,8 @@
<template>
<div v-if="card" class="duedate">
<transition name="zoom">
<div v-if="card.duedate" :class="dueIcon">
<span>{{ relativeDate }}</span>
<div v-if="card.duedate" v-tooltip="card.dueDone ? relativeDate : null" :class="dueIcon">
<span v-if="!card.dueDone">{{ relativeDate }}</span>
</div>
</transition>
</div>
@@ -45,15 +45,15 @@ export default {
dueIcon() {
const days = Math.floor(moment(this.card.duedate).diff(this.$root.time, 'seconds') / 60 / 60 / 24)
if (days < 0) {
return 'icon-calendar due icon overdue'
return `due icon ${!this.card.dueDone ? 'icon-calendar overdue' : 'icon-checkmark'}`
}
if (days === 0) {
return 'icon-calendar-dark due icon now'
return `due icon ${!this.card.dueDone ? 'icon-calendar-dark now' : 'icon-checkmark'}`
}
if (days === 1) {
return 'icon-calendar-dark due icon next'
return `due icon ${!this.card.dueDone ? 'con-calendar-dark next' : 'icon-checkmark'}`
}
return 'icon-calendar-dark due icon'
return `due icon ${!this.card.dueDone ? 'icon-calendar-dark' : 'icon-checkmark'}`
},
relativeDate() {
const diff = moment(this.$root.time).diff(this.card.duedate, 'seconds')
@@ -88,6 +88,10 @@ export default {
background-size: contain;
}
&.icon-checkmark {
width: 20px;
}
&.overdue {
background-color: var(--color-error);
color: var(--color-primary-text);

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