mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-10-29 22:55:24 +00:00
feat: harden plugin api for separate repos, signed updates and generic external login
This commit is contained in:
1 parent
fb9c168b6b
commit
80944301dd
310 files changed
+6577
-4927
No files matched your search
+127
-48
@@ -12,44 +12,127 @@
|
||||
*/
|
||||
|
||||
// Primitives
|
||||
export * from "@/components/alert";
|
||||
export * from "@/components/alert-dialog";
|
||||
export * from "@/components/badge";
|
||||
export * from "@/components/button";
|
||||
export * from "@/components/card";
|
||||
export * from "@/components/checkbox";
|
||||
export * from "@/components/dialog";
|
||||
export * from "@/components/dropdown-menu";
|
||||
export * from "@/components/input";
|
||||
export * from "@/components/label";
|
||||
export * from "@/components/password-input";
|
||||
export * from "@/components/popover";
|
||||
export * from "@/components/scroll-area";
|
||||
export * from "@/components/select";
|
||||
export * from "@/components/select2";
|
||||
export * from "@/components/separator";
|
||||
export * from "@/components/skeleton";
|
||||
export * from "@/components/slider";
|
||||
export * from "@/components/switch";
|
||||
export * from "@/components/textarea";
|
||||
export * from "@/components/tooltip";
|
||||
export { Alert, AlertDescription, AlertTitle } from "@/components/alert";
|
||||
export {
|
||||
AlertDialog,
|
||||
AlertDialogAction,
|
||||
AlertDialogCancel,
|
||||
AlertDialogContent,
|
||||
AlertDialogDescription,
|
||||
AlertDialogFooter,
|
||||
AlertDialogHeader,
|
||||
AlertDialogOverlay,
|
||||
AlertDialogPortal,
|
||||
AlertDialogTitle,
|
||||
AlertDialogTrigger,
|
||||
} from "@/components/alert-dialog";
|
||||
export { Badge } from "@/components/badge";
|
||||
export { Button, type ButtonProps } from "@/components/button";
|
||||
export {
|
||||
Card,
|
||||
CardAction,
|
||||
CardContent,
|
||||
CardDescription,
|
||||
CardFooter,
|
||||
CardHeader,
|
||||
CardTitle,
|
||||
} from "@/components/card";
|
||||
export { Checkbox } from "@/components/checkbox";
|
||||
export {
|
||||
Dialog,
|
||||
DialogClose,
|
||||
DialogContent,
|
||||
DialogDescription,
|
||||
DialogFooter,
|
||||
DialogHeader,
|
||||
DialogOverlay,
|
||||
DialogPortal,
|
||||
DialogTitle,
|
||||
DialogTrigger,
|
||||
} from "@/components/dialog";
|
||||
export {
|
||||
DropdownMenu,
|
||||
DropdownMenuCheckboxItem,
|
||||
DropdownMenuContent,
|
||||
DropdownMenuGroup,
|
||||
DropdownMenuItem,
|
||||
DropdownMenuLabel,
|
||||
DropdownMenuPortal,
|
||||
DropdownMenuRadioGroup,
|
||||
DropdownMenuRadioItem,
|
||||
DropdownMenuSeparator,
|
||||
DropdownMenuShortcut,
|
||||
DropdownMenuSub,
|
||||
DropdownMenuSubContent,
|
||||
DropdownMenuSubTrigger,
|
||||
DropdownMenuTrigger,
|
||||
} from "@/components/dropdown-menu";
|
||||
export { Input } from "@/components/input";
|
||||
export { Label } from "@/components/label";
|
||||
export { PasswordInput } from "@/components/password-input";
|
||||
export {
|
||||
Popover,
|
||||
PopoverAnchor,
|
||||
PopoverContent,
|
||||
PopoverTrigger,
|
||||
} from "@/components/popover";
|
||||
export { ScrollArea, ScrollBar } from "@/components/scroll-area";
|
||||
export {
|
||||
Select,
|
||||
SelectContent,
|
||||
SelectGroup,
|
||||
SelectItem,
|
||||
SelectLabel,
|
||||
SelectScrollDownButton,
|
||||
SelectScrollUpButton,
|
||||
SelectSeparator,
|
||||
SelectTrigger,
|
||||
SelectValue,
|
||||
} from "@/components/select";
|
||||
export { Select2 } from "@/components/select2";
|
||||
export { Separator } from "@/components/separator";
|
||||
export { Skeleton } from "@/components/skeleton";
|
||||
export { Slider } from "@/components/slider";
|
||||
export { Switch } from "@/components/switch";
|
||||
export { Textarea, type TextareaProps } from "@/components/textarea";
|
||||
export {
|
||||
Tooltip,
|
||||
TooltipContent,
|
||||
TooltipProvider,
|
||||
TooltipTrigger,
|
||||
} from "@/components/tooltip";
|
||||
|
||||
// Composites
|
||||
export * from "@/components/section-card";
|
||||
export * from "@/components/metric-card";
|
||||
export * from "@/components/charts";
|
||||
export { FakeSwitch, SectionCard, SettingRow } from "@/components/section-card";
|
||||
export { MetricCard } from "@/components/metric-card";
|
||||
export {
|
||||
BarSeries,
|
||||
MiniStat,
|
||||
RadialGauge,
|
||||
Sparkline,
|
||||
StatRow,
|
||||
type BarSeriesItem,
|
||||
type BarSeriesProps,
|
||||
type RadialGaugeProps,
|
||||
type SparklineProps,
|
||||
} from "@/components/charts";
|
||||
export { LineChart, type LineChartSeries } from "@/components/charts/LineChart";
|
||||
export {
|
||||
CardGridCanvas,
|
||||
ColumnCountStepper,
|
||||
} from "@/components/card-grid/CardGridCanvas";
|
||||
export type * from "@/components/card-grid/types";
|
||||
export {
|
||||
type GridCardCatalogEntry,
|
||||
type GridColSpan,
|
||||
type GridLayout,
|
||||
type GridSlot,
|
||||
} from "@/components/card-grid/types";
|
||||
export { ConnectionScreen } from "@/components/connection/ConnectionScreen";
|
||||
export * from "@/components/connection/connection-status";
|
||||
export { type ConnectionStatus } from "@/components/connection/connection-status";
|
||||
export {
|
||||
FullScreenAppWrapper,
|
||||
type FullScreenAppPhase,
|
||||
} from "@/features/FullScreenAppWrapper";
|
||||
} from "@/components/FullScreenAppWrapper";
|
||||
|
||||
// Connection surfaces
|
||||
export {
|
||||
@@ -87,7 +170,16 @@ export {
|
||||
runAdaptivePolling,
|
||||
getPollingEnvironmentMultiplier,
|
||||
} from "@/lib/adaptive-polling";
|
||||
export * from "@/components/sheet";
|
||||
export {
|
||||
Sheet,
|
||||
SheetClose,
|
||||
SheetContent,
|
||||
SheetDescription,
|
||||
SheetFooter,
|
||||
SheetHeader,
|
||||
SheetTitle,
|
||||
SheetTrigger,
|
||||
} from "@/components/sheet";
|
||||
// The frame and filter box every host manager card uses.
|
||||
export {
|
||||
ManagerCardShell,
|
||||
@@ -116,7 +208,12 @@ export { useTheme as useAppTheme } from "@/components/theme-provider";
|
||||
export { findMatchingKeybinding } from "@/lib/keybinding-match";
|
||||
export { globalShortcutHandler } from "@/lib/global-shortcut-handler";
|
||||
export { isMacPlatform, isTabJumpHotkey } from "@/lib/tab-jump-hotkey";
|
||||
export type * from "@/types/keybindings";
|
||||
export {
|
||||
type CustomKeybinding,
|
||||
type KeyCombo,
|
||||
type KeybindingAction,
|
||||
type KeybindingActionType,
|
||||
} from "@/types/keybindings";
|
||||
|
||||
// Connection helpers: which backend a host's session dials, and the pieces
|
||||
// the desktop app needs to reach it.
|
||||
@@ -170,22 +267,4 @@ export {
|
||||
export { getDeviceId } from "@/lib/device-id";
|
||||
|
||||
// A host that is never saved, for connecting to an address straight away.
|
||||
export {
|
||||
createQuickConnectHost,
|
||||
isQuickConnectHost,
|
||||
} from "@/sidebar/quick-connect-host";
|
||||
|
||||
// The desktop app's local file bridge (window.electronAPI.localFs and
|
||||
// localTransfer), for plugins that browse or transfer local files.
|
||||
export type {
|
||||
LocalCollectedFile,
|
||||
LocalDirectoryListing,
|
||||
LocalFileEntry,
|
||||
LocalFsHomeInfo,
|
||||
LocalFsResult,
|
||||
LocalTransferOrigin,
|
||||
LocalTransferProgress,
|
||||
LocalTrashResult,
|
||||
LocalWalkFile,
|
||||
LocalWalkResult,
|
||||
} from "@/types/electron";
|
||||
export { createQuickConnectHost } from "@/sidebar/quick-connect-host";
|
||||
Reference in new issue
Block a user