feat: Restore toggleable due dates (#1332)

This commit is contained in:
Steven Correia
2025-09-05 13:55:20 +02:00
committed by GitHub
parent 7da241c5a3
commit 37bd4d1349
14 changed files with 140 additions and 17 deletions
+5
View File
@@ -49,6 +49,10 @@ module.exports = {
type: 'string',
custom: isDueDate,
},
isDueCompleted: {
type: 'boolean',
allowNull: true,
},
stopwatch: {
type: 'json',
custom: isStopwatch,
@@ -93,6 +97,7 @@ module.exports = {
'name',
'description',
'dueDate',
'isDueCompleted',
'stopwatch',
]);
+6
View File
@@ -70,6 +70,10 @@ module.exports = {
custom: isDueDate,
allowNull: true,
},
isDueCompleted: {
type: 'boolean',
allowNull: true,
},
stopwatch: {
type: 'json',
custom: isStopwatch,
@@ -136,6 +140,7 @@ module.exports = {
'name',
'description',
'dueDate',
'isDueCompleted',
'stopwatch',
);
}
@@ -195,6 +200,7 @@ module.exports = {
'name',
'description',
'dueDate',
'isDueCompleted',
'stopwatch',
'isSubscribed',
]);
@@ -67,7 +67,7 @@ module.exports = {
name: trelloCard.name,
description: trelloCard.desc || null,
dueDate: trelloCard.due,
isClosed: trelloCard.dueComplete,
isDueCompleted: trelloCard.due && trelloCard.dueComplete,
listChangedAt: new Date().toISOString(),
};
+8
View File
@@ -25,6 +25,14 @@ module.exports = {
async fn(inputs) {
const { values } = inputs;
if (values.dueDate) {
if (_.isNil(values.isDueCompleted)) {
values.isDueCompleted = false;
}
} else {
delete values.isDueCompleted;
}
if (sails.helpers.lists.isFinite(values.list)) {
if (_.isUndefined(values.position)) {
throw 'positionMustBeInValues';
@@ -90,6 +90,7 @@ module.exports = {
'name',
'description',
'dueDate',
'isDueCompleted',
'stopwatch',
'isClosed',
]),
+14
View File
@@ -101,6 +101,20 @@ module.exports = {
values.coverAttachmentId = values.coverAttachment.id;
}
const dueDate = _.isUndefined(values.dueDate) ? inputs.record.dueDate : values.dueDate;
if (dueDate) {
const isDueCompleted = _.isUndefined(values.isDueCompleted)
? inputs.record.isDueCompleted
: values.isDueCompleted;
if (_.isNull(isDueCompleted)) {
values.isDueCompleted = false;
}
} else {
values.isDueCompleted = null;
}
let card;
if (_.isEmpty(values)) {
card = inputs.record;
+5
View File
@@ -45,6 +45,11 @@ module.exports = {
type: 'ref',
columnName: 'due_date',
},
isDueCompleted: {
type: 'boolean',
allowNull: true,
columnName: 'is_due_completed',
},
stopwatch: {
type: 'json',
},