dataedit
dataedit copied to clipboard
✨[Feature Request] Add support for dataviewjs syntax
Thanks for this awesome budding plugin. If dataviewjs syntax also can be supported it will be further useful. A sample dataviewjs script for notes created/modified today:
// default dateformat in case it’s forgotten in front matter
var dateformat = "YYYY-MM-DD";
if (dv.current().dateformat) { dateformat = dv.current().dateformat; }
dv.table(["File", "LastModifiedOn", "CreatedOn"],
dv.pages()
.where(p => p.file.mday.equals(dv.current().file.day) || p.file.cday.equals(dv.current().file.day))
.sort(p => p.file.mtime, 'asc')
.map(p => [
p.file.link,
moment(p.file.mtime.toString()).format(dateformat),
moment(p.file.ctime.toString()).format(dateformat),
])
);
Dataviewjs is supported
Instead of doing dv.table(headers, values) just return an object with keys for headers and values
Let me know if the following doesn't work :) Note I am unsure about the dateformat being respected as I hadn't considered that.
// default dateformat in case it’s forgotten in front matter
var dateformat = "YYYY-MM-DD";
if (dv.current().dateformat) { dateformat = dv.current().dateformat; }
return{
headers: ["File", "LastModifiedOn", "CreatedOn"],
values:
dv.pages()
.where(p => p.file.mday.equals(dv.current().file.day) || p.file.cday.equals(dv.current().file.day))
.sort(p => p.file.mtime, 'asc')
.map(p => [
p.file.link,
moment(p.file.mtime.toString()).format(dateformat),
moment(p.file.ctime.toString()).format(dateformat),
])
};
I had tested the given code and the console shows the error as follow.
It seems that "dv.current()" is not support. We could check it by "console.log" command in dataedit code block.
console.log( dv.current() )