https://github.com/shoelace-style/webawesome
`<wa-select multiple>` でタグ表示時のパディングがブロック・インライン方向で不整合だった問題を修正しました。CSSのプライベートカスタムプロパティ `--_padding-with-tags` と `:has(.tags wa-tag)` セレクタを組み合わせることで、JavaScriptの状態クラス管理を排除しながらテーマ間で一貫したパディング制御を実現しています。
`wa-dropdown-item`コンポーネントで、`type="checkbox"`以外の通常メニューアイテムに誤って`aria-checked`属性が付与されていたバグを修正しました。`updated()`メソッド内の`checked`と`type`の両変更ハンドラに`type === 'checkbox'`の条件分岐を追加し、WAI-ARIAの仕様違反を解消しています。
`wa-input`の`withoutSpinButtons`プロパティに`reflect: true`を追加し、プロパティバインディング時にDOM属性が正しく同期されない問題を修正しました。同コンポーネント内の`required`プロパティと同等の挙動に揃えることで、フレームワーク統合時の一貫性が確保されます。
`wa-badge` コンポーネントのフォントサイズ指定を `--wa-font-size-2xs` から `--wa-font-size-3xs` に変更しました。PR #2154 でタイポグラフィスケールに `3xs`(10px)トークンが追加されたことを受け、バッジがより適切なトークンを参照するよう1行のスタイル修正を適用しています。
Web Awesome の全コンポーネント基底クラス `WebAwesomeElement` に `connectedCallback` が追加され、シャドウルートの先頭にドキュメントURLのコメントノードが自動挿入されるようになりました。DevTools でシャドウ DOM を調査する際に、対応するドキュメントページへのリンクが即座に確認できます。
Web Awesomeのフォントサイズスケールに `--wa-font-size-3xs`(10px)と `--wa-font-size-5xl`(66px)が追加されました。3テーマすべてのCSSに定義が追加され、`wa-body-*` など5プレフィックスのユーティリティクラスにも新サイズが対応しています。12px未満サイズに関するアクセシビリティ注意書きもドキュメントに追加されています。
`<wa-scroller>` のホスト要素(`:host`)に `overflow: hidden` が欠落していたことで、Chromeのみでページ全体に横スクロールが発生していました。1行のCSS追加により新しいブロック整形コンテキスト(BFC)が強制生成され、テーブル等の幅広いコンテンツを内包した際のオーバーフローがホスト要素の境界で確実に抑制されます。
`--wa-space-5xl`(5rem / 80px)デザイントークンと `.wa-gap-5xl` ユーティリティクラスが全テーマに追加されました。あわせて、`wa-gap-4xl` が `:where()` セレクターから漏れていたバグも修正され、正しく `display: flex` が適用されるようになりました。
Web Awesomeのスライダーコンポーネントで、`label`属性と`label`スロットの両方でラベルを指定した際のスタイルが異なっていた問題を修正しました。CSSセレクタを`:has(*:not(:empty))`からコンポーネントが付与する`has-label`クラスへ変更することで、どちらの方法でラベルを設定しても同一のスタイルが適用されるようになります。
`<wa-tree>` コンポーネントの内部寸法がすべて `font-size` に連動するようになり、ツリー全体のリサイズが容易になりました。旧実装の `font-size: 0` トリックを廃止し、JavaScriptでネスト深さを計算してCSS変数 `--indent` に注入する方式に切り替えることで、インデントガイドの位置ずれも同時に修正されています。
`utils.css` のダイアログ用スタイルが `<wa-dialog>` のドキュメントサンプルに意図せず適用されていた問題を修正。CSSセレクタを `wa-dialog:has([slot='footer'])` から `wa-dialog.app-dialog` に変更し、アプリケーション固有のダイアログにのみスタイルが適用されるようスコープを限定しました。
プロダクトナビゲーションバーに、ホバーしたプロダクトのブランドカラーが背景にじわりと映り込むトランジションが追加されました。`:has()` セレクタでホバー状態を祖先要素から参照し、CSSカスタムプロパティを通じて背景色を制御する純CSS実装です。ライト・ダークモードそれぞれに `color-mix(in oklab, ...)` で調整した淡い塗りつぶしカラーを用意し、既存の表示にはフォールバック値で影響を与えない設計になっています。
#2044で導入されたCSSベースのボタングループ実装に続く後続対応。内部カスタムプロパティの命名を`--_wa-button-*`から`--_button-*`へ変更し、ボーダー幅の参照をハードコードされた`1px`からテーマ変数`--wa-form-control-border-width`へ統一することで、テーマカスタマイズへの追従性を向上させました。
wa-button-groupのスタイリング制御がJavaScriptのクラス付与からCSSカスタムプロパティ(--_wa-button-*)の継承へと刷新されました。outlined ボタンの境界線が二重になるレースコンディション(#1975)を根本解消し、DOM操作なしで初期レンダリングから正確なスタイルが適用されます。
WebAwesomeのフォーム関連コンポーネント(wa-checkbox、wa-switch、wa-input、wa-radio-group、wa-slider)で、HTMLネイティブの属性/プロパティ分離セマンティクスを正確に実装し直した修正PRです。`valueHasChanged`フラグで「プロパティが明示的にセットされたか」を追跡するパターンを統一的に適用し、ReactやVue 3からのプロパティバインディングが初回レンダリングで反映されない問題やフォームリセット後のバリデーション不整合を解消しました。また、wa-drawerとwa-dialogのモジュールトップレベルにあったdocument.addEventListener呼び出しをisServerでガードし、HasSlotControllerにもオプショナルチェーンによる防御的コードを追加してSSR対応を強化しています。
WebAwesomeドキュメントシステムにフルページパターン表示のための基盤が整備されました。コード例トランスフォーマーが `<wa-include>` のトップレベル処理と `data-expand-includes` による展開制御に対応し、CSSはロジカルプロパティ化・コンテナクエリ移行・ファイルエクスプローラーUIスタイル追加が行われています。
`host.styles.ts` の `box-sizing` 宣言から `!important` を除去したPRです。コンポーネントのホスト要素に対して外部CSSから `box-sizing` を上書きできるようになり、コンポーネントライブラリとして利用者のカスタマイズ余地を不当に制限しない設計に修正されました。
Web Awesomeドキュメントサイトのプロモーションコンポーネントを、WAローンチセール用からBuild Awesome Kickstarter告知用に刷新。テンプレート差し替えに加え、ブランドカラー定義をIDセレクターから汎用ユーティリティクラス`.brand-build-awesome`へ移行し、表示制御ロジックもStripe API連携からlocalStorageベースに簡素化されました。
Web Awesomeのドキュメントサイトにおける製品ナビゲーションを、Font Awesomeの設計決定に合わせて更新。EleventyからBuild Awesomeへの差し替え、トラッキング属性の命名規則統一(ハイフン区切りからアンダースコア区切りへ)、二次製品アイコンのバリアント変更(regularからsolidへ)を実施。
Web Awesomeのドキュメントサイトで、ナビゲーション要素のアイコンバリアントを `regular` に統一し、CSSルールを整理する変更が行われました。製品リンクとメニュートグルのアイコンバリアントが統一され、不要なスタイル定義が削除されることで、視覚的な一貫性と保守性が向上しています。