Releases: nofusscomputing/centurion_ui
Releases · nofusscomputing/centurion_ui
Release list
0.14.4
0.14.3
0.14.3 (2026-09-18)
Fixes
- function: When formatting datetime to iso, dont change timezone to GMT/UTC
- function: FormatTime still requires calculation offset to convert iso8601 "local time"
Tests
- function: Unit Test Cases for FormatTime ISO8601 "Local Time"
0.14.2
0.14.2 (2026-09-17)
Fixes
- component: When submitting a form if field is an empty string, don't attempt to process.
- component: When creating a new ticket, redirect to ticket when created
- component: Add button for DisplayTable to use
newurl for adding an object
0.14.1
0.14.1 (2026-09-13)
Fixes
- component: Add hidden field for DualFiledSelector data
- component: Use correct window var when accessing env
0.14.0
0.14.0 (2026-09-10)
⚠️ Note: This version of the UI is not yet compatible with Centurion ERP yet. v1.33.0 will be the first version that supports this release
feat
- component: Add About modal dialog
- component: Whn in mobile view Add header "refresh" button to hamburger menu
- Add error boundary to PageContent route
- Add the navigation description
- function: As part of dynamic route loading, cache the root metadata
- function: Use routes supplied by backend
Refactoring
- component: Enable Form component passthrough
- layout: Update TicketLayout to use fetch.Form
- layout: migrate backend data types
- layout: Add placeholder DetailLayout until Detail is refactored.
0.13.2
0.13.2 (2026-08-30)
Fixes
- When adding an object its add action must be added to parent route
0.13.1
0.13.1 (2026-08-30)
Fixes
- layout: Ensure that when adding new model, that gates exist
- Correct settings routes
0.13.0
0.13.0 (2026-08-29)
feat
- fetcher: Ensure that when useGithubFetcher is called that any supplied backendURL is ignored and obtained from the backend provider
- fetcher: Ensure that when useDjangoFetcher is called that any supplied backendURL is ignored and obtained from the backend provider
- loader: Add Github markdown route loader
- fetcher: Add Github HTTP
- fetcher: Add Markdown HTTP
- layout: Add BackendLayout
- fetcher: Add support to jsonHttp fetcher to configure credentials, referrer Policy and mode
- fetcher: Add support to http fetcher to configure credentials, referrer Policy and mode
- loader: Provide
baseURLdirectly to loaders - provider: Make BackendProvider dynamic in that it will obtain the url from a route handle var.
- fetcher: Use backendURL from route context when available.
- loader: Add context prop to ALL loaders
- function: Add routesFromObject for building routes from object
- Add route middleware backendURLMiddleware
- layout: Add ability to specify additional page footer to be appended
- layout: Notification Layout
- Add PageContent to Router
- loader: Add Django Root Metadata loader
- layout: Add Layout for app / site / UI common
- component: Add content refresh / reload to site header
- layout: Add common page content layout
- provider: Add Backend provider
- layout: Add Logout
- layout: Add Login
- layout: Add Base
- loader: Add Django metadata ONLY Loader
- loader: Add Django Loader
- function: Add Django backend fetcher
- function: Add JSON HTTP base fetcher
- function: Add signal parameter to httpFetcher
- function: Add HTTP base fetcher
- Add Base HTTP Exceptions
- fetcher: Add HTTP fetcher skeleton
Fixes
- function: Ensure that the body is passed to the fetcher within apiFetch
- function: Add to routesFromObject capture of invalid values
- function: when building routes from description, if user specifies both backend_url and component ="backend" don't raise error
- provider: Iterating through matching routes must included first one.
- component: Dont load esm icon, import from module for StateSplash
- layout: Redirect routes must not be part of route patching.
- function: URLSanitixe needs to handle root '/'
Refactoring
- function: mv defaults from props to object being called
- function: Finalise routesFromObject
- split router into own objects for clarity
- no requirement to useMemo on dynamic router as it only loads once anyway
- layout: Update and clean Rout Error Boundary
- Update Navbar with proper'er context
- Update Notifications with proper'er context
- component: Conviert LoadingSpinner to cover all StateSplash
- layout: Squash Login and Logout Layout to Redirect layout
- Update dynamicRouter to patch routes on navigation
- update app entrypoint to be typescript
- move app loading to sub-dir
- move current route to interim dynamic routes fn.
- move LoadingSpinner to own Component
- hook: Replace global.fetch with useDjangoFetch
- Update routes so that the httpFetcher thrown exception is caught for redirect
Tests
- component: Test suite for StateSplash
- Unit Test suite for dynamicRouter
- Initial Unit Test suite for route ErrorBoundary
- Initial Unit Test suite for routesFromObject
- Unit Test suite for Entrypoint
- Unit Test suite for app
- hook: Unit Test suite for github fetcher
- layout: Unit test suite for BackendProviderLayout
- fetcher: Unit Test suite for httpMarkdown fetcher
- loader: Unit Test suite for github loader
- provider: Unit test suite for backendProvider
- loader: Unit test suite for djangoRootMetadata Page Loader
- component: Update NotificationDrawer test suite to work with UI and PageContent parent router
- layout: Update List layout test suite to work with UI and PageContent parent router
- layout: PageContent Unit test suite
- function: Unit Test case to confirm empty body on HTTP/POST raises error for httpJsonRequest
- function: Unit Test case to confirm empty body on HTTP/PATCH raises error for httpJsonRequest
- loader: Unit Test Suite for djangoMetadataLoader
- loader: Unit Test Suite for djangoLoader
- layout: Unit Test Suite for Redirect
- function: Add test cases for no path and trailing slant for URLSanitizer
0.12.0
0.12.0 (2026-08-11)
feat
- component: If ticket comment updates, re-render
- component: Pass fetcher error state to ticket comment
- component: For a threaded comment, use different icon to represent
- component: EmptyState object added to display when nothing found
- component: Add new Card that displays DataSet
- component: Update DataSet with Optional Draggable rows
- component: Add Title to the Icon HTML element to display on hover
- component: Add Custom ListItem
- layout: Add front matter tags rendering
- layout: New Layout for markdown documents
- function: Add parsing of md front matter and returning via callback
- layout: Add "Back to Top" button on scroll
- layout: As part of breadcrumb add links to model
- layout: Add ticket submodel and submodel to breadcrumb
- layout: Add spinner to root layout until root metadata is loaded
- component: InlineFieldAction updated to use URL specified in form action
- Add action to project ticket route
- component: When creating comments and status is HTTP/200, reload comments
- hooks: Prevent HTTP/OPTIONS request when performing HTTP/DELETE
Fixes
- component: By default for FormField FormComponent to use react.router.Form
- function: Ticket Type uses
typefield notticket_typewhen rendering markdown - layout: AlertGroup must always be displayed
- layout: Pass root metadata version details to footer
- layout: Correct ticket description edit to use correct state object
- component: Dont attempt to process pageData in DualFieldSelector if it doesnt exist
- correct project task route
- layout: When creating a new ticket don't attempt to display comments
- component: Only attempt to update comments state on HTTP/201
Refactoring
- Remove usage of InlineFieldAction
- component: Dont't modify actionData object
- component: Pass form element to FormField
- component: Unless formState must be tracked, use standard HTML forms for FormField
- layout: Update Ticket Layout jsx -> tsx including finish PatternFly conversion
- component: Set ListItem to be fn
- component: Update Expandable nav section to use built-in Icon
- component: Update Comment to use correct components
- layout: Update Breadcrumbs to use router link as component
- function: When catering for route paths, parse as part of cleaning
- layout: mv pagebreadcrumb to be part of page
- layout: move root metadata fetch to root layout
- component: Add URLSanitize to fetching of ticket comments
- component: Add usage of "new" url from metadata.urls
- Update project ticket route
Tests
- function: Unit Test Suite for URLSanitize fn
- unit: Unit Test Suite Added for markdown front matter parsing
0.11.0
0.11.0 (2026-05-31)
feat
- layout: Add paginated navigation of data within list layout
Fixes
- component: Ensure that DisplayFields columns remain the same size
- component: Whilst building fieldData for DuelFieldSelector pageData my not yet be available