@astralkit/mcp 1.0.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api.d.ts +2 -0
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js.map +1 -1
- package/dist/data/icons.d.ts +5 -0
- package/dist/data/icons.d.ts.map +1 -0
- package/dist/data/icons.js +100 -0
- package/dist/data/icons.js.map +1 -0
- package/dist/data/rules.d.ts +1 -1
- package/dist/data/rules.d.ts.map +1 -1
- package/dist/data/rules.js +43 -2
- package/dist/data/rules.js.map +1 -1
- package/dist/data/setup.d.ts +2 -0
- package/dist/data/setup.d.ts.map +1 -0
- package/dist/data/setup.js +49 -0
- package/dist/data/setup.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +305 -31
- package/dist/server.js.map +1 -1
- package/package.json +1 -1
package/dist/api.d.ts
CHANGED
|
@@ -19,6 +19,7 @@ export interface ComponentListItem {
|
|
|
19
19
|
category: string;
|
|
20
20
|
category_slug: string;
|
|
21
21
|
has_code: boolean;
|
|
22
|
+
previewImage?: string;
|
|
22
23
|
}
|
|
23
24
|
export interface ComponentListResponse {
|
|
24
25
|
components: ComponentListItem[];
|
|
@@ -39,6 +40,7 @@ export interface ComponentDetailResponse {
|
|
|
39
40
|
files: ComponentFile[];
|
|
40
41
|
dependencies: string[];
|
|
41
42
|
license: string;
|
|
43
|
+
previewImage?: string;
|
|
42
44
|
}
|
|
43
45
|
export declare function whoami(): Promise<WhoamiResponse>;
|
|
44
46
|
export declare function listComponents(params?: {
|
package/dist/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAMA,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,QAkB7D;AAED,qBAAa,QAAS,SAAQ,KAAK;aAGf,MAAM,EAAE,MAAM;aACd,IAAI,EAAE,MAAM;gBAF5B,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM;CAK/B;AAsDD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAMA,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,QAkB7D;AAED,qBAAa,QAAS,SAAQ,KAAK;aAGf,MAAM,EAAE,MAAM;aACd,IAAI,EAAE,MAAM;gBAF5B,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM;CAK/B;AAsDD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;CAChF;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,MAAM,IAAI,OAAO,CAAC,cAAc,CAAC,CAEtD;AAED,wBAAsB,cAAc,CAAC,MAAM,GAAE;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACZ,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAQtC;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAE,MAAgB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAE9G;AAED,wBAAsB,YAAY,CAAC,MAAM,GAAE;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACZ,GAAG,OAAO,CAAC,GAAG,CAAC,CAKpB;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAE,MAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,CAEzF"}
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** Every valid Phosphor icon component name (PascalCase). */
|
|
2
|
+
export declare const PHOSPHOR_ICON_NAMES: string[];
|
|
3
|
+
/** Agent-facing markdown reference of all valid icons. */
|
|
4
|
+
export declare const PHOSPHOR_ICONS = "# AstralKit Icon Reference \u2014 Phosphor Icons (@phosphor-icons/react v2.1.10)\n\n**AstralKit uses Phosphor icons EXCLUSIVELY.** Never use Lucide, Heroicons, Font Awesome, or inline SVG.\nThis is the COMPLETE, authoritative list of every valid Phosphor icon component name (1512 icons).\nDo NOT guess or invent an icon name \u2014 if it is not in this list, it does not exist and the import will fail.\n\n## Usage\n```tsx\nimport { House, Gear, MagnifyingGlass } from '@phosphor-icons/react'\n\n<House size={20} weight=\"regular\" aria-hidden=\"true\" />\n```\n- Component name = PascalCase, exactly as listed below.\n- `size` prop accepts a number (px) \u2014 pair with AstralKit `size-ak-icon-*` tokens for layout.\n- `weight`: `thin` | `light` | `regular` (default) | `bold` | `fill` | `duotone`.\n- Always add `aria-hidden=\"true\"` for decorative icons; give a label for meaningful ones.\n\n## Complete icon list (1512)\n### A\nAcorn, AddressBook, AddressBookTabs, Airplane, AirplaneInFlight, AirplaneLanding, AirplaneTakeoff, AirplaneTaxiing, AirplaneTilt, Airplay, AirTrafficControl, Alarm, Alien, AlignBottom, AlignBottomSimple, AlignCenterHorizontal, AlignCenterHorizontalSimple, AlignCenterVertical, AlignCenterVerticalSimple, AlignLeft, AlignLeftSimple, AlignRight, AlignRightSimple, AlignTop, AlignTopSimple, AmazonLogo, Ambulance, Anchor, AnchorSimple, AndroidLogo, Angle, AngularLogo, Aperture, AppleLogo, ApplePodcastsLogo, ApproximateEquals, AppStoreLogo, AppWindow, Archive, Armchair, ArrowArcLeft, ArrowArcRight, ArrowBendDoubleUpLeft, ArrowBendDoubleUpRight, ArrowBendDownLeft, ArrowBendDownRight, ArrowBendLeftDown, ArrowBendLeftUp, ArrowBendRightDown, ArrowBendRightUp, ArrowBendUpLeft, ArrowBendUpRight, ArrowCircleDown, ArrowCircleDownLeft, ArrowCircleDownRight, ArrowCircleLeft, ArrowCircleRight, ArrowCircleUp, ArrowCircleUpLeft, ArrowCircleUpRight, ArrowClockwise, ArrowCounterClockwise, ArrowDown, ArrowDownLeft, ArrowDownRight, ArrowElbowDownLeft, ArrowElbowDownRight, ArrowElbowLeft, ArrowElbowLeftDown, ArrowElbowLeftUp, ArrowElbowRight, ArrowElbowRightDown, ArrowElbowRightUp, ArrowElbowUpLeft, ArrowElbowUpRight, ArrowFatDown, ArrowFatLeft, ArrowFatLineDown, ArrowFatLineLeft, ArrowFatLineRight, ArrowFatLinesDown, ArrowFatLinesLeft, ArrowFatLinesRight, ArrowFatLinesUp, ArrowFatLineUp, ArrowFatRight, ArrowFatUp, ArrowLeft, ArrowLineDown, ArrowLineDownLeft, ArrowLineDownRight, ArrowLineLeft, ArrowLineRight, ArrowLineUp, ArrowLineUpLeft, ArrowLineUpRight, ArrowRight, ArrowsClockwise, ArrowsCounterClockwise, ArrowsDownUp, ArrowsHorizontal, ArrowsIn, ArrowsInCardinal, ArrowsInLineHorizontal, ArrowsInLineVertical, ArrowsInSimple, ArrowsLeftRight, ArrowsMerge, ArrowsOut, ArrowsOutCardinal, ArrowsOutLineHorizontal, ArrowsOutLineVertical, ArrowsOutSimple, ArrowSquareDown, ArrowSquareDownLeft, ArrowSquareDownRight, ArrowSquareIn, ArrowSquareLeft, ArrowSquareOut, ArrowSquareRight, ArrowSquareUp, ArrowSquareUpLeft, ArrowSquareUpRight, ArrowsSplit, ArrowsVertical, ArrowUDownLeft, ArrowUDownRight, ArrowULeftDown, ArrowULeftUp, ArrowUp, ArrowUpLeft, ArrowUpRight, ArrowURightDown, ArrowURightUp, ArrowUUpLeft, ArrowUUpRight, Article, ArticleMedium, ArticleNyTimes, Asclepius, Asterisk, AsteriskSimple, At, Atom, Avocado, Axe\n\n### B\nBaby, BabyCarriage, Backpack, Backspace, Bag, BagSimple, Balloon, Bandaids, Bank, Barbell, Barcode, Barn, Barricade, Baseball, BaseballCap, BaseballHelmet, Basket, Basketball, Bathtub, BatteryCharging, BatteryChargingVertical, BatteryEmpty, BatteryFull, BatteryHigh, BatteryLow, BatteryMedium, BatteryPlus, BatteryPlusVertical, BatteryVerticalEmpty, BatteryVerticalFull, BatteryVerticalHigh, BatteryVerticalLow, BatteryVerticalMedium, BatteryWarning, BatteryWarningVertical, BeachBall, Beanie, Bed, BeerBottle, BeerStein, BehanceLogo, Bell, BellRinging, BellSimple, BellSimpleRinging, BellSimpleSlash, BellSimpleZ, BellSlash, BellZ, Belt, BezierCurve, Bicycle, Binary, Binoculars, Biohazard, Bird, Blueprint, Bluetooth, BluetoothConnected, BluetoothSlash, BluetoothX, Boat, Bomb, Bone, Book, BookBookmark, Bookmark, Bookmarks, BookmarkSimple, BookmarksSimple, BookOpen, BookOpenText, BookOpenUser, Books, Boot, Boules, BoundingBox, BowlFood, BowlingBall, BowlSteam, BoxArrowDown, BoxArrowUp, BoxingGlove, BracketsAngle, BracketsCurly, BracketsRound, BracketsSquare, Brain, Brandy, Bread, Bridge, Briefcase, BriefcaseMetal, Broadcast, Broom, Browser, Browsers, Bug, BugBeetle, BugDroid, Building, BuildingApartment, BuildingOffice, Buildings, Bulldozer, Bus, Butterfly\n\n### C\nCableCar, Cactus, Cake, Calculator, Calendar, CalendarBlank, CalendarCheck, CalendarDot, CalendarDots, CalendarHeart, CalendarMinus, CalendarPlus, CalendarSlash, CalendarStar, CalendarX, CallBell, Camera, CameraPlus, CameraRotate, CameraSlash, Campfire, Car, CarBattery, Cardholder, Cards, CardsThree, CaretCircleDoubleDown, CaretCircleDoubleLeft, CaretCircleDoubleRight, CaretCircleDoubleUp, CaretCircleDown, CaretCircleLeft, CaretCircleRight, CaretCircleUp, CaretCircleUpDown, CaretDoubleDown, CaretDoubleLeft, CaretDoubleRight, CaretDoubleUp, CaretDown, CaretLeft, CaretLineDown, CaretLineLeft, CaretLineRight, CaretLineUp, CaretRight, CaretUp, CaretUpDown, CarProfile, Carrot, CarSimple, CashRegister, CassetteTape, CastleTurret, Cat, CellSignalFull, CellSignalHigh, CellSignalLow, CellSignalMedium, CellSignalNone, CellSignalSlash, CellSignalX, CellTower, Certificate, Chair, Chalkboard, ChalkboardSimple, ChalkboardTeacher, Champagne, ChargingStation, ChartBar, ChartBarHorizontal, ChartDonut, ChartLine, ChartLineDown, ChartLineUp, ChartPie, ChartPieSlice, ChartPolar, ChartScatter, Chat, ChatCentered, ChatCenteredDots, ChatCenteredSlash, ChatCenteredText, ChatCircle, ChatCircleDots, ChatCircleSlash, ChatCircleText, ChatDots, Chats, ChatsCircle, ChatSlash, ChatsTeardrop, ChatTeardrop, ChatTeardropDots, ChatTeardropSlash, ChatTeardropText, ChatText, Check, CheckCircle, Checkerboard, CheckFat, Checks, CheckSquare, CheckSquareOffset, Cheers, Cheese, ChefHat, Cherries, Church, Cigarette, CigaretteSlash, Circle, CircleDashed, CircleHalf, CircleHalfTilt, CircleNotch, CirclesFour, CirclesThree, CirclesThreePlus, Circuitry, City, Clipboard, ClipboardText, Clock, ClockAfternoon, ClockClockwise, ClockCountdown, ClockCounterClockwise, ClockUser, ClosedCaptioning, Cloud, CloudArrowDown, CloudArrowUp, CloudCheck, CloudFog, CloudLightning, CloudMoon, CloudRain, CloudSlash, CloudSnow, CloudSun, CloudWarning, CloudX, Clover, Club, CoatHanger, CodaLogo, Code, CodeBlock, CodepenLogo, CodesandboxLogo, CodeSimple, Coffee, CoffeeBean, Coin, Coins, CoinVertical, Columns, ColumnsPlusLeft, ColumnsPlusRight, Command, Compass, CompassRose, CompassTool, ComputerTower, Confetti, ContactlessPayment, Control, Cookie, CookingPot, Copy, Copyleft, Copyright, CopySimple, CornersIn, CornersOut, Couch, CourtBasketball, Cow, CowboyHat, Cpu, Crane, CraneTower, CreditCard, Cricket, Crop, Cross, Crosshair, CrosshairSimple, Crown, CrownCross, CrownSimple, Cube, CubeFocus, CubeTransparent, CurrencyBtc, CurrencyCircleDollar, CurrencyCny, CurrencyDollar, CurrencyDollarSimple, CurrencyEth, CurrencyEur, CurrencyGbp, CurrencyInr, CurrencyJpy, CurrencyKrw, CurrencyKzt, CurrencyNgn, CurrencyRub, Cursor, CursorClick, CursorText, Cylinder\n\n### D\nDatabase, Desk, Desktop, DesktopTower, Detective, DeviceMobile, DeviceMobileCamera, DeviceMobileSlash, DeviceMobileSpeaker, DeviceRotate, Devices, DeviceTablet, DeviceTabletCamera, DeviceTabletSpeaker, DevToLogo, Diamond, DiamondsFour, DiceFive, DiceFour, DiceOne, DiceSix, DiceThree, DiceTwo, Disc, DiscoBall, DiscordLogo, Divide, Dna, Dog, Door, DoorOpen, Dot, DotOutline, DotsNine, DotsSix, DotsSixVertical, DotsThree, DotsThreeCircle, DotsThreeCircleVertical, DotsThreeOutline, DotsThreeOutlineVertical, DotsThreeVertical, Download, DownloadSimple, Dress, Dresser, DribbbleLogo, Drone, Drop, DropboxLogo, DropHalf, DropHalfBottom, DropSimple, DropSlash\n\n### E\nEar, EarSlash, Egg, EggCrack, Eject, EjectSimple, Elevator, Empty, Engine, Envelope, EnvelopeOpen, EnvelopeSimple, EnvelopeSimpleOpen, Equalizer, Equals, Eraser, EscalatorDown, EscalatorUp, Exam, ExclamationMark, Exclude, ExcludeSquare, Export, Eye, EyeClosed, Eyedropper, EyedropperSample, Eyeglasses, Eyes, EyeSlash\n\n### F\nFacebookLogo, FaceMask, Factory, Faders, FadersHorizontal, FalloutShelter, Fan, Farm, FastForward, FastForwardCircle, Feather, FediverseLogo, FigmaLogo, File, FileArchive, FileArrowDown, FileArrowUp, FileAudio, FileC, FileCloud, FileCode, FileCpp, FileCSharp, FileCss, FileCsv, FileDashed, FileDoc, FileHtml, FileImage, FileIni, FileJpg, FileJs, FileJsx, FileLock, FileMagnifyingGlass, FileMd, FileMinus, FilePdf, FilePlus, FilePng, FilePpt, FilePy, FileRs, Files, FileSql, FileSvg, FileText, FileTs, FileTsx, FileTxt, FileVideo, FileVue, FileX, FileXls, FileZip, FilmReel, FilmScript, FilmSlate, FilmStrip, Fingerprint, FingerprintSimple, FinnTheHuman, Fire, FireExtinguisher, FireSimple, FireTruck, FirstAid, FirstAidKit, Fish, FishSimple, Flag, FlagBanner, FlagBannerFold, FlagCheckered, FlagPennant, Flame, Flashlight, Flask, FlipHorizontal, FlipVertical, FloppyDisk, FloppyDiskBack, FlowArrow, Flower, FlowerLotus, FlowerTulip, FlyingSaucer, Folder, FolderDashed, FolderLock, FolderMinus, FolderOpen, FolderPlus, Folders, FolderSimple, FolderSimpleDashed, FolderSimpleLock, FolderSimpleMinus, FolderSimplePlus, FolderSimpleStar, FolderSimpleUser, FolderStar, FolderUser, Football, FootballHelmet, Footprints, ForkKnife, FourK, FrameCorners, FramerLogo, Function, Funnel, FunnelSimple, FunnelSimpleX, FunnelX\n\n### G\nGameController, Garage, GasCan, GasPump, Gauge, Gavel, Gear, GearFine, GearSix, GenderFemale, GenderIntersex, GenderMale, GenderNeuter, GenderNonbinary, GenderTransgender, Ghost, Gif, Gift, GitBranch, GitCommit, GitDiff, GitFork, GithubLogo, GitlabLogo, GitlabLogoSimple, GitMerge, GitPullRequest, Globe, GlobeHemisphereEast, GlobeHemisphereWest, GlobeSimple, GlobeSimpleX, GlobeStand, GlobeX, Goggles, Golf, GoodreadsLogo, GoogleCardboardLogo, GoogleChromeLogo, GoogleDriveLogo, GoogleLogo, GooglePhotosLogo, GooglePlayLogo, GooglePodcastsLogo, Gps, GpsFix, GpsSlash, Gradient, GraduationCap, Grains, GrainsSlash, Graph, GraphicsCard, GreaterThan, GreaterThanOrEqual, GridFour, GridNine, Guitar\n\n### H\nHairDryer, Hamburger, Hammer, Hand, HandArrowDown, HandArrowUp, Handbag, HandbagSimple, HandCoins, HandDeposit, HandEye, HandFist, HandGrabbing, HandHeart, HandPalm, HandPeace, HandPointing, HandsClapping, Handshake, HandSoap, HandsPraying, HandSwipeLeft, HandSwipeRight, HandTap, HandWaving, HandWithdraw, HardDrive, HardDrives, HardHat, Hash, HashStraight, HeadCircuit, Headlights, Headphones, Headset, Heart, Heartbeat, HeartBreak, HeartHalf, HeartStraight, HeartStraightBreak, Hexagon, HighDefinition, HighHeel, Highlighter, HighlighterCircle, Hockey, Hoodie, Horse, Hospital, Hourglass, HourglassHigh, HourglassLow, HourglassMedium, HourglassSimple, HourglassSimpleHigh, HourglassSimpleLow, HourglassSimpleMedium, House, HouseLine, HouseSimple, Hurricane\n\n### I\nIceCream, IdentificationBadge, IdentificationCard, Image, ImageBroken, Images, ImageSquare, ImagesSquare, Infinity, Info, InstagramLogo, Intersect, Intersection, IntersectSquare, IntersectThree, Invoice, Island\n\n### J\nJar, JarLabel, Jeep, Joystick\n\n### K\nKanban, Key, Keyboard, Keyhole, KeyReturn, Knife\n\n### L\nLadder, LadderSimple, Lamp, LampPendant, Laptop, Lasso, LastfmLogo, Layout, Leaf, Lectern, Lego, LegoSmiley, LessThan, LessThanOrEqual, LetterCircleH, LetterCircleP, LetterCircleV, Lifebuoy, Lightbulb, LightbulbFilament, Lighthouse, Lightning, LightningA, LightningSlash, LineSegment, LineSegments, LineVertical, Link, LinkBreak, LinkedinLogo, LinkSimple, LinkSimpleBreak, LinkSimpleHorizontal, LinkSimpleHorizontalBreak, LinktreeLogo, LinuxLogo, List, ListBullets, ListChecks, ListDashes, ListHeart, ListMagnifyingGlass, ListNumbers, ListPlus, ListStar, Lock, Lockers, LockKey, LockKeyOpen, LockLaminated, LockLaminatedOpen, LockOpen, LockSimple, LockSimpleOpen, Log\n\n### M\nMagicWand, Magnet, MagnetStraight, MagnifyingGlass, MagnifyingGlassMinus, MagnifyingGlassPlus, Mailbox, MapPin, MapPinArea, MapPinLine, MapPinPlus, MapPinSimple, MapPinSimpleArea, MapPinSimpleLine, MapTrifold, MarkdownLogo, MarkerCircle, Martini, MaskHappy, MaskSad, MastodonLogo, MathOperations, MatrixLogo, Medal, MedalMilitary, MediumLogo, Megaphone, MegaphoneSimple, MemberOf, Memory, MessengerLogo, MetaLogo, Meteor, Metronome, Microphone, MicrophoneSlash, MicrophoneStage, Microscope, MicrosoftExcelLogo, MicrosoftOutlookLogo, MicrosoftPowerpointLogo, MicrosoftTeamsLogo, MicrosoftWordLogo, Minus, MinusCircle, MinusSquare, Money, MoneyWavy, Monitor, MonitorArrowUp, MonitorPlay, Moon, MoonStars, Moped, MopedFront, Mosque, Motorcycle, Mountains, Mouse, MouseLeftClick, MouseMiddleClick, MouseRightClick, MouseScroll, MouseSimple, MusicNote, MusicNotes, MusicNoteSimple, MusicNotesMinus, MusicNotesPlus, MusicNotesSimple\n\n### N\nNavigationArrow, Needle, Network, NetworkSlash, NetworkX, Newspaper, NewspaperClipping, Notches, Note, NoteBlank, Notebook, Notepad, NotePencil, NotEquals, Notification, NotionLogo, NotMemberOf, NotSubsetOf, NotSupersetOf, NuclearPlant, NumberCircleEight, NumberCircleFive, NumberCircleFour, NumberCircleNine, NumberCircleOne, NumberCircleSeven, NumberCircleSix, NumberCircleThree, NumberCircleTwo, NumberCircleZero, NumberEight, NumberFive, NumberFour, NumberNine, NumberOne, NumberSeven, NumberSix, NumberSquareEight, NumberSquareFive, NumberSquareFour, NumberSquareNine, NumberSquareOne, NumberSquareSeven, NumberSquareSix, NumberSquareThree, NumberSquareTwo, NumberSquareZero, NumberThree, NumberTwo, NumberZero, Numpad, Nut, NyTimesLogo\n\n### O\nOctagon, OfficeChair, Onigiri, OpenAiLogo, Option, Orange, OrangeSlice, Oven\n\n### P\nPackage, PaintBrush, PaintBrushBroad, PaintBrushHousehold, PaintBucket, PaintRoller, Palette, Panorama, Pants, Paperclip, PaperclipHorizontal, PaperPlane, PaperPlaneRight, PaperPlaneTilt, Parachute, Paragraph, Parallelogram, Park, Password, Path, PatreonLogo, Pause, PauseCircle, PawPrint, PaypalLogo, Peace, Pen, Pencil, PencilCircle, PencilLine, PencilRuler, PencilSimple, PencilSimpleLine, PencilSimpleSlash, PencilSlash, PenNib, PenNibStraight, Pentagon, Pentagram, Pepper, Percent, Person, PersonArmsSpread, PersonSimple, PersonSimpleBike, PersonSimpleCircle, PersonSimpleHike, PersonSimpleRun, PersonSimpleSki, PersonSimpleSnowboard, PersonSimpleSwim, PersonSimpleTaiChi, PersonSimpleThrow, PersonSimpleWalk, Perspective, Phone, PhoneCall, PhoneDisconnect, PhoneIncoming, PhoneList, PhoneOutgoing, PhonePause, PhonePlus, PhoneSlash, PhoneTransfer, PhoneX, PhosphorLogo, Pi, PianoKeys, PicnicTable, PictureInPicture, PiggyBank, Pill, PingPong, PinterestLogo, PintGlass, Pinwheel, Pipe, PipeWrench, PixLogo, Pizza, Placeholder, Planet, Plant, Play, PlayCircle, Playlist, PlayPause, Plug, PlugCharging, Plugs, PlugsConnected, Plus, PlusCircle, PlusMinus, PlusSquare, PokerChip, PoliceCar, Polygon, Popcorn, Popsicle, PottedPlant, Power, Prescription, Presentation, PresentationChart, Printer, Prohibit, ProhibitInset, ProjectorScreen, ProjectorScreenChart, Pulse, PushPin, PushPinSimple, PushPinSimpleSlash, PushPinSlash, PuzzlePiece\n\n### Q\nQrCode, Question, QuestionMark, Queue, Quotes\n\n### R\nRabbit, Racquet, Radical, Radio, Radioactive, RadioButton, Rainbow, RainbowCloud, Ranking, ReadCvLogo, Receipt, ReceiptX, Record, Rectangle, RectangleDashed, Recycle, RedditLogo, Repeat, RepeatOnce, ReplitLogo, Resize, Rewind, RewindCircle, RoadHorizon, Robot, Rocket, RocketLaunch, Rows, RowsPlusBottom, RowsPlusTop, Rss, RssSimple, Rug, Ruler\n\n### S\nSailboat, Scales, Scan, ScanSmiley, Scissors, Scooter, Screencast, Screwdriver, Scribble, ScribbleLoop, Scroll, Seal, SealCheck, SealPercent, SealQuestion, SealWarning, Seat, Seatbelt, SecurityCamera, Selection, SelectionAll, SelectionBackground, SelectionForeground, SelectionInverse, SelectionPlus, SelectionSlash, Shapes, Share, ShareFat, ShareNetwork, Shield, ShieldCheck, ShieldCheckered, ShieldChevron, ShieldPlus, ShieldSlash, ShieldStar, ShieldWarning, ShippingContainer, ShirtFolded, ShootingStar, ShoppingBag, ShoppingBagOpen, ShoppingCart, ShoppingCartSimple, Shovel, Shower, Shrimp, Shuffle, ShuffleAngular, ShuffleSimple, Sidebar, SidebarSimple, Sigma, Signature, SignIn, SignOut, Signpost, SimCard, Siren, SketchLogo, SkipBack, SkipBackCircle, SkipForward, SkipForwardCircle, Skull, SkypeLogo, SlackLogo, Sliders, SlidersHorizontal, Slideshow, Smiley, SmileyAngry, SmileyBlank, SmileyMeh, SmileyMelting, SmileyNervous, SmileySad, SmileySticker, SmileyWink, SmileyXEyes, SnapchatLogo, Sneaker, SneakerMove, Snowflake, SoccerBall, Sock, SolarPanel, SolarRoof, SortAscending, SortDescending, SoundcloudLogo, Spade, Sparkle, SpeakerHifi, SpeakerHigh, SpeakerLow, SpeakerNone, SpeakerSimpleHigh, SpeakerSimpleLow, SpeakerSimpleNone, SpeakerSimpleSlash, SpeakerSimpleX, SpeakerSlash, SpeakerX, Speedometer, Sphere, Spinner, SpinnerBall, SpinnerGap, Spiral, SplitHorizontal, SplitVertical, SpotifyLogo, SprayBottle, Square, SquareHalf, SquareHalfBottom, SquareLogo, SquaresFour, SquareSplitHorizontal, SquareSplitVertical, Stack, StackMinus, StackOverflowLogo, StackPlus, StackSimple, Stairs, Stamp, StandardDefinition, Star, StarAndCrescent, StarFour, StarHalf, StarOfDavid, SteamLogo, SteeringWheel, Steps, Stethoscope, Sticker, Stool, Stop, StopCircle, Storefront, Strategy, StripeLogo, Student, SubsetOf, SubsetProperOf, Subtitles, SubtitlesSlash, Subtract, SubtractSquare, Subway, Suitcase, SuitcaseRolling, SuitcaseSimple, Sun, SunDim, Sunglasses, SunHorizon, SupersetOf, SupersetProperOf, Swap, Swatches, SwimmingPool, Sword, Synagogue, Syringe\n\n### T\nTable, Tabs, Tag, TagChevron, TagSimple, Target, Taxi, TeaBag, TelegramLogo, Television, TelevisionSimple, TennisBall, Tent, Terminal, TerminalWindow, TestTube, TextAa, TextAlignCenter, TextAlignJustify, TextAlignLeft, TextAlignRight, TextAUnderline, TextB, Textbox, TextColumns, TextH, TextHFive, TextHFour, TextHOne, TextHSix, TextHThree, TextHTwo, TextIndent, TextItalic, TextOutdent, TextStrikethrough, TextSubscript, TextSuperscript, TextT, TextTSlash, TextUnderline, Thermometer, ThermometerCold, ThermometerHot, ThermometerSimple, ThreadsLogo, ThreeD, ThumbsDown, ThumbsUp, Ticket, TidalLogo, TiktokLogo, Tilde, Timer, Tipi, TipJar, Tire, ToggleLeft, ToggleRight, Toilet, ToiletPaper, Toolbox, Tooth, Tornado, Tote, ToteSimple, Towel, Tractor, Trademark, TrademarkRegistered, TrafficCone, TrafficSign, TrafficSignal, Train, TrainRegional, TrainSimple, Tram, Translate, Trash, TrashSimple, Tray, TrayArrowDown, TrayArrowUp, TreasureChest, Tree, TreeEvergreen, TreePalm, TreeStructure, TreeView, TrendDown, TrendUp, Triangle, TriangleDashed, Trolley, TrolleySuitcase, Trophy, Truck, TruckTrailer, TShirt, TumblrLogo, TwitchLogo, TwitterLogo\n\n### U\nUmbrella, UmbrellaSimple, Union, Unite, UniteSquare, Upload, UploadSimple, Usb, User, UserCheck, UserCircle, UserCircleCheck, UserCircleDashed, UserCircleGear, UserCircleMinus, UserCirclePlus, UserFocus, UserGear, UserList, UserMinus, UserPlus, UserRectangle, Users, UsersFour, UserSound, UserSquare, UsersThree, UserSwitch\n\n### V\nVan, Vault, VectorThree, VectorTwo, Vibrate, Video, VideoCamera, VideoCameraSlash, VideoConference, Vignette, VinylRecord, VirtualReality, Virus, Visor, Voicemail, Volleyball\n\n### W\nWall, Wallet, Warehouse, Warning, WarningCircle, WarningDiamond, WarningOctagon, WashingMachine, Watch, Waveform, WaveformSlash, Waves, WaveSawtooth, WaveSine, WaveSquare, WaveTriangle, Webcam, WebcamSlash, WebhooksLogo, WechatLogo, WhatsappLogo, Wheelchair, WheelchairMotion, WifiHigh, WifiLow, WifiMedium, WifiNone, WifiSlash, WifiX, Wind, Windmill, WindowsLogo, Wine, Wrench\n\n### X\nX, XCircle, XLogo, XSquare\n\n### Y\nYarn, YinYang, YoutubeLogo\n";
|
|
5
|
+
//# sourceMappingURL=icons.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/data/icons.ts"],"names":[],"mappings":"AAIA,6DAA6D;AAC7D,eAAO,MAAM,mBAAmB,EAAE,MAAM,EAAqznB,CAAC;AAE91nB,0DAA0D;AAC1D,eAAO,MAAM,cAAc,28mBA4F1B,CAAC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
// AUTO-GENERATED by packages/mcp/scripts/gen-icons.cjs from
|
|
2
|
+
// node_modules/@phosphor-icons/react/dist/index.d.ts — do not edit by hand.
|
|
3
|
+
// Re-run: node packages/mcp/scripts/gen-icons.cjs
|
|
4
|
+
/** Every valid Phosphor icon component name (PascalCase). */
|
|
5
|
+
export const PHOSPHOR_ICON_NAMES = ["Acorn", "AddressBook", "AddressBookTabs", "Airplane", "AirplaneInFlight", "AirplaneLanding", "AirplaneTakeoff", "AirplaneTaxiing", "AirplaneTilt", "Airplay", "AirTrafficControl", "Alarm", "Alien", "AlignBottom", "AlignBottomSimple", "AlignCenterHorizontal", "AlignCenterHorizontalSimple", "AlignCenterVertical", "AlignCenterVerticalSimple", "AlignLeft", "AlignLeftSimple", "AlignRight", "AlignRightSimple", "AlignTop", "AlignTopSimple", "AmazonLogo", "Ambulance", "Anchor", "AnchorSimple", "AndroidLogo", "Angle", "AngularLogo", "Aperture", "AppleLogo", "ApplePodcastsLogo", "ApproximateEquals", "AppStoreLogo", "AppWindow", "Archive", "Armchair", "ArrowArcLeft", "ArrowArcRight", "ArrowBendDoubleUpLeft", "ArrowBendDoubleUpRight", "ArrowBendDownLeft", "ArrowBendDownRight", "ArrowBendLeftDown", "ArrowBendLeftUp", "ArrowBendRightDown", "ArrowBendRightUp", "ArrowBendUpLeft", "ArrowBendUpRight", "ArrowCircleDown", "ArrowCircleDownLeft", "ArrowCircleDownRight", "ArrowCircleLeft", "ArrowCircleRight", "ArrowCircleUp", "ArrowCircleUpLeft", "ArrowCircleUpRight", "ArrowClockwise", "ArrowCounterClockwise", "ArrowDown", "ArrowDownLeft", "ArrowDownRight", "ArrowElbowDownLeft", "ArrowElbowDownRight", "ArrowElbowLeft", "ArrowElbowLeftDown", "ArrowElbowLeftUp", "ArrowElbowRight", "ArrowElbowRightDown", "ArrowElbowRightUp", "ArrowElbowUpLeft", "ArrowElbowUpRight", "ArrowFatDown", "ArrowFatLeft", "ArrowFatLineDown", "ArrowFatLineLeft", "ArrowFatLineRight", "ArrowFatLinesDown", "ArrowFatLinesLeft", "ArrowFatLinesRight", "ArrowFatLinesUp", "ArrowFatLineUp", "ArrowFatRight", "ArrowFatUp", "ArrowLeft", "ArrowLineDown", "ArrowLineDownLeft", "ArrowLineDownRight", "ArrowLineLeft", "ArrowLineRight", "ArrowLineUp", "ArrowLineUpLeft", "ArrowLineUpRight", "ArrowRight", "ArrowsClockwise", "ArrowsCounterClockwise", "ArrowsDownUp", "ArrowsHorizontal", "ArrowsIn", "ArrowsInCardinal", "ArrowsInLineHorizontal", "ArrowsInLineVertical", "ArrowsInSimple", "ArrowsLeftRight", "ArrowsMerge", "ArrowsOut", "ArrowsOutCardinal", "ArrowsOutLineHorizontal", "ArrowsOutLineVertical", "ArrowsOutSimple", "ArrowSquareDown", "ArrowSquareDownLeft", "ArrowSquareDownRight", "ArrowSquareIn", "ArrowSquareLeft", "ArrowSquareOut", "ArrowSquareRight", "ArrowSquareUp", "ArrowSquareUpLeft", "ArrowSquareUpRight", "ArrowsSplit", "ArrowsVertical", "ArrowUDownLeft", "ArrowUDownRight", "ArrowULeftDown", "ArrowULeftUp", "ArrowUp", "ArrowUpLeft", "ArrowUpRight", "ArrowURightDown", "ArrowURightUp", "ArrowUUpLeft", "ArrowUUpRight", "Article", "ArticleMedium", "ArticleNyTimes", "Asclepius", "Asterisk", "AsteriskSimple", "At", "Atom", "Avocado", "Axe", "Baby", "BabyCarriage", "Backpack", "Backspace", "Bag", "BagSimple", "Balloon", "Bandaids", "Bank", "Barbell", "Barcode", "Barn", "Barricade", "Baseball", "BaseballCap", "BaseballHelmet", "Basket", "Basketball", "Bathtub", "BatteryCharging", "BatteryChargingVertical", "BatteryEmpty", "BatteryFull", "BatteryHigh", "BatteryLow", "BatteryMedium", "BatteryPlus", "BatteryPlusVertical", "BatteryVerticalEmpty", "BatteryVerticalFull", "BatteryVerticalHigh", "BatteryVerticalLow", "BatteryVerticalMedium", "BatteryWarning", "BatteryWarningVertical", "BeachBall", "Beanie", "Bed", "BeerBottle", "BeerStein", "BehanceLogo", "Bell", "BellRinging", "BellSimple", "BellSimpleRinging", "BellSimpleSlash", "BellSimpleZ", "BellSlash", "BellZ", "Belt", "BezierCurve", "Bicycle", "Binary", "Binoculars", "Biohazard", "Bird", "Blueprint", "Bluetooth", "BluetoothConnected", "BluetoothSlash", "BluetoothX", "Boat", "Bomb", "Bone", "Book", "BookBookmark", "Bookmark", "Bookmarks", "BookmarkSimple", "BookmarksSimple", "BookOpen", "BookOpenText", "BookOpenUser", "Books", "Boot", "Boules", "BoundingBox", "BowlFood", "BowlingBall", "BowlSteam", "BoxArrowDown", "BoxArrowUp", "BoxingGlove", "BracketsAngle", "BracketsCurly", "BracketsRound", "BracketsSquare", "Brain", "Brandy", "Bread", "Bridge", "Briefcase", "BriefcaseMetal", "Broadcast", "Broom", "Browser", "Browsers", "Bug", "BugBeetle", "BugDroid", "Building", "BuildingApartment", "BuildingOffice", "Buildings", "Bulldozer", "Bus", "Butterfly", "CableCar", "Cactus", "Cake", "Calculator", "Calendar", "CalendarBlank", "CalendarCheck", "CalendarDot", "CalendarDots", "CalendarHeart", "CalendarMinus", "CalendarPlus", "CalendarSlash", "CalendarStar", "CalendarX", "CallBell", "Camera", "CameraPlus", "CameraRotate", "CameraSlash", "Campfire", "Car", "CarBattery", "Cardholder", "Cards", "CardsThree", "CaretCircleDoubleDown", "CaretCircleDoubleLeft", "CaretCircleDoubleRight", "CaretCircleDoubleUp", "CaretCircleDown", "CaretCircleLeft", "CaretCircleRight", "CaretCircleUp", "CaretCircleUpDown", "CaretDoubleDown", "CaretDoubleLeft", "CaretDoubleRight", "CaretDoubleUp", "CaretDown", "CaretLeft", "CaretLineDown", "CaretLineLeft", "CaretLineRight", "CaretLineUp", "CaretRight", "CaretUp", "CaretUpDown", "CarProfile", "Carrot", "CarSimple", "CashRegister", "CassetteTape", "CastleTurret", "Cat", "CellSignalFull", "CellSignalHigh", "CellSignalLow", "CellSignalMedium", "CellSignalNone", "CellSignalSlash", "CellSignalX", "CellTower", "Certificate", "Chair", "Chalkboard", "ChalkboardSimple", "ChalkboardTeacher", "Champagne", "ChargingStation", "ChartBar", "ChartBarHorizontal", "ChartDonut", "ChartLine", "ChartLineDown", "ChartLineUp", "ChartPie", "ChartPieSlice", "ChartPolar", "ChartScatter", "Chat", "ChatCentered", "ChatCenteredDots", "ChatCenteredSlash", "ChatCenteredText", "ChatCircle", "ChatCircleDots", "ChatCircleSlash", "ChatCircleText", "ChatDots", "Chats", "ChatsCircle", "ChatSlash", "ChatsTeardrop", "ChatTeardrop", "ChatTeardropDots", "ChatTeardropSlash", "ChatTeardropText", "ChatText", "Check", "CheckCircle", "Checkerboard", "CheckFat", "Checks", "CheckSquare", "CheckSquareOffset", "Cheers", "Cheese", "ChefHat", "Cherries", "Church", "Cigarette", "CigaretteSlash", "Circle", "CircleDashed", "CircleHalf", "CircleHalfTilt", "CircleNotch", "CirclesFour", "CirclesThree", "CirclesThreePlus", "Circuitry", "City", "Clipboard", "ClipboardText", "Clock", "ClockAfternoon", "ClockClockwise", "ClockCountdown", "ClockCounterClockwise", "ClockUser", "ClosedCaptioning", "Cloud", "CloudArrowDown", "CloudArrowUp", "CloudCheck", "CloudFog", "CloudLightning", "CloudMoon", "CloudRain", "CloudSlash", "CloudSnow", "CloudSun", "CloudWarning", "CloudX", "Clover", "Club", "CoatHanger", "CodaLogo", "Code", "CodeBlock", "CodepenLogo", "CodesandboxLogo", "CodeSimple", "Coffee", "CoffeeBean", "Coin", "Coins", "CoinVertical", "Columns", "ColumnsPlusLeft", "ColumnsPlusRight", "Command", "Compass", "CompassRose", "CompassTool", "ComputerTower", "Confetti", "ContactlessPayment", "Control", "Cookie", "CookingPot", "Copy", "Copyleft", "Copyright", "CopySimple", "CornersIn", "CornersOut", "Couch", "CourtBasketball", "Cow", "CowboyHat", "Cpu", "Crane", "CraneTower", "CreditCard", "Cricket", "Crop", "Cross", "Crosshair", "CrosshairSimple", "Crown", "CrownCross", "CrownSimple", "Cube", "CubeFocus", "CubeTransparent", "CurrencyBtc", "CurrencyCircleDollar", "CurrencyCny", "CurrencyDollar", "CurrencyDollarSimple", "CurrencyEth", "CurrencyEur", "CurrencyGbp", "CurrencyInr", "CurrencyJpy", "CurrencyKrw", "CurrencyKzt", "CurrencyNgn", "CurrencyRub", "Cursor", "CursorClick", "CursorText", "Cylinder", "Database", "Desk", "Desktop", "DesktopTower", "Detective", "DeviceMobile", "DeviceMobileCamera", "DeviceMobileSlash", "DeviceMobileSpeaker", "DeviceRotate", "Devices", "DeviceTablet", "DeviceTabletCamera", "DeviceTabletSpeaker", "DevToLogo", "Diamond", "DiamondsFour", "DiceFive", "DiceFour", "DiceOne", "DiceSix", "DiceThree", "DiceTwo", "Disc", "DiscoBall", "DiscordLogo", "Divide", "Dna", "Dog", "Door", "DoorOpen", "Dot", "DotOutline", "DotsNine", "DotsSix", "DotsSixVertical", "DotsThree", "DotsThreeCircle", "DotsThreeCircleVertical", "DotsThreeOutline", "DotsThreeOutlineVertical", "DotsThreeVertical", "Download", "DownloadSimple", "Dress", "Dresser", "DribbbleLogo", "Drone", "Drop", "DropboxLogo", "DropHalf", "DropHalfBottom", "DropSimple", "DropSlash", "Ear", "EarSlash", "Egg", "EggCrack", "Eject", "EjectSimple", "Elevator", "Empty", "Engine", "Envelope", "EnvelopeOpen", "EnvelopeSimple", "EnvelopeSimpleOpen", "Equalizer", "Equals", "Eraser", "EscalatorDown", "EscalatorUp", "Exam", "ExclamationMark", "Exclude", "ExcludeSquare", "Export", "Eye", "EyeClosed", "Eyedropper", "EyedropperSample", "Eyeglasses", "Eyes", "EyeSlash", "FacebookLogo", "FaceMask", "Factory", "Faders", "FadersHorizontal", "FalloutShelter", "Fan", "Farm", "FastForward", "FastForwardCircle", "Feather", "FediverseLogo", "FigmaLogo", "File", "FileArchive", "FileArrowDown", "FileArrowUp", "FileAudio", "FileC", "FileCloud", "FileCode", "FileCpp", "FileCSharp", "FileCss", "FileCsv", "FileDashed", "FileDoc", "FileHtml", "FileImage", "FileIni", "FileJpg", "FileJs", "FileJsx", "FileLock", "FileMagnifyingGlass", "FileMd", "FileMinus", "FilePdf", "FilePlus", "FilePng", "FilePpt", "FilePy", "FileRs", "Files", "FileSql", "FileSvg", "FileText", "FileTs", "FileTsx", "FileTxt", "FileVideo", "FileVue", "FileX", "FileXls", "FileZip", "FilmReel", "FilmScript", "FilmSlate", "FilmStrip", "Fingerprint", "FingerprintSimple", "FinnTheHuman", "Fire", "FireExtinguisher", "FireSimple", "FireTruck", "FirstAid", "FirstAidKit", "Fish", "FishSimple", "Flag", "FlagBanner", "FlagBannerFold", "FlagCheckered", "FlagPennant", "Flame", "Flashlight", "Flask", "FlipHorizontal", "FlipVertical", "FloppyDisk", "FloppyDiskBack", "FlowArrow", "Flower", "FlowerLotus", "FlowerTulip", "FlyingSaucer", "Folder", "FolderDashed", "FolderLock", "FolderMinus", "FolderOpen", "FolderPlus", "Folders", "FolderSimple", "FolderSimpleDashed", "FolderSimpleLock", "FolderSimpleMinus", "FolderSimplePlus", "FolderSimpleStar", "FolderSimpleUser", "FolderStar", "FolderUser", "Football", "FootballHelmet", "Footprints", "ForkKnife", "FourK", "FrameCorners", "FramerLogo", "Function", "Funnel", "FunnelSimple", "FunnelSimpleX", "FunnelX", "GameController", "Garage", "GasCan", "GasPump", "Gauge", "Gavel", "Gear", "GearFine", "GearSix", "GenderFemale", "GenderIntersex", "GenderMale", "GenderNeuter", "GenderNonbinary", "GenderTransgender", "Ghost", "Gif", "Gift", "GitBranch", "GitCommit", "GitDiff", "GitFork", "GithubLogo", "GitlabLogo", "GitlabLogoSimple", "GitMerge", "GitPullRequest", "Globe", "GlobeHemisphereEast", "GlobeHemisphereWest", "GlobeSimple", "GlobeSimpleX", "GlobeStand", "GlobeX", "Goggles", "Golf", "GoodreadsLogo", "GoogleCardboardLogo", "GoogleChromeLogo", "GoogleDriveLogo", "GoogleLogo", "GooglePhotosLogo", "GooglePlayLogo", "GooglePodcastsLogo", "Gps", "GpsFix", "GpsSlash", "Gradient", "GraduationCap", "Grains", "GrainsSlash", "Graph", "GraphicsCard", "GreaterThan", "GreaterThanOrEqual", "GridFour", "GridNine", "Guitar", "HairDryer", "Hamburger", "Hammer", "Hand", "HandArrowDown", "HandArrowUp", "Handbag", "HandbagSimple", "HandCoins", "HandDeposit", "HandEye", "HandFist", "HandGrabbing", "HandHeart", "HandPalm", "HandPeace", "HandPointing", "HandsClapping", "Handshake", "HandSoap", "HandsPraying", "HandSwipeLeft", "HandSwipeRight", "HandTap", "HandWaving", "HandWithdraw", "HardDrive", "HardDrives", "HardHat", "Hash", "HashStraight", "HeadCircuit", "Headlights", "Headphones", "Headset", "Heart", "Heartbeat", "HeartBreak", "HeartHalf", "HeartStraight", "HeartStraightBreak", "Hexagon", "HighDefinition", "HighHeel", "Highlighter", "HighlighterCircle", "Hockey", "Hoodie", "Horse", "Hospital", "Hourglass", "HourglassHigh", "HourglassLow", "HourglassMedium", "HourglassSimple", "HourglassSimpleHigh", "HourglassSimpleLow", "HourglassSimpleMedium", "House", "HouseLine", "HouseSimple", "Hurricane", "IceCream", "IdentificationBadge", "IdentificationCard", "Image", "ImageBroken", "Images", "ImageSquare", "ImagesSquare", "Infinity", "Info", "InstagramLogo", "Intersect", "Intersection", "IntersectSquare", "IntersectThree", "Invoice", "Island", "Jar", "JarLabel", "Jeep", "Joystick", "Kanban", "Key", "Keyboard", "Keyhole", "KeyReturn", "Knife", "Ladder", "LadderSimple", "Lamp", "LampPendant", "Laptop", "Lasso", "LastfmLogo", "Layout", "Leaf", "Lectern", "Lego", "LegoSmiley", "LessThan", "LessThanOrEqual", "LetterCircleH", "LetterCircleP", "LetterCircleV", "Lifebuoy", "Lightbulb", "LightbulbFilament", "Lighthouse", "Lightning", "LightningA", "LightningSlash", "LineSegment", "LineSegments", "LineVertical", "Link", "LinkBreak", "LinkedinLogo", "LinkSimple", "LinkSimpleBreak", "LinkSimpleHorizontal", "LinkSimpleHorizontalBreak", "LinktreeLogo", "LinuxLogo", "List", "ListBullets", "ListChecks", "ListDashes", "ListHeart", "ListMagnifyingGlass", "ListNumbers", "ListPlus", "ListStar", "Lock", "Lockers", "LockKey", "LockKeyOpen", "LockLaminated", "LockLaminatedOpen", "LockOpen", "LockSimple", "LockSimpleOpen", "Log", "MagicWand", "Magnet", "MagnetStraight", "MagnifyingGlass", "MagnifyingGlassMinus", "MagnifyingGlassPlus", "Mailbox", "MapPin", "MapPinArea", "MapPinLine", "MapPinPlus", "MapPinSimple", "MapPinSimpleArea", "MapPinSimpleLine", "MapTrifold", "MarkdownLogo", "MarkerCircle", "Martini", "MaskHappy", "MaskSad", "MastodonLogo", "MathOperations", "MatrixLogo", "Medal", "MedalMilitary", "MediumLogo", "Megaphone", "MegaphoneSimple", "MemberOf", "Memory", "MessengerLogo", "MetaLogo", "Meteor", "Metronome", "Microphone", "MicrophoneSlash", "MicrophoneStage", "Microscope", "MicrosoftExcelLogo", "MicrosoftOutlookLogo", "MicrosoftPowerpointLogo", "MicrosoftTeamsLogo", "MicrosoftWordLogo", "Minus", "MinusCircle", "MinusSquare", "Money", "MoneyWavy", "Monitor", "MonitorArrowUp", "MonitorPlay", "Moon", "MoonStars", "Moped", "MopedFront", "Mosque", "Motorcycle", "Mountains", "Mouse", "MouseLeftClick", "MouseMiddleClick", "MouseRightClick", "MouseScroll", "MouseSimple", "MusicNote", "MusicNotes", "MusicNoteSimple", "MusicNotesMinus", "MusicNotesPlus", "MusicNotesSimple", "NavigationArrow", "Needle", "Network", "NetworkSlash", "NetworkX", "Newspaper", "NewspaperClipping", "Notches", "Note", "NoteBlank", "Notebook", "Notepad", "NotePencil", "NotEquals", "Notification", "NotionLogo", "NotMemberOf", "NotSubsetOf", "NotSupersetOf", "NuclearPlant", "NumberCircleEight", "NumberCircleFive", "NumberCircleFour", "NumberCircleNine", "NumberCircleOne", "NumberCircleSeven", "NumberCircleSix", "NumberCircleThree", "NumberCircleTwo", "NumberCircleZero", "NumberEight", "NumberFive", "NumberFour", "NumberNine", "NumberOne", "NumberSeven", "NumberSix", "NumberSquareEight", "NumberSquareFive", "NumberSquareFour", "NumberSquareNine", "NumberSquareOne", "NumberSquareSeven", "NumberSquareSix", "NumberSquareThree", "NumberSquareTwo", "NumberSquareZero", "NumberThree", "NumberTwo", "NumberZero", "Numpad", "Nut", "NyTimesLogo", "Octagon", "OfficeChair", "Onigiri", "OpenAiLogo", "Option", "Orange", "OrangeSlice", "Oven", "Package", "PaintBrush", "PaintBrushBroad", "PaintBrushHousehold", "PaintBucket", "PaintRoller", "Palette", "Panorama", "Pants", "Paperclip", "PaperclipHorizontal", "PaperPlane", "PaperPlaneRight", "PaperPlaneTilt", "Parachute", "Paragraph", "Parallelogram", "Park", "Password", "Path", "PatreonLogo", "Pause", "PauseCircle", "PawPrint", "PaypalLogo", "Peace", "Pen", "Pencil", "PencilCircle", "PencilLine", "PencilRuler", "PencilSimple", "PencilSimpleLine", "PencilSimpleSlash", "PencilSlash", "PenNib", "PenNibStraight", "Pentagon", "Pentagram", "Pepper", "Percent", "Person", "PersonArmsSpread", "PersonSimple", "PersonSimpleBike", "PersonSimpleCircle", "PersonSimpleHike", "PersonSimpleRun", "PersonSimpleSki", "PersonSimpleSnowboard", "PersonSimpleSwim", "PersonSimpleTaiChi", "PersonSimpleThrow", "PersonSimpleWalk", "Perspective", "Phone", "PhoneCall", "PhoneDisconnect", "PhoneIncoming", "PhoneList", "PhoneOutgoing", "PhonePause", "PhonePlus", "PhoneSlash", "PhoneTransfer", "PhoneX", "PhosphorLogo", "Pi", "PianoKeys", "PicnicTable", "PictureInPicture", "PiggyBank", "Pill", "PingPong", "PinterestLogo", "PintGlass", "Pinwheel", "Pipe", "PipeWrench", "PixLogo", "Pizza", "Placeholder", "Planet", "Plant", "Play", "PlayCircle", "Playlist", "PlayPause", "Plug", "PlugCharging", "Plugs", "PlugsConnected", "Plus", "PlusCircle", "PlusMinus", "PlusSquare", "PokerChip", "PoliceCar", "Polygon", "Popcorn", "Popsicle", "PottedPlant", "Power", "Prescription", "Presentation", "PresentationChart", "Printer", "Prohibit", "ProhibitInset", "ProjectorScreen", "ProjectorScreenChart", "Pulse", "PushPin", "PushPinSimple", "PushPinSimpleSlash", "PushPinSlash", "PuzzlePiece", "QrCode", "Question", "QuestionMark", "Queue", "Quotes", "Rabbit", "Racquet", "Radical", "Radio", "Radioactive", "RadioButton", "Rainbow", "RainbowCloud", "Ranking", "ReadCvLogo", "Receipt", "ReceiptX", "Record", "Rectangle", "RectangleDashed", "Recycle", "RedditLogo", "Repeat", "RepeatOnce", "ReplitLogo", "Resize", "Rewind", "RewindCircle", "RoadHorizon", "Robot", "Rocket", "RocketLaunch", "Rows", "RowsPlusBottom", "RowsPlusTop", "Rss", "RssSimple", "Rug", "Ruler", "Sailboat", "Scales", "Scan", "ScanSmiley", "Scissors", "Scooter", "Screencast", "Screwdriver", "Scribble", "ScribbleLoop", "Scroll", "Seal", "SealCheck", "SealPercent", "SealQuestion", "SealWarning", "Seat", "Seatbelt", "SecurityCamera", "Selection", "SelectionAll", "SelectionBackground", "SelectionForeground", "SelectionInverse", "SelectionPlus", "SelectionSlash", "Shapes", "Share", "ShareFat", "ShareNetwork", "Shield", "ShieldCheck", "ShieldCheckered", "ShieldChevron", "ShieldPlus", "ShieldSlash", "ShieldStar", "ShieldWarning", "ShippingContainer", "ShirtFolded", "ShootingStar", "ShoppingBag", "ShoppingBagOpen", "ShoppingCart", "ShoppingCartSimple", "Shovel", "Shower", "Shrimp", "Shuffle", "ShuffleAngular", "ShuffleSimple", "Sidebar", "SidebarSimple", "Sigma", "Signature", "SignIn", "SignOut", "Signpost", "SimCard", "Siren", "SketchLogo", "SkipBack", "SkipBackCircle", "SkipForward", "SkipForwardCircle", "Skull", "SkypeLogo", "SlackLogo", "Sliders", "SlidersHorizontal", "Slideshow", "Smiley", "SmileyAngry", "SmileyBlank", "SmileyMeh", "SmileyMelting", "SmileyNervous", "SmileySad", "SmileySticker", "SmileyWink", "SmileyXEyes", "SnapchatLogo", "Sneaker", "SneakerMove", "Snowflake", "SoccerBall", "Sock", "SolarPanel", "SolarRoof", "SortAscending", "SortDescending", "SoundcloudLogo", "Spade", "Sparkle", "SpeakerHifi", "SpeakerHigh", "SpeakerLow", "SpeakerNone", "SpeakerSimpleHigh", "SpeakerSimpleLow", "SpeakerSimpleNone", "SpeakerSimpleSlash", "SpeakerSimpleX", "SpeakerSlash", "SpeakerX", "Speedometer", "Sphere", "Spinner", "SpinnerBall", "SpinnerGap", "Spiral", "SplitHorizontal", "SplitVertical", "SpotifyLogo", "SprayBottle", "Square", "SquareHalf", "SquareHalfBottom", "SquareLogo", "SquaresFour", "SquareSplitHorizontal", "SquareSplitVertical", "Stack", "StackMinus", "StackOverflowLogo", "StackPlus", "StackSimple", "Stairs", "Stamp", "StandardDefinition", "Star", "StarAndCrescent", "StarFour", "StarHalf", "StarOfDavid", "SteamLogo", "SteeringWheel", "Steps", "Stethoscope", "Sticker", "Stool", "Stop", "StopCircle", "Storefront", "Strategy", "StripeLogo", "Student", "SubsetOf", "SubsetProperOf", "Subtitles", "SubtitlesSlash", "Subtract", "SubtractSquare", "Subway", "Suitcase", "SuitcaseRolling", "SuitcaseSimple", "Sun", "SunDim", "Sunglasses", "SunHorizon", "SupersetOf", "SupersetProperOf", "Swap", "Swatches", "SwimmingPool", "Sword", "Synagogue", "Syringe", "Table", "Tabs", "Tag", "TagChevron", "TagSimple", "Target", "Taxi", "TeaBag", "TelegramLogo", "Television", "TelevisionSimple", "TennisBall", "Tent", "Terminal", "TerminalWindow", "TestTube", "TextAa", "TextAlignCenter", "TextAlignJustify", "TextAlignLeft", "TextAlignRight", "TextAUnderline", "TextB", "Textbox", "TextColumns", "TextH", "TextHFive", "TextHFour", "TextHOne", "TextHSix", "TextHThree", "TextHTwo", "TextIndent", "TextItalic", "TextOutdent", "TextStrikethrough", "TextSubscript", "TextSuperscript", "TextT", "TextTSlash", "TextUnderline", "Thermometer", "ThermometerCold", "ThermometerHot", "ThermometerSimple", "ThreadsLogo", "ThreeD", "ThumbsDown", "ThumbsUp", "Ticket", "TidalLogo", "TiktokLogo", "Tilde", "Timer", "Tipi", "TipJar", "Tire", "ToggleLeft", "ToggleRight", "Toilet", "ToiletPaper", "Toolbox", "Tooth", "Tornado", "Tote", "ToteSimple", "Towel", "Tractor", "Trademark", "TrademarkRegistered", "TrafficCone", "TrafficSign", "TrafficSignal", "Train", "TrainRegional", "TrainSimple", "Tram", "Translate", "Trash", "TrashSimple", "Tray", "TrayArrowDown", "TrayArrowUp", "TreasureChest", "Tree", "TreeEvergreen", "TreePalm", "TreeStructure", "TreeView", "TrendDown", "TrendUp", "Triangle", "TriangleDashed", "Trolley", "TrolleySuitcase", "Trophy", "Truck", "TruckTrailer", "TShirt", "TumblrLogo", "TwitchLogo", "TwitterLogo", "Umbrella", "UmbrellaSimple", "Union", "Unite", "UniteSquare", "Upload", "UploadSimple", "Usb", "User", "UserCheck", "UserCircle", "UserCircleCheck", "UserCircleDashed", "UserCircleGear", "UserCircleMinus", "UserCirclePlus", "UserFocus", "UserGear", "UserList", "UserMinus", "UserPlus", "UserRectangle", "Users", "UsersFour", "UserSound", "UserSquare", "UsersThree", "UserSwitch", "Van", "Vault", "VectorThree", "VectorTwo", "Vibrate", "Video", "VideoCamera", "VideoCameraSlash", "VideoConference", "Vignette", "VinylRecord", "VirtualReality", "Virus", "Visor", "Voicemail", "Volleyball", "Wall", "Wallet", "Warehouse", "Warning", "WarningCircle", "WarningDiamond", "WarningOctagon", "WashingMachine", "Watch", "Waveform", "WaveformSlash", "Waves", "WaveSawtooth", "WaveSine", "WaveSquare", "WaveTriangle", "Webcam", "WebcamSlash", "WebhooksLogo", "WechatLogo", "WhatsappLogo", "Wheelchair", "WheelchairMotion", "WifiHigh", "WifiLow", "WifiMedium", "WifiNone", "WifiSlash", "WifiX", "Wind", "Windmill", "WindowsLogo", "Wine", "Wrench", "X", "XCircle", "XLogo", "XSquare", "Yarn", "YinYang", "YoutubeLogo"];
|
|
6
|
+
/** Agent-facing markdown reference of all valid icons. */
|
|
7
|
+
export const PHOSPHOR_ICONS = `# AstralKit Icon Reference — Phosphor Icons (@phosphor-icons/react v2.1.10)
|
|
8
|
+
|
|
9
|
+
**AstralKit uses Phosphor icons EXCLUSIVELY.** Never use Lucide, Heroicons, Font Awesome, or inline SVG.
|
|
10
|
+
This is the COMPLETE, authoritative list of every valid Phosphor icon component name (1512 icons).
|
|
11
|
+
Do NOT guess or invent an icon name — if it is not in this list, it does not exist and the import will fail.
|
|
12
|
+
|
|
13
|
+
## Usage
|
|
14
|
+
\`\`\`tsx
|
|
15
|
+
import { House, Gear, MagnifyingGlass } from '@phosphor-icons/react'
|
|
16
|
+
|
|
17
|
+
<House size={20} weight="regular" aria-hidden="true" />
|
|
18
|
+
\`\`\`
|
|
19
|
+
- Component name = PascalCase, exactly as listed below.
|
|
20
|
+
- \`size\` prop accepts a number (px) — pair with AstralKit \`size-ak-icon-*\` tokens for layout.
|
|
21
|
+
- \`weight\`: \`thin\` | \`light\` | \`regular\` (default) | \`bold\` | \`fill\` | \`duotone\`.
|
|
22
|
+
- Always add \`aria-hidden="true"\` for decorative icons; give a label for meaningful ones.
|
|
23
|
+
|
|
24
|
+
## Complete icon list (1512)
|
|
25
|
+
### A
|
|
26
|
+
Acorn, AddressBook, AddressBookTabs, Airplane, AirplaneInFlight, AirplaneLanding, AirplaneTakeoff, AirplaneTaxiing, AirplaneTilt, Airplay, AirTrafficControl, Alarm, Alien, AlignBottom, AlignBottomSimple, AlignCenterHorizontal, AlignCenterHorizontalSimple, AlignCenterVertical, AlignCenterVerticalSimple, AlignLeft, AlignLeftSimple, AlignRight, AlignRightSimple, AlignTop, AlignTopSimple, AmazonLogo, Ambulance, Anchor, AnchorSimple, AndroidLogo, Angle, AngularLogo, Aperture, AppleLogo, ApplePodcastsLogo, ApproximateEquals, AppStoreLogo, AppWindow, Archive, Armchair, ArrowArcLeft, ArrowArcRight, ArrowBendDoubleUpLeft, ArrowBendDoubleUpRight, ArrowBendDownLeft, ArrowBendDownRight, ArrowBendLeftDown, ArrowBendLeftUp, ArrowBendRightDown, ArrowBendRightUp, ArrowBendUpLeft, ArrowBendUpRight, ArrowCircleDown, ArrowCircleDownLeft, ArrowCircleDownRight, ArrowCircleLeft, ArrowCircleRight, ArrowCircleUp, ArrowCircleUpLeft, ArrowCircleUpRight, ArrowClockwise, ArrowCounterClockwise, ArrowDown, ArrowDownLeft, ArrowDownRight, ArrowElbowDownLeft, ArrowElbowDownRight, ArrowElbowLeft, ArrowElbowLeftDown, ArrowElbowLeftUp, ArrowElbowRight, ArrowElbowRightDown, ArrowElbowRightUp, ArrowElbowUpLeft, ArrowElbowUpRight, ArrowFatDown, ArrowFatLeft, ArrowFatLineDown, ArrowFatLineLeft, ArrowFatLineRight, ArrowFatLinesDown, ArrowFatLinesLeft, ArrowFatLinesRight, ArrowFatLinesUp, ArrowFatLineUp, ArrowFatRight, ArrowFatUp, ArrowLeft, ArrowLineDown, ArrowLineDownLeft, ArrowLineDownRight, ArrowLineLeft, ArrowLineRight, ArrowLineUp, ArrowLineUpLeft, ArrowLineUpRight, ArrowRight, ArrowsClockwise, ArrowsCounterClockwise, ArrowsDownUp, ArrowsHorizontal, ArrowsIn, ArrowsInCardinal, ArrowsInLineHorizontal, ArrowsInLineVertical, ArrowsInSimple, ArrowsLeftRight, ArrowsMerge, ArrowsOut, ArrowsOutCardinal, ArrowsOutLineHorizontal, ArrowsOutLineVertical, ArrowsOutSimple, ArrowSquareDown, ArrowSquareDownLeft, ArrowSquareDownRight, ArrowSquareIn, ArrowSquareLeft, ArrowSquareOut, ArrowSquareRight, ArrowSquareUp, ArrowSquareUpLeft, ArrowSquareUpRight, ArrowsSplit, ArrowsVertical, ArrowUDownLeft, ArrowUDownRight, ArrowULeftDown, ArrowULeftUp, ArrowUp, ArrowUpLeft, ArrowUpRight, ArrowURightDown, ArrowURightUp, ArrowUUpLeft, ArrowUUpRight, Article, ArticleMedium, ArticleNyTimes, Asclepius, Asterisk, AsteriskSimple, At, Atom, Avocado, Axe
|
|
27
|
+
|
|
28
|
+
### B
|
|
29
|
+
Baby, BabyCarriage, Backpack, Backspace, Bag, BagSimple, Balloon, Bandaids, Bank, Barbell, Barcode, Barn, Barricade, Baseball, BaseballCap, BaseballHelmet, Basket, Basketball, Bathtub, BatteryCharging, BatteryChargingVertical, BatteryEmpty, BatteryFull, BatteryHigh, BatteryLow, BatteryMedium, BatteryPlus, BatteryPlusVertical, BatteryVerticalEmpty, BatteryVerticalFull, BatteryVerticalHigh, BatteryVerticalLow, BatteryVerticalMedium, BatteryWarning, BatteryWarningVertical, BeachBall, Beanie, Bed, BeerBottle, BeerStein, BehanceLogo, Bell, BellRinging, BellSimple, BellSimpleRinging, BellSimpleSlash, BellSimpleZ, BellSlash, BellZ, Belt, BezierCurve, Bicycle, Binary, Binoculars, Biohazard, Bird, Blueprint, Bluetooth, BluetoothConnected, BluetoothSlash, BluetoothX, Boat, Bomb, Bone, Book, BookBookmark, Bookmark, Bookmarks, BookmarkSimple, BookmarksSimple, BookOpen, BookOpenText, BookOpenUser, Books, Boot, Boules, BoundingBox, BowlFood, BowlingBall, BowlSteam, BoxArrowDown, BoxArrowUp, BoxingGlove, BracketsAngle, BracketsCurly, BracketsRound, BracketsSquare, Brain, Brandy, Bread, Bridge, Briefcase, BriefcaseMetal, Broadcast, Broom, Browser, Browsers, Bug, BugBeetle, BugDroid, Building, BuildingApartment, BuildingOffice, Buildings, Bulldozer, Bus, Butterfly
|
|
30
|
+
|
|
31
|
+
### C
|
|
32
|
+
CableCar, Cactus, Cake, Calculator, Calendar, CalendarBlank, CalendarCheck, CalendarDot, CalendarDots, CalendarHeart, CalendarMinus, CalendarPlus, CalendarSlash, CalendarStar, CalendarX, CallBell, Camera, CameraPlus, CameraRotate, CameraSlash, Campfire, Car, CarBattery, Cardholder, Cards, CardsThree, CaretCircleDoubleDown, CaretCircleDoubleLeft, CaretCircleDoubleRight, CaretCircleDoubleUp, CaretCircleDown, CaretCircleLeft, CaretCircleRight, CaretCircleUp, CaretCircleUpDown, CaretDoubleDown, CaretDoubleLeft, CaretDoubleRight, CaretDoubleUp, CaretDown, CaretLeft, CaretLineDown, CaretLineLeft, CaretLineRight, CaretLineUp, CaretRight, CaretUp, CaretUpDown, CarProfile, Carrot, CarSimple, CashRegister, CassetteTape, CastleTurret, Cat, CellSignalFull, CellSignalHigh, CellSignalLow, CellSignalMedium, CellSignalNone, CellSignalSlash, CellSignalX, CellTower, Certificate, Chair, Chalkboard, ChalkboardSimple, ChalkboardTeacher, Champagne, ChargingStation, ChartBar, ChartBarHorizontal, ChartDonut, ChartLine, ChartLineDown, ChartLineUp, ChartPie, ChartPieSlice, ChartPolar, ChartScatter, Chat, ChatCentered, ChatCenteredDots, ChatCenteredSlash, ChatCenteredText, ChatCircle, ChatCircleDots, ChatCircleSlash, ChatCircleText, ChatDots, Chats, ChatsCircle, ChatSlash, ChatsTeardrop, ChatTeardrop, ChatTeardropDots, ChatTeardropSlash, ChatTeardropText, ChatText, Check, CheckCircle, Checkerboard, CheckFat, Checks, CheckSquare, CheckSquareOffset, Cheers, Cheese, ChefHat, Cherries, Church, Cigarette, CigaretteSlash, Circle, CircleDashed, CircleHalf, CircleHalfTilt, CircleNotch, CirclesFour, CirclesThree, CirclesThreePlus, Circuitry, City, Clipboard, ClipboardText, Clock, ClockAfternoon, ClockClockwise, ClockCountdown, ClockCounterClockwise, ClockUser, ClosedCaptioning, Cloud, CloudArrowDown, CloudArrowUp, CloudCheck, CloudFog, CloudLightning, CloudMoon, CloudRain, CloudSlash, CloudSnow, CloudSun, CloudWarning, CloudX, Clover, Club, CoatHanger, CodaLogo, Code, CodeBlock, CodepenLogo, CodesandboxLogo, CodeSimple, Coffee, CoffeeBean, Coin, Coins, CoinVertical, Columns, ColumnsPlusLeft, ColumnsPlusRight, Command, Compass, CompassRose, CompassTool, ComputerTower, Confetti, ContactlessPayment, Control, Cookie, CookingPot, Copy, Copyleft, Copyright, CopySimple, CornersIn, CornersOut, Couch, CourtBasketball, Cow, CowboyHat, Cpu, Crane, CraneTower, CreditCard, Cricket, Crop, Cross, Crosshair, CrosshairSimple, Crown, CrownCross, CrownSimple, Cube, CubeFocus, CubeTransparent, CurrencyBtc, CurrencyCircleDollar, CurrencyCny, CurrencyDollar, CurrencyDollarSimple, CurrencyEth, CurrencyEur, CurrencyGbp, CurrencyInr, CurrencyJpy, CurrencyKrw, CurrencyKzt, CurrencyNgn, CurrencyRub, Cursor, CursorClick, CursorText, Cylinder
|
|
33
|
+
|
|
34
|
+
### D
|
|
35
|
+
Database, Desk, Desktop, DesktopTower, Detective, DeviceMobile, DeviceMobileCamera, DeviceMobileSlash, DeviceMobileSpeaker, DeviceRotate, Devices, DeviceTablet, DeviceTabletCamera, DeviceTabletSpeaker, DevToLogo, Diamond, DiamondsFour, DiceFive, DiceFour, DiceOne, DiceSix, DiceThree, DiceTwo, Disc, DiscoBall, DiscordLogo, Divide, Dna, Dog, Door, DoorOpen, Dot, DotOutline, DotsNine, DotsSix, DotsSixVertical, DotsThree, DotsThreeCircle, DotsThreeCircleVertical, DotsThreeOutline, DotsThreeOutlineVertical, DotsThreeVertical, Download, DownloadSimple, Dress, Dresser, DribbbleLogo, Drone, Drop, DropboxLogo, DropHalf, DropHalfBottom, DropSimple, DropSlash
|
|
36
|
+
|
|
37
|
+
### E
|
|
38
|
+
Ear, EarSlash, Egg, EggCrack, Eject, EjectSimple, Elevator, Empty, Engine, Envelope, EnvelopeOpen, EnvelopeSimple, EnvelopeSimpleOpen, Equalizer, Equals, Eraser, EscalatorDown, EscalatorUp, Exam, ExclamationMark, Exclude, ExcludeSquare, Export, Eye, EyeClosed, Eyedropper, EyedropperSample, Eyeglasses, Eyes, EyeSlash
|
|
39
|
+
|
|
40
|
+
### F
|
|
41
|
+
FacebookLogo, FaceMask, Factory, Faders, FadersHorizontal, FalloutShelter, Fan, Farm, FastForward, FastForwardCircle, Feather, FediverseLogo, FigmaLogo, File, FileArchive, FileArrowDown, FileArrowUp, FileAudio, FileC, FileCloud, FileCode, FileCpp, FileCSharp, FileCss, FileCsv, FileDashed, FileDoc, FileHtml, FileImage, FileIni, FileJpg, FileJs, FileJsx, FileLock, FileMagnifyingGlass, FileMd, FileMinus, FilePdf, FilePlus, FilePng, FilePpt, FilePy, FileRs, Files, FileSql, FileSvg, FileText, FileTs, FileTsx, FileTxt, FileVideo, FileVue, FileX, FileXls, FileZip, FilmReel, FilmScript, FilmSlate, FilmStrip, Fingerprint, FingerprintSimple, FinnTheHuman, Fire, FireExtinguisher, FireSimple, FireTruck, FirstAid, FirstAidKit, Fish, FishSimple, Flag, FlagBanner, FlagBannerFold, FlagCheckered, FlagPennant, Flame, Flashlight, Flask, FlipHorizontal, FlipVertical, FloppyDisk, FloppyDiskBack, FlowArrow, Flower, FlowerLotus, FlowerTulip, FlyingSaucer, Folder, FolderDashed, FolderLock, FolderMinus, FolderOpen, FolderPlus, Folders, FolderSimple, FolderSimpleDashed, FolderSimpleLock, FolderSimpleMinus, FolderSimplePlus, FolderSimpleStar, FolderSimpleUser, FolderStar, FolderUser, Football, FootballHelmet, Footprints, ForkKnife, FourK, FrameCorners, FramerLogo, Function, Funnel, FunnelSimple, FunnelSimpleX, FunnelX
|
|
42
|
+
|
|
43
|
+
### G
|
|
44
|
+
GameController, Garage, GasCan, GasPump, Gauge, Gavel, Gear, GearFine, GearSix, GenderFemale, GenderIntersex, GenderMale, GenderNeuter, GenderNonbinary, GenderTransgender, Ghost, Gif, Gift, GitBranch, GitCommit, GitDiff, GitFork, GithubLogo, GitlabLogo, GitlabLogoSimple, GitMerge, GitPullRequest, Globe, GlobeHemisphereEast, GlobeHemisphereWest, GlobeSimple, GlobeSimpleX, GlobeStand, GlobeX, Goggles, Golf, GoodreadsLogo, GoogleCardboardLogo, GoogleChromeLogo, GoogleDriveLogo, GoogleLogo, GooglePhotosLogo, GooglePlayLogo, GooglePodcastsLogo, Gps, GpsFix, GpsSlash, Gradient, GraduationCap, Grains, GrainsSlash, Graph, GraphicsCard, GreaterThan, GreaterThanOrEqual, GridFour, GridNine, Guitar
|
|
45
|
+
|
|
46
|
+
### H
|
|
47
|
+
HairDryer, Hamburger, Hammer, Hand, HandArrowDown, HandArrowUp, Handbag, HandbagSimple, HandCoins, HandDeposit, HandEye, HandFist, HandGrabbing, HandHeart, HandPalm, HandPeace, HandPointing, HandsClapping, Handshake, HandSoap, HandsPraying, HandSwipeLeft, HandSwipeRight, HandTap, HandWaving, HandWithdraw, HardDrive, HardDrives, HardHat, Hash, HashStraight, HeadCircuit, Headlights, Headphones, Headset, Heart, Heartbeat, HeartBreak, HeartHalf, HeartStraight, HeartStraightBreak, Hexagon, HighDefinition, HighHeel, Highlighter, HighlighterCircle, Hockey, Hoodie, Horse, Hospital, Hourglass, HourglassHigh, HourglassLow, HourglassMedium, HourglassSimple, HourglassSimpleHigh, HourglassSimpleLow, HourglassSimpleMedium, House, HouseLine, HouseSimple, Hurricane
|
|
48
|
+
|
|
49
|
+
### I
|
|
50
|
+
IceCream, IdentificationBadge, IdentificationCard, Image, ImageBroken, Images, ImageSquare, ImagesSquare, Infinity, Info, InstagramLogo, Intersect, Intersection, IntersectSquare, IntersectThree, Invoice, Island
|
|
51
|
+
|
|
52
|
+
### J
|
|
53
|
+
Jar, JarLabel, Jeep, Joystick
|
|
54
|
+
|
|
55
|
+
### K
|
|
56
|
+
Kanban, Key, Keyboard, Keyhole, KeyReturn, Knife
|
|
57
|
+
|
|
58
|
+
### L
|
|
59
|
+
Ladder, LadderSimple, Lamp, LampPendant, Laptop, Lasso, LastfmLogo, Layout, Leaf, Lectern, Lego, LegoSmiley, LessThan, LessThanOrEqual, LetterCircleH, LetterCircleP, LetterCircleV, Lifebuoy, Lightbulb, LightbulbFilament, Lighthouse, Lightning, LightningA, LightningSlash, LineSegment, LineSegments, LineVertical, Link, LinkBreak, LinkedinLogo, LinkSimple, LinkSimpleBreak, LinkSimpleHorizontal, LinkSimpleHorizontalBreak, LinktreeLogo, LinuxLogo, List, ListBullets, ListChecks, ListDashes, ListHeart, ListMagnifyingGlass, ListNumbers, ListPlus, ListStar, Lock, Lockers, LockKey, LockKeyOpen, LockLaminated, LockLaminatedOpen, LockOpen, LockSimple, LockSimpleOpen, Log
|
|
60
|
+
|
|
61
|
+
### M
|
|
62
|
+
MagicWand, Magnet, MagnetStraight, MagnifyingGlass, MagnifyingGlassMinus, MagnifyingGlassPlus, Mailbox, MapPin, MapPinArea, MapPinLine, MapPinPlus, MapPinSimple, MapPinSimpleArea, MapPinSimpleLine, MapTrifold, MarkdownLogo, MarkerCircle, Martini, MaskHappy, MaskSad, MastodonLogo, MathOperations, MatrixLogo, Medal, MedalMilitary, MediumLogo, Megaphone, MegaphoneSimple, MemberOf, Memory, MessengerLogo, MetaLogo, Meteor, Metronome, Microphone, MicrophoneSlash, MicrophoneStage, Microscope, MicrosoftExcelLogo, MicrosoftOutlookLogo, MicrosoftPowerpointLogo, MicrosoftTeamsLogo, MicrosoftWordLogo, Minus, MinusCircle, MinusSquare, Money, MoneyWavy, Monitor, MonitorArrowUp, MonitorPlay, Moon, MoonStars, Moped, MopedFront, Mosque, Motorcycle, Mountains, Mouse, MouseLeftClick, MouseMiddleClick, MouseRightClick, MouseScroll, MouseSimple, MusicNote, MusicNotes, MusicNoteSimple, MusicNotesMinus, MusicNotesPlus, MusicNotesSimple
|
|
63
|
+
|
|
64
|
+
### N
|
|
65
|
+
NavigationArrow, Needle, Network, NetworkSlash, NetworkX, Newspaper, NewspaperClipping, Notches, Note, NoteBlank, Notebook, Notepad, NotePencil, NotEquals, Notification, NotionLogo, NotMemberOf, NotSubsetOf, NotSupersetOf, NuclearPlant, NumberCircleEight, NumberCircleFive, NumberCircleFour, NumberCircleNine, NumberCircleOne, NumberCircleSeven, NumberCircleSix, NumberCircleThree, NumberCircleTwo, NumberCircleZero, NumberEight, NumberFive, NumberFour, NumberNine, NumberOne, NumberSeven, NumberSix, NumberSquareEight, NumberSquareFive, NumberSquareFour, NumberSquareNine, NumberSquareOne, NumberSquareSeven, NumberSquareSix, NumberSquareThree, NumberSquareTwo, NumberSquareZero, NumberThree, NumberTwo, NumberZero, Numpad, Nut, NyTimesLogo
|
|
66
|
+
|
|
67
|
+
### O
|
|
68
|
+
Octagon, OfficeChair, Onigiri, OpenAiLogo, Option, Orange, OrangeSlice, Oven
|
|
69
|
+
|
|
70
|
+
### P
|
|
71
|
+
Package, PaintBrush, PaintBrushBroad, PaintBrushHousehold, PaintBucket, PaintRoller, Palette, Panorama, Pants, Paperclip, PaperclipHorizontal, PaperPlane, PaperPlaneRight, PaperPlaneTilt, Parachute, Paragraph, Parallelogram, Park, Password, Path, PatreonLogo, Pause, PauseCircle, PawPrint, PaypalLogo, Peace, Pen, Pencil, PencilCircle, PencilLine, PencilRuler, PencilSimple, PencilSimpleLine, PencilSimpleSlash, PencilSlash, PenNib, PenNibStraight, Pentagon, Pentagram, Pepper, Percent, Person, PersonArmsSpread, PersonSimple, PersonSimpleBike, PersonSimpleCircle, PersonSimpleHike, PersonSimpleRun, PersonSimpleSki, PersonSimpleSnowboard, PersonSimpleSwim, PersonSimpleTaiChi, PersonSimpleThrow, PersonSimpleWalk, Perspective, Phone, PhoneCall, PhoneDisconnect, PhoneIncoming, PhoneList, PhoneOutgoing, PhonePause, PhonePlus, PhoneSlash, PhoneTransfer, PhoneX, PhosphorLogo, Pi, PianoKeys, PicnicTable, PictureInPicture, PiggyBank, Pill, PingPong, PinterestLogo, PintGlass, Pinwheel, Pipe, PipeWrench, PixLogo, Pizza, Placeholder, Planet, Plant, Play, PlayCircle, Playlist, PlayPause, Plug, PlugCharging, Plugs, PlugsConnected, Plus, PlusCircle, PlusMinus, PlusSquare, PokerChip, PoliceCar, Polygon, Popcorn, Popsicle, PottedPlant, Power, Prescription, Presentation, PresentationChart, Printer, Prohibit, ProhibitInset, ProjectorScreen, ProjectorScreenChart, Pulse, PushPin, PushPinSimple, PushPinSimpleSlash, PushPinSlash, PuzzlePiece
|
|
72
|
+
|
|
73
|
+
### Q
|
|
74
|
+
QrCode, Question, QuestionMark, Queue, Quotes
|
|
75
|
+
|
|
76
|
+
### R
|
|
77
|
+
Rabbit, Racquet, Radical, Radio, Radioactive, RadioButton, Rainbow, RainbowCloud, Ranking, ReadCvLogo, Receipt, ReceiptX, Record, Rectangle, RectangleDashed, Recycle, RedditLogo, Repeat, RepeatOnce, ReplitLogo, Resize, Rewind, RewindCircle, RoadHorizon, Robot, Rocket, RocketLaunch, Rows, RowsPlusBottom, RowsPlusTop, Rss, RssSimple, Rug, Ruler
|
|
78
|
+
|
|
79
|
+
### S
|
|
80
|
+
Sailboat, Scales, Scan, ScanSmiley, Scissors, Scooter, Screencast, Screwdriver, Scribble, ScribbleLoop, Scroll, Seal, SealCheck, SealPercent, SealQuestion, SealWarning, Seat, Seatbelt, SecurityCamera, Selection, SelectionAll, SelectionBackground, SelectionForeground, SelectionInverse, SelectionPlus, SelectionSlash, Shapes, Share, ShareFat, ShareNetwork, Shield, ShieldCheck, ShieldCheckered, ShieldChevron, ShieldPlus, ShieldSlash, ShieldStar, ShieldWarning, ShippingContainer, ShirtFolded, ShootingStar, ShoppingBag, ShoppingBagOpen, ShoppingCart, ShoppingCartSimple, Shovel, Shower, Shrimp, Shuffle, ShuffleAngular, ShuffleSimple, Sidebar, SidebarSimple, Sigma, Signature, SignIn, SignOut, Signpost, SimCard, Siren, SketchLogo, SkipBack, SkipBackCircle, SkipForward, SkipForwardCircle, Skull, SkypeLogo, SlackLogo, Sliders, SlidersHorizontal, Slideshow, Smiley, SmileyAngry, SmileyBlank, SmileyMeh, SmileyMelting, SmileyNervous, SmileySad, SmileySticker, SmileyWink, SmileyXEyes, SnapchatLogo, Sneaker, SneakerMove, Snowflake, SoccerBall, Sock, SolarPanel, SolarRoof, SortAscending, SortDescending, SoundcloudLogo, Spade, Sparkle, SpeakerHifi, SpeakerHigh, SpeakerLow, SpeakerNone, SpeakerSimpleHigh, SpeakerSimpleLow, SpeakerSimpleNone, SpeakerSimpleSlash, SpeakerSimpleX, SpeakerSlash, SpeakerX, Speedometer, Sphere, Spinner, SpinnerBall, SpinnerGap, Spiral, SplitHorizontal, SplitVertical, SpotifyLogo, SprayBottle, Square, SquareHalf, SquareHalfBottom, SquareLogo, SquaresFour, SquareSplitHorizontal, SquareSplitVertical, Stack, StackMinus, StackOverflowLogo, StackPlus, StackSimple, Stairs, Stamp, StandardDefinition, Star, StarAndCrescent, StarFour, StarHalf, StarOfDavid, SteamLogo, SteeringWheel, Steps, Stethoscope, Sticker, Stool, Stop, StopCircle, Storefront, Strategy, StripeLogo, Student, SubsetOf, SubsetProperOf, Subtitles, SubtitlesSlash, Subtract, SubtractSquare, Subway, Suitcase, SuitcaseRolling, SuitcaseSimple, Sun, SunDim, Sunglasses, SunHorizon, SupersetOf, SupersetProperOf, Swap, Swatches, SwimmingPool, Sword, Synagogue, Syringe
|
|
81
|
+
|
|
82
|
+
### T
|
|
83
|
+
Table, Tabs, Tag, TagChevron, TagSimple, Target, Taxi, TeaBag, TelegramLogo, Television, TelevisionSimple, TennisBall, Tent, Terminal, TerminalWindow, TestTube, TextAa, TextAlignCenter, TextAlignJustify, TextAlignLeft, TextAlignRight, TextAUnderline, TextB, Textbox, TextColumns, TextH, TextHFive, TextHFour, TextHOne, TextHSix, TextHThree, TextHTwo, TextIndent, TextItalic, TextOutdent, TextStrikethrough, TextSubscript, TextSuperscript, TextT, TextTSlash, TextUnderline, Thermometer, ThermometerCold, ThermometerHot, ThermometerSimple, ThreadsLogo, ThreeD, ThumbsDown, ThumbsUp, Ticket, TidalLogo, TiktokLogo, Tilde, Timer, Tipi, TipJar, Tire, ToggleLeft, ToggleRight, Toilet, ToiletPaper, Toolbox, Tooth, Tornado, Tote, ToteSimple, Towel, Tractor, Trademark, TrademarkRegistered, TrafficCone, TrafficSign, TrafficSignal, Train, TrainRegional, TrainSimple, Tram, Translate, Trash, TrashSimple, Tray, TrayArrowDown, TrayArrowUp, TreasureChest, Tree, TreeEvergreen, TreePalm, TreeStructure, TreeView, TrendDown, TrendUp, Triangle, TriangleDashed, Trolley, TrolleySuitcase, Trophy, Truck, TruckTrailer, TShirt, TumblrLogo, TwitchLogo, TwitterLogo
|
|
84
|
+
|
|
85
|
+
### U
|
|
86
|
+
Umbrella, UmbrellaSimple, Union, Unite, UniteSquare, Upload, UploadSimple, Usb, User, UserCheck, UserCircle, UserCircleCheck, UserCircleDashed, UserCircleGear, UserCircleMinus, UserCirclePlus, UserFocus, UserGear, UserList, UserMinus, UserPlus, UserRectangle, Users, UsersFour, UserSound, UserSquare, UsersThree, UserSwitch
|
|
87
|
+
|
|
88
|
+
### V
|
|
89
|
+
Van, Vault, VectorThree, VectorTwo, Vibrate, Video, VideoCamera, VideoCameraSlash, VideoConference, Vignette, VinylRecord, VirtualReality, Virus, Visor, Voicemail, Volleyball
|
|
90
|
+
|
|
91
|
+
### W
|
|
92
|
+
Wall, Wallet, Warehouse, Warning, WarningCircle, WarningDiamond, WarningOctagon, WashingMachine, Watch, Waveform, WaveformSlash, Waves, WaveSawtooth, WaveSine, WaveSquare, WaveTriangle, Webcam, WebcamSlash, WebhooksLogo, WechatLogo, WhatsappLogo, Wheelchair, WheelchairMotion, WifiHigh, WifiLow, WifiMedium, WifiNone, WifiSlash, WifiX, Wind, Windmill, WindowsLogo, Wine, Wrench
|
|
93
|
+
|
|
94
|
+
### X
|
|
95
|
+
X, XCircle, XLogo, XSquare
|
|
96
|
+
|
|
97
|
+
### Y
|
|
98
|
+
Yarn, YinYang, YoutubeLogo
|
|
99
|
+
`;
|
|
100
|
+
//# sourceMappingURL=icons.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons.js","sourceRoot":"","sources":["../../src/data/icons.ts"],"names":[],"mappings":"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"}
|
package/dist/data/rules.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const CODING_STANDARDS = "# AstralKit Coding Standards\n\n## Setup\n- Package: `astralkit` (npm)\n- CSS: `@import \"astralkit/theme\"; @import \"astralkit/utilities\";` (after Tailwind imports)\n- Tailwind v3 plugin: `require('astralkit/tailwind.cjs')` in tailwind.config\n- Tailwind v4: `@import \"astralkit/theme-v4\"; @import \"astralkit/utilities\";`\n- Icons: `@phosphor-icons/react` exclusively. Never Lucide, Heroicons, or inline SVGs.\n- Fonts: Inter (body), DM Serif Display (display), JetBrains Mono (code)\n\n## Token-First Rule\nALWAYS use `ak-*` tokens. NEVER use arbitrary bracket values.\n```tsx\n// CORRECT\n<div className=\"p-ak-3 gap-ak-2 text-ak-base rounded-ak-lg\">\n// WRONG \u2014 arbitrary values silently collapse in Tailwind v4\n<div className=\"p-[1.5rem] gap-[1rem] text-[16px] rounded-[0.75rem]\">\n```\n\n## Semantic Colors \u2014 No Raw Tailwind\n```tsx\n// CORRECT: bg-ak-surface, text-ak-text, border-ak-border, bg-ak-primary\n// WRONG: bg-gray-50, text-gray-900, border-gray-200, bg-blue-600\n```\n\n## Typography \u2014 16px Floor\n- Body text, descriptions, nav items, table cells: `text-ak-base` (16px) minimum\n- UI text: `font-medium` minimum \u2014 `font-normal` is for long-form prose only\n- Labels/badges: `text-ak-sm` (14px) or `text-ak-xs` (12px uppercase) acceptable\n- Helper/error text: `text-ak-sm` (14px) is the only exception\n\n## Spacing \u2014 ak-* Tokens Only\n```tsx\n// CORRECT: p-ak-3, gap-ak-2, mb-ak-1_5\n// WRONG: p-6, gap-4, mb-3\n```\n\n## Icons \u2014 Phosphor Only\n```tsx\nimport { House, Gear } from '@phosphor-icons/react'\n<House size={20} aria-hidden=\"true\" />\n```\n\n## No Inline Styles\nUse Tailwind classes. `style={{}}` only for CSS variables with no Tailwind equivalent.\n\n## No Shadows on Panels/Dropdowns \u2014 Borders Only\nUse `border border-ak-border`. Reserve shadows for modals and elevated cards.\n\n##
|
|
1
|
+
export declare const CODING_STANDARDS = "# AstralKit Coding Standards\n\n## Setup\n- Package: `astralkit` (npm)\n- CSS: `@import \"astralkit/theme\"; @import \"astralkit/utilities\";` (after Tailwind imports)\n- Tailwind v3 plugin: `require('astralkit/tailwind.cjs')` in tailwind.config\n- Tailwind v4: `@import \"astralkit/theme-v4\"; @import \"astralkit/utilities\";`\n- Icons: `@phosphor-icons/react` exclusively. Never Lucide, Heroicons, or inline SVGs.\n- Fonts: Inter (body), DM Serif Display (display), JetBrains Mono (code)\n\n## Token-First Rule\nALWAYS use `ak-*` tokens. NEVER use arbitrary bracket values.\n```tsx\n// CORRECT\n<div className=\"p-ak-3 gap-ak-2 text-ak-base rounded-ak-lg\">\n// WRONG \u2014 arbitrary values silently collapse in Tailwind v4\n<div className=\"p-[1.5rem] gap-[1rem] text-[16px] rounded-[0.75rem]\">\n```\n\n## Semantic Colors \u2014 No Raw Tailwind\n```tsx\n// CORRECT: bg-ak-surface, text-ak-text, border-ak-border, bg-ak-primary\n// WRONG: bg-gray-50, text-gray-900, border-gray-200, bg-blue-600\n```\n\n## Typography \u2014 16px Floor\n- Body text, descriptions, nav items, table cells: `text-ak-base` (16px) minimum\n- UI text: `font-medium` minimum \u2014 `font-normal` is for long-form prose only\n- Labels/badges: `text-ak-sm` (14px) or `text-ak-xs` (12px uppercase) acceptable\n- Helper/error text: `text-ak-sm` (14px) is the only exception\n\n## Spacing \u2014 ak-* Tokens Only\n```tsx\n// CORRECT: p-ak-3, gap-ak-2, mb-ak-1_5\n// WRONG: p-6, gap-4, mb-3\n```\n\n## Icons \u2014 Phosphor Only\n```tsx\nimport { House, Gear } from '@phosphor-icons/react'\n<House size={20} aria-hidden=\"true\" />\n```\n\n## No Inline Styles\nUse Tailwind classes. `style={{}}` only for CSS variables with no Tailwind equivalent.\n\n## No Shadows on Panels/Dropdowns \u2014 Borders Only\nUse `border border-ak-border`. Reserve shadows for modals and elevated cards.\n\n## Motion \u2014 Framer Motion + CSS + Lenis (GSAP not allowed)\nFramer Motion (the MIT `motion` package) IS allowed. Prefer the AstralKit presets from\n`astralkit/motion` (tuned to the motion tokens, reduced-motion-safe). CSS animations are\nalso fine (durations/easings via `duration-ak-*`, `ease-ak-spring`/`bounce`). Use Lenis for\nsmooth scroll. ALWAYS honor `prefers-reduced-motion`. **GSAP is NOT allowed** (license).\n```tsx\nimport { motion, useReducedMotion } from 'motion/react'\nimport { fadeInUp, withReducedMotion } from 'astralkit/motion'\nconst reduced = useReducedMotion()\n<motion.div initial=\"hidden\" animate=\"show\" variants={withReducedMotion(fadeInUp, reduced)} />\n```\n\n## Premium Polish \u2014 Use the Effect Toolkit (with taste)\nAstralKit ships CSS-only premium effects \u2014 reach for them so screens feel designed, not generic:\n- Depth/glow: `ak-card-glow`, `ak-ambient-glow`, `ak-spotlight-card`, `ak-gradient-border`, `ak-text-glow`, `ak-surface-raised`\n- Backgrounds: `ak-mesh-light` / `ak-mesh-dark` / `ak-mesh-astral` (mesh gradients)\n- Motion accents (CSS): `ak-float`, `ak-scroll-fade`, `ak-section-fade`, `ak-sheen`, `ak-press` (tap feedback)\n- Color: tasteful accent (60-30-10); colorful charts use `ak-chart-1`..`ak-chart-6`; curated palettes via `astralkit/palettes`\n- Icons: Phosphor `weight=\"duotone\"` reads richer for feature/marketing icons\n\n### Effect guardrails (use the RIGHT effect on the RIGHT surface)\n- **Glows need dark surfaces.** `ak-text-glow`, `ak-ambient-glow`, and `ak-card-glow` read correctly as LIGHT-on-DARK. On a light background with dark text they look like a muddy smudge \u2014 **do NOT put text-glow on dark text / light backgrounds.**\n- **For dramatic/marketing heroes, go dark.** Add the `dark` class to the section root + `ak-mesh-dark` (tokens auto-flip to dark), light text, and a gradient accent word. This reads more premium than a light hero.\n- **Gradient text accent** (instead of glow): `<span className=\"bg-gradient-to-r from-ak-primary to-ak-info bg-clip-text text-transparent\">word</span>`.\n- Don't stack many effects on one element; one accent treatment per focal point.\n\n## Charts \u2014 readable AND rendered (recipe)\nUse the colorful `ak-chart-*` tokens with solid fills (not faint `ak-primary` tints). **Percentage bar heights only resolve if the container has a DEFINITE height** \u2014 a common bug is `min-height` + `items-end`, which collapses the bars to zero. Use this pattern:\n```tsx\n{/* DEFINITE height (h-56) + stretched columns so %-height bars resolve */}\n<div className=\"flex h-56 items-stretch gap-ak-1\">\n {data.map((v, i) => (\n <div key={i} className=\"group flex flex-1 flex-col justify-end gap-ak-1\">\n <div\n className={(i === data.length - 1 ? 'bg-ak-primary' : 'bg-ak-chart-1') + ' w-full rounded-ak-md'}\n style={{ height: `${Math.round((v / max) * 100)}%` }} /* sanctioned data-driven inline style */\n role=\"img\" aria-label={`${labels[i]}: ${v}`}\n />\n <span className=\"text-ak-xs text-ak-text-muted\">{labels[i]}</span>\n </div>\n ))}\n</div>\n```\n\n## Touch Targets \u2014 48px Minimum\n- Buttons: `min-h-[3rem]` + `cursor-pointer`\n- Form inputs: `h-14` (56px)\n\n## Empty States \u2014 Every Data Container\nEvery list, table, or feed must handle: Loading \u2192 Error \u2192 Empty \u2192 Data.\nEmpty states need: icon, title, description, CTA.\n\n## Error Handling \u2014 Never Show Raw Errors\nUser-facing errors need: title (jargon-free), description, action (Retry/Go Back).\n\n## cn() Utility\n```tsx\nimport { cn } from '@/lib/utils'\n<div className={cn(\"p-ak-3\", isActive && \"bg-ak-primary\")}>\n```\n";
|
|
2
2
|
//# sourceMappingURL=rules.d.ts.map
|
package/dist/data/rules.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/data/rules.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/data/rules.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,w8KA6G5B,CAAC"}
|
package/dist/data/rules.js
CHANGED
|
@@ -47,8 +47,49 @@ Use Tailwind classes. \`style={{}}\` only for CSS variables with no Tailwind equ
|
|
|
47
47
|
## No Shadows on Panels/Dropdowns — Borders Only
|
|
48
48
|
Use \`border border-ak-border\`. Reserve shadows for modals and elevated cards.
|
|
49
49
|
|
|
50
|
-
##
|
|
51
|
-
|
|
50
|
+
## Motion — Framer Motion + CSS + Lenis (GSAP not allowed)
|
|
51
|
+
Framer Motion (the MIT \`motion\` package) IS allowed. Prefer the AstralKit presets from
|
|
52
|
+
\`astralkit/motion\` (tuned to the motion tokens, reduced-motion-safe). CSS animations are
|
|
53
|
+
also fine (durations/easings via \`duration-ak-*\`, \`ease-ak-spring\`/\`bounce\`). Use Lenis for
|
|
54
|
+
smooth scroll. ALWAYS honor \`prefers-reduced-motion\`. **GSAP is NOT allowed** (license).
|
|
55
|
+
\`\`\`tsx
|
|
56
|
+
import { motion, useReducedMotion } from 'motion/react'
|
|
57
|
+
import { fadeInUp, withReducedMotion } from 'astralkit/motion'
|
|
58
|
+
const reduced = useReducedMotion()
|
|
59
|
+
<motion.div initial="hidden" animate="show" variants={withReducedMotion(fadeInUp, reduced)} />
|
|
60
|
+
\`\`\`
|
|
61
|
+
|
|
62
|
+
## Premium Polish — Use the Effect Toolkit (with taste)
|
|
63
|
+
AstralKit ships CSS-only premium effects — reach for them so screens feel designed, not generic:
|
|
64
|
+
- Depth/glow: \`ak-card-glow\`, \`ak-ambient-glow\`, \`ak-spotlight-card\`, \`ak-gradient-border\`, \`ak-text-glow\`, \`ak-surface-raised\`
|
|
65
|
+
- Backgrounds: \`ak-mesh-light\` / \`ak-mesh-dark\` / \`ak-mesh-astral\` (mesh gradients)
|
|
66
|
+
- Motion accents (CSS): \`ak-float\`, \`ak-scroll-fade\`, \`ak-section-fade\`, \`ak-sheen\`, \`ak-press\` (tap feedback)
|
|
67
|
+
- Color: tasteful accent (60-30-10); colorful charts use \`ak-chart-1\`..\`ak-chart-6\`; curated palettes via \`astralkit/palettes\`
|
|
68
|
+
- Icons: Phosphor \`weight="duotone"\` reads richer for feature/marketing icons
|
|
69
|
+
|
|
70
|
+
### Effect guardrails (use the RIGHT effect on the RIGHT surface)
|
|
71
|
+
- **Glows need dark surfaces.** \`ak-text-glow\`, \`ak-ambient-glow\`, and \`ak-card-glow\` read correctly as LIGHT-on-DARK. On a light background with dark text they look like a muddy smudge — **do NOT put text-glow on dark text / light backgrounds.**
|
|
72
|
+
- **For dramatic/marketing heroes, go dark.** Add the \`dark\` class to the section root + \`ak-mesh-dark\` (tokens auto-flip to dark), light text, and a gradient accent word. This reads more premium than a light hero.
|
|
73
|
+
- **Gradient text accent** (instead of glow): \`<span className="bg-gradient-to-r from-ak-primary to-ak-info bg-clip-text text-transparent">word</span>\`.
|
|
74
|
+
- Don't stack many effects on one element; one accent treatment per focal point.
|
|
75
|
+
|
|
76
|
+
## Charts — readable AND rendered (recipe)
|
|
77
|
+
Use the colorful \`ak-chart-*\` tokens with solid fills (not faint \`ak-primary\` tints). **Percentage bar heights only resolve if the container has a DEFINITE height** — a common bug is \`min-height\` + \`items-end\`, which collapses the bars to zero. Use this pattern:
|
|
78
|
+
\`\`\`tsx
|
|
79
|
+
{/* DEFINITE height (h-56) + stretched columns so %-height bars resolve */}
|
|
80
|
+
<div className="flex h-56 items-stretch gap-ak-1">
|
|
81
|
+
{data.map((v, i) => (
|
|
82
|
+
<div key={i} className="group flex flex-1 flex-col justify-end gap-ak-1">
|
|
83
|
+
<div
|
|
84
|
+
className={(i === data.length - 1 ? 'bg-ak-primary' : 'bg-ak-chart-1') + ' w-full rounded-ak-md'}
|
|
85
|
+
style={{ height: \`\${Math.round((v / max) * 100)}%\` }} /* sanctioned data-driven inline style */
|
|
86
|
+
role="img" aria-label={\`\${labels[i]}: \${v}\`}
|
|
87
|
+
/>
|
|
88
|
+
<span className="text-ak-xs text-ak-text-muted">{labels[i]}</span>
|
|
89
|
+
</div>
|
|
90
|
+
))}
|
|
91
|
+
</div>
|
|
92
|
+
\`\`\`
|
|
52
93
|
|
|
53
94
|
## Touch Targets — 48px Minimum
|
|
54
95
|
- Buttons: \`min-h-[3rem]\` + \`cursor-pointer\`
|
package/dist/data/rules.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/data/rules.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG
|
|
1
|
+
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/data/rules.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6G/B,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const SETUP = "# AstralKit Setup \u2014 make components render correctly\n\nAstralKit components fail silently if the theme isn't imported or the font isn't *loaded*\n(declaring `font-ak-sans` is not enough \u2014 Inter must actually be loaded or it falls back to system-ui).\n\n## Tailwind v4 (recommended) \u2014 Next.js App Router\n**1. Install:** `npm i astralkit @phosphor-icons/react`\n\n**2. `app/globals.css`:**\n```css\n@import \"tailwindcss\";\n@import \"astralkit/theme-v4\";\n@import \"astralkit/utilities\";\n\n/* Wire the loaded Inter into the body-font token */\n:root { --font-ak-sans: var(--font-inter), system-ui, -apple-system, sans-serif; }\nbody { background: var(--color-ak-bg); color: var(--color-ak-text); font-family: var(--font-ak-sans); }\n```\n\n**3. `app/layout.tsx` \u2014 LOAD Inter (required):**\n```tsx\nimport { Inter } from \"next/font/google\";\nimport \"./globals.css\";\nconst inter = Inter({ subsets: [\"latin\"], weight: [\"400\",\"500\",\"600\",\"700\",\"800\"], variable: \"--font-inter\", display: \"swap\" });\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return <html lang=\"en\" className={inter.variable}><body className=\"min-h-screen bg-ak-bg text-ak-text\">{children}</body></html>;\n}\n```\n\n## Tailwind v3 \u2014 Next.js / Vite\n- CSS: `@tailwind base; @tailwind components; @tailwind utilities;` then `@import \"astralkit/theme\"; @import \"astralkit/utilities\";`\n- `tailwind.config.js`: `plugins: [require('astralkit/tailwind.cjs')]`\n- Load Inter the same way (next/font, or a `<link>` to Google Fonts), and set `--font-ak-sans: 'Inter', ...`.\n\n## Primitives & effects (included via astralkit/utilities)\n`astralkit/utilities` already bundles all primitives \u2014 layout (`ak-stack`, `ak-cluster`, `ak-grid`, `ak-switcher`),\neffects (`ak-card-glow`, `ak-mesh-light`/`-dark`, `ak-spotlight-card`, `ak-gradient-border`, `ak-text-glow`),\nanimations, forms, avatar, navigation, etc. No separate import needed \u2014 if you imported `astralkit/utilities`, they work.\n(Glows read best on dark surfaces \u2014 see coding standards.)\n\n## Fonts\n- Body: **Inter** (`font-ak-sans`) \u2014 must be loaded.\n- Display/serif: **DM Serif Display** (`font-ak-serif`).\n- Mono: **JetBrains Mono** (`font-ak-mono`).\n";
|
|
2
|
+
//# sourceMappingURL=setup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/data/setup.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,KAAK,wvEA4CjB,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// Canonical project setup AstralKit needs to render correctly.
|
|
2
|
+
// Surfaced via the get_setup tool + astralkit://setup resource so agents
|
|
3
|
+
// never miss the theme import or the font-load step ("declared != loaded").
|
|
4
|
+
export const SETUP = `# AstralKit Setup — make components render correctly
|
|
5
|
+
|
|
6
|
+
AstralKit components fail silently if the theme isn't imported or the font isn't *loaded*
|
|
7
|
+
(declaring \`font-ak-sans\` is not enough — Inter must actually be loaded or it falls back to system-ui).
|
|
8
|
+
|
|
9
|
+
## Tailwind v4 (recommended) — Next.js App Router
|
|
10
|
+
**1. Install:** \`npm i astralkit @phosphor-icons/react\`
|
|
11
|
+
|
|
12
|
+
**2. \`app/globals.css\`:**
|
|
13
|
+
\`\`\`css
|
|
14
|
+
@import "tailwindcss";
|
|
15
|
+
@import "astralkit/theme-v4";
|
|
16
|
+
@import "astralkit/utilities";
|
|
17
|
+
|
|
18
|
+
/* Wire the loaded Inter into the body-font token */
|
|
19
|
+
:root { --font-ak-sans: var(--font-inter), system-ui, -apple-system, sans-serif; }
|
|
20
|
+
body { background: var(--color-ak-bg); color: var(--color-ak-text); font-family: var(--font-ak-sans); }
|
|
21
|
+
\`\`\`
|
|
22
|
+
|
|
23
|
+
**3. \`app/layout.tsx\` — LOAD Inter (required):**
|
|
24
|
+
\`\`\`tsx
|
|
25
|
+
import { Inter } from "next/font/google";
|
|
26
|
+
import "./globals.css";
|
|
27
|
+
const inter = Inter({ subsets: ["latin"], weight: ["400","500","600","700","800"], variable: "--font-inter", display: "swap" });
|
|
28
|
+
export default function RootLayout({ children }: { children: React.ReactNode }) {
|
|
29
|
+
return <html lang="en" className={inter.variable}><body className="min-h-screen bg-ak-bg text-ak-text">{children}</body></html>;
|
|
30
|
+
}
|
|
31
|
+
\`\`\`
|
|
32
|
+
|
|
33
|
+
## Tailwind v3 — Next.js / Vite
|
|
34
|
+
- CSS: \`@tailwind base; @tailwind components; @tailwind utilities;\` then \`@import "astralkit/theme"; @import "astralkit/utilities";\`
|
|
35
|
+
- \`tailwind.config.js\`: \`plugins: [require('astralkit/tailwind.cjs')]\`
|
|
36
|
+
- Load Inter the same way (next/font, or a \`<link>\` to Google Fonts), and set \`--font-ak-sans: 'Inter', ...\`.
|
|
37
|
+
|
|
38
|
+
## Primitives & effects (included via astralkit/utilities)
|
|
39
|
+
\`astralkit/utilities\` already bundles all primitives — layout (\`ak-stack\`, \`ak-cluster\`, \`ak-grid\`, \`ak-switcher\`),
|
|
40
|
+
effects (\`ak-card-glow\`, \`ak-mesh-light\`/\`-dark\`, \`ak-spotlight-card\`, \`ak-gradient-border\`, \`ak-text-glow\`),
|
|
41
|
+
animations, forms, avatar, navigation, etc. No separate import needed — if you imported \`astralkit/utilities\`, they work.
|
|
42
|
+
(Glows read best on dark surfaces — see coding standards.)
|
|
43
|
+
|
|
44
|
+
## Fonts
|
|
45
|
+
- Body: **Inter** (\`font-ak-sans\`) — must be loaded.
|
|
46
|
+
- Display/serif: **DM Serif Display** (\`font-ak-serif\`).
|
|
47
|
+
- Mono: **JetBrains Mono** (\`font-ak-mono\`).
|
|
48
|
+
`;
|
|
49
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/data/setup.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,yEAAyE;AACzE,4EAA4E;AAE5E,MAAM,CAAC,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CpB,CAAC"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAm0BA,wBAAsB,WAAW,kBA2BhC"}
|
package/dist/server.js
CHANGED
|
@@ -5,7 +5,24 @@ import { configure, listComponents, getComponent, listBoosters, getBooster, ApiE
|
|
|
5
5
|
import { validatePremiumAccess, canAccessBoosters, AuthError } from './auth.js';
|
|
6
6
|
import { DESIGN_TOKENS } from './data/tokens.js';
|
|
7
7
|
import { CODING_STANDARDS } from './data/rules.js';
|
|
8
|
-
|
|
8
|
+
import { PHOSPHOR_ICONS, PHOSPHOR_ICON_NAMES } from './data/icons.js';
|
|
9
|
+
import { SETUP } from './data/setup.js';
|
|
10
|
+
const VERSION = '1.2.0';
|
|
11
|
+
// The golden path — surfaced as server `instructions` so even a naive agent
|
|
12
|
+
// (one that just gets "build X") self-guides to design-system-quality output.
|
|
13
|
+
const SERVER_INSTRUCTIONS = `AstralKit builds polished, accessible, on-brand UI with a design-token system.
|
|
14
|
+
|
|
15
|
+
GOLDEN PATH — follow this for ANY UI request ("build a …", "make a …", a page/section/component):
|
|
16
|
+
1. get_coding_standards — the mandatory rules. Read first.
|
|
17
|
+
2. get_design_tokens — use ONLY ak-* tokens. NEVER raw Tailwind colors (bg-gray-*), NEVER arbitrary values (p-[1rem]).
|
|
18
|
+
3. search_components — find candidate AstralKit components to use as a quality REFERENCE. The library ranges from minimal to bold showcase designs — favor the striking ones that fit.
|
|
19
|
+
4. get_preview — SEE a candidate's rendered design (returns an image) and pick the best-looking fit before committing.
|
|
20
|
+
5. get_component (mode:"recipe") — study the chosen reference and ADAPT it into a new screen; do not paste verbatim. PRESERVE its distinctive design (watermarks, display type, complex layout). The recipe lists the exact tokens, icons, font, dependencies, and setup it uses.
|
|
21
|
+
6. get_icons — before using any Phosphor icon, confirm the name exists here. Never guess icon names.
|
|
22
|
+
7. get_setup — the exact CSS imports + font-load step so the screen actually renders (declaring a font is not loading it).
|
|
23
|
+
8. validate_code — run on your final code and fix every diff it returns.
|
|
24
|
+
|
|
25
|
+
Hard rules: 16px body floor (text-ak-base), 48px touch targets (min-h-ak-control-lg), Phosphor icons only, semantic color tokens, focus-visible states. Prefer the resources astralkit://tokens, ://rules, ://icons, ://setup if your client supports them (load once).`;
|
|
9
26
|
// ─── Security: Input validation ───────────────────────────────────────────────
|
|
10
27
|
const MAX_QUERY_LENGTH = 200;
|
|
11
28
|
const MAX_SLUG_LENGTH = 100;
|
|
@@ -67,13 +84,49 @@ function jsonResult(data) {
|
|
|
67
84
|
function errorResult(message) {
|
|
68
85
|
return { content: [{ type: 'text', text: message }], isError: true };
|
|
69
86
|
}
|
|
87
|
+
function imageResult(base64, mimeType) {
|
|
88
|
+
return { content: [{ type: 'image', data: base64, mimeType }] };
|
|
89
|
+
}
|
|
90
|
+
// ─── Recipe extraction (makes get_component build-ready / self-describing) ─────
|
|
91
|
+
const VALID_ICONS = new Set(PHOSPHOR_ICON_NAMES);
|
|
92
|
+
/** Strip block, line, and JSX comments to shrink the recipe payload. */
|
|
93
|
+
function stripComments(code) {
|
|
94
|
+
return code
|
|
95
|
+
.replace(/\{\/\*[\s\S]*?\*\/\}/g, '') // {/* jsx */}
|
|
96
|
+
.replace(/\/\*[\s\S]*?\*\//g, '') // /* block */
|
|
97
|
+
.replace(/(^|[^:])\/\/.*$/gm, '$1') // // line (avoid http://)
|
|
98
|
+
.replace(/\n{3,}/g, '\n\n')
|
|
99
|
+
.trim();
|
|
100
|
+
}
|
|
101
|
+
/** Every ak-* token/utility referenced in the code (for tokensUsed). */
|
|
102
|
+
function extractAkTokens(code) {
|
|
103
|
+
return [...new Set([...code.matchAll(/\bak-[a-z0-9_-]+/g)].map(m => m[0]))]
|
|
104
|
+
.filter(t => t !== 'ak-density')
|
|
105
|
+
.sort();
|
|
106
|
+
}
|
|
107
|
+
/** Phosphor icon component names imported in the code, split into valid/invalid. */
|
|
108
|
+
function extractPhosphorIcons(code) {
|
|
109
|
+
const used = new Set();
|
|
110
|
+
for (const m of code.matchAll(/import\s*\{([^}]*)\}\s*from\s*['"]@phosphor-icons\/react[^'"]*['"]/g)) {
|
|
111
|
+
for (let name of m[1].split(',')) {
|
|
112
|
+
name = name.trim().replace(/^type\s+/, '').split(/\s+as\s+/)[0].trim();
|
|
113
|
+
if (name)
|
|
114
|
+
used.add(name);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
const list = [...used];
|
|
118
|
+
return { used: list, invalid: list.filter(n => !VALID_ICONS.has(n)) };
|
|
119
|
+
}
|
|
70
120
|
function createServer(auth, guard, apiKey) {
|
|
71
|
-
const server = new McpServer({ name: 'astralkit', version: VERSION }, { capabilities: { tools: {}, resources: {}, prompts: {} } });
|
|
121
|
+
const server = new McpServer({ name: 'astralkit', version: VERSION }, { capabilities: { tools: {}, resources: {}, prompts: {} }, instructions: SERVER_INSTRUCTIONS });
|
|
72
122
|
// ─── Tools ───────────────────────────────────────────────────────────
|
|
73
123
|
server.registerTool('search_components', {
|
|
74
124
|
title: 'Search Components',
|
|
75
|
-
description: '
|
|
76
|
-
'
|
|
125
|
+
description: 'START HERE when building any UI with AstralKit. Search components by name, description, or category ' +
|
|
126
|
+
'to find a quality REFERENCE, then call get_component (recipe) to adapt it. ' +
|
|
127
|
+
'Read the descriptions: the library ranges from minimal to BOLD showcase designs (watermarks, oversized display type, complex/asymmetric layouts) — prefer the most striking option that fits the brand, not just the most literal keyword match. ' +
|
|
128
|
+
'Each result includes a previewImage URL; call get_preview(slug) to SEE a candidate and pick the best-looking fit before adapting. ' +
|
|
129
|
+
'Returns matching components with metadata. (Golden path: get_coding_standards → get_design_tokens → search_components → get_preview → get_component → get_icons → get_setup → validate_code.)',
|
|
77
130
|
inputSchema: {
|
|
78
131
|
query: z.string().max(MAX_QUERY_LENGTH).describe('Search query (component name, description, or keyword)'),
|
|
79
132
|
category: z.string().max(MAX_SLUG_LENGTH).optional().describe('Filter by category slug'),
|
|
@@ -97,6 +150,7 @@ function createServer(auth, guard, apiKey) {
|
|
|
97
150
|
category: c.category,
|
|
98
151
|
is_pro: c.is_pro,
|
|
99
152
|
frameworks: c.supported_frameworks,
|
|
153
|
+
previewImage: c.previewImage,
|
|
100
154
|
})),
|
|
101
155
|
});
|
|
102
156
|
}
|
|
@@ -134,6 +188,7 @@ function createServer(auth, guard, apiKey) {
|
|
|
134
188
|
category: c.category,
|
|
135
189
|
is_pro: c.is_pro,
|
|
136
190
|
frameworks: c.supported_frameworks,
|
|
191
|
+
previewImage: c.previewImage,
|
|
137
192
|
})),
|
|
138
193
|
});
|
|
139
194
|
}
|
|
@@ -174,27 +229,59 @@ function createServer(auth, guard, apiKey) {
|
|
|
174
229
|
});
|
|
175
230
|
server.registerTool('get_component', {
|
|
176
231
|
title: 'Get Component',
|
|
177
|
-
description: 'Get
|
|
178
|
-
'
|
|
232
|
+
description: 'Get a build-ready AstralKit component to ADAPT into a new screen (do not paste verbatim). ' +
|
|
233
|
+
'Call search_components/list_components first to find the slug. ' +
|
|
234
|
+
'Default mode "recipe" returns a lean, self-describing payload: source (comments stripped) plus ' +
|
|
235
|
+
'the exact ak-* tokens, Phosphor icons, intended font, setup, and dependencies it uses — so you never guess. ' +
|
|
236
|
+
'Use mode "full" only when you need the raw source with comments intact.',
|
|
179
237
|
inputSchema: {
|
|
180
238
|
slug: z.string().max(MAX_SLUG_LENGTH).describe('Component slug (e.g. "button-sizes", "data-table", "sidebar-analytics")'),
|
|
181
239
|
framework: z.enum(['react', 'nextjs', 'html']).optional().default('react')
|
|
182
240
|
.describe('Framework variant (default: react)'),
|
|
241
|
+
mode: z.enum(['recipe', 'full']).optional().default('recipe')
|
|
242
|
+
.describe('"recipe" (default): lean, self-describing, build-ready. "full": raw source with comments.'),
|
|
183
243
|
},
|
|
184
|
-
}, async ({ slug, framework }) => {
|
|
244
|
+
}, async ({ slug, framework, mode }) => {
|
|
185
245
|
const slugErr = validateSlug(slug);
|
|
186
246
|
if (slugErr)
|
|
187
247
|
return errorResult(slugErr);
|
|
188
248
|
try {
|
|
189
249
|
await guard.check();
|
|
190
250
|
const result = await getComponent(slug, framework ?? 'react');
|
|
251
|
+
const fw = framework ?? 'react';
|
|
252
|
+
if ((mode ?? 'recipe') === 'full') {
|
|
253
|
+
return jsonResult({
|
|
254
|
+
name: result.name,
|
|
255
|
+
slug: result.slug,
|
|
256
|
+
framework: fw,
|
|
257
|
+
previewImage: result.previewImage,
|
|
258
|
+
files: result.files.map(f => ({ path: f.path, content: f.content })),
|
|
259
|
+
dependencies: result.dependencies,
|
|
260
|
+
install_command: `npx @astralkit/cli add ${result.slug}`,
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
|
+
// recipe mode — lean + self-describing
|
|
264
|
+
const allCode = result.files.map(f => f.content).join('\n');
|
|
265
|
+
const tokensUsed = extractAkTokens(allCode);
|
|
266
|
+
const icons = extractPhosphorIcons(allCode);
|
|
191
267
|
return jsonResult({
|
|
192
268
|
name: result.name,
|
|
193
269
|
slug: result.slug,
|
|
194
|
-
framework:
|
|
195
|
-
|
|
270
|
+
framework: fw,
|
|
271
|
+
previewImage: result.previewImage,
|
|
272
|
+
howToAdapt: 'Use this as a quality reference and PRESERVE its distinctive design — watermarks, oversized/display type, asymmetric or complex layout, and effects ARE the premium character you want. Rewrite the COPY/content to fit the request, but do NOT flatten it into a generic layout. The library ranges from minimal to bold showcase designs; lean into the striking ones. Build a NEW screen at the same level of polish — do not paste verbatim.',
|
|
273
|
+
intendedFont: 'Inter via font-ak-sans (load with next/font and wire to --font-ak-sans — see get_setup)',
|
|
274
|
+
tokensUsed,
|
|
275
|
+
iconsUsed: icons.used,
|
|
276
|
+
...(icons.invalid.length ? { iconsNeedingCheck: icons.invalid } : {}),
|
|
196
277
|
dependencies: result.dependencies,
|
|
278
|
+
setupHint: 'Call get_setup for the globals.css imports + font-load step. ALL primitives (layout/effects/animations incl. ak-stack, ak-watermark, ak-watermark-area, ak-mesh-*, ak-card-glow) are already bundled by astralkit/utilities — use them freely, no extra import needed. IGNORE any standalone styles.css in this payload (that is only for the no-build HTML variant); when astralkit is installed the theme + utilities provide everything.',
|
|
197
279
|
install_command: `npx @astralkit/cli add ${result.slug}`,
|
|
280
|
+
// Drop the standalone styles.css (raw :root vars for the no-build HTML variant) —
|
|
281
|
+
// it duplicates/contradicts the SDK theme+utilities and confuses adaptation.
|
|
282
|
+
files: result.files
|
|
283
|
+
.filter(f => !/(^|\/)styles\.css$/i.test(f.path))
|
|
284
|
+
.map(f => ({ path: f.path, content: stripComments(f.content) })),
|
|
198
285
|
});
|
|
199
286
|
}
|
|
200
287
|
catch (err) {
|
|
@@ -241,6 +328,135 @@ function createServer(auth, guard, apiKey) {
|
|
|
241
328
|
}
|
|
242
329
|
return textResult(CODING_STANDARDS);
|
|
243
330
|
});
|
|
331
|
+
server.registerTool('get_setup', {
|
|
332
|
+
title: 'Get Setup',
|
|
333
|
+
description: 'Get the exact project setup AstralKit needs to RENDER correctly: the CSS imports (theme + utilities), ' +
|
|
334
|
+
'the Inter font-load step (declaring a font is not loading it), Tailwind v3/v4 config, and the layout-primitive import. ' +
|
|
335
|
+
'Call this before writing a screen in a fresh project, or if styles/fonts look wrong.',
|
|
336
|
+
inputSchema: {},
|
|
337
|
+
}, async () => {
|
|
338
|
+
try {
|
|
339
|
+
await guard.check();
|
|
340
|
+
}
|
|
341
|
+
catch (err) {
|
|
342
|
+
if (err instanceof AuthError)
|
|
343
|
+
return errorResult(err.message);
|
|
344
|
+
throw err;
|
|
345
|
+
}
|
|
346
|
+
return textResult(SETUP);
|
|
347
|
+
});
|
|
348
|
+
server.registerTool('get_icons', {
|
|
349
|
+
title: 'Get Icons',
|
|
350
|
+
description: 'Get the COMPLETE list of valid Phosphor icon names (AstralKit uses Phosphor exclusively). ' +
|
|
351
|
+
'Call this before importing any icon so you never guess a name that does not exist (a wrong name fails the build). ' +
|
|
352
|
+
'Optionally filter by a keyword to narrow the list.',
|
|
353
|
+
inputSchema: {
|
|
354
|
+
filter: z.string().max(MAX_QUERY_LENGTH).optional()
|
|
355
|
+
.describe('Optional keyword to filter icon names (e.g. "arrow", "user", "chart")'),
|
|
356
|
+
},
|
|
357
|
+
}, async ({ filter }) => {
|
|
358
|
+
try {
|
|
359
|
+
await guard.check();
|
|
360
|
+
}
|
|
361
|
+
catch (err) {
|
|
362
|
+
if (err instanceof AuthError)
|
|
363
|
+
return errorResult(err.message);
|
|
364
|
+
throw err;
|
|
365
|
+
}
|
|
366
|
+
if (filter && filter.trim()) {
|
|
367
|
+
const q = filter.trim().toLowerCase();
|
|
368
|
+
const matches = PHOSPHOR_ICON_NAMES.filter(n => n.toLowerCase().includes(q));
|
|
369
|
+
return jsonResult({
|
|
370
|
+
filter,
|
|
371
|
+
count: matches.length,
|
|
372
|
+
usage: `import { ${matches[0] ?? 'House'} } from '@phosphor-icons/react' → <${matches[0] ?? 'House'} size={20} weight="regular" aria-hidden="true" />`,
|
|
373
|
+
icons: matches,
|
|
374
|
+
});
|
|
375
|
+
}
|
|
376
|
+
return textResult(PHOSPHOR_ICONS);
|
|
377
|
+
});
|
|
378
|
+
server.registerTool('search_logos', {
|
|
379
|
+
title: 'Search Logos',
|
|
380
|
+
description: 'Find real brand/company logos as ready-to-paste inline SVG (powered by svgl). ' +
|
|
381
|
+
'Use for trust strips, social sign-in buttons, integration grids — instead of guessing or hand-drawing an SVG. ' +
|
|
382
|
+
'Returns the SVG markup for each match. (Brand logos are the one place inline SVG is correct; UI icons must use Phosphor.)',
|
|
383
|
+
inputSchema: {
|
|
384
|
+
query: z.string().max(MAX_QUERY_LENGTH).describe('Company/brand name(s), e.g. "github", "stripe", "google"'),
|
|
385
|
+
limit: z.number().optional().default(4).describe('Max logos to return (default 4, max 12)'),
|
|
386
|
+
},
|
|
387
|
+
}, async ({ query, limit }) => {
|
|
388
|
+
try {
|
|
389
|
+
await guard.check();
|
|
390
|
+
}
|
|
391
|
+
catch (err) {
|
|
392
|
+
if (err instanceof AuthError)
|
|
393
|
+
return errorResult(err.message);
|
|
394
|
+
throw err;
|
|
395
|
+
}
|
|
396
|
+
const cap = Math.min(Math.max(limit ?? 4, 1), 12);
|
|
397
|
+
try {
|
|
398
|
+
const res = await fetch(`https://api.svgl.app?search=${encodeURIComponent(query)}`, {
|
|
399
|
+
signal: AbortSignal.timeout(10_000),
|
|
400
|
+
headers: { 'User-Agent': 'astralkit-mcp' },
|
|
401
|
+
});
|
|
402
|
+
if (!res.ok)
|
|
403
|
+
return jsonResult({ query, count: 0, logos: [], note: `svgl returned ${res.status}.` });
|
|
404
|
+
const data = (await res.json());
|
|
405
|
+
const picks = data.slice(0, cap);
|
|
406
|
+
const logos = await Promise.all(picks.map(async (item) => {
|
|
407
|
+
const url = typeof item.route === 'string' ? item.route : item.route.light;
|
|
408
|
+
let svg = '';
|
|
409
|
+
try {
|
|
410
|
+
const r = await fetch(url, { signal: AbortSignal.timeout(8_000), headers: { 'User-Agent': 'astralkit-mcp' } });
|
|
411
|
+
if (r.ok)
|
|
412
|
+
svg = (await r.text()).trim();
|
|
413
|
+
}
|
|
414
|
+
catch { /* leave svg empty; url still returned */ }
|
|
415
|
+
return { title: item.title, category: item.category, svgUrl: url, svg };
|
|
416
|
+
}));
|
|
417
|
+
return jsonResult({
|
|
418
|
+
query,
|
|
419
|
+
count: logos.length,
|
|
420
|
+
usage: 'Paste the svg markup into a small BrandLogo component; size via width/height or a wrapping size-ak-* element. For two-tone variants svgl also has a dark route.',
|
|
421
|
+
logos,
|
|
422
|
+
});
|
|
423
|
+
}
|
|
424
|
+
catch (err) {
|
|
425
|
+
return jsonResult({ query, count: 0, logos: [], note: `Logo search failed: ${err instanceof Error ? err.message : 'unknown error'}.` });
|
|
426
|
+
}
|
|
427
|
+
});
|
|
428
|
+
server.registerTool('get_preview', {
|
|
429
|
+
title: 'Get Preview Image',
|
|
430
|
+
description: 'Get a rendered PREVIEW IMAGE of a component so you can SEE its design before building. ' +
|
|
431
|
+
'Use it to compare candidates from search_components and pick the most striking one that fits the brand — ' +
|
|
432
|
+
'then call get_component (recipe) to adapt the chosen one. Returns the image.',
|
|
433
|
+
inputSchema: {
|
|
434
|
+
slug: z.string().max(MAX_SLUG_LENGTH).describe('Component slug to preview'),
|
|
435
|
+
},
|
|
436
|
+
}, async ({ slug }) => {
|
|
437
|
+
const slugErr = validateSlug(slug);
|
|
438
|
+
if (slugErr)
|
|
439
|
+
return errorResult(slugErr);
|
|
440
|
+
try {
|
|
441
|
+
await guard.check();
|
|
442
|
+
// Resolve the preview URL via the (non-Pro-gated) list endpoint, so previews
|
|
443
|
+
// work for premium components too and the R2 base stays server-side.
|
|
444
|
+
const list = await listComponents({ search: slug, limit: 10 });
|
|
445
|
+
const url = list.components.find(c => c.slug === slug)?.previewImage;
|
|
446
|
+
if (!url)
|
|
447
|
+
return errorResult(`No preview available for "${slug}". Use search_components to find a valid slug.`);
|
|
448
|
+
const res = await fetch(url, { signal: AbortSignal.timeout(12_000) });
|
|
449
|
+
if (!res.ok)
|
|
450
|
+
return errorResult(`No preview available for "${slug}" (image returned ${res.status}).`);
|
|
451
|
+
const buf = Buffer.from(await res.arrayBuffer());
|
|
452
|
+
return imageResult(buf.toString('base64'), res.headers.get('content-type') || 'image/jpeg');
|
|
453
|
+
}
|
|
454
|
+
catch (err) {
|
|
455
|
+
if (err instanceof AuthError)
|
|
456
|
+
return errorResult(err.message);
|
|
457
|
+
return errorResult(`Failed to get preview: ${err instanceof Error ? redactApiKey(err.message, apiKey) : 'Unknown error'}`);
|
|
458
|
+
}
|
|
459
|
+
});
|
|
244
460
|
server.registerTool('install_component', {
|
|
245
461
|
title: 'Install Component',
|
|
246
462
|
description: 'Get the CLI command to install an AstralKit component into the user\'s project. ' +
|
|
@@ -288,47 +504,92 @@ function createServer(auth, guard, apiKey) {
|
|
|
288
504
|
return errorResult(err.message);
|
|
289
505
|
throw err;
|
|
290
506
|
}
|
|
507
|
+
// Each issue carries an actionable fix (a "diff" the agent can apply directly).
|
|
291
508
|
const issues = [];
|
|
292
|
-
const rawTailwindColors = code.match(/\b(bg|text|border)-(gray|slate|zinc|neutral|stone|red|orange|amber|yellow|lime|green|emerald|teal|cyan|sky|blue|indigo|violet|purple|fuchsia|pink|rose)-\d{2,3}\b/g);
|
|
509
|
+
const rawTailwindColors = code.match(/\b(bg|text|border|ring|fill|stroke|from|to|via|divide|outline)-(gray|slate|zinc|neutral|stone|red|orange|amber|yellow|lime|green|emerald|teal|cyan|sky|blue|indigo|violet|purple|fuchsia|pink|rose)-\d{2,3}\b/g);
|
|
293
510
|
if (rawTailwindColors) {
|
|
294
|
-
issues.push(
|
|
295
|
-
'
|
|
511
|
+
issues.push({
|
|
512
|
+
rule: 'raw-tailwind-color',
|
|
513
|
+
detail: `Raw Tailwind colors: ${[...new Set(rawTailwindColors)].slice(0, 8).join(', ')}.`,
|
|
514
|
+
fix: 'Replace with semantic AstralKit tokens: bg-ak-surface, text-ak-text, text-ak-text-secondary, border-ak-border, bg-ak-primary, text-ak-on-primary, status: ak-success/warning/danger/info(+ -subtle/-text).',
|
|
515
|
+
});
|
|
296
516
|
}
|
|
297
517
|
const arbitraryValues = code.match(/\b(p|px|py|pt|pb|pl|pr|m|mx|my|mt|mb|ml|mr|gap|space-[xy]|w|h|text|rounded|leading)-\[[^\]]+\]/g);
|
|
298
518
|
if (arbitraryValues) {
|
|
299
519
|
const nonExempt = arbitraryValues.filter(v => !v.startsWith('min-h-[3rem]') && !v.startsWith('h-14'));
|
|
300
520
|
if (nonExempt.length > 0) {
|
|
301
|
-
issues.push(
|
|
302
|
-
'
|
|
521
|
+
issues.push({
|
|
522
|
+
rule: 'arbitrary-value',
|
|
523
|
+
detail: `Arbitrary bracket values: ${[...new Set(nonExempt)].slice(0, 8).join(', ')}.`,
|
|
524
|
+
fix: 'Use ak-* tokens (they have fluid clamp() built in): p-ak-3, gap-ak-2, rounded-ak-lg, text-ak-base, max-w-ak-page. Call get_design_tokens for the full list.',
|
|
525
|
+
});
|
|
303
526
|
}
|
|
304
527
|
}
|
|
305
528
|
const rawSpacing = code.match(/\b(p|px|py|pt|pb|pl|pr|m|mx|my|mt|mb|ml|mr|gap|space-[xy])-(?!ak)\d+\b/g);
|
|
306
529
|
if (rawSpacing) {
|
|
307
|
-
issues.push(
|
|
308
|
-
'
|
|
530
|
+
issues.push({
|
|
531
|
+
rule: 'raw-spacing',
|
|
532
|
+
detail: `Raw Tailwind spacing: ${[...new Set(rawSpacing)].slice(0, 8).join(', ')}.`,
|
|
533
|
+
fix: 'Use ak-* spacing tokens: p-ak-3, gap-ak-2, mb-ak-1_5, py-ak-fl-lg.',
|
|
534
|
+
});
|
|
309
535
|
}
|
|
310
536
|
if (/style\s*=\s*\{\{/.test(code)) {
|
|
311
537
|
const styleBlocks = code.match(/style\s*=\s*\{\{[^}]*\}\}/g) || [];
|
|
312
538
|
const nonVarStyles = styleBlocks.filter(s => !s.includes('var(--'));
|
|
313
539
|
if (nonVarStyles.length > 0) {
|
|
314
|
-
issues.push(
|
|
540
|
+
issues.push({
|
|
541
|
+
rule: 'inline-style',
|
|
542
|
+
detail: 'Inline style={{}} found.',
|
|
543
|
+
fix: 'Use Tailwind/ak-* classes. Inline styles are only acceptable for data-driven CSS variables (e.g. dynamic chart bar heights).',
|
|
544
|
+
});
|
|
315
545
|
}
|
|
316
546
|
}
|
|
317
|
-
if (/from\s+['"]lucide-react['"]/.test(code) || /from\s+['"]@heroicons/.test(code)) {
|
|
318
|
-
issues.push(
|
|
547
|
+
if (/from\s+['"]lucide-react['"]/.test(code) || /from\s+['"]@heroicons/.test(code) || /from\s+['"]react-icons/.test(code)) {
|
|
548
|
+
issues.push({
|
|
549
|
+
rule: 'non-phosphor-icons',
|
|
550
|
+
detail: 'Non-Phosphor icon library imported (lucide/heroicons/react-icons).',
|
|
551
|
+
fix: 'AstralKit uses @phosphor-icons/react exclusively. Replace with Phosphor components; call get_icons to find names.',
|
|
552
|
+
});
|
|
553
|
+
}
|
|
554
|
+
// Phosphor icon names that don't exist (a wrong name fails the build).
|
|
555
|
+
const icons = extractPhosphorIcons(code);
|
|
556
|
+
if (icons.invalid.length > 0) {
|
|
557
|
+
issues.push({
|
|
558
|
+
rule: 'invalid-icon-name',
|
|
559
|
+
detail: `These Phosphor icons do not exist: ${icons.invalid.join(', ')}.`,
|
|
560
|
+
fix: 'Call get_icons (optionally with a keyword filter) and use an exact name from the manifest.',
|
|
561
|
+
});
|
|
319
562
|
}
|
|
563
|
+
// Inline SVG: allowed for brand logos (use search_logos), not for UI icons.
|
|
320
564
|
if (/<svg[\s>]/.test(code) && !/<svg[^>]*aria-hidden/.test(code)) {
|
|
321
|
-
issues.push(
|
|
565
|
+
issues.push({
|
|
566
|
+
rule: 'inline-svg',
|
|
567
|
+
detail: 'Inline <svg> without aria-hidden.',
|
|
568
|
+
fix: 'For UI icons use Phosphor (@phosphor-icons/react). For brand logos use search_logos and add aria-hidden="true" (or a title) to the markup.',
|
|
569
|
+
});
|
|
322
570
|
}
|
|
323
571
|
const hasButtons = /<button/.test(code) || /className="[^"]*btn/.test(code);
|
|
324
572
|
if (hasButtons && !code.includes('min-h-[3rem]') && !code.includes('min-h-ak-control')) {
|
|
325
|
-
issues.push(
|
|
573
|
+
issues.push({
|
|
574
|
+
rule: 'touch-target',
|
|
575
|
+
detail: 'Buttons without a 48px minimum touch target.',
|
|
576
|
+
fix: 'Add min-h-ak-control-lg (48px) to buttons; inputs use h-14 (56px).',
|
|
577
|
+
});
|
|
326
578
|
}
|
|
327
579
|
if (hasButtons && !code.includes('cursor-pointer')) {
|
|
328
|
-
issues.push(
|
|
580
|
+
issues.push({
|
|
581
|
+
rule: 'cursor-pointer',
|
|
582
|
+
detail: 'Buttons without cursor-pointer.',
|
|
583
|
+
fix: 'Add cursor-pointer to interactive buttons.',
|
|
584
|
+
});
|
|
329
585
|
}
|
|
330
|
-
|
|
331
|
-
|
|
586
|
+
// Framer Motion (MIT) is allowed. GSAP is not licensed for sold products/templates.
|
|
587
|
+
if (/from\s+['"]gsap['"]/.test(code) || /\bgsap\./.test(code)) {
|
|
588
|
+
issues.push({
|
|
589
|
+
rule: 'gsap',
|
|
590
|
+
detail: 'GSAP detected.',
|
|
591
|
+
fix: 'GSAP is not licensed for sold products/templates. Use Framer Motion (the MIT `motion` package) or CSS animations / the astralkit motion presets instead.',
|
|
592
|
+
});
|
|
332
593
|
}
|
|
333
594
|
return jsonResult({
|
|
334
595
|
valid: issues.length === 0,
|
|
@@ -336,7 +597,7 @@ function createServer(auth, guard, apiKey) {
|
|
|
336
597
|
issues,
|
|
337
598
|
summary: issues.length === 0
|
|
338
599
|
? 'Code follows AstralKit conventions.'
|
|
339
|
-
: `Found ${issues.length} issue${issues.length === 1 ? '' : 's'}
|
|
600
|
+
: `Found ${issues.length} issue${issues.length === 1 ? '' : 's'}. Apply each fix and re-run validate_code until clean.`,
|
|
340
601
|
});
|
|
341
602
|
});
|
|
342
603
|
// Boosters (Plus/Lifetime only)
|
|
@@ -408,6 +669,7 @@ function createServer(auth, guard, apiKey) {
|
|
|
408
669
|
category: c.category,
|
|
409
670
|
is_pro: c.is_pro,
|
|
410
671
|
frameworks: c.supported_frameworks,
|
|
672
|
+
previewImage: c.previewImage,
|
|
411
673
|
}));
|
|
412
674
|
return {
|
|
413
675
|
contents: [{
|
|
@@ -429,6 +691,18 @@ function createServer(auth, guard, apiKey) {
|
|
|
429
691
|
};
|
|
430
692
|
}
|
|
431
693
|
});
|
|
694
|
+
server.registerResource('AstralKit Icon Manifest', 'astralkit://icons', { description: 'Complete list of valid Phosphor icon names (AstralKit uses Phosphor exclusively) — never guess an icon name', mimeType: 'text/markdown' }, async () => {
|
|
695
|
+
await guard.check();
|
|
696
|
+
return {
|
|
697
|
+
contents: [{ uri: 'astralkit://icons', text: PHOSPHOR_ICONS, mimeType: 'text/markdown' }],
|
|
698
|
+
};
|
|
699
|
+
});
|
|
700
|
+
server.registerResource('AstralKit Setup', 'astralkit://setup', { description: 'Exact project setup — theme/utilities CSS imports, the Inter font-load step, Tailwind v3/v4 config, layout-primitive import', mimeType: 'text/markdown' }, async () => {
|
|
701
|
+
await guard.check();
|
|
702
|
+
return {
|
|
703
|
+
contents: [{ uri: 'astralkit://setup', text: SETUP, mimeType: 'text/markdown' }],
|
|
704
|
+
};
|
|
705
|
+
});
|
|
432
706
|
// ─── Prompts ─────────────────────────────────────────────────────────
|
|
433
707
|
server.registerPrompt('build-with-astralkit', {
|
|
434
708
|
title: 'Build with AstralKit',
|
|
@@ -448,11 +722,11 @@ function createServer(auth, guard, apiKey) {
|
|
|
448
722
|
`2. Use semantic color tokens (bg-ak-surface, text-ak-text, border-ak-border) — never raw Tailwind colors\n` +
|
|
449
723
|
`3. Use Phosphor Icons from @phosphor-icons/react — never Lucide, Heroicons, or inline SVGs\n` +
|
|
450
724
|
`4. Body text minimum: text-ak-base (16px). UI text: font-medium minimum\n` +
|
|
451
|
-
`5. All buttons: min-h-
|
|
452
|
-
`6. No inline styles
|
|
453
|
-
`7.
|
|
454
|
-
`
|
|
455
|
-
`
|
|
725
|
+
`5. All buttons: min-h-ak-control-lg + cursor-pointer. All inputs: h-14\n` +
|
|
726
|
+
`6. No inline styles (except data-driven CSS vars), no shadows on panels (borders only)\n` +
|
|
727
|
+
`7. Motion: Framer Motion (the MIT \`motion\` package) and CSS animations are allowed; honor prefers-reduced-motion. GSAP is NOT allowed (license). Lenis for smooth scroll.\n` +
|
|
728
|
+
`8. Use cn() utility for conditional classes\n\n` +
|
|
729
|
+
`Golden path: get_coding_standards → get_design_tokens → search_components → get_component (mode:recipe, adapt as a reference) → get_icons (confirm icon names) → get_setup (CSS + font load) → validate_code (fix every diff). Use search_logos for brand marks.`,
|
|
456
730
|
},
|
|
457
731
|
}],
|
|
458
732
|
}));
|
|
@@ -477,7 +751,7 @@ function createServer(auth, guard, apiKey) {
|
|
|
477
751
|
`5. Inline style={{}} attributes (only acceptable for CSS variables)\n` +
|
|
478
752
|
`6. Missing touch targets (buttons without min-h-[3rem], inputs without h-14)\n` +
|
|
479
753
|
`7. Missing cursor-pointer on buttons\n` +
|
|
480
|
-
`8.
|
|
754
|
+
`8. GSAP usage (not licensed for sold products — use Framer Motion or CSS animations)\n` +
|
|
481
755
|
`9. Shadows on panels/dropdowns (use borders instead)\n` +
|
|
482
756
|
`10. Typography below 16px floor for body text\n` +
|
|
483
757
|
`11. font-normal on UI text (should be font-medium minimum)\n\n` +
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|