Commit Graph

57 Commits (79b27d46f4183f3e0167232e01ac83e4dc2a97cf)

Author SHA1 Message Date
Julian Lam 70652ad480 docs(openapi): v3 spec for new user export routes
Barış Soner Uşaklı be6bbabd0e feat: ability to mute users
new mute privilege
Julian Lam d098e26f82
User Email and email validation API ()
* feat: wip user emails api

* fix: allow admins with manage-users access to email confirmation api as well

* fix: wrong route path

* docs: openapi spec
Julian Lam 2fe53cf849 feat: `GET /api/v3/chats/:roomId/messages`
Julian Lam aaa6f752d0 refactor: put message api calls behind `/messages` prefix,
Julian Lam fe17c94c35 feat: `DELETE /api/v3/chats/:roomId/users` and `DELETE /api/v3/chats/:roomId/users/:uid`
Julian Lam 6eea6451d2 feat: `GET /chats/:roomId/users` [breaking]
Julian Lam d5fd098ecf feat: `POST /chats/:roomId/:mid` and `DELETE /chats/:roomId/:mid`
Julian Lam 55e68e2fd5 docs: openAPI documentation for routes
Julian Lam 40b4544e70 feat: `POST /api/v3/chats`, chat room creation, plus openAPI docs update
Barış Soner Uşaklı cc3f82bc83 breaking: remove socket.emit('admin.categories.setPrivilege') and socket.emit('admin.categories.getPrivilegeSettings')
Julian Lam 5b42b6b369
API route for returning tracked analytics keys ()
* feat: track metrics saved by NodeBB (and assoc. plugins), 

* feat: route to retrieve analytics keys, closes 
Julian Lam 0a41741b7e refactor: deprecate picture update socket call, new API routes for picture update
gasoved 3df79683f5
feat: create folders in ACP uploads ()
* feat: create folders in ACP uploads 

* fix: openapi

* test: missing tests

* fix: eslint

* fix: tests
Barış Soner Uşaklı 358ad74054 feat: closes , allow event deletion
fix: topic events appearing before necro messages
feat: add move topic event
feat: add ability to delete specific topic events via events.purge
Julian Lam cc6cbfcdc4
Flags API ()
* feat: new routes for flags API

+ flag get
+ flag creation, migration from socket method
+ flag update, migration from socket method
* fixed bug where you could not unassign someone from a flag

* feat: tests for new flags API

added missing files for schema update

* fix: flag tests to use Write API instead of sockets

* feat: flag notes API + tests

* chore: remove debug line

* test: fix breaking test on mongo
Julian Lam 6ef0c8e950 docs: update API docs to better outline authentication options
Julian Lam c1b3079d93 feat: category privilege API routes
closes 
Julian Lam 0804d54759 spec: schema docs for new ACP dashboard subpage routes
Julian Lam ad54b174a4 test: topic reordering tests
gasoved 72b050b4a8 test: post diff deletion tests
Julian Lam dc84559d0b feat(topic-events): topic events GET route in write API
Julian Lam 966c4117ec refactor(api): post move to write API
Julian Lam e118e59ce0 refactor(api): post diffs to use write API
Julian Lam 0da2843281 feat(api): schema definition for new credential checking route
Julian Lam 32e36f7b2e feat(api): group ownership API route, switch client-side to use API route
Julian Lam c079051b19 fix: errors in write-api schema
Julian Lam 8e5a413e4e chore: minor reordering of lines
Julian Lam d6de925348 feat: add missing schema for category update and deletion
Deleted CategoryObj component, since CategoryObject is used more
Julian Lam eef052c1bf fix: add missing token generation route to write api spec
Julian Lam 878ee06715 refactor: schema backreference test to use map instead of reduce, properly check write-api routes
Julian Lam 5950683316 feat: closes , tests for topic thumbs routes, write API schema
Julian Lam a0b7a82350
feat(api): account deletion routes for the Write API ()
* feat(api): account deletion routes for the Write API

* refactor: rewrite client-side calls to account deletion to use api

* style: apply DRY
gasoved 3ccebf112e
feat: invites regardless of registration type, invite privilege, groups to join on acceptance ()
* feat: allow invites in normal registration mode + invite privilege

* feat: select groups to join from an invite

* test: check if groups from invitations have been joined

* fix: remove unused variable

* feat: write API versions of socket calls

* docs: openapi specs for the new routes

* test: iron out mongo redis difference

* refactor: move inviteGroups endpoint into write API

* refactor: use GET /api/v3/users/:uid/invites/groups

Instead of GET /api/v3/users/:uid/inviteGroups

* fix: no need for /api/v3 prefix when using api module

* fix: tests

* refactor: change POST /api/v3/users/invite

To POST /api/v3/users/:uid/invites

* refactor: make helpers.invite awaitable

* fix: restrict invite API to self-use only

* fix: move invite groups controller to write api, +tests

* fix: tests

Co-authored-by: Julian Lam <julian@nodebb.org>
Julian Lam bcccb331db docs: openapi schema for user/group exist check, session deletion
Julian Lam aa8faf58a0 refactor: remove /users/{uid}/settings/{setting} route
@baris Also, I am now allowing the following properties to be saved in User.saveSettings:
- categoryTopicSort
- topicPostSort
- setCategorySort
- setTopicSort
Julian Lam b092f65d95 fix(writeapi): tests
Julian Lam c26f2b6599 feat(writeapi): user settings API
psychobunny 0e0f1506d2 fix: update server param to /api/v3
psychobunny c68653d035 fix: typo
psychobunny 7aa4d104af fix: testing openapi write tests
psychobunny 16873800a6 fix(openapi): users.yaml
psychobunny 54e6003a7c fix: test fix for write API
need to rewrite users.yaml to fix properly
psychobunny dbb4cfe9d6 style(openapi): break write API routes into individual files
psychobunny ffac3c7902 style(openapi): move schemas and responses out of write.yaml
Julian Lam f870721fca feat(writeapi): file deletion route
Julian Lam a55b381791 feat(writeapi): admin settings update route
Julian Lam 2928b9b87a style: updates to openapi files
Julian Lam 0973feea16 feat(writeapi): post bookmarking
Julian Lam 9942c248eb feat(writeapi): post voting