|
4745ae4e17
|
Fix session id not available in websocket listeners
Fixes #21
|
2021-01-25 16:36:15 +01:00 |
|
|
8b98c8cc59
|
AddNameToUsersMigration: fix can't work when db already has users
|
2021-01-25 16:22:51 +01:00 |
|
|
4817563dc1
|
Make models and components available immediately after their migration
|
2021-01-25 16:21:24 +01:00 |
|
|
8a25f214ab
|
AuthGuard: always provide a string to pending account mail username
|
2021-01-25 14:37:50 +01:00 |
|
|
b211845f57
|
Mail: also debug log data
|
2021-01-25 14:36:27 +01:00 |
|
|
b9ac4d0f05
|
AddUsedToMagicLinksMigration: delete all magic links after install
|
2021-01-25 14:07:20 +01:00 |
|
|
449922490f
|
MagicLinkAuthMethod: do not interrupt auth with used magic links
|
2021-01-25 14:02:58 +01:00 |
|
|
359485170d
|
UserNameComponent: ensure usage of user.name is optional
Fixes #19
|
2021-01-25 12:47:18 +01:00 |
|
|
2a184e4ff5
|
Fix published npm package folder structure
|
2021-01-25 12:37:41 +01:00 |
|
|
f1a8a4ba07
|
Express.d.ts: normalize session fields case
|
2021-01-25 10:53:43 +01:00 |
|
|
e4768141bc
|
Simplify RedirectBackComponent into PreviousUrlComponent
Closes #12
|
2021-01-24 22:42:20 +01:00 |
|
|
19c8b86ff8
|
Fix express body parsing middlewares corrupting AsyncLocalStorage
Closes #17
|
2021-01-24 16:35:33 +01:00 |
|
|
1b8ff1428f
|
Add persist session checkbox on login
Makes session not persistent by default
Closes #11
|
2021-01-24 16:33:33 +01:00 |
|
|
5897b6bf36
|
Code cleanup: remove debug log from AccountController
|
2021-01-24 16:33:14 +01:00 |
|
|
1c71f66150
|
Clean logs from unwanted info and use \t as a delimiter to align
Closes #6
|
2021-01-22 16:07:27 +01:00 |
|
|
94cb157520
|
Remove connect-redis that breaks context with RedisStore
|
2021-01-22 15:55:06 +01:00 |
|
|
8fab93e709
|
Use AsyncLocalStorage to provide requestId context
|
2021-01-22 15:54:26 +01:00 |
|
|
49168b5391
|
Add account management (email addresses management, password management)
Closes #8
Closes #9
|
2021-01-22 12:22:11 +01:00 |
|
|
784f2c976c
|
Rename base_url setting to public_url
|
2021-01-21 17:13:05 +01:00 |
|
|
3e0a25874e
|
Auth: fix middleware applied globally and explicitly log them
|
2021-01-21 15:45:20 +01:00 |
|
|
2c66c66a39
|
logging: add status code description for redirections
|
2021-01-21 15:45:20 +01:00 |
|
|
4db7217876
|
Controller: add useMiddleware method
|
2020-12-30 14:10:58 +01:00 |
|
|
87b4facea0
|
Upgrade dependencies and update to express session new typings
|
2020-12-04 15:24:22 +01:00 |
|
|
70d80d1f0a
|
AuthMethod: add weight to choose when no method was specified
|
2020-11-16 11:43:14 +01:00 |
|
|
35129cd4f1
|
PasswordAuthMethod: simplify bad password throw
|
2020-11-15 15:50:19 +01:00 |
|
|
f99c62a5d9
|
Increase login fail per ip throttle limit and jail time
|
2020-11-15 15:49:40 +01:00 |
|
|
124bc8785f
|
MagicLinkUserNameComponent: allow null username
|
2020-11-15 15:21:26 +01:00 |
|
|
6a65ec723d
|
AuthController: use Validator system for unknown user on login
|
2020-11-15 15:18:57 +01:00 |
|
|
6eacfdcffa
|
Throttler: log jail triggers
|
2020-11-15 15:18:49 +01:00 |
|
|
683fe7262b
|
MagicLinkAuthMethod: do not allow register for already existing email
|
2020-11-15 14:14:56 +01:00 |
|
|
c08d03c8fb
|
MagicLinkUserNameComponent: fix validator property name for "username"
|
2020-11-15 14:13:57 +01:00 |
|
|
cecf28502e
|
ModelComponent: fix validators not transferred to attached model
|
2020-11-15 14:13:35 +01:00 |
|
|
42da8a68bb
|
Validation: respond with http 400 instead of 401
|
2020-11-15 14:12:45 +01:00 |
|
|
b28e2b75b7
|
Authentication: Improve registration tests and fix register/login overlap
|
2020-11-15 12:20:57 +01:00 |
|
|
f8c4906a51
|
PasswordAuthMethod: fix findUserByIdentifier()
|
2020-11-14 18:16:05 +01:00 |
|
|
b75b227ca1
|
Add required username to magic link authentication and fix many errors
|
2020-11-14 17:24:57 +01:00 |
|
|
acc5233185
|
Error handling: transform single validation errors into a validation bag
|
2020-11-14 16:25:18 +01:00 |
|
|
9d50c5cc5f
|
Rename project to swaf
|
2020-11-12 16:11:16 +01:00 |
|
|
efdd81b650
|
Auth: refactor to support multiple auth factors and add password factor
|
2020-11-11 19:30:30 +01:00 |
|
|
1fce157104
|
logging: prevent full logging of errors for silent logs
|
2020-11-11 19:29:23 +01:00 |
|
|
24d83c73ad
|
Add basic development environment for testing purposes
|
2020-11-11 19:29:23 +01:00 |
|
|
b8905ea02b
|
Move Controller.validate to static Validator.validate
|
2020-11-11 19:29:23 +01:00 |
|
|
bb8b44b5a3
|
ModelFactory: add hasComponent method
|
2020-11-11 19:29:23 +01:00 |
|
|
ead3c8ce1e
|
Controller: wrap use() middlewares to handle async
|
2020-11-11 19:29:23 +01:00 |
|
|
79c2f33000
|
Deprecate legacy migrations
Fix CreateUsersAndUserEmailsTableMigration
sq
|
2020-11-11 19:29:23 +01:00 |
|
|
03d9826f93
|
Migration: remove connection parameter from query() method
Closes #5
|
2020-11-11 19:29:23 +01:00 |
|
|
f20da06d43
|
logging: also log ip address
|
2020-11-11 19:29:23 +01:00 |
|
|
a09e92dd96
|
logging: make silent errors actually silent
|
2020-11-04 12:52:07 +01:00 |
|
|
570a831172
|
Mail: remove usage of non-existent config property
|
2020-11-04 12:11:30 +01:00 |
|
|
d741517cb9
|
AuthGuard: add separate before and after registration callbacks
|
2020-11-04 11:55:34 +01:00 |
|
|
c966536950
|
NunjucksComponent: fix view loaders using cache when in dev env
|
2020-11-03 17:46:04 +01:00 |
|
|
7c2572cddc
|
Fix validation errors not being flashed correctly
|
2020-11-03 11:14:13 +01:00 |
|
|
4d0c714dbd
|
Render emails using NunjucksComponent's environment
|
2020-11-03 10:29:36 +01:00 |
|
|
cfb7bddca6
|
DropLegacyLogsTable: fix sql syntax
|
2020-11-02 19:32:56 +01:00 |
|
|
88e5e19730
|
Replace custom logging system with tslog
|
2020-11-02 17:50:12 +01:00 |
|
|
93bff1fdca
|
Nunjucks/globals: fix route() context
|
2020-10-02 12:13:48 +02:00 |
|
|
595a6d4066
|
ModelQuery: add create() and fix boolean serialization
|
2020-10-02 12:08:01 +02:00 |
|
|
00c806aa0a
|
Fix log level output
|
2020-10-02 11:11:01 +02:00 |
|
|
e37184e5ee
|
Add user model to RequireAuth middlewares
|
2020-10-01 13:59:19 +02:00 |
|
|
f41a456524
|
Improve typing precision of CacheProvider.get()
|
2020-10-01 13:58:50 +02:00 |
|
|
79d704083a
|
Add many eslint rules and fix all linting issues
|
2020-09-28 14:15:22 +02:00 |
|
|
8210642684
|
Improve logging configuration structure
|
2020-09-25 22:19:13 +02:00 |
|
|
b736f5f6cb
|
Improve middleware definition and cleanup code
|
2020-09-25 22:15:57 +02:00 |
|
|
5dc0bd710a
|
Make nunjucks and static file server compatible with pkg
|
2020-09-24 22:42:55 +02:00 |
|
|
87aae6bb33
|
Fix some nunjucks globals not properly set and make getCSRFToken dynamic
|
2020-09-23 16:11:51 +02:00 |
|
|
47e0756930
|
Add websocketUrl view local
|
2020-09-23 12:31:19 +02:00 |
|
|
79d3b51f90
|
Pass a whole Session to WebSocketListeners
|
2020-09-23 08:55:35 +02:00 |
|
|
2effaf13eb
|
Add AuthComponent.getAuthGuard()
|
2020-09-23 08:46:37 +02:00 |
|
|
75c2b72f57
|
Add Application.getComponent()
|
2020-09-23 08:46:21 +02:00 |
|
|
dfee2645e1
|
Express: add custom bind address setting
|
2020-09-17 21:15:37 +02:00 |
|
|
3a473dd24e
|
Fix error when saving models in transaction when it needs a full update
|
2020-09-15 15:40:58 +02:00 |
|
|
fec607da20
|
ModelQuery: add offset parameter to union()
|
2020-09-11 15:15:15 +02:00 |
|
|
fd6e384a12
|
Logging: improve legibility of sql queries when verbose mode enabled
|
2020-09-11 15:14:40 +02:00 |
|
|
15678e0381
|
Fix relation reducing mistakenly using "in" instead of indexOf >= 0
|
2020-09-10 19:11:32 +02:00 |
|
|
b12d104c78
|
ModelRelations: deduplicate recursive relations on populate()
|
2020-09-08 19:24:05 +02:00 |
|
|
969ab18b96
|
ModelRelation: sort recursive relations by tree
|
2020-09-08 19:11:19 +02:00 |
|
|
892b830dc4
|
Code formatting and cleanup, dependencies upgrade and version 0.22.0-rc.8
|
2020-09-07 14:38:30 +02:00 |
|
|
2f822aa61c
|
ModelRelation: simplify foreign model constructor parameter
|
2020-09-07 14:30:11 +02:00 |
|
|
b88f4e1b64
|
ModelRelation: deduplicate eagerloaded models
|
2020-09-07 14:02:43 +02:00 |
|
|
0e37014667
|
ModelQuery: add nested eagerloading
|
2020-09-07 13:43:02 +02:00 |
|
|
e86356ae74
|
ModelQuery.union(): fix missing subquery variables
|
2020-09-06 16:02:53 +02:00 |
|
|
17685a44be
|
Improve field disambiguation to allow raw values when starting with ",',`
|
2020-09-06 15:44:37 +02:00 |
|
|
c2abb1c87a
|
Model.select(): allow custom select fields
|
2020-09-06 15:09:58 +02:00 |
|
|
4c482fb148
|
ModelQuery: add union()
|
2020-09-06 15:07:11 +02:00 |
|
|
3a4606b328
|
ModelQuery: allow specifying raw value for sortBy()
|
2020-09-06 12:25:53 +02:00 |
|
|
b84c2cdff1
|
Code formatting and cleanup
|
2020-09-06 10:53:28 +02:00 |
|
|
25f890e082
|
Remove unnecessary db query to determine whether a model exists in db
|
2020-09-06 10:45:26 +02:00 |
|
|
f07704c6dc
|
Allow Model classes to override primary key fields
|
2020-09-06 10:23:32 +02:00 |
|
|
f6b326f802
|
Move EMAIL_REGEXP to Validator
|
2020-09-06 10:21:47 +02:00 |
|
|
27bd7400e2
|
ModelQuery: fix backticks on ORDER BY and remove extra useless spaces
|
2020-09-05 16:09:52 +02:00 |
|
|
e403dfa863
|
ModelQuery: fix field disambiguation
|
2020-09-05 15:51:44 +02:00 |
|
|
9e38b003f9
|
Model relations: add recursive query and recursive relation
|
2020-09-05 14:56:19 +02:00 |
|
|
7b739ff056
|
ModelQueryResult: also return model original data
|
2020-09-04 22:44:30 +02:00 |
|
|
e29b6369af
|
ModelQuery: add groupWhere and test it
|
2020-09-04 22:16:20 +02:00 |
|
|
823f5d0d26
|
ModelQuery: fix count() queries
|
2020-09-04 18:51:41 +02:00 |
|
|
6a4898cbda
|
ModelRelation: add pagination
|
2020-09-04 18:01:29 +02:00 |
|
|
1dd22f618c
|
ModelQuery: fix passing missing connection parameter
|
2020-09-04 15:10:11 +02:00 |
|
|
19aafc76bf
|
mysql queries: wrap field names in "`" to avoid conflict with reserved words
also do not add table name to field in select if it is already present
|
2020-09-04 15:09:30 +02:00 |
|
|
bffab3a4dc
|
ModelQuery: actually fix fields conflicts for jointures
ref: 68ff977bcc
|
2020-09-02 16:29:11 +02:00 |
|
|
5a3acf30f4
|
OneModelRelation: add set(), clear() methods
|
2020-09-02 14:08:49 +02:00 |
|