Skip to content

feat: allow clicking on key#2991

Merged
chronark merged 6 commits intomainfrom
feat-allow-clicking-on-key-id
Mar 19, 2025
Merged

feat: allow clicking on key#2991
chronark merged 6 commits intomainfrom
feat-allow-clicking-on-key-id

Conversation

@ogzhanolguncu
Copy link
Contributor

@ogzhanolguncu ogzhanolguncu commented Mar 19, 2025

What does this PR do?

Fixes # (issue)

  • Uses "DESC" as default ordering
  • Allows linking from table and details drawer to key details page directly
  • Simplifies key details drawer

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • Chore (refactoring code, technical debt, workflow improvements)
  • Enhancement (small improvements)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How should this be tested?

  • Test A
  • Test B

Checklist

Required

  • Filled out the "How to test" section in this PR
  • Read Contributing Guide
  • Self-reviewed my own code
  • Commented on my code in hard-to-understand areas
  • Ran pnpm build
  • Ran pnpm fmt
  • Checked for warnings, there are none
  • Removed all console.logs
  • Merged the latest changes from main onto my branch with git pull origin main
  • My changes don't cause any responsiveness issues

Appreciated

  • If a UI change was made: Added a screen recording or screenshots to this PR
  • Updated the Unkey Docs if changes were necessary

Summary by CodeRabbit

  • New Features
    • Enhanced log displays with improved number formatting for count values.
    • Structured log details now present data in a clear, key-value format with interactive links for viewing API key details.
    • Logs and rate limits tables offer consistent ascending sort orders for time-based columns.
    • Time-series views adjust data granularity for extended ranges, providing clearer overviews.
    • New props added to components for improved data handling and navigation, including apiId for better context in links and details.

@changeset-bot
Copy link

changeset-bot bot commented Mar 19, 2025

⚠️ No Changeset found

Latest commit: a35030f

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel
Copy link

vercel bot commented Mar 19, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
dashboard ✅ Ready (Inspect) Visit Preview 💬 Add feedback Mar 19, 2025 3:19pm
engineering ✅ Ready (Inspect) Visit Preview 💬 Add feedback Mar 19, 2025 3:19pm
play ✅ Ready (Inspect) Visit Preview 💬 Add feedback Mar 19, 2025 3:19pm
www ✅ Ready (Inspect) Visit Preview 💬 Add feedback Mar 19, 2025 3:19pm

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 19, 2025

📝 Walkthrough

Walkthrough

This pull request updates various dashboard components related to log display and sorting. It introduces a new number formatting function, revises prop types—including the addition of an apiId prop to several components—and refactors components for improved clarity and navigation. Sorting functionality is enhanced by extending the sort hook to accept an explicit order, and granularity logic is adjusted for longer time ranges.

Changes

File(s) Change Summary
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-outcome-distribution-section.tsx Imported formatNumber from @/lib/fmt and updated the logic to format the count value.
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-section.tsx Changed the details prop type from `string
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/roles-permissions.tsx Revised the PermissionsSection component by removing the explicit React.FC wrapper and using inline destructuring for props.
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/index.tsx,
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/override-indicator.tsx,
apps/dashboard/app/(app)/apis/[apiId]/_overview/logs-client.tsx,
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/logs-table.tsx (ID column)
Added an apiId prop and integrated it into multiple components to replace static key displays with navigable Link components, enhancing API key detail navigation.
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/logs-table.tsx (sorting)
apps/dashboard/app/(app)/ratelimits/[namespaceId]/_overview/components/table/logs-table.tsx,
apps/dashboard/components/logs/hooks/use-sort.tsx
Updated sorting logic by extending the toggleSort function to include an order parameter (defaulting to "desc") and modifying table column renderers to pass "asc" explicitly for sorting.
apps/dashboard/lib/trpc/routers/utils/granularity.ts Modified getTimeseriesGranularity to return "per6Hours" when the time range is two weeks or longer, instead of "perHour".

Sequence Diagram(s)

sequenceDiagram
    participant User as User
    participant Table as LogsTable Component
    participant SortHook as useSort (toggleSort)
    participant State as Sorting State

    User->>Table: Clicks on sortable column header
    Table->>SortHook: Call toggleSort("time", multiSort=false, order="asc")
    SortHook->>State: Update sorting state with order "asc"
    State-->>Table: Return updated sort state
    Table->>User: Re-render table with new sort order
Loading
sequenceDiagram
    participant User as User
    participant KeyIdentifier as KeyIdentifierColumn
    participant Router as Next.js Router

    User->>KeyIdentifier: Clicks on API key link
    KeyIdentifier->>Router: Navigate to API key details (using apiId & key details)
    Router-->>User: Render API key details page
Loading

Possibly related PRs

Suggested labels

Improvement, Needs Approval

Suggested reviewers

  • mcstepp
  • perkinsjr
  • chronark
  • MichaelUnkey

Tip

⚡🧪 Multi-step agentic review comment chat (experimental)
  • We're introducing multi-step agentic chat in review comments. This experimental feature enhances review discussions with the CodeRabbit agentic chat by enabling advanced interactions, including the ability to create pull requests directly from comments.
    - To enable this feature, set early_access to true under in the settings.

📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 9b43b38 and a35030f.

📒 Files selected for processing (2)
  • apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/index.tsx (3 hunks)
  • apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/override-indicator.tsx (4 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/override-indicator.tsx
🧰 Additional context used
🧬 Code Definitions (1)
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/index.tsx (2)
internal/clickhouse/src/keys/keys.ts (1) (1)
  • KeysOverviewLog (118-118)
apps/dashboard/components/timestamp-info.tsx (1) (1)
  • TimestampInfo (38-110)
⏰ Context from checks skipped due to timeout of 90000ms (10)
  • GitHub Check: Test Packages / Test ./packages/cache
  • GitHub Check: Test Packages / Test ./packages/hono
  • GitHub Check: Test Packages / Test ./internal/billing
  • GitHub Check: Test Packages / Test ./internal/clickhouse
  • GitHub Check: Test Go API Local / Test
  • GitHub Check: Test Agent Local / test_agent_local
  • GitHub Check: Test API / API Test Local
  • GitHub Check: Build / Build
  • GitHub Check: autofix
  • GitHub Check: Analyze (javascript-typescript)
🔇 Additional comments (8)
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/index.tsx (8)

4-4: Good addition of required imports

The imports for TimestampInfo and Next.js Link components are necessary for the new functionality that allows users to click on keys and navigate to the details page.

Also applies to: 6-6


30-30: Correctly added apiId prop

The addition of the apiId property to the props interface and component parameter list is necessary for constructing the correct navigation path to key details.

Also applies to: 38-38


66-77: Good implementation of clickable key ID

The restructuring of identifiers as an object and addition of the Link component improves navigation by allowing users to click directly on a key ID to view its details. This matches the PR objective of "allow clicking on key".

The title attribute with "View details for ${log.key_id}" provides good accessibility context for what happens when clicking the link.


79-86: Good usage of TimestampInfo component

The restructuring of the usage information as an object and the integration of the TimestampInfo component improves the user experience by providing more interactive timestamp information with hover details.


88-98: Improved data structure for limits

Converting the limits from an array to an object format makes the code more readable and maintainable. The logic for handling conditional displays remains intact while the structure is improved.


100-102: Cleaner identity data structure

Restructuring the identity representation as an object instead of an array is a good improvement for code clarity and consistency with the other data structures in this component.


104-104: Improved metadata representation

Converting the metadata representation to use an object with a clear message when no data is available improves the consistency with other data structures and provides better clarity to users.


69-72:

Details

❓ Verification inconclusive

Verify the key detail navigation link construction

The link to the key details page is constructed using optional chaining for key_auth_id, but there's no fallback if this value is undefined. Consider how the application should handle this case.


🏁 Script executed:

#!/bin/bash
# Check how key_auth_id is used elsewhere in the codebase and if there are fallbacks
rg "key_auth_id\??" --type=tsx --type=ts -A 5 -B 5

Length of output: 80


Action Required: Confirm Fallback for Undefined key_auth_id

It appears that the optional chaining in the href construction (using log.key_details?.key_auth_id) will result in an undefined value if key_auth_id isn’t set. We couldn’t locate any alternate handling (such as a default value or conditional rendering) by our initial search—likely due to the file type filter issue. Please manually verify whether other parts of the codebase handle this case, or consider implementing one of the following:

  • Provide a fallback (e.g., a default string) for key_auth_id when it’s undefined.
  • Conditionally render the link only when key_auth_id is defined.
  • Ensure that key_auth_id is guaranteed to be set earlier in the workflow.

For further verification, please run the updated command below which searches TypeScript and TSX files correctly:

Once you’ve reviewed these usages and clarified the intended behavior when key_auth_id is undefined, please update the implementation accordingly.


🏁 Script executed:

#!/bin/bash
# Search for usage of 'key_auth_id' in .ts and .tsx files
rg "key_auth_id" -g "*.tsx" -g "*.ts" -A 5 -B 5

Length of output: 6834


Attention: Verify and Update Fallback Handling for Missing key_auth_id

The current implementation constructs the key details URL as follows:

href={`/apis/${apiId}/keys/${log.key_details?.key_auth_id}/${log.key_id}`}

Our search confirmed that this pattern is used consistently (e.g., in override-indicator.tsx) and that no explicit fallback is provided when log.key_details—and consequently log.key_details?.key_auth_id—is undefined. Although the database schema indicates that key_auth_id (mapped in our API as keyAuthId) is non-null, the optional chaining in the UI suggests that there might be scenarios where log.key_details is missing from the response.

Please verify the intended behavior:

  • If log.key_details is required and should always be provided: Ensure the data flow guarantees this field exists. In that case, the optional chaining might be unnecessary.
  • If log.key_details can be legitimately missing: Consider implementing one of the following:
    • Conditional Rendering: Render the navigation link only when log.key_details?.key_auth_id is defined.
    • Fallback Value: Provide a sensible default or redirect to an error/info page when the key detail is missing.

Review these options with your team to align the implementation with the business logic and user experience goals.

✨ Finishing Touches
  • 📝 Generate Docstrings

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@github-actions
Copy link
Contributor

github-actions bot commented Mar 19, 2025

Thank you for following the naming conventions for pull request titles! 🙏

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (2)
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/index.tsx (1)

66-82: Consider renaming the "hehe" property to something more descriptive.

The property name "hehe" appears to be a placeholder or temporary name that should be replaced with something more descriptive of its purpose, like "keyId" or "identifier".

const identifiers = {
-  hehe: (
+  keyId: (
    <Link
      title={`View details for ${
        log.key_details.identity?.external_id ||
        log.key_details.owner_id ||
        log.key_details.name ||
        "this API key"
      }`}
      className="font-mono underline decoration-dotted"
      href={`/apis/${apiId}/keys/${log.key_details?.key_auth_id}/${log.key_id}`}
    >
      <div className="font-mono font-medium truncate">{log.key_id}</div>
    </Link>
  ),
  Name: log.key_details.name || "N/A",
};
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/override-indicator.tsx (1)

78-92: Good enhancement with Link component for navigation.

Replacing the static div with a Link component improves user experience by enabling navigation to key details. The title attribute with fallbacks provides good context.

Consider extracting the title logic to a utility function since it's duplicated in both files:

+ // Add this to a shared utility file
+ export function getKeyTitle(keyDetails: any) {
+   return keyDetails?.identity?.external_id ||
+          keyDetails?.owner_id ||
+          keyDetails?.name ||
+          "this API key";
+ }

// Then in both components:
<Link
  title={`View details for ${getKeyTitle(log.key_details)}`}
  // rest of the props
>
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f4e5f6d and 9d77506.

📒 Files selected for processing (10)
  • apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-outcome-distribution-section.tsx (2 hunks)
  • apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-section.tsx (2 hunks)
  • apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/roles-permissions.tsx (1 hunks)
  • apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/index.tsx (3 hunks)
  • apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/override-indicator.tsx (4 hunks)
  • apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/logs-table.tsx (2 hunks)
  • apps/dashboard/app/(app)/apis/[apiId]/_overview/logs-client.tsx (1 hunks)
  • apps/dashboard/app/(app)/ratelimits/[namespaceId]/_overview/components/table/logs-table.tsx (1 hunks)
  • apps/dashboard/components/logs/hooks/use-sort.tsx (1 hunks)
  • apps/dashboard/lib/trpc/routers/utils/granularity.ts (1 hunks)
🧰 Additional context used
🧬 Code Definitions (2)
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/logs-table.tsx (1)
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/override-indicator.tsx (1) (1)
  • KeyIdentifierColumn (64-95)
apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-outcome-distribution-section.tsx (1)
apps/dashboard/app/(app)/apis/[apiId]/_overview/utils.ts (1) (1)
  • formatOutcomeName (12-20)
⏰ Context from checks skipped due to timeout of 90000ms (11)
  • GitHub Check: Test Packages / Test ./packages/api
  • GitHub Check: Test Packages / Test ./packages/cache
  • GitHub Check: Test Packages / Test ./internal/resend
  • GitHub Check: Test Go API Local / Test
  • GitHub Check: Test Packages / Test ./packages/nextjs
  • GitHub Check: Test API / API Test Local
  • GitHub Check: Test Packages / Test ./internal/clickhouse
  • GitHub Check: Build / Build
  • GitHub Check: Test Agent Local / test_agent_local
  • GitHub Check: autofix
  • GitHub Check: Analyze (javascript-typescript)
🔇 Additional comments (21)
apps/dashboard/app/(app)/apis/[apiId]/_overview/logs-client.tsx (1)

29-31: Good addition of the apiId prop to KeysOverviewLogDetails

This change properly passes the apiId to the KeysOverviewLogDetails component, maintaining consistency with other components that already receive this prop. This enables navigation to detailed API key views, supporting the PR's objective of allowing key clicking.

apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-outcome-distribution-section.tsx (1)

2-2: Good import of formatNumber utility

Adding the formatNumber utility from the fmt library will help standardize number formatting across the application.

apps/dashboard/lib/trpc/routers/utils/granularity.ts (1)

92-92: Good granularity adjustment for longer time ranges

Changing the granularity from "perHour" to "per6Hours" for time ranges greater than two weeks is a good optimization. This reduces the number of data points returned for larger time ranges, which can improve performance and readability of visualizations.

apps/dashboard/app/(app)/ratelimits/[namespaceId]/_overview/components/table/logs-table.tsx (1)

176-176:

Details

✅ Verification successful

Good explicit sort direction specification

Adding the explicit "asc" parameter to toggleSort provides better control over the default sort behavior for the Last Request column. This ensures consistency in how data is initially presented to users.


🏁 Script executed:

#!/bin/bash
# Check for consistent usage of the toggleSort function with explicit direction
# This helps ensure sorting behavior is consistent across the application

# Look for other toggleSort calls that might benefit from explicit direction
echo "All toggleSort calls in the codebase:"
rg "toggleSort\(" --type ts --type tsx -A 1 -B 1

# Check the implementation of useSort to understand the third parameter
echo -e "\nImplementation of useSort hook:"
fd --type f "use-sort" -x cat {}

Length of output: 2203


Sorting Behavior Verified: Explicit "asc" Specification Confirmed

The explicit use of "asc" in the toggleSort call for the "time" field is implemented correctly. This change clearly overrides the default "desc" value defined in the useSort hook, ensuring that the Last Request column is sorted in ascending order on initial render, which improves consistency in data presentation.

  • The useSort hook's implementation confirms that the third parameter defaults to "desc". Overriding it with "asc" in this instance is an intentional and beneficial change.
  • A script to check for toggleSort calls revealed a minor file type flag issue (tsx not recognized), but reviewing the code confirms that explicit sort direction is consistently applied where intended.
apps/dashboard/components/logs/hooks/use-sort.tsx (1)

30-39: Feature enhancement: Added explicit sort order parameter

The addition of the order parameter with a default value of "desc" improves the flexibility of the sort mechanism, allowing consumers to specify the initial sort direction explicitly rather than always defaulting to ascending order.

apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/logs-table.tsx (2)

39-39: Added apiId prop to KeyIdentifierColumn

This modification enables the KeyIdentifierColumn to construct navigable links to specific API key details pages, improving the user navigation experience within the dashboard.


157-157: Enhanced sorting behavior for "Last Used" column

The explicit "asc" parameter ensures that time values are sorted in ascending order when this column is toggled, providing a more intuitive chronological display of the last used times - from oldest to newest.

apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/roles-permissions.tsx (1)

88-88: Code simplification: Removed React.FC type annotation

The change simplifies the component declaration by removing the unnecessary React.FC type wrapper while maintaining type safety through inline prop destructuring with type annotation. This is aligned with modern React practices.

apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/components/log-section.tsx (3)

11-11: Improved typing: Enhanced details prop type

The type change from string | string[] to Record<string, React.ReactNode> | string provides more flexibility and type safety by allowing structured key-value data to be passed directly to the component.


16-16: Updated clipboard behavior

The clipboard content is now generated using JSON.stringify instead of custom string formatting, ensuring consistent serialization of the details object. This matches the updated prop type.


34-47: Simplified rendering logic for object details

The component now renders object details in a more straightforward way by directly mapping over object entries, removing the previous string parsing logic. This change makes the code more maintainable and less error-prone.

apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/log-details/index.tsx (7)

4-6: Good addition of required imports for enhanced functionality.

The added imports for TimestampInfo and Link support the new linking functionality and improved timestamp display.


30-30: Good addition of apiId prop.

Adding the apiId to the props type enables navigation to key details, which improves user experience.


38-38: Correctly updated component parameter list.

The apiId parameter is properly destructured from props, maintaining consistency with the type definition.


84-91: Good improvement of the timestamp display.

Using the TimestampInfo component for "Last Used" provides better timestamp formatting and user experience than a plain string.


93-103: Good refactoring from array to object structure.

The transformation of limits from an array to an object improves code readability and maintainability.


105-107: Good refactoring of identity representation.

Changing the identity from an array to an object provides a clearer representation of the data.


109-109: Good improvement in handling missing metadata.

Converting metaString from a string to an object with a message provides better visual feedback when no metadata is available.

apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/override-indicator.tsx (3)

6-6: Good addition of Link import.

The import of the Link component is necessary for the enhanced navigation functionality.


33-33: Good addition of apiId prop.

Adding the apiId property to KeyIdentifierColumnProps allows for key-specific navigation.


64-64: Correctly updated function signature.

The component signature is properly updated to include the new apiId parameter.

Copy link
Contributor Author

@chronark can we ship this for leadscope?

Copy link
Collaborator

uhm, what’s this label
CleanShot 2025-03-19 at 15.41.13@2x.png

Copy link
Contributor Author

lemme see if I pushed my latest branch I did some refactors there

Copy link
Contributor Author

sorry about that

Copy link
Collaborator

the last fallback should be the id I think
not “this key”

Copy link
Collaborator

just make it “View details for ${key_id}”

Copy link
Collaborator

unless we clearly label what we’re displaying, this is a bit confusing I think

Copy link
Contributor Author

hmm okay

Copy link
Collaborator

cause “View details for ${identity.id} or whatever is just wrong if we’re not linking them to an identity

Copy link
Collaborator

and since we can’t do that yet, let’s be clear about what we’re doing

Copy link
Contributor Author

I thought that would add more context than plain key_id

Copy link
Collaborator

oh we can, but right now that’s not what this PR does 😄

Copy link
Contributor Author

:pepeout:

Copy link
Contributor Author

okay fixed

Copy link
Contributor Author

:seal-of-approval: ready

@chronark chronark enabled auto-merge March 19, 2025 16:12
@chronark chronark added this pull request to the merge queue Mar 19, 2025
Merged via the queue into main with commit 9b3d9aa Mar 19, 2025
28 of 29 checks passed
@chronark chronark deleted the feat-allow-clicking-on-key-id branch March 19, 2025 16:17
@coderabbitai coderabbitai bot mentioned this pull request Apr 8, 2025
18 tasks
@coderabbitai coderabbitai bot mentioned this pull request May 12, 2025
18 tasks
@coderabbitai coderabbitai bot mentioned this pull request Jun 25, 2025
18 tasks
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.

2 participants