Skip to content

Conversation

fratzinger
Copy link
Collaborator

@fratzinger fratzinger commented Apr 18, 2021

tl;dr

Checkout the migration guide: https://feathers-a-m.netlify.app/migration.html

New Features:

see #159 for the beginning of Discussion. We continue the refactoring here.

Todos:

  • Port src to typescript is pretty much done with types
    • Typescript
    • propper typings
    • service class
    • make sure client is backward compatible
  • Port test to typescript
    • Typescript
    • propper typings
  • seperate services/routes as suggested in Rework #144
    • seperate Class with create
    • call services create methods in main service for backward compatibility
    • one service for every action
    • use _create for every service to make it possible to skip hooks as for adapter-commons
    • make sure service.publish does not get hit to prevent channel emit
    • add custom methods (for feathers^5)
    • register services under route (app.use)
    • add more tests for this
  • add docs
    • VitePress
    • Go through everything

New Stuff:

  • added option: passwordField for dynamic passwordField. It was a fixed variable before
  • added services
  • can call _create function on all services to bypass hooks
  • separate services for each action (except action: 'options')
  • each method as hookless custom method (e.g.: app.service('authManagement')._resetPasswordLong(...))
  • each method as custom method (e.g.: app.service('authManagement').resetPasswordLong(...)
  • recommended use of app.use('auth-management, new AuthenticationManagementService(app, { ... }) instead of app.configure(authManagement)

Todo:

  • Update links to source code in service-hooks.md.
  • Removal of old docs + update README
  • Add logo
  • add netlify page
  • prerelease

IDE-Support:

image

closes #144, #138

- complete typing
- update dependencies
- semistandard -> eslint-typescript
- start converting tests to typescript
- ref #144
- identityChange had no 'field' property
- tests fixes
- add passwordField to options
- propper typing
- call seperate services from main service
- destructure create-data for better IDE support
- move AuthenticationManagementService to seperate file
- completely move `passwordField` to options
- Base class with publish-prevention
- `useSeparateServicePaths` option
-  use internal service.options instead of create({ action: 'options' })
- add tests for publish
- add tests for `useSeparateServicePaths`
- more typings
- export defaultOptions -> addVerification - path
- rearrange useSeparateServices
- divide Service & configure functions
- ensure options per Service
- types: better types
- chore: update dependencies
- tests: add tests for separate services
- tests: increase about-time to 600
- better typing (abstract _create with type)
- sort actions alphabetically
- overview page
- started services page
move typescript refactor to repo branch
@fratzinger fratzinger mentioned this pull request Apr 18, 2021
18 tasks
Frederik Schmatz added 2 commits September 11, 2021 13:49
- refactor: add import type where necessary
- refactor: add newlines for function params
- refactor: destructure imports
Copy link

@wethinkagile wethinkagile left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tested preventChanges fix from 0b66fb8 and that works

@fratzinger fratzinger marked this pull request as ready for review January 22, 2022 11:40
@wethinkagile
Copy link

wethinkagile commented Jan 25, 2022

I tested verifySignupLong functionality and it works as advertised. Will check the other hooks this week. Well done.

@wethinkagile
Copy link

Mongoose Models need type: String for verifyChanges instead of type: Array. This should be mentioned in docs in my opinion to safe others many troubleshooting hours.

@fratzinger fratzinger merged commit 1990797 into master Jul 28, 2022
@fratzinger fratzinger deleted the typescript branch September 22, 2022 09:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Rework
5 participants