This test is comprised of 3 parts based on a basic Meteor app. All 3 parts of the test must be completed specifically as instructed without anything additional.
Feel free to use any npm modules. Start the app by running npm start
. When you are done, zip all files except .meteor
and node_modules
and send to leo@plutio.com
.
Good luck.
Refactor imports/ui/app.js
. Split the file into smaller modules, as many as you feel like. You can create any amount of directories and files you need.
The logic of task indicators is as follows:
icon-description
is visible ifhasDescription
istrue
icon-chat
is visible ifcommentsCount
is more than0
icon-attach
is visible iffilesCount
is more than0
icon-timer
is visible ificon-timer
is more than0
In imports/api/tasks/methods
you will see 2 empty files get.js
and create.js
. You need to create 2 simple methods:
get.js
- Get all tasks that does not haveisPrivate
set totrue
.create.js
- Create a new task method. It should only allow setting fieldstitle
,dueDate
,repeat
,status
,customFields
andcolor
.
Use created get
method to load tasks and show it in UI.
Use created create
method to insert a new task when Enter
button is clicked on Add new task
form.
Write a test of create
and get
methods inside tests
folder. You can run tests with npm run test
.