Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Settings Pages UI - New Design #14262

Closed
wants to merge 146 commits into from
Closed
Show file tree
Hide file tree
Changes from 134 commits
Commits
Show all changes
146 commits
Select commit Hold shift + click to select a range
7b5568e
wip notification settings
negue Sep 10, 2022
fc5181c
fix styling in notification settings
negue Oct 2, 2022
f837cce
move site popup settings to notifications
negue Oct 2, 2022
cf222ee
Update remaining Notification labels
negue Oct 2, 2022
390f0fc
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Oct 10, 2022
2f53613
split routes for ease of dev
negue Oct 10, 2022
4c0ecc9
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Oct 30, 2022
f7787b3
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Nov 1, 2022
3915034
Working on M1 - will be reverted on full merge
negue Nov 2, 2022
8204738
first setting (username) in the new layout
negue Nov 13, 2022
23da70f
extract save / cancel buttons and the shared inlineSetting "logic"
negue Nov 13, 2022
0bae5fb
userEmailSetting
negue Nov 13, 2022
a2b510c
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Nov 14, 2022
265970c
fix lint
negue Nov 14, 2022
cd588e7
displayNameSetting.vue
negue Nov 14, 2022
9d742fd
update package-lock.json
negue Nov 15, 2022
5fd5e62
update package-lock.json again
negue Nov 15, 2022
fdbc2c0
password setting row
negue Nov 16, 2022
e25922f
rename functional components for compiler
negue Nov 16, 2022
d718153
resetAccount
negue Nov 20, 2022
4bf740c
Shared Modal Visible State
negue Nov 22, 2022
c7e40e9
delete account row
negue Nov 22, 2022
edb4271
disable save button if nothing was changed
negue Nov 22, 2022
4936121
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Nov 22, 2022
fd5cbc3
fix conflicts
negue Nov 22, 2022
5c77475
Merge remote-tracking branch 'origin/release' into negue/ui/setting
negue Nov 27, 2022
29ebd89
fix icon size + fix display name valid checks
negue Nov 27, 2022
0d1a189
language Setting + imports cleanup
negue Nov 27, 2022
bc11c0c
move shared components / mixins
negue Nov 27, 2022
69ad07d
dateFormatSetting
negue Nov 28, 2022
96dc4e4
remove console log
negue Nov 28, 2022
e1b444e
re-enable box-shadow on hover
negue Dec 6, 2022
7809384
validated text input (in/valid border color + icon)
negue Dec 7, 2022
30a6db4
hide & reset previous setting when switching to a different one
negue Dec 10, 2022
ddee94a
disable reset account button when password empty
negue Dec 10, 2022
a1d1a78
DayStartAdjustmentSetting
negue Dec 10, 2022
30d8b27
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Dec 10, 2022
9c55666
prepare header settings but still hidden
negue Dec 10, 2022
7e0a95d
Audio Theme Setting
negue Dec 11, 2022
ce0a5cf
Scroll into opened Setting
negue Dec 11, 2022
dddcfa6
fix styles
negue Dec 20, 2022
38198d7
WIP class setting
negue Dec 20, 2022
bda210c
removes username, email and display name from site.vue
negue Dec 20, 2022
494f32c
Class Setting
negue Dec 20, 2022
bef8a4c
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Jan 7, 2023
6fef3d0
check for unsaved changes when pressing cancel
negue Jan 7, 2023
1f16819
WIP fix values
negue Jan 11, 2023
428647f
refactor change class to design update + clean up old site.vue settings
negue Jan 14, 2023
89530a1
wip fix values
negue Jan 18, 2023
2bfb130
remove restore-modal and replace it with the finished fix values setting
negue Jan 30, 2023
7ffb510
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Jan 30, 2023
64f7e7a
fix compile
negue Jan 30, 2023
bec75c6
reset account + password required in api
negue Feb 5, 2023
b5be137
enable forgot password link in settings
negue Feb 5, 2023
64fb4c0
delete old modals (refactored into new settings ui)
negue Feb 5, 2023
2adfd8c
hide class setting until level 10
negue Feb 5, 2023
31edec9
move validatedTextInput.vue to shared components + fix check pos/size…
negue Feb 8, 2023
d3e15c5
open forgot password in new tab
negue Feb 8, 2023
80365e5
fix "fixValuesSetting.vue"
negue Feb 11, 2023
fed824f
fix color of gem price
negue Feb 11, 2023
98c6570
fix ul/li style in resetAccount.vue
negue Feb 11, 2023
121e748
mark audioThemeSetting as changed
negue Feb 11, 2023
ee2ff38
fix color after refactor
negue Feb 11, 2023
9c87700
fix dayStartAdjustmentSetting.vue for 0 value
negue Feb 11, 2023
8c5e722
first try with the refactored UI of Login Methods
negue Feb 16, 2023
bb14d09
remove console
negue Feb 16, 2023
85c50d5
fix(css): remove redundant formatting for a elements
Feb 16, 2023
8e4e1bc
Merge remote-tracking branch 'origin/negue/ui/setting' into negue/ui/…
negue Feb 21, 2023
25e77cb
move purchaseHistory.vue
negue Feb 21, 2023
5ed2506
size/margin for transactions
negue Feb 21, 2023
b09298f
move taskSettings.vue and add it to the settings list
negue Feb 21, 2023
3b05086
move remaining setting to generalSettings.vue - delete site.vue - sta…
negue Feb 21, 2023
b4f2236
rename folder of setting rows
negue Mar 3, 2023
0ade566
userid row
negue Mar 3, 2023
123c9b9
"Your User Data" Row instead of Page
negue Mar 6, 2023
f9833aa
API Token Row
negue Mar 9, 2023
cc4bedb
add spritely login creds message to the new api-row / redirect old ur…
negue Mar 10, 2023
1e80a7d
WIP webhook row
negue Mar 10, 2023
dec1a11
developer mode dummy row
negue Mar 14, 2023
576c80a
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Mar 14, 2023
776618d
Add new Pause Dailies Setting
negue Mar 14, 2023
1dfa5b2
developer mode
negue Mar 15, 2023
b53ccac
fix username/email setting input width
negue Mar 15, 2023
28f0220
remove blue color of setting links
negue Mar 15, 2023
bf961bc
Copied API Token Notification
negue Mar 15, 2023
f74ba97
update apple icon and size
negue Mar 15, 2023
1608484
show real class setting modal if enough gems available
negue Mar 15, 2023
42fcb20
remove balance for choosing class
negue Mar 15, 2023
24a43d0
userid tooltip
negue Mar 20, 2023
1741ddf
webhook margins
negue Mar 20, 2023
e0300e8
remove displayInviteToPartyWhenPartyIs1 setting
negue Mar 29, 2023
cc73b44
remove advancedCollapsed settings to start it opened
negue Mar 29, 2023
f49f67f
remove unused settings
negue Apr 5, 2023
b5da7cc
refactor webhook ui to use save/cancel buttons
negue Apr 5, 2023
b4904a8
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Apr 5, 2023
1f47094
delete old api.vue
negue Apr 5, 2023
9ff17fd
"fix values" use keydown event to mark as change
negue Apr 11, 2023
a79bec3
add password for other logins
negue Apr 11, 2023
0a10eb3
fix "setting new password" invalid check
negue Apr 15, 2023
73a5e5f
style / padding issues
negue Apr 25, 2023
cea13d5
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Apr 28, 2023
ad3e4d6
style fixes
negue Apr 28, 2023
7947b1c
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue May 8, 2023
95b37b3
migrate restoreValues fix to new setting component
negue May 8, 2023
9c973cc
fix selectDifficulty.vue - refactor selectList.vue
negue May 8, 2023
a56b4a4
show current class on setting panel
negue May 8, 2023
47a2189
Merge remote-tracking branch 'origin/release' into negue/ui/setting
negue May 8, 2023
48a6801
fix duplicate json entry
negue May 8, 2023
37eee14
delete account without password
negue May 12, 2023
c4b6f0c
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue May 12, 2023
f74c29a
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue May 30, 2023
6152150
fix username setting:
negue May 30, 2023
8e3b8a9
refactor currentPasswordInput.vue to use validatedTextInput.vue
negue May 30, 2023
582a2f1
mark password field of email setting as invalid on wrong password
negue May 30, 2023
3232f12
check current password valid style in "delete account" and "reset acc…
negue May 30, 2023
4497514
show notification when chaning display name
negue May 30, 2023
f9ff5e5
check password inputs and mark invalid for "password change" setting
negue May 30, 2023
6a6f55f
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Jun 24, 2023
87a4e49
show notification on username change + fix userEmail checks
negue Jun 25, 2023
aa97ed5
fix localhost externalLinks check
negue Jun 25, 2023
8b5ae17
also check for invalid arguments in the password settings
negue Jun 25, 2023
4915f2a
Hide Transactions Page again
negue Jun 25, 2023
8fbb600
saveCancelButtons.vue allow to hide the cancel part
negue Jun 25, 2023
0177b3a
move promoCode.vue to pages/settings
negue Jun 25, 2023
ec94604
applied same styling to promoCode.vue
negue Jun 25, 2023
203e961
fix notification settings
negue Jul 2, 2023
35c7530
more fixes
negue Jul 2, 2023
ccfdd9b
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Jul 22, 2023
06410b4
fix reset account texts
negue Jul 22, 2023
c105b9e
fix change password setting
negue Jul 22, 2023
4c350b0
update Bailey Notification Text + fix popover
negue Jul 22, 2023
ffbed3e
remove console
negue Jul 22, 2023
b20ea44
Split Vue.Router routes
negue Aug 9, 2023
d279af7
Merge branch 'negue/refactor/routes' into negue/ui/setting
negue Aug 9, 2023
36f7a47
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Aug 11, 2023
8c56806
fix PR comments
negue Aug 21, 2023
41cde37
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Aug 21, 2023
9ad06ea
clean up debug row for login methods
negue Aug 21, 2023
82e5fd2
fix spacing
negue Aug 21, 2023
da82bd8
remove ending
negue Aug 24, 2023
6259955
update form.scss
CuriousMagpie Aug 25, 2023
84ba44f
fix PR comments
negue Aug 29, 2023
3e16584
fix PR comments
negue Aug 29, 2023
ea8563c
Merge remote-tracking branch 'origin/negue/ui/setting' into negue/ui/…
negue Aug 29, 2023
07387fa
remove generate promoCode from ui
negue Sep 13, 2023
16d8b87
Merge remote-tracking branch 'origin/develop' into negue/ui/setting
negue Sep 14, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
666 changes: 108 additions & 558 deletions package-lock.json

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
"gulp-babel": "^8.0.0",
"gulp-imagemin": "^7.1.0",
"gulp-nodemon": "^2.5.0",
"nodemon": "^2.0.20",
"gulp.spritesmith": "^6.13.0",
"habitica-markdown": "^3.0.0",
"helmet": "^4.6.0",
Expand Down
44 changes: 38 additions & 6 deletions test/api/v4/user/POST-user_reset.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,9 @@ describe('POST /user/reset', () => {
type: 'habit',
});

await user.post('/user/reset');
await user.post('/user/reset', {
password: 'password',
});
await user.sync();

await expect(user.get(`/tasks/${task._id}`)).to.eventually.be.rejected.and.eql({
Expand All @@ -39,7 +41,9 @@ describe('POST /user/reset', () => {
type: 'daily',
});

await user.post('/user/reset');
await user.post('/user/reset', {
password: 'password',
});
await user.sync();

await expect(user.get(`/tasks/${task._id}`)).to.eventually.be.rejected.and.eql({
Expand All @@ -57,7 +61,9 @@ describe('POST /user/reset', () => {
type: 'todo',
});

await user.post('/user/reset');
await user.post('/user/reset', {
password: 'password',
});
await user.sync();

await expect(user.get(`/tasks/${task._id}`)).to.eventually.be.rejected.and.eql({
Expand All @@ -75,7 +81,9 @@ describe('POST /user/reset', () => {
type: 'reward',
});

await user.post('/user/reset');
await user.post('/user/reset', {
password: 'password',
});
await user.sync();

await expect(user.get(`/tasks/${task._id}`)).to.eventually.be.rejected.and.eql({
Expand All @@ -87,6 +95,26 @@ describe('POST /user/reset', () => {
expect(user.tasksOrder.rewards).to.be.empty;
});

it('does not allow to reset if the password is missing', async () => {
await expect(user.post('/user/reset', {
password: '',
})).to.eventually.be.rejected.and.eql({
code: 400,
error: 'BadRequest',
message: t('missingPassword'),
});
});

it('does not allow to reset if the password is wrong', async () => {
await expect(user.post('/user/reset', {
password: 'passdw',
})).to.eventually.be.rejected.and.eql({
code: 401,
error: 'NotAuthorized',
message: t('wrongPassword'),
});
});

it('does not delete challenge or group tasks', async () => {
const guild = await generateGroup(user, {}, { 'purchased.plan.customerId': 'group-unlimited' });
const challenge = await generateChallenge(user, guild);
Expand All @@ -102,7 +130,9 @@ describe('POST /user/reset', () => {
});
await user.post(`/tasks/${groupTask._id}/assign`, [user._id]);

await user.post('/user/reset');
await user.post('/user/reset', {
password: 'password',
});
await user.sync();

await user.put('/user', {
Expand Down Expand Up @@ -133,7 +163,9 @@ describe('POST /user/reset', () => {
},
});

await hero.post('/user/reset');
await user.post('/user/reset', {
password: 'password',
});

const heroRes = await admin.get(`/hall/heroes/${hero.auth.local.username}`);

Expand Down
8 changes: 0 additions & 8 deletions test/common/ops/addTask.js
Original file line number Diff line number Diff line change
Expand Up @@ -126,13 +126,5 @@ describe('shared.ops.addTask', () => {
expect(addTask(user)._editing).not.be.ok;
expect(addTask(user)._edit).to.not.be.ok;
});

it('respects advancedCollapsed preference', () => {
user.preferences.advancedCollapsed = true;
expect(addTask(user)._advanced).not.be.ok;

user.preferences.advancedCollapsed = false;
expect(addTask(user)._advanced).to.be.ok;
});
});
});
1 change: 1 addition & 0 deletions website/client/.eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ module.exports = {
'import/no-unresolved': 'off',
'import/extensions': 'off',
'vue/no-v-html': 'off',
'vue/no-mutating-props': 'warn',
'vue/html-self-closing': ['error', {
html: {
void: 'never',
Expand Down
10 changes: 10 additions & 0 deletions website/client/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,3 +55,13 @@ in a separate `.add('function of component', ...`
### Storybook Build

After each client build, storybook build is also triggered and will be available in `dist/storybook`

### Vue Structure

Currently pages and components are mixed in `/src/components` this is not a good way to find the files easy.

Thats why each changed / upcoming page / component should be put in either `/src/components` or in the `/src/pages` directory.

Inside Pages, each page can have a subfolder which contains sub-components only needed for that page - otherwise it has to be added to the normal components folder.

At the end of all the changes - the components should only contain components needed between all pages
Loading
Loading