Changelog ([email protected])
リリースノート
このバージョンでは、LismCSSの本家仕様変更に合わせた内部アーキテクチャの刷新、および主要なユーティリティコンポーネントの追加が行われました。
deps
Lism CSS v0.12.0 → Lism CSS v0.16.0
🚀 主な変更点と新機能
1. 内部アーキテクチャのリネーム (STATES → TRAITS)
LismCSSの最新の命名規則に合わせ、内部アダプターでの「STATES」の扱いを「TRAITS」へとリネームしました。
2. 新しいコンポーネントの追加
レイアウトをより柔軟に構築するための3つの新しいコンポーネントが導入されました。
LismIcon:Phosphor Iconsや各社ロゴなどのプリセットアイコンを内蔵。
SVGパスの直接指定や画像、外部コンポーネントのラップにも対応。
labelプロパティによるアクセシビリティ(aria-label)の自動付与をサポート。
LismDivider:セマンティックな区切り線(
<hr>)を提供。Lismのボーダーシステムやスペーシングシステムと統合されています。
LismSpacer:レイアウト内での余白調整専用コンポーネント。
3. プロパティシステムの強化 (Atomic / Util)
atomic プロパティと util プロパティが LismBaseProps に正式に追加され、アダプターでの解析対象となりました。 これにより、Lism CSS の各設計レイヤーに基づいたスタイリングがより明示的に行えるようになります。
🩹 修正と改善
コアシステムの安定化:
PrimitiveClassの戻り値をclassとして正しく処理するように改善。ホバー効果に関連するバグを修正し、インタラクションの信頼性を向上。
DummyUIの修正:
LismUiDummyコンポーネントが一部の環境で壊れていた問題を解決。
💅 リファクタリングと破壊的変更
LismClass と variant プロパティの廃止
これまでの暫定的なプロパティであった lismClass と variant を完全に削除しました。 今後は、以下のプロパティを適切に使い分けることが推奨されます:
atomic: コンポーネントの役割(種類)の指定set, unset: 振る舞いや状態の指定util: 汎用的なユーティリティクラスの適用
コンポーネント名の統一
ライブラリ全体で命名規則の揺れを修正し、一貫性のある開発体験を提供します。
🌊 型定義の整理 (types.ts)
src/core/types.tsへの型定義の集約。AllowedTag型の適用範囲を拡大し、コンポーネントごとの適切なHTMLタグのサジェストを強化。仕様に沿っていない古い型定義やプロパティ(
tagなど)の削除。
✅ テスト
仕様変更に伴い、全テストケースを更新。
LinkBoxからBoxLinkへのリネーム対応。LismIcon,LismDivider,LismSpacerの新規テスト追加。
❤️ コントリビューター
Eita [email protected]