Skip to content

Advanced Component Group Ordering#212

Merged
jbrooksuk merged 2 commits into
mainfrom
advanced-component-group-ordering
Jun 25, 2026
Merged

Advanced Component Group Ordering#212
jbrooksuk merged 2 commits into
mainfrom
advanced-component-group-ordering

Conversation

@jbrooksuk

@jbrooksuk jbrooksuk commented Jan 21, 2025

Copy link
Copy Markdown
Member

Closes #201

This PR implements the ability to configure component groups to order its components in different ways.

To-do:

  • Implement new ordering options into API.
  • Add tests.

Currently, you can order by:

  • ID
  • Name
  • Status
  • Last Updated At
  • Manual

When using "manual" mode, Cachet will continue to use the components.order column. This value is also used as the default ordering before applying the custom order.

From the dashboard you can now select the "Component Group Order" when editing a component group. Anything other than "Manual" will also require you to select an order direction.

CleanShot 2025-01-21 at 21 05 48@2x

@jbrooksuk jbrooksuk added this to the v3.0 milestone Jan 21, 2025
@glipschitz

Copy link
Copy Markdown

I have done a fresh pull @jbrooksuk and don't see this update to be able to test for you.

Component groups can now order their components by ID, name, status, last
updated, or manually. Non-manual orderings also take a direction (asc/desc).

- Adds order_column / order_direction to the component_groups table.
- Exposes the options in the Filament dashboard and the JSON API (create/update
  + resource output), validating that a direction is supplied for non-manual
  orderings.
- Moves status-page component-group querying into a dedicated ComponentGroups
  view component that applies the configured ordering.
- Adds API and status-page ordering tests.

Closes #201

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jbrooksuk jbrooksuk force-pushed the advanced-component-group-ordering branch from 73877ac to 5399d6f Compare June 24, 2026 12:54
Adds the order_column / order_direction keys (and the resource order_column
and order_direction blocks) to all translated locales: de, de_AT, de_CH,
es_ES, fr, ko, nl, ph, pt_BR, zh_CN and zh_TW. en_GB falls back to en as the
strings are identical.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jbrooksuk jbrooksuk marked this pull request as ready for review June 25, 2026 07:53
@jbrooksuk jbrooksuk merged commit a744c70 into main Jun 25, 2026
34 checks passed
@jbrooksuk jbrooksuk deleted the advanced-component-group-ordering branch June 25, 2026 07:54
jbrooksuk added a commit to steffjenl/core that referenced this pull request Jun 25, 2026
* origin/main:
  Support Laravel 12 (cachethq#245)
  Advanced Component Group Ordering (cachethq#212)
  Move completed maintenance into the timeline (cachethq#334)
  Fix code styling
  Component Monitoring (cachethq#211)
  Fix failing "Build Assets" GitHub Actions job (cachethq#362)
  Fix missing login route redirects
  Fix formatting of bad query params
  Show affected components on the incident page (cachethq#363)
  Compile Assets
  Add Psalm taint (security) analysis (cachethq#364)
  Fix PHPDoc typo from IncidentTemplate.php (cachethq#365)
  Fix code styling
  Allow setting component group collapsed state via API (cachethq#356)
  Bump vite, @tailwindcss/vite and laravel-vite-plugin (cachethq#361)
  Ability to GET each component's group nested under its relationships, when querying schedules or incidents via the API (cachethq#357)
  Add helper text to Cachet settings forms (cachethq#353)
  Fix status page incident count to exclude resolved incidents (cachethq#355)
  Fix schedule API update silently dropping completed_at (cachethq#359)
  Compile Assets

# Conflicts:
#	composer.json
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature Request: Add Ordering Options to Components

2 participants