Skip to content

Releases: nofusscomputing/centurion_ui

0.14.4

Choose a tag to compare

@github-actions github-actions released this 21 Sep 04:26

0.14.4 (2026-09-21)

Fixes

  • layout: On create from DetailLayout redirect to created object

0.14.3

Choose a tag to compare

@github-actions github-actions released this 18 Sep 05:33

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

Choose a tag to compare

@github-actions github-actions released this 17 Sep 04:48

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 new url for adding an object

0.14.1

Choose a tag to compare

@github-actions github-actions released this 13 Sep 04:39

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

Choose a tag to compare

@github-actions github-actions released this 10 Sep 03:38

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

Choose a tag to compare

@github-actions github-actions released this 30 Aug 06:30

0.13.2 (2026-08-30)

Fixes

  • When adding an object its add action must be added to parent route

0.13.1

Choose a tag to compare

@github-actions github-actions released this 30 Aug 05:02

0.13.1 (2026-08-30)

Fixes

  • layout: Ensure that when adding new model, that gates exist
  • Correct settings routes

0.13.0

Choose a tag to compare

@github-actions github-actions released this 29 Aug 07:35

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 baseURL directly 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

Choose a tag to compare

@github-actions github-actions released this 11 Aug 07:00

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 type field not ticket_type when 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

Choose a tag to compare

@github-actions github-actions released this 31 May 08:12

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