Alexander b4d33beada
fix CLI asset sync (#355)
* fix CLI asset sync

* fix(cli): normalize line endings in asset sync/check

check:assets hashed raw bytes, so identical CSV/JSON/py content with
CRLF vs LF (git autocrlf on checkout) was reported as stale drift,
blocking the release guard on Windows/mixed checkouts.

- fileHash now normalizes CRLF->LF before hashing, so check:assets
  compares content, not line endings.
- sync:assets writes LF-normalized copies instead of a raw byte copy,
  so re-syncing is deterministic across platforms.

All synced assets are text (csv/json/md/py); no binaries affected.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* ci: enforce CLI asset sync on PRs

Adds a Check asset sync workflow that runs `npm run check:assets` on any
PR touching src/ui-ux-pro-max/** or cli/assets/**, so the bundled CLI
assets can't silently drift from the source of truth.

The check uses only node builtins (no install step) and normalizes
line endings before hashing, so it hard-fails on real content drift
without the CRLF/LF soft-fail hack other approaches needed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 12:54:58 +07:00

20 KiB
Raw Blame History

1NoCategoryIcon NameKeywordsLibraryImport CodeUsageBest ForStyle
2101Style Configbold-typography-icon-systembold typography, editorial, mono label, phosphor, weight regular, minimal, icon+label required, size 2032Phosphor (react-native)import { ArrowRight } from 'phosphor-react-native'<ArrowRight size={20} weight="regular" color={colors.accent} />Bold Typography Mobile style: weight="regular". Size 20px for UI controls, 32px for feature anchors. Icons MUST be paired with a Mono-stack text label (JetBrains Mono). Standalone icons only allowed for standard navigation (e.g., Back arrow). Accent color #FF3D00 only.Outline
3102Style Configcyberpunk-icon-systemcyberpunk, neon, glow, hud, phosphor, weight regular, accent glow, dark, angular, react nativePhosphor (react-native)import { Lightning } from 'phosphor-react-native'<Lightning size={24} weight="regular" color={colors.accent} />Cyberpunk Mobile HUD style: weight="regular", color={colors.accent} (#00FF88 Matrix Green). Wrap every icon in a View with shadowColor: colors.accent / shadowOpacity: 0.6 / shadowRadius: 8 to simulate neon glow. Use borderRadius: 0 on wrapper. Avoid rounded icon containers. Always pair icon with data label in JetBrains Mono.Outline
4103Style Configacademia-icon-systemacademia, library, brass, ornate, phosphor, weight thin, muted warm, scholarly, mobilePhosphor (react-native)import { BookOpen } from 'phosphor-react-native'<BookOpen size={22} weight="thin" color={colors.brass} />Academia (Scholarly Mobile) style: weight="thin" (thin engraved feel), color={colors.brass} (#C9A962). No sharp geometric or tech-inspired icons. Prefer book, scroll, key, quill-type icon metaphors. Wrap in circular View with 1px brass border. Avoid neon or saturated colored icons. All icon-only navigation must have an accessibilityLabel.Outline
5104Style Configweb3-bitcoin-icon-systemweb3, bitcoin, defi, crypto, neon orange, holographic, blurview, phosphor, glow, fintech mobilePhosphor (react-native)import { TrendUp } from 'phosphor-react-native'<TrendUp size={24} weight="regular" color={colors.bitcoinOrange} />Bitcoin DeFi Mobile style: weight="regular", color={colors.bitcoinOrange} (#F7931A). Wrap icons in circular BlurView (intensity: 20) with 1px borderColor: '#F7931A' border (Holographic Node effect). shadowColor: '#F7931A' / shadowOpacity: 0.4 / shadowRadius: 8. Prefer finance/data icons (TrendUp, Wallet, Shield, Layers). All data icons use JetBrains Mono label.Outline
6105Guidelineicon-fallback-rulesicon fallback, phosphor, heroicons, any icon, extended setPhosphor (primary) + Heroicons (fallback)Primary: import { IconName } from '@phosphor-icons/react'. Fallback: import { IconName } from '@heroicons/react/24/outline' or '@heroicons/react/24/solid'.当默认列表中没有合适图标时:优先继续从 Phosphor 中选择任何语义更贴切的图标(不必局限于本表列出的图标)。若 Phosphor 也无合适图标,可以改用 Heroicons并在 UI 代码中保持风格统一(线性或填充、圆角程度、笔画粗细等)。Icon library strategy and fallback rulesOutline