@naiveroboticist/legacy-auth-ts
v2.0.2
Published
Legacy auth tools (typescript)
Downloads
19
Readme
legacy-auth-ts
This package contains a set of tools that can be used to facilitate
setting up authentication for react/react-bootstrap based
applications.
Hooks
Use Local Storage
The useLocalStorage hook can be use to store and retrieve data from
local storage. In the context of authentication, it is used to store
the session data retrieve by a login.
Use Auth
The useAuth hook provides a context from which you can maintain
session data and access to login and logout methods used to update
local storage and the context.
Menus
The package provides a menu used by the user to logout and - if the user is an admin - to list users and registrations as well as create new registrations.
Utilities
There is a component called ProtectedAuth which can be used in
certain routing scenarios to restrict children to be displayed only
when the user has been authenticated.
Notes
Process for in development
- Make the desired changes/additions/subtractions
- Ensure that the
index.tsis up-to-date. - Build the package:
$ npm run build
For the initial deployment to a project, simply install the root folder via npm, e.g.
$ npm i -D ../legacy-auth-tsThis will install it as a symbolic link so that when you rebuild the package, the application will automatically see the results of the changes.
Even done this way, the package is accessed by it's full name:
@naiveroboticist/legacy-auth-ts.
Process for production
- Make the desired changes/additions/subtractions
- Ensure that the
index.tsis up-to-date. - Build the package:
$ npm run build - Ensure that the
package.jsonis up-to-date (version, description, etc.) - Publish to
npm:$ npm publish
When publishing to npm the first time, specify the public flag.
$npm publish --access publicHow I set up this project
Take a look at this article. It provided greate help.
I made a couple of changes to the article's suggestion for the
tsconfig.json setup:
- In the
libconfiguration, I addeddom. This allowed the use of global elements allowed in applications likewindowandconsole. - Added the
jsxconfiguration to allow this package to compile and deliver TSX data.
