Compare commits

...
49 Commits
Author SHA1 Message Date
Lauri Ojansivu 5a5d619b89 v5.63 2021-10-07 09:31:38 +03:00
Lauri Ojansivu 97c56baebb Updated ChangeLog. 2021-10-07 08:50:42 +03:00
Lauri Ojansivu 9c99c5c3ae Fixed SMTP by reverting MAIL_SERVICE changes.
Thanks to xet7 !

Fixes #4022,
fixes #4001,
fixes https://github.com/wekan/wekan/discussions/4030
2021-10-07 08:47:10 +03:00
Lauri Ojansivu 28d515436e Updated translations. 2021-10-07 08:46:32 +03:00
Lauri Ojansivu f70ec7f53c Updated translations. 2021-10-05 20:53:50 +03:00
Lauri Ojansivu 74825c099f Merge pull request #4031 from greenhost/allow-custom-kubernetes-labels
Allow setting custom kubernetes labels when using the helm chart
2021-10-05 20:51:00 +03:00
Arie Peterson 966670fe70 Allow setting custom kubernetes labels when using the helm chart 2021-10-05 11:36:24 +02:00
Lauri Ojansivu c406607fd2 v5.62 2021-10-04 18:22:09 +03:00
Lauri Ojansivu e812a3a087 Updated ChangeLog. 2021-10-04 18:14:22 +03:00
Lauri Ojansivu 9e6744d1e3 Added week numbers to dates at card, minicard, Custom Field dates, DatePicker and Calendar. Part 2.
Thanks to xet7 !
2021-10-04 18:13:00 +03:00
Lauri Ojansivu 835e3ef305 Updated translations. 2021-10-04 18:01:43 +03:00
Lauri Ojansivu ac658af462 Updated ChangeLog. 2021-10-04 17:52:23 +03:00
Lauri Ojansivu 6c3fcdcc4c Confirm Archive Card.
Thanks to xet7 !
2021-10-04 17:51:07 +03:00
Lauri Ojansivu 22cbd5097b Updated ChangeLog. 2021-10-04 15:37:27 +03:00
Lauri Ojansivu d06ac09485 Added week numbers to dates at card, minicard, Custom Field dates, DatePicker and Calendar.
Thanks to xet7 !
2021-10-04 15:34:32 +03:00
Lauri Ojansivu 94b67db78a Updated ChangeLog. 2021-10-03 17:17:30 +03:00
Lauri Ojansivu 5536525564 Removed extra quotes.
Thanks to xet7 !
2021-10-03 17:01:44 +03:00
Lauri Ojansivu e6c7463c03 Merge pull request #4028 from Ben0it-T/master
Export CSV, TSV and XLS
2021-10-03 14:33:28 +03:00
Ben0it-T 11bf4c7c07 Fix : export CSV, TSV and XLS translation
Feature : add export CSV with semicolon separator
2021-10-03 09:18:02 +02:00
Lauri Ojansivu bc9c7e5aa4 Updated ChangeLog. 2021-10-01 19:55:07 +03:00
Lauri Ojansivu 9a0f54f4fe Merge pull request #4026 from ilvar/fix-shrink-docker-image-size
Fix: clean up /tmp after Docker build
2021-10-01 19:52:54 +03:00
Lauri Ojansivu 3b6f3c58e1 Updated ChangeLog. 2021-10-01 19:52:08 +03:00
Lauri Ojansivu ff01c2a69f Merge pull request #4025 from ilvar/feature-rules-title-partial-match
Feature: allow word match for rules -> title filter
2021-10-01 19:48:16 +03:00
Arcady Chumachenko 1322c1fbbd Fix: clean up /tmp after Docker build; drastically reduces docker image size 280 -> 180 MB 2021-09-30 21:22:50 +01:00
Arcady Chumachenko 36e2c76456 Feature: allow word match for rules -> title filter; e.g. filter 'Foo' will now match both 'Foo' and 'Foo bar' 2021-09-30 21:19:47 +01:00
Lauri Ojansivu c42a8df65c v5.61 2021-09-25 18:30:24 +03:00
Lauri Ojansivu 01b38bb2e0 Updated translations. 2021-09-25 18:25:21 +03:00
Lauri Ojansivu 9f9a69286c Updated ChangeLog. 2021-09-25 18:20:01 +03:00
Lauri Ojansivu e3a0dea85f Fixed REST API, it shoud work now by Admin user.
Reverted Allow board members to use more of API of Wekan v5.35
https://github.com/wekan/wekan/commit/a719e8fda1f78bcbf9af6e7b4341f8be1d141e90

Thanks to tomhughes.

Fixes #4009,
fixes #2793,
fixes #2790
2021-09-25 18:09:18 +03:00
Lauri Ojansivu 5b5094ced6 Updated translations. 2021-09-23 22:33:11 +03:00
Lauri Ojansivu f5c2557338 Updated translations. 2021-09-22 19:54:13 +03:00
Lauri Ojansivu 802f1599a1 Updated ChangeLog. 2021-09-22 19:51:39 +03:00
Lauri Ojansivu 9781afa17e Merge branch 'Emile840-master' 2021-09-22 19:49:50 +03:00
Lauri Ojansivu 3319602f3f Merge branch 'master' of https://github.com/Emile840/wekan into Emile840-master 2021-09-22 19:48:30 +03:00
Emile NDAGIJIMANA 8bd2e4f0dd upgrade to wekan 5.60 2021-09-22 17:13:48 +02:00
Lauri Ojansivu 8eaa490664 v5.60 2021-09-22 17:13:48 +02:00
Lauri Ojansivu db54eb87cd Updated translations. 2021-09-22 17:13:48 +02:00
Lauri Ojansivu d1950efdd4 Updated ChangeLog. 2021-09-22 17:13:48 +02:00
Lauri Ojansivu cf51ddb32e Update build scripts to install npm from NodeSource, and meteor with npm.
Thanks to Meteor developers!
2021-09-22 17:13:48 +02:00
Lauri Ojansivu 269551ead5 Updated ChangeLog. 2021-09-22 17:13:48 +02:00
Lauri Ojansivu ee06e4f6de Toggle opened card Custom Fields layout between Grid and one per row.
Thanks to xet7 !
2021-09-22 17:13:48 +02:00
Lauri Ojansivu 87e9949f33 Updated ChangeLog. 2021-09-22 17:13:48 +02:00
Lauri Ojansivu 0b02e88ee3 Try to fix Bug: Card number equal to #0 when creating a sub-task from a card.
Thanks to marcungeschikts, olivierlambert and xet7 !

Fixes #3970
2021-09-22 17:13:48 +02:00
Lauri Ojansivu dd58698cef Updated translations. 2021-09-22 17:13:48 +02:00
Lauri Ojansivu f9807bfad8 Updated ChangeLog. 2021-09-22 17:13:48 +02:00
Lauri Ojansivu 4f6bd86478 Custom Fields at opened card below each other.
Thanks to xet7 !
2021-09-22 17:13:48 +02:00
Lauri Ojansivu be6ff3782b Updated translations. 2021-09-22 17:13:48 +02:00
Lauri Ojansivu 7ae2360a55 Updated translations. 2021-09-22 17:13:47 +02:00
Emile NDAGIJIMANA 1852e66abd Search by name, userName or email address when adding a new user to a board 2021-09-22 16:55:23 +02:00
104 changed files with 830 additions and 482 deletions

No files matched your search

+55
View File
@@ -3,6 +3,61 @@
Note: With Docker, please don't use latest tag. Only use release tags.
See https://github.com/wekan/wekan/issues/3874
# v5.63 2021-10-07 Wekan release
This release adds the following new features:
- [Allow setting custom kubernetes labels when using the helm chart](https://github.com/wekan/wekan/pull/4031).
Thanks to ariep.
and fixes the following bugs:
- [Fixed SMTP by reverting MAIL_SERVICE changes](https://github.com/wekan/wekan/commit/9c99c5c3ae8d291df5305b3b6cd1825fc5cc2c21).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.62 2021-10-04 Wekan release
This release adds the following new features:
- [Allow word match for rules -> title filter](https://github.com/wekan/wekan/pull/4025).
Thanks to ilvar.
- [CSV/TSV/Excel Export translatable and fixed, CSV semicolon option added](https://github.com/wekan/wekan/pull/4028).
Thanks to Ben0it-T.
- Added week numbers to dates at card, minicard, Custom Field dates, DatePicker and Calendar.
[Part 1](https://github.com/wekan/wekan/commit/d06ac09485dafb0256ae7fbe613ab2dbe00b70f3),
[Part 2](https://github.com/wekan/wekan/commit/9e6744d1e33b37e0d23eea5869ccac3ff37f7d53).
Thanks to xet7.
- [Confirm Archive Card](https://github.com/wekan/wekan/commit/6c3fcdcc4c446fd4c8dc4dca1b2846f6e3ea72e4).
Thanks to xet7.
and fixes the following bugs:
- [Clean up /tmp after Docker build. This drastically reduces docker image size from ~280 MB to ~180 MB](https://github.com/wekan/wekan/pull/4026).
Thanks to ilvar.
- [Removed extra quotes from Export menu](https://github.com/wekan/wekan/commit/553652556468ac88c0691d4d688d5a922ef6a0c2).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.61 2021-09-25 Wekan release
This release adds the following new features:
- [Search by name or username or emails address when adding a new user to a board](https://github.com/wekan/wekan/pull/4018).
Thanks to Emile840.
and fixes the following bugs:
- [Fixed REST API, it shoud work now by Admin user](https://github.com/wekan/wekan/commit/e3a0dea85fa1f8e2f580f419b30cf5f36775d731).
Reverted [Allow board members to use more of API of Wekan v5.35](https://github.com/wekan/wekan/commit/a719e8fda1f78bcbf9af6e7b4341f8be1d141e90).
Thanks to tomhughes and xet7.
- [Wekan Gantt GPL: Fix Tasks not displayed in Gantt screen](https://github.com/wekan/wekan-gantt-gpl/commit/72d464f5eb55501f08eb0cfd31fd5340380d7f3b).
Thanks to MrLovegreen and khjde1207.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.60 2021-09-22 Wekan release
This release adds the following new features:
+1
View File
@@ -309,6 +309,7 @@ RUN \
apt-get remove --purge -y ${BUILD_DEPS} && \
apt-get autoremove -y && \
npm uninstall -g api2html &&\
rm -R /tmp* && \
rm -R /var/lib/apt/lists/* && \
rm -R /home/wekan/.meteor && \
rm -R /home/wekan/app && \
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v5.60.0"
appVersion: "v5.63.0"
files:
userUploads:
- README.md
+1
View File
@@ -336,6 +336,7 @@ BlazeComponent.extendComponent({
defaultView: 'agendaDay',
editable: true,
timezone: 'local',
weekNumbers: true,
header: {
left: 'title today prev,next',
center:
+15 -11
View File
@@ -79,18 +79,22 @@ template(name="cardCustomField-currency")
template(name="cardCustomField-date")
if canModifyCard
a.js-edit-date(title="{{showTitle}}" class="{{classes}}")
if value
div.card-date
time(datetime="{{showISODate}}")
| {{showDate}}
else
| {{_ 'edit'}}
else
a.js-edit-date(title="{{showTitle}} {{_ 'predicate-week'}} {{showWeek}}" class="{{classes}}")
if value
div.card-date
time(datetime="{{showISODate}}")
| {{showDate}}
div.card-date
time(datetime="{{showISODate}}")
| {{showDate}}
b
| {{showWeek}}
else
| {{_ 'edit'}}
else
if value
div.card-date
time(datetime="{{showISODate}}")
| {{showDate}}
b
| {{showWeek}}
template(name="cardCustomField-dropdown")
if canModifyCard
@@ -149,6 +149,10 @@ CardCustomField.register('cardCustomField');
});
}
showWeek() {
return this.date.get().week().toString();
}
showDate() {
// this will start working once mquandalle:moment
// is updated to at least moment.js 2.10.5
+9 -3
View File
@@ -1,14 +1,20 @@
template(name="dateBadge")
if canModifyCard
a.js-edit-date.card-date(title="{{showTitle}}" class="{{classes}}")
a.js-edit-date.card-date(title="{{showTitle}} {{_ 'predicate-week'}} {{showWeek}}" class="{{classes}}")
time(datetime="{{showISODate}}")
| {{showDate}}
b
| {{showWeek}}
else
a.card-date(title="{{showTitle}}" class="{{classes}}")
a.card-date(title="{{showTitle}} {{_ 'predicate-week'}} {{showWeek}}" class="{{classes}}")
time(datetime="{{showISODate}}")
| {{showDate}}
b
| {{showWeek}}
template(name="dateCustomField")
a(title="{{showTitle}}" class="{{classes}}")
a(title="{{showTitle}} {{_ 'predicate-week'}} {{showWeek}}" class="{{classes}}")
time(datetime="{{showISODate}}")
| {{showDate}}
b
| {{showWeek}}
+20 -3
View File
@@ -115,6 +115,10 @@ const CardDate = BlazeComponent.extendComponent({
}, 60000);
},
showWeek() {
return this.date.get().week().toString();
},
showDate() {
// this will start working once mquandalle:moment
// is updated to at least moment.js 2.10.5
@@ -284,12 +288,25 @@ class CardCustomFieldDate extends CardDate {
});
}
classes() {
return 'customfield-date';
showWeek() {
return this.date.get().week().toString();
}
showDate() {
// this will start working once mquandalle:moment
// is updated to at least moment.js 2.10.5
// until then, the date is displayed in the "L" format
return this.date.get().calendar(null, {
sameElse: 'llll',
});
}
showTitle() {
return '';
return `${this.date.get().format('LLLL')}`;
}
classes() {
return 'customfield-date';
}
events() {
+6
View File
@@ -826,6 +826,12 @@ template(name="cardDeletePopup")
p {{_ "card-delete-suggest-archive"}}
button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
template(name="cardArchivePopup")
p {{_ "card-archive-pop"}}
unless archived
p {{_ "card-archive-suggest-cancel"}}
button.js-confirm.negate.full(type="submit") {{_ 'archive'}}
template(name="deleteVotePopup")
p {{_ "vote-delete-pop"}}
button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
+4 -4
View File
@@ -663,11 +663,11 @@ Template.cardDetailsActionsPopup.events({
);
this.move(this.boardId, this.swimlaneId, this.listId, maxOrder + 1);
},
'click .js-archive'(event) {
event.preventDefault();
this.archive();
'click .js-archive': Popup.afterConfirm('cardArchive', function () {
Popup.close();
},
this.archive();
Utils.goBoardId(this.boardId);
}),
'click .js-more': Popup.open('cardMore'),
'click .js-toggle-watch-card'() {
const currentCard = this;
+5 -1
View File
@@ -400,7 +400,11 @@ template(name="exportBoard")
li
a(href="{{exportCsvUrl}}", download="{{exportCsvFilename}}")
i.fa.fa-share-alt
| {{_ 'export-board-csv'}}
| {{_ 'export-board-csv'}} ,
li
a(href="{{exportScsvUrl}}", download="{{exportCsvFilename}}")
i.fa.fa-share-alt
| {{_ 'export-board-csv'}} ;
li
a(href="{{exportTsvUrl}}", download="{{exportTsvFilename}}")
i.fa.fa-share-alt
+15
View File
@@ -512,6 +512,21 @@ BlazeComponent.extendComponent({
};
const queryParams = {
authToken: Accounts._storedLoginToken(),
delimiter: ',',
};
return FlowRouter.path(
'/api/boards/:boardId/export/csv',
params,
queryParams,
);
},
exportScsvUrl() {
const params = {
boardId: Session.get('currentBoard'),
};
const queryParams = {
authToken: Accounts._storedLoginToken(),
delimiter: ';',
};
return FlowRouter.path(
'/api/boards/:boardId/export/csv',
+1
View File
@@ -34,6 +34,7 @@ export class DatePicker extends BlazeComponent {
todayBtn: 'linked',
language: TAPi18n.getLanguage(),
weekStart: this.startDayOfWeek(),
calendarWeeks: true,
})
.on(
'changeDate',
+1 -1
View File
@@ -1,5 +1,5 @@
apiVersion: v2
appVersion: "5.60"
appVersion: "5.63"
dependencies:
- condition: mongodb.enabled
name: mongodb
+6
View File
@@ -8,6 +8,9 @@ metadata:
component: wekan
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
{{- if .Values.deploymentLabels }}
{{- toYaml .Values.deploymentLabels | nindent 4 }}
{{- end }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
@@ -22,6 +25,9 @@ spec:
app: {{ template "wekan.name" . }}
component: wekan
release: {{ .Release.Name }}
{{- if .Values.podLabels }}
{{- toYaml .Values.podLabels | nindent 8 }}
{{- end }}
spec:
serviceAccountName: {{ template "wekan.serviceAccountName" . }}
containers:
+7 -1
View File
@@ -14,7 +14,7 @@ serviceAccounts:
##
image:
repository: quay.io/wekan/wekan
tag: v5.60
tag: v5.63
pullPolicy: IfNotPresent
## Configuration for wekan component
@@ -103,6 +103,12 @@ autoscaling:
##
targetCPUUtilizationPercentage: 80
# Optional custom labels for the deployment resource.
deploymentLabels: {}
# Optional custom labels for the pods created by the deployment.
podLabels: {}
# ------------------------------------------------------------------------------
# MongoDB:
# ------------------------------------------------------------------------------
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "هذا حذف أبديّ . سوف تفقد كل الإجراءات المنوطة بهذه البطاقة",
"card-delete-pop": "سيتم إزالة جميع الإجراءات من تبعات النشاط، وأنك لن تكون قادرا على إعادة فتح البطاقة. لا يوجد التراجع.",
"card-delete-suggest-archive": "يمكنك نقل بطاقة إلى الأرشيف لإزالتها من اللوحة والمحافظة على النشاط.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "مستحق",
"card-due-on": "مستحق في",
"card-spent": "امضى وقتا",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "حذف البطاقة ?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "إجراءات على البطاقة",
"cardLabelsPopup-title": "علامات",
"cardMembersPopup-title": "أعضاء",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "Можете да преместите картата в Архива, за да я премахнете от Таблото и така да запазите активността в него.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Готова за",
"card-due-on": "Готова за",
"card-spent": "Изработено време",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Желаете да изтриете картата?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Опции",
"cardLabelsPopup-title": "Етикети",
"cardMembersPopup-title": "Членове",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Diverkañ ar gartenn ?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Izili",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "L'esborrat és permanent. Perdreu totes les accions associades a aquesta fitxa.",
"card-delete-pop": "Totes les accions s'eliminaran de l'activitat i no podreu tornar a obrir la fitxa. No es pot desfer.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Finalitza",
"card-due-on": "Finalitza a",
"card-spent": "Temps Dedicat",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Esborrar fitxa?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Accions de fitxes",
"cardLabelsPopup-title": "Etiquetes",
"cardMembersPopup-title": "Membres",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Smazání je trvalé. Přijdete o všechny akce asociované s touto kartou.",
"card-delete-pop": "Všechny akce budou odstraněny z kanálu aktivity a nebude možné kartu obnovit. Toto nelze vrátit zpět.",
"card-delete-suggest-archive": "Můžete přesunout kartu do archivu pro odstranění z tabla a zachovat aktivitu.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Termín",
"card-due-on": "Do",
"card-spent": "Strávený čas",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Smazat plánovací poker?",
"poker-delete-pop": "Smazání je trvalé. Přijdete o všechny akce asociované s tímto plánovacím pokerem.",
"cardDeletePopup-title": "Smazat kartu?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Akce karty",
"cardLabelsPopup-title": "Štítky",
"cardMembersPopup-title": "Členové",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Sletning vil være permanent. Du mister alle handlinger knyttet til dette kort.",
"card-delete-pop": "Alle handlinger vil blive fjernet fra aktivitetsfeedet, og du kan ikke genåbne kortet. Det kan ikke omgøres.",
"card-delete-suggest-archive": "Du kan flytte et kort til arkivet for at fjerne det fra tavlen, og bevare aktiviteten.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Forfalder",
"card-due-on": "Forfaldsdato",
"card-spent": "Anvendt tid",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Slet kort?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Handlinger for kort",
"cardLabelsPopup-title": "Etiketter",
"cardMembersPopup-title": "Medlemmer",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Löschen kann nicht rückgängig gemacht werden. Alle Aktionen, die dieser Karte zugeordnet sind, werden ebenfalls gelöscht.",
"card-delete-pop": "Alle Aktionen werden aus dem Aktivitätsfeed entfernt und die Karte kann nicht wiedereröffnet werden. Die Aktion kann nicht rückgängig gemacht werden.",
"card-delete-suggest-archive": "Sie können eine Karte ins Archiv verschieben, um sie vom Board zu entfernen und die Aktivitäten zu behalten.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "fällig",
"card-due-on": "fällig am",
"card-spent": "Aufgewendete Zeit",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Planning Poker löschen ?",
"poker-delete-pop": "Die Löschung ist permanent. Sie werden alles im Zusammenhang mit diesem Planning Poker verlieren.",
"cardDeletePopup-title": "Karte löschen?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Kartenaktionen",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Mitglieder",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Löschen kann nicht rückgängig gemacht werden. Alle Aktionen, die dieser Karte zugeordnet sind, werden ebenfalls gelöscht.",
"card-delete-pop": "Alle Aktionen werden aus dem Aktivitätsfeed entfernt und die Karte kann nicht wiedereröffnet werden. Die Aktion kann nicht rückgängig gemacht werden.",
"card-delete-suggest-archive": "Sie können eine Karte ins Archiv verschieben, um sie vom Board zu entfernen und die Aktivitäten zu behalten.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Fällig",
"card-due-on": "Fällig am",
"card-spent": "Aufgewendete Zeit",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Planungspoker löschen?",
"poker-delete-pop": "Die Löschung ist permanent. Sie werden alles im Zusammenhang mit diesem Planungspoker verlieren.",
"cardDeletePopup-title": "Karte löschen?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Kartenaktionen",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Mitglieder",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Η Διαγραφή είναι μόνιμη. Θα χάσετε όλες τις ενέργειες που σχετίζονται με αυτή την κάρτα. ",
"card-delete-pop": "Όλες οι ενέργειες θα αφαιρεθούν από τη ροή δραστηριοτήτων και δε θα μπορείτε να ξανανοίξετε την κάρτα. Δεν υπάρχει δυνατότητα επαναφοράς.",
"card-delete-suggest-archive": "Μπορείτε να μετακινήσετε μια κάρτα στο Αρχείο για να την αφαιρέσετε από τον πίνακα και να διατηρήσετε τη δραστηριότητα.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Έως",
"card-due-on": "Έως τις",
"card-spent": "Δαπανηθείς Χρόνος",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Διαγραφή Κάρτας;",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Ενέργειες κάρτας",
"cardLabelsPopup-title": "Ετικέτες",
"cardMembersPopup-title": "Μέλοι",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Etikedoj",
"cardMembersPopup-title": "Membroj",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Borrar es permanente. Perderás todas las acciones asociadas con esta tarjeta.",
"card-delete-pop": "Todas las acciones van a ser eliminadas del agregador de actividad y no podrás re-abrir la tarjeta. No hay deshacer.",
"card-delete-suggest-archive": "Podés mover una tarjeta al Archivo para eliminarla del tablero y preservar la actividad.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Vence",
"card-due-on": "Vence en",
"card-spent": "Tiempo Empleado",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "¿Borrar Tarjeta?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Acciones de la Tarjeta",
"cardLabelsPopup-title": "Etiquetas",
"cardMembersPopup-title": "Miembros",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "la eliminación es permanente. Perderás todas las acciones asociadas a esta tarjeta.",
"card-delete-pop": "Se eliminarán todas las acciones del historial de actividades y no se podrá volver a abrir la tarjeta. Esta acción no puede deshacerse.",
"card-delete-suggest-archive": "Puedes mover una tarjeta al Archivo para quitarla del tablero y preservar la actividad.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Vence",
"card-due-on": "Vence el",
"card-spent": "Tiempo consumido",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "¿Eliminar la tarjeta?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Acciones de la tarjeta",
"cardLabelsPopup-title": "Etiquetas",
"cardMembersPopup-title": "Miembros",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "la eliminación es permanente. Perderá todas las acciones asociadas a esta tarjeta.",
"card-delete-pop": "Se eliminarán todas las acciones de la fuente de actividades y no se podrá volver a abrir la tarjeta. Esta acción no puede deshacerse.",
"card-delete-suggest-archive": "Puede mover una tarjeta al archivo para quitarla del tablero y preservar la actividad.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Vence",
"card-due-on": "Vence el",
"card-spent": "Tiempo consumido",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "¿Eliminar la tarjeta?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Acciones de la tarjeta",
"cardLabelsPopup-title": "Etiquetas",
"cardMembersPopup-title": "Miembros",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "la eliminación es permanente. Perderás todas las acciones asociadas a esta tarjeta.",
"card-delete-pop": "Se eliminarán todas las acciones del historial de actividades y no se podrá volver a abrir la tarjeta. Esta acción no puede deshacerse.",
"card-delete-suggest-archive": "Puedes mover una tarjeta al Archivo para quitarla del tablero y preservar la actividad.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Vence",
"card-due-on": "Vence el",
"card-spent": "Tiempo consumido",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "¿Eliminar la tarjeta?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Acciones de la tarjeta",
"cardLabelsPopup-title": "Etiquetas",
"cardMembersPopup-title": "Miembros",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Ezabaketa behin betiko da. Txartel honi lotutako ekintza guztiak galduko dituzu.",
"card-delete-pop": "Ekintza guztiak ekintza jariotik kenduko dira eta ezin izango duzu txartela berrireki. Ez dago desegiterik.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Epemuga",
"card-due-on": "Epemuga",
"card-spent": "Erabilitako denbora",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Ezabatu txartela?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Txartel-ekintzak",
"cardLabelsPopup-title": "Etiketak",
"cardMembersPopup-title": "Kideak",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "حذف دائمی. تمامی موارد مرتبط با این کارت از بین خواهند رفت.",
"card-delete-pop": "همه اقدامات از این پردازه حذف خواهد شد و امکان بازگرداندن کارت وجود نخواهد داشت.",
"card-delete-suggest-archive": "شما می توانید کارت را به بایگانی منتقل کنید تا آن را از هیئت مدیره حذف کنید و فعالیت را حفظ کنید.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "موعد",
"card-due-on": "موعد تا",
"card-spent": "زمان صرف شده",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "آیا می خواهید کارت را حذف کنید؟",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "اعمال کارت",
"cardLabelsPopup-title": "لیبل ها",
"cardMembersPopup-title": "اعضا",
+5 -2
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Poistaminen on lopullista. Menetät kaikki tähän korttiin liitetyt toimet.",
"card-delete-pop": "Kaikki toimet poistetaan toimintasyötteestä, etkä pysty avata korttia uudelleen. Tätä ei voi peruuttaa.",
"card-delete-suggest-archive": "Voit siirtää kortin Arkistoon poistaaksesi sen taululta ja säilyttääksesi toimintalokin.",
"card-archive-pop": "Kortti ei enää näy tässä listassa arkistoinnin jälkeen.",
"card-archive-suggest-cancel": "Voit myöhemmin palauttaa kortin Arkistosta.",
"card-due": "Erääntyy",
"card-due-on": "Erääntyy",
"card-spent": "Käytetty aika",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Poista suunnittelupokeri?",
"poker-delete-pop": "Poistaminen on lopullista. Menetät kaikki tähän suunnittelupokeriin liitetyt toimet.",
"cardDeletePopup-title": "Poista kortti?",
"cardArchivePopup-title": "Arkistoi kortti?",
"cardDetailsActionsPopup-title": "Korttitoimet",
"cardLabelsPopup-title": "Nimilaput",
"cardMembersPopup-title": "Jäsenet",
@@ -369,8 +372,8 @@
"exportBoardPopup-title": "Vie taulu",
"exportCardPopup-title": "Vie kortti",
"sort": "Lajittele",
"sorted": "Sorted",
"remove-sort": "Remove sort",
"sorted": "Lajiteltu",
"remove-sort": "Poista lajittelu",
"sort-desc": "Klikkaa lajitellaksesi listan",
"list-sort-by": "Lajittele lista:",
"list-label-modifiedAt": "Viimeinen käyttöaika",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+8 -5
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "La suppression est définitive. Vous perdrez toutes les actions associées à cette carte.",
"card-delete-pop": "Toutes les actions vont être supprimées du suivi d'activités et vous ne pourrez plus utiliser cette carte. Cette action est irréversible.",
"card-delete-suggest-archive": "Vous pouvez déplacer une carte vers les archives afin de l'enlever du tableau tout en préservant l'activité.",
"card-archive-pop": "La carte ne sera plus visible dans cette liste après archivage.",
"card-archive-suggest-cancel": "Vous pouvez, plus tard, restaurer une carte depuis les archives.",
"card-due": "À échéance",
"card-due-on": "Échéance le",
"card-spent": "Temps passé",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Supprimer ce planning poker ?",
"poker-delete-pop": "La suppression est définitive. Vous perdrez toutes les actions associées à ce planning poker.",
"cardDeletePopup-title": "Supprimer la carte ?",
"cardArchivePopup-title": "Archiver la carte ?",
"cardDetailsActionsPopup-title": "Actions sur la carte",
"cardLabelsPopup-title": "Étiquettes",
"cardMembersPopup-title": "Participants",
@@ -369,8 +372,8 @@
"exportBoardPopup-title": "Exporter le tableau",
"exportCardPopup-title": "Exporter la carte",
"sort": "Tri",
"sorted": "Sorted",
"remove-sort": "Remove sort",
"sorted": "Triées",
"remove-sort": "Ne plus trier",
"sort-desc": "Cliquez pour trier la liste",
"list-sort-by": "Trier la liste par:",
"list-label-modifiedAt": "Dernier accès",
@@ -732,7 +735,7 @@
"r-moved-to": "Déplacé vers",
"r-moved-from": "Déplacé depuis",
"r-archived": "Archivé",
"r-unarchived": "Restauré depuis l'Archive",
"r-unarchived": "Restauré depuis les archives",
"r-a-card": "carte",
"r-when-a-label-is": "Quand une étiquette est",
"r-when-the-label": "Quand l'étiquette est",
@@ -754,7 +757,7 @@
"r-bottom-of": "En bas de",
"r-its-list": "sa liste",
"r-archive": "Archiver",
"r-unarchive": "Restaurer depuis l'Archive",
"r-unarchive": "Restaurer depuis les archives",
"r-card": "carte",
"r-add": "Ajouter",
"r-remove": "Supprimer",
@@ -784,7 +787,7 @@
"r-d-send-email-subject": "sujet",
"r-d-send-email-message": "message",
"r-d-archive": "Archiver la carte",
"r-d-unarchive": "Restaurer la carte depuis l'Archive",
"r-d-unarchive": "Restaurer la carte depuis les archives",
"r-d-add-label": "Ajouter une étiquette",
"r-d-remove-label": "Supprimer l'étiquette",
"r-create-card": "Créer une nouvelle carte",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Etiquetas",
"cardMembersPopup-title": "Membros",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "מחיקה היא סופית. כל הפעולות המשויכות לכרטיס זה תלכנה לאיבוד.",
"card-delete-pop": "כל הפעולות יוסרו מלוח הפעילות ולא תהיה אפשרות לפתוח מחדש את הכרטיס. אין דרך חזרה.",
"card-delete-suggest-archive": "על מנת להסיר כרטיסים מהלוח מבלי לאבד את היסטוריית הפעילות שלהם, ניתן לשמור אותם בארכיון.",
"card-archive-pop": "הכרטיס לא יופיע ברשימה הזאת לאחר העברתו לארכיון.",
"card-archive-suggest-cancel": "אפשר בהמשך לשחזר כרטיס מהארכיון.",
"card-due": "תאריך יעד",
"card-due-on": "תאריך יעד",
"card-spent": "זמן שהושקע",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "למחוק פוקר תכנון?",
"poker-delete-pop": "מחיקה היא לצמיתות. כל הפעולות המשויכות לפוקר התכנון הזה תאבדנה.",
"cardDeletePopup-title": "למחוק כרטיס?",
"cardArchivePopup-title": "להעביר כרטיס לארכיון?",
"cardDetailsActionsPopup-title": "פעולות על הכרטיס",
"cardLabelsPopup-title": "תוויות",
"cardMembersPopup-title": "חברים",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "हटाना स्थायी है। आप इस कार्ड से जुड़े सभी कार्यों को खो देंगे।",
"card-delete-pop": "सभी कार्रवाइयां गतिविधि फ़ीड से निकाल दी जाएंगी और आप कार्ड को फिर से खोलने में सक्षम नहीं होंगे । कोई पूर्ववत् नहीं है ।",
"card-delete-suggest-archive": "आप एक कार्ड को बोर्ड से हटाने और गतिविधि को संरक्षित करने के लिए संग्रह में ले जा सकते हैं ।",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "नियत",
"card-due-on": "पर नियत",
"card-spent": "समय बिताया",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "मिटाएँ कार्ड?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "कार्ड क्रियाएँ",
"cardLabelsPopup-title": "नामपत्र",
"cardMembersPopup-title": "सदस्य",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Brisanje je trajno. Izgubit ćete sve radnje povezane s ovom karticom.",
"card-delete-pop": "Sve radnje će biti uklonjene iz liste aktivnosti i nećete moći ponovo otvoriti karticu. Nema poništavanja radnje.",
"card-delete-suggest-archive": "Karticu možete premjestiti u arhivu da biste je uklonili s ploče i sačuvali aktivnost.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Dospijeće",
"card-due-on": "Dospijeće na",
"card-spent": "Provedeno vrijeme",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Obrisati karticu?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Oznake",
"cardMembersPopup-title": "Korisnici",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "A törlés végleges. Az összes műveletet elveszíti, amely ehhez a kártyához tartozik.",
"card-delete-pop": "Az összes művelet el lesz távolítva a tevékenységlistából, és nem lesz képes többé újra megnyitni a kártyát. Nincs visszaállítási lehetőség.",
"card-delete-suggest-archive": "Archiválhatsz egy Kártyát, hogy eltávolítsd a Tábláról de megőrizd a vele kapcsolatos tevékenységeket.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Határidő",
"card-due-on": "A határidő lejár",
"card-spent": "Eltöltött idő",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Törlöd a Tervezőpókert?",
"poker-delete-pop": "A törlési művelet végleges és nem visszavonható. Minden hozzárendelt esemény is elvész egyben ezen Tervezőpóker megsemmisülésekor.",
"cardDeletePopup-title": "Törlöd a kártyát?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Kártyaműveletek",
"cardLabelsPopup-title": "Címkék",
"cardMembersPopup-title": "Tagok",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Menghapus sama dengan permanen. Anda akan kehilangan semua aksi yang terhubung ke kartu ini",
"card-delete-pop": "Semua aksi akan dihapus dari aktivitas dan anda tidak bisa lagi buka kartu ini",
"card-delete-suggest-archive": "Kamu bisa memindahkan Kartu ke Arsip untuk menghapusnya dari Papan dan mempertahankan Aktifitas",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Jatuh Tempo",
"card-due-on": "Jatuh Tempo pada",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Hapus kartu",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Aksi Kartu",
"cardLabelsPopup-title": "Daftar Label",
"cardMembersPopup-title": "Daftar Anggota",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Aha",
"cardMembersPopup-title": "Ndị otu",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "L'eliminazione è permanente. Tutte le azioni associate a questa scheda andranno perse.",
"card-delete-pop": "Tutte le azioni saranno rimosse dal flusso attività e non sarai in grado di riaprire la scheda. Non potrai tornare indietro.",
"card-delete-suggest-archive": "Puoi spostare una scheda nell'archivio per rimuoverla dalla bacheca e mantenere la sua attività.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Scadenza",
"card-due-on": "Scade il",
"card-spent": "Tempo trascorso",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Eliminare scheda?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Azioni scheda",
"cardLabelsPopup-title": "Etichette",
"cardMembersPopup-title": "Membri",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "削除は取り消しできません。このカードに関係するすべてのアクションがなくなります。",
"card-delete-pop": "すべての内容がアクティビティから削除されます。この削除は元に戻すことができません。",
"card-delete-suggest-archive": "カードをアーカイブするとボードから削除され、アクティビティに保持されます。",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "期限",
"card-due-on": "期限日",
"card-spent": "作業時間",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "カードを削除しますか?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "カード操作",
"cardLabelsPopup-title": "ラベル",
"cardMembersPopup-title": "メンバー",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "წაშლის შემთხვევაში ამ ბარათთან ასცირებული ყველა მოქმედება დაიკარგება.",
"card-delete-pop": "ყველა მოქმედება წაიშლება აქტივობების ველიდან და თქვენ აღარ შეგეძლებათ ბარათის ხელახლა გახსნა. დაბრუნება შეუძლებელია.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "საბოლოო ვადა ",
"card-due-on": "საბოლოო ვადა",
"card-spent": "დახარჯული დრო",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "წავშალოთ ბარათი? ",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "ბარათის მოქმედებები",
"cardLabelsPopup-title": "ნიშნები",
"cardMembersPopup-title": "წევრები",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "영구 삭제입니다. 이 카드와 관련된 모든 작업들을 잃게됩니다.",
"card-delete-pop": "모든 작업이 활동 내역에서 제거되며 카드를 다시 열 수 없습니다. 복구가 안되니 주의하시기 바랍니다.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "마감기한",
"card-due-on": "종료일",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "카드를 삭제합니까?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "카드 액션",
"cardLabelsPopup-title": "라벨",
"cardMembersPopup-title": "멤버",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Dzēšana ir neatgriezeniska. Jūs zaudēsiet visas ar kartiņu saistītās darbības.",
"card-delete-pop": "Visas darbības no saraksta tiks noņemtas un jūs vairs nevarēsiet kartiņu atvērt. Darbību nevar atsaukt.",
"card-delete-suggest-archive": "Lai kartiņu noņemtu no dēļa nezaudējot darbības, arhivējiet to.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Termiņš",
"card-due-on": "Termiņa beigas",
"card-spent": "Patērētais laiks",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Dzēst kartiņu?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Kartiņas darbības",
"cardLabelsPopup-title": "Birkas",
"cardMembersPopup-title": "Dalībnieki",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "Можете да преместите картата во Архива, за да я премахнете от Таблото и така да запазите активността в него.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Готова за",
"card-due-on": "Готова за",
"card-spent": "Изработено време",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Желаете да изтриете картата?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Опции",
"cardLabelsPopup-title": "Етикети",
"cardMembersPopup-title": "Членови",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Гишүүд",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Sletting er permanent. Du vil miste alle hendelser knyttet til dette kortet.",
"card-delete-pop": "Alle handlinger vil fjernes fra feeden for aktiviteter og du vil ikke kunne åpne kortet på nytt. Det er ingen mulighet å angre.",
"card-delete-suggest-archive": "Du kan flytte kortet til Arkivet for å fjerne det fra tavlen og bevare aktivteten.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Frist",
"card-due-on": "Utløpsfrist",
"card-spent": "Forbrukt tid",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Slett rangering",
"poker-delete-pop": "Sletting er permanent. Du vil miste alle aksjoner assosiert med rangeringen.",
"cardDeletePopup-title": "Slett kort?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Behandling kort",
"cardLabelsPopup-title": "Etiketter",
"cardMembersPopup-title": "Medlemmer",
+6 -3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Verwijdering is permanent. Je raakt alles acties die gekoppeld zijn aan deze kaart kwijt.",
"card-delete-pop": "Alle acties worden verwijderd van de activiteiten feed, en er zal geen mogelijkheid zijn om de kaart opnieuw te openen. Er is geen herstelmogelijkheid.",
"card-delete-suggest-archive": "Je kunt een kaart naar Archief verplaatsen om die van het bord te verwijderen waarbij de activiteiten behouden blijven.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Verval",
"card-due-on": "Vervalt op ",
"card-spent": "Gespendeerde tijd",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Planning poker verwijderen?",
"poker-delete-pop": "Verwijdering is permanent. Je verlies alle acties die gekoppeld zijn aan deze poker sessie.",
"cardDeletePopup-title": "Kaart verwijderen?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Kaart actie ondernemen",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Leden",
@@ -369,8 +372,8 @@
"exportBoardPopup-title": "Exporteer bord",
"exportCardPopup-title": "Exporteer kaart",
"sort": "Sorteer",
"sorted": "Sorted",
"remove-sort": "Remove sort",
"sorted": "Gesorteerd",
"remove-sort": "Verwijder sortering",
"sort-desc": "Klik om lijst te sorteren",
"list-sort-by": "Sorteer lijst op",
"list-label-modifiedAt": "Laatste toegangstijd",
@@ -724,7 +727,7 @@
"r-is": "is",
"r-is-moved": "is verplaatst",
"r-added-to": "Toegevoegd aan",
"r-removed-from": "verwijderd van",
"r-removed-from": "Verwijderd van",
"r-the-board": "het bord",
"r-list": "lijst",
"list": "Lijst",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Un còp tirat, pas de posibilitat de tornar enrè",
"card-delete-pop": "Totes las accions van èsser quitadas del seguit d'activitat e poiretz pas mai utilizar aquesta carta.",
"card-delete-suggest-archive": "Podètz desplaçar una carta dins Archius per la quitar del tablèu e gardar las activitats.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Esperat",
"card-due-on": "Esperat lo",
"card-spent": "Temps passat",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Suprimir la carta?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Accions sus la carta",
"cardLabelsPopup-title": "Etiquetas",
"cardMembersPopup-title": "Participants",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+42 -39
View File
@@ -81,15 +81,15 @@
"activity-endDate": "zmienił datę zakończenia na %s z %s",
"add-attachment": "Dodaj załącznik",
"add-board": "Dodaj tablicę",
"add-template": "Add Template",
"add-template": "Dodaj szablon",
"add-card": "Dodaj kartę",
"add-card-to-top-of-list": "Add Card to Top of List",
"add-card-to-bottom-of-list": "Add Card to Bottom of List",
"add-card-to-top-of-list": "Dodaj kartę na początku listy",
"add-card-to-bottom-of-list": "Dodaj kartę na końcu listy",
"add-swimlane": "Dodaj ścieżkę",
"add-subtask": "Dodaj podzadanie",
"add-checklist": "Dodaj czeklistę",
"add-checklist-item": "Dodaj element do czeklisty",
"convertChecklistItemToCardPopup-title": "Convert to Card",
"convertChecklistItemToCardPopup-title": "Konwertuj na kartę",
"add-cover": "Dodaj okładkę",
"add-label": "Dodaj etykietę",
"add-list": "Dodaj listę",
@@ -121,8 +121,8 @@
"archives": "Archiwum",
"template": "Szablon",
"templates": "Szablony",
"template-container": "Template Container",
"add-template-container": "Add Template Container",
"template-container": "Kontener Szablonów",
"add-template-container": "Dodaj Kontener Szablonów",
"assign-member": "Dodaj użytkownika",
"attached": "dodał załącznik",
"attachment": "Załącznik",
@@ -137,7 +137,7 @@
"board-not-found": "Nie znaleziono tablicy",
"board-private-info": "Ta tablica będzie <strong>prywatna</strong>.",
"board-public-info": "Ta tablica będzie <strong>publiczna<strong>.",
"board-drag-drop-reorder-or-click-open": "Drag and drop to reorder board icons. Click board icon to open board.",
"board-drag-drop-reorder-or-click-open": "Użyj techniki przeciągnij i upuść, aby zmienić kolejność ikon tablic. Kliknij ikonę tablicy, by ją otworzyć.",
"boardChangeColorPopup-title": "Zmień tło tablicy",
"boardChangeTitlePopup-title": "Zmień nazwę tablicy",
"boardChangeVisibilityPopup-title": "Zmień widoczność tablicy",
@@ -159,6 +159,8 @@
"card-delete-notice": "Usunięcie jest nieodwracalne. Stracisz wszystkie zdarzenia powiązane z tą kartą.",
"card-delete-pop": "Wszystkie zdarzenia zostaną usunięte z historii aktywności i nie można będzie ponownie otworzyć karty. Usunięcie jest nieodwracalne.",
"card-delete-suggest-archive": "Możesz przenieść kartę do Archiwum, a następnie usunąć ją z tablicy i zachować ją w Aktywności.",
"card-archive-pop": "Karta nie będzie widoczna na tej liście po zarchiwizowaniu.",
"card-archive-suggest-cancel": "Możesz później przywrócić kartę z Archiwum.",
"card-due": "Data wykonania",
"card-due-on": "Data wykonania",
"card-spent": "Czas pracy",
@@ -185,9 +187,9 @@
"vote-against": "przeciwko",
"deleteVotePopup-title": "Usunąć głos?",
"vote-delete-pop": "Usunięcie jest nieodwracalne. Stracisz wszystkie zdarzenia związane z tym głosowaniem.",
"cardStartPlanningPokerPopup-title": "Start a Planning Poker",
"card-edit-planning-poker": "Edit Planning Poker",
"editPokerEndDatePopup-title": "Change Planning Poker vote end date",
"cardStartPlanningPokerPopup-title": "Uruchom Planning Pokera",
"card-edit-planning-poker": "Edytuj Planning Pokera",
"editPokerEndDatePopup-title": "Zmień datę końcową głosowania w Planning Pokerze",
"poker-question": "Planning Poker",
"poker-one": "1",
"poker-two": "2",
@@ -199,14 +201,15 @@
"poker-forty": "40",
"poker-oneHundred": "100",
"poker-unsure": "?",
"poker-finish": "Finish",
"poker-result-votes": "Votes",
"poker-result-who": "Who",
"poker-replay": "Replay",
"set-estimation": "Set Estimation",
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"poker-finish": "Koniec",
"poker-result-votes": "Głosy",
"poker-result-who": "Kto",
"poker-replay": "Uruchom ponownie",
"set-estimation": "Ustaw Estymację",
"deletePokerPopup-title": "Usunąć planning pokera?",
"poker-delete-pop": "Usunięcie jest permanentne. Utracisz wszystkie akcje powiązane z tym planning pokerem.",
"cardDeletePopup-title": "Usunąć kartę?",
"cardArchivePopup-title": "Zarchiwizować Kartę?",
"cardDetailsActionsPopup-title": "Działania na karcie",
"cardLabelsPopup-title": "Etykiety",
"cardMembersPopup-title": "Użytkownicy",
@@ -237,7 +240,7 @@
"close": "Zamknij",
"close-board": "Zamknij tablicę",
"close-board-pop": "Będziesz w stanie przywrócić tablicę poprzez kliknięcie przycisku \"Archiwizuj\" w nagłówku strony domowej.",
"close-card": "Close Card",
"close-card": "Zamknij Kartę",
"color-black": "czarna",
"color-blue": "niebieska",
"color-crimson": "karmazynowa",
@@ -322,7 +325,7 @@
"editCardStartDatePopup-title": "Zmień datę rozpoczęcia",
"editCardDueDatePopup-title": "Zmień datę wykonania",
"editCustomFieldPopup-title": "Edytuj pole",
"addReactionPopup-title": "Add reaction",
"addReactionPopup-title": "Dodaj reakcję",
"editCardSpentTimePopup-title": "Zmień ilość przepracowanego czasu",
"editLabelPopup-title": "Zmień etykietę",
"editNotificationPopup-title": "Zmień tryb powiadamiania",
@@ -363,14 +366,14 @@
"export-board-excel": "Eksportuj tablicę w formacie Excel",
"user-can-not-export-excel": "Użytkownik nie może wyeksportować tablicy w formacie Excel",
"export-board-html": "Eksportuj tablicę do HTML",
"export-card": "Export card",
"export-card-pdf": "Export card to PDF",
"user-can-not-export-card-to-pdf": "User can not export card to PDF",
"export-card": "Eksportuj kartę",
"export-card-pdf": "Eksportuj kartę do PDF",
"user-can-not-export-card-to-pdf": "Użytkownik nie może wyeksportować karty do PDF",
"exportBoardPopup-title": "Eksportuj tablicę",
"exportCardPopup-title": "Export card",
"exportCardPopup-title": "Eksportuj kartę",
"sort": "Sortuj",
"sorted": "Sorted",
"remove-sort": "Remove sort",
"sorted": "Posortowano",
"remove-sort": "Usuń sortowanie",
"sort-desc": "Kliknij by sortować listę",
"list-sort-by": "Sortuj listę przez:",
"list-label-modifiedAt": "Ostatni dostęp",
@@ -458,8 +461,8 @@
"set-color-list": "Ustaw barwę",
"listActionPopup-title": "Działania na liście",
"settingsUserPopup-title": "Ustawienia konta użytkownika",
"settingsTeamPopup-title": "Team Settings",
"settingsOrgPopup-title": "Organization Settings",
"settingsTeamPopup-title": "Ustawienia Zespołu",
"settingsOrgPopup-title": "Ustawienia Organizacji",
"swimlaneActionPopup-title": "Działania na ścieżce",
"swimlaneAddPopup-title": "Dodaj ścieżkę poniżej",
"listImportCardPopup-title": "Zaimportuj kartę z Trello",
@@ -654,14 +657,14 @@
"automatically-field-on-card": "Dodaj pole do nowych kart",
"always-field-on-card": "Dodaj pole do wszystkich kart",
"showLabel-field-on-card": "Pokaż pole etykiety w minikarcie",
"showSum-field-on-list": "Show sum of fields at top of list",
"showSum-field-on-list": "Pokaż sumę pól na górze listy",
"yes": "Tak",
"no": "Nie",
"accounts": "Konto",
"accounts-allowEmailChange": "Zezwól na zmianę adresu email",
"accounts-allowUserNameChange": "Zezwól na zmianę nazwy użytkownika",
"tableVisibilityMode-allowPrivateOnly": "Boards visibility: Allow private boards only",
"tableVisibilityMode": "Boards visibility",
"tableVisibilityMode-allowPrivateOnly": "Widoczność tablic: Tylko tablice prywatne",
"tableVisibilityMode": "Widoczność tablic",
"createdAt": "Utworzone o",
"modifiedAt": "Zmodyfikowano",
"verified": "Zweryfikowane",
@@ -678,7 +681,7 @@
"setListColorPopup-title": "Wybierz barwę",
"assigned-by": "Przypisane przez",
"requested-by": "Zlecone przez",
"card-sorting-by-number": "Card sorting by number",
"card-sorting-by-number": "Sortowanie kart wg numeru",
"board-delete-notice": "Usunięcie jest nieodwracalne. Stracisz wszystkie listy, karty oraz reguły przypisane do tej tablicy.",
"delete-board-confirm-popup": "Wszystkie listy, etykiety oraz aktywności zostaną usunięte i nie będziesz w stanie przywrócić zawartości tablicy. Tego nie da się cofnąć.",
"boardDeletePopup-title": "Usunąć tablicę?",
@@ -831,7 +834,7 @@
"error-undefined": "Coś poszło nie tak",
"error-ldap-login": "Wystąpił błąd w trakcie logowania",
"display-authentication-method": "Wyświetl metodę logowania",
"oidc-button-text": "Customize the OIDC button text",
"oidc-button-text": "Własny tekst przycisku OIDC",
"default-authentication-method": "Domyślna metoda logowania",
"duplicate-board": "Duplikuj tablicę",
"org-number": "Liczba organizacji:",
@@ -861,8 +864,8 @@
"act-duenow": "przypominał o mijającej właśnie dacie wykonania (__timeValue__) karty __card__",
"act-atUserComment": "Zostałeś wspomniany w [__board] __list__/__card__",
"delete-user-confirm-popup": "Czy jesteś pewien, że chcesz usunąć te konto? Nie można tego wycofać.",
"delete-team-confirm-popup": "Are you sure you want to delete this team? There is no undo.",
"delete-org-confirm-popup": "Are you sure you want to delete this organization? There is no undo.",
"delete-team-confirm-popup": "Czy na pewno chcesz usunąć ten zespół? Operacji nie można cofnąć.",
"delete-org-confirm-popup": "Czy na pewno chcesz usunąć tą organizację? Operacji nie można cofnąć.",
"accounts-allowUserDelete": "Pozwól użytkownikom na usuwanie własnych kont",
"hide-minicard-label-text": "Ukryj opisy etykiet minikart",
"show-desktop-drag-handles": "Pokaż przeciągnięcia na pulpit",
@@ -1053,7 +1056,7 @@
"rulesReportTitle": "Wykaz reguł",
"copy-swimlane": "Skopiuj ścieżkę",
"copySwimlanePopup-title": "Kopiowanie ścieżki",
"display-card-creator": "Display Card Creator",
"display-card-creator": "Wyświetlaj autora karty",
"wait-spinner": "Wait Spinner",
"Bounce": "Bounce Wait Spinner",
"Cube": "Cube Wait Spinner",
@@ -1063,8 +1066,8 @@
"Rotateplane": "Rotateplane Wait Spinner",
"Scaleout": "Scaleout Wait Spinner",
"Wave": "Wave Wait Spinner",
"maximize-card": "Maximize Card",
"minimize-card": "Minimize Card",
"delete-org-warning-message": "Can not delete this organization, there is at least one user that belongs to it",
"delete-team-warning-message": "Can not delete this team, there is at least one user that belongs to it"
"maximize-card": "Maksymalizuj kartę",
"minimize-card": "Minimalizuj kartę",
"delete-org-warning-message": "Nie można usunąć tej organizacji. Do organizacji należy co najmniej jeden użytkownik.",
"delete-team-warning-message": "Nie można usunąć tego zespołu. Do zespołu należy co najmniej jeden użytkownik."
}
+5 -2
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "A exclusão será permanente. Você perderá todas as ações associadas a este cartão.",
"card-delete-pop": "Todas as ações serão excluidas da lista de Atividades e vocês não poderá re-abrir o cartão. Não há como desfazer.",
"card-delete-suggest-archive": "Você pode mover um cartão para o Arquivo morto para removê-lo do quadro e preservar a atividade.",
"card-archive-pop": "O cartão não ficará visível nesta lista depois de arquivado.",
"card-archive-suggest-cancel": "Você pode restaurar o cartão do Arquivo posteriormente.",
"card-due": "Prazo final",
"card-due-on": "Prazo final em",
"card-spent": "Tempo Gasto",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Excluir planning poker?",
"poker-delete-pop": "A exclusão é permanente. Você perderá todas as ações associadas a este planning poker.",
"cardDeletePopup-title": "Excluir Cartão?",
"cardArchivePopup-title": "Arquivar Cartão?",
"cardDetailsActionsPopup-title": "Ações do cartão",
"cardLabelsPopup-title": "Etiquetas",
"cardMembersPopup-title": "Membros",
@@ -369,8 +372,8 @@
"exportBoardPopup-title": "Exportar quadro",
"exportCardPopup-title": "Exportar cartão",
"sort": "Ordenar",
"sorted": "Sorted",
"remove-sort": "Remove sort",
"sorted": "Ordenado",
"remove-sort": "Remover ordenação",
"sort-desc": "Clique para Ordenar Lista",
"list-sort-by": "Ordenar a Lista por:",
"list-label-modifiedAt": "Último Acesso",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "A remoção será permanente. Perderá todas as acções associadas a este cartão.",
"card-delete-pop": "Todas as acções serão removidas do feed de atividade e não poderá reabrir o cartão. Não é reversível.",
"card-delete-suggest-archive": "Pode mover um cartão para o Arquivo para removê-lo do quadro e preservar a atividade.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Data limite",
"card-due-on": "Data limite em",
"card-spent": "Tempo Gasto",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Apagar Cartão?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Acções do Cartão",
"cardLabelsPopup-title": "Etiquetas",
"cardMembersPopup-title": "Membros",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Ștergerea este permanentă. Se vor pierde toate acțiunile asociate acestui card.",
"card-delete-pop": "Toate acțiunile vor fi șterse din jurnalul de activități si nu vei mai putea redeschide cardul. Nu există recuperare.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Это действие невозможно будет отменить. Все изменения, которые вы вносили в карточку будут потеряны.",
"card-delete-pop": "Все действия будут удалены из ленты активности участников, и вы не сможете заново открыть карточку. Действие необратимо",
"card-delete-suggest-archive": "Вы можете переместить карточку в архив, чтобы убрать ее с доски, сохранив всю историю действий участников.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Выполнить к",
"card-due-on": "Выполнить до",
"card-spent": "Затраченное время",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Удалить покер планирования?",
"poker-delete-pop": "Удаление необратимо. Вы потеряете действия ассоциированные с этим покером планирования.",
"cardDeletePopup-title": "Удалить карточку?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Действия в карточке",
"cardLabelsPopup-title": "Метки",
"cardMembersPopup-title": "Участники",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Do",
"card-due-on": "Do",
"card-spent": "Strávený čas",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Zmazať kartu?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Členovia",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Brisanje je trajno. Izgubili boste vsa dejanja, povezana s kartico.",
"card-delete-pop": "Vsa dejanja bodo odstranjena iz zgodovine dejavnosti. Kartice ne boste mogli znova odpreti. Razveljavitve ni.",
"card-delete-suggest-archive": "Kartico lahko premaknete v arhiv, da jo odstranite s table in ohranite dejavnost.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Rok",
"card-due-on": "Rok",
"card-spent": "Porabljen čas",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Briši kartico?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Dejanja kartice",
"cardLabelsPopup-title": "Oznake",
"cardMembersPopup-title": "Člani",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Brisanje je trajno. Izgubićeš sve akcije povezane sa ovom karticom.",
"card-delete-pop": "Sve akcije će biti uklonjene sa liste aktivnosti i kartica neće moći biti ponovo otvorena. Nema vraćanja unazad.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Rok",
"card-due-on": "Završava se",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Obrisati karticu?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Oznake",
"cardMembersPopup-title": "Članovi",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Radering är permanent. Du kommer att förlora alla händelser kopplade till detta kort.",
"card-delete-pop": "Alla händelser kommer att tas bort från aktivitetsflödet och du kommer inte att kunna öppna kortet igen. Det går inte att ångra.",
"card-delete-suggest-archive": "Du kan flytta ett kort till Arkiv för att ta bort det från tavlan och bevara aktiviteten.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Förfaller",
"card-due-on": "Förfaller på",
"card-spent": "Spenderad tid",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Radera kort?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Korthändelser",
"cardLabelsPopup-title": "Etiketter",
"cardMembersPopup-title": "Medlemmar",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Muda uliotumika",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "เป็นการลบถาวร คุณจะสูญเสียข้อมูลที่เกี่ยวข้องกับการ์ดนี้ทั้งหมด",
"card-delete-pop": "การดำเนินการทั้งหมดจะถูกลบจาก feed กิจกรรมและคุณไม่สามารถเปิดได้อีกครั้งหรือยกเลิกการทำ",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "ครบกำหนด",
"card-due-on": "ครบกำหนดเมื่อ",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "ลบการ์ดนี้หรือไม่",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "การดำเนินการการ์ด",
"cardLabelsPopup-title": "ป้ายกำกับ",
"cardMembersPopup-title": "สมาชิก",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Silme işlemi kalıcıdır. Bu kartla ilişkili tüm eylemleri kaybedersiniz.",
"card-delete-pop": "Son hareketler alanındaki tüm veriler silinecek, ayrıca bu kartı yeniden açamayacaksın. Bu işlemin geri dönüşü yok.",
"card-delete-suggest-archive": "Bir kartı tahtadan çıkarmak ve etkinliği korumak için Arşive taşıyabilirsiniz.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Bitiş",
"card-due-on": "Bitiş tarihi:",
"card-spent": "Harcanan Zaman",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Poker planlamayı sil?",
"poker-delete-pop": "Silme işlemi kalıcıdır. Bu poker planlama ile ilgili tüm hareketleri kaybedeceksiniz.",
"cardDeletePopup-title": "Kart Silinsin mi?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Kart işlemleri",
"cardLabelsPopup-title": "Etiketler",
"cardMembersPopup-title": "Üyeler",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Цю дію неможливо буде скасувати. Всі зміни, які ви вносили в картку будуть втрачені.",
"card-delete-pop": "Усі дії буде видалено з каналу активності, і ви не зможете повторно відкрити картку. Цю дію не можна скасувати.",
"card-delete-suggest-archive": "Ви можете перемістити картку до архіву, щоб прибрати її з дошки, зберігаючи всю історію дій учасників.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Витрачено часу",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Видалити картку?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Користувачі",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Hành động xóa là không thể khôi phục. Bạn sẽ mất hết các hoạt động liên quan đến thẻ này.",
"card-delete-pop": "Tất cả các hành động sẽ bị xóa khỏi nguồn cấp dữ liệu hoạt động và bạn sẽ không thể mở lại thẻ. Không có hoàn tác.",
"card-delete-suggest-archive": "Bạn có thể di chuyển một thẻ vào Lưu trữ để xóa thẻ đó khỏi bảng và duy trì hoạt động này.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Đến hạn",
"card-due-on": "Đến hạn vào",
"card-spent": "Thời lượng",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Xoá Thẻ",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Hành động thẻ",
"cardLabelsPopup-title": "Nhãn",
"cardMembersPopup-title": "Thành Viên",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "彻底删除的操作不可恢复,你将会丢失该卡片相关的所有操作记录。",
"card-delete-pop": "所有的活动将从活动摘要中被移除且您将无法重新打开该卡片。此操作无法撤销。",
"card-delete-suggest-archive": "您可以移动卡片到活动以便从看板中删除并保持活动。",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "到期",
"card-due-on": "期限",
"card-spent": "耗时",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "删除计划扑克?",
"poker-delete-pop": "永久删除。对该计划扑克的所有操作记录将会丢失。",
"cardDeletePopup-title": "彻底删除卡片?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "卡片操作",
"cardLabelsPopup-title": "标签",
"cardMembersPopup-title": "成员",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "Deleting is permanent. You will lose all actions associated with this card.",
"card-delete-pop": "All actions will be removed from the activity feed and you won't be able to re-open the card. There is no undo.",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "Due",
"card-due-on": "Due on",
"card-spent": "Spent Time",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "Delete planning poker?",
"poker-delete-pop": "Deleting is permanent. You will lose all actions associated with this planning poker.",
"cardDeletePopup-title": "Delete Card?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "Card Actions",
"cardLabelsPopup-title": "Labels",
"cardMembersPopup-title": "Members",
+3
View File
@@ -159,6 +159,8 @@
"card-delete-notice": "永久刪除是無法復原的,你將會失去這張卡片的所有相關操作記錄。",
"card-delete-pop": "所有的活動將從活動摘要中被移除且您將無法重新打開該卡片。此操作無法撤銷。",
"card-delete-suggest-archive": "您可以移動卡片到活動以便從看板中刪除並保持活動。",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
"card-archive-suggest-cancel": "You can later restore card from Archive.",
"card-due": "到期日",
"card-due-on": "期限",
"card-spent": "耗時",
@@ -207,6 +209,7 @@
"deletePokerPopup-title": "刪除規劃撲克?",
"poker-delete-pop": "刪除是永遠的,你會失去所有與此規劃撲克相關動作關聯",
"cardDeletePopup-title": "徹底刪除卡片?",
"cardArchivePopup-title": "Archive Card?",
"cardDetailsActionsPopup-title": "卡片操作",
"cardLabelsPopup-title": "標籤",
"cardMembersPopup-title": "成員",
+5 -7
View File
@@ -1831,8 +1831,7 @@ if (Meteor.isServer) {
*/
JsonRoutes.add('GET', '/api/boards', function(req, res) {
try {
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
Authentication.checkUserId(req.userId);
JsonRoutes.sendResult(res, {
code: 200,
data: Boards.find(
@@ -1888,8 +1887,8 @@ if (Meteor.isServer) {
*/
JsonRoutes.add('GET', '/api/boards/:boardId', function(req, res) {
try {
Authentication.checkUserId(req.userId);
const id = req.params.boardId;
Authentication.checkBoardAccess(req.userId, id);
JsonRoutes.sendResult(res, {
code: 200,
@@ -2006,8 +2005,7 @@ if (Meteor.isServer) {
* @return_type string
*/
JsonRoutes.add('PUT', '/api/boards/:boardId/labels', function(req, res) {
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
Authentication.checkUserId(req.userId);
const id = req.params.boardId;
try {
if (req.body.hasOwnProperty('label')) {
@@ -2054,10 +2052,10 @@ if (Meteor.isServer) {
res,
) {
try {
Authentication.checkUserId(req.userId);
const boardId = req.params.boardId;
const memberId = req.params.memberId;
const { isAdmin, isNoComments, isCommentOnly, isWorker } = req.body;
Authentication.checkBoardAccess(req.userId, boardId);
const board = Boards.findOne({ _id: boardId });
function isTrue(data) {
try {
@@ -2101,8 +2099,8 @@ if (Meteor.isServer) {
* swimlaneId: string}]
*/
JsonRoutes.add('GET', '/api/boards/:boardId/attachments', function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
JsonRoutes.sendResult(res, {
code: 200,
data: Attachments.files
+4 -4
View File
@@ -234,8 +234,8 @@ if (Meteor.isServer) {
res,
) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramCardId = req.params.cardId;
JsonRoutes.sendResult(res, {
code: 200,
@@ -272,8 +272,8 @@ if (Meteor.isServer) {
'/api/boards/:boardId/cards/:cardId/comments/:commentId',
function (req, res) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramCommentId = req.params.commentId;
const paramCardId = req.params.cardId;
JsonRoutes.sendResult(res, {
@@ -308,8 +308,8 @@ if (Meteor.isServer) {
'/api/boards/:boardId/cards/:cardId/comments',
function (req, res) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramCardId = req.params.cardId;
const id = CardComments.direct.insert({
userId: req.body.authorId,
@@ -354,8 +354,8 @@ if (Meteor.isServer) {
'/api/boards/:boardId/cards/:cardId/comments/:commentId',
function (req, res) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramCommentId = req.params.commentId;
const paramCardId = req.params.cardId;
CardComments.remove({
+6 -7
View File
@@ -3110,9 +3110,9 @@ if (Meteor.isServer) {
'GET',
'/api/boards/:boardId/swimlanes/:swimlaneId/cards',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
const paramSwimlaneId = req.params.swimlaneId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
JsonRoutes.sendResult(res, {
code: 200,
data: Cards.find({
@@ -3152,9 +3152,9 @@ if (Meteor.isServer) {
req,
res,
) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
const paramListId = req.params.listId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
JsonRoutes.sendResult(res, {
code: 200,
data: Cards.find({
@@ -3189,10 +3189,10 @@ if (Meteor.isServer) {
'GET',
'/api/boards/:boardId/lists/:listId/cards/:cardId',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
const paramListId = req.params.listId;
const paramCardId = req.params.cardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
JsonRoutes.sendResult(res, {
code: 200,
data: Cards.findOne({
@@ -3339,8 +3339,8 @@ if (Meteor.isServer) {
'PUT',
'/api/boards/:boardId/lists/:listId/cards/:cardId',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramCardId = req.params.cardId;
const paramListId = req.params.listId;
@@ -3697,8 +3697,8 @@ if (Meteor.isServer) {
'DELETE',
'/api/boards/:boardId/lists/:listId/cards/:cardId',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramListId = req.params.listId;
const paramCardId = req.params.cardId;
@@ -3737,11 +3737,10 @@ if (Meteor.isServer) {
'GET',
'/api/boards/:boardId/cardsByCustomField/:customFieldId/:customFieldValue',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
const paramCustomFieldId = req.params.customFieldId;
const paramCustomFieldValue = req.params.customFieldValue;
Authentication.checkBoardAccess(req.userId, paramBoardId);
JsonRoutes.sendResult(res, {
code: 200,
data: Cards.find({
+3 -4
View File
@@ -265,8 +265,8 @@ if (Meteor.isServer) {
'GET',
'/api/boards/:boardId/cards/:cardId/checklists/:checklistId/items/:itemId',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramItemId = req.params.itemId;
const checklistItem = ChecklistItems.findOne({ _id: paramItemId });
if (checklistItem) {
@@ -299,9 +299,8 @@ if (Meteor.isServer) {
'PUT',
'/api/boards/:boardId/cards/:cardId/checklists/:checklistId/items/:itemId',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramItemId = req.params.itemId;
function isTrue(data) {
@@ -351,8 +350,8 @@ if (Meteor.isServer) {
'DELETE',
'/api/boards/:boardId/cards/:cardId/checklists/:checklistId/items/:itemId',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramItemId = req.params.itemId;
ChecklistItems.direct.remove({ _id: paramItemId });
JsonRoutes.sendResult(res, {
+5 -4
View File
@@ -204,8 +204,8 @@ if (Meteor.isServer) {
'GET',
'/api/boards/:boardId/cards/:cardId/checklists',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramCardId = req.params.cardId;
const checklists = Checklists.find({ cardId: paramCardId }).map(function(
doc,
@@ -248,8 +248,8 @@ if (Meteor.isServer) {
'GET',
'/api/boards/:boardId/cards/:cardId/checklists/:checklistId',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramChecklistId = req.params.checklistId;
const paramCardId = req.params.cardId;
const checklist = Checklists.findOne({
@@ -292,8 +292,9 @@ if (Meteor.isServer) {
'POST',
'/api/boards/:boardId/cards/:cardId/checklists',
function(req, res) {
Authentication.checkUserId(req.userId);
// Check user is logged in
Authentication.checkLoggedIn(req.userId);
//Authentication.checkLoggedIn(req.userId);
const paramBoardId = req.params.boardId;
// Check user has permission to add checklist to the card
const board = Boards.findOne({
@@ -353,8 +354,8 @@ if (Meteor.isServer) {
'DELETE',
'/api/boards/:boardId/cards/:cardId/checklists/:checklistId',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramChecklistId = req.params.checklistId;
Checklists.remove({ _id: paramChecklistId });
JsonRoutes.sendResult(res, {
+8 -12
View File
@@ -301,8 +301,8 @@ if (Meteor.isServer) {
req,
res,
) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
JsonRoutes.sendResult(res, {
code: 200,
data: CustomFields.find({ boardIds: { $in: [paramBoardId] } }).map(
@@ -330,8 +330,8 @@ if (Meteor.isServer) {
'GET',
'/api/boards/:boardId/custom-fields/:customFieldId',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramCustomFieldId = req.params.customFieldId;
JsonRoutes.sendResult(res, {
code: 200,
@@ -361,8 +361,8 @@ if (Meteor.isServer) {
req,
res,
) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const board = Boards.findOne({ _id: paramBoardId });
const id = CustomFields.direct.insert({
name: req.body.name,
@@ -406,9 +406,8 @@ if (Meteor.isServer) {
'PUT',
'/api/boards/:boardId/custom-fields/:customFieldId',
(req, res) => {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramFieldId = req.params.customFieldId;
if (req.body.hasOwnProperty('name')) {
@@ -480,9 +479,8 @@ if (Meteor.isServer) {
'POST',
'/api/boards/:boardId/custom-fields/:customFieldId/dropdown-items',
(req, res) => {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramCustomFieldId = req.params.customFieldId;
const paramItems = req.body.items;
@@ -524,9 +522,8 @@ if (Meteor.isServer) {
'PUT',
'/api/boards/:boardId/custom-fields/:customFieldId/dropdown-items/:dropdownItemId',
(req, res) => {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramDropdownItemId = req.params.dropdownItemId;
const paramCustomFieldId = req.params.customFieldId;
const paramName = req.body.name;
@@ -566,9 +563,8 @@ if (Meteor.isServer) {
'DELETE',
'/api/boards/:boardId/custom-fields/:customFieldId/dropdown-items/:dropdownItemId',
(req, res) => {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
paramCustomFieldId = req.params.customFieldId;
paramDropdownItemId = req.params.dropdownItemId;
@@ -602,8 +598,8 @@ if (Meteor.isServer) {
'DELETE',
'/api/boards/:boardId/custom-fields/:customFieldId',
function(req, res) {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const id = req.params.customFieldId;
CustomFields.remove({ _id: id, boardIds: { $in: [paramBoardId] } });
JsonRoutes.sendResult(res, {
+25 -12
View File
@@ -167,25 +167,38 @@ if (Meteor.isServer) {
const exporter = new Exporter(boardId);
if (exporter.canExport(user) || impersonateDone) {
if (impersonateDone) {
// TODO: Checking for CSV or TSV export type does not work:
// let exportType = 'export' + params.query.delimiter ? 'CSV' : 'TSV';
// So logging export to CSV:
let exportType = 'exportCSV';
if( params.query.delimiter == "\t" ) {
exportType = 'exportTSV';
}
ImpersonatedUsers.insert({
adminId: adminId,
boardId: boardId,
reason: exportType,
});
}
body = params.query.delimiter
? exporter.buildCsv(params.query.delimiter)
: exporter.buildCsv();
//'Content-Length': body.length,
res.writeHead(200, {
'Content-Type': params.query.delimiter ? 'text/csv' : 'text/tsv',
});
res.write(body);
let userLanguage = 'en';
if (user && user.profile) {
userLanguage = user.profile.language
}
if( params.query.delimiter == "\t" ) {
// TSV file
res.writeHead(200, {
'Content-Type': 'text/tsv',
});
}
else {
// CSV file (comma or semicolon)
res.writeHead(200, {
'Content-Type': 'text/csv; charset=utf-8',
});
// Adding UTF8 BOM to quick fix MS Excel issue
// use Uint8Array to prevent from converting bytes to string
res.write(new Uint8Array([0xEF, 0xBB, 0xBF]));
}
res.write(exporter.buildCsv(params.query.delimiter, userLanguage));
res.end();
} else {
res.writeHead(403);
+7 -2
View File
@@ -49,8 +49,13 @@ runOnServer(function() {
isAdmin: true,
});
}
const exporterExcel = new ExporterExcel(boardId);
let userLanguage = 'en';
if(user && user.profile){
userLanguage = user.profile.language
}
const exporterExcel = new ExporterExcel(boardId, userLanguage);
if (exporterExcel.canExport(user) || impersonateDone) {
if (impersonateDone) {
ImpersonatedUsers.insert({
+30 -73
View File
@@ -197,65 +197,43 @@ export class Exporter {
return result;
}
buildCsv(delimiter = ',') {
buildCsv(userDelimiter = ',', userLanguage='en') {
const result = this.build();
const columnHeaders = [];
const cardRows = [];
const papaconfig = {
delimiter, // get parameter (was: auto-detect)
worker: true,
};
/*
newline: "", // auto-detect
quotes: true,
quoteChar: '"',
escapeChar: '"',
delimiter: userDelimiter,
header: true,
transformHeader: undefined,
dynamicTyping: false,
preview: 0,
encoding: "",
comments: false,
step: undefined,
complete: undefined,
error: undefined,
download: false,
downloadRequestHeaders: undefined,
downloadRequestBody: undefined,
skipEmptyLines: false,
chunk: undefined,
chunkSize: undefined,
fastMode: undefined,
beforeFirstChunk: undefined,
withCredentials: undefined,
transform: undefined
newline: "\r\n",
skipEmptyLines: false,
escapeFormulae: true,
};
*/
//delimitersToGuess: [',', '\t', '|', ';', Papa.RECORD_SEP, Papa.UNIT_SEP]
columnHeaders.push(
'Title',
'Description',
'Status',
'Swimlane',
'Owner',
'Requested by',
'Assigned by',
'Members',
'Assignees',
'Labels',
'Start at',
'Due at',
'End at',
'Over time',
'Spent time (hours)',
'Created at',
'Last modified at',
'Last activity',
'Vote',
'Archived',
TAPi18n.__('title','',userLanguage),
TAPi18n.__('description','',userLanguage),
TAPi18n.__('list','',userLanguage),
TAPi18n.__('swimlane','',userLanguage),
TAPi18n.__('owner','',userLanguage),
TAPi18n.__('requested-by','',userLanguage),
TAPi18n.__('assigned-by','',userLanguage),
TAPi18n.__('members','',userLanguage),
TAPi18n.__('assignee','',userLanguage),
TAPi18n.__('labels','',userLanguage),
TAPi18n.__('card-start','',userLanguage),
TAPi18n.__('card-due','',userLanguage),
TAPi18n.__('card-end','',userLanguage),
TAPi18n.__('overtime-hours','',userLanguage),
TAPi18n.__('spent-time-hours','',userLanguage),
TAPi18n.__('createdAt','',userLanguage),
TAPi18n.__('last-modified-at','',userLanguage),
TAPi18n.__('last-activity','',userLanguage),
TAPi18n.__('voting','',userLanguage),
TAPi18n.__('archived','',userLanguage),
);
const customFieldMap = {};
let i = 0;
@@ -283,30 +261,8 @@ export class Exporter {
}
i++;
});
cardRows.push([[columnHeaders]]);
/* TODO: Try to get translations working.
These currently only bring English translations.
TAPi18n.__('title'),
TAPi18n.__('description'),
TAPi18n.__('status'),
TAPi18n.__('swimlane'),
TAPi18n.__('owner'),
TAPi18n.__('requested-by'),
TAPi18n.__('assigned-by'),
TAPi18n.__('members'),
TAPi18n.__('assignee'),
TAPi18n.__('labels'),
TAPi18n.__('card-start'),
TAPi18n.__('card-due'),
TAPi18n.__('card-end'),
TAPi18n.__('overtime-hours'),
TAPi18n.__('spent-time-hours'),
TAPi18n.__('createdAt'),
TAPi18n.__('last-modified-at'),
TAPi18n.__('last-activity'),
TAPi18n.__('voting'),
TAPi18n.__('archived'),
*/
//cardRows.push([[columnHeaders]]);
cardRows.push(columnHeaders);
result.cards.forEach((card) => {
const currentRow = [];
@@ -409,7 +365,8 @@ export class Exporter {
currentRow.push(customFieldValuesToPush[valueIndex]);
}
}
cardRows.push([[currentRow]]);
//cardRows.push([[currentRow]]);
cardRows.push(currentRow);
});
return Papa.unparse(cardRows, papaconfig);
+4 -4
View File
@@ -467,8 +467,8 @@ if (Meteor.isServer) {
*/
JsonRoutes.add('GET', '/api/boards/:boardId/lists', function(req, res) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
JsonRoutes.sendResult(res, {
code: 200,
@@ -502,9 +502,9 @@ if (Meteor.isServer) {
res,
) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
const paramListId = req.params.listId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
JsonRoutes.sendResult(res, {
code: 200,
data: Lists.findOne({
@@ -531,8 +531,8 @@ if (Meteor.isServer) {
*/
JsonRoutes.add('POST', '/api/boards/:boardId/lists', function(req, res) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const board = Boards.findOne(paramBoardId);
const id = Lists.insert({
title: req.body.title,
@@ -569,8 +569,8 @@ if (Meteor.isServer) {
res,
) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const paramListId = req.params.listId;
Lists.remove({ _id: paramListId, boardId: paramBoardId });
JsonRoutes.sendResult(res, {
+33 -24
View File
@@ -3,8 +3,9 @@ import { createWorkbook } from './createWorkbook';
// exporter maybe is broken since Gridfs introduced, add fs and path
class ExporterExcel {
constructor(boardId) {
constructor(boardId, userLanguage) {
this._boardId = boardId;
this.userLanguage = userLanguage;
}
build(res) {
@@ -157,8 +158,8 @@ class ExporterExcel {
//init exceljs workbook
const workbook = createWorkbook();
workbook.creator = TAPi18n.__('export-board');
workbook.lastModifiedBy = TAPi18n.__('export-board');
workbook.creator = TAPi18n.__('export-board','',this.userLanguage);
workbook.lastModifiedBy = TAPi18n.__('export-board','',this.userLanguage);
workbook.created = new Date();
workbook.modified = new Date();
workbook.lastPrinted = new Date();
@@ -367,11 +368,11 @@ class ExporterExcel {
ws.addRow().values = ['', '', '', '', '', ''];
//add kanban info
ws.addRow().values = [
TAPi18n.__('createdAt'),
TAPi18n.__('createdAt','',this.userLanguage),
addTZhours(result.createdAt),
TAPi18n.__('modifiedAt'),
TAPi18n.__('modifiedAt','',this.userLanguage),
addTZhours(result.modifiedAt),
TAPi18n.__('members'),
TAPi18n.__('members','',this.userLanguage),
jmem,
];
ws.getRow(3).font = {
@@ -388,6 +389,14 @@ class ExporterExcel {
},
numFmt: 'yyyy/mm/dd hh:mm:ss',
};
ws.getCell('D3').style = {
font: {
name: TAPi18n.__('excel-font'),
size: '10',
bold: true,
},
numFmt: 'yyyy/mm/dd hh:mm:ss',
};
//cell center
function cellCenter(cellno) {
ws.getCell(cellno).alignment = {
@@ -455,24 +464,24 @@ class ExporterExcel {
//ws.addRow().values = ['编号', '标题', '创建人', '创建时间', '更新时间', '列表', '成员', '描述', '标签'];
//this is where order in which the excel file generates
ws.addRow().values = [
TAPi18n.__('number'),
TAPi18n.__('title'),
TAPi18n.__('description'),
TAPi18n.__('parent-card'),
TAPi18n.__('owner'),
TAPi18n.__('createdAt'),
TAPi18n.__('last-modified-at'),
TAPi18n.__('card-received'),
TAPi18n.__('card-start'),
TAPi18n.__('card-due'),
TAPi18n.__('card-end'),
TAPi18n.__('list'),
TAPi18n.__('swimlane'),
TAPi18n.__('assignee'),
TAPi18n.__('members'),
TAPi18n.__('labels'),
TAPi18n.__('overtime-hours'),
TAPi18n.__('spent-time-hours'),
TAPi18n.__('number','',this.userLanguage),
TAPi18n.__('title','',this.userLanguage),
TAPi18n.__('description','',this.userLanguage),
TAPi18n.__('parent-card','',this.userLanguage),
TAPi18n.__('owner','',this.userLanguage),
TAPi18n.__('createdAt','',this.userLanguage),
TAPi18n.__('last-modified-at','',this.userLanguage),
TAPi18n.__('card-received','',this.userLanguage),
TAPi18n.__('card-start','',this.userLanguage),
TAPi18n.__('card-due','',this.userLanguage),
TAPi18n.__('card-end','',this.userLanguage),
TAPi18n.__('list','',this.userLanguage),
TAPi18n.__('swimlane','',this.userLanguage),
TAPi18n.__('assignee','',this.userLanguage),
TAPi18n.__('members','',this.userLanguage),
TAPi18n.__('labels','',this.userLanguage),
TAPi18n.__('overtime-hours','',this.userLanguage),
TAPi18n.__('spent-time-hours','',this.userLanguage),
];
ws.getRow(5).height = 20;
allBorder('A5');
+17 -3
View File
@@ -1,4 +1,4 @@
var nodemailer = require('nodemailer');
//var nodemailer = require('nodemailer');
// Sandstorm context is detected using the METEOR_SETTINGS environment variable
// in the package definition.
@@ -225,8 +225,7 @@ if (Meteor.isServer) {
url: FlowRouter.url('sign-up'),
};
const lang = author.getLanguage();
/*
if (process.env.MAIL_SERVICE !== '') {
let transporter = nodemailer.createTransport({
service: process.env.MAIL_SERVICE,
@@ -249,6 +248,13 @@ if (Meteor.isServer) {
text: TAPi18n.__('email-invite-register-text', params, lang),
});
}
*/
Email.send({
to: icode.email,
from: Accounts.emailTemplates.from,
subject: TAPi18n.__('email-invite-register-subject', params, lang),
text: TAPi18n.__('email-invite-register-text', params, lang),
});
} catch (e) {
InvitationCodes.remove(_id);
throw new Meteor.Error('email-fail', e.message);
@@ -341,6 +347,7 @@ if (Meteor.isServer) {
this.unblock();
const lang = user.getLanguage();
try {
/*
if (process.env.MAIL_SERVICE !== '') {
let transporter = nodemailer.createTransport({
service: process.env.MAIL_SERVICE,
@@ -363,6 +370,13 @@ if (Meteor.isServer) {
text: TAPi18n.__('email-smtp-test-text', { lng: lang }),
});
}
*/
Email.send({
to: user.emails[0].address,
from: Accounts.emailTemplates.from,
subject: TAPi18n.__('email-smtp-test-subject', { lng: lang }),
text: TAPi18n.__('email-smtp-test-text', { lng: lang }),
});
} catch ({ message }) {
throw new Meteor.Error(
'email-fail',
+3 -3
View File
@@ -388,8 +388,8 @@ if (Meteor.isServer) {
*/
JsonRoutes.add('GET', '/api/boards/:boardId/swimlanes', function(req, res) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
JsonRoutes.sendResult(res, {
code: 200,
@@ -424,9 +424,9 @@ if (Meteor.isServer) {
res,
) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
const paramSwimlaneId = req.params.swimlaneId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
JsonRoutes.sendResult(res, {
code: 200,
data: Swimlanes.findOne({
@@ -454,8 +454,8 @@ if (Meteor.isServer) {
*/
JsonRoutes.add('POST', '/api/boards/:boardId/swimlanes', function(req, res) {
try {
Authentication.checkUserId(req.userId);
const paramBoardId = req.params.boardId;
Authentication.checkBoardAccess(req.userId, paramBoardId);
const board = Boards.findOne(paramBoardId);
const id = Swimlanes.insert({
title: req.body.title,
+11 -3
View File
@@ -1,4 +1,4 @@
var nodemailer = require('nodemailer');
//var nodemailer = require('nodemailer');
import { SyncedCron } from 'meteor/percolate:synced-cron';
import ImpersonatedUsers from './impersonatedUsers';
@@ -436,9 +436,9 @@ Users.allow({
fetch: [],
});
// Search a user in the complete server database by its name or username. This
// Search a user in the complete server database by its name, username or emails adress. This
// is used for instance to add a new user to a board.
const searchInFields = ['username', 'profile.fullname'];
const searchInFields = ['username', 'profile.fullname', 'emails.address'];
Users.initEasySearch(searchInFields, {
use: 'mongo-db',
returnFields: [...searchInFields, 'profile.avatarUrl'],
@@ -1245,6 +1245,7 @@ if (Meteor.isServer) {
};
const lang = user.getLanguage();
/*
if (process.env.MAIL_SERVICE !== '') {
let transporter = nodemailer.createTransport({
service: process.env.MAIL_SERVICE,
@@ -1267,6 +1268,13 @@ if (Meteor.isServer) {
text: TAPi18n.__('email-invite-text', params, lang),
});
}
*/
Email.send({
to: user.emails[0].address.toLowerCase(),
from: Accounts.emailTemplates.from,
subject: TAPi18n.__('email-invite-subject', params, lang),
text: TAPi18n.__('email-invite-text', params, lang),
});
} catch (e) {
throw new Meteor.Error('email-fail', e.message);
}
+238 -232
View File
@@ -1,13 +1,13 @@
{
"name": "wekan",
"version": "v5.60.0",
"version": "v5.63.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
"@babel/code-frame": {
"version": "7.14.5",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz",
"integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==",
"version": "7.15.8",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.15.8.tgz",
"integrity": "sha512-2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg==",
"requires": {
"@babel/highlight": "^7.14.5"
}
@@ -18,19 +18,19 @@
"integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA=="
},
"@babel/core": {
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.0.tgz",
"integrity": "sha512-tXtmTminrze5HEUPn/a0JtOzzfp0nk+UEXQ/tqIJo3WDGypl/2OFQEMll/zSFU8f/lfmfLXvTaORHF3cfXIQMw==",
"version": "7.15.8",
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.8.tgz",
"integrity": "sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og==",
"requires": {
"@babel/code-frame": "^7.14.5",
"@babel/generator": "^7.15.0",
"@babel/helper-compilation-targets": "^7.15.0",
"@babel/helper-module-transforms": "^7.15.0",
"@babel/helpers": "^7.14.8",
"@babel/parser": "^7.15.0",
"@babel/template": "^7.14.5",
"@babel/traverse": "^7.15.0",
"@babel/types": "^7.15.0",
"@babel/code-frame": "^7.15.8",
"@babel/generator": "^7.15.8",
"@babel/helper-compilation-targets": "^7.15.4",
"@babel/helper-module-transforms": "^7.15.8",
"@babel/helpers": "^7.15.4",
"@babel/parser": "^7.15.8",
"@babel/template": "^7.15.4",
"@babel/traverse": "^7.15.4",
"@babel/types": "^7.15.6",
"convert-source-map": "^1.7.0",
"debug": "^4.1.0",
"gensync": "^1.0.0-beta.2",
@@ -40,19 +40,19 @@
}
},
"@babel/generator": {
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.0.tgz",
"integrity": "sha512-eKl4XdMrbpYvuB505KTta4AV9g+wWzmVBW69tX0H2NwKVKd2YJbKgyK6M8j/rgLbmHOYJn6rUklV677nOyJrEQ==",
"version": "7.15.8",
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.8.tgz",
"integrity": "sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g==",
"requires": {
"@babel/types": "^7.15.0",
"@babel/types": "^7.15.6",
"jsesc": "^2.5.1",
"source-map": "^0.5.0"
}
},
"@babel/helper-compilation-targets": {
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.0.tgz",
"integrity": "sha512-h+/9t0ncd4jfZ8wsdAsoIxSa61qhBYlycXiHWqJaQBCXAhDCMbPRSMTGnZIkkmt1u4ag+UQmuqcILwqKzZ4N2A==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz",
"integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==",
"requires": {
"@babel/compat-data": "^7.15.0",
"@babel/helper-validator-option": "^7.14.5",
@@ -61,68 +61,68 @@
}
},
"@babel/helper-function-name": {
"version": "7.14.5",
"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz",
"integrity": "sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz",
"integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==",
"requires": {
"@babel/helper-get-function-arity": "^7.14.5",
"@babel/template": "^7.14.5",
"@babel/types": "^7.14.5"
"@babel/helper-get-function-arity": "^7.15.4",
"@babel/template": "^7.15.4",
"@babel/types": "^7.15.4"
}
},
"@babel/helper-get-function-arity": {
"version": "7.14.5",
"resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz",
"integrity": "sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz",
"integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==",
"requires": {
"@babel/types": "^7.14.5"
"@babel/types": "^7.15.4"
}
},
"@babel/helper-hoist-variables": {
"version": "7.14.5",
"resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz",
"integrity": "sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz",
"integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==",
"requires": {
"@babel/types": "^7.14.5"
"@babel/types": "^7.15.4"
}
},
"@babel/helper-member-expression-to-functions": {
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.0.tgz",
"integrity": "sha512-Jq8H8U2kYiafuj2xMTPQwkTBnEEdGKpT35lJEQsRRjnG0LW3neucsaMWLgKcwu3OHKNeYugfw+Z20BXBSEs2Lg==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz",
"integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==",
"requires": {
"@babel/types": "^7.15.0"
"@babel/types": "^7.15.4"
}
},
"@babel/helper-module-imports": {
"version": "7.14.5",
"resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz",
"integrity": "sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz",
"integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==",
"requires": {
"@babel/types": "^7.14.5"
"@babel/types": "^7.15.4"
}
},
"@babel/helper-module-transforms": {
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.0.tgz",
"integrity": "sha512-RkGiW5Rer7fpXv9m1B3iHIFDZdItnO2/BLfWVW/9q7+KqQSDY5kUfQEbzdXM1MVhJGcugKV7kRrNVzNxmk7NBg==",
"version": "7.15.8",
"resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz",
"integrity": "sha512-DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg==",
"requires": {
"@babel/helper-module-imports": "^7.14.5",
"@babel/helper-replace-supers": "^7.15.0",
"@babel/helper-simple-access": "^7.14.8",
"@babel/helper-split-export-declaration": "^7.14.5",
"@babel/helper-validator-identifier": "^7.14.9",
"@babel/template": "^7.14.5",
"@babel/traverse": "^7.15.0",
"@babel/types": "^7.15.0"
"@babel/helper-module-imports": "^7.15.4",
"@babel/helper-replace-supers": "^7.15.4",
"@babel/helper-simple-access": "^7.15.4",
"@babel/helper-split-export-declaration": "^7.15.4",
"@babel/helper-validator-identifier": "^7.15.7",
"@babel/template": "^7.15.4",
"@babel/traverse": "^7.15.4",
"@babel/types": "^7.15.6"
}
},
"@babel/helper-optimise-call-expression": {
"version": "7.14.5",
"resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz",
"integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz",
"integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==",
"requires": {
"@babel/types": "^7.14.5"
"@babel/types": "^7.15.4"
}
},
"@babel/helper-plugin-utils": {
@@ -132,36 +132,36 @@
"dev": true
},
"@babel/helper-replace-supers": {
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.0.tgz",
"integrity": "sha512-6O+eWrhx+HEra/uJnifCwhwMd6Bp5+ZfZeJwbqUTuqkhIT6YcRhiZCOOFChRypOIe0cV46kFrRBlm+t5vHCEaA==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz",
"integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==",
"requires": {
"@babel/helper-member-expression-to-functions": "^7.15.0",
"@babel/helper-optimise-call-expression": "^7.14.5",
"@babel/traverse": "^7.15.0",
"@babel/types": "^7.15.0"
"@babel/helper-member-expression-to-functions": "^7.15.4",
"@babel/helper-optimise-call-expression": "^7.15.4",
"@babel/traverse": "^7.15.4",
"@babel/types": "^7.15.4"
}
},
"@babel/helper-simple-access": {
"version": "7.14.8",
"resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz",
"integrity": "sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz",
"integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==",
"requires": {
"@babel/types": "^7.14.8"
"@babel/types": "^7.15.4"
}
},
"@babel/helper-split-export-declaration": {
"version": "7.14.5",
"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz",
"integrity": "sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz",
"integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==",
"requires": {
"@babel/types": "^7.14.5"
"@babel/types": "^7.15.4"
}
},
"@babel/helper-validator-identifier": {
"version": "7.14.9",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz",
"integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g=="
"version": "7.15.7",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz",
"integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w=="
},
"@babel/helper-validator-option": {
"version": "7.14.5",
@@ -169,13 +169,13 @@
"integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow=="
},
"@babel/helpers": {
"version": "7.15.3",
"resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.3.tgz",
"integrity": "sha512-HwJiz52XaS96lX+28Tnbu31VeFSQJGOeKHJeaEPQlTl7PnlhFElWPj8tUXtqFIzeN86XxXoBr+WFAyK2PPVz6g==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz",
"integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==",
"requires": {
"@babel/template": "^7.14.5",
"@babel/traverse": "^7.15.0",
"@babel/types": "^7.15.0"
"@babel/template": "^7.15.4",
"@babel/traverse": "^7.15.4",
"@babel/types": "^7.15.4"
}
},
"@babel/highlight": {
@@ -189,48 +189,48 @@
}
},
"@babel/parser": {
"version": "7.15.3",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.3.tgz",
"integrity": "sha512-O0L6v/HvqbdJawj0iBEfVQMc3/6WP+AeOsovsIgBFyJaG+W2w7eqvZB7puddATmWuARlm1SX7DwxJ/JJUnDpEA=="
"version": "7.15.8",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.8.tgz",
"integrity": "sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA=="
},
"@babel/runtime": {
"version": "7.15.3",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.3.tgz",
"integrity": "sha512-OvwMLqNXkCXSz1kSm58sEsNuhqOx/fKpnUnKnFB5v8uDda5bLNEHNgKPvhDN6IU0LDcnHQ90LlJ0Q6jnyBSIBA==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.4.tgz",
"integrity": "sha512-99catp6bHCaxr4sJ/DbTGgHS4+Rs2RVd2g7iOap6SLGPDknRK9ztKNsE/Fg6QhSeh1FGE5f6gHGQmvvn3I3xhw==",
"requires": {
"regenerator-runtime": "^0.13.4"
}
},
"@babel/template": {
"version": "7.14.5",
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz",
"integrity": "sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz",
"integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==",
"requires": {
"@babel/code-frame": "^7.14.5",
"@babel/parser": "^7.14.5",
"@babel/types": "^7.14.5"
"@babel/parser": "^7.15.4",
"@babel/types": "^7.15.4"
}
},
"@babel/traverse": {
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.0.tgz",
"integrity": "sha512-392d8BN0C9eVxVWd8H6x9WfipgVH5IaIoLp23334Sc1vbKKWINnvwRpb4us0xtPaCumlwbTtIYNA0Dv/32sVFw==",
"version": "7.15.4",
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz",
"integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==",
"requires": {
"@babel/code-frame": "^7.14.5",
"@babel/generator": "^7.15.0",
"@babel/helper-function-name": "^7.14.5",
"@babel/helper-hoist-variables": "^7.14.5",
"@babel/helper-split-export-declaration": "^7.14.5",
"@babel/parser": "^7.15.0",
"@babel/types": "^7.15.0",
"@babel/generator": "^7.15.4",
"@babel/helper-function-name": "^7.15.4",
"@babel/helper-hoist-variables": "^7.15.4",
"@babel/helper-split-export-declaration": "^7.15.4",
"@babel/parser": "^7.15.4",
"@babel/types": "^7.15.4",
"debug": "^4.1.0",
"globals": "^11.1.0"
}
},
"@babel/types": {
"version": "7.15.0",
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.0.tgz",
"integrity": "sha512-OBvfqnllOIdX4ojTHpwZbpvz4j3EWyjkZEdmjH0/cgsd6QOdSgU8rLSk6ard/pcW7rlmjdVSX/AWOaORR1uNOQ==",
"version": "7.15.6",
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz",
"integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==",
"requires": {
"@babel/helper-validator-identifier": "^7.14.9",
"to-fast-properties": "^2.0.0"
@@ -288,12 +288,12 @@
"dev": true
},
"@liradb2000/markdown-it-mermaid": {
"version": "0.4.3",
"resolved": "https://registry.npmjs.org/@liradb2000/markdown-it-mermaid/-/markdown-it-mermaid-0.4.3.tgz",
"integrity": "sha512-ieUUuwqvc4Gr7GxLCu9V6gkW8VIxX/7sjOoByERGxbRFwQGzbVHuMAu6Y63M+umFwcfxU9bE3mSbHEi60a75GQ==",
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/@liradb2000/markdown-it-mermaid/-/markdown-it-mermaid-0.4.4.tgz",
"integrity": "sha512-i+SM6nz+eeGbtAaUFJveF9+/DtCnf6L9fycQEbwK0e+pgDVHPJ1EW3eKZBpWfY54TfiOqIltN77dKngYDoLJYQ==",
"requires": {
"mermaid": "^8.10.2",
"npm": "^7.16.0"
"mermaid": "^8.13.0",
"npm": "^7.24.1"
}
},
"@sinonjs/commons": {
@@ -332,9 +332,9 @@
"dev": true
},
"@types/node": {
"version": "14.17.13",
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.13.tgz",
"integrity": "sha512-OqG3iSnFg3cnJLsSRyhriILdDfBOwGty0fmnalbsPdYKbDgK6TI9On/36lzO/1bcaeEkg9OGD2wYLjx8t5MZNQ=="
"version": "14.17.21",
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.21.tgz",
"integrity": "sha512-zv8ukKci1mrILYiQOwGSV4FpkZhyxQtuFWGya2GujWg+zVAeRQ4qbaMmWp9vb9889CFA8JECH7lkwCL6Ygg8kA=="
},
"@types/yauzl": {
"version": "2.9.2",
@@ -525,9 +525,9 @@
"integrity": "sha1-mrVie5PmBiH/fNrF2pczAn3x0Ms="
},
"big-integer": {
"version": "1.6.48",
"resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.48.tgz",
"integrity": "sha512-j51egjPa7/i+RdiRuJbPdJ2FIUYYPhvYLjzoYbcMMm62ooO6F94fETG4MTs46zPAF9Brs04OajboA/qTGuz78w=="
"version": "1.6.49",
"resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.49.tgz",
"integrity": "sha512-KJ7VhqH+f/BOt9a3yMwJNmcZjG53ijWMTjSAGMveQWyLwqIiwkjNP5PFgDob3Snnx86SjDj6I89fIbv0dkQeNw=="
},
"binary": {
"version": "0.3.0",
@@ -591,21 +591,21 @@
}
},
"browserslist": {
"version": "4.16.8",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.8.tgz",
"integrity": "sha512-sc2m9ohR/49sWEbPj14ZSSZqp+kbi16aLao42Hmn3Z8FpjuMaq2xCA2l4zl9ITfyzvnvyE0hcg62YkIGKxgaNQ==",
"version": "4.17.3",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.3.tgz",
"integrity": "sha512-59IqHJV5VGdcJZ+GZ2hU5n4Kv3YiASzW6Xk5g9tf5a/MAzGeFwgGWU39fVzNIOVcgB3+Gp+kiQu0HEfTVU/3VQ==",
"requires": {
"caniuse-lite": "^1.0.30001251",
"colorette": "^1.3.0",
"electron-to-chromium": "^1.3.811",
"caniuse-lite": "^1.0.30001264",
"electron-to-chromium": "^1.3.857",
"escalade": "^3.1.1",
"node-releases": "^1.1.75"
"node-releases": "^1.1.77",
"picocolors": "^0.2.1"
}
},
"bson": {
"version": "4.5.1",
"resolved": "https://registry.npmjs.org/bson/-/bson-4.5.1.tgz",
"integrity": "sha512-XqFP74pbTVLyLy5KFxVfTUyRrC1mgOlmu/iXHfXqfCKT59jyP9lwbotGfbN59cHBRbJSamZNkrSopjv+N0SqAA==",
"version": "4.5.3",
"resolved": "https://registry.npmjs.org/bson/-/bson-4.5.3.tgz",
"integrity": "sha512-qVX7LX79Mtj7B3NPLzCfBiCP6RAsjiV8N63DjlaVVpZW+PFoDTxQ4SeDbSpcqgE6mXksM5CAwZnXxxxn/XwC0g==",
"requires": {
"buffer": "^5.6.0"
}
@@ -666,9 +666,9 @@
"dev": true
},
"caniuse-lite": {
"version": "1.0.30001252",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001252.tgz",
"integrity": "sha512-I56jhWDGMtdILQORdusxBOH+Nl/KgQSdDmpJezYddnAkVOmnoU8zwjTV9xAjMIYxr0iPreEAVylCGcmHCjfaOw=="
"version": "1.0.30001265",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz",
"integrity": "sha512-YzBnspggWV5hep1m9Z6sZVLOt7vrju8xWooFAgN6BA5qvy98qPAPb7vNUzypFaoh2pb3vlfzbDO8tB57UPGbtw=="
},
"chai": {
"version": "4.3.4",
@@ -727,11 +727,6 @@
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
},
"colorette": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz",
"integrity": "sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w=="
},
"commander": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
@@ -790,9 +785,9 @@
}
},
"d3": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/d3/-/d3-7.0.1.tgz",
"integrity": "sha512-74zonD4nAtxF9dtwFwJ3RuoHPh2D/UTFX26midBuMVH+7pRbOezuyLUIb8mbQMuYFlcUXT+xy++orCmnvMM/CA==",
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/d3/-/d3-7.1.1.tgz",
"integrity": "sha512-8zkLMwSvUAnfN9pcJDfkuxU0Nvg4RLUD0A4BZN1KxJPtlnCGzMx3xM5cRl4m8fym/Vy8rlq52tl90UF3m91OnA==",
"requires": {
"d3-array": "3",
"d3-axis": "3",
@@ -827,9 +822,9 @@
}
},
"d3-array": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.0.2.tgz",
"integrity": "sha512-nTN4OC6ufZueotlexbxBd2z8xmG1eIfhvP2m1auH2ONps0L+AZn1r0JWuzMXZ6XgOj1VBOp7GGZmEs9NUFEBbA==",
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.1.1.tgz",
"integrity": "sha512-33qQ+ZoZlli19IFiQx4QEpf2CBEayMRzhlisJHSCsSUbDXv6ZishqS1x7uFVClKG4Wr7rZVHvaAttoLow6GqdQ==",
"requires": {
"internmap": "1 - 2"
}
@@ -979,9 +974,9 @@
"integrity": "sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ=="
},
"d3-scale": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.0.tgz",
"integrity": "sha512-foHQYKpWQcyndH1CGoHdUC4PECxTxonzwwBXGT8qu+Drb1FIc6ON6dG2P5f4hRRMkLiIKeWK7iFtdznDUrnuPQ==",
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz",
"integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==",
"requires": {
"d3-array": "2.10.0 - 3",
"d3-format": "1 - 3",
@@ -1352,9 +1347,9 @@
}
},
"dayjs": {
"version": "1.10.6",
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.10.6.tgz",
"integrity": "sha512-AztC/IOW4L1Q41A86phW5Thhcrco3xuAA+YX/BLpLWWjRcTj5TOt/QImBLmCKlrF7u7k47arTnOyL6GnbG8Hvw=="
"version": "1.10.7",
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.10.7.tgz",
"integrity": "sha512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig=="
},
"debug": {
"version": "4.3.2",
@@ -1404,9 +1399,9 @@
"dev": true
},
"dompurify": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.3.1.tgz",
"integrity": "sha512-xGWt+NHAQS+4tpgbOAI08yxW0Pr256Gu/FNE2frZVTbgrBUn8M7tz7/ktS/LZ2MHeGqz6topj0/xY+y8R5FBFw=="
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.3.3.tgz",
"integrity": "sha512-dqnqRkPMAjOZE0FogZ+ceJNM2dZ3V/yNOuFB7+39qpO93hHhfRpHw3heYQC7DPK9FqbQTfBKUJhiSfz4MvXYwg=="
},
"dtrace-provider": {
"version": "0.8.8",
@@ -1455,9 +1450,9 @@
}
},
"electron-to-chromium": {
"version": "1.3.824",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.824.tgz",
"integrity": "sha512-Fk+5aD0HDi9i9ZKt9n2VPOZO1dQy7PV++hz2wJ/KIn+CvVfu4fny39squHtyVDPuHNuoJGAZIbuReEklqYIqfA=="
"version": "1.3.861",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.861.tgz",
"integrity": "sha512-GZyflmpMnZRdZ1e2yAyvuFwz1MPSVQelwHX4TJZyXypB8NcxdPvPNwy5lOTxnlkrK13EiQzyTPugRSnj6cBgKg=="
},
"end-of-stream": {
"version": "1.4.4",
@@ -1651,9 +1646,9 @@
}
},
"glob": {
"version": "7.1.7",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
"integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
"integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
"requires": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
@@ -1683,7 +1678,7 @@
},
"gridfs-stream": {
"version": "https://github.com/wekan/gridfs-stream/tarball/master",
"integrity": "sha1-LHDhvuPAD0qFNEiT8YnbeXCmV9s= sha512-vGe0SUuTpDFEkHFyEJEheToH4LYyCb0Kvat2iB6xTU6PdiCsKGi3VXkM1cc7Zda4Ulu7Mg1p9OAWG718xll7Fg==",
"integrity": "sha512-vGe0SUuTpDFEkHFyEJEheToH4LYyCb0Kvat2iB6xTU6PdiCsKGi3VXkM1cc7Zda4Ulu7Mg1p9OAWG718xll7Fg==",
"requires": {
"flushwritable": "^1.0.0"
}
@@ -1749,9 +1744,9 @@
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
},
"internmap": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.1.tgz",
"integrity": "sha512-Ujwccrj9FkGqjbY3iVoxD1VV+KdZZeENx0rphrtzmRXbFvkFO88L80BL/zeSIguX/7T+y8k04xqtgWgS5vxwxw=="
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz",
"integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg=="
},
"isarray": {
"version": "0.0.1",
@@ -1929,9 +1924,9 @@
}
},
"linkify-it": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.2.tgz",
"integrity": "sha512-gDBO4aHNZS6coiZCKVhSNh43F9ioIL4JwRjLZPkoLIY4yZFwg264Y5lu2x6rb1Js42Gh6Yqm2f6L2AJcnkzinQ==",
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz",
"integrity": "sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==",
"requires": {
"uc.micro": "^1.0.1"
}
@@ -2062,9 +2057,9 @@
"optional": true
},
"mermaid": {
"version": "8.12.0",
"resolved": "https://registry.npmjs.org/mermaid/-/mermaid-8.12.0.tgz",
"integrity": "sha512-YegtLgtdpnd+y7J9gfSfFkD7T3G7cXQ6orOL7x4jAx6SWyJSMAQIb34JBKuhagXNsi34nK6gpfHbv63Br7246g==",
"version": "8.13.2",
"resolved": "https://registry.npmjs.org/mermaid/-/mermaid-8.13.2.tgz",
"integrity": "sha512-qTFI7MfC2d+x0Hft5gx063EH9tZg36lERG8o7Zq0Ag+MnO8CgVaMZEU6oA8gzTtTn9upMdy4UlYSLVmavu27cQ==",
"requires": {
"@braintree/sanitize-url": "^3.1.0",
"d3": "^7.0.0",
@@ -2075,6 +2070,13 @@
"khroma": "^1.4.1",
"moment-mini": "^2.24.0",
"stylis": "^4.0.10"
},
"dependencies": {
"dompurify": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.3.1.tgz",
"integrity": "sha512-xGWt+NHAQS+4tpgbOAI08yxW0Pr256Gu/FNE2frZVTbgrBUn8M7tz7/ktS/LZ2MHeGqz6topj0/xY+y8R5FBFw=="
}
}
},
"meteor-node-stubs": {
@@ -2887,14 +2889,14 @@
"integrity": "sha512-9ARkWHBs+6YJIvrIp0Ik5tyTTtP9PoV0Ssu2Ocq5y9v8+NOOpWiRshAp8c4rZVWTOe+157on/5G+zj5pwIQFEQ=="
},
"mongodb": {
"version": "3.6.12",
"resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.6.12.tgz",
"integrity": "sha512-ErHpF4P4disEIQB8Nns2twIMVXcvmlwjpKqfVnyB/hhd/L5We48LfoBYjBjuUSiSqL6ffmcygPTgjvpy2LETRQ==",
"version": "3.7.2",
"resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.7.2.tgz",
"integrity": "sha512-/Qi0LmOjzIoV66Y2JQkqmIIfFOy7ZKsXnQNlUXPFXChOw3FCdNqVD5zvci9ybm6pkMe/Nw+Rz9I0Zsk2a+05iQ==",
"requires": {
"bl": "^2.2.1",
"bson": "^1.1.4",
"denque": "^1.4.1",
"optional-require": "^1.0.3",
"optional-require": "^1.1.8",
"safe-buffer": "^5.1.2",
"saslprep": "^1.0.0"
},
@@ -2965,14 +2967,9 @@
"dev": true
},
"node-releases": {
"version": "1.1.75",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.75.tgz",
"integrity": "sha512-Qe5OUajvqrqDSy6wrWFmMwfJ0jVgwiw4T3KqmbTcZ62qW0gQkheXYhcFM1+lOVcGUoRxcEcfyvFMAnDgaF1VWw=="
},
"nodemailer": {
"version": "6.6.3",
"resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.6.3.tgz",
"integrity": "sha512-faZFufgTMrphYoDjvyVpbpJcYzwyFnbAMmQtj1lVBYAUSm3SOy2fIdd9+Mr4UxPosBa0JRw9bJoIwQn+nswiew=="
"version": "1.1.77",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz",
"integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ=="
},
"normalize-path": {
"version": "3.0.0",
@@ -2980,13 +2977,14 @@
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="
},
"npm": {
"version": "7.21.1",
"resolved": "https://registry.npmjs.org/npm/-/npm-7.21.1.tgz",
"integrity": "sha512-k7XQNHGHAp0VowMMUMRMtntxWatNad9hhYrelUKDPvZ++DBxvofA8QTNPiuMKtx8CBOFA8iJ4aizhbx6ZYVfzQ==",
"version": "7.24.2",
"resolved": "https://registry.npmjs.org/npm/-/npm-7.24.2.tgz",
"integrity": "sha512-120p116CE8VMMZ+hk8IAb1inCPk4Dj3VZw29/n2g6UI77urJKVYb7FZUDW8hY+EBnfsjI/2yrobBgFyzo7YpVQ==",
"requires": {
"@npmcli/arborist": "^2.8.2",
"@isaacs/string-locale-compare": "^1.1.0",
"@npmcli/arborist": "^2.9.0",
"@npmcli/ci-detect": "^1.2.0",
"@npmcli/config": "^2.2.0",
"@npmcli/config": "^2.3.0",
"@npmcli/map-workspaces": "^1.0.4",
"@npmcli/package-json": "^1.0.1",
"@npmcli/run-script": "^1.8.6",
@@ -3001,11 +2999,11 @@
"cli-table3": "^0.6.0",
"columnify": "~1.5.4",
"fastest-levenshtein": "^1.0.12",
"glob": "^7.1.7",
"glob": "^7.2.0",
"graceful-fs": "^4.2.8",
"hosted-git-info": "^4.0.2",
"ini": "^2.0.0",
"init-package-json": "^2.0.4",
"init-package-json": "^2.0.5",
"is-cidr": "^4.0.2",
"json-parse-even-better-errors": "^2.3.1",
"libnpmaccess": "^4.0.2",
@@ -3028,18 +3026,19 @@
"node-gyp": "^7.1.2",
"nopt": "^5.0.0",
"npm-audit-report": "^2.1.5",
"npm-install-checks": "^4.0.0",
"npm-package-arg": "^8.1.5",
"npm-pick-manifest": "^6.1.1",
"npm-profile": "^5.0.3",
"npm-registry-fetch": "^11.0.0",
"npm-user-validate": "^1.0.1",
"npmlog": "^5.0.0",
"npmlog": "^5.0.1",
"opener": "^1.5.2",
"pacote": "^11.3.5",
"parse-conflict-json": "^1.1.1",
"qrcode-terminal": "^0.12.0",
"read": "~1.0.7",
"read-package-json": "^4.0.1",
"read-package-json": "^4.1.1",
"read-package-json-fast": "^2.0.3",
"readdir-scoped-modules": "^1.1.0",
"rimraf": "^3.0.2",
@@ -3058,10 +3057,15 @@
"version": "1.1.2",
"bundled": true
},
"@isaacs/string-locale-compare": {
"version": "1.1.0",
"bundled": true
},
"@npmcli/arborist": {
"version": "2.8.2",
"version": "2.9.0",
"bundled": true,
"requires": {
"@isaacs/string-locale-compare": "^1.0.1",
"@npmcli/installed-package-contents": "^1.0.7",
"@npmcli/map-workspaces": "^1.0.2",
"@npmcli/metavuln-calculator": "^1.1.0",
@@ -3100,7 +3104,7 @@
"bundled": true
},
"@npmcli/config": {
"version": "2.2.0",
"version": "2.3.0",
"bundled": true,
"requires": {
"ini": "^2.0.0",
@@ -3276,11 +3280,11 @@
"bundled": true
},
"are-we-there-yet": {
"version": "1.1.5",
"version": "1.1.6",
"bundled": true,
"requires": {
"delegates": "^1.0.0",
"readable-stream": "^2.0.6"
"readable-stream": "^3.6.0"
}
},
"asap": {
@@ -3654,7 +3658,7 @@
}
},
"glob": {
"version": "7.1.7",
"version": "7.2.0",
"bundled": true,
"requires": {
"fs.realpath": "^1.0.0",
@@ -3784,14 +3788,13 @@
"bundled": true
},
"init-package-json": {
"version": "2.0.4",
"version": "2.0.5",
"bundled": true,
"requires": {
"glob": "^7.1.1",
"npm-package-arg": "^8.1.2",
"npm-package-arg": "^8.1.5",
"promzard": "^0.3.0",
"read": "~1.0.1",
"read-package-json": "^4.0.0",
"read-package-json": "^4.1.1",
"semver": "^7.3.5",
"validate-npm-package-license": "^3.0.4",
"validate-npm-package-name": "^3.0.0"
@@ -3813,7 +3816,7 @@
}
},
"is-core-module": {
"version": "2.6.0",
"version": "2.7.0",
"bundled": true,
"requires": {
"has": "^1.0.3"
@@ -3831,10 +3834,6 @@
"version": "1.0.0",
"bundled": true
},
"isarray": {
"version": "1.0.0",
"bundled": true
},
"isexe": {
"version": "2.0.0",
"bundled": true
@@ -4047,7 +4046,7 @@
}
},
"minipass": {
"version": "3.1.3",
"version": "3.1.5",
"bundled": true,
"requires": {
"yallist": "^4.0.0"
@@ -4061,7 +4060,7 @@
}
},
"minipass-fetch": {
"version": "1.3.4",
"version": "1.4.1",
"bundled": true,
"requires": {
"encoding": "^0.1.12",
@@ -4289,13 +4288,23 @@
"bundled": true
},
"npmlog": {
"version": "5.0.0",
"version": "5.0.1",
"bundled": true,
"requires": {
"are-we-there-yet": "^1.1.5",
"are-we-there-yet": "^2.0.0",
"console-control-strings": "^1.1.0",
"gauge": "^3.0.0",
"set-blocking": "^2.0.0"
},
"dependencies": {
"are-we-there-yet": {
"version": "2.0.0",
"bundled": true,
"requires": {
"delegates": "^1.0.0",
"readable-stream": "^3.6.0"
}
}
}
},
"number-is-nan": {
@@ -4374,10 +4383,6 @@
"version": "1.0.0",
"bundled": true
},
"process-nextick-args": {
"version": "2.0.1",
"bundled": true
},
"promise-all-reject-late": {
"version": "1.0.1",
"bundled": true
@@ -4433,7 +4438,7 @@
"bundled": true
},
"read-package-json": {
"version": "4.0.1",
"version": "4.1.1",
"bundled": true,
"requires": {
"glob": "^7.1.1",
@@ -4451,16 +4456,12 @@
}
},
"readable-stream": {
"version": "2.3.7",
"version": "3.6.0",
"bundled": true,
"requires": {
"core-util-is": "~1.0.0",
"inherits": "~2.0.3",
"isarray": "~1.0.0",
"process-nextick-args": "~2.0.0",
"safe-buffer": "~5.1.1",
"string_decoder": "~1.1.1",
"util-deprecate": "~1.0.1"
"inherits": "^2.0.3",
"string_decoder": "^1.1.1",
"util-deprecate": "^1.0.1"
}
},
"readdir-scoped-modules": {
@@ -4530,7 +4531,7 @@
}
},
"safe-buffer": {
"version": "5.1.2",
"version": "5.2.1",
"bundled": true
},
"safer-buffer": {
@@ -4565,7 +4566,7 @@
}
},
"socks-proxy-agent": {
"version": "6.0.0",
"version": "6.1.0",
"bundled": true,
"requires": {
"agent-base": "^6.0.2",
@@ -4641,10 +4642,10 @@
}
},
"string_decoder": {
"version": "1.1.1",
"version": "1.3.0",
"bundled": true,
"requires": {
"safe-buffer": "~5.1.0"
"safe-buffer": "~5.2.0"
}
},
"stringify-package": {
@@ -4819,9 +4820,9 @@
}
},
"optional-require": {
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.1.7.tgz",
"integrity": "sha512-cIeRZocXsZnZYn+SevbtSqNlLbeoS4mLzuNn4fvXRMDRNhTGg0sxuKXl0FnZCtnew85LorNxIbZp5OeliILhMw==",
"version": "1.1.8",
"resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.1.8.tgz",
"integrity": "sha512-jq83qaUb0wNg9Krv1c5OQ+58EK+vHde6aBPzLvPPqJm89UQWsvSuFy9X/OSNJnFeSOKo7btE0n8Nl2+nE+z5nA==",
"requires": {
"require-at": "^1.0.6"
}
@@ -4904,6 +4905,11 @@
"integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
"dev": true
},
"picocolors": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
"integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA=="
},
"pkg-dir": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
@@ -4956,9 +4962,9 @@
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
},
"puppeteer": {
"version": "10.2.0",
"resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-10.2.0.tgz",
"integrity": "sha512-OR2CCHRashF+f30+LBOtAjK6sNtz2HEyTr5FqAvhf8lR/qB3uBRoIZOwQKgwoyZnMBsxX7ZdazlyBgGjpnkiMw==",
"version": "10.4.0",
"resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-10.4.0.tgz",
"integrity": "sha512-2cP8mBoqnu5gzAVpbZ0fRaobBWZM8GEUF4I1F6WbgHrKV/rz7SX8PG2wMymZgD0wo0UBlg2FBPNxlF/xlqW6+w==",
"dev": true,
"requires": {
"debug": "4.3.1",
@@ -5164,9 +5170,9 @@
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
},
"source-map-support": {
"version": "0.5.19",
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
"integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
"version": "0.5.20",
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz",
"integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==",
"requires": {
"buffer-from": "^1.0.0",
"source-map": "^0.6.0"
+1 -2
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v5.60.0",
"version": "v5.63.0",
"description": "Open-Source kanban",
"private": true,
"repository": {
@@ -40,7 +40,6 @@
"markdown-it-emoji": "^2.0.0",
"meteor-node-stubs": "^1.1.0",
"mongodb": "^3.6.11",
"nodemailer": "^6.6.3",
"os": "^0.1.2",
"page": "^1.11.5",
"papaparse": "^5.3.1",
+3 -3
View File
@@ -7,7 +7,7 @@
<meta charset="utf-8">
<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>Wekan REST API v5.60</title>
<title>Wekan REST API v5.63</title>
<style>
</style>
@@ -1555,7 +1555,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
<ul class="toc-list-h1">
<li>
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v5.60">Wekan REST API v5.60</a>
<a href="#wekan-rest-api" class="toc-h1 toc-link" data-title="Wekan REST API v5.63">Wekan REST API v5.63</a>
</li>
@@ -2128,7 +2128,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
<div class="page-wrapper">
<div class="dark-box"></div>
<div class="content">
<h1 id="wekan-rest-api">Wekan REST API v5.60</h1>
<h1 id="wekan-rest-api">Wekan REST API v5.63</h1>
<blockquote>
<p>Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.</p>
</blockquote>
+1 -1
View File
@@ -1,7 +1,7 @@
swagger: '2.0'
info:
title: Wekan REST API
version: v5.60
version: v5.63
description: |
The REST API allows you to control and extend Wekan with ease.
Loaded 100 of 104 files, more files were not shown because too many files have changed in this diff. Show more