(
function Item({ label, id, linkUrl, countBadge }: Props) {
const {
selectedId,
- countBadgeLabel = '件数',
handleClick,
} = useUnderlineTabContextContext();
@@ -293,9 +273,8 @@ export const UnderlineTabItem = forwardRef(
const countBadgeElement = countBadge && (
<>
- {countBadgeLabel}
- {/* 100以上の場合は99+の表記にする */}
{countBadge}
+ 件
>
);
@@ -347,7 +326,6 @@ export const UnderlineTabItem = forwardRef(
{ id: 'team', linkUrl: '/team', label: 'Team' },
{ id: 'ameba', linkUrl: '/about', label: 'Amebaとは' },
]}
- countBadgeLabel="未読"
hasBorder
/>
```
@@ -362,7 +340,6 @@ export const UnderlineTabItem = forwardRef(
{ id: 'team', label: 'Team', linkComponentProps: { to: '/team' } },
{ id: 'ameba', label: 'Amebaとは', linkComponentProps: { to: '/about' } },
]}
- countBadgeLabel="未読"
hasBorder
onClick={handleClick}
/>
@@ -377,7 +354,6 @@ export const UnderlineTabItem = forwardRef(
{ id: 'team', label: 'Team' },
{ id: 'ameba', label: 'Amebaとは' },
]}
- countBadgeLabel="新着"
hasBorder
onClick={handleClick}
/>
@@ -391,11 +367,11 @@ export const UnderlineTabItem = forwardRef(
- [テキストや文字画像のコントラストを確保する](https://a11y-guidelines.ameba.design/1/4/3/)[基本必須]
- [ ] SpindleカラーパレットのTheme Colorsを適切に使い分けている
- [テキストサイズを拡大縮小できる](https://a11y-guidelines.ameba.design/1/4/4/)[基本必須]
- - [ ] 画面を200%拡大・文字サイズを2倍に変更しても、横スクロールで全てのタブを表示できる
+ - [ ] 画面を200%拡大・文字サイズを2倍に変更しても、改行または横スクロールで全てのタブを確認できる
- [リフローできる](https://a11y-guidelines.ameba.design/1/4/10/)[できれば]
- - [ ] 画面を400%まで拡大しても、横スクロールで全てのタブを表示できる
+ - [ ] 画面を400%まで拡大しても、改行または横スクロールで全てのタブを表示できる
- [キーボード、タッチデバイスで操作できる](https://a11y-guidelines.ameba.design/2/1/1/)[基本必須]
- - [ ] リンクとボタンはTabキーでフォーカスでき、Enterキーで実行できる
+ - [ ] リンクとボタンはTabキーまたは左右キーでフォーカスでき、Enterキーで実行できる
- [適切なフォーカス順序にする](https://a11y-guidelines.ameba.design/2/4/3/)[基本必須]
- [ ] キーボード操作の順序が、見た目の順序と一致している
- [リンクの目的を理解できるようにする](https://a11y-guidelines.ameba.design/2/4/4/)[基本必須]
@@ -407,6 +383,8 @@ export const UnderlineTabItem = forwardRef(
- [ ] 現在位置は `aria-selected="true"` を付与している。リンクの場合は、`aria-current="page"` を追加で付与している
- [ポインタジェスチャを必須としない](https://a11y-guidelines.ameba.design/2/5/1/)[基本必須]
- [ ] スクロールできる場合はスクロールボタンを配置している
+- [ターゲットのサイズを理解する](https://a11y-guidelines.ameba.design/2/5/5/)[できれば]
+ - [ ] リンクやボタンのタップ領域は44px × 44px以上確保している
- [HTMLを正しく記述する](https://a11y-guidelines.ameba.design/4/1/1/)[基本必須]
- [ ] HTML仕様に準拠した実装をしている
- [カスタムコントロールの操作性を担保する](https://a11y-guidelines.ameba.design/4/1/2/)[基本必須]
diff --git a/packages/spindle-ui/src/NavigationTab/index.css b/packages/spindle-ui/src/NavigationTab/index.css
new file mode 100644
index 000000000..5baa27f4c
--- /dev/null
+++ b/packages/spindle-ui/src/NavigationTab/index.css
@@ -0,0 +1 @@
+@import './UnderlineTab/UnderlineTab.css';
diff --git a/packages/spindle-ui/src/NavigationTab/index.ts b/packages/spindle-ui/src/NavigationTab/index.ts
new file mode 100644
index 000000000..c1e65802b
--- /dev/null
+++ b/packages/spindle-ui/src/NavigationTab/index.ts
@@ -0,0 +1 @@
+export { UnderlineTab } from './UnderlineTab/UnderlineTab';
diff --git a/packages/spindle-ui/src/index.css b/packages/spindle-ui/src/index.css
index 1ee6f4c32..2bd0f61a4 100644
--- a/packages/spindle-ui/src/index.css
+++ b/packages/spindle-ui/src/index.css
@@ -20,3 +20,4 @@
@import './Pagination/Pagination.css';
@import './InlineNotification/InlineNotification.css';
@import './SegmentedControl/SegmentedControl.css';
+@import './NavigationTab/index.css';