JCU Web application framework
This is the (as of writing) current base of the modern web applications that creates the @jcu/spark package.
To make use of this, you can npm install @jcu/spark as long as you have your local NPM
configured to point at the JCU Artifactory repository. If you haven't, follow the guide at:
https://secure.jcu.edu.au/confluence/x/X6TCB
Still lacking many features, but we're adding to this all the time. Some content might eventually be broken out into their own packages, and we may re-use Lerna to deploy the packages.
Development
If you'd like to contribute, Jenkins will automatically build all branches. Creating a pull request to the default branch will trigger a build that will publish a pre- release package with the pull request number.
Merge a pull request into the default branch to trigger a release build. You'll be prompted to choose a version bump level.
Changelog
All notable changes to this project should be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
release-3.7.4 - 2022-08-26
Cleanup
- Updated OIDC flow to get scopes from id_token instead of deprecated introspection endpoint
f0ceb18 - Updated scope usage to reference space separated string instead of array
013a86d
Commits
- Pull request #63: Updated OIDC flow to no longer use introspection
71d60ce
release-3.7.3 - 2022-06-13
Fixes
- DisplayWhen logic error when multiple width props were provided
3456635
release-3.7.2 - 2022-04-05
Commits
- Reworked JcuInnerApp render logic so that forced login is now a correctly encapsulated side effect
58f6aa4
release-3.7.1 - 2022-02-09
Commits
release-3.7.0 - 2022-01-25
Features
- Created new identity enrichment wrapper for OIDC data. Performs token introspection to forgerock.
5e7007f - Added new useIdentityCheck hook to allow developers to check attributes of a users identity e.g. groups or roles
201474a - Added docs for useIdentityCheck (p2)
abb1fbf - Added docs for useIdentityCheck (p1)
f720de0 - Added basic docs for comp:useJcuConfig
eadfdc1 - Added new useJcuConfig hook for easy config access
1e349b1 - Added export for now useIdentityCheck hook
ae13b44 - Added missing dependancy to login function hook wrapper.
c1b522b
Fixes
- Fixed rerenders triggering from useOidc updating unchanged objects. Memoized various hook elements to only cause rerenders when that data actually changes
bd56b0e - Fixed logic for determining type of incoming values. Improves equality checking and also handles incorrect types
1dd5b1f - Fixed introspection check to validate that the token/user is still active
d8b5477 - Fixed useEmbedded hook to use new useJcuConfig hook instead of manually handling the context.
2d1ed1e - Fixed scope merging to handle multiple spaces in the oidc scope string.
82717a3
Cleanup
- Updated AxaOidcProvider to merge in config scopes instead of overriding the defaults.
df9c362
Commits
- Skeleton for secondary identity context
5814a09 - minor changes from code review
d2710a7 - Refactored useJcuConfig hook into ConfigManager to be alongside config typings and context
90582a4 - Actioned code review commentary
12db5d6 - Log errors returned by JcuIdentityInterface
3c93f72 - Anchoring grommet version because they keep releasing versions that break backwards compatibility
fc6c6bf
release-3.6.5 - 2021-11-24
Fixes
- Added deprecation warning to legacy useReactOidc hook.
805d180
release-3.6.4 - 2021-10-07
Fixes
- Issue with incorrect word removal by changelog fix regex
b9c06b0
release-3.6.3 - 2021-10-07
Fixes
- Regex for identifying feature headings now correctly catches add... commit messages (and not things like addressing)
c9e4600
Cleanup
- Updates changelog template to make features the first heading and also adds new cleanup heading
466d0d8
release-3.6.2 - 2021-10-07
Fixes
- Corrected regexes for matching commits to categories
eacf1ca
release-3.6.1 - 2021-10-07
Fixes
- Increased display limit for auto-changelog commits. Changelog will now contain all commits for a release.
6ab5d6d
release-3.6.0 - 2021-10-06
Features
- Created useScopeCheck hook. Replaced logic in DisplayWhen with new hook.
dad67f2 - Created useWidthCheck hook. Replaced width logic in DisplayWhen with new hook. Refactored code that used exported width constants for logic to utilise new hook.
4a1ac49 - Created useTimeCheck hook. Replaced logic in DisplayWhen with new hook.
ed0ab85 - Created useEnvironmentCheck hook. Added props and logic to DisplayWhen to support environment checking
6f9cd24 - Added persistent state storage hook
88f216a - Added storage availablity check to StorageManager
95a59f3 - Added documentation for useTimeCheck. Added doc tags to other hooks for categorisation in output
4968382 - Added back an informative warning about possible date confusion when using DisplayWhen
bfed825
Fixes
- corrects initial cap of return type comp:OidcHookReturn
41b464d - refactored hooks to be functions not consts (so they doc as 'methods')
4ac129e - Fixed logic error in useScopeCheck hook
eb8d382 - ignore CHANGELOG
b3b6a3f - Back-porting master changes
1dd1890 - Fixed typing issue with StripedAlertBox
936cdf8
Cleanup
- updates docs for useEnvironmentCheck
1a7307b - updates docs for useScopeCheck
902631f - Updated dev console output for DisplayWhen message
76bc54f
Commits
- Various config and doco fixes. better-docs now supports shallow render examples of components (if defined in their jsdoc)
2d83c33 - Reverting random commit that rolled back all the previous changes?!?
7c085ce - Merged
367c63f - Documented useScopeCheck
d9afdb2 - Did better typedef documentation to prevent duplicate field entries
13b70b5 - [doc] expanded docs for useWidthCheck and related consts
799b781 - General doc fixes
3b6e54f - More hook docs
2502e00 - Some doc fixes and unused code removal
70cce8e - [doc] improvements to useTC jsdoc
57ab411 - Refined the width based logic in DisplayWhen to be more concise
dda02ad - [doc] moved hooks into Hooks:global category, to allow @link to find them
e37d9e7 - minor comments
9546828 - Misc doc improvements
549b043
release-3.5.3 - 2021-10-06
Commits
- Calling correct tag deletion
f4459c3
release-3.5.2 - 2021-10-06
Commits
release-3.5.0 - 2021-10-06
Features
- New useOidc hook for adding extra functionality to the axa provided OIDC hook
41b73dd - New commit message key to allow linking to component documentation in changelog
3b663f7
Fixes
- Documentation auto linking regex now correctly does non-greedy capture
4690529
Commits
- Basic doco for new oidc hook
7ba21b4
release-3.4.6 - 2021-09-28
Fixes
- Disabled tagging by npm version to make changelog release tag processing correct
cb966d5
release-3.4.5 - 2021-09-28
Fixes
- Order of jenkins stages means auto-changelog no longer requires a -p flag
8c07017
release-3.4.4 - 2021-09-28
Fixes
- Correct version of node wrapper
3e97f2e - Install everything so jenkins with stfu
7cf41a5 - Added config to nodeJS wrapper to use artifactory as source
f174c0f
release-3.4.3 - 2021-09-27
Fixes
- Missing docgen tool installs for later Jenkins stage palcement
35be45d
Commits
- Moved the location of docgen tool install to publication setup instead of doc gen stage
eef45ca
release-3.4.2 - 2021-09-27
Fixes
- Missing brace closure in Jenkinsfile
9b14083 - Changed doc generation order to be after versioning (corrects versioning in changelog)
6e20ace - typo in git comparison url
3f58c76
Commits
- Renamed doc upload stage of jenkins pipeline
1b11757
release-3.4.1 - 2021-09-27
Fixes
- Issues with jenkins not pulling all the repo tags
5477f0d
Commits
- Debugging docgen
09400bd
release-3.4.0 - 2021-09-27
Fixes
- Missing nodeJS wrapper
75e96da
Cleanup
- Removed broken npm script
441508f
Commits
- Trying pre-stash doc gen
3e0f881
release-3.3.0 - 2021-09-27
Features
- Changelog generation and doc publishing
4261d97
Fixes
- Added missing auto-changelog config to package.json
9358212 - Missing changelog generation command
a496dd6
Commits
release-3.2.1 - 2021-09-14
Features
- Added hacky anon auth header
d0b370b
Fixes
- Fixed config key name
c852e7d
release-3.2.0 - 2021-07-28
Features
- adds PageHeaders component
f63ace0 - adds tutorial for config (incl. embeddded key) and data handling
e4c5d48 - adds useEmbedded hook
594229e - adds PageFooters component
5cc7304
Fixes
- fixes nodemon so it rebuilds docs properly
812aaf1
Cleanup
Commits
- use PageHeaders to simplify JcuInnerApp and support embedded headers
2f19d45 - testing a config file doc layout
f3721d4 - using PageFooters
86b52dc
release-3.1.0 - 2021-07-26
Commits
release-3.0.0 - 2021-05-06
Features
- Added App and Route level ErrorBoundaries and created respective default error pages for both.
36d9aad - Added ErrorPage components
0736709 - Added oidc-client to package.json
9cadbbc - Add incorrectly removed logout page
6d508e1 - Adding react to dev dependencies
1875cc5 - Add NodeJS definition to Jenkinsfile
dacebde
Cleanup
- Updated all of the dependencies
4625209 - Removed direct installation of react in SPARK
a702b64 - Removed deprecated props from PulseLoader
4ffdff3 - Removed unused export
c3b15ac
Commits
- ErrorBoundary component added to JcuInnerApp
d9b20e5
release-2.6.0 - 2021-03-18
Features
Cleanup
- removes package-lock
100551d
Commits
- Better typings; renamed firstRun; use 'controls'
331fccf - lock file from master to avoid conflict
9be38c9 - closing in on final form
cbcffa0 - user indicates readiness feature
a7469c2 - work in progress
af80e0a - useApiFetch works with a user deps array now
03e89cd - remembered to add deps
640aec8 - exports hooks
ecb747f
release-2.5.2 - 2021-03-11
Commits
- Changed JcuStyledAnchor back to re
20281d1
release-2.5.1 - 2021-03-03
Fixes
- Fixed incorrect text-shadow color on mobile width disabled login button
76d9766
release-2.5.0 - 2021-03-03
Features
- Added time based props to DisplayWhen. (Unfortunately) converted all formatting to 4 space indents.
afd97f5 - Added error handling to default open/close display components. Added highlighted rendering when DisplayWhen has an error in dev mode so that devs can clearly see there's an issue.
af76afb - Added open/close key usage to JcuInnerApp. Created default display elements for open/close times.
9ccf002 - Added disabled login informational hovers and popups
00d1fdf - Created StripedAlertBox component for predefined striped alerting boxes to provide consistent coloring and usage
58bf8e8 - Added a devWarn message to DisplayWhen for possible after prop date confusion. Added a nowarn prop to DisplayWhen to suppress aforementioned warning in cases where it's understood and accepted. e.g. open/close config dates
3dc86d8 - Added externally provided open/close component handling
dc08f69 - Added disableLogin flag to JcuGlobalAppHeader and AccountDropdown to allow for the disabling of login. Added conditional rendering to the login/logout pages so that the routes aren't used when login is disabled
18fbf7d - Added nowarn flag back to open time DisplayWhen
df89e85
Cleanup
- Updated wording of DisplayWhen devWarn message. Fixed non-rendering <br> tags in AppWillOpenPage
4150c77
Commits
- Actioning code review comments and feedback
259f835 - Disabled login button and added strikethrough styling
9bd99b5 - Refactor strikethrough for header Login button
1f95b43 - Changed how dates are checked because date-fns is very poor at validation
2c0d6c4
release-2.4.0 - 2021-02-18
Features
- Created Mobile width controls for global nav bar. Created mobile sized dropdowns for account and nav menus
730436a - Added a11y titles to new nav elements and profile menu
47bcdae
Fixes
- Added a check to notification layer to only render the display box when there are popups. Fixed issue where empty box caught clicks due to padding giving the box non-zero size dimensions.
e7ca91e - Fixed RestrictedRoute empty scope value
6790f21 - Fixed issue where empty scopes object in ApiInterface would could the app to crash
d50c6e6
Cleanup
- Removed as JcuStyledLink styling from mobile menu text to prevent color overrides for 'already visited' links
6cea24d - Removed debugging console.log
ef595bb - Removed reactjs-popup import that breaks testing
79fad0b
Commits
- Consolidated all the mobile dashboard elements. Created dynamic nav elements for mobile and wide screen nav items
336371a - Final tweak to mobile header menu stlying and layout.
ae6ab11 - Consolidated AccountDropdown into clearer mobile/wide screen sections
ca7e599 - More mobile styling and layout components
6be2d31 - Consolidated mobile layout into tighter DisplayWhen parcels. Minor fixes per code review comments.
bdfe181 - Wrapper popup components in grommet wrapper to preserve styling
a5e2f06 - More consistent styling for mobile account menu. Colours TBD
dd7eb60 - Different solution to bugfix
e520064 - Renamed styled links file to plural
3c5b195 - Changed ordering of notification layer. Should hopefully hide it behind app elements (to prevent click capture).
ece843e
release-2.3.1 - 2020-12-14
Fixes
- New login header button missing call to save current URL.
4ca4f5f
release-2.3.0 - 2020-12-08
Features
- Created SparkLogger wrapper to allow for easy calls to dev-mode logging functions
e05d067 - Added two new functions to VersionedItemCollection to enumerate the item names, and the item names and versions. Added non-production log warnings for when loaded API interfaces and loaded API configs don't match.
63a9430 - Added basic documentation for SparkLogger
96dc749 - Added dev logging for trying to load API interfaces that havent been defined
f6ce375
release-2.2.1 - 2020-12-08
Features
- Created login landing page and added /login route to default app router. Created a LoginLink component for devs to use to provide links that remember the current page before linking to new /login page.
550d0f1
Commits
- minimal docs; pass through props for LoginLink
b8dd028
release-2.2.0 - 2020-11-25
Features
- Created legacyHeader app prop to allow hard to update applications to maintain legacy header layout (like profile). Added a non-production warning space for the inclusion of any dev warnings. Cleaned up unused imports and variables
c8f63a2
Fixes
- Fixed right align of profile dropdown. Removed old AccountDashboard login/logout functionality. Created new AnchorLink object to provide the styling of Grommet Anchor to the react-router Link component.
baaf05e
Commits
- Initial basic implementation of new nav header, including user management dropdown and login changes
05c49fd - adjusting code style
61f4d51
release-2.1.0 - 2020-11-10
Features
- Added useEffect check to make sure post-login URL isn't loaded while app is logging in. Added saving existing URL to login onClick
ffe5ec9 - Added new location redirect handler and test console logs
8737540 - Adding logic to prevent app from loading data while logging in
8dbd538 - Adding redirection test
b08b17b
Fixes
- Fixed useLocation hook usage to be react compliant
8045363
Cleanup
- Updated where the post-login url load occurs
81dde29 - Removed console.log calls and updated comments and documentation
513f567 - Updated redirection comment to reflect code review comments
79054d0 - Removed testing route that was no longer needed
cb13196 - Updating react-router-dom type definitions
3df9bc2
Commits
- Attempt at cleaner post-login redirection.
b2811c0 - Trying a super roundabout workaround for redirection
f2b58ca - react router redirection for post-login redirect
460b5b6 - Attempting a different redirection method for post-login redirects
06f90f5 - 'Working' login redirection mechanics
e10d203 - Actioned code review comments
e2f3b4e - Changed component load order so that the router is outside of the axa library to handle login state preservation
6ea5919 - Change location of react-router redirect component
bf1d9ad - Minor bug fixes for post login redirect
32e7035 - Moving to version 5.2.0 of react-router
63edb57 - Testing react-router useLocation call
d260c69 - Minor doco fixes and removal of unused app state
865d43d - Changing @types/react-router back to an existing version
a73b16f
release-2.0.2 - 2020-10-29
Cleanup
Commits
- build id text colour to white
9830977
release-2.0.1 - 2020-10-20
Cleanup
- Updated various documentation references to new @jcu/spark namespace
804de7f
release-2.0.0 - 2020-10-20
Features
- Added new put/patch/delete convenience functions. Also updated existing get/post functions to return promises for developers to handle instead of data
5fbfec3 - Added internal application config section to ConfigManager/Context. Also rewrote tabs to spaces
c8e1930 - adds StrengthMeter
97f9c5a - Added basic jsdocs to NotificationManager
75378ce - Added new delayedResult function to help mock API responses
079fb6b - adds prop to DisplayWhen
0dc8fc4 - adds JcuGrommet component
ee84579 - adds todo items to README
2f98038 - Added some more jsdoc to ApiManager to be a bit clearer for dev facing functions
693f348 - adds shape prop to JcuApp
7fcaa91 - adds MinimalFooter
4dcac35 - adds CI build id to the env banner
408bf11 - adds to docs
74d5cd6 - Added basic landing page and export
be51f91 - Added minimal footer to bottom of default logout page
43b96f9 - Added final statement about the baked in popup notification layer
88d3498 - Added custom component prop for logoutpage
40a039d - adds todos
d900124 - adds a11y text to logo
3a9680b - Created banner underneath nav bar for devs to be able to place persistent information
84d0f75 - Added scoping to DisplayWhen functionality.
1d3c2ae - Added bearer token attachment to ApiContextProvider
d833471 - Added jsdoc and general comments to OIDC provider.
5883ab8 - Added in components for various stages of auth.
b7fe1d8 - Added a flag for logging in that prevents multiple calls happening while the login is resolving
166115b - Added email to the default set of OIDC scopes
2ee2a69 - Added context providers to the ApiManager and AccessManager classes
2941c2f - Added ts typed version of NotificationManager
a1be75d - Created axa authentication provider wrapper
afaf8e3 - Created ConfigManager. Context for loading and supplying configuration information to internal components.
1f23991 - Added new default for config lookup at the base URL /config
e0ec0f5 - Added basepath to default config lookup
617e820 - Added some comments
066c63b - Added typecast to correctly identify returned object type (ts didn't handle the inheritance cleaning)
7c1f101 - Added flag to tsconfig so ts will stop crying about completely acceptable React import syntax
04aa514 - Added grommet-icons to library package.json to support notifications
af92335
Fixes
- fixing types n stuff
c8877d3 - fixed weird disappearing background bug
33f4587 - Fixed general import / export setup across framework. Cleaned up unused imports, and consolidated other imports into their top level exporter.
5e97b98 - Fixes logo image layout issues, probably
13f556e - Fixed broken master merge
a5430a8 - Fixed up some typing definitions
cbe4825 - Fixed ApiManager failing to correct update env for scope templating
069d40d - Fixed handling of missing authentication section in config
9a9fe66 - Fixed another typescript transpiler bug
cc2a383 - Fix attempt #4
ff6f6b1 - Fixed up possible issue with scoping
bd85f04 - Fixing broken test
375e83b - Fixed up a direct reference bug
466d9a5 - Fixed incorrect import for grommet (no idea why, seems 'automatic')
b6bccdb
Cleanup
- Updated documentation for components to be correctly bundled and categorised
765bc4c - updated AppConfigInterface to work in this new world
4ec0097 - Updated logout flow to have a landing page and not trigger auto-login
31ab9a4 - Updated basic logout landing page with some theme
e32b900 - Updated todo list
6974437 - Updated non-login path mechanics to be able to take a prop array of 'safe' routes
ded37eb - Updated ApiInterface doco to include new mock example
bb06fcd - Updated framework name to new acronym: SPARK (Single Page Application React Kit)
ed05a41 - updated StrengthMeter description: okay -> mediocre
81b2eec - Removed console.log for new banner.
7c8606f - Removed unused console logs and imports.
4189612 - Updated OIDC to be dynamically configurable through the authentication section of the application config
b8e08ce - Updated jsdoc/comments for ApiManager and minor code maintenance.
2209805 - Updated core app structure to have grommet (and by extension, it's theme-ing) at a higher level
9058b18 - Updated jsdoc/comments for ApiInterface
4cadda8 - Updated jsdoc/comments for ApiManager
1a75877 - Updated jsdoc/comments for CallbackHandler
a2202b0 - Updated OIDC default response type.
fcc1dcb - Updated url rebase function to only rebase urls that start with '/'. Allows the ability to specify external urls (http...) for elements like post_logout_redirect_uri.
40c3d2a - Updated callback component to be loading component
72ab31d - Removed final log message
f985fd2 - Removed the API load portion of AppInitialiser. The ApiContextProvider now handles loading all the APIs from the provided config
7386831 - Removed randomly inserted character
238618b - Removed import from poorly refactor move operation
9b44a92 - Removed unused import
a171402
Commits
- starts a tutorial
04ef9dc - themes!
b205e99 - Basic documentation config and script
3cf75fd - Small documentation updates
62b4a63 - tweaks to extended API Interface class
15d50ea - moved env banner, tweaked navbar
95f7ee8 - forgot about these doc updates
db13b19 - Reformat of default logout page
7a6e00e - tweaks to navbar
dfe9025 - tweaks logout page
dccbbf8 - Some more jsdoc for NotificationManager
d5bda2d - wrap navbar tabs when narrow
7b53fb5 - theme improvement - form colours
a012f8f - using Grommet's background
c4c73bf - restore content wrap style
108783f - more todos
0b04eea - theme colours
74775f3 - theme colours
d2314bc - theme colours
3039b02 - theme colours
46d718a - more todos
fa61b68 - brightens the Env benner colours to suit all themes
fcab049 - more todos
ec1e03d - more todos
390b145 - Made logging out message less in your face
c99434c - exporting properly
b73a514 - appeasing typescript
ef9851d - theme colours
4be818b - moved better-docs to devDeps -> deps
c8ec2c6 - setting up for merge
66dcf50 - Start of getting-started doc
d24e4c0 - more todos
a243352 - A word
127a224 - typescript wanted login to be a custom function
84576c0 - alt rather than a11yTitle for logos
5927382 - theme colours
ea3822e - theme improvement - form colours
2cd3197 - sith theme adjustment
b802aa7 - bg-contrast colour in sith theme
7b6ea61 - types in hook
e27f9bb - making TS happy
8a794d6 - more todos
749dac7 - reduced distracting focus colour
d2846b1 - theme improvement - form colours
a63d17d - merged new banner
63c7881 - Refactored old AccessContext usages to use new axa-fr context
eda6ea9 - Minor unused code refactors. Removed OIDC callback handling, now to be done by oidc library component
f80fd7d - typescript dodges
a824fc3 - Reimplemented RestrictedRoute logic for checking if user has access permissions.
a49fb31 - More typescript fixes for complaints it should flag during dev
0f3b720 - Minor fixes to ApiManager
55e96d2 - Refactored templating into ApiManager function, RestrictedRoute and DisplayWhen now invoke ApiManager to build scopes
c259717 - kill button on Environment banner
9356c02 - don't show navheader if there's no links to show in it
ea9101e - More typescript fixes for complaints it should flag during dev
ecae101 - Made the ApiContextProvider correctly (syncronously) attach API headers
b1924bf - nicer kill button
2fcd5c8 - Attempt to export useReactOidc within framework
a5fff1b - Typescript complains on build but not during dev, so great!
ab69ce2 - Changed the default scope to correct one.
4bba2a8 - Ignoring more typescript BS
adec4a5 - Merged in Release 2.0.0 changes
a73b34a - Relayered context hierarchy. App should be backwards compatible, pending testing
941ac05 - Incorporated and tested all existing components related to notifications.
fc95c10 - Refactored ApiInterface into prototype version
3c17444 - tsx version of AccessManager
37f11bd - Import of current prototype AppInitialiser
6951511 - Restructured ApiManager to have static methods at the top
a2a3e33 - Formatting and documentation housekeeping
5a7ca22 - Pulled in CallbackHandlerBugfix
587c4c4 - More test fixes.
eaebf3c - Tab changes
016e4b6 - Changed default login behaviour to redirect, changed app prop from redirect to popup for explicit use of popup
c5fa1f4 - Attempt #3 at a ts compatible iteration
23fcdfd - Attempt #2 to fix transpilation bug
acac6f0 - Changed typescript compiler options
71b5ea1
release-1.3.2 - 2020-04-09
Cleanup
- Removed all the debugging console.log statements.
b88172a
Commits
- Refactored the way url query strings are processed. Includes logging for live testing as bug occurs after compilation
595d001
release-1.3.1 - 2020-04-06
Cleanup
- Removed code that was likely causing a callback loop
b4bcbdb
release-1.3.0 - 2020-04-01
Features
- Created barebones singleton StorageManager
fa8add8 - Added some landing page restriction options to .env
767b6a9 - Added options param to storage functions for extensibility
1f67a41 - Adding string.toLowerCase to the permitted key checks
0ff2113 - Added more ts-ignores because typescript complains about everything
b350bb0 - Added a TODO for generating proper docs
38ad90d
Cleanup
- removed code-lint sins that were causing nag reports
f06933b - Removed unused and refactored code snippets
7c1aecc - Updated save/load/delete storage key generation to be case insensitive
3d642c8 - Updated StorageManager constructor to look for REACT_APP_BASE_URL to correctly scope the storage keys
0e380e8 - Updated StorageManager namespace generation to handle spaces as well as underscores in app names
959ff22 - Updated some jsdoc wording
274f3df
Commits
- Implemented save and load function. Includes JSON string serialization in both directions
1810062 - Actioning code review feedback. Removed unused code and move URL responsibility from StorageManager to CallbackHandler. Added jsdocs to StorageManager
8a18c0a - Extracted the callback handler function from AccessManager into own file. Added storage capture callbacks to callbackhandler.
1ed4dce - Query string saving for FORCED login mode and formatting changes :(
1904c19 - Refactor REACT_APP_PERMITTED_QSTRINGS serialisation into standalone function
0fd5c35
release-1.2.2 - 2020-03-31
Fixes
- Fixed OIDC redirect mode to send you to the baseURL, not '/' which breaks on all co-hosted apps
c079d24
release-1.2.1 - 2020-03-24
Features
- Added logout redirection handling to 'checkForCallbacks' to better handle user logout events
6017a0e
Fixes
- Fixed logout redirect to send straight back to the app root
3fe7fe3
Cleanup
- Removed unused window.location redirect
222ebbf
release-1.2.0 - 2020-03-16
Features
- Added log out triggers to logout button, reformatted code (intelliJ auto format)
fd7dd87 - Added a LoginMode.FORCED option. Forces AccessManager into redirect mode and auto-triggers login if they aren't
a32d0d4 - Added missing type parameters or relevant ts-ignore comments to make framework runnable 'live'
cc10d9b - Added a bunch of comments/documentation to AccessManager
212751d - Added comments addressing code review concerns.
0074758 - Added type dependencies to package.json of jcu-webapp library (was only in top level testing rig)
2b8d5a0 - Added window redirect to '/' when user logs out
66f5618
Fixes
- Fixed the grommet theme type issues (by ts-ignoring them)
06cbe38
Cleanup
- Updated RestrictedRoute component to take a string or string[] of scopes for checking
d0f9032 - Updated multi-scope checking to include checking if the access manager exists
a8ea468 - Updated AccessManager to take an oauthAuthority parameter in the constructor. Allows alternate authorities to be used (asuch as test)
bce1c6c - Updated console log message to output scope that failed lookup, not the undefined it returned
d7fb5ed
Commits
- Moved type dependencies from devDependencies to main dependencies
d2eb65f - Replaced unhandled error throw with console log
bec403a - Changed AccessManager logout redirect location. Fixes issue with window redirecting before correctly reseting the user
7fbd803 - Changed the default 'no name' value in the profile avatar
0a959e2
release-1.1.0 - 2019-12-19
Features
Commits
- Ran prettier
04c19d0
release-1.0.13 - 2019-11-29
Commits
- Hack to make the RestrictedRoute aware of scope changes
378adf9
release-1.0.12 - 2019-11-27
Features
- Adding to doco - doing in a branch to test the build process for PRs
e911e84
release-1.0.11 - 2019-11-27
Commits
- Not pre-allocating a node in the Jenkinsfile. This is taken care of in the npmLib()
88520ff - Force update
593960a
release-1.0.10 - 2019-11-27
Commits
release-1.0.9 - 2019-11-27
Commits
- Force update
7a0d76f
release-1.0.8 - 2019-11-26
Features
- Adding prettier, prettified the code, and also fixed the test not running.
f584da7 - Adding a Jenkinsfile. Hope I got this right!!
18c3e2f - Adding README.md
756ba1f - Added patch and delete methods to ApiInterface.ts
5e438cc
Fixes
Commits
- Support delete method with body
99ea977 - Initial commit
c95d9fd - NeedLogin now wrapped in Alert, and can be used at an app or function level
27f4967 - I'm trying a commit because this comment suggests it may be the npm linking that is causing weirdness:
0685be8 - It works? At least no errors!!!
409ad40 - Incorporating the DisplayWhen stuff from github branch
755c7c9 - More progress!!
794096e - Starting adding some documentation
4b7c129 - Switching to use npmLib()
7ebc58f - Rework of some attributes to components, and some attempt at figuring why children of JcuApp do not re-render when the logged in state changes...
823b49e - WIP
56a1672 - Committing work for release 0.0.92
b385729 - Realised that if it can't get to the checkout stage, it's unlikely to accept further changes to the Jenkinsfile... derp
f7861de - Kinda hacked the logo in, but works...!
cbfd86c - Test
b6581da - Trying some fancy closure stuff in Groovy
e985f0b - Moving methods?
1820a1d - Seeing if I can spit out change sets
eddd585 - Trying out a new publish process
02e3ae8 - First attempt at a new RestrictedRoute component
6434a62 - Test
26eac42 - Testing something that gets last successful build hash
c444ff3 - 99% log cleanup, but also fixed writing key of object that is now a map.
cdbcc57 - Test
ccc975b - Test
b20a59f - Trying more crap
9abd7a0 - Testing log info
d69f638 - Formatting?
4353434 - Making suggested change - setEnv to setScopesEnv, to clarify the env is for the scopes.
ea4d804 - Test
08dfa8b - ssh agent!
6546e5c - Hacking in stylesheet
586cf38 - Might have done branch name wrong...
6fcb80d - Looping over and echoing...
c4aee2a - One too many brackets...
22abb2e - Closure format slightly different
0ba0cfd - Wonder if closures/lambdas work?
39838ab - Undoing Lerna specific notation
b58d90b - Pretend branch... undone
6f4e052 - Pretend branch
dfcde8f - No change test
d843055 - Demo change to trigger build etc
f194ce1 - Demo change to trigger build etc
446e0b3 - Test
35aac75 - Another change
358a20c - Trying more crap
c7af73d - Setting upstream when publishing
7fb7cc7 - Correcting publish stuff
a6c52b3 - Blarg
d9ff332 - Testing not using the restricted method??
57bca69 - Grumble
0d7264f - Typo
53b69fd - Looks like it doesn't like git workspace files changing before versioning?!
a905a9d - New branch to pretend there's a change.
2803f46 - Bracket. Whoops!
f4d2f90 - Force update
77b5d61 - Force update
e684853 - Second commit to branch
8ec56df - Cleanup README for demo
836be5c - Force build
8cb1f74 - Logging
dea7173 - More debug
0fc73b6