[studio] Remove admin column from list of users #1884#1889
Merged
janavlachova merged 4 commits intoMay 31, 2026
Conversation
Add a Vitest contract (app/src/boundaries.contract.spec.ts) to assert the ESLint boundary config and catch accidental rule changes. Update README with architecture boundary docs and practical pnpm lint commands. Change app and root package.json scripts to expose local/full/check variants and run the lint-boundaries script from the studio root. Improve app/scripts/lint-boundaries.mjs to forward CLI args correctly (ignore --filter) and provide a default --max-warnings=0 target. Tighten boundary rules by removing the temporary query->db exception in eslint.boundaries.mjs.
Add icon support and metadata to table columns and cells, and ensure admin users are surfaced first. Key changes: - AgdbCell: use a safe computed rowValue, add leading icon/title/class resolvers, render icon next to cell content with styling. - types.ts: introduce icon, iconResolver, iconTitle, iconTitleResolver, iconClass, and iconClassResolver on Column. - tableData: simplify data population by storing row objects directly and preserving keys when generating row keys. - AgdbTableRow: compute cell keys from columns map instead of object keys. - userConfig: import crown icon and add iconResolver/title/class for the username column; remove separate admin column. - userStore: sort fetched users by admin status (admins first) and then by username. - Tests and styles: update user tests to expect admin-first ordering and crown icon behavior; add CSS for crown color. Also add a ts-expect-error to handle importing an mjs boundary config in a spec. These changes enable per-row icon rendering, keep table data consistent, and prioritize admin users in listings.
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
Contributor
There was a problem hiding this comment.
Pull request overview
This PR removes the explicit Admin column in Studio’s user table and represents admin status with a crown icon next to usernames, while adding supporting table-cell icon capabilities and boundary-lint script updates.
Changes:
- Adds configurable table cell icons and preserves extra row fields for resolver logic.
- Updates user list sorting/display so admin users appear first and receive a crown icon.
- Refactors lint boundary scripts/docs and adds boundary contract tests.
Reviewed changes
Copilot reviewed 16 out of 16 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
agdb_studio/README.md |
Documents lint boundary commands and architecture rules. |
agdb_studio/package.json |
Updates Studio root lint scripts. |
agdb_studio/app/package.json |
Adds local/full lint check scripts and simplifies boundary script commands. |
agdb_studio/app/scripts/lint-boundaries.mjs |
Normalizes forwarded args and applies default ESLint warning policy. |
agdb_studio/eslint.boundaries.mjs |
Removes query-to-db boundary exception. |
agdb_studio/app/src/boundaries.contract.spec.ts |
Adds tests for boundary rule structure. |
agdb_studio/libs/features/common/src/composables/table/types.ts |
Adds optional column icon configuration fields. |
agdb_studio/libs/features/common/src/composables/table/tableData.ts |
Keeps full row data while storing table rows. |
agdb_studio/libs/features/common/src/components/table/AgdbTableRow.vue |
Renders cells from configured columns instead of row keys. |
agdb_studio/libs/features/common/src/components/table/AgdbCell.vue |
Renders optional per-cell icon content. |
agdb_studio/libs/features/user/src/composables/userStore.ts |
Sorts users with admins first, then username. |
agdb_studio/libs/features/user/src/composables/userConfig.ts |
Removes Admin column and adds crown icon resolver to username column. |
agdb_studio/libs/features/user/src/components/UserTable.vue |
Adjusts table width and crown icon styling. |
agdb_studio/libs/features/user/src/**/*.spec.ts |
Updates/adds tests for admin sorting and crown icon behavior. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Refactor fetchUsers to await client.value?.admin_user_list() and return early if the response is falsy to avoid runtime errors when the API yields undefined. Keep existing sorting by admin status and username. Add a unit test ensuring users remain unchanged when admin_user_list resolves to undefined. Also update README wording to recommend running lint:boundaries from the repository root.
agnesoft
approved these changes
May 31, 2026
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.
No description provided.