@rio-cloud/rio-session-expired-info
v2.0.0
Published
The RIO Session Expired Dialog
Keywords
Readme
RIO Session Expired Info
👉 Provides the SessionExpiredDialog component that can be used to inform the user about their expired session.
🔋 Comes "batteries included", meaning you don't need to provide the translations. Just supply it with the current locale of your app.
Installation
Before installing, make sure you have these dependencies in your project already as they're needed by this package:
reactversion 17 or abovereact-domversion 17 or abovereact-intlversion 5.24.8 or above@rio-cloud/rio-uikitversion 1.0.0 or above
Next, add the npm package to your project:
npm install @rio-cloud/rio-session-expired-info --saveUsage
import { SessionExpiredDialog } from '@rio-cloud/rio-session-expired-info';
const Example = () => {
const [showDialog, setShowDialog] = useState(false);
const handleDialogClose = () => {
setShowDialog(false);
// you could perform other things, e.g. track that the user deliberately wants to stay in the current page
};
return (
<SessionExpiredDialog
show={showDialog}
onClose={handleDialogClose}
locale="en-GB"
/>
);
}License
Both @rio-cloud/rio-uikit and @rio-cloud/rio-session-expired-info are licensed under the Apache 2.0 license.
You can see the full license text in LICENSE.
Development
A local demo page can be started with npm start. You can view it at http://localhost:3000.
Publishing
ℹ️ The version in the package.json is always the latest one that's already on npmjs.com.
💪 Publishing is done by hand from your local dev machine, but mostly automated to guarantee a consistent way.
⚠️ Make sure you've committed & pushed all your changes and your working copy is clean & up to date with the remote. Then, when you're ready:
npm run releaseBefore running the actual release script, npm will call our prerelease script automatically, which will
- format the code
- run the linter
- run the build (to produce the
distfolder that's going to be a part of the package)
Once that's done, the release script will kick in, which will start np. That will
- check whether you're in the right state to publish, at all (on
masterbranch, no changed files, etc.) - provide some feedback if there are unknown files that will be added to the package for the first time and/or files which are present, but won't be added to the package. If that's the case, please read carefully, what's going on
- ask you which type of release / published version you want (think about semver!)
- perform a clean
npm installjust to be sure - run tests
- update
package.jsonand lockfile with the new version + commit & tag - perform the actual
npm publishinternally (this might ask you for your npmjs.com login incl. 2FA) - push everything to git
TODOs
- [x] update README, docs, etc
- [x] add https://www.npmjs.com/package/np for publishing
- [x] remove s3 + deployment + distribution
- [x] re-create simple build pipeline in CDK
- [ ] re-add license checker (maybe a newer version, though)
- [x] add slack alerts and/or datadog monitors to pipelines
- [ ] set up renovate
