Compare commits

...
223 Commits
Author SHA1 Message Date
Lauri Ojansivu 0b2cdc4d56 v7.63 2024-11-16 21:37:58 +02:00
Lauri Ojansivu 92af6f71d9 Updated scaling docs.
Thanks to xet7 !
2024-11-16 21:36:35 +02:00
Lauri Ojansivu 8879b8498f Updated translations. 2024-11-16 21:19:04 +02:00
Lauri Ojansivu ad7e0e0bf9 Updated ChangeLog. 2024-11-16 21:17:37 +02:00
Lauri Ojansivu edb7398295 Revert adding more stack size.
Thanks to xet7 !
2024-11-16 21:16:30 +02:00
Lauri Ojansivu cfca28e25a Updated translations. 2024-11-16 21:00:46 +02:00
Lauri Ojansivu a811e22f95 Updated ChangeLog. 2024-11-16 20:53:41 +02:00
Lauri Ojansivu fbb2e6e261 Merge pull request #5578 from NadavTasher/feature/various-style-improvements
Sidebar style overhaul - absolute positioning, weird style fixes, disable sidebar scrollbar
2024-11-16 20:19:18 +02:00
Lauri Ojansivu c44b99d515 Merge pull request #5577 from NadavTasher/feature/new-keyboard-shortcut-for-assigning-user
Potential bug(fix?) - Add assign-self keyboard shortcut (old shortcut actually adds)
2024-11-16 20:18:42 +02:00
Lauri Ojansivu 0f283e6cdf Merge pull request #5576 from NadavTasher/bugfix/change-archive-shortcut-to-minus
Change move-to-archive keyboard shortcut to '-', because of Ctrl + C shortcut
2024-11-16 20:17:30 +02:00
Nadav Tasher b7e8f796a3 Sidebar overhaul - change position to absolute, fix weird style bugs, disable scrollbar 2024-11-16 18:56:38 +02:00
Nadav Tasher d63507dd97 Add margin to member and assignee avatars 2024-11-16 17:53:36 +02:00
Nadav Tasher e1168b5107 Added keyboard shortcut to "assign self" and rename old shortcut to "add self" 2024-11-16 17:40:35 +02:00
Nadav Tasher cecb4b8336 Change move-to-archive keyboard shortcut to '-' 2024-11-16 17:34:16 +02:00
Lauri Ojansivu 5bbbf9d0e6 Merge pull request #5575 from NadavTasher/feature/disable-filter-menu-popup-when-using-keyboard-filters
Disable sidebar showing when filtering using keyboard shortcut
2024-11-16 17:33:15 +02:00
Lauri Ojansivu 29775eef9a Updated ChangeLog. 2024-11-16 17:32:45 +02:00
Lauri Ojansivu 3f3e645c96 Merge pull request #5574 from NadavTasher/feature/support-shortcuts-when-not-using-english-keyboard-layout
Patch to allow shortcuts to work when another keyboard layout is used
2024-11-16 17:27:59 +02:00
Nadav Tasher ebece3f961 Disable sidebar showing when filtering using keyboard shortcut 2024-11-16 17:25:42 +02:00
Lauri Ojansivu 4951d409db Updated translations. 2024-11-16 17:22:37 +02:00
Nadav Tasher cf90511f3c Added multi-language support for keyboard shortcuts 2024-11-16 17:21:47 +02:00
Lauri Ojansivu 4ec0e63d99 Merge pull request #5573 from NadavTasher/feature/hide-scrollbars-in-card-details-and-lists
Hide scrollbars where they interrupt
2024-11-16 17:21:29 +02:00
Nadav Tasher 08843a9dd6 Hide scrollbars from lists (middle of the screen) 2024-11-16 17:18:46 +02:00
Nadav Tasher b3f229dc86 Hide scrollbars from card details popup 2024-11-16 17:17:05 +02:00
Lauri Ojansivu 18b74e7a61 Merge pull request #5572 from NadavTasher/feature/right-to-left
Fix some text alignment issues when using RTL languages
2024-11-16 17:16:20 +02:00
Lauri Ojansivu c60961cbb1 Merge pull request #5571 from NadavTasher/feature/always-close-sidebar-on-escape
Always close sidebar when user clicks ESC
2024-11-16 17:15:48 +02:00
Lauri Ojansivu 3338fc366d Merge pull request #5570 from NadavTasher/feature/new-card-keyboard-shortcut
Added 'n' shortcut for adding new minicards to current list
2024-11-16 17:15:22 +02:00
Nadav Tasher 79cbf25b73 Fix some text alignment issues when using RTL languages 2024-11-16 17:14:03 +02:00
Nadav Tasher 7963118032 Always close sidebar on escape button 2024-11-16 17:07:25 +02:00
Nadav Tasher 35e6c938dc Added 'n' shortcut for adding new minicards 2024-11-16 17:03:59 +02:00
Lauri Ojansivu c632bc4555 Merge newest changes. 2024-11-15 23:35:13 +02:00
Lauri Ojansivu 7a34bc3eb0 Updated Docker base image to Ubuntu 24.10.
Thanks to Ubuntu developers !
2024-11-15 23:33:18 +02:00
Lauri Ojansivu 6e0d41834c v7.62 2024-11-15 23:30:15 +02:00
Lauri Ojansivu 4bcbaf9113 Updated ChangeLog. 2024-11-15 23:24:19 +02:00
Lauri Ojansivu 5448a15691 Updated docs sidebar.
Thanks to xet7 !
2024-11-15 23:22:46 +02:00
Lauri Ojansivu c63feb3ff3 Updated ChangeLog. 2024-11-15 23:21:32 +02:00
Lauri Ojansivu fb4d95672e Update Snap Candidate to MongoDB 6.0.19. Updated WeKan Windows version numbers. Added Cron docs.
Thanks to xet7 !
2024-11-15 23:19:36 +02:00
Lauri Ojansivu bfb1658abe Updated translations. 2024-11-15 23:04:29 +02:00
Lauri Ojansivu 79e2c9175f Updated ChangeLog. 2024-11-15 22:56:59 +02:00
Lauri Ojansivu b9c2d49a1c Updated translations. 2024-11-15 22:44:46 +02:00
Lauri Ojansivu a25eb4ded6 Updated translations. 2024-11-15 22:39:14 +02:00
Lauri Ojansivu 3851de2774 Merge pull request #5569 from mfilser/checklist_items_hide_per_checklist
each checklist can now be configured to hide checked checklist items
2024-11-15 22:04:03 +02:00
Martin Filser 0783b733b0 Checklist, hide all checklist items possible, regardless if the checklist item is finished or not 2024-11-15 21:00:06 +01:00
Martin Filser bb17feaa17 Checklist, hide checked checklist items (configureable at each checklist) 2024-11-15 21:00:06 +01:00
Lauri Ojansivu 7623c8dcb7 Merge pull request #5568 from mfilser/checklist_multiline_insert
Checklist multiline insert (many checklist items at once)
2024-11-15 21:59:36 +02:00
Martin Filser 1d7eb8a03b Checklist, adding many items set's now the sorting correctly 2024-11-15 20:56:36 +01:00
Martin Filser c5712f5ae0 Checklist multiline option, adding description to both checkbox options 2024-11-15 20:54:30 +01:00
Martin Filser 00e5808a4c Checklist multiline option, adding option to keep the origin order if many items are added at the checklist top 2024-11-15 20:54:29 +01:00
Lauri Ojansivu 0a591564fd Merge pull request #5567 from mfilser/checklist_items_hide_per_card
Checklist items hide per card
2024-11-15 21:52:25 +02:00
Martin Filser 8448068d22 hide empty checklist if checklist items are hidden
conditions are:
- the checklist must have at least 1 checklist item
- all checklist items have to be finished
- the option "hide checked checklist items" is set at card details
2024-11-15 20:35:18 +01:00
Martin Filser 9fa36c3991 hide checklist-items per card now
- performance relevant
- more granular setting
2024-11-15 20:35:18 +01:00
Martin Filser d949753d54 preparation hide checklist-items per card 2024-11-15 20:35:17 +01:00
Lauri Ojansivu f6d2b08025 Merge pull request #5566 from mfilser/card_comment_section
added comment section on card details to avoid loading the card comment activities from the server
2024-11-15 21:21:12 +02:00
Martin Filser 8a446de3e9 added comment section on card details to avoid loading the card comment activities from the server
- and added to show only the activities a card

- to display the card comments a connection to the server was needed to get the activities of the card comments, now, it's not necessary
- also performance relevant. until now there were a lot of activities loaded, now only of the current card
2024-11-15 19:55:07 +01:00
Lauri Ojansivu 0196f46094 Merge branch 'main' of github.com:wekan/wekan 2024-11-11 17:46:43 +02:00
Lauri Ojansivu bd83b3bc8e Add info about if Snap slow 2024-11-11 17:46:09 +02:00
Lauri Ojansivu 89347abf53 Updated ChangeLog. 2024-11-02 18:56:52 +02:00
Lauri Ojansivu a27f8ecfa9 Fix Warning: missing space before text for line 210 of jade file client/components/activities/activities.jade
Thanks to xet7 !
2024-11-02 18:55:33 +02:00
Lauri Ojansivu 75ca4920c5 Updated ChangeLog. 2024-11-02 18:36:10 +02:00
Lauri Ojansivu 324be07b85 Add more stack size.
Thanks to xet7 !
2024-11-02 18:34:51 +02:00
Lauri Ojansivu 282a5b30f9 Updated ChangeLog. 2024-11-02 18:19:50 +02:00
Lauri Ojansivu b24acefa6f Updated dependencies.
Thanks to developers of dependencies!
2024-11-02 18:18:14 +02:00
Lauri Ojansivu 751b519167 Updated ChangeLog. 2024-11-02 18:17:34 +02:00
Lauri Ojansivu 330aec2bdd Merge pull request #5555 from emmanuel-ferdman/main
Update `ldap-sync.py` reference
2024-11-02 16:42:08 +02:00
Emmanuel Ferdman d5635c3a89 Update ldap-sync.py reference
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
2024-11-01 23:09:16 -07:00
Lauri Ojansivu 1e86d67bfe Updated ChangeLog. 2024-10-31 00:25:30 +02:00
Lauri Ojansivu 8ac9353c53 Copied from Sandstorm developer discussions to docs fix for running Sandstorm at Ubuntu 24.04.
Thanks to xet7 !
2024-10-31 00:23:45 +02:00
Lauri Ojansivu 1557970170 Updated ChangeLog. 2024-10-31 00:13:33 +02:00
Lauri Ojansivu 508bbb37ce Add docs about how at LXC/LXD Fix: System does not fully support snapd.
Thanks to xet7 !
2024-10-31 00:11:15 +02:00
Lauri Ojansivu a90fc396a9 Updated ChangeLog. 2024-10-30 22:36:26 +02:00
Lauri Ojansivu 96627540da Updated docs about Linked Cards.
Thanks to xet7 !
2024-10-30 22:34:53 +02:00
Lauri Ojansivu db6ebe0470 Updated ChangeLog. 2024-10-23 02:06:35 +03:00
Lauri Ojansivu 559251eb0d Copied updated Docs from wiki to WeKan repo.
Thanks to xet7 !
2024-10-23 02:04:30 +03:00
Lauri Ojansivu 23396d1bd6 v7.61 2024-10-23 01:05:15 +03:00
Lauri Ojansivu 9d92a79a28 Updated to MongoDB 6.0.18 at Snap Candidate.
Thanks to MongoDB developers !
2024-10-23 01:02:48 +03:00
Lauri Ojansivu 90a64a7403 Updated ChangeLog. 2024-10-23 00:51:43 +03:00
Lauri Ojansivu f709cc332c Merge pull request #5552 from mfilser/master
Fixing opening cards and slow performance of closing cards
2024-10-23 00:35:49 +03:00
Martin Filser c925a27870 Fixing opening cards and slow performance of closing cards
Fixes: #5533
Fixes: #5548

Revert "Switch from kadira:flow-router to ostrio:flow-router-extra"

This reverts commit 718c1a393d.
2024-10-22 21:45:36 +02:00
Lauri Ojansivu d31403a918 Updated ChangeLog. 2024-10-20 00:08:24 +03:00
Lauri Ojansivu f9051d768c Updated translations. 2024-10-20 00:06:08 +03:00
Lauri Ojansivu 06eb2adeaa Merge pull request #5549 from AdenKoziol/main
renaming list shows in activities
2024-10-20 00:00:01 +03:00
Aden Koziol 12af3a5d10 renaming list shows in activities 2024-10-16 16:40:20 -05:00
Lauri Ojansivu 8bf94d6ac6 Merge pull request #5538 from namar0x0309/patch-1
Update Candidate-WeKan-Snap-Manual-Upgrade.md in order to create a proper sh file snap-settings.sh
2024-10-03 05:44:19 +03:00
Nas A. 15af5d2c2e Update Candidate-WeKan-Snap-Manual-Upgrade.md
"sudo snap get wekan" outputs key value pairs but not sh code to set those values in snap wekan environment. 

Fixing this here
2024-10-02 16:40:16 -07:00
Lauri Ojansivu 60c5c5c723 Merge pull request #5535 from wekan/dependabot/github_actions/docker/build-push-action-6.9.0
Bump docker/build-push-action from 6.7.0 to 6.9.0
2024-10-01 15:00:48 +03:00
Lauri Ojansivu f972da7442 Merge pull request #5534 from majus/master
Update VSCode debugging configuration
2024-10-01 15:00:33 +03:00
dependabot[bot] 948537cb75 Bump docker/build-push-action from 6.7.0 to 6.9.0
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.7.0 to 6.9.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/5cd11c3a4ced054e52742c5fd54dca954e0edd85...4f58ea79222b3b9dc2c8bbdd6debcef730109a75)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-30 20:09:47 +00:00
Denis Perov ec5d0d00f5 Update VSCode debugging configuration 2024-09-30 16:23:27 +03:00
Lauri Ojansivu 0e7c454013 Updated ChangeLog. 2024-09-24 07:33:25 +03:00
Lauri Ojansivu 6e8e581ceb Testing packages without versions from 2024-09-24 07:22:22 +03:00
Lauri Ojansivu 2ec435af41 Updated ChangeLog. 2024-09-24 00:54:11 +03:00
Lauri Ojansivu 5aa38c2e40 Try 6 to fix apparmor denied in syslog at Snap Candidate.
Thanks to webenefits and xet7 !

Fixes #4855
2024-09-24 00:52:42 +03:00
Lauri Ojansivu 0ff3952a8b Updated ChangeLog. 2024-09-24 00:27:50 +03:00
Lauri Ojansivu e32d2daa45 Try 5 to fix apparmor denied in syslog at Snap Candidate.
Thanks to webenefits and xet7 !

Fixes #4855
2024-09-24 00:26:15 +03:00
Lauri Ojansivu 57780801aa Updated ChangeLog. 2024-09-24 00:03:42 +03:00
Lauri Ojansivu ecdfc68170 Try 4 to fix apparmor denied in syslog at Snap Candidate.
Thanks to webenefits and xet7 !

Fixes #4855
2024-09-24 00:02:00 +03:00
Lauri Ojansivu 3b29678ef1 Updated ChangeLog. 2024-09-23 23:11:53 +03:00
Lauri Ojansivu 6c54b38cdf Try 3 to fix apparmor denied in syslog at Snap Candidate. Changed MongoDB --host back to --bind_ip.
Thanks to webenefits and xet7 !

Fixes #4855
2024-09-23 23:08:47 +03:00
Lauri Ojansivu dfcabc5a36 v7.60 2024-09-23 22:00:47 +03:00
Lauri Ojansivu 5c8cf2ebbd Updated ChangeLog. 2024-09-23 21:18:54 +03:00
Lauri Ojansivu a9d41217bd Removed outdated dependency page. To be seen, does anything break.
Thanks to xet7 !
2024-09-23 21:15:19 +03:00
Lauri Ojansivu 75f44a821c Merge branch 'feature/ostrio-flow-router-extra' of https://github.com/majus/wekan 2024-09-23 20:52:11 +03:00
Lauri Ojansivu 0ab16764d1 Updated ChangeLog. 2024-09-23 20:28:13 +03:00
Lauri Ojansivu b6e7e03c95 Added to Docs CNAME DNS info about CloudFlare and Sandstorm.
Thanks to xet7 !
2024-09-23 20:26:20 +03:00
Denis Perov 718c1a393d Switch from kadira:flow-router to ostrio:flow-router-extra 2024-09-23 19:25:55 +03:00
Lauri Ojansivu 50f3316088 Removed old models files that caused problems with login.
Thanks to xet7 !
2024-09-15 19:40:49 +03:00
Lauri Ojansivu 2727651897 Comment out not in use old attachments models code. 2024-09-08 17:42:04 +03:00
Lauri Ojansivu e72646a4d4 Add back old attachments models for attachment migrations.
Thanks to xet7 !
2024-09-08 16:46:17 +03:00
Lauri Ojansivu 8ef8d546c5 v7.59 2024-09-04 21:06:53 +03:00
Lauri Ojansivu a8b2d7a6bd Updated ChangeLog. 2024-09-04 21:00:19 +03:00
Lauri Ojansivu 0a1074ca6e Try 2 to fix apparmor denied in syslog at Snap Candidate. Newest MongoDB uses --host, not anymore --bind_ip.
Thanks to webenefits and xet7 !

Fixes #4855
2024-09-04 20:56:32 +03:00
Lauri Ojansivu 019d7c92c3 v7.58 2024-09-04 19:08:01 +03:00
Lauri Ojansivu cb653e03f2 Updated ChangeLog. 2024-09-04 19:04:18 +03:00
Lauri Ojansivu a6c8833f65 Try to fix apparrmor denied in syslog at Snap Candidate.
Thanks to webenefits and xet7 !

Fixes #4855
2024-09-04 19:01:41 +03:00
Lauri Ojansivu f00b39d154 v7.57 2024-09-04 11:57:53 +03:00
Lauri Ojansivu 39597e04ac Updated ChangeLog. 2024-09-04 10:57:49 +03:00
Lauri Ojansivu 1610eff0e9 Updated dependencies.
Thanks to developers of dependencies.
2024-09-04 10:55:48 +03:00
Lauri Ojansivu c944f9fdff Updated ChangeLog. 2024-09-04 10:37:38 +03:00
Lauri Ojansivu 9b4d4c5953 Merge pull request #5523 from walster001/main
Large updates to UI
2024-09-04 10:32:13 +03:00
walster001 a8f09011e9 Exodark Margin Fix
Added 10px margin to ExoDark lists also (following on from Clearblue fix) as with those rounded backgrounded lists I feel it looks nicer to give it some padding. 

Open to other contributors perspective however.
2024-09-04 14:17:11 +09:30
walster001 2e1675969a Clearblue Margin - comment
Add comment to explain changes to margin in case someone wants to revert in future
2024-09-04 14:10:31 +09:30
walster001 a71973cc80 Clearblue Margin Fix
Fix ClearBlue lists being butted up against the left hand side of the screen when viewed from a non-editor account (IE comment only).
2024-09-04 14:09:28 +09:30
walster001 608ec63899 Large updates to UI
- Added a wide range of updates/tweaks to various board themes
- Better defined theme start/endpoints in code
- Added modern scrollbars matching each theme
- Added styling to scrollbars in pop-over and horizontally across screen
- Tweaks to opacity/themes to work better with board backgrounds.
2024-09-04 13:56:06 +09:30
Lauri Ojansivu 52bdba8e85 Updated ChangeLog. 2024-09-01 19:15:00 +03:00
Lauri Ojansivu f5b11b15ce Merge pull request #5519 from LanetNetwork/templ_upd
Update templates
2024-08-28 14:45:24 +03:00
Dmytro Novash 3359559ad2 Merge branch 'wekan:main' into templ_upd 2024-08-28 14:24:28 +03:00
Dmytro Novash b4aa464473 use label instead of span 2024-08-28 14:23:35 +03:00
Lauri Ojansivu dbe31a86b7 Update LICENSE 2024-08-28 05:27:49 +03:00
Lauri Ojansivu bd283ff4e2 Merge pull request #5517 from walster001/main
Rework fix for mobile devices to incorporate all themes/list headers
2024-08-27 20:58:27 +03:00
walster001 c020ce8895 Remove vertical-align - doesn't fix for all board themes 2024-08-27 19:53:19 +09:30
walster001 f3562525db Create boardColors.css 2024-08-27 19:50:01 +09:30
walster001 cc89c35c8d Merge branch 'main' of https://github.com/walster001/wekan-atlanz 2024-08-27 19:38:38 +09:30
walster001 2457084db2 Update padding values/display for Mobile Devices
Have modified this in my test dev server, it appears this is the property that defines the spacing/containment of text for lists. When tested on iOS device this appears to work correctly. 

Last commit removing vertical align, and iinitial commit unsetting line height for ModernDark fixes an issue where text was super spaced out on ModernDark theme only.
2024-08-27 19:31:13 +09:30
walster001 508a2d7103 Revert vertical-align. Left line-height unset.
Didn't fix issue as its more than just modern-dark theme. Have played around on dev server and found its in the list css itself.
2024-08-27 19:28:06 +09:30
Lauri Ojansivu 3d7fef67d8 v7.56 2024-08-26 17:39:24 +03:00
Lauri Ojansivu d63d445b7d Upgraded Snap Candidate MongoDB to 6.0.17.
Thanks to MongoDB developers !
2024-08-26 17:30:05 +03:00
Lauri Ojansivu 8d3fe29c68 Update Browser-compatibility-matrix.md 2024-08-23 15:29:46 +03:00
Lauri Ojansivu ad3ecbfd96 Update Browser-compatibility-matrix.md 2024-08-23 15:28:21 +03:00
Lauri Ojansivu 51ec43e7bc Update Browser-compatibility-matrix.md 2024-08-23 15:27:24 +03:00
Lauri Ojansivu 88dfc57e7e Update Browser-compatibility-matrix.md 2024-08-23 15:25:13 +03:00
Lauri Ojansivu 7409c366f6 Update Browser-compatibility-matrix.md 2024-08-23 15:24:01 +03:00
Lauri Ojansivu b99b2a6d66 Update Browser-compatibility-matrix.md 2024-08-23 15:21:21 +03:00
walster001 fa21b00bb6 Merge branch 'wekan:main' into main 2024-08-23 00:27:31 +09:30
walster001 f061b5e12a Clean up theme descriptions, add scrollbars
- Cleaned up theme descriptions as many themes weren't labelled/or had mismatched descriptions.
- Began adding scrollbars to default themes/board canvases.
- Test removal of lines/editing margins on nephritis theme
2024-08-23 00:25:29 +09:30
Lauri Ojansivu 8ca642edc8 Updated ChangeLog. 2024-08-21 00:55:31 +03:00
Lauri Ojansivu c3909edc5e Fix apparmor denied in syslog at Snap Candidate.
Thanks to webenefits and xet7 !

Fixes #4855
2024-08-21 00:52:15 +03:00
Lauri Ojansivu f4cf09d394 Merge pull request #5511 from wekan/dependabot/github_actions/docker/build-push-action-6.7.0
Bump docker/build-push-action from 6.6.1 to 6.7.0
2024-08-19 23:37:54 +03:00
dependabot[bot] 6aa4f9fb86 Bump docker/build-push-action from 6.6.1 to 6.7.0
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.6.1 to 6.7.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/16ebe778df0e7752d2cfcbd924afdbbd89c1a755...5cd11c3a4ced054e52742c5fd54dca954e0edd85)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-19 20:10:48 +00:00
Lauri Ojansivu a31545824e Updated ChangeLog. 2024-08-19 22:23:18 +03:00
Lauri Ojansivu a94cfd5b91 Update Docker.md for docker compose commands and building custom docker image
Update Docker.md for docker compose commands and building custom docker image
2024-08-19 11:03:58 +03:00
Lauri Ojansivu 6d6d51310e Update docker-compose.yml docker compose command
Update docker-compose.yml docker compose command
2024-08-19 11:00:47 +03:00
Lauri Ojansivu c9cf2971de Merge pull request #5505 from wekan/dependabot/github_actions/docker/build-push-action-6.6.1
Bump docker/build-push-action from 6.5.0 to 6.6.1
2024-08-12 23:47:53 +03:00
dependabot[bot] 54c481e3d8 Bump docker/build-push-action from 6.5.0 to 6.6.1
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.5.0 to 6.6.1.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/5176d81f87c23d6fc96624dfdbcd9f3830bbe445...16ebe778df0e7752d2cfcbd924afdbbd89c1a755)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-12 20:46:26 +00:00
Lauri Ojansivu 8b4fbd266d Merge pull request #5503 from walster001/main
Fix ModernDark Mobile View List Titles
2024-08-12 22:56:01 +03:00
Lauri Ojansivu 3c5241b007 Updated ChangeLog. 2024-08-12 22:09:48 +03:00
Lauri Ojansivu 42a1f94931 Updated ChangeLog. 2024-08-12 22:04:43 +03:00
Lauri Ojansivu cae6f38b80 Updated code of conduct. 2024-08-12 21:59:01 +03:00
walster001 25722e5e9d Tweaks to exodark for board backgrounds
Removed drop shadow on exodark cards, as when background applied to board it looks a bit rough design wise. 

Added background-color that will disappear when background is applied, and when background is not applied gives exodark a bit of a smoother cleaner look IMO
2024-08-12 23:49:12 +09:30
walster001 1d339ec17e Update boardColors.css 2024-08-12 21:28:14 +09:30
Lauri Ojansivu ec534c8cca Update Browser-compatibility-matrix.md 2024-08-11 19:15:15 +03:00
Lauri Ojansivu cab285c34d Update Browser-compatibility-matrix.md 2024-08-11 19:12:36 +03:00
Lauri Ojansivu 975993dd6d v7.55 2024-08-08 17:32:35 +03:00
Lauri Ojansivu 43084eb664 Updated ChangeLog. 2024-08-08 17:25:16 +03:00
Lauri Ojansivu 0e770ac3b3 Merge pull request #5501 from walster001/main
Fix board backgrounds not showing correctly after V7.54
2024-08-08 17:20:08 +03:00
walster001 206abc8c68 Fix board backgrounds not showing correctly.
Fixed board backgrounds not showing correctly on the following themes. Various code modified as different themes have used different code to implement the background.

Have tried to stick with board-wrapper as a standard to apply the background colour to.
Board background image will override board-wrapper colour every time.

Dark
Relax
Natural
Modern
ModernDark
Exodark
CleanDark
CleanLight

- Updated pull due to original file I had stored on my pc 139 commits behind! So synced that and then redid code changes to bring it all up to date.
2024-08-08 23:34:09 +09:30
walster001 62b13cc343 Merge branch 'main' of https://github.com/walster001/wekan-atlanz 2024-08-08 23:23:00 +09:30
walster001 7822dd3b75 Fix board backgrounds not showing correctly
Fixed board backgrounds not showing correctly on the following themes.
Various code modified as different themes have used different code to implement the background.

Have tried to stick with board-wrapper as a standard to apply the background colour to.

Board background image will override this every time.

- Dark
- Relax
- Natural
- Modern
- ModernDark
- Exodark
- CleanDark
- CleanLight
2024-08-08 22:51:07 +09:30
Lauri Ojansivu a214cd64b6 v7.54 2024-08-07 17:51:01 +03:00
Lauri Ojansivu 8839a8ea39 Updated ChangeLog. 2024-08-07 17:26:47 +03:00
Lauri Ojansivu a4169f3da7 Fix LDAP login fails after upgrade.
Thanks to juppees !

Fixes #5499
2024-08-07 17:24:14 +03:00
Lauri Ojansivu 19d59b3ab4 Updated ChangeLog. 2024-08-07 00:25:57 +03:00
Lauri Ojansivu 27b2e2384c Merge pull request #5498 from mfilser/master
Bugfix, edit description didn't work if it was clicked
2024-08-07 00:24:58 +03:00
Lauri Ojansivu 49d2cbc2c1 Updated ChangeLog. 2024-08-07 00:23:49 +03:00
Martin Filser bf2b3b40cd Bugfix, edit description didn't work if it was clicked
- introduced by commit: 0cc63b810c
2024-08-06 23:22:58 +02:00
Lauri Ojansivu 1541c6ca23 Merge pull request #5497 from mfilser/master
listHeader, simpler code logic at collapsed if conditions
2024-08-07 00:22:23 +03:00
Lauri Ojansivu 42c1ff94e2 Updated ChangeLog. 2024-08-07 00:13:13 +03:00
Martin Filser 53aa5ebc17 listHeader, simpler code logic at collapsed if conditions 2024-08-06 23:12:31 +02:00
Lauri Ojansivu 0f43818757 Merge pull request #5496 from mfilser/master
Bugfix, Cards Count on mobile view was missing
2024-08-07 00:12:11 +03:00
Lauri Ojansivu f3c5b1eb07 Updated ChangeLog. 2024-08-07 00:11:36 +03:00
Martin Filser 517d1bb7fa Bugfix, Cards Count on mobile view was missing
introduced by:
a601ba542a
2024-08-06 23:10:30 +02:00
Lauri Ojansivu 6ee0919ead Merge pull request #5495 from mfilser/master
Editor, Bugfix, copy text is now at each editor (textarea) again
2024-08-07 00:10:03 +03:00
Martin Filser 13eb1a58e0 Editor, migrate to markdown at same line than copy text icon 2024-08-06 23:06:51 +02:00
Martin Filser 08f9c09484 Editor, Bugfix, copy text is now at each editor (textarea) again 2024-08-06 23:05:54 +02:00
Lauri Ojansivu 3f3abe26ee Updated ChangeLog. 2024-08-07 00:05:09 +03:00
Lauri Ojansivu e31c5b6d42 Merge pull request #5494 from mfilser/master
Minicard, show creator, defaultValue of schema and other code is now the same
2024-08-07 00:03:47 +03:00
Martin Filser 7bf77fa7cb Minicard, show creator, defaultValue of schema and other code is now the same 2024-08-06 23:00:42 +02:00
Lauri Ojansivu a2662f1366 Updated ChangeLog. 2024-08-06 23:57:40 +03:00
Lauri Ojansivu 116cf6aa21 Merge pull request #5493 from mfilser/master
board view, first column a bit smaller to save screen space
2024-08-06 23:56:20 +03:00
Lauri Ojansivu 79bb6d0c55 Updated ChangeLog. 2024-08-06 23:55:12 +03:00
Martin Filser c157ecec38 board view, first column to add a new list was too large 2024-08-06 22:53:53 +02:00
Martin Filser 28893cf637 Bugfix, in View "Lists" the first column only showed the first 10 minicards, now all minicards again 2024-08-06 22:53:53 +02:00
Lauri Ojansivu 73ffc99f37 Merge pull request #5492 from mfilser/master
sidebar xmark icon, add padding and background color
2024-08-06 23:53:24 +03:00
Martin Filser 35802c7c62 sidebar xmark-icon, background color on hover the icon 2024-08-06 22:45:51 +02:00
Martin Filser bc44fdf89c sidebar xmark icon, add padding to easier click 2024-08-06 22:45:51 +02:00
Lauri Ojansivu 030c3dd587 Updated ChangeLog. 2024-08-06 23:38:33 +03:00
Lauri Ojansivu 498be2759e Merge pull request #5491 from mfilser/master
fix empty parentId in cards
2024-08-06 23:37:38 +03:00
Lauri Ojansivu 649d00733a Updated ChangeLog. 2024-08-06 23:36:07 +03:00
Martin Filser 8a7a4f3033 fix empty parentId in cards
- if the parentId is undefined or empty, the code run in a infinite loop and
  the browser "hangs"
2024-08-06 22:35:16 +02:00
Lauri Ojansivu b6ce81dc79 Merge pull request #5490 from mfilser/master
change Meteor.user() to ReactiveCache.getCurrentUser()
2024-08-06 23:35:07 +03:00
Lauri Ojansivu 490c417cee Updated ChangeLog. 2024-08-06 23:33:59 +03:00
Martin Filser 2dfeb3924b reactiveCache, removing commented out code 2024-08-06 22:33:03 +02:00
Martin Filser bff96f6ae2 change Meteor.user() to ReactiveCache.getCurrentUser()
- see also: https://github.com/wekan/wekan/issues/5000
2024-08-06 22:33:03 +02:00
Lauri Ojansivu 4801e26b2f Merge pull request #5489 from mfilser/master
attachment popup back was broken since new attachment viewer, now fixed
2024-08-06 23:32:53 +03:00
Lauri Ojansivu 027997f7b3 Updated ChangeLog. 2024-08-06 23:32:29 +03:00
Martin Filser 76aaefbde1 attachment popup back was broken since new attachment viewer, now fixed 2024-08-06 22:30:51 +02:00
Lauri Ojansivu a01bc0f325 Merge pull request #5488 from mfilser/master
remove attachment storage name from attachment list
2024-08-06 23:30:23 +03:00
Martin Filser f6f4f5660e remove attachment storage name from attachment list
- this was for debugging, now not necessary anymore
2024-08-06 22:26:00 +02:00
Lauri Ojansivu 956925889a Updated ChangeLog. 2024-08-06 23:23:42 +03:00
Lauri Ojansivu 0bd49326d8 Merge pull request #5487 from mfilser/master
little opacity to minicards to see the background image a little bit
2024-08-06 23:22:32 +03:00
Lauri Ojansivu 64c4e8eca8 Updated ChangeLog. 2024-08-06 23:22:04 +03:00
Lauri Ojansivu 55fc342f6d Added info how with Caddy webserver config, PWA and Android app override icons, showing toolbars, etc.
Thanks to xet7 !
2024-08-06 23:19:43 +03:00
Martin Filser 3ae0d96760 little opacity to minicards to see the background image a little bit 2024-08-06 22:03:16 +02:00
Lauri Ojansivu fc1e55cc19 Updated ChangeLog. 2024-08-06 22:58:13 +03:00
Lauri Ojansivu 58fc810a43 Merge pull request #5486 from mfilser/master
Bugfix, variable "color" didn't exist
2024-08-06 22:55:58 +03:00
Martin Filser 3c477e9783 Bugfix, variable "color" didn't exist
- background-color is maybe wrong too, but better than throwing an exception
2024-08-06 21:50:57 +02:00
Lauri Ojansivu f2247ed86d Updated ChangeLog. 2024-08-06 22:48:32 +03:00
Lauri Ojansivu 0d9a9d1ed8 Merge branch 'main' of github.com:wekan/wekan 2024-08-06 22:46:00 +03:00
Lauri Ojansivu ca5a579e22 PWA, move to standalone (standard) to display the status bar.
Thanks to mfilser !

Related https://github.com/wekan/wekan/pull/5484
2024-08-06 22:44:51 +03:00
Lauri Ojansivu 53d97a593f Merge pull request #5485 from mfilser/master
don't set background image in .board-canvas too
2024-08-06 22:38:27 +03:00
Martin Filser 3641a8f389 don't set background image in .board-canvas too 2024-08-06 21:30:27 +02:00
Lauri Ojansivu 1dea1bd09d Merge pull request #5483 from mfilser/master
fix error on console when user logout
2024-08-06 19:09:22 +03:00
Martin Filser 3db265d57f fix error on console when user logout (Part 2) 2024-08-06 17:24:43 +02:00
Martin Filser 38a32824ea fix error on console when user logout (Part 1) 2024-08-06 17:24:43 +02:00
Lauri Ojansivu b0c94f7ff2 Updated ChangeLog. 2024-08-05 13:06:51 +03:00
232 changed files with 4387 additions and 2781 deletions

No files matched your search

+2
View File
@@ -5,6 +5,8 @@ Please report these issues elsewhere:
- SECURITY ISSUES, PGP EMAIL: https://github.com/wekan/wekan/blob/main/SECURITY.md
- UCS: https://github.com/wekan/univention/issues
If WeKan Snap is slow, try this: https://github.com/wekan/wekan/wiki/Cron
**[PLEASE UPGRADE](https://github.com/wekan/wekan/wiki/Backup)** to the newest
WeKan ® before reporting an issue, if possible.
+1 -1
View File
@@ -55,7 +55,7 @@ jobs:
# Build and push Docker image with Buildx (don't push on PR)
# https://github.com/docker/build-push-action
- name: Build and push Docker image
uses: docker/build-push-action@5176d81f87c23d6fc96624dfdbcd9f3830bbe445
uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75
with:
context: .
push: ${{ github.event_name != 'pull_request' }}
+48 -36
View File
@@ -1,45 +1,57 @@
{
"version": "0.2.0",
"configurations": [
{
"type": "chrome",
"request": "launch",
"name": "Meteor: Chrome",
"url": "http://localhost:3000",
"webRoot": "${workspaceFolder}"
{
"type": "node",
"request": "launch",
"name": "Meteor: Node",
"runtimeExecutable": "meteor",
"runtimeArgs": [
"--port=4000",
"--exclude-archs=web.browser.legacy,web.cordova",
"--raw-logs"
],
"env": {
"WRITABLE_PATH": "/tmp/uploads",
},
{
"type": "node",
"request": "launch",
"name": "Meteor: Node",
"runtimeExecutable": "/home/wekan/.meteor/meteor",
"runtimeArgs": ["run", "--inspect-brk=9229"],
"outputCapture": "std",
"port": 9229,
"timeout": 60000
"outputCapture": "std",
"restart": true,
"timeout": 60000
},
{
"type": "chrome",
"request": "launch",
"name": "Meteor: Chrome",
"url": "http://localhost:4000",
"sourceMapPathOverrides": {
"meteor://💻app/*": "${workspaceFolder}/*"
},
{
"type": "node",
"request": "launch",
"name": "Test: Node",
"runtimeExecutable": "meteor",
"runtimeArgs": [
"test",
"--inspect-brk=9229",
"--port=4040",
"--exclude-archs=web.browser.legacy,web.cordova",
"--driver-package=meteortesting:mocha",
"--settings=settings.json"
],
"outputCapture": "std",
"port": 9229,
"timeout": 60000
}
"userDataDir": "${env:HOME}/.vscode/chrome"
},
{
"type": "node",
"request": "launch",
"name": "Test: Node",
"runtimeExecutable": "meteor",
"runtimeArgs": [
"test",
"--port=4040",
"--exclude-archs=web.browser.legacy,web.cordova",
"--driver-package=meteortesting:mocha",
"--settings=settings.json",
"--raw-logs"
],
"env": {
"TEST_WATCH": "1"
},
"outputCapture": "std",
"timeout": 60000
}
],
"compounds": [
{
"name": "Meteor: All",
"configurations": ["Meteor: Node", "Meteor: Chrome"]
}
{
"name": "Meteor: All",
"configurations": ["Meteor: Node", "Meteor: Chrome"]
}
]
}
+235
View File
@@ -15,6 +15,241 @@ Fixing other platforms In Progress.
[How to upgrade WeKan](https://github.com/wekan/wekan/issues/4585)
# v7.63 2024-11-16 WeKan ® release
This release adds the following new features:
- [Always close sidebar when user clicks ESC](https://github.com/wekan/wekan/pull/5571).
Thanks to NadavTasher.
- [Added 'n' shortcut for adding new minicards to current list](https://github.com/wekan/wekan/pull/5570).
Thanks to NadavTasher.
- [Patch to allow shortcuts to work when another keyboard layout is used](https://github.com/wekan/wekan/pull/5574).
Thanks to NadavTasher.
and adds the following updates:
- [Updated scaling docs](https://github.com/wekan/wekan/commit/92af6f71d9c60acbca8f65c7ec1822818186639c).
Thanks to xet7.
and fixes the following bugs:
- [Fix some text alignment issues when using RTL languages](https://github.com/wekan/wekan/pull/5572).
Thanks to NadavTasher.
- [Hide scrollbars where they interrupt](https://github.com/wekan/wekan/pull/5573).
Thanks to NadavTasher.
- [Disable sidebar showing when filtering using keyboard shortcut](https://github.com/wekan/wekan/pull/5575).
Thanks to NadavTasher.
- [Change move-to-archive keyboard shortcut to '-', because of Ctrl + C shortcut](https://github.com/wekan/wekan/pull/5576).
Thanks to NadavTasher.
- [Potential bug(fix?) - Add assign-self keyboard shortcut (old shortcut actually adds)](https://github.com/wekan/wekan/pull/5577).
Thanks to NadavTasher.
- [Sidebar style overhaul - absolute positioning, weird style fixes, disable sidebar scrollbar](https://github.com/wekan/wekan/pull/5578).
Thanks to NadavTasher.
- [Revert adding more stack size](https://github.com/wekan/wekan/commit/edb73982953d63066494dbc096bdeb62f7fe730b).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.62 2024-11-15 WeKan ® release
This release adds the following new features:
- [Added comment section on card details to avoid loading the card comment activities from the server](https://github.com/wekan/wekan/pull/5566).
Thanks to mfilser.
- [Checklist items hide per card](https://github.com/wekan/wekan/pull/5567).
Thanks to mfilser.
- [Checklist multiline insert (many checklist items at once)](https://github.com/wekan/wekan/pull/5568).
Thanks to mfilser.
- [Each checklist can now be configured to hide checked checklist items](https://github.com/wekan/wekan/pull/5569).
Thanks to mfilser.
and adds the following updates:
- [Copied updated Docs from wiki to WeKan repo](https://github.com/wekan/wekan/commit/559251eb0d8aea6a714f14224497d0a25c7a3864).
Thanks to xet7.
- [Updated docs about Linked Cards](https://github.com/wekan/wekan/commit/96627540da0b6e12890ee1660f4ff0f469bb0e25).
Thanks to xet7.
- [Add docs about how at LXC/LXD Fix: System does not fully support snapd](https://github.com/wekan/wekan/commit/508bbb37ce960c88c2a7d0b2cb35e5d8790df19f).
Thanks to xet7.
- [Copied from Sandstorm developer discussions to docs fix for running Sandstorm at Ubuntu 24.04](https://github.com/wekan/wekan/commit/8ac9353c5313402e00160843ca57405ebeb128cb).
Thanks to xet7.
- [Update ldap-sync.py reference](https://github.com/wekan/wekan/pull/5555).
Thanks to emmanuel-ferdman.
- [Updated dependencies](https://github.com/wekan/wekan/commit/b24acefa6f6696b702f2c3ceb28d6d6290017bb2).
Thanks to developers of dependencies.
- [Update Snap Candidate to MongoDB 6.0.19. Updated WeKan Windows version numbers. Added Cron docs](https://github.com/wekan/wekan/commit/fb4d95672e37d849ff52954c79eede2af7d2a509).
Thanks to xet7.
- [Updated docs sidebar](https://github.com/wekan/wekan/commit/5448a1569113142ab5b2440763c9642c88e86ba4)-
Thanks to xet7.
- [Updated Docker base image to Ubuntu 24.10](https://github.com/wekan/wekan/commit/7a34bc3eb03943506abe5e54501d1906fc16540b).
Thanks to Ubuntu developers.
and fixes the following bugs:
- [Add more stack size](https://github.com/wekan/wekan/commit/324be07b859937966f98feb2aeea8f344c689bb0).
Thanks to xet7.
- [Fix Warning: missing space before text for line 210 of jade file client/components/activities/activities.jade](https://github.com/wekan/wekan/commit/a27f8ecfa9971740a019a955d3f8d0e5a5dd8dab).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.61 2024-10-23 WeKan ® release
This release adds the following updates:
- [Testing packages without versions from, for upcoming upgrades](https://github.com/wekan/wekan/commit/6e8e581ceb330a7756403efa1f8bbe5a198ff111).
Thanks to xet7.
- [Updated to MongoDB 6.0.18 at Snap Candidate](https://github.com/wekan/wekan/commit/9d92a79a284147380eb08a0c011a8815dae5209b).
Thanks to MongoDB developers.
and fixes the following bugs:
- [Try 3 to fix apparmor denied in syslog at Snap Candidate. Changed MongoDB --host back to --bind_ip](https://github.com/wekan/wekan/commit/6c54b38cdfd14959f4449cea0c3150bf86708ecd).
Thanks to webenefits and xet7.
- [Try 4 to fix apparmor denied in syslog at Snap Candidate](https://github.com/wekan/wekan/commit/ecdfc681700633d8688ca709f36924ceced96af8).
Thanks to webenefits and xet7.
- [Try 5 to fix apparmor denied in syslog at Snap Candidate](https://github.com/wekan/wekan/commit/e32d2daa4567728e4dd5048c9c575edcac1372da).
Thanks to webenefits and xet7.
- [Try 6 to fix apparmor denied in syslog at Snap Candidate](https://github.com/wekan/wekan/commit/5aa38c2e40429f06aac8bc1bc0b5ac30c5344c6f).
Thanks to webenefits and xet7.
- [Renaming list shows in activities](https://github.com/wekan/wekan/pull/5549).
Thanks to AdenKoziol.
- [Fixing opening cards and slow performance of closing cards by reverting switching kadira:flow-router to ostrio:flow-router-extra](https://github.com/wekan/wekan/pull/5552).
Thanks to mfilser.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.60 2024-09-23 WeKan ® release
This release adds the following updates:
- [Added to Docs CNAME DNS info about CloudFlare and Sandstorm](https://github.com/wekan/wekan/commit/b6e7e03c95dfa68c8de6922ffb7663631e476d91).
Thanks to xet7.
- [Switch from kadira:flow-router to ostrio:flow-router-extra](https://github.com/wekan/wekan/pull/5530).
Thanks to imajus.
- [Removed outdated dependency page. To be seen, does anything break](https://github.com/wekan/wekan/commit/a9d41217bd8c797b28510efec3e21a92d7ec4bba).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.59 2024-09-04 WeKan ® release
This release tries to fix the following bugs:
- [Try 2 to fix apparmor denied in syslog at Snap Candidate](https://github.com/wekan/wekan/commit/0a1074ca6e95728b0da30bd701ba783f2a4bdd98).
Newest MongoDB uses --host, not anymore --bind_ip.
Thanks to webenefits and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.58 2024-09-04 WeKan ® release
This release tries to fix the following bugs:
- [Try to fix apparrmor denied in syslog at Snap Candidate](https://github.com/wekan/wekan/commit/a6c8833f652ee84284da2195bf79fb8edaa818b7).
Thanks to webenefits and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.57 2024-09-04 WeKan ® release
This release adds the following updates:
- [Rework fix for mobile devices to incorporate all themes/list headers](https://github.com/wekan/wekan/pull/5517).
Thanks to walster001.
- [Update templates to use label instead of span](https://github.com/wekan/wekan/pull/5519).
Thanks to novashdima.
- [Large updates to UI CSS](https://github.com/wekan/wekan/pull/5523).
Thanks to walster001.
- [Updated dependencies](https://github.com/wekan/wekan/commit/1610eff0e9212fdf6423ce5579b7bdaf8e45950b).
Thanks to developers of dependencies.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.56 2024-08-21 WeKan ® release
This release adds the following updates:
- Updated Browser compatibility matrix.
[Part 1](https://github.com/wekan/wekan/commit/cab285c34d1f159120ccd48b17a897e95bd48471),
[Part 2](https://github.com/wekan/wekan/commit/ec534c8cca3f0256091c2d870c128d26033d40ad).
- [Updated code of conduct](https://github.com/wekan/wekan/commit/cae6f38b8070cfcc2f2529027f7e66b965a19f05).
Thanks to xet7.
- [Updated Docker build actions](https://github.com/wekan/wekan/pull/5505).
Thanks to dependabot.
- Updated docs for building custom Docker image.
[Part 1](https://github.com/wekan/wekan/issues/5509),
[Part 2](https://github.com/wekan/wekan/commit/6d6d51310e4168cd0fc75f550d3af35df9ccef9f),
[Part 3](https://github.com/wekan/wekan/commit/a94cfd5b91d29f81e51e67ed03ba84f820d4892a).
- [Update mongodb chart version to 15.6.18 and enables wekan to be deployed on an OpenShift cluster](https://github.com/wekan/charts/pull/36).
Thanks to fobrice.
- [Upgraded Snap Candidate MongoDB to 6.0.17](https://github.com/wekan/wekan/commit/d63d445b7d5da48c05d0fbd4e560c00283b1aef7).
Thanks to MongoDB developers.
and fixes the following bugs:
- [Fix ModernDark Mobile View List Titles](https://github.com/wekan/wekan/pull/5503).
Thanks to walster001.
- [Fix apparmor denied in syslog at Snap Candidate](https://github.com/wekan/wekan/commit/c3909edc5ee7a82b694b19ca7e022cbdfd12affd).
Thanks to webenefits and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.55 2024-08-08 WeKan ® release
This release fixes the following bugs:
- [Fix board backgrounds not showing correctly after v7.54](https://github.com/wekan/wekan/pull/5501).
Thanks to walster001.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.54 2024-08-07 WeKan ® release
This release adds the following new features:
- [Helm Chart: Add Support for Overriding Image Registry in Airgapped Environments](https://github.com/wekan/charts/pull/35).
Thanks to geilername.
- [PWA, move to standalone (standard) to display the status bar](https://github.com/wekan/wekan/pull/5484)
Thanks to mfilser.
- [Added info how with Caddy webserver config, PWA and Android app override icons, showing toolbars, etc](https://github.com/wekan/wekan/commit/55fc342f6d90d8e30b70a8903ecead1c4370bd89).
Thanks to xet7.
and fixes the following bugs:
- [Don't set background image in .board-canvas too](https://github.com/wekan/wekan/pull/5485).
Thanks to mfilser.
- [Bugfix, variable "color" didn't exist](https://github.com/wekan/wekan/pull/5486).
Thanks to mfilser.
- [Little opacity to minicards to see the background image a little bit](https://github.com/wekan/wekan/pull/5487).
Thanks to mfilser.
- [Remove attachment storage name from attachment list](https://github.com/wekan/wekan/pull/5488).
Thanks to mfilser.
- [Attachment popup back was broken since new attachment viewer, now fixed](https://github.com/wekan/wekan/pull/5489).
Thanks to mfilser.
- [Change Meteor.user() to ReactiveCache.getCurrentUser()](https://github.com/wekan/wekan/pull/5490).
Thanks to mfilser.
- [Fix empty parentId in cards](https://github.com/wekan/wekan/pull/5491).
Thanks to mfilser.
- [Sidebar xmark icon, add padding and background color](https://github.com/wekan/wekan/pull/5492).
Thanks to mfilser.
- [Board view, first column a bit smaller to save screen space](https://github.com/wekan/wekan/pull/5493).
Thanks to mfilser.
- [Minicard, show creator, defaultValue of schema and other code is now the same](https://github.com/wekan/wekan/pull/5494).
Thanks to mfilser.
- [Editor, Bugfix, copy text is now at each editor (textarea) again](https://github.com/wekan/wekan/pull/5495).
Thanks to mfilser.
- [Bugfix, Cards Count on mobile view was missing](https://github.com/wekan/wekan/pull/5496).
Thanks to mfilser.
- [ListHeader, simpler code logic at collapsed if conditions](https://github.com/wekan/wekan/pull/5497).
Thanks to mfilser.
- [Bugfix, edit description didn't work if it was clicked](https://github.com/wekan/wekan/pull/5498).
Thanks to mfilser.
- [Fix LDAP login fails after upgrade](https://github.com/wekan/wekan/commit/a4169f3da773e4fd961acd0266260085a753cdab).
Thanks to juppees and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v7.53 2024-08-03 WeKan ® release
This release adds the following new features:
+1 -1
View File
@@ -11,7 +11,7 @@ For all code at WeKan GitHub Organization https://github.com/wekan
## Private reports
- Email support (at) wekan.team using [this PGP public key](support-at-wekan.team_pgp-publickey.asc) if possible
- Email support@wekan.team
- Security issues: [SECURITY.md](SECURITY.md)
- License violations
- Anything private, sensitive or negative
+3 -2
View File
@@ -1,7 +1,7 @@
FROM ubuntu:24.04
FROM ubuntu:24.10
LABEL maintainer="wekan"
LABEL org.opencontainers.image.ref.name="ubuntu"
LABEL org.opencontainers.image.version="24.04"
LABEL org.opencontainers.image.version="24.10"
LABEL org.opencontainers.image.source="https://github.com/wekan/wekan"
# 2022-04-25:
@@ -272,4 +272,5 @@ WORKDIR /home/wekan/app
#
# CMD ["node", "/build/main.js"]
# CMD ["bash", "-c", "ulimit -s 65500; exec node --stack-size=65500 /build/main.js"]
# CMD ["bash", "-c", "ulimit -s 65500; exec node --stack-size=65500 --max-old-space-size=8192 /build/main.js"]
CMD ["bash", "-c", "ulimit -s 65500; exec node /build/main.js"]
+1
View File
@@ -88,5 +88,6 @@ RUN \
EXPOSE $PORT
USER wekan
# CMD ["bash", "-c", "ulimit -s 65500; exec node --stack-size=65500 --max-old-space-size=8192 /home/wekan/bundle/main.js"]
CMD ["bash", "-c", "ulimit -s 65500; exec node /home/wekan/bundle/main.js"]
+1 -1
View File
@@ -1,6 +1,6 @@
The MIT License (MIT)
Copyright (c) 2014-2023 The Wekan Team
Copyright (c) 2014-2024 The Wekan Team
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v7.53.0"
appVersion: "v7.63.0"
files:
userUploads:
- README.md
@@ -49,43 +49,6 @@
margin-top: 5px;
padding: 5px;
}
.activities .activity .activity-desc .reactions {
display: flex;
margin-top: 5px;
gap: 5px;
}
.activities .activity .activity-desc .reactions .open-comment-reaction-popup {
display: flex;
align-items: center;
text-decoration: none;
height: 24px;
}
.activities .activity .activity-desc .reactions .open-comment-reaction-popup i.fa.fa-smile-o {
font-size: 17px;
font-weight: 500;
margin-left: 2px;
}
.activities .activity .activity-desc .reactions .open-comment-reaction-popup i.fa.fa-plus {
font-size: 8px;
margin-top: -7px;
margin-left: 1px;
}
.activities .activity .activity-desc .reactions .reaction {
cursor: pointer;
border: 1px solid #808080;
border-radius: 15px;
display: flex;
padding: 2px 5px;
}
.activities .activity .activity-desc .reactions .reaction.selected {
background-color: #b0c4de;
}
.activities .activity .activity-desc .reactions .reaction:hover {
background-color: #b0c4de;
}
.activities .activity .activity-desc .reactions .reaction .reaction-count {
font-size: 12px;
}
.activities .activity .activity-desc .activity-checklist {
display: block;
border-radius: 3px;
+20 -62
View File
@@ -1,11 +1,12 @@
template(name="activities")
.activities.js-sidebar-activities
//- We should use Template.dynamic here but there is a bug with
//- blaze-components: https://github.com/peerlibrary/meteor-blaze-components/issues/30
if $eq mode "board"
+boardActivities
else
+cardActivities
if showActivities
.activities.js-sidebar-activities
//- We should use Template.dynamic here but there is a bug with
//- blaze-components: https://github.com/peerlibrary/meteor-blaze-components/issues/30
if $eq mode "board"
+boardActivities
else
+cardActivities
template(name="boardActivities")
each activityData in currentBoard.activities
@@ -15,31 +16,6 @@ template(name="cardActivities")
each activityData in activities
+activity(activity=activityData card=card mode=mode)
template(name="editOrDeleteComment")
a.js-open-inlined-form {{_ "edit"}}
= ' - '
a.js-delete-comment {{_ "delete"}}
template(name="deleteCommentPopup")
p {{_ "comment-delete"}}
button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
template(name="commentReactions")
.reactions
each reaction in reactions
span.reaction(class="{{#if isSelected reaction.userIds}}selected{{/if}}" data-codepoint="#{reaction.reactionCodepoint}" title="{{userNames reaction.userIds}}")
span.reaction-codepoint !{reaction.reactionCodepoint}
span.reaction-count #{reaction.userIds.length}
if (currentUser.isBoardMember)
a.open-comment-reaction-popup(title="{{_ 'addReactionPopup-title'}}")
i.fa.fa-smile-o
i.fa.fa-plus
template(name="addReactionPopup")
.reactions-popup
each codepoint in codepoints
span.add-comment-reaction(data-codepoint="#{codepoint}") !{codepoint}
template(name="activity")
.activity(data-id=activity._id)
+userAvatar(userId=activity.user._id)
@@ -129,38 +105,17 @@ template(name="activity")
| {{{_ 'activity-checklist-item-removed' (sanitize activity.checklist.title) cardLink}}}.
//- comment activity ----------------------------------------------------
if($eq mode 'card')
//- if we are in card mode we display the comment in a way that it
//- can be edited by the owner
if($eq activity.activityType 'addComment')
+inlinedForm(classNames='js-edit-comment')
+editor(autofocus=true)
= activity.comment.text
.edit-controls
button.primary(type="submit") {{_ 'edit'}}
.fa.fa-times-thin.js-close-inlined-form
else
.activity-comment
+viewer
= activity.comment.text
+commentReactions(reactions=activity.comment.reactions commentId=activity.comment._id)
if($eq currentUser._id activity.comment.userId)
+editOrDeleteComment
else if currentUser.isBoardAdmin
+editOrDeleteComment
if($eq activity.activityType 'deleteComment')
| {{{_ 'activity-deleteComment' activity.commentId}}}.
if($eq activity.activityType 'deleteComment')
| {{{_ 'activity-deleteComment' activity.commentId}}}.
if($eq activity.activityType 'editComment')
| {{{_ 'activity-editComment' activity.commentId}}}.
if($eq activity.activityType 'editComment')
| {{{_ 'activity-editComment' activity.commentId}}}.
else
//- if we are not in card mode we only display a summary of the comment
if($eq activity.activityType 'addComment')
| {{{_ 'activity-on' cardLink}}}
a.activity-comment(href="{{ activity.card.originRelativeUrl }}")
+viewer
= activity.comment.text
if($eq activity.activityType 'addComment')
| {{{_ 'activity-on' cardLink}}}
a.activity-comment(href="{{ activity.card.originRelativeUrl }}")
+viewer
= activity.comment.text
//- date activity ------------------------------------------------
if($eq activity.activityType 'a-receivedAt')
@@ -206,6 +161,9 @@ template(name="activity")
if($eq activity.activityType 'archivedList')
| {{_ 'activity-archived' (sanitize listLabel)}}.
if($eq activity.activityType 'changedListTitle')
| {{_ 'activity-changedListTitle' (sanitize listLabel) boardLabelLink}}
//- member activity ----------------------------------------------------
if($eq activity.activityType 'joinMember')
if($eq user._id activity.member._id)
+22 -36
View File
@@ -17,8 +17,10 @@ BlazeComponent.extendComponent({
if (mode) {
const capitalizedMode = Utils.capitalize(mode);
let searchId;
const showActivities = this.showActivities();
if (mode === 'linkedcard' || mode === 'linkedboard') {
searchId = Utils.getCurrentCard().linkedId;
const currentCard = Utils.getCurrentCard();
searchId = currentCard.linkedId;
mode = mode.replace('linked', '');
} else if (mode === 'card') {
searchId = Utils.getCurrentCardId();
@@ -26,11 +28,9 @@ BlazeComponent.extendComponent({
searchId = Session.get(`current${capitalizedMode}`);
}
const limit = this.page.get() * activitiesPerPage;
const user = ReactiveCache.getCurrentUser();
const hideSystem = user ? user.hasHiddenSystemMessages() : false;
if (searchId === null) return;
this.subscribe('activities', mode, searchId, limit, hideSystem, () => {
this.subscribe('activities', mode, searchId, limit, showActivities, () => {
this.loadNextPageLocked = false;
// TODO the guard can be removed as soon as the TODO above is resolved
@@ -56,14 +56,26 @@ BlazeComponent.extendComponent({
this.loadNextPageLocked = true;
}
},
}).register('activities');
Template.activities.helpers({
activities() {
const ret = this.card.activities();
showActivities() {
let ret = false;
let mode = this.data()?.mode;
if (mode) {
if (mode === 'linkedcard' || mode === 'linkedboard') {
const currentCard = Utils.getCurrentCard();
ret = currentCard.showActivities ?? false;
} else if (mode === 'card') {
ret = this.data()?.card?.showActivities ?? false;
} else {
ret = Utils.getCurrentBoard().showActivities ?? false;
}
}
return ret;
},
});
activities() {
const ret = this.data().card.activities();
return ret;
},
}).register('activities');
BlazeComponent.extendComponent({
checkItem() {
@@ -249,32 +261,6 @@ BlazeComponent.extendComponent({
return customField.name;
},
events() {
return [
{
// XXX We should use Popup.afterConfirmation here
'click .js-delete-comment': Popup.afterConfirm('deleteComment', () => {
const commentId = this.data().activity.commentId;
CardComments.remove(commentId);
Popup.back();
}),
'submit .js-edit-comment'(evt) {
evt.preventDefault();
const commentText = this.currentComponent()
.getValue()
.trim();
const commentId = Template.parentData().activity.commentId;
if (commentText) {
CardComments.update(commentId, {
$set: {
text: commentText,
},
});
}
},
},
];
},
}).register('activity');
Template.activity.helpers({
+75
View File
@@ -63,3 +63,78 @@
display: block;
margin: auto;
}
.comments {
clear: both;
}
.comments .comment {
margin: 0.5px 0;
padding: 6px 0;
display: flex;
}
.comments .comment .member {
width: 32px;
height: 32px;
}
.comments .comment .comment-member {
font-weight: 700;
}
.comments .comment .comment-desc {
word-wrap: break-word;
overflow: hidden;
flex: 1;
align-self: center;
margin: 0;
margin-left: 3px;
overflow: hidden;
word-break: break-word;
}
.comments .comment .comment-desc .comment-text {
display: block;
border-radius: 3px;
background: #fff;
text-decoration: none;
box-shadow: 0 1px 2px rgba(0,0,0,0.2);
margin-top: 5px;
padding: 5px;
}
.comments .comment .comment-desc .reactions {
display: flex;
margin-top: 5px;
gap: 5px;
}
.comments .comment .comment-desc .reactions .open-comment-reaction-popup {
display: flex;
align-items: center;
text-decoration: none;
height: 24px;
}
.comments .comment .comment-desc .reactions .open-comment-reaction-popup i.fa.fa-smile-o {
font-size: 17px;
font-weight: 500;
margin-left: 2px;
}
.comments .comment .comment-desc .reactions .open-comment-reaction-popup i.fa.fa-plus {
font-size: 8px;
margin-top: -7px;
margin-left: 1px;
}
.comments .comment .comment-desc .reactions .reaction {
cursor: pointer;
border: 1px solid #808080;
border-radius: 15px;
display: flex;
padding: 2px 5px;
}
.comments .comment .comment-desc .reactions .reaction.selected {
background-color: #b0c4de;
}
.comments .comment .comment-desc .reactions .reaction:hover {
background-color: #b0c4de;
}
.comments .comment .comment-desc .reactions .reaction .reaction-count {
font-size: 12px;
}
.comments .comment .comment-desc .comment-meta {
font-size: 0.8em;
color: #999;
}
@@ -7,3 +7,59 @@ template(name="commentForm")
| {{getUnsavedValue 'cardComment' currentCard._id}}
.add-controls
button.primary.confirm.clear.js-add-comment(type="submit") {{_ 'comment'}}
template(name="comments")
.comments
each commentData in getComments
+comment(commentData)
template(name="comment")
.comment
+userAvatar(userId=userId)
p.comment-desc
span.comment-member
+memberName(user=user)
+inlinedForm(classNames='js-edit-comment')
+editor(autofocus=true)
= text
.edit-controls
button.primary(type="submit") {{_ 'edit'}}
.fa.fa-times-thin.js-close-inlined-form
else
.comment-text
+viewer
= text
+commentReactions(reactions=reactions commentId=_id)
span(title=createdAt).comment-meta {{ moment createdAt }}
if($eq currentUser._id userId)
+editOrDeleteComment
else if currentUser.isBoardAdmin
+editOrDeleteComment
template(name="editOrDeleteComment")
= ' - '
a.js-open-inlined-form {{_ "edit"}}
= ' - '
a.js-delete-comment {{_ "delete"}}
template(name="deleteCommentPopup")
p {{_ "comment-delete"}}
button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
template(name="commentReactions")
.reactions
each reaction in reactions
span.reaction(class="{{#if isSelected reaction.userIds}}selected{{/if}}" data-codepoint="#{reaction.reactionCodepoint}" title="{{userNames reaction.userIds}}")
span.reaction-codepoint !{reaction.reactionCodepoint}
span.reaction-count #{reaction.userIds.length}
if (currentUser.isBoardMember)
a.open-comment-reaction-popup(title="{{_ 'addReactionPopup-title'}}")
i.fa.fa-smile-o
i.fa.fa-plus
template(name="addReactionPopup")
.reactions-popup
each codepoint in codepoints
span.add-comment-reaction(data-codepoint="#{codepoint}") !{codepoint}
+35
View File
@@ -55,6 +55,41 @@ BlazeComponent.extendComponent({
},
}).register('commentForm');
BlazeComponent.extendComponent({
getComments() {
const ret = this.data().comments();
return ret;
},
}).register("comments");
BlazeComponent.extendComponent({
events() {
return [
{
'click .js-delete-comment': Popup.afterConfirm('deleteComment', () => {
const commentId = this.data()._id;
CardComments.remove(commentId);
Popup.back();
}),
'submit .js-edit-comment'(evt) {
evt.preventDefault();
const commentText = this.currentComponent()
.getValue()
.trim();
const commentId = this.data()._id;
if (commentText) {
CardComments.update(commentId, {
$set: {
text: commentText,
},
});
}
},
},
];
},
}).register("comment");
// XXX This should be a static method of the `commentForm` component
function resetCommentInput(input) {
input.val(''); // without manually trigger, input event won't be fired
-3
View File
@@ -16,9 +16,6 @@
transition: margin 0.1s;
overflow-y: auto;
}
.board-wrapper .board-canvas.is-sibling-sidebar-open {
margin-right: 248px;
}
.board-wrapper .board-canvas .board-overlay {
position: fixed;
left: 0;
+1 -1
View File
@@ -17,7 +17,6 @@ template(name="boardBody")
| {{_ 'tableVisibilityMode-allowPrivateOnly'}}
else
.board-wrapper(class=currentBoard.colorClass)
+sidebar
.board-canvas.js-swimlanes.dragscroll(
class="{{#if Sidebar.isOpen}}is-sibling-sidebar-open{{/if}}"
class="{{#if MultiSelection.isActive}}is-multiselection-active{{/if}}"
@@ -36,6 +35,7 @@ template(name="boardBody")
+calendarView
else
+listsGroup(currentBoard)
+sidebar
template(name="calendarView")
if isViewCalendar
File diff suppressed because it is too large. Load diff
+7 -10
View File
@@ -151,8 +151,8 @@ BlazeComponent.extendComponent({
}
const currUser = ReactiveCache.getCurrentUser();
let orgIdsUserBelongs = currUser !== undefined && currUser.teams !== 'undefined' ? currUser.orgIdsUserBelongs() : '';
if (orgIdsUserBelongs && orgIdsUserBelongs != '') {
let orgIdsUserBelongs = currUser?.orgIdsUserBelongs() || '';
if (orgIdsUserBelongs) {
let orgsIds = orgIdsUserBelongs.split(',');
// for(let i = 0; i < orgsIds.length; i++){
// query.$and[2].$or.push({'orgs.orgId': orgsIds[i]});
@@ -162,8 +162,8 @@ BlazeComponent.extendComponent({
query.$and[2].$or.push({ 'orgs.orgId': { $in: orgsIds } });
}
let teamIdsUserBelongs = currUser !== undefined && currUser.teams !== 'undefined' ? currUser.teamIdsUserBelongs() : '';
if (teamIdsUserBelongs && teamIdsUserBelongs != '') {
let teamIdsUserBelongs = currUser?.teamIdsUserBelongs() || '';
if (teamIdsUserBelongs) {
let teamsIds = teamIdsUserBelongs.split(',');
// for(let i = 0; i < teamsIds.length; i++){
// query.$or[2].$or.push({'teams.teamId': teamsIds[i]});
@@ -199,15 +199,12 @@ BlazeComponent.extendComponent({
},
boardMembers(boardId) {
let boardMembers = [];
/* Bug Board icons random dance https://github.com/wekan/wekan/issues/4214
const lists = ReactiveCache.getBoard(boardId)
let members = lists.members
members.forEach(member => {
boardMembers.push(member.userId);
});
*/
const boardMembers = lists?.members.map(member => member.userId);
return boardMembers;
*/
return [];
},
isStarred() {
-2
View File
@@ -117,8 +117,6 @@ template(name="attachmentActionsPopup")
| {{_ 'remove-background-image'}}
else
| {{_ 'add-background-image'}}
p.attachment-storage
| {{versions.original.storage}}
if $neq versions.original.storage "fs"
a.js-move-storage-fs
+2 -2
View File
@@ -39,7 +39,7 @@ Template.attachmentGallery.events({
'click .js-rename': Popup.open('attachmentRename'),
'click .js-confirm-delete': Popup.afterConfirm('attachmentDelete', function() {
Attachments.remove(this._id);
Popup.back(2);
Popup.back();
}),
});
@@ -501,7 +501,7 @@ BlazeComponent.extendComponent({
if (name === DOMPurify.sanitize(name)) {
Meteor.call('renameAttachment', this.data()._id, name);
}
Popup.back(2);
Popup.back();
},
}
]
+5 -1
View File
@@ -5,7 +5,7 @@
float: left;
height: 30px;
width: 30px;
margin: 0 4px 4px 0;
margin: .3vh;
cursor: pointer;
user-select: none;
z-index: 1;
@@ -90,6 +90,10 @@
transition: flex-basis 0.1s;
box-sizing: border-box;
}
.card-details::-webkit-scrollbar {
/* Hide scroll bars from middle of the screen */
display: none !important;
}
.card-details .mCustomScrollBox {
padding-left: 0;
}
+25 -15
View File
@@ -527,9 +527,10 @@ template(name="cardDetails")
if currentBoard.allowsDescriptionText
a.js-open-inlined-form(title="{{_ 'edit'}}" value=title)
i.fa.fa-pencil-square-o
if getDescription
+viewer
= getDescription
a.js-open-inlined-form(title="{{_ 'edit'}}" value=title)
if getDescription
+viewer
= getDescription
if (hasUnsavedValue 'cardDescription' _id)
p.quiet
| {{_ 'unsaved-description'}}
@@ -548,7 +549,7 @@ template(name="cardDetails")
.card-checklist-attachmentGallery.card-checklists
if currentBoard.allowsChecklists
hr
+checklists(cardId = _id)
+checklists(cardId = _id card = this)
if currentBoard.allowsSubtasks
hr
+subtasks(cardId = _id)
@@ -568,25 +569,34 @@ template(name="cardDetails")
+attachmentGallery
hr
unless currentUser.isNoComments
.comment-title
h3.card-details-item-title
i.fa.fa-comment-o
| {{_ 'comments'}}
if currentBoard.allowsComments
if currentUser.isBoardMember
unless currentUser.isNoComments
+commentForm
+comments
hr
.card-details-right
unless currentUser.isNoComments
.activity-title
h3.card-details-item-title
i.fa.fa-history
| {{ _ 'activity'}}
| {{ _ 'activities'}}
if currentUser.isBoardMember
.material-toggle-switch(title="{{_ 'hide-system-messages'}}")
//span.toggle-switch-title
if hiddenSystemMessages
input.toggle-switch(type="checkbox" id="toggleButton" checked="checked")
.material-toggle-switch(title="{{_ 'show-activities'}}")
if showActivities
input.toggle-switch(type="checkbox" id="toggleShowActivitiesCard" checked="checked")
else
input.toggle-switch(type="checkbox" id="toggleButton")
label.toggle-label(for="toggleButton")
if currentBoard.allowsComments
if currentUser.isBoardMember
unless currentUser.isNoComments
+commentForm
input.toggle-switch(type="checkbox" id="toggleShowActivitiesCard")
label.toggle-label(for="toggleShowActivitiesCard")
unless currentUser.isNoComments
if isLoaded.get
if isLinkedCard
+5 -6
View File
@@ -63,10 +63,6 @@ BlazeComponent.extendComponent({
return card.findWatcher(Meteor.userId());
},
hiddenSystemMessages() {
return ReactiveCache.getCurrentUser().hasHiddenSystemMessages();
},
customFieldsGrid() {
return ReactiveCache.getCurrentUser().hasCustomFieldsGrid();
},
@@ -377,8 +373,11 @@ BlazeComponent.extendComponent({
Session.set('cardDetailsIsDragging', false);
Session.set('cardDetailsIsMouseDown', false);
},
'click #toggleButton'() {
Meteor.call('toggleSystemMessages');
'click #toggleShowActivitiesCard'() {
this.data().toggleShowActivities();
},
'click #toggleHideCheckedChecklistItems'() {
this.data().toggleHideCheckedChecklistItems();
},
'click #toggleCustomFieldsGridButton'() {
Meteor.call('toggleCustomFieldsGrid');
-16
View File
@@ -8,20 +8,6 @@ textarea.js-edit-checklist-item {
resize: none;
height: 34px;
}
.card-details .text-show-at-minicard {
width: 350px;
text-align: left;
}
.minicard .text-show-at-minicard {
display: none;
}
.text-some-space {
width: 20px;
}
.text-hide-checked-items {
width: 400px;
text-align: left;
}
.delete-text,
.js-delete-checklist-item,
.js-convert-checklist-item-to-card {
@@ -40,8 +26,6 @@ textarea.js-edit-checklist-item {
display: flex;
justify-content: space-between;
}
.checklist-progress-bar-container {
display: flex;
flex-direction: row;
+38 -26
View File
@@ -9,10 +9,19 @@ template(name="checklists")
else
a.add-checklist-top.js-open-inlined-form(title="{{_ 'add-checklist'}}")
i.fa.fa-plus
if currentUser.isBoardMember
.material-toggle-switch(title="{{_ 'hide-finished-checklist'}}")
//span.toggle-switch-title
if card.hideFinishedChecklistIfItemsAreHidden
input.toggle-switch(type="checkbox" id="toggleHideFinishedChecklist" checked="checked")
else
input.toggle-switch(type="checkbox" id="toggleHideFinishedChecklist")
label.toggle-label(for="toggleHideFinishedChecklist")
.card-checklist-items
each checklist in checklists
+checklistDetail(checklist=checklist)
if checklist.showChecklist card.hideFinishedChecklistIfItemsAreHidden
+checklistDetail(checklist = checklist card = card)
if canModifyCard
+inlinedForm(autoclose=false classNames="js-add-checklist" cardId = cardId)
@@ -47,7 +56,7 @@ template(name="checklistDetail")
.checklist-progress-text {{finishedPercent}}%
.checklist-progress-bar
.checklist-progress(style="width:{{finishedPercent}}%")
+checklistItems(checklist = checklist)
+checklistItems(checklist = checklist card = card)
template(name="checklistDeletePopup")
p {{_ 'confirm-checklist-delete-popup'}}
@@ -64,6 +73,12 @@ template(name="addChecklistItemForm")
.material-toggle-switch(title="{{_ 'newlineBecomesNewChecklistItem'}}")
input.toggle-switch(type="checkbox" id="toggleNewlineBecomesNewChecklistItem")
label.toggle-label(for="toggleNewlineBecomesNewChecklistItem")
| {{_ 'newLineNewItem'}}
if $eq position 'top'
.material-toggle-switch(title="{{_ 'newlineBecomesNewChecklistItemOriginOrder'}}")
input.toggle-switch(type="checkbox" id="toggleNewlineBecomesNewChecklistItemOriginOrder")
label.toggle-label(for="toggleNewlineBecomesNewChecklistItemOriginOrder")
| {{_ 'originOrder'}}
template(name="editChecklistItemForm")
a.fa.fa-copy(title="{{_ 'copy-text-to-clipboard'}}")
@@ -87,7 +102,7 @@ template(name="checklistItems")
if checklist.items.length
if canModifyCard
+inlinedForm(autoclose=false classNames="js-add-checklist-item" checklist = checklist position="top")
+addChecklistItemForm(checklist=checklist showNewlineBecomesNewChecklistItem=true)
+addChecklistItemForm(checklist=checklist showNewlineBecomesNewChecklistItem=true position="top")
else
a.add-checklist-item.js-open-inlined-form(title="{{_ 'add-checklist-item'}}")
i.fa.fa-plus
@@ -96,7 +111,7 @@ template(name="checklistItems")
+inlinedForm(classNames="js-edit-checklist-item" item = item checklist = checklist)
+editChecklistItemForm(type = 'item' item = item checklist = checklist)
else
+checklistItemDetail(item = item checklist = checklist)
+checklistItemDetail(item = item checklist = checklist card = card)
if canModifyCard
+inlinedForm(autoclose=false classNames="js-add-checklist-item" checklist = checklist)
+addChecklistItemForm(checklist=checklist showNewlineBecomesNewChecklistItem=true)
@@ -105,7 +120,7 @@ template(name="checklistItems")
i.fa.fa-plus
template(name='checklistItemDetail')
.js-checklist-item.checklist-item(class="{{#if item.isFinished }}is-checked{{#if hideCheckedItems}} invisible{{/if}}{{/if}}"
.js-checklist-item.checklist-item(class="{{#if item.isFinished }}is-checked{{#if checklist.hideCheckedChecklistItems}} invisible{{/if}}{{/if}}{{#if checklist.hideAllChecklistItems}} is-checked invisible{{/if}}"
role="checkbox" aria-checked="{{#if item.isFinished }}true{{else}}false{{/if}}" tabindex="0")
if canModifyCard
.check-box-container
@@ -122,27 +137,6 @@ template(name='checklistItemDetail')
= item.title
template(name="checklistActionsPopup")
if currentUser.isBoardMember
span.text-show-at-minicard
| {{_ 'show-at-minicard'}}
.material-toggle-switch(title="{{_ 'show-checklist-at-minicard'}}")
if showAtMinicard
input.toggle-switch(type="checkbox" id="toggleShowChecklistAtMinicardButton" checked="checked")
else
input.toggle-switch(type="checkbox" id="toggleShowChecklistAtMinicardButton")
label.toggle-label(for="toggleShowChecklistAtMinicardButton")
hr
span.text-hide-checked-items
| {{_ 'hide-checked-items'}}
.material-toggle-switch(title="{{_ 'hide-checked-items'}}")
//span.toggle-switch-title
//.check-square-icon.i.fa.fa-check-square-o
if hideCheckedItems
input.toggle-switch(type="checkbox" id="toggleHideCheckedItemsButton" checked="checked")
else
input.toggle-switch(type="checkbox" id="toggleHideCheckedItemsButton")
label.toggle-label(for="toggleHideCheckedItemsButton")
hr
ul.pop-over-list
li
a.js-delete-checklist.delete-checklist
@@ -154,6 +148,24 @@ template(name="checklistActionsPopup")
a.js-copy-checklist.copy-checklist
i.fa.fa-copy
| {{_ "copyChecklist"}} ...
a.js-hide-checked-checklist-items
i.fa.fa-eye-slash
| {{_ "hideCheckedChecklistItems"}} ...
.material-toggle-switch(title="{{_ 'hide-checked-items'}}")
if checklist.hideCheckedChecklistItems
input.toggle-switch(type="checkbox" id="toggleHideCheckedChecklistItems_{{checklist._id}}" checked="checked")
else
input.toggle-switch(type="checkbox" id="toggleHideCheckedChecklistItems_{{checklist._id}}")
label.toggle-label(for="toggleHideCheckedChecklistItems_{{checklist._id}}")
a.js-hide-all-checklist-items
i.fa.fa-ban
| {{_ "hideAllChecklistItems"}} ...
.material-toggle-switch(title="{{_ 'hideAllChecklistItems'}}")
if checklist.hideAllChecklistItems
input.toggle-switch(type="checkbox" id="toggleHideAllChecklistItems_{{checklist._id}}" checked="checked")
else
input.toggle-switch(type="checkbox" id="toggleHideAllChecklistItems_{{checklist._id}}")
label.toggle-label(for="toggleHideAllChecklistItems_{{checklist._id}}")
template(name="copyChecklistPopup")
+copyAndMoveChecklist
+28 -43
View File
@@ -119,6 +119,7 @@ BlazeComponent.extendComponent({
event.preventDefault();
const textarea = this.find('textarea.js-add-checklist-item');
const newlineBecomesNewChecklistItem = this.find('input#toggleNewlineBecomesNewChecklistItem');
const newlineBecomesNewChecklistItemOriginOrder = this.find('input#toggleNewlineBecomesNewChecklistItemOriginOrder');
const title = textarea.value.trim();
const checklist = this.currentData().checklist;
@@ -127,22 +128,28 @@ BlazeComponent.extendComponent({
if (newlineBecomesNewChecklistItem.checked) {
checklistItems = title.split('\n').map(_value => _value.trim());
if (this.currentData().position === 'top') {
checklistItems = checklistItems.reverse();
if (newlineBecomesNewChecklistItemOriginOrder.checked === false) {
checklistItems = checklistItems.reverse();
}
}
}
let addIndex;
let sortIndex;
if (this.currentData().position === 'top') {
sortIndex = Utils.calculateIndexData(null, checklist.firstItem()).base;
addIndex = -1;
} else {
sortIndex = Utils.calculateIndexData(checklist.lastItem(), null).base;
addIndex = 1;
}
for (let checklistItem of checklistItems) {
let sortIndex;
if (this.currentData().position === 'top') {
sortIndex = Utils.calculateIndexData(null, checklist.firstItem()).base;
} else {
sortIndex = Utils.calculateIndexData(checklist.lastItem(), null).base;
}
ChecklistItems.insert({
title: checklistItem,
checklistId: checklist._id,
cardId: checklist.cardId,
sort: sortIndex,
});
sortIndex += addIndex;
}
}
// We keep the form opened, empty it.
@@ -201,12 +208,8 @@ BlazeComponent.extendComponent({
},
events() {
const events = {
};
return [
{
...events,
'click .js-open-checklist-details-menu': Popup.open('checklistActions'),
'submit .js-add-checklist': this.addChecklist,
'submit .js-edit-checklist-title': this.editChecklist,
@@ -217,6 +220,10 @@ BlazeComponent.extendComponent({
'focus .js-add-checklist-item': this.focusChecklistItem,
// add and delete checklist / checklist-item
'click .js-open-inlined-form': this.closeAllInlinedForms,
'click #toggleHideFinishedChecklist'(event) {
event.preventDefault();
this.data().card.toggleHideFinishedChecklist();
},
keydown: this.pressKey,
},
];
@@ -271,16 +278,6 @@ Template.checklists.helpers({
const ret = card.checklists();
return ret;
},
showAtMinicard() {
const card = ReactiveCache.getCard(this.cardId);
const ret = card.checklists({'showAtMinicard':1});
return ret;
},
hideCheckedItems() {
const currentUser = ReactiveCache.getCurrentUser();
if (currentUser) return currentUser.hasHideCheckedItems();
return false;
},
});
BlazeComponent.extendComponent({
@@ -303,26 +300,9 @@ BlazeComponent.extendComponent({
}).register('addChecklistItemForm');
BlazeComponent.extendComponent({
toggleItem() {
const checklist = this.currentData().checklist;
const item = this.currentData().item;
if (checklist && item && item._id) {
item.toggleItem();
}
},
events() {
return [
{
'click .js-checklist-item .check-box-container': this.toggleItem,
'click #toggleShowChecklistAtMinicardButton'() {
const checklist = this.checklist;
if (checklist && checklist._id) {
Meteor.call('toggleShowChecklistAtMinicard', checklist._id);
}
},
'click #toggleHideCheckedItemsButton'() {
Meteor.call('toggleHideCheckedItems');
},
'click .js-delete-checklist': Popup.afterConfirm('checklistDelete', function () {
Popup.back(2);
const checklist = this.checklist;
@@ -332,6 +312,16 @@ BlazeComponent.extendComponent({
}),
'click .js-move-checklist': Popup.open('moveChecklist'),
'click .js-copy-checklist': Popup.open('copyChecklist'),
'click .js-hide-checked-checklist-items'(event) {
event.preventDefault();
this.data().checklist.toggleHideCheckedChecklistItems();
Popup.back();
},
'click .js-hide-all-checklist-items'(event) {
event.preventDefault();
this.data().checklist.toggleHideAllChecklistItems();
Popup.back();
},
}
]
}
@@ -357,11 +347,6 @@ BlazeComponent.extendComponent({
}).register('editChecklistItemForm');
Template.checklistItemDetail.helpers({
hideCheckedItems() {
const user = ReactiveCache.getCurrentUser();
if (user) return user.hasHideCheckedItems();
return false;
},
});
BlazeComponent.extendComponent({
-17
View File
@@ -1,12 +1,3 @@
.minicard .checklists-title,
.minicard .add-checklist,
.minicard .add-checklist-item,
.minicard .checklist-details-menu {
display: none;
}
.minicard .checklist-progress-bar-container {
width: 190px; /* TODO: Add adjustable width https://github.com/wekan/wekan/pull/4964 */
}
.minicard-wrapper {
cursor: pointer;
position: relative;
@@ -138,14 +129,6 @@
max-width: 100%;
margin-right: 4px;
}
/*
.minicard .checklists-title,
.minicard .add-checklist,
.minicard .add-checklist-item,
.minicard .checklist-details-menu {
display: none;
}
*/
.minicard .handle {
width: 20px;
height: 20px;
-6
View File
@@ -112,12 +112,6 @@ template(name="minicard")
+viewer
= trueValue
.card-checklist-attachmentGalleries
.card-checklist-attachmentGallery.card-checklists
if currentBoard.allowsChecklists
//hr
//+checklists(cardId=_id showAtMinicard=true)
if showAssignee
if getAssignees
.minicard-assignees.js-minicard-assignees
+1 -10
View File
@@ -42,11 +42,7 @@ BlazeComponent.extendComponent({
const board = this.data().board();
let ret = false;
if (board) {
ret =
board.allowsCreatorOnMinicard === null ||
board.allowsCreatorOnMinicard === undefined ||
board.allowsCreatorOnMinicard
;
ret = board.allowsCreatorOnMinicard ?? false;
}
return ret;
},
@@ -92,11 +88,6 @@ BlazeComponent.extendComponent({
events() {
return [
{
'click .minicard-checklists'() {
// Prevents clicking checklist at minicard from opening card details,
// while still allowing checking checlist items.
event.preventDefault();
},
'click .js-linked-link'() {
if (this.data().isLinkedCard()) Utils.goCardId(this.data().linkedId);
else if (this.data().isLinkedBoard())
+11 -13
View File
@@ -7,17 +7,11 @@
border-left: 1px solid #ccc;
padding: 0;
float: left;
/* min-width: 100px; TODO(mark-i-m): hardcoded? */
/*max-width: 270px;*/
/* Reverted incomplete change list width: */
/* https://github.com/wekan/wekan/issues/4558 */
/* Orinal width: 270px. Changes not saved yet: */
/*resize: both; - List width and height resizeable */
/* overflow: auto; - List width and height resizeable */
}
[id^="swimlane-"] .list:first-child {
min-width: 20px;
}
.list:first-child {
min-width: 20px;
margin-left: 5px;
border-left: none;
}
.card-details + .list {
@@ -48,7 +42,7 @@
}
.list-header-add {
flex: 0 0 auto;
padding: 20px 12px 4px;
padding: 12px;
position: relative;
min-height: 20px;
}
@@ -154,6 +148,10 @@
overflow-y: auto;
padding: 5px 11px;
}
.list-body::-webkit-scrollbar {
/* Hide scroll bars from middle of the screen */
display: none !important;
}
.list-body .minicards {
flex-grow: 1;
flex-shrink: 0;
@@ -251,11 +249,11 @@
padding: 15px 19px;
}
.list-header {
padding: 0 12px 0px;
/*Updated padding values for mobile devices, this should fix text grouping issue*/
padding: 20px 0px 20px 0px;
border-bottom: 0px solid #e4e4e4;
height: 60px;
min-height: 30px;
margin-top: 10px;
display: flex;
align-items: center;
}
.list-header .list-header-left-icon {
+1 -1
View File
@@ -196,7 +196,7 @@ BlazeComponent.extendComponent({
},
listWidth() {
const user = Meteor.user();
const user = ReactiveCache.getCurrentUser();
const list = Template.currentData();
return user.getListWidth(list.boardId, list._id);
},
+7 -7
View File
@@ -5,16 +5,14 @@ template(name="listHeader")
+inlinedForm
+editListTitleForm
else
unless isMiniScreen
if isMiniScreen
if currentList
a.list-header-left-icon.fa.fa-angle-left.js-unselect-list
else
if collapsed
a.js-collapse(title="{{_ 'uncollapse'}}")
i.fa.fa-arrow-left.list-header-uncollapse-left
i.fa.fa-arrow-right.list-header-uncollapse-right
if isMiniScreen
if currentList
a.list-header-left-icon.fa.fa-angle-left.js-unselect-list
unless isMiniScreen
if collapsed
if showCardsCountForList cards.length
br
span.cardCount {{cardsCount}}
@@ -28,7 +26,9 @@ template(name="listHeader")
|&nbsp;(
span(class="{{#if exceededWipLimit}}highlight{{/if}}") {{cards.length}}
|/#{wipLimit.value})
unless isMiniScreen
if showCardsCountForList cards.length
span.cardCount {{cardsCount}} {{cardsCountForListIsOne cards.length}}
else
div(class="{{#if collapsed}}list-rotated{{/if}}")
h2.list-header-name(
title="{{ moment modifiedAt 'LLL' }}"
+1 -1
View File
@@ -362,7 +362,7 @@ BlazeComponent.extendComponent({
listWidthValue() {
const list = Template.currentData();
const board = list.boardId;
return Meteor.user().getListWidth(board, list._id);
return ReactiveCache.getCurrentUser().getListWidth(board, list._id);
},
events() {
+4 -4
View File
@@ -2,15 +2,15 @@
.inlined-form a.fa.fa-brands.fa-markdown {
float: right;
position: absolute;
top: -20px;
top: -10px;
right: 60px;
}
.new-comment a.fa.fa-copy,
.inlined-form a.fa.fa-copy {
float: right;
position: absolute;
top: -20px;
right: 6px;
position: relative;
top: -10px;
right: 5px;
}
.js-inlined-form.viewer.btn-sm {
position: absolute;
+2 -2
View File
@@ -500,9 +500,9 @@ template(name="modifyTeamsUsers")
| {{_ 'r-action'}}
.form-group.flex
input.wekan-form-control#addAction(type="radio" name="action" value="true" checked="checked")
span {{_ 'add'}}
label(for=addAction) {{_ 'add'}}
input.wekan-form-control#deleteAction(type="radio" name="action" value="false")
span {{_ 'delete'}}
label(for=deleteAction) {{_ 'delete'}}
div.buttonsContainer
input.primary.wide#addTeamBtn(type="submit" value="{{_ 'save'}}")
input.primary.wide#cancelBtn(type="submit" value="{{_ 'cancel'}}")
+18 -18
View File
@@ -137,34 +137,32 @@ template(name='tableVisibilityModeSettings')
.title {{_ 'tableVisibilityMode-allowPrivateOnly'}}
.form-group.flex
input.wekan-form-control#accounts-allowPrivateOnly(type="radio" name="allowPrivateOnly" value="true" checked="{{#if allowPrivateOnly}}checked{{/if}}")
span {{_ 'yes'}}
label {{_ 'yes'}}
input.wekan-form-control#accounts-allowPrivateOnly(type="radio" name="allowPrivateOnly" value="false" checked="{{#unless allowPrivateOnly}}checked{{/unless}}")
span {{_ 'no'}}
label {{_ 'no'}}
button.js-tableVisibilityMode-save.primary {{_ 'save'}}
template(name='accountSettings')
ul#account-setting.setting-detail
li
button.js-all-hide-system-messages.primary {{_ 'hide-system-messages-of-all-users'}}
li.accounts-form
.title {{_ 'accounts-allowEmailChange'}}
.form-group.flex
input.wekan-form-control#accounts-allowEmailChange(type="radio" name="allowEmailChange" value="true" checked="{{#if allowEmailChange}}checked{{/if}}")
span {{_ 'yes'}}
label {{_ 'yes'}}
input.wekan-form-control#accounts-allowEmailChange(type="radio" name="allowEmailChange" value="false" checked="{{#unless allowEmailChange}}checked{{/unless}}")
span {{_ 'no'}}
label {{_ 'no'}}
.title {{_ 'accounts-allowUserNameChange'}}
.form-group.flex
input.wekan-form-control#accounts-allowUserNameChange(type="radio" name="allowUserNameChange" value="true" checked="{{#if allowUserNameChange}}checked{{/if}}")
span {{_ 'yes'}}
label {{_ 'yes'}}
input.wekan-form-control#accounts-allowUserNameChange(type="radio" name="allowUserNameChange" value="false" checked="{{#unless allowUserNameChange}}checked{{/unless}}")
span {{_ 'no'}}
label {{_ 'no'}}
.title {{_ 'accounts-allowUserDelete'}}
.form-group.flex
input.wekan-form-control#accounts-allowUserDelete(type="radio" name="allowUserDelete" value="true" checked="{{#if allowUserDelete}}checked{{/if}}")
span {{_ 'yes'}}
label {{_ 'yes'}}
input.wekan-form-control#accounts-allowUserDelete(type="radio" name="allowUserDelete" value="false" checked="{{#unless allowUserDelete}}checked{{/unless}}")
span {{_ 'no'}}
label {{_ 'no'}}
button.js-accounts-save.primary {{_ 'save'}}
template(name='announcementSettings')
@@ -185,6 +183,8 @@ template(name='announcementSettings')
template(name='layoutSettings')
ul#layout-setting.setting-detail
li
button.js-all-boards-hide-activities.primary {{_ 'hide-activities-of-all-boards'}}
li.layout-form
.title {{_ 'oidc-button-text'}}
.form-group
@@ -201,9 +201,9 @@ template(name='layoutSettings')
.title {{_ 'display-authentication-method'}}
.form-group.flex
input.wekan-form-control#display-authentication-method(type="radio" name="displayAuthenticationMethod" value="true" checked="{{#if currentSetting.displayAuthenticationMethod}}checked{{/if}}")
span {{_ 'yes'}}
label {{_ 'yes'}}
input.wekan-form-control#display-authentication-method(type="radio" name="displayAuthenticationMethod" value="false" checked="{{#unless currentSetting.displayAuthenticationMethod}}checked{{/unless}}")
span {{_ 'no'}}
label {{_ 'no'}}
li.layout-form
.title {{_ 'default-authentication-method'}}
+selectAuthenticationMethod(authenticationMethod=currentSetting.defaultAuthenticationMethod)
@@ -218,9 +218,9 @@ template(name='layoutSettings')
.title {{_ 'hide-logo'}}
.form-group.flex
input.wekan-form-control#hide-logo(type="radio" name="hideLogo" value="true" checked="{{#if currentSetting.hideLogo}}checked{{/if}}")
span {{_ 'yes'}}
label {{_ 'yes'}}
input.wekan-form-control#hide-logo(type="radio" name="hideLogo" value="false" checked="{{#unless currentSetting.hideLogo}}checked{{/unless}}")
span {{_ 'no'}}
label {{_ 'no'}}
li.layout-form
.title {{_ 'custom-login-logo-image-url'}}
.form-group
@@ -257,16 +257,16 @@ template(name='layoutSettings')
.title {{_ 'hide-card-counter-list'}}
.form-group.flex
input.wekan-form-control#hide-card-counter-list(type="radio" name="hideCardCounterList" value="true" checked="{{#if currentSetting.hideCardCounterList}}checked{{/if}}")
span {{_ 'yes'}}
label {{_ 'yes'}}
input.wekan-form-control#hide-card-counter-list(type="radio" name="hideCardCounterList" value="false" checked="{{#unless currentSetting.hideCardCounterList}}checked{{/unless}}")
span {{_ 'no'}}
label {{_ 'no'}}
li.layout-form
.title {{_ 'hide-board-member-list'}}
.form-group.flex
input.wekan-form-control#hide-board-member-list(type="radio" name="hideBoardMemberList" value="true" checked="{{#if currentSetting.hideBoardMemberList}}checked{{/if}}")
span {{_ 'yes'}}
label {{_ 'yes'}}
input.wekan-form-control#hide-board-member-list(type="radio" name="hideBoardMemberList" value="false" checked="{{#unless currentSetting.hideBoardMemberList}}checked{{/unless}}")
span {{_ 'no'}}
label {{_ 'no'}}
li
button.js-save-layout.primary {{_ 'save'}}
+8 -8
View File
@@ -336,12 +336,12 @@ BlazeComponent.extendComponent({
allowUserDelete() {
return AccountSettings.findOne('accounts-allowUserDelete').booleanValue;
},
allHideSystemMessages() {
Meteor.call('setAllUsersHideSystemMessages', (err, ret) => {
allBoardsHideActivities() {
Meteor.call('setAllBoardsHideActivities', (err, ret) => {
if (!err && ret) {
if (ret === true) {
const message = `${TAPi18n.__(
'now-system-messages-of-all-users-are-hidden',
'now-activities-of-all-boards-are-hidden',
)}`;
alert(message);
}
@@ -359,7 +359,7 @@ BlazeComponent.extendComponent({
'click button.js-accounts-save': this.saveAccountsChange,
},
{
'click button.js-all-hide-system-messages': this.allHideSystemMessages,
'click button.js-all-boards-hide-activities': this.allBoardsHideActivities,
},
];
},
@@ -376,12 +376,12 @@ BlazeComponent.extendComponent({
allowPrivateOnly() {
return TableVisibilityModeSettings.findOne('tableVisibilityMode-allowPrivateOnly').booleanValue;
},
allHideSystemMessages() {
Meteor.call('setAllUsersHideSystemMessages', (err, ret) => {
allBoardsHideActivities() {
Meteor.call('setAllBoardsHideActivities', (err, ret) => {
if (!err && ret) {
if (ret === true) {
const message = `${TAPi18n.__(
'now-system-messages-of-all-users-are-hidden',
'now-activities-of-all-boards-are-hidden',
)}`;
alert(message);
}
@@ -399,7 +399,7 @@ BlazeComponent.extendComponent({
'click button.js-tableVisibilityMode-save': this.saveTableVisibilityChange,
},
{
'click button.js-all-hide-system-messages': this.allHideSystemMessages,
'click button.js-all-boards-hide-activities': this.allBoardsHideActivities,
},
];
},
+24 -23
View File
@@ -3,34 +3,37 @@
top: 0;
bottom: 0;
right: 0;
overflow-y: scroll;
}
.sidebar::-webkit-scrollbar {
/* Hide scroll bars from middle of the screen */
display: none !important;
}
.sidebar .sidebar-shadow {
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
background: #f7f7f7;
box-shadow: -10px 0px 5px -10px #b3b3b3;
z-index: 10;
height: 100%;
}
.sidebar-xmark {
position: absolute;
right: 10px;
top: 5px;
right: 0px;
top: 0px;
font-size: 25px;
padding: 10px;
}
.sidebar-xmark:hover {
background: rgba(0,0,0,0.15);
}
.sidebar-actions {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
padding: 10px 10px 0px 10px;
}
.sidebar .sidebar-content {
padding: 12px;
padding: 0 12px;
margin-bottom: 1.6em;
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
overflow-x: hidden;
overflow-y: auto;
width: 90%;
}
.sidebar .sidebar-content .hide-btn {
display: none;
@@ -106,21 +109,19 @@
margin-right: 10px;
}
.sidebar .sidebar-shortcuts {
position: absolute;
margin-left: 40%;
padding: 0;
top: 7px;
font-size: 0.8em;
line-height: 1.6em;
color: #999;
}
.board-sidebar {
width: 548px;
right: -548px;
display: none;
width: 30vw;
z-index: 100;
transition: top 0.1s, right 0.1s, width 0.1s;
}
.board-sidebar.is-open {
right: 0;
display: block;
}
.board-widget h4 {
margin: 5px 0;
+14 -7
View File
@@ -5,7 +5,12 @@ template(name="sidebar")
// title="{{showTongueTitle}}")
// i.fa.fa-navicon
.sidebar-shadow
a.sidebar-xmark.js-close-sidebar &#10005;
.sidebar-actions
.sidebar-shortcuts
a.board-header-btn.js-shortcuts(title="{{_ 'keyboard-shortcuts' }}")
i.fa.fa-keyboard-o
span {{_ 'keyboard-shortcuts' }}
a.sidebar-xmark.js-close-sidebar &#10005;
.sidebar-content.js-board-sidebar-content
//a.hide-btn.js-hide-sidebar
// i.fa.fa-navicon
@@ -28,9 +33,16 @@ template(name='homeSidebar')
.materialCheckBox(class="{{#if hiddenMinicardLabelText}}is-checked{{/if}}")
hr
unless currentUser.isNoComments
h3
h3.activity-title
i.fa.fa-comments-o
| {{_ 'activities'}}
.material-toggle-switch(title="{{_ 'show-activities'}}")
if showActivities
input.toggle-switch(type="checkbox" id="toggleShowActivitiesBoard" checked="checked")
else
input.toggle-switch(type="checkbox" id="toggleShowActivitiesBoard")
label.toggle-label(for="toggleShowActivitiesBoard")
+activities(mode="board")
template(name="membersWidget")
@@ -40,11 +52,6 @@ template(name="membersWidget")
a.board-header-btn.js-open-board-menu(title="{{_ 'boardMenuPopup-title'}}")
i.board-header-btn-icon.fa.fa-cog
| {{_ 'boardMenuPopup-title'}}
.board-widget.board-widget-members
.sidebar-shortcuts
a.board-header-btn.js-shortcuts(title="{{_ 'keyboard-shortcuts' }}")
i.fa.fa-keyboard-o
span {{_ 'keyboard-shortcuts' }}
hr
h3
i.fa.fa-users
+17 -12
View File
@@ -136,7 +136,7 @@ BlazeComponent.extendComponent({
Blaze.registerHelper('Sidebar', () => Sidebar);
Template.homeSidebar.helpers({
BlazeComponent.extendComponent({
hiddenMinicardLabelText() {
currentUser = ReactiveCache.getCurrentUser();
if (currentUser) {
@@ -147,7 +147,20 @@ Template.homeSidebar.helpers({
return false;
}
},
});
showActivities() {
let ret = Utils.getCurrentBoard().showActivities ?? false;
return ret;
},
events() {
return [
{
'click #toggleShowActivitiesBoard'() {
Utils.getCurrentBoard().toggleShowActivities();
},
},
];
},
}).register('homeSidebar');
Template.boardInfoOnMyBoardsPopup.helpers({
hideCardCounterList() {
@@ -913,19 +926,11 @@ BlazeComponent.extendComponent({
},
allowsCreator() {
return (
this.currentBoard.allowsCreator === null ||
this.currentBoard.allowsCreator === undefined ||
this.currentBoard.allowsCreator
);
return this.currentBoard.allowsCreator ?? false;
},
allowsCreatorOnMinicard() {
return (
this.currentBoard.allowsCreatorOnMinicard === null ||
this.currentBoard.allowsCreatorOnMinicard === undefined ||
this.currentBoard.allowsCreatorOnMinicard
);
return this.currentBoard.allowsCreatorOnMinicard ?? false;
},
allowsMembers() {
@@ -224,7 +224,7 @@ BlazeComponent.extendComponent({
swimlaneHeightValue() {
const swimlane = this.currentData();
const board = swimlane.boardId;
return Meteor.user().getSwimlaneHeight(board, swimlane._id);
return ReactiveCache.getCurrentUser().getSwimlaneHeight(board, swimlane._id);
},
events() {
+2 -2
View File
@@ -225,7 +225,7 @@ BlazeComponent.extendComponent({
},
swimlaneHeight() {
const user = Meteor.user();
const user = ReactiveCache.getCurrentUser();
const swimlane = Template.currentData();
const height = user.getSwimlaneHeight(swimlane.boardId, swimlane._id);
return height == -1 ? "auto" : (height + "px");
@@ -288,7 +288,7 @@ BlazeComponent.extendComponent({
Template.swimlane.helpers({
canSeeAddList() {
return Meteor.user().isBoardAdmin();
return ReactiveCache.getCurrentUser().isBoardAdmin();
},
});
+1
View File
@@ -5,6 +5,7 @@
float: left;
height: 30px;
width: 30px;
margin: .3vh;
cursor: pointer;
user-select: none;
z-index: 1;
-6
View File
@@ -153,12 +153,6 @@ template(name="changeLanguagePopup")
template(name="changeSettingsPopup")
ul.pop-over-list
//li
// a.js-toggle-system-messages
// i.fa.fa-comments-o
// | {{_ 'hide-system-messages'}}
// if hiddenSystemMessages
// i.fa.fa-check
//li
// a.js-toggle-desktop-drag-handles
// i.fa.fa-arrows
+3 -23
View File
@@ -283,16 +283,6 @@ Template.changeLanguagePopup.events({
});
Template.changeSettingsPopup.helpers({
hiddenSystemMessages() {
const currentUser = ReactiveCache.getCurrentUser();
if (currentUser) {
return (currentUser.profile || {}).hasHiddenSystemMessages;
} else if (window.localStorage.getItem('hasHiddenSystemMessages')) {
return true;
} else {
return false;
}
},
rescueCardDescription() {
const currentUser = ReactiveCache.getCurrentUser();
if (currentUser) {
@@ -325,7 +315,7 @@ Template.changeSettingsPopup.helpers({
});
},
startDayOfWeek() {
currentUser = Meteor.user();
currentUser = ReactiveCache.getCurrentUser();
if (currentUser) {
return currentUser.getStartDayOfWeek();
} else {
@@ -343,7 +333,7 @@ Template.changeSettingsPopup.events({
return ret;
},
'click .js-toggle-desktop-drag-handles'() {
currentUser = Meteor.user();
const currentUser = ReactiveCache.getCurrentUser();
if (currentUser) {
Meteor.call('toggleDesktopDragHandles');
} else if (window.localStorage.getItem('showDesktopDragHandles')) {
@@ -352,16 +342,6 @@ Template.changeSettingsPopup.events({
window.localStorage.setItem('showDesktopDragHandles', 'true');
}
},
'click .js-toggle-system-messages'() {
currentUser = Meteor.user();
if (currentUser) {
Meteor.call('toggleSystemMessages');
} else if (window.localStorage.getItem('hasHiddenSystemMessages')) {
window.localStorage.removeItem('hasHiddenSystemMessages');
} else {
window.localStorage.setItem('hasHiddenSystemMessages', 'true');
}
},
'click .js-rescue-card-description'() {
Meteor.call('toggleRescueCardDescription')
},
@@ -375,7 +355,7 @@ Template.changeSettingsPopup.events({
templateInstance.$('#start-day-of-week').val(),
10,
);
const currentUser = Meteor.user();
const currentUser = ReactiveCache.getCurrentUser();
if (isNaN(minLimit) || minLimit < -1) {
minLimit = -1;
}
+1
View File
@@ -123,6 +123,7 @@ EscapeActions = {
// the shortcut sould work on textarea and inputs as well.
Mousetrap.bindGlobal('esc', () => {
EscapeActions.executeLowest();
Sidebar.hide();
});
// On a left click on the document, we try to exectute one escape action (eg,
-1
View File
@@ -237,7 +237,6 @@ class SetFilter {
if (this._indexOfVal(val) === -1) {
this._selectedElements.push(val);
this._dep.changed();
showFilterSidebar();
}
}
+65 -2
View File
@@ -3,6 +3,17 @@ import { ReactiveCache } from '/imports/reactiveCache';
// XXX There is no reason to define these shortcuts globally, they should be
// attached to a template (most of them will go in the `board` template).
window.addEventListener('keydown', (e) => {
// Only handle event if coming from body
if (e.target !== document.body) return;
// Only handle event if it's in another language
if (String.fromCharCode(e.which).toLowerCase() === e.key) return;
// Trigger the corresponding action
Mousetrap.trigger(String.fromCharCode(e.which).toLowerCase());
});
function getHoveredCardId() {
const card = $('.js-minicard:hover').get(0);
if (!card) return null;
@@ -139,6 +150,26 @@ Mousetrap.bind(numArray, (evt, key) => {
}
});
Mousetrap.bind('m', evt => {
const cardId = getSelectedCardId();
if (!cardId) {
return;
}
const currentUserId = Meteor.userId();
if (currentUserId === null) {
return;
}
if (ReactiveCache.getCurrentUser().isBoardMember()) {
const card = ReactiveCache.getCard(cardId);
card.toggleAssignee(currentUserId);
// We should prevent scrolling in card when spacebar is clicked
// This should do it according to Mousetrap docs, but it doesn't
evt.preventDefault();
}
});
Mousetrap.bind('space', evt => {
const cardId = getSelectedCardId();
if (!cardId) {
@@ -159,7 +190,7 @@ Mousetrap.bind('space', evt => {
}
});
Mousetrap.bind('c', evt => {
Mousetrap.bind('-', evt => {
const cardId = getSelectedCardId();
if (!cardId) {
return;
@@ -179,6 +210,30 @@ Mousetrap.bind('c', evt => {
}
});
Mousetrap.bind('n', evt => {
const cardId = getSelectedCardId();
if (!cardId) {
return;
}
const currentUserId = Meteor.userId();
if (currentUserId === null) {
return;
}
if (Utils.canModifyBoard()) {
// Find the current hovered card
const card = ReactiveCache.getCard(cardId);
// Find the button and click it
$(`#js-list-${card.listId} .list-body .minicards .open-minicard-composer`).click()
// We should prevent scrolling in card when spacebar is clicked
// This should do it according to Mousetrap docs, but it doesn't
evt.preventDefault();
}
});
Template.keyboardShortcuts.helpers({
mapping: [
{
@@ -193,6 +248,10 @@ Template.keyboardShortcuts.helpers({
keys: ['a'],
action: 'shortcut-filter-my-assigned-cards',
},
{
keys: ['n'],
action: 'add-card-to-bottom-of-list',
},
{
keys: ['f'],
action: 'shortcut-toggle-filterbar',
@@ -219,10 +278,14 @@ Template.keyboardShortcuts.helpers({
},
{
keys: ['SPACE'],
action: 'shortcut-add-self',
},
{
keys: ['n'],
action: 'shortcut-assign-self',
},
{
keys: ['c'],
keys: ['-'],
action: 'archive-card',
},
{
+4 -3
View File
@@ -4,10 +4,11 @@ Utils = {
setBackgroundImage(url) {
const currentBoard = Utils.getCurrentBoard();
if (currentBoard.backgroundImageURL !== undefined) {
$(".board-wrapper,.board-wrapper .board-canvas").css({"background":"url(" + currentBoard.backgroundImageURL + ")","background-size":"cover"});
$(".board-wrapper").css({"background":"url(" + currentBoard.backgroundImageURL + ")","background-size":"cover"});
$(".swimlane,.swimlane .list,.swimlane .list .list-body,.swimlane .list:first-child .list-body").css({"background-color":"transparent"});
} else if (currentBoard.color !== undefined) {
currentBoard.setColor(currentBoard.color);
$(".minicard").css({"opacity": "0.9"});
} else if (currentBoard["background-color"]) {
currentBoard.setColor(currentBoard["background-color"]);
}
},
/** returns the current board id
+8 -8
View File
@@ -10,13 +10,13 @@
# NOTE: MongoDB has changed from 3.x to 4.x, in that case you need backup/restore with --noIndexRestore
# see https://github.com/wekan/wekan/wiki/Backup
# 1) Stop Wekan:
# docker-compose stop
# docker compose stop
# 2) Remove old Wekan app (wekan-app only, not that wekan-db container that has all your data)
# docker rm wekan-app
# 3) Get newest docker-compose.yml from https://github.com/wekan/wekan to have correct image,
# for example: "image: quay.io/wekan/wekan" or version tag "image: quay.io/wekan/wekan:v4.52"
# 4) Start Wekan:
# docker-compose up -d
# docker compose up -d
#----------------------------------------------------------------------------------
# ==== OPTIONAL: DEDICATED DOCKER USER ====
# 1) Optionally create a dedicated user for Wekan, for example:
@@ -36,14 +36,14 @@
# ----------------------------------------------------------------------------------
# ==== USAGE OF THIS docker-compose.yml ====
# 1) For seeing does Wekan work, try this and check with your web browser:
# docker-compose up
# docker compose up
# 2) Stop Wekan and start Wekan in background:
# docker-compose stop
# docker-compose up -d
# docker compose stop
# docker compose up -d
# 3) See running Docker containers:
# docker ps
# 4) Stop Docker containers:
# docker-compose stop
# docker compose stop
# ----------------------------------------------------------------------------------
# ===== INSIDE DOCKER CONTAINERS, AND BACKUP/RESTORE ====
# https://github.com/wekan/wekan/wiki/Backup
@@ -140,7 +140,7 @@ services:
- wekan-tier
#-------------------------------------------------------------------------------------
# ==== BUILD wekan-app DOCKER CONTAINER FROM SOURCE, if you uncomment these ====
# ==== and use commands: docker-compose up -d --build
# ==== and use commands: docker compose up -d --build
#build:
# context: .
# dockerfile: Dockerfile
@@ -585,7 +585,7 @@ services:
# If using LDAPS: LDAP_ENCRYPTION=ssl
#- LDAP_ENCRYPTION=false
#
# The certification for the LDAPS server. Certificate needs to be included in this docker-compose.yml file.
# The certification for the LDAPS server. Certificate needs to be included in this docker compose.yml file.
#- LDAP_CA_CERT=-----BEGIN CERTIFICATE-----MIIE+G2FIdAgIC...-----END CERTIFICATE-----
#
# Reject Unauthorized Certificate
+17 -5
View File
@@ -18,14 +18,15 @@ Any telemetry at any Firefox based browser can be additionally most locked down
Browser | [PWA](PWA) | Mobile | Desktop | OS
------- | ----| ------ | ------- | -------
[Mypal](https://releases.wekan.team/mypal/) | No | No | Newest | For 32bit ReactOS/WinXP/Win7/etc [issue](https://github.com/wekan/wekan/issues/3132), Other 32bit browsers probably not
Firefox | Android Yes | Android Newest | Newest | Win/Mac/Linux/RasPi
Morph Browser | No | Yes | Yes | [Ubuntu Touch](https://ubports.com) (based on Ubuntu 16.04) on PinePhone, OnePlus 3, [RasPi3](https://ci.ubports.com/job/rootfs/job/rootfs-rpi/) (not RasPi4 yet). Works best with bluetooth or USB mouse and keyboard.
Firefox | Android Yes | Android Newest | Newest | Win/Mac/Linux/BSD/RasPi. [Haiku](https://discuss.haiku-os.org/t/progress-on-porting-firefox/13493/143) not tested yet - [HN](https://news.ycombinator.com/item?id=41214762).
Morph Browser | No | Yes | Yes | [Ubuntu Touch](https://ubports.com) (based on Ubuntu 16.04) on PinePhone, OnePlus 3, [RasPi3](https://ci.ubports.com/job/rootfs/job/rootfs-rpi/) (not RasPi4 yet). Works best with bluetooth or USB mouse and keyboard. [Repo](https://gitlab.com/ubports/development/core/morph-browser)
[OpenStore App](https://open-store.io/app/wekan.wekanteam) | Yes | Yes | Yes | Based on [Wekan PWA](https://boards.wekan.team/b/D2SzJKZDS4Z48yeQH/wekan-open-source-kanban-board-with-mit-license/s7SkzYviC2e963FkT), [Ubuntu Touch](https://ubports.com) app at [OpenStore](https://open-store.io/app/wekan.wekanteam) using Morph browser with Wekan demo & development server https://boards.wekan.team . Tested on [RasPi3](https://ci.ubports.com/job/rootfs/job/rootfs-rpi/). PWA URL is configured here https://github.com/wekan/wekan-openstore/blob/master/wekan.desktop#L3
[Waterfox](https://www.waterfox.net) | No | No | Yes | Win/Mac/Linux, more private than Firefox, no tracking
[Waterfox](https://www.waterfox.net) | No | No | Yes | Win/Mac/Linux, more private than Firefox, no tracking. [Repo](https://github.com/BrowserWorks/Waterfox)
[Floorp](https://floorp.app) | No | No | Yes | [Win/Mac/Linux](https://github.com/Floorp-Projects/Floorp/releases), more private than Firefox, [Repo](https://github.com/Floorp-Projects/Floorp)
[Mercury](https://thorium.rocks/mercury) | No | No | Yes | [Win/Linux](https://github.com/Alex313031/Mercury/releases), more private than Firefox, [Repo](https://github.com/Alex313031/Mercury)
[SeaLion](https://github.com/wicknix/SeaLion) | No | No | Yes | [MacOS 10.7-14.1 x32,x64,ppc,ppc64/Linux x64](https://github.com/wicknix/SeaLion/releases), [Repo](https://github.com/wicknix/SeaLion)
[LibreWolf](https://librewolf.net) | No | No | Yes | [Win/Mac/Linux](https://librewolf.net/installation/)
[LibreWolf](https://librewolf.net) | No | No | Yes | [Win/Mac/Linux](https://librewolf.net/installation/), [Repos](https://codeberg.org/librewolf)
[Zen Browser](https://www.zen-browser.app/) | No | No | Yes | [Win/Mac/Linux](https://www.zen-browser.app/download), [Repos](https://github.com/zen-browser), [Review at YouTube](https://www.youtube.com/watch?v=tKM2N4TQHQY)
## Chromium based
@@ -54,6 +55,17 @@ Browser | [PWA](PWA) | Mobile | Desktop | OS
------- | ----| ------ | ------- | -------
Internet Explorer | No | No | No | No | No
## Servo based, not tested yet
- Apache 2.0 or MIT license
- Repo: https://github.com/versotile-org/verso
## Ladybird based, not tested yet:
- BSD-2-Clause license
- Website: https://ladybird.org
- Repo: https://github.com/LadybirdBrowser/ladybird
## Other ways to create Mobile App with Meteor
https://guide.meteor.com/cordova
@@ -70,4 +82,4 @@ https://forums.meteor.com/t/desktop-electron-meteor-app-with-todesktop/60904
- If there is sometime a need to develop payment feature, that does not exist yet
- https://forums.meteor.com/t/need-help-adding-in-app-purchases-to-a-meteor-app-specifically-adding-subscription-support-for-android-play-store/40510
- https://www.npmjs.com/package/cordova-plugin-purchase
- https://www.npmjs.com/package/cordova-plugin-purchase
+29 -17
View File
@@ -1,23 +1,35 @@
## WeKan Design Principles
- Prevent messing up something https://github.com/wekan/wekan/wiki/Monkey-Proof-Software
- Original WeKan Design, that WeKan currently has: Intuitive, easy to figure out, polished UI/UX, menu options are there where you would expect then to be. Try to fix anything unexpected. New features added there where it makes most sense. And not so many duplicate menus and texts like Trello.
- Not the exact design of Trello https://github.com/wekan/wekan/wiki/FAQ#why-does-wekan-look-so-different-now-compared-to--v09 . Also not the exact design of any other software. But note that design of all software changes often, when they are in active development.
- Some features like Trello:
- 2024-08 Design discussion here: https://github.com/wekan/wekan/discussions/5507
- Original WeKan Design:
- Kanban, the good parts. Like was done when figuring out best design for Swimlanes https://github.com/wekan/wekan/issues/955
- Intuitive, easy to figure out, prevent messing up something https://github.com/wekan/wekan/wiki/Monkey-Proof-Software
- Polished UI/UX
- Menu options are there where you would expect then to be.
- Try to fix anything unexpected.
- New features added there where it makes most sense.
- FOSS with MIT license
- Swimlanes
- All the use cases of WeKan feature/fix contributors
- Cross-platform. Support many CPU/OS/Browsers for Desktop and Mobile.
- Support many browsers https://github.com/wekan/wekan/wiki/Browser-compatibility-matrix . Add support for more.
- PWA https://github.com/wekan/wekan/wiki/PWA
- On-Premise:
- Linux amd64/arm64/s390x
- https://wekan.github.io/install/
- https://github.com/wekan/wekan/wiki/Raspberry-Pi
- Windows https://github.com/wekan/wekan/wiki/Offline
- Mac https://github.com/wekan/wekan/wiki/Mac
- Not like other software:
- But note that design of all software changes often, when they are in active development.
- Not bad parts of Trello:
- Not the exact design of Trello https://github.com/wekan/wekan/wiki/FAQ#why-does-wekan-look-so-different-now-compared-to--v09
- Not so many duplicate menus and texts like Trello
- Not so much empty space
- Some good parts of Trello:
- Import from Trello
- Shortcuts https://github.com/wekan/wekan/issues/1878
- IFTTT Rules like Trello Butler https://github.com/wekan/wekan/wiki/IFTTT
- Progress bar of checklist
- Some features like Jira:
- Multiple assignees
- Some features not in Trello, like:
- FOSS with MIT license
- Self-hosting
- Swimlanes
- All the use cases of WeKan feature/fix contributors
- Cross-platform. Support many CPU/OS/Browsers for Desktop and Mobile. Add support for more.
- https://github.com/wekan/wekan/wiki/Browser-compatibility-matrix
- https://github.com/wekan/wekan/wiki/PWA
- https://github.com/wekan/wekan/wiki/Offline
- https://github.com/wekan/wekan/wiki/Mac
- https://github.com/wekan/wekan/wiki/Raspberry-Pi
- Some good parts of Jira:
- Multiple assignees
+38
View File
@@ -1,11 +1,49 @@
## Meteor 3 Example Code
- https://github.com/fredmaiaarantes/simpletasks
- MIT License
- https://github.com/xet7/simpletasks
- https://github.com/henriquealbert/meteor-with-prisma
- MIT License
- https://github.com/xet7/meteor-with-prisma
- https://github.com/henriquealbert/meteor-pnpm
- MIT License
- https://github.com/xet7/meteor-pnpm
## Building Multi Platform Mobile Apps
- TWIM 058: Building Multi Platform Mobile Apps https://www.youtube.com/watch?v=ZTtXRJTUCIU
- https://www.youtube.com/watch?v=ZTtXRJTUCIU
- https://github.com/jamauro/pwa-kit
- https://wekan.team/app/
- https://github.com/wekan/wekan/wiki/PWA
- Over 100 icons for different platforms https://github.com/wekan/wekan/blob/main/public/site.webmanifest
## Tip to any programmers
- Try to understand any error messages, and what to do to those errors
## Videos about upgrading to Meteor 3
- Storyteller
- Upcoming:
- 2024-09-02: Meteor.js generators https://www.youtube.com/watch?v=Z6nY2wqPgSE
- 2024-09-09: Can we build static web pages with Meteor.js? https://www.youtube.com/watch?v=cr-Nm0YFb1w
- 2024-09-16: Revisiting Mantra application architecture for today's Meteor.js https://www.youtube.com/watch?v=YyzY7ySqBAg
- 2024-08-23: TWIM 052: Year of TWIM in review. Trying to of sometime have xet7 at TWIM show again. They recommended people to help xet7 when possible, xet7 is hitting some walls developing WeKan. https://www.youtube.com/watch?v=c5E3uZST4Vs
- 2024-08-20:
- Vazco interviewing Storyteller: How to approach building Open Source products? https://www.youtube.com/watch?v=j5BrTYcJDVc
- Meteor inteviewing Storyteller: Programmer, open source contributor, entrepreneur https://www.youtube.com/watch?v=dsp0_r8uJx8
- Meteor Roles:
- 2024-07-33: Meteor Roles the full checkpoint https://www.youtube.com/watch?v=ow1i4UXdbbI
- 2024-08-12: Meteor Roles building up teams https://www.youtube.com/watch?v=ZAuSYKfV114
- 2024-07-15: WeKan Upgrades https://www.youtube.com/watch?v=Zjb3m9JsAD0
- 2024-07-08: Upgrading Meteor examples https://www.youtube.com/watch?v=jzWXxOe93t4
- Upcoming and past: https://www.youtube.com/@storytellercz/streams
- React.js
- WeKan uses Blaze and Jade, not React.
- 2024-09-25:
- Meteor 3 React Compiler: https://x.com/FilipeNevola/status/1838911432282583432
- 2024-08-02:
- https://www.youtube.com/watch?v=NnT7AbVMnj4
- https://thenewstack.io/after-a-decade-of-react-is-frontend-a-post-react-world-now/
+21 -2
View File
@@ -1,3 +1,19 @@
## What is not Cross-Platform
- Requires CPU to support AVX
- Bun Javascript Engine https://bun.sh
- MongoDB 5.x and newer https://github.com/turnkeylinux/tracker/issues/1724#issuecomment-2351544191
- Does not work at s390x
- V programming language https://github.com/vlang/v/issues/18737
- Bun Javascript Engine https://github.com/oven-sh/bun/issues/2632
- Deno Javascript Engine https://github.com/denoland/deno/issues/20212#issuecomment-1756663943
- Lazarus IDE https://www.lazarus-ide.org
- FreePascal programming language https://www.freepascal.org
- TigerBeetle database https://github.com/tigerbeetle/tigerbeetle/issues/2241
- GUI requires porting to other OS
- BBC Basic https://www.bbcbasic.net/wiki/doku.php?id=converting_20programs_20from_20risc_20os_20to_20windows
- Tcl/Tk GUI does works at most OS
## Prototype Strategy
- Try building many prototypes, see what works
@@ -265,8 +281,11 @@ https://github.com/wekan/php/blob/main/page/allboardschar.php
### FreePascal
- Repo https://github.com/wekan/hx/tree/main/prototypes/code/webserver/works/freepascal-router
- Router and some webpage
- Repo https://github.com/wekan/wami
- Some static pages
- Previous:
- Repo https://github.com/wekan/hx/tree/main/prototypes/code/webserver/works/freepascal-router
- Router and some webpage
- Works at many retro and modern OS, but not at s390x that FreePascal does not support yet https://wiki.freepascal.org/ZSeries
### FreeDOS and Bash
+6 -1
View File
@@ -38,4 +38,9 @@ Reorder with drag drop:
- Draggable objects
- https://www.redblobgames.com/making-of/draggable/
- https://news.ycombinator.com/item?id=37703291
- Fixed Drag at Ubuntu Touch Morph browser https://github.com/wekan/wekan/commit/af63259f091cb2ade84493a288ea37c53cd37321
- Fixed Drag at Ubuntu Touch Morph browser https://github.com/wekan/wekan/commit/af63259f091cb2ade84493a288ea37c53cd37321
## Touch UI ideas
- https://blog.la-terminal.net/godot-on-ipad-summer-update/
- https://news.ycombinator.com/item?id=41415077
+2
View File
@@ -141,6 +141,8 @@ sudo snap set wekan mail-from='Wekan Team Boards <info@example.com>'
```
## Example: AWS SES
Related https://github.com/wekan/wekan/discussions/5518
NOTE: At AWS SES settings, you don't need to convert special characters.
1) At AWS SES, add verified sender email address, verified domain, verified DKIM etc.
+11
View File
@@ -0,0 +1,11 @@
Linked Card feature was added at https://github.com/wekan/wekan/pull/1592
With Linked Card feature, it's possible to create new board as dashboard. At dashboard board, you add new card Link, and there link to some card at other board, so you see realtimes changes from all those cards at dashboard board.
Search is for searching card, to be as linked card, I presume.
There is also Linked Board, but I'm not sure is it useful.
Related PRs at https://github.com/wekan/wekan/pulls?q=is%3Apr+is%3Aclosed+linked+card+
Related issue https://github.com/wekan/wekan/issues/5550
+1 -1
View File
@@ -1,6 +1,6 @@
## LDAP info
- [LDAP sync script, that also correctly removes users](https://github.com/wekan/wekan/blob/main/ldap-sync/ldap-sync.py)
- [LDAP sync script, that also correctly removes users](https://github.com/wekan/wekan/blob/main/docs/Login/ldap-sync/ldap-sync.py)
- [LDAP AD Simple Auth](LDAP-AD-Simple-Auth) 2021-07-24 and related [Search Filter Settings](https://github.com/wekan/wekan/issues/3908#issuecomment-887545168):
```
+10 -6
View File
@@ -9,20 +9,24 @@ Sandstorm has SAML login, and old WeKan that will be updated someday:
How SAML works:
- https://ssoready.com/blog/engineering/a-gentle-intro-to-saml/
- https://ssoready.com
- https://github.com/ssoready/ssoready
- https://news.ycombinator.com/item?id=41110850
- https://ssoready.com/blog/from-the-founders/an-unpopular-perspective-on-the-sso-tax/
- https://news.ycombinator.com/item?id=41303844/blog/engineering/a-gentle-intro-to-saml/
- https://news.ycombinator.com/item?id=41036982
- https://www.sheshbabu.com/posts/visual-explanation-of-saml-authentication/
- https://news.ycombinator.com/item?id=41057814
- https://github.com/ssoready/ssoready
- https://news.ycombinator.com/item?id=41110850
- https://ssoready.com/blog/from-the-founders/an-unpopular-perspective-on-the-sso-tax/
- https://news.ycombinator.com/item?id=41303844
Ruby on Rails OmniAuth, that has Shibboleth and SAML:
- https://github.com/omniauth/omniauth/wiki/List-of-Strategies
- https://github.com/omniauth/omniauth
SAML at SSOReady:
- https://github.com/ssoready/ssoready
- https://news.ycombinator.com/item?id=41110850
- Recent SAML issue https://news.ycombinator.com/item?id=41586031
The SSO Wall of Shame:
+5
View File
@@ -0,0 +1,5 @@
CNAME to CNAME does not work well. Last one should be A IPv4 (and AAAA IPv6).
To get Let's Encrypt SSL/TLS cert for custom subdomain, for example with Caddy, you subdomain should have grey cloud icon. Not orange cloud icon CloudFlare proxy. Also turn off any SSL/TLS of CloudFlare. This is so that Let's Encrypt verifying servers can see hosting server actual IP address and validate cert.
If needing wildcard SSL/TLS cert, for example for Sandstorm, create CloudFlare Origin Certificate, add it to Caddy or Nginx certs .pem file (private key above, other key below, at same textfile). Set CloudFlare SSL/TLS as Strict for using Origin Certificate. Set DNS to orange cloud icon proxy. Add DNS records for example.com , *.example.com , www.example.com .
+53 -9
View File
@@ -1,3 +1,47 @@
## Building custom Docker image
This is only for developers. For normal users, do not add these options, just start with `docker compose up -d`
This only builds `wekan-app` Docker image, where is Node.js 14.x and all Javascript code. This does not build `wekan-db` MongoDB image, that usually does not require modifications.
Alpine Linux does not work properly with current Meteor 2 based WeKan. Ubuntu works, and has newest security fixes.
Only amd64 currently works. Currently used Node.js 14.x segfaults at arm64 and s390x. Only Node.js 14.x is compatible with current version of Meteor 2 based WeKan. Trying to upgrade is in progress https://github.com/wekan/wekan/issues/5475
Dockerfile is at https://raw.githubusercontent.com/wekan/wekan/main/Dockerfile
For building custom image, and then running it, uncomment these lines,
that are currently here, but line numbers could change, if that docker-compose.yml
is later modified:
https://github.com/wekan/wekan/blob/main/docker-compose.yml#L144-L146
After your above modifications, text should look like this:
```
#-------------------------------------------------------------------------------------
# ==== BUILD wekan-app DOCKER CONTAINER FROM SOURCE, if you uncomment these ====
# ==== and use commands: docker compose up -d --build
build:
context: .
dockerfile: Dockerfile
#-------------------------------------------------------------------------------------
```
Then modify ROOT_URL, etc settings as needed, see https://github.com/wekan/wekan/wiki/Settings
Start WeKan with custom built Dockerfile with this command:
```
docker compose up -d --build
```
If you like to only build Dockerfile:
```
docker build .
```
You can also push your image to some Docker registry, like here it's done for WeKan:
https://github.com/wekan/wekan/blob/main/releases/docker-push-wekan.sh
## Docker Containers
- [GitHub](https://github.com/wekan/wekan/pkgs/container/wekan)
@@ -12,7 +56,7 @@ export ROOT_URL=http://SERVER-IP-ADDRESS-HERE
```
Then start WeKan with:
```
docker-compose up -d
docker compose up -d
```
SSL/TLS info at https://github.com/wekan/wekan/wiki/Settings
@@ -35,7 +79,7 @@ There is much more settings at well-documented [docker-compose.yml](https://raw.
If you don't need to build Wekan, use prebuilt container with docker-compose.yml from https://github.com/wekan/wekan like this:
```
docker-compose up -d
docker compose up -d
```
If you like to build from source, clone Wekan repo:
@@ -46,7 +90,7 @@ Then edit docker-compose.yml with [these lines uncommented](https://github.com/w
```
#-------------------------------------------------------------------------------------
# ==== BUILD wekan-app DOCKER CONTAINER FROM SOURCE, if you uncomment these ====
# ==== and use commands: docker-compose up -d --build
# ==== and use commands: docker compose up -d --build
build:
context: .
dockerfile: Dockerfile
@@ -62,7 +106,7 @@ Then edit docker-compose.yml with [these lines uncommented](https://github.com/w
```
Then you can build Wekan with
```
docker-compose up -d --build
docker compose up -d --build
```
## Example for latest Wekan, port 2000 to Docker Wekan internal port 8080
@@ -112,7 +156,7 @@ docker rm wekan-app
```
Then edit docker-compose.yml to have higher wekan-app image version tag, like `image: wekanteam/wekan:v4.12`. Then:
```
docker-compose up -d
docker compose up -d
```
### Images
Quay: `image: quay.io/wekan/wekan:v4.07`
@@ -206,25 +250,25 @@ docker run -d --restart=always --name wekan --link "wekan-db:db" -e "MONGO_URL=m
- No build step and pull from [quay](https://quay.io/repository/wekan/wekan?tab=tags)
```
sudo docker-compose up -d --nobuild
sudo docker compose up -d --nobuild
```
- Build default
```
sudo docker-compose up -d --build
sudo docker compose up -d --build
```
- Build with newer Node version:
```
echo 'NODE_VERSION=v8.11.1' >> .env && \
sudo docker-compose up -d --build
sudo docker compose up -d --build
```
- Build custom image off a release candidate or beta for meteor
```
echo 'METEOR_EDGE=1.5-beta.17' >> .env && \
echo 'USE_EDGE=true' >> .env && \
sudo docker-compose up -d --build
sudo docker compose up -d --build
```
## Docker env for Wekan dev
+59 -1
View File
@@ -1,6 +1,64 @@
# Sandstorm at Debian and Ubuntu
### Sandstorm CloudFlare DNS settings
Source: https://github.com/sandstorm-io/sandstorm/issues/3714#issuecomment-2366866243
For me, it works at CloudFlare DNS using TLS Strict checking and DNS setting clicking to orange cloud icon to make TLS proxy with Origin certificate, that is at /etc/caddy/certs/example.com.pem with above private key and below cert.
DNS records:
```
* A example.com ip-address
@ A example.com ip-address
```
Caddyfile, proxy to KVM VM that is running Debian and Sandstorm:
```
*.example.com example.com {
tls {
load /etc/caddy/certs
alpn http/1.1
}
reverse_proxy 123.123.123.123:80
}
```
At /opt/sandstorm/sandstorm.conf is domain, http port etc.
Some related info at:
https://github.com/wekan/wekan/wiki/Caddy-Webserver-Config
I also had to wait that Origin certificate becomes active.
But this worked for me only at CloudFlare. It did not work at FreeDNS of Namecheap.
Also, I still need to write script to fix IP address if Dynamic DNS IP address changes, using CloudFlare API, because my cable modem does not have DDNS option for CloudFlare.
Now that there is also a way to run Sandstorm at Ubuntu, it would be possible for me to move Sandstorm from KVM VM to run directly at host, without VM, and proxy from Caddy to localhost port of Sandstorm.
https://groups.google.com/g/sandstorm-dev/c/4JFhr7B7QZU?pli=1
### Debian amd64
Installing Sandstorm works normally
### Ubuntu 24.04 amd64
At startup was a lot of errors and saw "Permission denied; name = /proc/self/setgroups"
I found this (run as root):
```
echo "kernel.apparmor_restrict_unprivileged_userns = 0" >/etc/sysctl.d/99-userns.conf
sysctl --system
```
And I ran it and restarted the Sandstorm service, everything seemed to work fine.
I hope this might be useful to someone.
Source: https://groups.google.com/g/sandstorm-dev/c/4JFhr7B7QZU
## Sandstorm Website
[Sandstorm Website](https://sandstorm.io)
[Sandstorm Website](https://sandstorm.org)
If you have any grains at Sandstorm's **Oasis montly paid service**, please move those to self-hosted, because [only **Oasis grain hosting** part is shutting down](https://sandstorm.io/news/2019-09-15-shutting-down-oasis) - [HN](https://news.ycombinator.com/item?id=20979428). This does not affect any other parts like self-hosting at sandcats.io, App Market, updates, etc.
@@ -40,7 +40,7 @@ ssh wekanserver
```
#### 5. Save snap settings and set it as executeable
```
sudo snap get wekan > snap-settings.sh
sudo snap get wekan | awk '{if(NR>1) print "sudo snap set wekan " $1 "=" "\"" $2 "\""}' > snap-settings.sh
chmod +x snap-settings.sh
```
@@ -273,4 +273,4 @@ If you have problems, add comment to issue https://github.com/wekan/wekan/issues
- This is discontinued, Gantt features will be later added to WeKan MIT version.
- Gantt version files are instead at `/var/snap/wekan-gantt-gpl/`
- Gantt snap name is wekan-gantt-gpl
- Gantt snap name is wekan-gantt-gpl
+11 -1
View File
@@ -329,6 +329,16 @@ files.company.com {
# OLD WAY: Many Snaps on LXC
## Fix: System does not fully support snapd
To server and LXC/LXD containers, install these packages:
```
sudo apt install libsquashfuse0 squashfuse fuse
```
Source: https://forum.snapcraft.io/t/system-does-not-fully-support-snapd/14767/11
## LXD init CIDR
IPv4 CIDR: 10.1.1.1/24
@@ -463,4 +473,4 @@ Result:
```
lxc stop mycontainer
lxc delete mycontainer
```
```
+3
View File
@@ -10,6 +10,9 @@
- https://arstechnica.com/information-technology/2023/07/the-ibm-mainframe-how-it-runs-and-why-it-survives/
- https://sdl-hercules-390.github.io/html/
- Big-endian s390x https://community.ibm.com/community/user/ibmz-and-linuxone/blogs/javier-perez1/2021/01/19/endianness-guidance-for-open-source-projects
- The Future of Big Iron: An Interview with IBM’s Christian Jacobi
- https://morethanmoore.substack.com/p/the-future-of-big-iron-telum-ii-and
- https://news.ycombinator.com/item?id=41846592
***
+4 -4
View File
@@ -8,19 +8,19 @@ This is without container (without Docker or Snap).
Right click and download files 1-4:
1. [wekan-7.53-amd64-windows.zip](https://github.com/wekan/wekan/releases/download/v7.53/wekan-7.53-amd64-windows.zip)
1. [wekan-7.63-amd64-windows.zip](https://github.com/wekan/wekan/releases/download/v7.63/wekan-7.63-amd64-windows.zip)
2. [node.exe](https://nodejs.org/dist/latest-v14.x/win-x64/node.exe)
3. [mongodb-windows-x86_64-6.0.16-signed.msi](https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-6.0.16-signed.msi)
3. [mongodb-windows-x86_64-6.0.19-signed.msi](https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-6.0.19-signed.msi)
4. [start-wekan.bat](https://raw.githubusercontent.com/wekan/wekan/main/start-wekan.bat)
5. Copy files from steps 1-4 with USB stick or DVD to offline Windows computer
6. Double click `mongodb-windows-x86_64-6.0.15-signed.msi` . In installer, uncheck downloading MongoDB compass.
6. Double click `mongodb-windows-x86_64-6.0.19-signed.msi` . In installer, uncheck downloading MongoDB compass.
7. Unzip `wekan-7.53-amd64-windows.zip` , inside it is directory `bundle`, to it copy other files:
7. Unzip `wekan-7.63-amd64-windows.zip` , inside it is directory `bundle`, to it copy other files:
```
bundle (directory)
+458 -1
View File
@@ -1,5 +1,22 @@
[Caddy 2 .well-known/assetlinks.json config for WeKan Android Play Store app](../PWA#fullscreen-android-app-with-caddy-and-wekan-server)
# CloudFlare DNS
CNAME:
If some customer has CNAME to hosting platform subdomain,
hosting platform subdomain needs to be A record IP address to
hosting server Caddy webserver, because only that way
it can get Let's Encrypt TLS cert. It can not be nested like
customer CNAME to hosting CNAME to hosting A record,
because then getting Let's Encrypt TLS cert does not work.
Wildcard:
Wildcard DNS for Sandstorm only works with CloudFlare DNS.
It does not work with FreeDNS of Namecheap. More info at
https://github.com/wekan/wekan/wiki/Sandstorm
## Caddy 2
WeKan Snap Candidate for any Snap distros: https://github.com/wekan/wekan/wiki/OpenSuse , disable internal old Caddy 1, when using Caddy 2:
@@ -76,6 +93,446 @@ Caddy commands list:
caddy help
```
***
### PWA site.webmanifest icons override Caddy example
PWABuilder settings to create Android app at https://pwabuilder.com
- Web view (not Custom Tabs)
- Fullscreen (When not showing top and bottom toolbars. If you like to show those toolbars, change fullscreen to standalone)
- Notifications [X] Enable
- Signing key [X] Use mine
PWABuilder upgrades:
- Android app upgrade to Android SDK 34 was made with help of this video https://github.com/pwa-builder/PWABuilder/issues/4766#issuecomment-2229867608
Icons override at site.webmanifest:
- These settings at Caddyfile override icon URLs etc
If you like to show toolbars at top and bottom, change also here `fullscreen` to `standalone`
```
boards.wekan.team {
tls {
alpn http/1.1
}
header /.well-known/* Content-Type application/json
header /.well-known/* Access-Control-Allow-Origin *
respond /.well-known/assetlinks.json `[ {
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "team.wekan.boards.twa",
"sha256_cert_fingerprints": ["AA:AA:ED:7D:4C:9C:5A:A3:B5:DA:10:66:14:34:07:5D:EB:BE:96:CD:82:7B:09:46:47:13:65:29:5B:EA:96:30","61:41:86:5B:05:13:9B:64:5F:39:75:5A:16:C3:F2:22:25:6C:DA:74:B9:B0:8C:5F:93:B0:D2:26:65:16:1B:E6"]
}
} ]`
header /site.webmanifest/* Content-Type application/json
header /site.webmanifest/* Access-Control-Allow-Origin *
respond /site.webmanifest ` {
"name": "Wekan",
"short_name": "Wekan",
"icons": [ {
"src": "svg-etc/wekan-logo-512.svg",
"sizes": "any",
"type": "image/svg"
} , {
"src": "android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png"
} , {
"src": "android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png"
} , {
"src": "Square150x150Logo.scale-100.png",
"sizes": "150x150",
"type": "image/png"
} , {
"src": "Square44x44Logo.scale-100.png",
"sizes": "44x44",
"type": "image/png"
} , {
"src": "StoreLogo.scale-100.png",
"sizes": "50x50",
"type": "image/png"
} , {
"src": "maskable_icon.png",
"sizes": "474x474",
"type": "image/png",
"purpose": "maskable"
} , {
"src": "monochrome-icon-512x512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "monochrome"
} , {
"src": "windows11/SmallTile.scale-100.png",
"sizes": "71x71"
} , {
"src": "windows11/SmallTile.scale-125.png",
"sizes": "89x89"
} , {
"src": "windows11/SmallTile.scale-150.png",
"sizes": "107x107"
} , {
"src": "windows11/SmallTile.scale-200.png",
"sizes": "142x142"
} , {
"src": "windows11/SmallTile.scale-400.png",
"sizes": "284x284"
} , {
"src": "windows11/Square150x150Logo.scale-100.png",
"sizes": "150x150"
} , {
"src": "windows11/Square150x150Logo.scale-125.png",
"sizes": "188x188"
} , {
"src": "windows11/Square150x150Logo.scale-150.png",
"sizes": "225x225"
} , {
"src": "windows11/Square150x150Logo.scale-200.png",
"sizes": "300x300"
} , {
"src": "windows11/Square150x150Logo.scale-400.png",
"sizes": "600x600"
} , {
"src": "windows11/Wide310x150Logo.scale-100.png",
"sizes": "310x150"
} , {
"src": "windows11/Wide310x150Logo.scale-125.png",
"sizes": "388x188"
} , {
"src": "windows11/Wide310x150Logo.scale-150.png",
"sizes": "465x225"
} , {
"src": "windows11/Wide310x150Logo.scale-200.png",
"sizes": "620x300"
} , {
"src": "windows11/Wide310x150Logo.scale-400.png",
"sizes": "1240x600"
} , {
"src": "windows11/LargeTile.scale-100.png",
"sizes": "310x310"
} , {
"src": "windows11/LargeTile.scale-125.png",
"sizes": "388x388"
} , {
"src": "windows11/LargeTile.scale-150.png",
"sizes": "465x465"
} , {
"src": "windows11/LargeTile.scale-200.png",
"sizes": "620x620"
} , {
"src": "windows11/LargeTile.scale-400.png",
"sizes": "1240x1240"
} , {
"src": "windows11/Square44x44Logo.scale-100.png",
"sizes": "44x44"
} , {
"src": "windows11/Square44x44Logo.scale-125.png",
"sizes": "55x55"
} , {
"src": "windows11/Square44x44Logo.scale-150.png",
"sizes": "66x66"
} , {
"src": "windows11/Square44x44Logo.scale-200.png",
"sizes": "88x88"
} , {
"src": "windows11/Square44x44Logo.scale-400.png",
"sizes": "176x176"
} , {
"src": "windows11/StoreLogo.scale-100.png",
"sizes": "50x50"
} , {
"src": "windows11/StoreLogo.scale-125.png",
"sizes": "63x63"
} , {
"src": "windows11/StoreLogo.scale-150.png",
"sizes": "75x75"
} , {
"src": "windows11/StoreLogo.scale-200.png",
"sizes": "100x100"
} , {
"src": "windows11/StoreLogo.scale-400.png",
"sizes": "200x200"
} , {
"src": "windows11/SplashScreen.scale-100.png",
"sizes": "620x300"
} , {
"src": "windows11/SplashScreen.scale-125.png",
"sizes": "775x375"
} , {
"src": "windows11/SplashScreen.scale-150.png",
"sizes": "930x450"
} , {
"src": "windows11/SplashScreen.scale-200.png",
"sizes": "1240x600"
} , {
"src": "windows11/SplashScreen.scale-400.png",
"sizes": "2480x1200"
} , {
"src": "windows11/Square44x44Logo.targetsize-16.png",
"sizes": "16x16"
} , {
"src": "windows11/Square44x44Logo.targetsize-20.png",
"sizes": "20x20"
} , {
"src": "windows11/Square44x44Logo.targetsize-24.png",
"sizes": "24x24"
} , {
"src": "windows11/Square44x44Logo.targetsize-30.png",
"sizes": "30x30"
} , {
"src": "windows11/Square44x44Logo.targetsize-32.png",
"sizes": "32x32"
} , {
"src": "windows11/Square44x44Logo.targetsize-36.png",
"sizes": "36x36"
} , {
"src": "windows11/Square44x44Logo.targetsize-40.png",
"sizes": "40x40"
} , {
"src": "windows11/Square44x44Logo.targetsize-44.png",
"sizes": "44x44"
} , {
"src": "windows11/Square44x44Logo.targetsize-48.png",
"sizes": "48x48"
} , {
"src": "windows11/Square44x44Logo.targetsize-60.png",
"sizes": "60x60"
} , {
"src": "windows11/Square44x44Logo.targetsize-64.png",
"sizes": "64x64"
} , {
"src": "windows11/Square44x44Logo.targetsize-72.png",
"sizes": "72x72"
} , {
"src": "windows11/Square44x44Logo.targetsize-80.png",
"sizes": "80x80"
} , {
"src": "windows11/Square44x44Logo.targetsize-96.png",
"sizes": "96x96"
} , {
"src": "windows11/Square44x44Logo.targetsize-256.png",
"sizes": "256x256"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-16.png",
"sizes": "16x16"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-20.png",
"sizes": "20x20"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-24.png",
"sizes": "24x24"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-30.png",
"sizes": "30x30"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-32.png",
"sizes": "32x32"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-36.png",
"sizes": "36x36"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-40.png",
"sizes": "40x40"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-44.png",
"sizes": "44x44"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-48.png",
"sizes": "48x48"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-60.png",
"sizes": "60x60"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-64.png",
"sizes": "64x64"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-72.png",
"sizes": "72x72"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-80.png",
"sizes": "80x80"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-96.png",
"sizes": "96x96"
} , {
"src": "windows11/Square44x44Logo.altform-unplated_targetsize-256.png",
"sizes": "256x256"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-16.png",
"sizes": "16x16"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-20.png",
"sizes": "20x20"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-24.png",
"sizes": "24x24"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-30.png",
"sizes": "30x30"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-32.png",
"sizes": "32x32"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-36.png",
"sizes": "36x36"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-40.png",
"sizes": "40x40"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-44.png",
"sizes": "44x44"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-48.png",
"sizes": "48x48"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-60.png",
"sizes": "60x60"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-64.png",
"sizes": "64x64"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-72.png",
"sizes": "72x72"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-80.png",
"sizes": "80x80"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-96.png",
"sizes": "96x96"
} , {
"src": "windows11/Square44x44Logo.altform-lightunplated_targetsize-256.png",
"sizes": "256x256"
} , {
"src": "android/android-launchericon-512-512.png",
"sizes": "512x512"
} , {
"src": "android/android-launchericon-192-192.png",
"sizes": "192x192"
} , {
"src": "android/android-launchericon-144-144.png",
"sizes": "144x144"
} , {
"src": "android/android-launchericon-96-96.png",
"sizes": "96x96"
} , {
"src": "android/android-launchericon-72-72.png",
"sizes": "72x72"
} , {
"src": "android/android-launchericon-48-48.png",
"sizes": "48x48"
} , {
"src": "ios/16.png",
"sizes": "16x16"
} , {
"src": "ios/20.png",
"sizes": "20x20"
} , {
"src": "ios/29.png",
"sizes": "29x29"
} , {
"src": "ios/32.png",
"sizes": "32x32"
} , {
"src": "ios/40.png",
"sizes": "40x40"
} , {
"src": "ios/50.png",
"sizes": "50x50"
} , {
"src": "ios/57.png",
"sizes": "57x57"
} , {
"src": "ios/58.png",
"sizes": "58x58"
} , {
"src": "ios/60.png",
"sizes": "60x60"
} , {
"src": "ios/64.png",
"sizes": "64x64"
} , {
"src": "ios/72.png",
"sizes": "72x72"
} , {
"src": "ios/76.png",
"sizes": "76x76"
} , {
"src": "ios/80.png",
"sizes": "80x80"
} , {
"src": "ios/87.png",
"sizes": "87x87"
} , {
"src": "ios/100.png",
"sizes": "100x100"
} , {
"src": "ios/114.png",
"sizes": "114x114"
} , {
"src": "ios/120.png",
"sizes": "120x120"
} , {
"src": "ios/128.png",
"sizes": "128x128"
} , {
"src": "ios/144.png",
"sizes": "144x144"
} , {
"src": "ios/152.png",
"sizes": "152x152"
} , {
"src": "ios/167.png",
"sizes": "167x167"
} , {
"src": "ios/180.png",
"sizes": "180x180"
} , {
"src": "ios/192.png",
"sizes": "192x192"
} , {
"src": "ios/256.png",
"sizes": "256x256"
} , {
"src": "ios/512.png",
"sizes": "512x512"
} , {
"src": "ios/1024.png",
"sizes": "1024x1024"
}
],
"screenshots": [ {
"src": "screenshot1.webp",
"sizes": "1280x720",
"type": "image/webp"
} , {
"src": "screenshot2.webp",
"sizes": "1280x720",
"type": "image/webp"
}
],
"theme_color": "#000000",
"background_color": "#000000",
"start_url": "sign-in",
"display": "fullscreen",
"orientation": "any",
"categories": [
"productivity"
],
"iarc_rating_id": "70d7c4a4-3e5a-4714-a7dc-fa006613ba96",
"description": "Open Source kanban with MIT license",
"dir": "auto",
"scope": "https://boards.wekan.team",
"prefer_related_applications": false,
"display_override": [
"fullscreen"
]
} `
reverse_proxy 127.0.0.1:3025
}
```
***
@@ -278,4 +735,4 @@ Start caddy and enable service:
sudo systemctl daemon-reload
sudo systemctl start caddy@username
sudo systemctl enable caddy@username
```
```
+57
View File
@@ -0,0 +1,57 @@
(TODO: Try to integrate this inside WeKan Snap Candidate, or change code so that these would not be needed.)
WeKan has some memory leaks. To prevent WeKan becoming slow, this Cron script restarts WeKan Snap once every hour.
1) Edit /root/hourly.sh
```
sudo su
apt -y install nano cron
nano /root/hourly.sh
```
2) There add this text:
```
snap stop wekan.wekan
snap start wekan.wekan
# Wait 10 seconds
sleep 10
# Disable telemetry
/snap/wekan/current/usr/bin/mongosh wekan --eval 'disableTelemetry();' --port 27019
# Snap: Disable apparmor="DENIED" at syslog
# https://github.com/wekan/wekan/issues/4855
/snap/wekan/current/usr/bin/mongosh wekan \
--eval 'db.adminCommand({ setParameter: 1, diagnosticDataCollectionEnabled: false});' \
--port 27019
# Delete incomplete uploads so that they would not prevent starting WeKan
/snap/wekan/current/usr/bin/mongosh wekan \
--eval 'db.getCollection("cfs.attachments.filerecord").find( { "uploadedAt": { "$exists": true }, "copies.attachments" : null,"failures.copies.attachments.doneTrying" : {"$ne" : true}});' \
--port 27019
```
3) Save and exit nano: Ctrl-o Enter Ctrl-x Enter
4) Make hourly.sh script executeable, and edit cron:
```
chmod +x /root/hourly.sh
export EDITOR=nano
crontab -e
```
There at bottom, add this line, that will restart WeKan hourly, and log to textfile:
```
0 * * * * /root/hourly.sh >> /root/hourly-log.txt 2>&1
```
5) Save and exit nano: Ctrl-o Enter Ctrl-x Enter
6) You can also list content of cron:
```
crontab -l
```
+8 -2
View File
@@ -1,6 +1,12 @@
https://galaxy-guide.meteor.com/scaling
## How We Scaled Meteor JS to Handle 30,000 Concurrent Users at Propiedata
***
- https://forums.meteor.com/t/first-steps-on-scaling-meteor-js/62570
## Meteor Galaxy Guide
- https://galaxy-guide.meteor.com/scaling
## Pods
Reply from customer at 2023-09-29 about WeKan v7.08:
+3 -1
View File
@@ -33,7 +33,8 @@
# <a name="Scaling"></a>Scaling
* [Add more RAM to Node.js to prevent crash](https://github.com/wekan/wekan/issues/3585)
* [Cron: Hourly restart WeKan, because of memory leaks](Cron)
* [Maybe: Add more RAM to Node.js to prevent crash](https://github.com/wekan/wekan/issues/3585)
* [Clustering AWS etc](AWS)
* [Scaling](Scaling)
* [Kubernetes](https://github.com/wekan/wekan/tree/main/helm/wekan)
@@ -128,6 +129,7 @@
# <a name="Features"></a>Features
* [Linked Cards](Linked-Cards)
* [Drag Drop](https://github.com/wekan/wekan/wiki/Drag-Drop) on Mobile and Desktop
* [Rclone: Store attachments to cloud storage like S3, MinIO, etc](Rclone)
* [Python based features](Python)
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\/) to be skipped, you can use \\. For example: Field1 == I\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "geskuif na Argief",
"activity-attached": "aangeheg",
"activity-created": "geskep",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "pasgemaakte veld geskep",
"activity-excluded": "uitgesluit",
"activity-imported": "ingevoer in van",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\/) to be skipped, you can use \\. For example: Field1 == I\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s انتقل الى الارشيف",
"activity-attached": "إرفاق %s ل %s",
"activity-created": "أنشأ %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "%s احدت حقل مخصص",
"activity-excluded": "استبعاد %s عن %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "أبيض",
"color-yellow": "yellow",
"unset-color": "غير محدد",
"comments": "Comments",
"comment": "تعليق",
"comment-placeholder": "أكتب تعليق",
"comment-only": "التعليق فقط",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "الإسم الكامل",
"header-logo-title": "الرجوع إلى صفحة اللوحات",
"hide-system-messages": "إخفاء رسائل النظام",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "إنشاء لوحة",
"home": "الرئيسية",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "الإكمال التلقائي للرموز التعبيرية",
"shortcut-autocomplete-members": "الإكمال التلقائي لأسماء الأعضاء",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "روابط",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "نص",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "انهيار",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s е преместена в Архива",
"activity-attached": "прикачи %s към %s",
"activity-created": "създаде %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "създаде собствено поле %s",
"activity-excluded": "изключи %s от %s",
"activity-imported": "импортира %s в/във %s от %s",
@@ -294,6 +295,7 @@
"color-white": "бяло",
"color-yellow": "жълто",
"unset-color": "Премахни",
"comments": "Comments",
"comment": "Коментирай",
"comment-placeholder": "Напиши коментар",
"comment-only": "Само коментар",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Име",
"header-logo-title": "Назад към страницата с Вашите табла.",
"hide-system-messages": "Скриване на системните съобщения",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Създай Табло",
"home": "Начало",
"import": "Импорт",
@@ -572,6 +574,7 @@
"select-board": "Изберете табло",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Въведи WIP лимит",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Добави себе си към тази карта",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Задача",
"create-task": "Добави задача",
"ok": "Окей",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Текст",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Събери",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "%s liammet ouzh %s",
"activity-created": "%s krouet",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "%s enporzhiet eus %s da %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "melen",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s mogut al Arxiu",
"activity-attached": "ha adjuntat %s a %s",
"activity-created": "ha creat %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "camp personalitzat creat %s",
"activity-excluded": "ha exclòs %s de %s",
"activity-imported": "important %s troba %s des de %s",
@@ -294,6 +295,7 @@
"color-white": "blanc",
"color-yellow": "groc",
"unset-color": "Desactivat",
"comments": "Comments",
"comment": "Comentari",
"comment-placeholder": "Escriu un comentari",
"comment-only": "Només comentaris",
@@ -443,7 +445,7 @@
"advanced-filter-description": "El filtre avançat permet escriure una cadena que contingui els operadors següents: == != <= >= && || ( ) S'utilitza un espai com a separador entre els operadors. Podeu filtrar tots els camps personalitzats escrivint els seus noms i valors. Per exemple: Camp1 == Valor1. Nota: si els camps o els valors contenen espais, cal que els encapsuleu en cometes simples. Per exemple: \"Camp 1\" == \"Valor 1\". Per ometre caràcters de control únics (' \\\\/), podeu utilitzar \\\\. Per exemple: Camp1 == I\\\\'m. També podeu combinar diverses condicions. Per exemple: F1 == V1 || F1 == V2. Normalment, tots els operadors s'interpreten d'esquerra a dreta. Podeu canviar l'ordre posant parèntesis. Per exemple: F1 == V1 && ( F2 == V2 || F2 == V3 ). També podeu cercar camps de text amb regex: F1 == /Tes.*/i",
"fullname": "Nom complet",
"header-logo-title": "Torna a la teva pàgina de taulers",
"hide-system-messages": "Oculta missatges del sistema",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Crea tauler",
"home": "Inici",
"import": "importa",
@@ -572,6 +574,7 @@
"select-board": "Selecciona tauler",
"set-wip-limit-value": "Limita el nombre màxim de tasques en aquesta llista",
"setWipLimitPopup-title": "Configura el Límit de Treball en Progrés",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assigna't la ftixa actual",
"shortcut-autocomplete-emoji": "Emoji autocompletat",
"shortcut-autocomplete-members": "Autocompleta membres",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "No podeu suprimir aquesta fitxa abans de suprimir per primera vegada la fitxa enllaçada que té",
"delete-linked-cards-before-this-list": "No podeu suprimir aquesta llista abans de suprimir primer les fitxes enllaçades que apunten a fitxes d'aquesta llista",
"hide-checked-items": "Amaga els elements marcats",
"hide-finished-checklist": "Hide finished checklist",
"task": "Tasca",
"create-task": "Crea una tasca",
"ok": "D'acord",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Creat a (el més nou primer)",
"created-at-oldest-first": "Creat a (el més antic primer)",
"links-heading": "Enllaços",
"hide-system-messages-of-all-users": "Amaga els missatges del sistema de tots els usuaris",
"now-system-messages-of-all-users-are-hidden": "Ara els missatges del sistema de tots els usuaris estan ocults",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Mou el carril",
"moveSwimlanePopup-title": "Mou el carril",
"custom-field-stringtemplate": "Plantilla de cadena",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Accions de checklist",
"moveChecklist": "Mou el checklist",
"moveChecklistPopup-title": "Mou el checklist",
"newlineBecomesNewChecklistItem": "La nova línia es converteix en un nou element del checklist",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copia el checklist",
"copyChecklistPopup-title": "Copia el checklist",
"card-show-lists": "Llistes de mostres de fitxes",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Contraure",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "El filtre avançat permet escriure una cadena que contingui els operadors següents: == != <= >= && || ( ) S'utilitza un espai com a separador entre els operadors. Podeu filtrar tots els camps personalitzats escrivint els seus noms i valors. Per exemple: Camp1 == Valor1. Nota: si els camps o els valors contenen espais, cal que els encapsuleu en cometes simples. Per exemple: \"Camp 1\" == \"Valor 1\". Per ometre caràcters de control únics (' \\\\/), podeu utilitzar \\\\. Per exemple: Camp1 == I\\\\'m. També podeu combinar diverses condicions. Per exemple: F1 == V1 || F1 == V2. Normalment, tots els operadors s'interpreten d'esquerra a dreta. Podeu canviar l'ordre posant parèntesis. Per exemple: F1 == V1 && ( F2 == V2 || F2 == V3 ). També podeu cercar camps de text amb regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "高级过滤器可以使用包含如下操作符的字符串进行过滤:== != <= >= && || ( ) 。操作符之间用空格隔开。输入字段名和数值就可以过滤所有自定义字段。例如:Field1 == Value1。注意如果字段名或数值包含空格,需要用单引号。例如: 'Field 1' == 'Value 1'。要跳过单个控制字符(' \\\\/),请使用 \\\\ 转义字符。例如: Field1 = I\\\\'m。支持组合使用多个条件,例如: F1 == V1 || F1 == V2。通常以从左到右的顺序进行判断。可以通过括号修改顺序,例如:F1 == V1 && ( F2 == V2 || F2 == V3 )。也支持使用正则表达式搜索文本字段。",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s bylo přesunuto do archivu",
"activity-attached": "přiloženo %s k %s",
"activity-created": "%s vytvořeno",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "vytvořeno vlastní pole %s",
"activity-excluded": "%s vyjmuto z %s",
"activity-imported": "importován %s do %s z %s",
@@ -294,6 +295,7 @@
"color-white": "bílá",
"color-yellow": "žlutá",
"unset-color": "Nenastaveno",
"comments": "Comments",
"comment": "Komentář",
"comment-placeholder": "Text komentáře",
"comment-only": "Pouze komentáře",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Pokročilý filtr dovoluje zapsat řetězec následujících operátorů: == != <= >= && || () Operátory jsou odděleny mezerou. Můžete filtrovat všechny vlastní pole zadáním jejich názvů nebo hodnot. Například: Pole1 == Hodnota1. Poznámka: Pokud pole nebo hodnoty obsahují mezery, je potřeba je obalit v jednoduchých uvozovkách. Například: 'Pole 1' == 'Hodnota 1'. Pro ignorovaní kontrolních znaků (' \\\\/) je možné použít \\\\. Například Pole1 == I\\\\'m. Můžete také kombinovat více podmínek. Například P1 == H1 || P1 == H2. Obvykle jsou operátory interpretovány zleva doprava. Jejich pořadí můžete měnit pomocí závorek. Například: P1 == H1 && ( P2 == H2 || P2 == H3 )",
"fullname": "Celé jméno",
"header-logo-title": "Jit zpět na stránku s tably.",
"hide-system-messages": "Skrýt systémové zprávy",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Vytvořit tablo",
"home": "Domů",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Vybrat tablo",
"set-wip-limit-value": "Nastaví limit pro maximální počet úkolů ve sloupci.",
"setWipLimitPopup-title": "Nastavit WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Přiřadit sebe k aktuální kartě",
"shortcut-autocomplete-emoji": "Automatické dokončování emoji",
"shortcut-autocomplete-members": "Automatický výběr uživatel",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "Tuto kratu nemůžete odstranit dokud nesmažete přiřazené karty",
"delete-linked-cards-before-this-list": "Tento sloupec nemůžete smazat dokud nesmažete propojené karty, které jsou navázány na karty v tomto sloupci",
"hide-checked-items": "Skrýt zvolené položky",
"hide-finished-checklist": "Hide finished checklist",
"task": "Úkol",
"create-task": "Vytvořit úkol",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Vyvtořeno (Od nejnovějších)",
"created-at-oldest-first": "Vytvořeno (Od nejstarších)",
"links-heading": "Odkazy",
"hide-system-messages-of-all-users": "Skrýt systémové zprávy všech uživatelů",
"now-system-messages-of-all-users-are-hidden": "Systémové zprávy všech uživatelů jsou nyní skryté",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Přesunout dráhu",
"moveSwimlanePopup-title": "Přesunout dráhu",
"custom-field-stringtemplate": "Šablona řetězce",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Sbalit",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s bylo přesunuto do archivu",
"activity-attached": "přiloženo %s k %s",
"activity-created": "%s vytvořeno",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "vytvořeno vlastní pole %s",
"activity-excluded": "%s vyjmuto z %s",
"activity-imported": "importován %s do %s z %s",
@@ -294,6 +295,7 @@
"color-white": "bílá",
"color-yellow": "žlutá",
"unset-color": "Nenastaveno",
"comments": "Comments",
"comment": "Komentář",
"comment-placeholder": "Text komentáře",
"comment-only": "Pouze komentáře",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Pokročilý filtr dovoluje zapsat řetězec následujících operátorů: == != <= >= && || () Operátory jsou odděleny mezerou. Můžete filtrovat všechny vlastní pole zadáním jejich názvů nebo hodnot. Například: Pole1 == Hodnota1. Poznámka: Pokud pole nebo hodnoty obsahují mezery, je potřeba je obalit v jednoduchých uvozovkách. Například: 'Pole 1' == 'Hodnota 1'. Pro ignorovaní kontrolních znaků (' \\\\/) je možné použít \\\\. Například Pole1 == I\\\\'m. Můžete také kombinovat více podmínek. Například P1 == H1 || P1 == H2. Obvykle jsou operátory interpretovány zleva doprava. Jejich pořadí můžete měnit pomocí závorek. Například: P1 == H1 && ( P2 == H2 || P2 == H3 )",
"fullname": "Celé jméno",
"header-logo-title": "Jit zpět na stránku s tably.",
"hide-system-messages": "Skrýt systémové zprávy",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Vytvořit tablo",
"home": "Domů",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Vybrat tablo",
"set-wip-limit-value": "Nastaví limit pro maximální počet úkolů ve sloupci.",
"setWipLimitPopup-title": "Nastavit WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Přiřadit sebe k aktuální kartě",
"shortcut-autocomplete-emoji": "Automatické dokončování emoji",
"shortcut-autocomplete-members": "Automatický výběr uživatel",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "Tuto kratu nemůžete odstranit dokud nesmažete přiřazené karty",
"delete-linked-cards-before-this-list": "Tento sloupec nemůžete smazat dokud nesmažete propojené karty, které jsou navázány na karty v tomto sloupci",
"hide-checked-items": "Skrýt zvolené položky",
"hide-finished-checklist": "Hide finished checklist",
"task": "Úkol",
"create-task": "Vytvořit úkol",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Vytvořeno (Od nejnovějších)",
"created-at-oldest-first": "Vytvořeno (Od nejstarších)",
"links-heading": "Odkazy",
"hide-system-messages-of-all-users": "Skrýt systémové zprávy všech uživatelů",
"now-system-messages-of-all-users-are-hidden": "Systémové zprávy všech uživatelů jsou nyní skryté",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Přesunout dráhu",
"moveSwimlanePopup-title": "Přesunout dráhu",
"custom-field-stringtemplate": "Šablona řetězce",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Překlad",
"text": "Text",
"translation-text": "Text překladu",
"show-at-minicard": "Zobrazit na minikartě",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Sbalit",
"uncollapse": "Rozbalit"
"uncollapse": "Rozbalit",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s flyttet til Arkiv",
"activity-attached": "vedhæftede %s til %s",
"activity-created": "oprettede %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "oprettede brugerdefineret felt %s",
"activity-excluded": "ekskluderet %s fra %s",
"activity-imported": "importerede %s ind i %s fra %s",
@@ -294,6 +295,7 @@
"color-white": "hvid",
"color-yellow": "gul",
"unset-color": "Nulstil",
"comments": "Comments",
"comment": "Kommentér",
"comment-placeholder": "Skriv kommentar",
"comment-only": "Kun kommentarer",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Avanceret filter gør det muligt at skrive en tekststreng indeholdende følgende operatører: == != <= >= && || ( ) Mellemrum anvendes som adskillelsestegn mellem operatørerne. Du kan filtrere alle Brugerdefinerede felter ved at taste deres navne og værdier. Som eksempel: Felt1 == Værdi1. Bemærk: Hvis felter eller værdier indeholder mellemrum, så skal du indkapsle dem i enkeltcitationstegn. Som eksempel: 'Felt 1' == 'Værdi1'. For at springe over enkelte kontroltegn (' \\\\/), så kan \\\\ benyttes. Som eksempel: Felt1 == Så\\\\'n. Du kan også kombinere flere betingelser. Som eksempel: F1 == V1 || F1 == V2. Normalt vil alle operatører blive fortolket fra venstre mod højre. Du kan ændre rækkefølgen ved brug af parenteser. Som eksempel: F1 == V1 && (F2 == V2 || F2 == V3). Du kan også søge i tekstfelter med brug af regulære udtryk: F1 == /Tes.*/i",
"fullname": "Fuldt navn",
"header-logo-title": "Gå tilbage til siden med dine tavler",
"hide-system-messages": "Skjul systembeskeder",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Opret tavle",
"home": "Hjem",
"import": "Importér",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Angiv en grænse for det maksimale antal opgaver i denne liste",
"setWipLimitPopup-title": "Angiv WIP-begrænsning",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Tilknyt dig selv til nuværende kort?",
"shortcut-autocomplete-emoji": "Auto-fuldfør emoji",
"shortcut-autocomplete-members": "Auto-fuldfør medlemmer",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "Du kan ikke slette dette kort før der slettes sammenkædede kort som har",
"delete-linked-cards-before-this-list": "Du kan ikke slette denne liste før der slettes sammenkædede kort, der peger til kort i denne liste",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Oversæt",
"text": "Tekst",
"translation-text": "Oversættelsestekst",
"show-at-minicard": "Vis et minikort",
"show-checklist-at-minicard": "Vis tjekliste på minikort",
"show-subtasks-field": "Vis felt med underopgaver",
"convert-to-markdown": "Konvertér til markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Sammenfold",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "hat %s ins Archiv verschoben",
"activity-attached": "hat %s an %s angehängt",
"activity-created": "hat %s erstellt",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "hat das benutzerdefinierte Feld %s erstellt",
"activity-excluded": "hat %s von %s ausgeschlossen",
"activity-imported": "hat %s in %s von %s importiert",
@@ -294,6 +295,7 @@
"color-white": "Weiß",
"color-yellow": "gelb",
"unset-color": "Nicht festgelegt",
"comments": "Comments",
"comment": "Kommentar",
"comment-placeholder": "Kommentar schreiben",
"comment-only": "Nur Kommentare",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Der erweiterte Filter erlaubt die Eingabe von Zeichenfolgen, die folgende Operatoren enthalten: == != <= >= && || ( ). Ein Leerzeichen wird als Trennzeichen zwischen den Operatoren verwendet. Sie können nach allen benutzerdefinierten Feldern filtern, indem Sie deren Namen und Werte eingeben. Zum Beispiel: Feld1 == Wert1. Hinweis: Wenn Felder oder Werte Leerzeichen enthalten, müssen Sie sie in einfache Anführungszeichen setzen. Zum Beispiel: 'Feld 1' == 'Wert 1'. Um einzelne Steuerzeichen (' \\\\/) zu überspringen, können Sie \\\\ verwenden. Zum Beispiel: Feld1 == Ich bin\\\\'s. Sie können außerdem mehrere Bedingungen kombinieren. Zum Beispiel: F1 == W1 || F1 == W2. Normalerweise werden alle Operatoren von links nach rechts interpretiert. Sie können die Reihenfolge ändern, indem Sie Klammern setzen. Zum Beispiel: F1 == W1 && ( F2 == W2 || F2 == W3 ). Sie können Textfelder auch mithilfe regulärer Ausdrücke durchsuchen: F1 == /Tes.*/i",
"fullname": "Vollständiger Name",
"header-logo-title": "Zurück zur Board Seite.",
"hide-system-messages": "Systemmeldungen ausblenden",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Board erstellen",
"home": "Home",
"import": "Importieren",
@@ -572,6 +574,7 @@
"select-board": "Board auswählen",
"set-wip-limit-value": "Setzen Sie ein Limit für die maximale Anzahl von Aufgaben in dieser Liste",
"setWipLimitPopup-title": "WIP-Limit setzen",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Fügen Sie sich zur aktuellen Karte hinzu",
"shortcut-autocomplete-emoji": "Emojis vervollständigen",
"shortcut-autocomplete-members": "Mitglieder vervollständigen",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "Sie können diese Karte nicht löschen, bevor verbundene Karten nicht gelöscht wurden.",
"delete-linked-cards-before-this-list": "Sie können diese Liste erst löschen, wenn Sie alle Karten gelöscht haben, die auf Karten in dieser Liste verweisen.",
"hide-checked-items": "Erledigte ausblenden",
"hide-finished-checklist": "Hide finished checklist",
"task": "Aufgabe",
"create-task": "Aufgabe erstellen",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Erstelldatum (neueste zuerst)",
"created-at-oldest-first": "Erstelldatum (älteste zuerst)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Alle System-Nachrichten aller Nutzer verbergen",
"now-system-messages-of-all-users-are-hidden": "Alle System-Nachrichten aller Nutzer sind nun verborgen",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Swimlane verschieben",
"moveSwimlanePopup-title": "Swimlane verschieben",
"custom-field-stringtemplate": "String-Vorlage",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklistenaktionen",
"moveChecklist": "Checkliste verschieben",
"moveChecklistPopup-title": "Checkliste verschieben",
"newlineBecomesNewChecklistItem": "Neue Zeile wird neuer Checklisteneintrag",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Einklappen",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "hat %s ins Archiv verschoben",
"activity-attached": "hat %s an %s angehängt",
"activity-created": "hat %s erstellt",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "hat das benutzerdefinierte Feld %s erstellt",
"activity-excluded": "hat %s von %s ausgeschlossen",
"activity-imported": "hat %s in %s von %s importiert",
@@ -294,6 +295,7 @@
"color-white": "Weiss",
"color-yellow": "gelb",
"unset-color": "Nicht festgelegt",
"comments": "Comments",
"comment": "Kommentar speichern",
"comment-placeholder": "Kommentar schreiben",
"comment-only": "Nur Kommentare",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Der erweiterte Filter erlaubt die Eingabe von Zeichenfolgen, die folgende Operatoren enthalten: == != <= >= && || ( ). Ein Leerzeichen wird als Trennzeichen zwischen den Operatoren verwendet. Sie können nach allen benutzerdefinierten Feldern filtern, indem Sie deren Namen und Werte eingeben. Zum Beispiel: Feld1 == Wert1. Hinweis: Wenn Felder oder Werte Leerzeichen enthalten, müssen Sie sie in einfache Anführungszeichen setzen. Zum Beispiel: 'Feld 1' == 'Wert 1'. Um einzelne Steuerzeichen (' \\\\/) zu überspringen, können Sie \\\\ verwenden. Zum Beispiel: Feld1 == Ich bin\\\\'s. Sie können ausserdem mehrere Bedingungen kombinieren. Zum Beispiel: F1 == W1 || F1 == W2. Normalerweise werden alle Operatoren von links nach rechts interpretiert. Sie können die Reihenfolge ändern, indem Sie Klammern setzen. Zum Beispiel: F1 == W1 && ( F2 == W2 || F2 == W3 ). Sie können Textfelder auch mithilfe regulärer Ausdrücke durchsuchen: F1 == /Tes.*/i",
"fullname": "Vollständiger Name",
"header-logo-title": "Zurück zur Board Seite.",
"hide-system-messages": "Systemmeldungen ausblenden",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Board erstellen",
"home": "Home",
"import": "Importieren",
@@ -572,6 +574,7 @@
"select-board": "Board auswählen",
"set-wip-limit-value": "Setzen Sie ein Limit für die maximale Anzahl von Aufgaben in dieser Liste",
"setWipLimitPopup-title": "WIP-Limit setzen",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Fügen Sie sich zur aktuellen Karte hinzu",
"shortcut-autocomplete-emoji": "Emojis vervollständigen",
"shortcut-autocomplete-members": "Mitglieder vervollständigen",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "Sie können diese Karte nicht löschen, bevor verbundene Karten nicht gelöscht wurden.",
"delete-linked-cards-before-this-list": "Sie können diese Liste erst löschen, wenn Sie alle Karten gelöscht haben, die auf Karten in dieser Liste verweisen.",
"hide-checked-items": "Erledigte ausblenden",
"hide-finished-checklist": "Hide finished checklist",
"task": "Aufgabe",
"create-task": "Aufgabe erstellen",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Erstelldatum (neueste zuerst)",
"created-at-oldest-first": "Erstelldatum (älteste zuerst)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Alle System-Nachrichten aller Nutzer verbergen",
"now-system-messages-of-all-users-are-hidden": "Alle System-Nachrichten aller Nutzer sind nun verborgen",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Swimlane verschieben",
"moveSwimlanePopup-title": "Swimlane verschieben",
"custom-field-stringtemplate": "String-Vorlage",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Listenaktionen",
"moveChecklist": "Checkliste bewegen",
"moveChecklistPopup-title": "Checkliste bewegen",
"newlineBecomesNewChecklistItem": "Neue Zeile wird neuer Checklisteneintrag",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Checkliste kopieren",
"copyChecklistPopup-title": "Checkliste kopieren",
"card-show-lists": "Listen anzeigen",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Einklappen",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "hat %s ins Archiv verschoben",
"activity-attached": "hat %s an %s angehängt",
"activity-created": "hat %s erstellt",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "hat das benutzerdefinierte Feld %s erstellt",
"activity-excluded": "hat %s von %s ausgeschlossen",
"activity-imported": "hat %s in %s von %s importiert",
@@ -294,6 +295,7 @@
"color-white": "Weiß",
"color-yellow": "gelb",
"unset-color": "Nicht festgelegt",
"comments": "Kommentare",
"comment": "Kommentar speichern",
"comment-placeholder": "Kommentar schreiben",
"comment-only": "Nur Kommentare",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Der erweiterte Filter erlaubt die Eingabe von Zeichenfolgen, die folgende Operatoren enthalten: == != <= >= && || ( ). Ein Leerzeichen wird als Trennzeichen zwischen den Operatoren verwendet. Sie können nach allen benutzerdefinierten Feldern filtern, indem Sie deren Namen und Werte eingeben. Zum Beispiel: Feld1 == Wert1. Hinweis: Wenn Felder oder Werte Leerzeichen enthalten, müssen Sie sie in einfache Anführungszeichen setzen. Zum Beispiel: 'Feld 1' == 'Wert 1'. Um einzelne Steuerzeichen (' \\\\/) zu überspringen, können Sie \\\\ verwenden. Zum Beispiel: Feld1 == Ich bin\\\\'s. Sie können außerdem mehrere Bedingungen kombinieren. Zum Beispiel: F1 == W1 || F1 == W2. Normalerweise werden alle Operatoren von links nach rechts interpretiert. Sie können die Reihenfolge ändern, indem Sie Klammern setzen. Zum Beispiel: F1 == W1 && ( F2 == W2 || F2 == W3 ). Sie können Textfelder auch mithilfe regulärer Ausdrücke durchsuchen: F1 == /Tes.*/i",
"fullname": "Vollständiger Name",
"header-logo-title": "Zurück zur Board Seite.",
"hide-system-messages": "Systemmeldungen ausblenden",
"show-activities": "Aktivitäten anzeigen",
"headerBarCreateBoardPopup-title": "Board erstellen",
"home": "Home",
"import": "Importieren",
@@ -572,6 +574,7 @@
"select-board": "Board auswählen",
"set-wip-limit-value": "Setzen Sie ein Limit für die maximale Anzahl von Aufgaben in dieser Liste",
"setWipLimitPopup-title": "WIP-Limit setzen",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Fügen Sie sich zur aktuellen Karte hinzu",
"shortcut-autocomplete-emoji": "Emojis vervollständigen",
"shortcut-autocomplete-members": "Mitglieder vervollständigen",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "Sie können diese Karte nicht löschen, bevor verbundene Karten nicht gelöscht wurden.",
"delete-linked-cards-before-this-list": "Sie können diese Liste erst löschen, wenn Sie alle Karten gelöscht haben, die auf Karten in dieser Liste verweisen.",
"hide-checked-items": "Erledigte ausblenden",
"hide-finished-checklist": "Hide finished checklist",
"task": "Aufgabe",
"create-task": "Aufgabe erstellen",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Erstelldatum (neueste zuerst)",
"created-at-oldest-first": "Erstelldatum (älteste zuerst)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Alle System-Nachrichten aller Nutzer verbergen",
"now-system-messages-of-all-users-are-hidden": "Alle System-Nachrichten aller Nutzer sind nun verborgen",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Alle Aktivitäten von allen Boards sind nun verborgen",
"move-swimlane": "Swimlane verschieben",
"moveSwimlanePopup-title": "Swimlane verschieben",
"custom-field-stringtemplate": "String-Vorlage",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklistenaktionen",
"moveChecklist": "Checkliste verschieben",
"moveChecklistPopup-title": "Checkliste verschieben",
"newlineBecomesNewChecklistItem": "Neue Zeile wird neuer Checklisteneintrag",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Checkliste kopieren",
"copyChecklistPopup-title": "Checkliste kopieren",
"card-show-lists": "Listen anzeigen",
@@ -1242,11 +1249,11 @@
"translation": "Übersetzung",
"text": "Text",
"translation-text": "Übersetzungstext",
"show-at-minicard": "Zeige auf Minikarte",
"show-checklist-at-minicard": "Checkliste auf Minikarte anzeigen",
"show-subtasks-field": "Teilaufgaben Feld anzeigen",
"convert-to-markdown": "Als Markdown konvertieren",
"import-board-zip": "Erstelle .zip Datei, die Board JSON Dateien und Board Unterverzeichnisse mit Boardname inklusive Anhängen enthält",
"collapse": "Einklappen",
"uncollapse": "Aufklappen"
"uncollapse": "Aufklappen",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "hat %s ins Archiv verschoben",
"activity-attached": "hat %s an %s angehängt",
"activity-created": "hat %s erstellt",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "hat das benutzerdefinierte Feld %s erstellt",
"activity-excluded": "hat %s von %s ausgeschlossen",
"activity-imported": "hat %s in %s von %s importiert",
@@ -294,6 +295,7 @@
"color-white": "Weiß",
"color-yellow": "gelb",
"unset-color": "Nicht festgelegt",
"comments": "Comments",
"comment": "Kommentar speichern",
"comment-placeholder": "Kommentar schreiben",
"comment-only": "Nur Kommentare",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Der erweiterte Filter erlaubt die Eingabe von Zeichenfolgen, die folgende Operatoren enthalten: == != <= >= && || ( ). Ein Leerzeichen wird als Trennzeichen zwischen den Operatoren verwendet. Sie können nach allen benutzerdefinierten Feldern filtern, indem Sie deren Namen und Werte eingeben. Zum Beispiel: Feld1 == Wert1. Hinweis: Wenn Felder oder Werte Leerzeichen enthalten, müssen Sie sie in einfache Anführungszeichen setzen. Zum Beispiel: 'Feld 1' == 'Wert 1'. Um einzelne Steuerzeichen (' \\\\/) zu überspringen, können Sie \\\\ verwenden. Zum Beispiel: Feld1 == Ich bin\\\\'s. Sie können außerdem mehrere Bedingungen kombinieren. Zum Beispiel: F1 == W1 || F1 == W2. Normalerweise werden alle Operatoren von links nach rechts interpretiert. Sie können die Reihenfolge ändern, indem Sie Klammern setzen. Zum Beispiel: F1 == W1 && ( F2 == W2 || F2 == W3 ). Sie können Textfelder auch mithilfe regulärer Ausdrücke durchsuchen: F1 == /Tes.*/i",
"fullname": "Vollständiger Name",
"header-logo-title": "Zurück zur Board Seite.",
"hide-system-messages": "Systemmeldungen ausblenden",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Board erstellen",
"home": "Home",
"import": "Importieren",
@@ -572,6 +574,7 @@
"select-board": "Board auswählen",
"set-wip-limit-value": "Setzen Sie ein Limit für die maximale Anzahl von Aufgaben in dieser Liste",
"setWipLimitPopup-title": "WIP-Limit setzen",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Fügen Sie sich zur aktuellen Karte hinzu",
"shortcut-autocomplete-emoji": "Emojis vervollständigen",
"shortcut-autocomplete-members": "Mitglieder vervollständigen",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "Sie können diese Karte nicht löschen, bevor verbundene Karten nicht gelöscht wurden.",
"delete-linked-cards-before-this-list": "Sie können diese Liste erst löschen, wenn Sie alle Karten gelöscht haben, die auf Karten in dieser Liste verweisen.",
"hide-checked-items": "Erledigte ausblenden",
"hide-finished-checklist": "Hide finished checklist",
"task": "Aufgabe",
"create-task": "Aufgabe erstellen",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Erstelldatum (neueste zuerst)",
"created-at-oldest-first": "Erstelldatum (älteste zuerst)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Alle System-Nachrichten aller Nutzer verbergen",
"now-system-messages-of-all-users-are-hidden": "Alle System-Nachrichten aller Nutzer sind nun verborgen",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Swimlane verschieben",
"moveSwimlanePopup-title": "Swimlane verschieben",
"custom-field-stringtemplate": "String-Vorlage",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklistenaktionen",
"moveChecklist": "Checkliste verschieben",
"moveChecklistPopup-title": "Checkliste verschieben",
"newlineBecomesNewChecklistItem": "Neue Zeile wird neuer Checklisteneintrag",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Checkliste kopieren",
"copyChecklistPopup-title": "Checkliste kopieren",
"card-show-lists": "Listen anzeigen",
@@ -1242,11 +1249,11 @@
"translation": "Übersetzung",
"text": "Text",
"translation-text": "Übersetzungstext",
"show-at-minicard": "Zeige auf Minikarte",
"show-checklist-at-minicard": "Checkliste auf Minikarte anzeigen",
"show-subtasks-field": "Teilaufgaben Feld anzeigen",
"convert-to-markdown": "Als Markdown konvertieren",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Einklappen",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s μετακινήθηκε στο Αρχείο",
"activity-attached": "επισυνάφθηκε %s στο %s",
"activity-created": "δημιουργήθηκε %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "δημιούργησε το προσαρμοσμένο πεδίο %s",
"activity-excluded": "εξαιρέθηκε %s από %s",
"activity-imported": "εισήχθη %s στο %s από %s",
@@ -294,6 +295,7 @@
"color-white": "λευκό",
"color-yellow": "κίτρινο",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Σχόλιο",
"comment-placeholder": "Συγγραφή Σχολίου",
"comment-only": "Μόνο σχόλιο",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Πλήρες Όνομα",
"header-logo-title": "Επιστροφή στη σελίδα των πινάκων σας.",
"hide-system-messages": "Απόκρυψη μηνυμάτων συστήματος",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Δημιουργία Πίνακα",
"home": "Αρχική",
"import": "Εισαγωγή",
@@ -572,6 +574,7 @@
"select-board": "Επιλογή Πίνακα",
"set-wip-limit-value": "Προσδιορισμός ορίου στο μέγιστο αριθμό εργασιών σε αυτή τη λίστα.",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Κείμενο",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Σύμπτυξη",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s μετακινήθηκε στο Αρχείο",
"activity-attached": "επισυνάφθηκε %s στο %s",
"activity-created": "δημιουργήθηκε %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "δημιούργησε το προσαρμοσμένο πεδίο %s",
"activity-excluded": "εξαιρέθηκε %s από %s",
"activity-imported": "εισήχθη %s στο %s από %s",
@@ -294,6 +295,7 @@
"color-white": "λευκό",
"color-yellow": "κίτρινο",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Σχόλιο",
"comment-placeholder": "Συγγραφή Σχολίου",
"comment-only": "Μόνο σχόλιο",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Πλήρες Όνομα",
"header-logo-title": "Επιστροφή στη σελίδα των πινάκων σας.",
"hide-system-messages": "Απόκρυψη μηνυμάτων συστήματος",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Δημιουργία Πίνακα",
"home": "Αρχική",
"import": "Εισαγωγή",
@@ -572,6 +574,7 @@
"select-board": "Επιλογή Πίνακα",
"set-wip-limit-value": "Προσδιορισμός ορίου στο μέγιστο αριθμό εργασιών σε αυτή τη λίστα.",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Κείμενο",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Σύμπτυξη",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
+14 -7
View File
@@ -49,6 +49,7 @@
"activity-archived": "%s moved to Archive",
"activity-attached": "attached %s to %s",
"activity-created": "created %s",
"activity-changedListTitle": "renamed list to %s",
"activity-customfield-created": "created custom field %s",
"activity-excluded": "excluded %s from %s",
"activity-imported": "imported %s into %s from %s",
@@ -294,6 +295,7 @@
"color-white": "white",
"color-yellow": "yellow",
"unset-color": "Unset",
"comments": "Comments",
"comment": "Comment",
"comment-placeholder": "Write Comment",
"comment-only": "Comment only",
@@ -443,7 +445,7 @@
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\\\/) to be skipped, you can use \\\\. For example: Field1 == I\\\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
"show-activities": "Show Activities",
"headerBarCreateBoardPopup-title": "Create Board",
"home": "Home",
"import": "Import",
@@ -572,6 +574,7 @@
"select-board": "Select Board",
"set-wip-limit-value": "Set a limit for the maximum number of tasks in this list",
"setWipLimitPopup-title": "Set WIP Limit",
"shortcut-add-self": "Add yourself to current card",
"shortcut-assign-self": "Assign yourself to current card",
"shortcut-autocomplete-emoji": "Autocomplete emoji",
"shortcut-autocomplete-members": "Autocomplete members",
@@ -956,6 +959,7 @@
"delete-linked-card-before-this-card": "You can not delete this card before first deleting linked card that has",
"delete-linked-cards-before-this-list": "You can not delete this list before first deleting linked cards that are pointing to cards in this list",
"hide-checked-items": "Hide checked items",
"hide-finished-checklist": "Hide finished checklist",
"task": "Task",
"create-task": "Create Task",
"ok": "OK",
@@ -1109,8 +1113,8 @@
"created-at-newest-first": "Created At (Newest First)",
"created-at-oldest-first": "Created At (Oldest First)",
"links-heading": "Links",
"hide-system-messages-of-all-users": "Hide system messages of all users",
"now-system-messages-of-all-users-are-hidden": "Now system messages of all users are hidden",
"hide-activities-of-all-boards": "Don't show the board activities on all boards",
"now-activities-of-all-boards-are-hidden": "Now all activities of all boards are hidden",
"move-swimlane": "Move Swimlane",
"moveSwimlanePopup-title": "Move Swimlane",
"custom-field-stringtemplate": "String Template",
@@ -1193,7 +1197,10 @@
"checklistActionsPopup-title": "Checklist Actions",
"moveChecklist": "Move Checklist",
"moveChecklistPopup-title": "Move Checklist",
"newlineBecomesNewChecklistItem": "Newline becomes new checklist item",
"newlineBecomesNewChecklistItem": "Each line of text becomes one of the checklist items",
"newLineNewItem": "One line of text = one checklist item",
"newlineBecomesNewChecklistItemOriginOrder": "Each line of text becomes one of the checklist items, original order",
"originOrder": "original order",
"copyChecklist": "Copy Checklist",
"copyChecklistPopup-title": "Copy Checklist",
"card-show-lists": "Card Show Lists",
@@ -1242,11 +1249,11 @@
"translation": "Translation",
"text": "Text",
"translation-text": "Translation text",
"show-at-minicard": "Show at minicard",
"show-checklist-at-minicard": "Show checklist at minicard",
"show-subtasks-field": "Show subtasks field",
"convert-to-markdown": "Convert to markdown",
"import-board-zip": "Add .zip file that has board JSON files, and board name subdirectories with attachments",
"collapse": "Collapse",
"uncollapse": "Uncollapse"
"uncollapse": "Uncollapse",
"hideCheckedChecklistItems": "Hide checked checklist items",
"hideAllChecklistItems": "Hide all checklist items"
}
Loaded 100 of 232 files, more files were not shown because too many files have changed in this diff. Show more