Integerating Obsidian Tasks with QuickAdd

So, I did post before also but as my question was quite unclear, give me one more chance to ask my question in a better way.
I am trying to integrate the Obsidian Tasks plugin and Reminder Plugin with the QuickAdd plugin. The thing is for a task I don’t always have a due date, scheduled date etc. So, when I use the Capture choice in QuickAdd and I don’t have these properties for a task, I have to give an empty input to the prompts resulting in a task to have multiple useless properties added such as " :date: Invalid Date". To avoid this i wanted to make a Macro that will check if an input is empty and if so the property (such as due date) is not added to the task.

Being a beginner python programmer and no experience in JavaScript, I asked ChatGPT to write up the code for me. It generated the following code.

async function captureTask() {

const tag = await quickAddApi.inputPrompt("tag");

const taskName = await quickAddApi.inputPrompt("task name");

const reminderDateTime = await quickAddApi.datePrompt("reminder date and time", "YYYY-MM-DD HH:mm");

const dueDate = await quickAddApi.datePrompt("due date", "YYYY-MM-DD");

const scheduledDate = await quickAddApi.datePrompt("scheduled date", "YYYY-MM-DD");

const priority = await quickAddApi.suggester(["⏫", "🔼", "🔽", " "], ["High", "Medium", "Low", "None"]);

let taskString = '';

if (tag) {

taskString += \#${tag} `;

}

if (taskName) {

taskString += \${taskName} `;

}

if (reminderDateTime) {

taskString += \:alarm_clock: ${reminderDateTime} `;

}

if (dueDate) {

taskString += \:date: ${dueDate} `;

}

if (scheduledDate) {

taskString += \:hourglass_flowing_sand: ${scheduledDate} `;

}

if (priority && priority !== " ") {

taskString += \${priority};

}

return taskString.trim();

}

const taskString = await captureTask();

if (taskString) {

await quickAddApi.addToDailyNote(taskString);

}

When running the Macro nothing happens. Literally Nothing

Pls help me! Thank You!

did you put it inbetween

\ ```js quickadd

at the start of the capture box and

```

at the end of the box?

I am using a user script with Macro. Do i need to ass “js quickadd” here also. I thought it was only for inline scripts.

I cant use inline scripts because it does not allow to take in date inputs. Only text inputs are allowed in inline scripts

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.