Repository navigation
Conversation
A grid view opens as a page of widgets. In edit mode widgets are added, configured, moved and removed, and the whole grid is saved at once. A dialog creates a grid view or edits its title, description and technical name. - grid views are kept out of the table view lists in the navigation - views without a table survive a reload of the tables in the store Co-authored-by: Ruben van der Linde <ruben@conduction.nl> Assisted-by: ClaudeCode:claude-opus-5-5 Signed-off-by: Remko <remko@conduction.nl>
…om the navigation - the grid view dialog no longer sends a technical name, which the server refuses for a view without a table, and only sends the fields the create endpoint takes; its fields are labelled and Submit is disabled while saving - grid views get their own list in the navigation, with an action to create one, so the create flow has an entry point - leaving a grid page with unsaved changes asks first, and the browser warns before closing the tab - loading the tables keeps shared views and grid views but drops views of tables that are gone again - the grid page imports the layout helpers from gridLayout.js, disables move steps that cannot apply and hides them on a narrow canvas - a Playwright spec covers creating, editing, configuring and saving a page Assisted-by: ClaudeCode:claude-opus-5-5 Signed-off-by: Remko <remko@conduction.nl>
…instance The draft, the stored grid, the unsaved-changes check and the discard confirmation live in setup(), so the route guards use them directly and the options API reads the same state, without getCurrentInstance(). Assisted-by: ClaudeCode:claude-opus-5-5 Signed-off-by: Remko <remko@conduction.nl>
remko48
added this pull request to stack #3080
October 12, 2026 15:00
remko48
force-pushed
the
feat/noid/grid-view-page
branch
from
October 12, 2026 15:37
387d9c3 to
6237e08
Compare
Signed-off-by: Remko <remko@conduction.nl>
…type select in the e2e test - the grid views list now follows the applications, which the Cypress helper for creating an application addresses as the second list - the Playwright spec opens the widget type select from its indicator, like the other specs do, instead of clicking the component root Assisted-by: ClaudeCode:claude-opus-5-5 Signed-off-by: Remko <remko@conduction.nl>
…test Escape only reaches the type select, which keeps the focus after a pick, so the dialog stayed open. Assisted-by: ClaudeCode:claude-opus-5-5 Signed-off-by: Remko <remko@conduction.nl>
remko48
force-pushed
the
feat/noid/grid-view-page
branch
from
October 14, 2026 09:00
3667d54 to
3e165a0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A grid view now opens as a page: its widgets on the grid, with an edit mode to add, configure, move, resize and remove widgets.
What changes
GridViewpage: "Edit page" works on a copy of the grid; "Save" sends the whole grid in one update and "Cancel" throws the copy away. The server validates the grid on save (see the earlier backend PR). Leaving the page or switching views with unsaved changes asks first, and the browser warns before the tab is closed or reloaded.GridViewSettingsdialog: create a grid view (title, emoji, description) or edit those fields on an existing one. It takes no technical name, since a grid view is named by its id. Editing a grid view from its menu opens this dialog instead of the table view settings./view/{id}shows the grid page for a grid view; only users who can manage the view see the edit button.insertStandaloneViewcreates a view throughPOST /api/2/views. Reloading the tables no longer drops shared views and grid views from the store.🖼️ Screenshots
🏁 Checklist
/backport to stableX.X🤖 AI (if applicable)