Public methods on the Keycloak class were converted to arrow function class fields in #204 to support destructuring (e.g. const { login } = keycloak). While this works, arrow fields have downsides: no prototype sharing, no reference equality across instances, and broken subclassing.
This issue tracks adding deprecation warnings when methods are called with a lost this context, so that in the next major (#234) we can remove the rebinding and use proper prototype methods.
Related:
Public methods on the
Keycloakclass were converted to arrow function class fields in #204 to support destructuring (e.g.const { login } = keycloak). While this works, arrow fields have downsides: no prototype sharing, no reference equality across instances, and broken subclassing.This issue tracks adding deprecation warnings when methods are called with a lost
thiscontext, so that in the next major (#234) we can remove the rebinding and use proper prototype methods.Related: