All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
0.5.2 (2022-10-06)
- Migrate faker breaking change (f49f39d)
0.5.1 (2022-10-06)
-
- MessageType type to rollMatch & rollEmote (1ac1599)
- BattleLogs: BattleLogs available on website. (f88ed19)
- Leaderboards: Top 5 warriors leaderboard (0e9a8b5)
- Profiles command. (a158290)
- Add battle emote level to output message. (e3fd04f)
- Add extra user get attempt for LeaveChat (cfc1611)
- Add is-clickable to emote boxes. (93a69a1)
- Add rollEmote for when rau fails. (9eb4e42)
- Add type checks for statistics object. (d6490fa)
- Allow emotes to be traded on any profile. (decb139)
- BattleLogs: Add statistics. (04de48d)
- durstenfeldShuffle no longer mutating. (87d292f)
- For some reason defaultValue isn't set. (75cb0b1)
- Give prefilled new entries for new profiles. (db50dd5)
- Leaderboards: Just use an if check (b51ae29)
- Leaderboards: Show only top 5 battle users. (738ee53)
- Leaderboards: web.userPosition typeof number (c487523)
- Linting issues. (8253830)
- Make sure opponentHPs is always filled. (5fac954)
- More battle refactoring. (390c17f)
- More polish for battle message. (d17d35a)
- npm run build-js Index -> index (4a76c82)
- Oopsie, order object disappeared. (8cdd1f0)
- Redundant migration detected (49f1254)
- Remove unused arguments (8374a84)
- Reorder pajbot check logic. (461201f)
- Reset battle emote health on rolls. (32e3902)
- Reword match whisper. (7b54acc)
- Send result battle message before leveling up (1d8029e)
- Show match's user actual favorite streamers. (c8fd47a)
- Something silly (0cbd530)
- Update copyright notice. (bf54554)
- uppercase to lowercase, smh Windows (8edd836)
- Use correct string for displaying level. (f60cee0)
- View: Lowercase index.js & Add version to qs (3df263b)
- Views: Add toFixed to next experience number. (6857c22)
- Views: Overflow hidden on avatars. (9e58d10)
- windows stuff (8a96a41)
0.5.0 (2022-04-16)
- Add BATTLE FEATURE
- rollMatch has new required fields.
- Update to recent Adonis.
- Attempt to upgrade to latest Adonis
- Add /channels HTTP end-point. (06bb22f)
- Add BATTLE FEATURE (afc0e92)
- Add diffDate for formatting cooldowns. (11532f7)
- Add disclaimer in footer. (71848c4)
- Add emote generation. (64826d9)
- Add Pajbot banned phrases check for bio. (945b6fd)
- Add Pajbot2 checks. (1857b67)
- Add readableErrors view global. (feb35bc)
- Add themes to profiles. (72aa7cd)
- Disallow banned users from registering. (0b73275)
- Export durstenfeldShuffle from Handler. (701900f)
- GiveEmotes command. (6244d6c)
- Handle registration via bot. (e3bbd51)
- Leaderboards (9e47364)
- No matching with non-customized profiles. (43b172b)
- Skip some @@more text if not customized. (bcead99)
- Split handlers into own files. (95d75de)
- Tell user to customize their profile. (ac31f0e)
- Update to recent Adonis. (7cec6a7)
!var === 0
->var !== 0
(f768341)- Actually fix migrations. Sorry. (faa757b)
- Actually fix phantom profiles. (a20f3b0)
- Actually, actually fix. (f997377)
- Add emote images to /emotes (637d9c8)
- Add missing types from befriendlier-shared. (27e058d)
- Add more clarity on disabled profiles. (16a066c)
- Add OG description. (7a8e1d6)
- Add redundant toLowerCase() in client js (3a01547)
- add robots.txt (a40459e)
- Allow new profiles to swipe on creation. (7e1e996)
- Allow profile color to be changed. (9e792bd)
- Anonymize createdAt fields on deletion. (671d0ff)
- Anonymize userId on profile deletion. (06555de)
- Another attempt to fix error pages. (6608415)
- Attempt to fix 404 page. (dc28e0c)
- Attempt to load new data from database. (05ccbdf)
- Attempt to upgrade to latest Adonis (dcbb41b)
- BotEmote -> Emote, Emote -> EmoteModel (4e7b51d)
- BotEmote -> Emote, Emote -> EmoteModel (d2a77aa)
- Bug, compared string to number. (9303546)
- Clarify. unmatch -> skip/decline (d4e1c1f)
- Comment out policy change alert. (3eda93f)
- Default secure cookies (3bb472f)
- Deleted profiles are now anonymized instead. (599c633)
- Deprecation warning get() -> qs() (af28786)
- Disabled profiles should not be interactive. (9ad5d92)
- Don't always return emote count when trading. (421febd)
- Don't roll profiles with non-existent users. (df15319)
- Fav. users createdAt updates now on register (af5ed44)
- Further fixes to update project to new Adonis (2fd81c8)
- Hide display name if it's the same as login. (a1adba9)
- Hopefully no more "Hello!" matches. (1a79e73)
- Ignore capitalization on adding fav streamers (5a4263f)
- Ignore roll if emotes || bio not been edited (858bcb8)
- Incrementing existing emote on rollEmote (10e0bcf)
- is-rounded when streamer mode disabled. (56c1437)
- Linting (3e56505)
- Linting & Move more stuff to Handler. (78e7e4d)
- Linting ChatsHandler and DefaultHandler. (8c7a97f)
- Linting RollMatchHandler (867c812)
- Make sure database sets correct dates. (b36262c)
- Make sure docs adhere to markdownlint standards (b054814)
- Make sure og:title gets web.title value. (9551882)
- Make sure the anonymization is saved. (881c8b7)
- Make sure to load favoriteStreamers properly. (9a13c13)
- Make sure view variables are consistent. (bf34a6b)
- Make twitchAPI public (bf0e490)
- Matches no longer return as an empty object. (ba9e502)
- Message repetition and linting. (d81684a)
- Might as well set the entire error as any. (3f60057)
- More linting (bc031a9)
- Move profile roll filtration to rollMatch. (5cef607)
- Move rollEmote from Unmatch to Mismatch. (91bb725)
- Multiline the buttons in updateUser.edge (1ae1712)
- New Channels statistic. (1f37958)
- No more phantom profile rolls. (698f753)
- Only send matched users on data request. (3fefc1a)
- Persist bio & color after validation fail. (aeb3ce3)
- Preload favoriteStreamers to access it. (806c0fd)
- preload favoriteStreamers. (101bded)
- profile > match.profile (26d9d99)
- Reduce message spam by sending some whispers. (95e79b5)
- Reduce one directory for supersecret in Ws. (6cca189)
- Reduced leaderboard caching to 1 hour. (eeb8847)
- Remove adonisjs/env as an adonisjs provider. (2354d76)
- Remove prefix, since it's customizable by bot (45d3ddb)
- Removed .plus() (8f31ff9)
- Removed redundant div. (2424c45)
- removeHost foundChannelBot returns undefined (29a0318)
- Rename migration files. (bdd67cd)
- Reset emotes before appending. (151ea5a)
- return -> continue in for loop. (7e6e938)
- Return data if profile editing ratelimited. (bf600f4)
- rollMatch has new required fields. (6823928)
- Say "Global" instead of relaying channel name (d69ca18)
- secure-json-parse instead of @hapijs/bourne (f73c516)
- Send only relevant data to user on request. (1079d2b)
- Send some whispers instead. (70eead1)
- Show all matched profiles properly. (e483acd)
- Show disabled profiles (cb15b2b)
- Tell users to customize emotes & bio. (24e091b)
- twitchID deletion now uses yeast module. (dc87f9c)
- Typo prevented emotes from being collected. (1e00e52)
- Typo themed-dark -> themed-text (87fc962)
- typos & eslint rule change (e108e41)
- Update breaking changes. (ab0100b)
- Update luxon, hour -> hours (913bb29)
- Update route() to new Route.makeUrl API. (6f22b81)
- Update shared to make PajbotAPI work. (d2bc7a3)
- Update splash statistics every 5 minutes. (9f57443)
- Use naturalSort for migrations. (91af579)
- Use proper channel. (a1a49c8)
- Use the returned color on profile validation (080fc06)
- Validate faulty info when editing profile (cf174f6)
- View deprecation warning. (aa307f4)
0.3.3 (2020-08-17)
- Add BIO & Fix EMOTES (5ed3cff)
- Add experimental PerspectiveAPI support. (697f02c)
- Allow user to see bio & emotes. (2e811fd)
- Escape potential pinged users in ROLLMATCH (393e92f)
- add space (dc9d80f)
- Add update script. (000b1f2)
- Allow global profile bio to be changed. (a2cb223)
- Allow rules accidentally allowed external access. (73b3e43)
- Allow server to handle global requests. (fff9ee8)
- Allow user to download user data. (06c7c98)
- Change start script. (2f5154a)
- Don't leak login details in URL. (065d650)
- Don't ping favorite streamers. (2025545)
- Don't show "cached" users as new users. (f01f9e5)
- Handle LEAVECHAT with empty userTwitch vars. (53adaa4)
- Ignore pnpm-lock.yaml (becdf5c)
- Initialize script fix. (4bbfbfd)
- Make sure the timer to wait for bot login starts. (36bd845)
- Make validation rule compile as asynchronous. (edef9b1)
- Make Ws have its own Twitch instance. (9c66a23)
- More verbosity. (3e6db80)
- noed -> node (575d531)
- Potential fix for BIO response. (e99679c)
- Queue no longer throwing errors. (94bbd77)
- Ratelimit profile updating to 1 minute. (f3aa900)
- Refactor bot login. (b370699)
- Remove reject from arguments. (069d394)
- Removing favorite streamers in total count. (acd8b16)
- Revert accidental uploads. (afa022f)
- Send websocket back on BIO request. (5ffe395)
- Sort profiles by ascending with profile.id (fb7c2fb)
- Splash now correctly displays real users. (5d66e14)
- test (39822d3)
- Test adding middleware to register end-point. (f5f8ee1)
- Users need access to register URL. (1c32f8a)
- LEGAL: Update Terms of Service & Privacy policy (f4f267d)
- View:
is-rounded
on favorite streamers icon (d447d38) - View: Change commands prefix. (ffb8a18)
- View: Update commands & Clarify profiles. (1e26cc3)
- Ws: Also validate token. (a2c998d)
- toxic -> TOXICITY (f100e2d)
- Update README. (17d0197)
- Views: item -> emote (1d492f1)
0.3.1 (2020-08-10)
- build-server instead of build (ec8acba)
- Should now work with postgresql. (89f380c)
- CSS: Use local font. (5e25cf0)
- LEGAL: Updated date for Privacy Policy. (10f2909)
- Replace example.com with actual website URL. (0bf438d)
- View: Move footer in error to proper place. (c5ea163)
0.3.0 (2020-08-10)
- Moved TwitchProvider logic to AppProvider.
- Add parcel bundler & update packages. (de993fe)
- Enable healthChecks for db. (b9ef963)
- Moved TwitchProvider logic to AppProvider. (e10fc9e)
- Now disconnects websockets without userAgent (62561a3)
- The big #$!? update. (37ee515)
- Use parcel bundler for frontend javascript. (34863b1)
- Twitch: Added 2 new env variables. (801cc40)
- Twitch: Move redirectURI string to env file. (b5c84bc)
- User: Add
host
column to model. (9cb928e)
- Fix initialize not existing, it exists now. (4be99ba)
- Will now "build" resources. (6a72710)
- Add LOG_LEVEL to .env.example (28bba5a)
- emote.url changed to emote.id. (bde3049)
- Formatting files. (63e2748)
- Moved dev login logic to separate function. (57cf13d)
- Moved Emote interface to shared module. (1efd4de)
- Moving matches list to its own function. (0170f16)
- nextRoll -> nextRolls (b3d7bab)
- Now anonymizing profiles on user delete. (71d445d)
- frontend: Add navbar toggle logic. (fd57387)
- frontend: Improve navbar & footer. (1a2abb3)
- Added & Used ensureIsOfType for frontend. (f9be75d)
- Fix eslint inclusion for resources directory (bfac947)
- No longer building the resources folder. (9d2f020)
- One consistent gitignore file in all projects (c0f11e9)
- Remove comments from json file. (190f5ce)
- Update befriendlier-shared related code. (934a261)
- Update code to the new befriendlier-shared. (89ba791)
- Users are now anonymized on deletion. (712fd09)
- Healthcheck: No longer checking all db health (3e968ee)
- Seeders: Initialize.ts should no longer error (d335db9)
- Splash: Use models for querying. (6cf7dd4)
- Twitch: Log errors now slightly more readable (817aa84)
- Ws: Fix ws termination log. (bc5d087)
- Typos. (cfee85d)
- Update eslintrc file. (1e7ee83)
- Ws: Fix Match.ts to use new shared types. (8a08467)
- Rename instances of Twitchr to Befriendlier. (268091f)
- Twitch: Moved env logic to config file. (ca539d8)
- Move files to root directory.
- Move files to root directory. (70ac504)
- README: Fix links & cross Todo items. (3c0fe87)
- Websocket: Fix import reference to module. (fed2847)
- Remove
/ws
end-point.
- config: scopes & redirectURI now in a config (c160167)
- package: Add new modules. (ba792b5)
- Profile: Add /paginate end-point. (921cb6a)
- Profile: Check if users are matched (2847858)
- Profile: New Match columns. (9b09e1f)
- splash: Now shows updated statistics. (f732a24)
- validation: Validation schemas now cached. (cf76367)
- Websocket: Added prototype websocket logic. (aa0cbcc)
- gitignore: Ignore pnpm-lock.yaml (f401ffd)
- lint: Lint tsconfig. (f081bcc)
- middlewares: Use luxon math (3477db0)
- Seeding: Add new user to test banned users. (94fa520)
- Twitch: Allow Twitch module to throw errors. (b8e0a50)
- Refactor dev error when seeds not run. (7a8c475)
- Remove
/ws
end-point. (a0795c5) - splash: Typo, hours when it should be minutes (bfefe63)
- This was supposed to be uploaded with c1601679cab7cabf0d9a9dbfba6874193186493f.
- refactor(Twitch): Updated Twitch.ts
- This was supposed to be uploaded with f732a247a36af36aa327acb0dfbd821f4c93600a.
- refactor(splash): Updated splash template
- fix(splash): Typo, hours when it should be minutes
- Splash page may contain more statistics in the future, this should be okay for now.
- feat(splash): Now shows updated statistics.
- Changed
1_favorite_streamer_lists
's &1_matches_lists
'screated_at
&updated_at
default value behavior.- fix(migrations): Now using toSQL() instead of toFormat().
- chore(dependencies): Update dependencies.
- devdependencies
@typescript-eslint/eslint-plugin
changed to^3.7.0
.eslint
changed to^7.5.0
.eslint-plugin-adonis
changed to^1.0.14
.eslint-plugin-import
changed to^2.22.0
.pino-pretty
changed to^4.1.0
.sqlite3
changed to^5.0.0
.typescript
changed to^3.9.7
.
- dependencies
@adonisjs/auth
changed to^4.2.4
.got
changed to^11.5.1
.pg
changed to^8.3.0
.phc-argon2
changed to^1.0.10
.
- devdependencies
- Renamed template global from
twitchAuth
totwitchAuthURL
inAppProvider
for clarification.- refactor(AppProvider): Renamed template global.
- Twitch script now uses the scopes & redirectURI provided in the config under
config/twitch.ts
file. Also moved logic fromAppProvider
's template globaltwitchAuth
toTwitch
as it's more appropriate to handle all Twitch related logic in one file.- feat(config): scopes & redirectURI now in a config
- feat(TwitchProvider): Now uses new Twitch config.
- feat(Twitch): authorizationURL now parses url.
- refactor(AppProvider): Using Twitch.authorizationURL instead.
- In the middlewares
RefreshTwitchToken
&ValidateTwitchToken
the refresh dates are now next instead of last. This means we expect the values to be in the positive when diffing until the next date is hit.- fix(middlewares): Use luxon math
- fix: Refactor dev error when seeds not run. Will do a full DRY run later.
- feat(validation): Validation schemas now cached.
- fix(public/js/app): No longer shows "I accept" if already accepted.
- docs(AuthController): Clarified comments.
- From here and onwards, conventional commits 1.0.0 will be used and changelogs will now contain full commit hash and no dates.
- Merge pull request #1. Bump lodash from 4.17.15 to 4.17.19 in /web.
- WIP: Prototype websockets implemented. Only for bot-to-server communications.
- Updated README.md with more TODOs.
- Users now have to go through Privacy Policy & Terms of Service to be able to register/login.
- Added a simple
Cookie
class toapp.js
. For dealing with cookies on the front-end. - Added
setToSCookies()
function toapp.js
.
- Added
seed
npm script. This will seed the database with development data. - Added
r:m:s
npm script. It will rollback, migrate and then seed the database all-in-one command. AuthController.register()
whenNODE_ENV=development
will now make all users who try to login use the "Test" account that is provided in theDevelopment
database seed.ProfilesController.read()
will no longer preload ALL matches, and will instead only query 10 matches.- Since all matches are no longer preloaded, things have now been refactored when trying to retrieve someone else's profile.
- Removed various redundant comments in
ProfilesController
- Major refactoring done to
ProfilesController.read()
due to refactoring of Profile modelmatches
relationship changing into other Profiles. - Changed how a profile is sent to front-end. Every matched user will now have 2 variables:
user
&profile
. - When trying to view someone else's profile, backend will now query the
matches_lists
table instead of how it used to work due to refactoring of Profile model. guest
variable now not sent to front-end, instead the front-end uses conditional check to see if user should haveupdateProfile.edge
template shown.- Fixed bug where when deleting profile, users that matched with this profile wouldn't have their record of the deleted profile deleted as well.
- Refactored
ProfilesController.delete()
to work with new Profile model. - WIP: Added
ProfilesController.matches()
to send matches for pagination purposes. Not implemented in front-end yet, however! - Fixed bug in
UsersController.update()
when checking banned users. Missed theawait
prefix for the promise. - Changed
UsersController.update()
due to refactoring of the Profile model. newFavoriteStreamers
variable now sorts byupdatedAt
to make sure you don't add duplicate users if they happen to have the same User modelname
value.- Fixed bug in
UsersController.delete()
where profiles who matched with you weren't deleted. - Added missing
createdAt
field in BannedUser model. - Profile model refactored.
chatId
is nowchatUserId
.global
field has been removed:chatUserId === 0
is now the check for global profiles.matches
relationship is now to other Profiles instead of Users, fields have been changed to reflect that. Thematches_lists
will now also returnuser_id
andmatch_user_id
aspivotColumns
. - Fixed timestamps for
favorite_streamer_lists
schema. - Changed
matches_lists
schema to reflect refactoring changes done to Profile model.profile_id
equals the parent profile's id.match_profile_id
equals the related profile's id.match_user_id
equals the related profile's user's id. Timestamps now work, too. - Changed
profiles
schema to reflect the refactoring changes.chat_id
is nowchat_user_id
. - Added development seeder, under
database/seeders/Development.ts
. Will fill the database with development data, for debugging purposes. TwitchProvider
now appends AdonisJS/Logger to theTwitch
instance.- Changed
ev.target
toev.currentTarget
inapp.js
due to HTML bubbling. - Added
displayToast()
toapp.js
. For creating toast messages in the front-end javascript. - More implementations done to
updateProfile.js
. As well as changingev.target
toev.currentTarget
. Matched users can now be deleted via front-end. - Changed
ev.target
toev.currentTarget
inupdateUser.js
due to HTML bubbling. - Removed stray
is-rounded
classes in profile.edge template. - Favorite streamers' list in profile.edge template will now display User model
displayName
as well asname
if the two do not match or otherwise only displaydisplayName
. This is for users who have non-latin characters in their display name. - Changed the conditional in profile.edge from
!guest
toprofileUser.id === user.id
to check whether user owns said profile. - Removed debugging stuff from profile.edge template.
- Changed profiles.edge template conditional to reflect changes done to Profile model. As well as adding
level-item
classes for consistency. - Changed layout of user.edge template. Will now display the commands.edge and updateUser.edge template as columns in desktop screens (Side-by-side).
- Changed updateProfile.edge template to reflect changes done to Profile model.
- Changed updateUser.edge template to reflect changes done to Profile model.
- Changed header sizes in commands.edge template file. They're now smaller.
- Added matches.edge template file to show profile's matched profiles.
Twitch
now uses AdonisJS/Logger instead ofconsole.error()
.
profile.edge
template file changed. Will now no longer display login (User modelname
column) if it's the same as the display name (User modeldisplayName
column).- Fixed bug in
UsersController.refresh()
where name was set todisplay_name
value from Twitch API instead oflogin
value from Twitch API.
- Updated README.md to reflect changes.
- Added validationRules file to
adonisrc.json
file so that it can properly preload file. - Chore:
package.json
updated.- devdependencies
@adonisjs/assembler
changed to^2.1.3
.@typescript-eslint/eslint-plugin
changed to^3.4.0
.eslint
changed to^7.3.1
.eslint-plugin-adonis
changed to^1.0.12
.
- dependencies
@adonisjs/auth
changed to^4.2.2
.@adonisjs/core
changed to^5.0.0-preview-rc-1.9
.
- devdependencies
- Refactored flash messages in
AuthController.register
andAuthController.logout
. - Added
HealthChecksController
for checking service health. WIP: Will eventually also include health data about the bot. - More code readability in
ProfilesController.read()
. - Refactored flash messages in
ProfilesController.read()
. - Fixed bug where a guest user wouldn't see the
favoriteStreamers[]
for said user. - Added
ProfilesController.update()
. Profiles can now be edited. - More code readability in
ProfilesController.delete()
. - Refactored flash messages in
ProfilesController.delete()
. - Implemented
ProfilesController.unmatch()
. While end-point can be accessed, there's no way to access it via front-end. - More code readability in
UsersController
. Moved imports around. - Changed validation method for
UsersController.update()
. Now uses AdonisJS validation module. - Refactored flash messages in
UsersController.update()
. - Added banned user check for
favoriteStreamers[]
. - Added flash message for trying to add banned users to
favoriteStreamers[]
. - Removed
Twitch.refreshToken()
fromUsersController.update()
. This is now handled in theRefreshTwitchToken
middleware. - More code readability in
UsersController.update()
. Changed variable names fromi
touser
in amap()
andfilter()
. Added conditionals (Example: value is not undefined) instead of if statements forstreamerMode
andglobalProfile
. - Will now no longer try to add to
favoriteStreamers[]
ifnewFavoriteStreamers[]
is empty. - Refactored flash messages in
UsersController.delete()
. - Refactored flash messages in
UsersController.refresh()
. - Removed
Twitch.refreshToken()
fromUsersController.refresh()
. This is now handled in theRefreshTwitchToken
middleware. - Fixed edge (Adonisjs/Edge view template engine) deprecation errors in the default exceptions handler under
App/Exceptions/Handler.ts
. - Refactored flash messages in
Auth
middleware. - Added
RefreshTwitchToken
middleware. Will refresh Twitchaccess_token
every 1 hour if trying to access HTTP Controllers (App/Controllers/Http) behind it. Usestart/routes/
to find out which end-point is using which middleware. - Added
ValidateTwitchToken
middleware. Will validate... =/= See above. - Added BannedUser model for dealing with banned users.
- Removed serialization in Profile model for column
color
. Profile model columncolor
now has#
in the database by default. - Changed serialization for
favoriteStreamers[]
. The field is serialized intofavorite_streamers
for consistency. - Fixed eslint issues in
contracts/events.ts
- Added validator contract for typescript type checking.
- npm run migration:rollback is required for this update! This will irreversibly delete all user data! Hopefully for the last time during development.
- Migration file
1_profiles.ts
has been changed to allow#
for Profile modelcolor
column. This is for validation purposes. - Migration file for banned_users now exists.
- Changed migration file name from
1592771278779_users.ts
to2_users.ts
due to issues with migration order. - Made the "Unblur" text optional on blurred elements with the new
data-blur-text
dataset. - Added
initToastButton()
to allow the toast notification to be closed. updateUser.js
has been refactored to work with the newfavoriteStreamers[]
.favoriteStreamers[]
no longer returns a string. It is now returned as an array on the back-end.- Added toast notification stylesheet. It's mostly based on
@rfoel/bulma-toast
. - Moved around elements in
core.edge
template and added Open Graph Protocol fields. core.edge
template now contains theflashMessages()
as it has been changed into a toast notification.- Added
privacy.edge
template & page. - Profile now shows off
favoriteStreamers[]
andfavoriteEmotes[]
. - Added footer to profile page.
- Removed flash messages from the
profiles.edge
template. - Added footer to profiles page.
- Removed flash messages from the
splash.edge
template. - Added
terms.edge
template & page. - Removed
inspect()
inuser.edge
template as we're pretty much done with its implementation. - Renamed and reformatted
not-found.edge
template tonotFound.edge
template. - Renamed and reformatted
server-error.edge
template toserverError.edge
template. - Fixed a bug in
updateProfile.edge
where user would submit changes to wrong end-point by not appending theid
parameter. - Renamed
#profile
to#profileSettings
inupdateProfile.edge
template. - Removed flash messages from the
updateProfile.edge
template. - Added validator flash messages for
updateProfile.edge
template. - Renamed
#user
to#userSetttings
inupdateUser.edge
template. - Removed flash messages from the
updateUser.edge
template. - Added validator flash messages for
updateUser.edge
template. favoriteStreamers[]
avatars are now rounded.- Refactored how
favoriteStreamers[]
are rendered inupdateUser.edge
template. - Changed global profile selector into checkbox.
- Changed global profile help text to reflect changes.
- Changed streamer mode selector into checkbox.
- Changed streamer mode help text to reflect changes.
- Added
flashMessages.edge
underincludes
folder. - Changed how footer is displayed by making the links into buttons.
- Navbar will now display even if you aren't logged in, but with "Logout", "Profiles" and your profile avatar missing.
- Removed version number from
user-agent
header sent to Twitch insrc/Twitch.ts
. - Added
TwitchValidateBody
for use with the newTwitch.validateToken()
function. Twitch.requestToken()
now asks foruser_subscriptions
scope. It's a v5 scope, not sure it actually works in Helix.- Changed overload for
Twitch.getUser()
. Should now properly check whether returned value is of array or just a singleTwitchUsersBody
. - Fixed bug in
Twitch.refreshToken()
. The request to refresh token is to be done asPOST
and notGET
. - Added
Twitch.validateToken()
function inTwitch
. For use in theValidateTwitchToken
middleware. - Added
RefreshTwitchToken
,ValidateTwitchToken
named middleware to kernel file. - Added /health, /privacy, /terms to routes file.
- Added
hexColorString
validation rule for Profile modelcolor
column. - Added
validTwitchName
validation rule for User model,favoriteStreamers[]
's User model name, manyToMany relationship. - Added
ValidateTwitchToken
,RefreshTwitchToken
middleware toUsersController.update()
andUsersController.refresh()
.
- Fixed
streamerMode
for profile avatar image. - Removed redundant comment in
ProfilesController.read
. - Added newline to .env.example file and .gitignore file.
- Added comment to .env.example file.
- Added value to change hash driver. Keep in mind, no hashing in use yet.
- Ignoring public/css folder, this can be built with
npm run css-build
. - Changelog now includes dates for each commit.
- Added flash message for malformed profile parameter.
- Removed
badRequest
response for malformed profile parameter. - Added flash message if chat owner for profile doesn't exist. This shouldn't happen, ever, anyway. /shrug
- Removed
partialRequest
response if chat owner for profile doesn't exist. =/= See above. - More code readability for using
toJSON()
when returning models for profiles. profileUser
is now used for both visiting guest users as well as owner of said profile.- Moved flash message if user does not have access to said profile in code.
- Added flash message for when profile does not exist.
- WIP: Profile update.
- Fixed bug for profile deletion. Matched users list are now also deleted.
- More code readability for
UsersController.update
by changingmakeGlobalPublic
request body totoggleGlobalPublic
. - Added
toggleStreamerMode
toUsersController.update
request body. - Fixed capitalization in flash message for when a Twitch username is malformed.
toggleStreamerMode
now toggles blur for sensitive data on the website.- Fixed text in flash message for when refreshing Twitch data. Now clarifies that your Twitch data has been refreshed.
- More code readability for
Middleware/Auth
by sending fullctx
toAuth.authenticate()
. - Added flash message for when user tries to access content that requires authentication checks.
- Service will now try to redirect you after login if you had requested content that required authentication checks. This may be buggy. Needs testing.
Middleware/Redirect
is now implemented. =/= See above.- User model now has
streamerMode
. - Updated cors config file.
- Updated hash config file.
- Hashing is now
argon
by default. adonisjs/core reference. - Added a new user schema for migration. Will add
streamerMode
to all users in database whennpm run migration:run
is used. - Chore:
package.json
updated.- devdependencies
@typescript-eslint/eslint-plugin
changed to^3.3.0
.eslint
changed to^7.3.0
.eslint-plugin-import
changed to^2.11.0
.typescript
changed to^3.9.5
.
- dependencies
@adonisjs/auth
changed to^4.2.1
.@adonisjs/core
changed to5.0.0-preview-rc-1.6
. (Last working version during development)@adonisjs/lucid
changed to^8.2.2
.@adonisjs/session
changed to^3.0.4
.@adonisjs/shield
changed to^3.0.4
.@adonisjs/view
changed to^2.0.7
.bulma
changed to^0.9.0
.got
changed to^11.3.0
.- Removed
node-fetch
. pg
changed to^8.2.1
.[email protected]
added.
- devdependencies
- WIP: Added app.js
- WIP: Added imagePreview.scss
- Changed style.scss dimensions variable. Will now include 300x300, for use in profiles' avatar image.
- Added a new style.scss import. Bulma 0.9.0 separates helpers from the base sass folder into
/bulma/sass/helpers/
instead. - Added a new style.scss import for imagePreview.scss stylesheet.
- Moved µhtml globals from core.edge template to app.js script file.
- Added
streamerMode
blur to updateProfile.edge template. - Moved
noscript
html element to work when #updateProfile form is blurred. - Added a text fragment to
disable profile
button url. Should now mark "Global profile". - Added
streamerMode
blur to updateUser.edge template. - Moved
noscript
html element to work when #updateUser form is blurred. - Changed
makeGlobalPublic
totoggleGlobalPublic
in updateUser.edge template. - Added
toggleStreamerMode
select element to updateUser.edge template. - Fixed a url in commands.edge template.
- WIP: Added profile avatar and bio to profile.edge template.
- Added
streamerMode
blur to profiles.edge template. SplashController.index
now usesMiddleware/Redirect
.
- Fixed error on startup.
- Fixed links in updateProfile.edge template, profiles.edge template.
- Changed README file to reflect changes made to Profile model.
- Added flash message if Twitch doesn't return a token body.
- Fixed bug that made user not login if user just registered.
- Now saving Twitch refresh token to update user's access token for the session.
- Added flash message for new registered users.
- Added flash message for users logging in.
- Added flash message for users logging out.
- Added flash message for user trying to access profile user is not allowed access to.
- User can now access matched profiles.
- Profiles can now be deleted.
- Changed how the flash message for
favoriteStreamer
name malformation now displays. - If
streamersToAppend
does not return an array, it now refreshes token and displays a flash message. - Added flash message for successfully updating user settings.
- User can now delete their own account.
- User can now refresh their Twitch data.
- Removed
Color
interface. Profile.color
now returns a hex string (#ffffff
) instead ofColor
object.- Profiles migration scheme changed. Please use
npm run migration:rollback
and thennpm run migration:run
. This will delete all data. In the future, updating models will be done with new files. - WIP: Added updateProfile.js
- Minor changes to updateUser.js
- WIP: Added updateProfile.edge template.
- Added
flashMessages
conditional in updateUser.edge template. - Fixed various urls in updateProfile.edge template.
- Changed
item
tostreamer
in updateProfile.edge template@each
call. - Changed text in commands.edge template to reflect changes done to Profile model.
- navbar.edge template now uses
route()
for creating some links. - licenses.edge template now uses
route()
for creating some links. - profile.edge template now has a conditional to check for guest users.
- Added
flashMessages
conditional in profiles.edge template. - profiles.edge template now uses
route()
for creating some links. - splash.edge now uses
route()
for creating some links. - Removed
flashMessages
inspect()
from user.edge template. - Added
TwitchAuthBody
interface forTwitch
'srequestToken()
class function. requestToken()
can now return anull
on error.- Added
refreshToken()
class function forTwitch
. - Added update and delete end-points to profile router.
- Added delete and refresh end-points to user router.
- Introducing the changelog. I'll eventually get better at documenting changes done.