* Fix: moved debuffPotions from vue component
- Move logic of choosing proper debuf potion from vue component to website commons
- introduce new function to get debuffSpellItems
* Fix: move debuffPotions to server
* Refactoring: move setting of debuff potion to func
* Fix: sanity
* Refactoring & Tests:
- Create test case for get and set DebuffPotionItems functions
- Fix setDebuffPotionItems function to not create duplicated debuff items
- Make debuff potion type of items unpinnable
- Move list of debuffs to constant to reuse it in tests and functions
* Fix: typo in test describe
* Fix: translation of unpin
* Fix: setDebuffPotionItems on cron buffs reset
* Fix: use full path for debuff potions
* wip: createIntro / onboard ui rework
* extract more methods - working body settings component
* move justin above the dialog
* extract submenu + fix styles
* white background on items, working example of "none" item, item border radius
* extract options as component
* move more subMenu's to the component
* add chair margins
* move tasks to common/content
* add menu indicator
* extract more parts of onboarding-intro
* refactor / fully converted hair-settings
* extract extra-settings
* fix sprite positions / lint
* extract task-strings to be translatable
* style fixes - hide submenu's if not editing
* style / margin fixes
* more style fixes
* show hair styles at onboarding - use arrowleft/right as svg instead of image fix next color
* finish button style - full set background/purchase button
* fix footer - prev/next hover
* Add Default Tasks + `byHabitica` property
* customize-options click item on the full zone
* purple tasks
* footer animation => none
* fix onboarding task habit up/down
* onboarding circle color/position
* task styles
* fix onboarding position
* show seasonal options
* add hover to (locked-) options
* added the correct behavior of shop-items to onboarding options
* hide hover on active options
* Refactoring & Feature: edit/delete group and challenge tasks
- Remove showOption from tasks props
- Pass all needed data to task for understand in mapGetter function which controls we should show
- Improve current solution with edit and delete logic
* Fix: this in template
* Fix & Test: extend tests, fix can Edit/Delete functions
* Fix: introduce new prop showOptions for task component
- Pull showOptions propr from challenge container to task itself to restrict editing for non leader of challenge users
* Fix: for group plan edit/delete tasks
* WIP(groups): quickish wins
* WIP(groups): two quick wins
1. Don't show task creation button if user is not leader or manager
2. Don't require JS confirm() for approving tasks
* fix(group-plans): allow delete from options button
* fix(group-plans): update tasksOrder when task deleted
* fix(group-tasks): dismiss notification when user takes action
* refactor(tasks): DRY out create button styling
* fix(group-tasks): sync after claiming/unclaiming
* show grabbing cursor while dragging
* 40px height search + tags button
* remove margin of task-title markdown-p-tag
* remove pointer on disabled task-controls
* show `Options` instead of `Show More`
* remove margin of checklist items
* remove space between notes and checklist
* If user's cron will happen later today, start the task yesterday.
* Added default dayStart to taskDefaults.
* Removed the need to call shouldDo twice to calculate nextDue.
* Revert "Removed the need to call shouldDo twice to calculate nextDue."
This reverts commit e1467f2fc33cfb11e6a4fc667460df6a48b69d45.
* Removed defaults from taskDefault arguments.
* Got user from $store in copyAsTodoModal.vue.
* Fixed tests for taskDefaults to include mock user.
* Fix shouldDo tests when run in GMT timezone.
* Added test to taskDefault; added utcOffset to taskDefault.
* Replaced utcOffset with zone.
* Removed erroneous import.
The default scroll sensitivity of the task columns is 30 px from the bottom of the screen. The collapsed spells drawer renders 32 px from the bottom of the screen intercepting most drag events. Increases the scroll sensitivity to double the height of the blocking element.
Also ignores the Yarn lockfile. `yarn --ignore-engines` builds successfully and tests pass with Node 10.6.0 and MongoDB 4.0.0.
* WIP(groups): add shared completion prop
Also fix an issue where the Needs Approval toggle would not read/save
correctly.
* fix(groups): save group options on task create
Also, correct count of assigned members when viewing user is among
assignments
* fix(groups): display correct messages in two places
* fix(tasks): eliminate console error related to filtering
Also localize a group plans string
* WIP(groups): implement single completion for approval workflow
* WIP(groups): Add shared completion handling to no-approval-needed flow
* WIP(groups): cover approval flow case for all-assigned
Also save new field on initial task creation
* fix(tasks): use default sharedCompletion value when creating tasks
* WIP(tests): non-working draft test
* Added completed todo to group query
* WIP(group-tasks): fix bugs, add tests
* refactor(group-tasks): deleteMany op, add more tests
* refactor(group-tasks): move shared completion handling to lib
* WIP(group-tasks): broken refactor
* WIP(group-tasks): await all the things
* Turned complete master task to save
* WIP(group-tasks): show completed
* fix(filtering): don't try to filter if no list is passed
* refactor(group-tasks): load completed to-dos on demand, not at start
* fix(group-tasks): don't double up on repeat visits
* fix(group-tasks): include brief explanation in dropdown
* fix(group-tasks): improve wording some more
* removing file that only contained a reference to a missing folder
* fixing typo
* using full dates to avoid moment warning in tests
* more typos
* sending an empty string to vue bootstrap tooltip (disabling it) if no challenge short name is set
* Client POC
We need to wrap each draggable region it its own div or else the
"draggable" element will conflict with each other. This screws up the
styling but that is totally fixable
* Ah that ref was being used after all, changing back
* Scaffold out a new callback for when we drag these things
Next is going to be the hard part: I need to save the sort order for
these to the database. I don't even know if there is a schema but hey
this is the best place to start
* Firefox caching is the problem: don't actually need the wrapper div
So I guess I should try this in chrome and see how it works then come
back to firefox and figure out what the heck is going on
* Scaffolding out our API call to save the sort order
The endpoint doesn't exist yet so we will need to add that
* Ok we are now calling our API endpoint to reorder these things
Of course it doesn't exist yet so you get a 404 when you try, but that
is ok
* Defining api endpoint, a work in progress
In particular I really had ought to use _id for these too, it appears
that the primary way we detect order doesn't even use "key" at all.
* Switching to using the pinned item UUID
This has much better results, but of course the server and client logic
don't match now. Will have to keep working on my splice to make sure
that they are the same
* I thought this would fix our server/client mismatch but it is not it
Something is really wrong with my logic somewhere, maybe I need to
update the db step?
* Moving this logic to the "user" rather than "tasks" and key off path
Path is unique and is less finiky than dealing with string comparisons
with ids. Unfortunately everything is still not working... I suppose
user.update() doesn't care about the position?
* This client code caused quite a lot of problems if you dragged fast
We don't really need it it seems, so off it goes
* Updating markup and CSS so it actually looks good.
Everything is working horray!!
I did just notice the following bug: the popover text sometimes makes it
very annoying to drag because you can't drop over it@
* Cleaning up my comments in the API section user.js
I had a lot of TODOS that are mostly done now
* Fixing a spacing code standards thing
* Turns out we never use type, so we should remove this from the API call
* Adding pinnedItemsOrder into the user schema
And disabling my call in the frontend before I do any more damage
* Halfway to using pinnedItemsOrder
This isn't working yet but it is not going to break it horribly like it
was before.
* Hooking up inAppRewards to always produce sorted information
It is suspicially working right now even though I have not added the
seasonal stuff logic yet...
* Updating the comments in user.js in movedPinnedItem
It turns out that my bandaid fix to just get the ball rolling perfectly
does what I need it to do when we have a length discrepancy. So we are
getting much closer to the final product, just need lots of testing
* Cleaning up code standards kinds of things
* Yay, this fixes the popover issue
I hope this is the right "vue" way to do things, because I tried a bunch
of other things that definately were not the right way to do it. And
this appears to work too
* ** Partial Work ** Starting tests on api call for draggable items
Doesn't work, doesn't compile so don't include in PR!
* Test failing still...
This is worth a save. The api call grabs the seasonal items too, so we
can't get away from using the common functions and calls here to get the
actual list of items
* Okay have the first test passing
Need to clean up my linter problems though
* Planning out the next two tests and fixing my format problems
* 2nd Test case written, this time with the "more" odd case
* Making sure that we didn't mess with pinned items
* Huh... this test doesn't give me the expected result
Drat, I guess I found a bug
* Throw an error when we put garbage in our api call.
Well, before we got user.pinnedItemsOrder filled with a bunch of "null"
entries which is not ideal. it still worked, but isn't this confusing
enough already?
* Cleaning up the multitude of linting problems thanks gulp :)
* Writing tests for inAppRewards.js, but something is wrong
* Fixing my linting errors in inAppRewards tests
These tests still do not run though, so they may fail and I would not
know
* Applying Negue's fixes to inAppRewards.js test
It never occured to me that we shouldn't try to reach the database while
in the common tests. Well, we shouldn't do that, we should use the
common.helpers instead. Thanks!
* update antidote display and functionality - fixes#9758 and #10160
update antidote display and functionality - fixes#9758 and #10160
update antidote display and functionality - fixes#9758 and #10160
update antidote display and functionality - fixes#9758 and #10160
* clean up / refactor
* prevent unpin of all items which don't have a pinType
* remove the double boolean casting / fix lint
* fixes#10173 - Task page search bar only searches task titles, not Notes (#10173)
* Fixing unit test: Test expect task to have note, but it has notes.
* update column.vue, getters/task.js, getters/user.js and add unittests and helpers
* add vue-test-utils pkg + unit test for column.vue
* add unit test column.vue
* update unit tests
* fix linting errors
* add tasklist getter
* add unit test + refactor for getters
* add task order sorting + update unit tests
* remove direct access to store.state.tasks
* add tag and search filter back to column.vue + unit tests
* add unit test for task order setting function
* add task filters to helper file + modify taskColumn state access to getter
* update column to get values at runtime. TODO set active filter at runtime
* add TaskColumn init state + daily-due-default
* add check for task type daily before set/reset dailyDueView
* remove unused sortBy import in column.vue
* remove unused sortBy
* pr review requested updates
* pr review clean up updates
* (ISSUE-9353) Fix pinned item alignment
- Get rid of justify-content: space-between to allow flex-start default to be used
- Add margin to direct children (item-wrappers)
* Issue-9353: Change selector to & > div instead of just > for more explicit selection of direct child divs
* Fix rewards item spacing to match Zeplin mockups
- Make sure horizontal/vertical spacing between items is 16px
- Add use of grid if supported, else use flex
* Added challenge member search to progress dropdown
* Added leave challenge modal
* Allowed editing for challenge leader only
* Pevented users from editing challenge task info
* Set default progress default to daily
* Removed reward filters from user challenge progress
* Prevented title editing on personal page
* Fixed claim/unlclaim from user task page
* Removed task from local on delete
* Immediately show unassigned bar
* Add move to group tasks
* Fixed group member count increase
* Added upgrade when group plan is canceled
* start to fix modals
* fixed cards paddings
* fix notifications not being marked as read
* add tests for reading a notification
* fixed indentation and added tests for reading multiple notifications
* register from home page using enter key
* update bootstrap-vue to 1.0.0-beta.9 - remove all individual bootstrap components and use BootstrapVue into Vue
* change modal action names from show::modal to bv::show::modal
* check if drops are undefined
* fix modal widths - sellModal now using input instead of dropbox
* upgrade to bootstrap 4.0beta
* include package-lock changes
* fix app menu dropdown position
* upgrade bootstrap to beta2 (was missing grid offset and other fixes) - refix header menu position
* fix tags popup (auto width to max not working) - fix filter panel width (adding width: 100% works until max-width)
* show hide logo on different screensize (new css breakpoints - http://getbootstrap.com/docs/4.0/utilities/display/ )
* fix package-lock?
* fix active button style / app header toggle button
* fix package-lock !
* update package lock after merge - new mixin "openedItemRows" to save the "show more/show less" in stable
* mixin naming style
* fix buyQuestModal marginTop
* fix customMenuDropdown position
* fix userDropdown items
* start updating colors for tasks controls
* finish updating controls colors
* change hoevr behavior
* change transition duration
* update color with transition
* refactor menu wip
* wip
* upgrade vue deps
* fix warnings
* fix menu
* misc fixes
* more fixes
* fix badge
* fix margins in menu
* wip tooltips
* tooltips
* fix checklist colors
* add badges
* fix quick add input
* add transition to task controls too
* add batch add
* fix task filtering
* finish tasks badges
* fix menu
* upgrade deps
* fix shop items using all the same image
* fix animation
* disable client tests until we remove phantomjs
* revert changes to tasks colors
* fix opacity in task modal inputs
* remove client unit tests from travis
* wip task dropdown
* fix z-index for task footer/header
* fixes and add files
* fixes
* bigger clickable area
* more space to open task dropdown
* droddown position
* fix menu position
* make sure other dropdowns get closed correctly
* fixes
* start to fix z-index
* draggable = false for task dropdown
* fix for dropdown position
* implement move to top / bottom
* fix push to bottom
* typo
* fix drag and drop
* use standard code
* wider click area for dropdown
* unify badge look
* fix padding
* misc fixes
* more fixes
* make dropdown scrollable
* misc fixes
* fix padding for notes
* use existing code instead of new props