1- import {
2- Dialog ,
3- DialogContent ,
4- DialogDescription ,
5- DialogHeader ,
6- DialogTitle ,
7- } from '@/components/shared/ui/dialog' ;
8- import { Button } from '@/components/shared/ui/button' ;
91import { AgGridReact } from 'ag-grid-react' ;
102import {
113 ColDef ,
@@ -14,7 +6,17 @@ import {
146 AllCommunityModule ,
157 RowClickedEvent ,
168} from 'ag-grid-community' ;
9+
1710import { Ability } from '@/types/developer-dashboard/appTypes' ;
11+ import {
12+ Dialog ,
13+ DialogContent ,
14+ DialogDescription ,
15+ DialogHeader ,
16+ DialogTitle ,
17+ } from '@/components/shared/ui/dialog' ;
18+ import { Button } from '@/components/shared/ui/button' ;
19+ import { theme , fonts } from '@/components/user-dashboard/connect/ui/theme' ;
1820
1921// Register AG Grid modules
2022ModuleRegistry . registerModules ( [ AllCommunityModule ] ) ;
@@ -121,9 +123,10 @@ export function AbilitySelectorModal({
121123 existingAbilities,
122124 availableAbilities,
123125} : AbilitySelectorModalProps ) {
124- // Filter out already added abilities
126+ // Filter out already added abilities and abilities with 'dev' status
125127 const filteredAbilities = availableAbilities . filter (
126- ( ability ) => ! existingAbilities . includes ( ability . packageName ) ,
128+ ( ability ) =>
129+ ! existingAbilities . includes ( ability . packageName ) && ability . deploymentStatus !== 'dev' ,
127130 ) ;
128131
129132 const handleRowClick = async ( event : RowClickedEvent ) => {
@@ -148,24 +151,36 @@ export function AbilitySelectorModal({
148151 return (
149152 < Dialog open = { isOpen } onOpenChange = { handleOpenChange } >
150153 < DialogContent
151- className = " w-[85vw] max-w-6xl h-[70vh] flex flex-col !max-w-none bg-white dark:bg-neutral-800"
154+ className = { ` w-[85vw] max-w-6xl h-[70vh] flex flex-col !max-w-none ${ theme . mainCard } ` }
152155 style = { { width : '85vw' , maxWidth : '72rem' } }
153156 >
154157 < DialogHeader className = "flex-shrink-0" >
155- < DialogTitle className = " text-neutral-800 dark: text-white" >
158+ < DialogTitle className = { ` text-lg font-semibold ${ theme . text } ` } style = { fonts . heading } >
156159 Add Abilities to App Version
157160 </ DialogTitle >
158- < DialogDescription >
161+ < DialogDescription className = { ` ${ theme . textMuted } ` } style = { fonts . body } >
159162 Click any ability to add it immediately to your app version.
160163 { existingAbilities . length > 0 &&
161164 ` (${ existingAbilities . length } abilities already added)` }
162- { filteredAbilities . length < availableAbilities . length &&
163- ` • Showing ${ filteredAbilities . length } of ${ availableAbilities . length } available abilities` }
164165 </ DialogDescription >
165166 </ DialogHeader >
166167
167- < div className = "flex-1 min-h-0" >
168- < div className = "ag-theme-alpine h-full w-full bg-white dark:bg-neutral-800 dark:[&_.ag-root-wrapper]:!bg-transparent dark:[&_.ag-header]:!bg-neutral-700 dark:[&_.ag-header-cell]:!bg-neutral-700 dark:[&_.ag-header-cell]:!text-white dark:[&_.ag-row]:!bg-neutral-800 dark:[&_.ag-cell]:!text-white dark:[&_.ag-row-hover]:!bg-neutral-700" >
168+ < div className = { `flex-1 min-h-0 border ${ theme . mainCardBorder } rounded-lg overflow-hidden` } >
169+ < div
170+ className = "ag-theme-alpine h-full w-full"
171+ style = {
172+ {
173+ '--ag-background-color' : 'transparent' ,
174+ '--ag-header-background-color' : theme . itemBg ,
175+ '--ag-odd-row-background-color' : theme . mainCard ,
176+ '--ag-row-hover-color' : theme . itemBg ,
177+ '--ag-border-color' : theme . mainCardBorder ,
178+ '--ag-header-foreground-color' : theme . text ,
179+ '--ag-foreground-color' : theme . text ,
180+ '--ag-data-color' : theme . text ,
181+ } as React . CSSProperties
182+ }
183+ >
169184 < AgGridReact
170185 rowData = { filteredAbilities }
171186 columnDefs = { TOOL_GRID_COLUMNS }
@@ -181,7 +196,7 @@ export function AbilitySelectorModal({
181196 </ div >
182197 </ div >
183198
184- < div className = " flex justify-end gap-2 pt-4 border-t dark:border-neutral-600 flex-shrink-0" >
199+ < div className = { ` flex justify-end gap-2 pt-4 border-t ${ theme . cardBorder } flex-shrink-0` } >
185200 < Button variant = "outline" onClick = { onClose } >
186201 Close
187202 </ Button >
0 commit comments