From 70c790c93d18a077d167fb4f154de88435789f51 Mon Sep 17 00:00:00 2001 From: tsuki Date: Tue, 12 Aug 2025 21:25:52 +0800 Subject: [PATCH] add blog system --- app/admin/[slug]/pa.tsx | 192 ++ app/admin/common/control.tsx | 598 ++++ app/admin/common/page.tsx | 18 + app/admin/dashboard/page.tsx | 20 +- app/admin/editor/editor-component.tsx | 10 + app/admin/editor/page.tsx | 13 + app/admin/layout.tsx | 4 +- app/admin/nav-documents.tsx | 2 +- app/admin/sidebar.tsx | 5 + app/admin/site-header.tsx | 49 +- app/admin/users/page.tsx | 17 +- app/api/session/sync/route.ts | 5 +- app/app-sidebar.tsx | 314 ++- app/blog/[slug]/page.tsx | 60 + app/blog/layout.tsx | 13 + app/blog/page.tsx | 50 + app/globals.css | 2 + app/layout.tsx | 2 +- app/nav.tsx | 212 ++ app/page.tsx | 28 +- app/simple/page.tsx | 5 + components/blog-viewer.tsx | 100 + components/map-component.tsx | 3 +- components/table-of-contents.tsx | 165 ++ components/tiptap-icons/align-center-icon.tsx | 38 + .../tiptap-icons/align-justify-icon.tsx | 38 + components/tiptap-icons/align-left-icon.tsx | 38 + components/tiptap-icons/align-right-icon.tsx | 38 + components/tiptap-icons/arrow-left-icon.tsx | 24 + components/tiptap-icons/ban-icon.tsx | 26 + components/tiptap-icons/blockquote-icon.tsx | 44 + components/tiptap-icons/bold-icon.tsx | 26 + components/tiptap-icons/chevron-down-icon.tsx | 26 + components/tiptap-icons/close-icon.tsx | 24 + components/tiptap-icons/code-block-icon.tsx | 38 + components/tiptap-icons/code2-icon.tsx | 32 + .../tiptap-icons/corner-down-left-icon.tsx | 26 + .../tiptap-icons/external-link-icon.tsx | 28 + components/tiptap-icons/heading-five-icon.tsx | 28 + components/tiptap-icons/heading-four-icon.tsx | 28 + components/tiptap-icons/heading-icon.tsx | 24 + components/tiptap-icons/heading-one-icon.tsx | 28 + components/tiptap-icons/heading-six-icon.tsx | 30 + .../tiptap-icons/heading-three-icon.tsx | 36 + components/tiptap-icons/heading-two-icon.tsx | 28 + components/tiptap-icons/highlighter-icon.tsx | 26 + components/tiptap-icons/image-plus-icon.tsx | 26 + components/tiptap-icons/italic-icon.tsx | 24 + components/tiptap-icons/link-icon.tsx | 28 + components/tiptap-icons/list-icon.tsx | 56 + components/tiptap-icons/list-ordered-icon.tsx | 56 + components/tiptap-icons/list-todo-icon.tsx | 50 + components/tiptap-icons/moon-star-icon.tsx | 30 + components/tiptap-icons/redo2-icon.tsx | 26 + components/tiptap-icons/strike-icon.tsx | 28 + components/tiptap-icons/subscript-icon.tsx | 38 + components/tiptap-icons/sun-icon.tsx | 58 + components/tiptap-icons/superscript-icon.tsx | 38 + components/tiptap-icons/trash-icon.tsx | 26 + components/tiptap-icons/underline-icon.tsx | 26 + components/tiptap-icons/undo2-icon.tsx | 26 + .../blockquote-node/blockquote-node.scss | 37 + .../code-block-node/code-block-node.scss | 54 + .../heading-node/heading-node.scss | 38 + .../horizontal-rule-node-extension.ts | 14 + .../horizontal-rule-node.scss | 25 + .../tiptap-node/image-node/image-node.scss | 31 + .../image-upload-node-extension.ts | 145 + .../image-upload-node/image-upload-node.scss | 249 ++ .../image-upload-node/image-upload-node.tsx | 547 ++++ .../tiptap-node/image-upload-node/index.tsx | 1 + .../tiptap-node/list-node/list-node.scss | 160 ++ .../paragraph-node/paragraph-node.scss | 272 ++ .../tiptap-templates/simple/data/content.json | 477 ++++ .../simple/simple-editor.scss | 82 + .../tiptap-templates/simple/simple-editor.tsx | 281 ++ .../tiptap-templates/simple/theme-toggle.tsx | 48 + .../badge/badge-colors.scss | 395 +++ .../badge/badge-group.scss | 16 + .../tiptap-ui-primitive/badge/badge.scss | 99 + .../tiptap-ui-primitive/badge/badge.tsx | 46 + .../tiptap-ui-primitive/badge/index.tsx | 1 + .../button/button-colors.scss | 429 +++ .../button/button-group.scss | 22 + .../tiptap-ui-primitive/button/button.scss | 314 +++ .../tiptap-ui-primitive/button/button.tsx | 116 + .../tiptap-ui-primitive/button/index.tsx | 1 + components/tiptap-ui-primitive/card/card.scss | 77 + components/tiptap-ui-primitive/card/card.tsx | 74 + components/tiptap-ui-primitive/card/index.tsx | 1 + .../dropdown-menu/dropdown-menu.scss | 63 + .../dropdown-menu/dropdown-menu.tsx | 98 + .../dropdown-menu/index.tsx | 1 + .../tiptap-ui-primitive/input/index.tsx | 1 + .../tiptap-ui-primitive/input/input.scss | 45 + .../tiptap-ui-primitive/input/input.tsx | 25 + .../tiptap-ui-primitive/popover/index.tsx | 1 + .../tiptap-ui-primitive/popover/popover.scss | 63 + .../tiptap-ui-primitive/popover/popover.tsx | 38 + .../tiptap-ui-primitive/separator/index.tsx | 1 + .../separator/separator.scss | 23 + .../separator/separator.tsx | 33 + .../tiptap-ui-primitive/spacer/index.tsx | 1 + .../tiptap-ui-primitive/spacer/spacer.tsx | 28 + .../tiptap-ui-primitive/toolbar/index.tsx | 1 + .../tiptap-ui-primitive/toolbar/toolbar.scss | 98 + .../tiptap-ui-primitive/toolbar/toolbar.tsx | 123 + .../tiptap-ui-primitive/tooltip/index.tsx | 1 + .../tiptap-ui-primitive/tooltip/tooltip.scss | 43 + .../tiptap-ui-primitive/tooltip/tooltip.tsx | 231 ++ .../blockquote-button/blockquote-button.tsx | 125 + .../tiptap-ui/blockquote-button/index.tsx | 2 + .../blockquote-button/use-blockquote.ts | 256 ++ .../code-block-button/code-block-button.tsx | 125 + .../tiptap-ui/code-block-button/index.tsx | 2 + .../code-block-button/use-code-block.ts | 263 ++ .../color-highlight-button.scss | 49 + .../color-highlight-button.tsx | 146 + .../color-highlight-button/index.tsx | 2 + .../use-color-highlight.ts | 240 ++ .../color-highlight-popover.tsx | 210 ++ .../color-highlight-popover/index.tsx | 1 + .../heading-button/heading-button.tsx | 130 + components/tiptap-ui/heading-button/index.tsx | 2 + .../tiptap-ui/heading-button/use-heading.ts | 329 +++ .../heading-dropdown-menu.tsx | 129 + .../tiptap-ui/heading-dropdown-menu/index.tsx | 2 + .../use-heading-dropdown-menu.ts | 132 + .../image-upload-button.tsx | 123 + .../tiptap-ui/image-upload-button/index.tsx | 2 + .../image-upload-button/use-image-upload.ts | 199 ++ components/tiptap-ui/link-popover/index.tsx | 2 + .../tiptap-ui/link-popover/link-popover.tsx | 310 +++ .../link-popover/use-link-popover.ts | 278 ++ components/tiptap-ui/list-button/index.tsx | 2 + .../tiptap-ui/list-button/list-button.tsx | 123 + components/tiptap-ui/list-button/use-list.ts | 324 +++ .../tiptap-ui/list-dropdown-menu/index.tsx | 1 + .../list-dropdown-menu/list-dropdown-menu.tsx | 125 + .../use-list-dropdown-menu.ts | 219 ++ components/tiptap-ui/mark-button/index.tsx | 2 + .../tiptap-ui/mark-button/mark-button.tsx | 123 + components/tiptap-ui/mark-button/use-mark.ts | 230 ++ .../tiptap-ui/text-align-button/index.tsx | 2 + .../text-align-button/text-align-button.tsx | 135 + .../text-align-button/use-text-align.ts | 240 ++ .../tiptap-ui/undo-redo-button/index.tsx | 2 + .../undo-redo-button/undo-redo-button.tsx | 126 + .../undo-redo-button/use-undo-redo.ts | 200 ++ components/toc-toggle.tsx | 66 + components/ui/radio-group.tsx | 45 + components/ui/scroll-area.tsx | 58 + hooks/use-composed-ref.ts | 47 + hooks/use-cursor-visibility.ts | 71 + hooks/use-element-rect.ts | 166 ++ hooks/use-menu-navigation.ts | 196 ++ hooks/use-mobile.ts | 14 +- hooks/use-scrolling.ts | 75 + hooks/use-throttled-callback.ts | 47 + hooks/use-tiptap-editor.ts | 49 + hooks/use-unmount.ts | 21 + hooks/use-window-size.ts | 93 + lib/tiptap-utils.ts | 356 +++ package-lock.json | 2397 ++++++++++++++++- package.json | 19 + styles/_keyframe-animations.scss | 91 + styles/_variables.scss | 296 ++ types/config.ts | 85 + 168 files changed, 17012 insertions(+), 160 deletions(-) create mode 100644 app/admin/[slug]/pa.tsx create mode 100644 app/admin/common/control.tsx create mode 100644 app/admin/common/page.tsx create mode 100644 app/admin/editor/editor-component.tsx create mode 100644 app/admin/editor/page.tsx create mode 100644 app/blog/[slug]/page.tsx create mode 100644 app/blog/layout.tsx create mode 100644 app/blog/page.tsx create mode 100644 app/nav.tsx create mode 100644 app/simple/page.tsx create mode 100644 components/blog-viewer.tsx create mode 100644 components/table-of-contents.tsx create mode 100644 components/tiptap-icons/align-center-icon.tsx create mode 100644 components/tiptap-icons/align-justify-icon.tsx create mode 100644 components/tiptap-icons/align-left-icon.tsx create mode 100644 components/tiptap-icons/align-right-icon.tsx create mode 100644 components/tiptap-icons/arrow-left-icon.tsx create mode 100644 components/tiptap-icons/ban-icon.tsx create mode 100644 components/tiptap-icons/blockquote-icon.tsx create mode 100644 components/tiptap-icons/bold-icon.tsx create mode 100644 components/tiptap-icons/chevron-down-icon.tsx create mode 100644 components/tiptap-icons/close-icon.tsx create mode 100644 components/tiptap-icons/code-block-icon.tsx create mode 100644 components/tiptap-icons/code2-icon.tsx create mode 100644 components/tiptap-icons/corner-down-left-icon.tsx create mode 100644 components/tiptap-icons/external-link-icon.tsx create mode 100644 components/tiptap-icons/heading-five-icon.tsx create mode 100644 components/tiptap-icons/heading-four-icon.tsx create mode 100644 components/tiptap-icons/heading-icon.tsx create mode 100644 components/tiptap-icons/heading-one-icon.tsx create mode 100644 components/tiptap-icons/heading-six-icon.tsx create mode 100644 components/tiptap-icons/heading-three-icon.tsx create mode 100644 components/tiptap-icons/heading-two-icon.tsx create mode 100644 components/tiptap-icons/highlighter-icon.tsx create mode 100644 components/tiptap-icons/image-plus-icon.tsx create mode 100644 components/tiptap-icons/italic-icon.tsx create mode 100644 components/tiptap-icons/link-icon.tsx create mode 100644 components/tiptap-icons/list-icon.tsx create mode 100644 components/tiptap-icons/list-ordered-icon.tsx create mode 100644 components/tiptap-icons/list-todo-icon.tsx create mode 100644 components/tiptap-icons/moon-star-icon.tsx create mode 100644 components/tiptap-icons/redo2-icon.tsx create mode 100644 components/tiptap-icons/strike-icon.tsx create mode 100644 components/tiptap-icons/subscript-icon.tsx create mode 100644 components/tiptap-icons/sun-icon.tsx create mode 100644 components/tiptap-icons/superscript-icon.tsx create mode 100644 components/tiptap-icons/trash-icon.tsx create mode 100644 components/tiptap-icons/underline-icon.tsx create mode 100644 components/tiptap-icons/undo2-icon.tsx create mode 100644 components/tiptap-node/blockquote-node/blockquote-node.scss create mode 100644 components/tiptap-node/code-block-node/code-block-node.scss create mode 100644 components/tiptap-node/heading-node/heading-node.scss create mode 100644 components/tiptap-node/horizontal-rule-node/horizontal-rule-node-extension.ts create mode 100644 components/tiptap-node/horizontal-rule-node/horizontal-rule-node.scss create mode 100644 components/tiptap-node/image-node/image-node.scss create mode 100644 components/tiptap-node/image-upload-node/image-upload-node-extension.ts create mode 100644 components/tiptap-node/image-upload-node/image-upload-node.scss create mode 100644 components/tiptap-node/image-upload-node/image-upload-node.tsx create mode 100644 components/tiptap-node/image-upload-node/index.tsx create mode 100644 components/tiptap-node/list-node/list-node.scss create mode 100644 components/tiptap-node/paragraph-node/paragraph-node.scss create mode 100644 components/tiptap-templates/simple/data/content.json create mode 100644 components/tiptap-templates/simple/simple-editor.scss create mode 100644 components/tiptap-templates/simple/simple-editor.tsx create mode 100644 components/tiptap-templates/simple/theme-toggle.tsx create mode 100644 components/tiptap-ui-primitive/badge/badge-colors.scss create mode 100644 components/tiptap-ui-primitive/badge/badge-group.scss create mode 100644 components/tiptap-ui-primitive/badge/badge.scss create mode 100644 components/tiptap-ui-primitive/badge/badge.tsx create mode 100644 components/tiptap-ui-primitive/badge/index.tsx create mode 100644 components/tiptap-ui-primitive/button/button-colors.scss create mode 100644 components/tiptap-ui-primitive/button/button-group.scss create mode 100644 components/tiptap-ui-primitive/button/button.scss create mode 100644 components/tiptap-ui-primitive/button/button.tsx create mode 100644 components/tiptap-ui-primitive/button/index.tsx create mode 100644 components/tiptap-ui-primitive/card/card.scss create mode 100644 components/tiptap-ui-primitive/card/card.tsx create mode 100644 components/tiptap-ui-primitive/card/index.tsx create mode 100644 components/tiptap-ui-primitive/dropdown-menu/dropdown-menu.scss create mode 100644 components/tiptap-ui-primitive/dropdown-menu/dropdown-menu.tsx create mode 100644 components/tiptap-ui-primitive/dropdown-menu/index.tsx create mode 100644 components/tiptap-ui-primitive/input/index.tsx create mode 100644 components/tiptap-ui-primitive/input/input.scss create mode 100644 components/tiptap-ui-primitive/input/input.tsx create mode 100644 components/tiptap-ui-primitive/popover/index.tsx create mode 100644 components/tiptap-ui-primitive/popover/popover.scss create mode 100644 components/tiptap-ui-primitive/popover/popover.tsx create mode 100644 components/tiptap-ui-primitive/separator/index.tsx create mode 100644 components/tiptap-ui-primitive/separator/separator.scss create mode 100644 components/tiptap-ui-primitive/separator/separator.tsx create mode 100644 components/tiptap-ui-primitive/spacer/index.tsx create mode 100644 components/tiptap-ui-primitive/spacer/spacer.tsx create mode 100644 components/tiptap-ui-primitive/toolbar/index.tsx create mode 100644 components/tiptap-ui-primitive/toolbar/toolbar.scss create mode 100644 components/tiptap-ui-primitive/toolbar/toolbar.tsx create mode 100644 components/tiptap-ui-primitive/tooltip/index.tsx create mode 100644 components/tiptap-ui-primitive/tooltip/tooltip.scss create mode 100644 components/tiptap-ui-primitive/tooltip/tooltip.tsx create mode 100644 components/tiptap-ui/blockquote-button/blockquote-button.tsx create mode 100644 components/tiptap-ui/blockquote-button/index.tsx create mode 100644 components/tiptap-ui/blockquote-button/use-blockquote.ts create mode 100644 components/tiptap-ui/code-block-button/code-block-button.tsx create mode 100644 components/tiptap-ui/code-block-button/index.tsx create mode 100644 components/tiptap-ui/code-block-button/use-code-block.ts create mode 100644 components/tiptap-ui/color-highlight-button/color-highlight-button.scss create mode 100644 components/tiptap-ui/color-highlight-button/color-highlight-button.tsx create mode 100644 components/tiptap-ui/color-highlight-button/index.tsx create mode 100644 components/tiptap-ui/color-highlight-button/use-color-highlight.ts create mode 100644 components/tiptap-ui/color-highlight-popover/color-highlight-popover.tsx create mode 100644 components/tiptap-ui/color-highlight-popover/index.tsx create mode 100644 components/tiptap-ui/heading-button/heading-button.tsx create mode 100644 components/tiptap-ui/heading-button/index.tsx create mode 100644 components/tiptap-ui/heading-button/use-heading.ts create mode 100644 components/tiptap-ui/heading-dropdown-menu/heading-dropdown-menu.tsx create mode 100644 components/tiptap-ui/heading-dropdown-menu/index.tsx create mode 100644 components/tiptap-ui/heading-dropdown-menu/use-heading-dropdown-menu.ts create mode 100644 components/tiptap-ui/image-upload-button/image-upload-button.tsx create mode 100644 components/tiptap-ui/image-upload-button/index.tsx create mode 100644 components/tiptap-ui/image-upload-button/use-image-upload.ts create mode 100644 components/tiptap-ui/link-popover/index.tsx create mode 100644 components/tiptap-ui/link-popover/link-popover.tsx create mode 100644 components/tiptap-ui/link-popover/use-link-popover.ts create mode 100644 components/tiptap-ui/list-button/index.tsx create mode 100644 components/tiptap-ui/list-button/list-button.tsx create mode 100644 components/tiptap-ui/list-button/use-list.ts create mode 100644 components/tiptap-ui/list-dropdown-menu/index.tsx create mode 100644 components/tiptap-ui/list-dropdown-menu/list-dropdown-menu.tsx create mode 100644 components/tiptap-ui/list-dropdown-menu/use-list-dropdown-menu.ts create mode 100644 components/tiptap-ui/mark-button/index.tsx create mode 100644 components/tiptap-ui/mark-button/mark-button.tsx create mode 100644 components/tiptap-ui/mark-button/use-mark.ts create mode 100644 components/tiptap-ui/text-align-button/index.tsx create mode 100644 components/tiptap-ui/text-align-button/text-align-button.tsx create mode 100644 components/tiptap-ui/text-align-button/use-text-align.ts create mode 100644 components/tiptap-ui/undo-redo-button/index.tsx create mode 100644 components/tiptap-ui/undo-redo-button/undo-redo-button.tsx create mode 100644 components/tiptap-ui/undo-redo-button/use-undo-redo.ts create mode 100644 components/toc-toggle.tsx create mode 100644 components/ui/radio-group.tsx create mode 100644 components/ui/scroll-area.tsx create mode 100644 hooks/use-composed-ref.ts create mode 100644 hooks/use-cursor-visibility.ts create mode 100644 hooks/use-element-rect.ts create mode 100644 hooks/use-menu-navigation.ts create mode 100644 hooks/use-scrolling.ts create mode 100644 hooks/use-throttled-callback.ts create mode 100644 hooks/use-tiptap-editor.ts create mode 100644 hooks/use-unmount.ts create mode 100644 hooks/use-window-size.ts create mode 100644 lib/tiptap-utils.ts create mode 100644 styles/_keyframe-animations.scss create mode 100644 styles/_variables.scss create mode 100644 types/config.ts diff --git a/app/admin/[slug]/pa.tsx b/app/admin/[slug]/pa.tsx new file mode 100644 index 0000000..e215596 --- /dev/null +++ b/app/admin/[slug]/pa.tsx @@ -0,0 +1,192 @@ +"use client" + +import { useState } from "react" +import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card" +import { Input } from "@/components/ui/input" +import { Label } from "@/components/ui/label" +import { Slider } from "@/components/ui/slider" +import { Button } from "@/components/ui/button" +import { Badge } from "@/components/ui/badge" +import { Separator } from "@/components/ui/separator" +import { Settings, Volume2, FlashlightIcon as Brightness4, Wifi, Battery } from "lucide-react" + +export default function ControlPanel() { + const [volume, setVolume] = useState([75]) + const [brightness, setBrightness] = useState([60]) + const [temperature, setTemperature] = useState([22]) + const [serverName, setServerName] = useState("Production Server") + const [apiKey, setApiKey] = useState("") + const [maxConnections, setMaxConnections] = useState([100]) + + return ( +
+
+ {/* Header */} +
+ +
+

Control Panel

+

Manage your system settings and configurations

+
+
+ +
+ {/* System Controls */} + + + + + System Controls + + Adjust audio, display, and system preferences + + +
+ + +
+ +
+ + +
+ +
+ + +
+
+
+ + {/* Server Configuration */} + + + + + Server Configuration + + Configure server settings and API access + + +
+ + setServerName(e.target.value)} + placeholder="Enter server name" + /> +
+ +
+ + setApiKey(e.target.value)} + placeholder="Enter API key" + /> +
+ +
+ + +
+
+
+ + {/* Status Dashboard */} + + + + + System Status + + Current system metrics and status indicators + + +
+
+ +
+
+
+
+ 75% +
+
+ +
+ +
+
+
+
+ 8.2GB +
+
+ +
+ +
+
+
+
+ 456GB +
+
+ +
+ +
+
+
+
+ + Online + +
+
+
+ + + +
+ + + +
+
+
+
+
+
+ ) +} diff --git a/app/admin/common/control.tsx b/app/admin/common/control.tsx new file mode 100644 index 0000000..519715c --- /dev/null +++ b/app/admin/common/control.tsx @@ -0,0 +1,598 @@ +import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card" +import { Input } from "@/components/ui/input" +import { Label } from "@/components/ui/label" +import { Slider } from "@/components/ui/slider" +import { Button } from "@/components/ui/button" +import { Badge } from "@/components/ui/badge" +import { Separator } from "@/components/ui/separator" +import { Switch } from "@/components/ui/switch" +import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select" +import { Textarea } from "@/components/ui/textarea" +import { Checkbox } from "@/components/ui/checkbox" +import { RadioGroup, RadioGroupItem } from "@/components/ui/radio-group" +import { ScrollArea } from "@/components/ui/scroll-area" +import { useState } from "react" +import { Config, defaultConfig } from "@/types/config" +import { + Settings, + Volume2, + FlashlightIcon as Brightness4, + Wifi, + Database, + Shield, + Monitor, + Bell, + Server, + Lock, + Zap, + HardDrive, + Cpu, +} from "lucide-react" + + + +export default function Control() { + const [config, setConfig] = useState(defaultConfig) + + const updateConfig = (key: keyof Config, value: any) => { + setConfig(prev => ({ + ...prev, + [key]: value + })) + } + + const updateSliderConfig = (key: keyof Config, value: number[]) => { + updateConfig(key, value[0]) + } + + return ( + +
+
+
+ + + + + System Controls + + Audio, display, and hardware settings + + +
+ + updateSliderConfig('volume', value)} + max={100} + step={1} + /> +
+ +
+ + updateSliderConfig('brightness', value)} + max={100} + step={1} + /> +
+ +
+ + updateSliderConfig('temperature', value)} + min={16} + max={30} + step={0.5} + /> +
+ +
+ + +
+
+
+ + {/* Server Configuration */} + + + + + Server Configuration + + Core server and API settings + + +
+ + updateConfig('serverName', e.target.value)} + placeholder="Enter server name" + /> +
+ +
+ + updateConfig('apiKey', e.target.value)} + placeholder="Enter API key" + /> +
+ +
+ + +
+ +
+ + +
+
+
+ + {/* Performance Settings */} + + + + + Performance Settings + + Resource allocation and optimization + + +
+ + updateSliderConfig('maxConnections', value)} + min={10} + max={500} + step={10} + /> +
+ +
+ + updateSliderConfig('cacheSize', value)} + min={64} + max={2048} + step={64} + /> +
+ +
+ + updateSliderConfig('threadCount', value)} + min={1} + max={32} + step={1} + /> +
+ +
+ + updateSliderConfig('memoryLimit', value)} + min={512} + max={8192} + step={256} + /> +
+ +
+ + updateSliderConfig('networkBandwidth', value)} + min={10} + max={1000} + step={10} + /> +
+
+
+ + {/* Security & Features */} + + + + + Security & Features + + Security settings and feature toggles + + +
+ + updateConfig('sslEnabled', checked)} + /> +
+ +
+ + updateConfig('autoBackup', checked)} + /> +
+ +
+ + updateConfig('compressionEnabled', checked)} + /> +
+ +
+ + updateConfig('debugMode', checked)} + /> +
+ +
+ + updateConfig('maintenanceMode', checked)} + /> +
+ +
+ + +
+
+
+ + {/* Notifications & Alerts */} + + + + + Notifications & Alerts + + Configure notification preferences + + +
+ + updateConfig('notifications', checked)} + /> +
+ +
+ + updateConfig('emailAlerts', checked)} + /> +
+ +
+ + updateConfig('smsAlerts', checked)} + /> +
+ +
+ + updateConfig('monitoringEnabled', checked)} + /> +
+ +
+ + +
+ +
+ + +
+
+
+ + {/* Advanced Configuration */} + + + + + Advanced Configuration + + Detailed system configuration options + + +
+ +