- Added 2x missing query params entry list in swagger spec
- Fixed error when updating project
- Changed IStorageBackend
- Fixed issue with rendering swagger ui
- Storage interface no longer exposes middleware and now has a more explicit
write
method - Moved some middleware out off app.ts into their own modules
- Storage and Mail backends are now configurable via environment variables and loaded and instantiated dynamically at run-time
- Mail backend is now dependency injected into viewsets via options object
- Removed PERMISSIONS_BACKEND option from config
- Changed config so all top-level keys are scalars
- Updated packages flagged by
npm audit
, notably MJML upgraded from v3 to v4 and templates migrated
- Fixing poor response performance when using webhooks
- Better sanitising of data when creating entries
- Minor bug fix
- Added tslint and fixed several minor syntax issues
- Fixed incorrect Entry path in spec.yml
- App config now implements IConfig interface
- Fixed incorrect URLs in spec.yml
- Upgraded libraries
- sendMail no longer attached directly to Koa context as Typescript complains (rightfully so)
- Renamed IMailService to IMailBackend
- Added Swagger UI at
/swagger/
- Added IConfig interface which the app config now implements
- Added new Client model for authenticating using OAuth2 Client Credentials flow
- Updated spec.yml
/user/authenticate
moved to/authenticate
/user/token-refresh
moved to/token-refresh
- Updated spec.yml
- Only admins can create projects
- Improved Entry validation
- Moved webhook middleware to it's own module and updated payload structure
- Camel cased ProjectMembership table name to be consistent with all other tables
- Updates to spec.yml
- Now validating grant_type value, not just it's presence
- Default TOKEN_EXPIRY is 300 (5 minutes)
- Link fields now only show a subset of Entry fields
- Saving an entry with a disabled field no longer destroys the disabled field's value
- Fixed issue in array length validator
- Fixed test.sh referencing old environment variables
- Added /robots.txt route
- Added cache header to /spec route
- Added change-password endpoint
- Removed mailgun transport
- Fixed issue where cors config was not being passed to middleware
- Renamed CORS environment variable CORS_ORIGIN
- Updated README
- Renamed database environment variables
- Entries list endpoint now supports
orderBy
parameter - Media list endpoint now supports
orderBy
parameter
- Config is now loaded from environment variables, removed postinstall script
- Added required BACKEND_URL config variable. This value will be injected into the OpenAPI servers block visible at
/spec
. - Added optional DB_PORT config variable
- Added Dockerfile and docker-start.sh
- Added EntryType integration test
- Tests are now ran using Docker with
./test.sh
- All foreign keys now CASCADE on delete
- Fixed issued with Entry.bulkDelete causing database error
- Added Entry tests
- Fixed missing createdAt and modifiedAt fields from EntryType schema
- Added vertical spacing to email templates main section
npm test
now runsnpm run build
before running tests
- Build output no longer gitignored
- Codebase converted to Typescript
- Backends are no longer specified as paths in the config, rather they are instantiated and attached directly the config object
- Improved README
- Added OpenAPI 3.0 specification at
/spec
- The
create-admin-user
script now correctly creates the user withisAdmin=true
- Update endpoints should now correctly return 404 if record doesn't exist
- WebHook and ProjectInvite list endpoints are no longer paginated
- First public release