Files
tailscale-custom/.agent/.shared/ui-ux-pro-max/data/icons.csv
T
huanld 2fb067ecbf
checklocks / checklocks (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
natlab-integrationtest / natlab-integrationtest (push) Has been cancelled
CI / gomod-cache (push) Has been cancelled
CI / race-root-integration (1/4) (push) Has been cancelled
CI / race-root-integration (2/4) (push) Has been cancelled
CI / race-root-integration (3/4) (push) Has been cancelled
CI / race-root-integration (4/4) (push) Has been cancelled
CI / test (-race, amd64, 1/3) (push) Has been cancelled
CI / test (-race, amd64, 2/3) (push) Has been cancelled
CI / test (-race, amd64, 3/3) (push) Has been cancelled
CI / test (386) (push) Has been cancelled
CI / test (amd64) (push) Has been cancelled
CI / Windows (benchmarks) (push) Has been cancelled
CI / Windows (1/2) (push) Has been cancelled
CI / Windows (2/2) (push) Has been cancelled
CI / macos (push) Has been cancelled
CI / privileged (push) Has been cancelled
CI / vm (push) Has been cancelled
CI / cross (386, linux) (push) Has been cancelled
CI / cross (amd64, darwin) (push) Has been cancelled
CI / cross (amd64, freebsd) (push) Has been cancelled
CI / cross (amd64, openbsd) (push) Has been cancelled
CI / cross (amd64, windows) (push) Has been cancelled
CI / cross (arm, 5, linux) (push) Has been cancelled
CI / cross (arm, 7, linux) (push) Has been cancelled
CI / cross (arm64, darwin) (push) Has been cancelled
CI / cross (arm64, linux) (push) Has been cancelled
CI / cross (arm64, windows) (push) Has been cancelled
CI / cross (loong64, linux) (push) Has been cancelled
CI / ios (push) Has been cancelled
CI / crossmin (amd64, illumos) (push) Has been cancelled
CI / crossmin (amd64, plan9) (push) Has been cancelled
CI / crossmin (amd64, solaris) (push) Has been cancelled
CI / crossmin (ppc64, aix) (push) Has been cancelled
CI / android (push) Has been cancelled
CI / wasm (push) Has been cancelled
CI / tailscale_go (push) Has been cancelled
CI / fuzz (push) Has been cancelled
CI / depaware (push) Has been cancelled
CI / go_generate (push) Has been cancelled
CI / make_tidy (push) Has been cancelled
CI / licenses (push) Has been cancelled
CI / staticcheck (macOS) (push) Has been cancelled
CI / staticcheck (Linux) (push) Has been cancelled
CI / staticcheck (Windows) (push) Has been cancelled
CI / staticcheck (Portable (1/4)) (push) Has been cancelled
CI / staticcheck (Portable (2/4)) (push) Has been cancelled
CI / staticcheck (Portable (3/4)) (push) Has been cancelled
CI / staticcheck (Portable (4/4)) (push) Has been cancelled
CI / notify_slack (push) Has been cancelled
CI / merge_blocker (push) Has been cancelled
CI / check_mergeability_strict (push) Has been cancelled
CI / check_mergeability (push) Has been cancelled
Dockerfile build / deploy (push) Has been cancelled
test installer.sh / test (curl, alpine:3.21) (push) Has been cancelled
test installer.sh / test (curl, alpine:edge) (push) Has been cancelled
test installer.sh / test (curl, alpine:latest) (push) Has been cancelled
test installer.sh / test (curl, amazonlinux:latest) (push) Has been cancelled
test installer.sh / test (curl, archlinux:latest) (push) Has been cancelled
test installer.sh / test (curl, debian:oldstable-slim) (push) Has been cancelled
test installer.sh / test (curl, debian:sid-slim) (push) Has been cancelled
test installer.sh / test (curl, debian:stable-slim, 1.80.0) (push) Has been cancelled
test installer.sh / test (curl, debian:testing-slim) (push) Has been cancelled
test installer.sh / test (curl, elementary/docker:stable) (push) Has been cancelled
test installer.sh / test (curl, elementary/docker:unstable) (push) Has been cancelled
test installer.sh / test (curl, fedora:latest, 1.80.0) (push) Has been cancelled
test installer.sh / test (curl, kalilinux/kali-dev) (push) Has been cancelled
test installer.sh / test (curl, kalilinux/kali-rolling) (push) Has been cancelled
test installer.sh / test (curl, opensuse/leap:latest) (push) Has been cancelled
test installer.sh / test (curl, opensuse/tumbleweed:latest) (push) Has been cancelled
test installer.sh / test (curl, oraclelinux:8) (push) Has been cancelled
test installer.sh / test (curl, oraclelinux:9) (push) Has been cancelled
test installer.sh / test (curl, parrotsec/core:latest) (push) Has been cancelled
test installer.sh / test (curl, rockylinux:8.7) (push) Has been cancelled
test installer.sh / test (curl, rockylinux:9) (push) Has been cancelled
test installer.sh / test (curl, ubuntu:20.04) (push) Has been cancelled
test installer.sh / test (curl, ubuntu:22.04) (push) Has been cancelled
test installer.sh / test (curl, ubuntu:24.04, 1.80.0) (push) Has been cancelled
test installer.sh / test (wget, debian:oldstable-slim) (push) Has been cancelled
test installer.sh / test (wget, debian:sid-slim) (push) Has been cancelled
update-flake / update-flake (push) Has been cancelled
tailscale.com/cmd/vet / vet (push) Has been cancelled
test installer.sh / notify-slack (push) Has been cancelled
feat: security hardening, production roadmap, admin panel v1
Client security fixes (cmd/tailscale-tray/main.go):
- SSRF protection in Add Server dialog (validateControlURL): reject
  private/loopback/link-local/cloud-metadata IPs via DNS resolution
- RCE gate on AuthURL/BrowseToURL exec paths (validateAuthURL)
- Sanitized URL logging (sanitizeURLForLog drops query auth tokens)
- Error handling on exec.Command with user-facing showError()

Admin panel security (web-admin):
- Bcrypt password hashing (replaces SHA256)
- Rate limiting: 5 failed logins → 15-min lockout
- Session + login attempt cleanup goroutine (hourly)
- url.QueryEscape / encodeURIComponent for all API params
- Fail-hard startup when no TLS and non-loopback bind
- ADMIN_PASSWORD required (no default), password min 12 chars
- Username regex whitelist

Installer hardening (Setup.wxs):
- util:PermissionEx restricts SCM access: only Administrators +
  SYSTEM can start/stop/reconfigure service. Authenticated Users
  limited to QueryStatus/QueryConfig/Interrogate
- Vital="yes" on ServiceInstall

Docs & roadmap:
- PRODUCTION_ROADMAP.md: 5-milestone plan (security + features +
  distribution + ops) with granular tasks, effort, done-when
- CLIENT_SECURITY_AUDIT.md, SECURITY_FIXES.md, DEPLOYMENT.md
- AI assistant rules (.cursorrules, .antigravityrules, etc.)

Build & distribution:
- build-msi.ps1, deploy-and-sign.ps1, sign-release.ps1
- redeploy.ps1, tray-deploy.ps1, test-msi.ps1
- installer/msi/ alternative WXS setup
- Restored .github/workflows/ removed in mirror cleanup

.gitignore hardened: *.pfx, *.p12, *.key, *.pem, .env*
2026-04-22 15:18:11 +07:00

13 KiB

1STTCategoryIcon NameKeywordsLibraryImport CodeUsageBest ForStyle
21Navigationmenuhamburger menu navigation toggle barsLucideimport { Menu } from 'lucide-react'<Menu />Mobile navigation drawer toggle sidebarOutline
32Navigationarrow-leftback previous return navigateLucideimport { ArrowLeft } from 'lucide-react'<ArrowLeft />Back button breadcrumb navigationOutline
43Navigationarrow-rightnext forward continue navigateLucideimport { ArrowRight } from 'lucide-react'<ArrowRight />Forward button next step CTAOutline
54Navigationchevron-downdropdown expand accordion selectLucideimport { ChevronDown } from 'lucide-react'<ChevronDown />Dropdown toggle accordion headerOutline
65Navigationchevron-upcollapse close accordion minimizeLucideimport { ChevronUp } from 'lucide-react'<ChevronUp />Accordion collapse minimizeOutline
76Navigationhomehomepage main dashboard startLucideimport { Home } from 'lucide-react'<Home />Home navigation main pageOutline
87Navigationxclose cancel dismiss remove exitLucideimport { X } from 'lucide-react'<X />Modal close dismiss buttonOutline
98Navigationexternal-linkopen new tab external linkLucideimport { ExternalLink } from 'lucide-react'<ExternalLink />External link indicatorOutline
109Actionplusadd create new insertLucideimport { Plus } from 'lucide-react'<Plus />Add button create new itemOutline
1110Actionminusremove subtract decrease deleteLucideimport { Minus } from 'lucide-react'<Minus />Remove item quantity decreaseOutline
1211Actiontrash-2delete remove discard binLucideimport { Trash2 } from 'lucide-react'<Trash2 />Delete action destructiveOutline
1312Actioneditpencil modify change updateLucideimport { Edit } from 'lucide-react'<Edit />Edit button modify contentOutline
1413Actionsavedisk store persist saveLucideimport { Save } from 'lucide-react'<Save />Save button persist changesOutline
1514Actiondownloadexport save file downloadLucideimport { Download } from 'lucide-react'<Download />Download file exportOutline
1615Actionuploadimport file attach uploadLucideimport { Upload } from 'lucide-react'<Upload />Upload file importOutline
1716Actioncopyduplicate clipboard pasteLucideimport { Copy } from 'lucide-react'<Copy />Copy to clipboardOutline
1817Actionsharesocial distribute sendLucideimport { Share } from 'lucide-react'<Share />Share button socialOutline
1918Actionsearchfind lookup filter queryLucideimport { Search } from 'lucide-react'<Search />Search input barOutline
2019Actionfiltersort refine narrow optionsLucideimport { Filter } from 'lucide-react'<Filter />Filter dropdown sortOutline
2120Actionsettingsgear cog preferences configLucideimport { Settings } from 'lucide-react'<Settings />Settings page configurationOutline
2221Statuschecksuccess done complete verifiedLucideimport { Check } from 'lucide-react'<Check />Success state checkmarkOutline
2322Statuscheck-circlesuccess verified approved completeLucideimport { CheckCircle } from 'lucide-react'<CheckCircle />Success badge verifiedOutline
2423Statusx-circleerror failed cancel rejectedLucideimport { XCircle } from 'lucide-react'<XCircle />Error state failedOutline
2524Statusalert-trianglewarning caution attention dangerLucideimport { AlertTriangle } from 'lucide-react'<AlertTriangle />Warning message cautionOutline
2625Statusalert-circleinfo notice information helpLucideimport { AlertCircle } from 'lucide-react'<AlertCircle />Info notice alertOutline
2726Statusinfoinformation help tooltip detailsLucideimport { Info } from 'lucide-react'<Info />Information tooltip helpOutline
2828Statusclocktime schedule pending waitLucideimport { Clock } from 'lucide-react'<Clock />Pending time scheduleOutline
2929Communicationmailemail message inbox letterLucideimport { Mail } from 'lucide-react'<Mail />Email contact inboxOutline
3030Communicationmessage-circlechat comment bubble conversationLucideimport { MessageCircle } from 'lucide-react'<MessageCircle />Chat comment messageOutline
3131Communicationphonecall mobile telephone contactLucideimport { Phone } from 'lucide-react'<Phone />Phone contact callOutline
3232Communicationsendsubmit dispatch message airplaneLucideimport { Send } from 'lucide-react'<Send />Send message submitOutline
3333Communicationbellnotification alert ring reminderLucideimport { Bell } from 'lucide-react'<Bell />Notification bell alertOutline
3434Useruserprofile account person avatarLucideimport { User } from 'lucide-react'<User />User profile accountOutline
3535Userusersteam group people membersLucideimport { Users } from 'lucide-react'<Users />Team group membersOutline
3636Useruser-plusadd invite new memberLucideimport { UserPlus } from 'lucide-react'<UserPlus />Add user inviteOutline
3737Userlog-insignin authenticate enterLucideimport { LogIn } from 'lucide-react'<LogIn />Login signinOutline
3838Userlog-outsignout exit leave logoutLucideimport { LogOut } from 'lucide-react'<LogOut />Logout signoutOutline
3939Mediaimagephoto picture gallery thumbnailLucideimport { Image } from 'lucide-react'<Image />Image photo galleryOutline
4040Mediavideomovie film play recordLucideimport { Video } from 'lucide-react'<Video />Video player mediaOutline
4141Mediaplaystart video audio mediaLucideimport { Play } from 'lucide-react'<Play />Play button video audioOutline
4242Mediapausestop halt video audioLucideimport { Pause } from 'lucide-react'<Pause />Pause button mediaOutline
4343Mediavolume-2sound audio speaker musicLucideimport { Volume2 } from 'lucide-react'<Volume2 />Volume audio soundOutline
4444Mediamicmicrophone record voice audioLucideimport { Mic } from 'lucide-react'<Mic />Microphone voice recordOutline
4545Mediacameraphoto capture snapshot pictureLucideimport { Camera } from 'lucide-react'<Camera />Camera photo captureOutline
4646Commerceshopping-cartcart checkout basket buyLucideimport { ShoppingCart } from 'lucide-react'<ShoppingCart />Shopping cart e-commerceOutline
4747Commerceshopping-bagpurchase buy store bagLucideimport { ShoppingBag } from 'lucide-react'<ShoppingBag />Shopping bag purchaseOutline
4848Commercecredit-cardpayment card checkout stripeLucideimport { CreditCard } from 'lucide-react'<CreditCard />Payment credit cardOutline
4949Commercedollar-signmoney price currency costLucideimport { DollarSign } from 'lucide-react'<DollarSign />Price money currencyOutline
5050Commercetaglabel price discount saleLucideimport { Tag } from 'lucide-react'<Tag />Price tag labelOutline
5151Commercegiftpresent reward bonus offerLucideimport { Gift } from 'lucide-react'<Gift />Gift reward offerOutline
5252Commercepercentdiscount sale offer promoLucideimport { Percent } from 'lucide-react'<Percent />Discount percentage saleOutline
5353Databar-chartanalytics statistics graph metricsLucideimport { BarChart } from 'lucide-react'<BarChart />Bar chart analyticsOutline
5454Datapie-chartstatistics distribution breakdownLucideimport { PieChart } from 'lucide-react'<PieChart />Pie chart distributionOutline
5555Datatrending-upgrowth increase positive trendLucideimport { TrendingUp } from 'lucide-react'<TrendingUp />Growth trend positiveOutline
5656Datatrending-downdecline decrease negative trendLucideimport { TrendingDown } from 'lucide-react'<TrendingDown />Decline trend negativeOutline
5757Dataactivitypulse heartbeat monitor liveLucideimport { Activity } from 'lucide-react'<Activity />Activity monitor pulseOutline
5858Datadatabasestorage server data backendLucideimport { Database } from 'lucide-react'<Database />Database storageOutline
5959Filesfiledocument page paper docLucideimport { File } from 'lucide-react'<File />File documentOutline
6060Filesfile-textdocument text page articleLucideimport { FileText } from 'lucide-react'<FileText />Text document articleOutline
6161Filesfolderdirectory organize group filesLucideimport { Folder } from 'lucide-react'<Folder />Folder directoryOutline
6262Filesfolder-openexpanded browse files viewLucideimport { FolderOpen } from 'lucide-react'<FolderOpen />Open folder browseOutline
6363Filespaperclipattachment attach file linkLucideimport { Paperclip } from 'lucide-react'<Paperclip />Attachment paperclipOutline
6464Fileslinkurl hyperlink chain connectLucideimport { Link } from 'lucide-react'<Link />Link URL hyperlinkOutline
6565Filesclipboardpaste copy buffer notesLucideimport { Clipboard } from 'lucide-react'<Clipboard />Clipboard pasteOutline
6666Layoutgridtiles gallery layout dashboardLucideimport { Grid } from 'lucide-react'<Grid />Grid layout galleryOutline
6767Layoutlistrows table lines itemsLucideimport { List } from 'lucide-react'<List />List view rowsOutline
6868Layoutcolumnslayout split dual sidebarLucideimport { Columns } from 'lucide-react'<Columns />Column layout splitOutline
6969Layoutmaximizefullscreen expand enlarge zoomLucideimport { Maximize } from 'lucide-react'<Maximize />Fullscreen maximizeOutline
7070Layoutminimizereduce shrink collapse exitLucideimport { Minimize } from 'lucide-react'<Minimize />Minimize reduceOutline
7171Layoutsidebarpanel drawer navigation menuLucideimport { Sidebar } from 'lucide-react'<Sidebar />Sidebar panelOutline
7272Socialheartlike love favorite wishlistLucideimport { Heart } from 'lucide-react'<Heart />Like favorite loveOutline
7373Socialstarrating review favorite bookmarkLucideimport { Star } from 'lucide-react'<Star />Star rating favoriteOutline
7474Socialthumbs-uplike approve agree positiveLucideimport { ThumbsUp } from 'lucide-react'<ThumbsUp />Like approve thumbOutline
7575Socialthumbs-downdislike disapprove disagree negativeLucideimport { ThumbsDown } from 'lucide-react'<ThumbsDown />Dislike disapproveOutline
7676Socialbookmarksave later favorite markLucideimport { Bookmark } from 'lucide-react'<Bookmark />Bookmark saveOutline
7777Socialflagreport mark important highlightLucideimport { Flag } from 'lucide-react'<Flag />Flag reportOutline
7878Devicesmartphonemobile phone device touchLucideimport { Smartphone } from 'lucide-react'<Smartphone />Mobile smartphoneOutline
7979Devicetabletipad device touch screenLucideimport { Tablet } from 'lucide-react'<Tablet />Tablet deviceOutline
8080Devicemonitordesktop screen computer displayLucideimport { Monitor } from 'lucide-react'<Monitor />Desktop monitorOutline
8181Devicelaptopnotebook computer portable deviceLucideimport { Laptop } from 'lucide-react'<Laptop />Laptop computerOutline
8282Deviceprinterprint document output paperLucideimport { Printer } from 'lucide-react'<Printer />Printer printOutline
8383Securitylocksecure password protected privateLucideimport { Lock } from 'lucide-react'<Lock />Lock secureOutline
8484Securityunlockopen access unsecure publicLucideimport { Unlock } from 'lucide-react'<Unlock />Unlock openOutline
8585Securityshieldprotection security safe guardLucideimport { Shield } from 'lucide-react'<Shield />Shield protectionOutline
8686Securitykeypassword access unlock loginLucideimport { Key } from 'lucide-react'<Key />Key passwordOutline
8787Securityeyeview show visible passwordLucideimport { Eye } from 'lucide-react'<Eye />Show password viewOutline
8888Securityeye-offhide invisible password hiddenLucideimport { EyeOff } from 'lucide-react'<EyeOff />Hide passwordOutline
8989Locationmap-pinlocation marker place addressLucideimport { MapPin } from 'lucide-react'<MapPin />Location pin markerOutline
9090Locationmapdirections navigate geography locationLucideimport { Map } from 'lucide-react'<Map />Map directionsOutline
9191Locationnavigationcompass direction pointer arrowLucideimport { Navigation } from 'lucide-react'<Navigation />Navigation compassOutline
9292Locationglobeworld international global webLucideimport { Globe } from 'lucide-react'<Globe />Globe worldOutline
9393Timecalendardate schedule event appointmentLucideimport { Calendar } from 'lucide-react'<Calendar />Calendar dateOutline
9494Timerefresh-cwreload sync update refreshLucideimport { RefreshCw } from 'lucide-react'<RefreshCw />Refresh reloadOutline
9595Timerotate-ccwundo back revert historyLucideimport { RotateCcw } from 'lucide-react'<RotateCcw />Undo revertOutline
9696Timerotate-cwredo forward repeat historyLucideimport { RotateCw } from 'lucide-react'<RotateCw />Redo forwardOutline
9797Developmentcodedevelop programming syntax htmlLucideimport { Code } from 'lucide-react'<Code />Code developmentOutline
9898Developmentterminalconsole cli command shellLucideimport { Terminal } from 'lucide-react'<Terminal />Terminal consoleOutline
9999Developmentgit-branchversion control branch mergeLucideimport { GitBranch } from 'lucide-react'<GitBranch />Git branchOutline
100100Developmentgithubrepository code open sourceLucideimport { Github } from 'lucide-react'<Github />GitHub repositoryOutline