@ubie/vitals-ui-business 0.3.0 → 0.5.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/CHANGELOG.md +96 -0
- package/DESIGN.md +41 -28
- package/dist/index.cjs +244 -52
- package/dist/index.d.cts +171 -22
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +171 -22
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +197 -53
- package/dist/index.mjs.map +1 -1
- package/docs/components/icon.md +101 -0
- package/docs/components/statistic.md +38 -0
- package/docs/components/table.md +140 -27
- package/docs/patterns/chart.md +84 -0
- package/docs/patterns/disclosure.md +12 -2
- package/docs/patterns/empty-state.md +37 -0
- package/docs/patterns/list-detail.md +8 -8
- package/docs/patterns/print.md +44 -0
- package/docs/patterns/region-state.md +37 -0
- package/docs/patterns/skeleton.md +40 -5
- package/docs/tokens.md +18 -1
- package/package.json +3 -2
- package/src/components/Table/index.tsx +30 -43
- package/src/index.ts +14 -0
- package/src/stories/business/Icon.stories.tsx +153 -0
- package/src/stories/business/Table.stories.tsx +250 -49
- package/src/stories/business/Typography.stories.tsx +133 -0
- package/src/stories/patterns/Chart.stories.tsx +367 -0
- package/src/stories/patterns/ListDetail.stories.tsx +20 -11
- package/src/stories/patterns/Section.stories.tsx +251 -0
- package/src/theme/businessTheme.ts +15 -2
- package/src/theme/businessTypography.ts +69 -0
- package/src/theme/chartSeriesColors.ts +71 -0
- package/src/components/Table/rowAction.ts +0 -25
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,101 @@
|
|
|
1
1
|
# @ubie/vitals-ui-business
|
|
2
2
|
|
|
3
|
+
## 0.5.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- dc8d246: グラフの系列色 `chartSeriesColors` と、グラフの規則 docs/patterns/chart.md を追加する。
|
|
8
|
+
|
|
9
|
+
- **追加**: `chartSeriesColors`。`cool`(寒色 4 色。各位置が `base` と 2 値の内訳用の `shade` を持つ)/ `warm`(暖色主体 4 色)/ `neutral`(`unset` / `other` / `total`)/ `printRamp`(モノクロ印刷でグラフの塗りを差し替えるグレーのランプ)。値はすべて `@ubie/vitals-token` の primitive。プライマリ・意味色と同じ段の primitive と hospital accent(sky-500 を除く)は含まず、`cool` の主・`warm`・`unset` は白地で 3:1 以上(テストで固定)
|
|
10
|
+
- **追加**: docs/patterns/chart.md。形の選び方(積み上げ可否は「合計に意味があるか」)/ 表の併置と凡例順 = 表順 / 色相スロットは 4(上位 4 + その他)と全 0 系列の扱い / 色の系統と「同じ系列は常に同じ色」/ 意味色・hospital accent との距離 / 集計中の別塗り + ラベル / `role="img"` と描画アニメーションの停止 / モノクロ印刷はグレーのランプ + 表 / グラフ単位の [画像を保存]
|
|
11
|
+
- **追加**: Storybook `Patterns/Chart`(Stacked / Grouped / AllZero / Palette)。描画は素の SVG で、ライブラリに依存しない
|
|
12
|
+
- docs/tokens.md「選ぶ順」に「グラフの系列色 → `chartSeriesColors`」の分岐を追加
|
|
13
|
+
|
|
14
|
+
- 84ecd94: `jaJP` ロケールを再 export し、docs/tokens.md「選ぶ順」に寸法(余白 / 幅 / 高さ)の分岐を、DESIGN.md の立ち上げに CSS 変数と Storybook decorator の手順を足す。
|
|
15
|
+
|
|
16
|
+
- **追加**: `jaJP`(antd の `ja_JP` ロケール)。`UbieConfigProvider` の `locale` に渡す。これまで `antd/locale/ja_JP` を直接 import する必要があった
|
|
17
|
+
- 寸法: 部品の内側は `size` prop、部品の間は `Flex gap` / `Space size` に `margin*` トークン、面の内側は `padding*`、幅は `Col span` / `controlHeight` / 表の列幅、高さは `controlHeight*`。余白・幅・高さの数値をコードに書くのは表の列幅と印刷の紙寸法を除いて禁止
|
|
18
|
+
- 文字: 補足・注記・脚注・グラフの目盛は `fontSizeSM`。それより小さい文字を作らない。文字サイズの数値をコードに書かない
|
|
19
|
+
- 立ち上げ 2: `locale={jaJP}`。立ち上げ 5: CSS 変数は `UbieConfigProvider` を通した時点で出ているので `cssVar` の指定は不要、`StyleProvider` が要るときだけ `@ant-design/cssinjs` を依存に足して直接 import する。立ち上げ 6: Storybook decorator は `UbieConfigProvider` → `App` → `Layout` > `Layout.Content`
|
|
20
|
+
|
|
21
|
+
### Patch Changes
|
|
22
|
+
|
|
23
|
+
- c2b7b22: 集計画面で自作になりがちな 4 つの規則を docs/ に足し、開示と表のカードに追記する。
|
|
24
|
+
|
|
25
|
+
- **新設** docs/patterns/print.md: 画面と印刷の切り替え(`screenOnly` / `printOnly`)、印刷から外す部品、骨格の高さ制約の解き方、`@page` と改ページ、各頁のフッタ、白黒前提、Storybook での確認法と限界
|
|
26
|
+
- **新設** docs/patterns/region-state.md: 区画をリクエスト単位で切る、`Skeleton` の形を中身に合わせる、失敗は数字を出さず `Alert` に、文言の型、再試行は `Alert` の `action` に
|
|
27
|
+
- **新設** docs/patterns/empty-state.md: 一覧が空 / 集計が 0 / 区画が取得できない の 3 つを見分け、理由と次の行動は数字の隣に置く、閾値は仕様側が持つ
|
|
28
|
+
- **新設** docs/components/statistic.md: 指標名・主数字・補足・推移の 1 枚の構成、1 段の枚数、`gutter` と折り返し、印刷では grid
|
|
29
|
+
- docs/patterns/disclosure.md: パターン表に「脚注」を追加、Tooltip に入れてよい情報の 5 問目「印刷・エクスポートに載らなくてよいか」
|
|
30
|
+
- docs/components/table.md: 「数値の列・合計・比較」(右寄せ・単位は見出し・合計は `summary`・横棒は数値併記・ピボット表の先頭列固定)
|
|
31
|
+
|
|
32
|
+
- 8e6f29f: docs/patterns/skeleton.md に補助型「区画」(Content の中を複数の主題に分ける構造)を追加する。
|
|
33
|
+
|
|
34
|
+
- 見出しのサイズを `Title` の `level` で固定(画面タイトル `level={3}` → 区画 `level={4}` → 面の中の小見出し `level={5}` → 補足は `fontSizeSM`)。区画の見出しを `Card` の `title` で代用しない
|
|
35
|
+
- 区画 = 見出し + 補足 + 白地の面の列。余白はトークン(`marginXL` / `marginMD` / `marginXXS`)。読み込みと失敗は区画単位で、失敗は数字を出さず `Alert` にする
|
|
36
|
+
- 開閉は既定で開いたまま。閉じられるようにするなら `Collapse` で統一し、既定を開にする
|
|
37
|
+
- 区画へのアンカー: 横向き `Anchor` は追従(`affix`)で置く。非追従にすると選択中の項目が変わるたびに自身へスクロールし、ページを下へスクロールできなくなる。`offsetTop` / `targetOffset` は固定ヘッダ + `marginXS`、内側スクロールなら `getContainer`。閉じた区画へ到達したら開く
|
|
38
|
+
- センタリング型の使う条件から「印刷」を外し、印刷は区画の構造をそのまま写す様式とした
|
|
39
|
+
- Storybook `Patterns/Section`(区画 / 区画 + アンカー / 区画 + 開閉)を追加
|
|
40
|
+
|
|
41
|
+
## 0.4.0
|
|
42
|
+
|
|
43
|
+
### Minor Changes
|
|
44
|
+
|
|
45
|
+
- 990c270: Table の行クリック遷移を廃止し、行内アクションを常時表示既定にする(**破壊的変更**)
|
|
46
|
+
|
|
47
|
+
- **削除**: `onRowClick`。行全体をクリックの的にすると、どこがクリッカブルかが見た目に現れない。遷移は識別列のリンク(実装は `next/link` / `<a>` / `Button type="link"` / `Typography.Link` のいずれでもよい)か、行内アクションの遷移ボタンで示す。行全体クリックがどうしても要る場合は antd の `onRow` を自分で書く
|
|
48
|
+
- **削除**: `data-row-action` 属性による行クリック除外機構。行クリックが無くなったので不要
|
|
49
|
+
- **リネーム + 挙動変更**: `hoverActions` → `rowActions`。**既定が常時表示に変わる**。hover 中だけ見せたい場合は `revealOnHover` を足す
|
|
50
|
+
- **追加**: `revealOnHover`。行内アクションを hover / フォーカス中の行だけに見せる(`disableHoverEffect` と併用したときは常時表示に倒れる)
|
|
51
|
+
- **追加**: `Table` のセルの文字サイズを **14px に固定**した(`businessTheme` の `Table.cellFontSize` /
|
|
52
|
+
`cellFontSizeMD` / `cellFontSizeSM`)。ToB の本文は 16px(main の `businessTypography`)だが、一覧は多くの行を
|
|
53
|
+
見比べる面なので密度を優先し、本文と切り離す
|
|
54
|
+
- **注意**: 表の中のリンク・ボタン(`Button`)は antd のグローバル `fontSize` から文字サイズを取るため、
|
|
55
|
+
何もしないと 16px のままになる。表の中では `style={{ fontSize: "inherit" }}` を当てて表の文字サイズを継がせる
|
|
56
|
+
(`Tag` は `fontSizeSM` を自前で持つため対象外)
|
|
57
|
+
- ルール(遷移手段の選び方・`revealOnHover` を使ってよい 3 条件・セル最低幅の目安)は `docs/components/table.md` に書いた
|
|
58
|
+
|
|
59
|
+
移行:
|
|
60
|
+
|
|
61
|
+
| before | after |
|
|
62
|
+
| ----------------------------- | ------------------------------------------------------------------------------------------ |
|
|
63
|
+
| `onRowClick={r => open(r)}` | 識別列を `render` でリンクにする、または `rowActions` に遷移ボタンを置く |
|
|
64
|
+
| `hoverActions={r => ...}` | `rowActions={r => ...}`(常時表示に変わる)。hover のままにするなら `revealOnHover` を足す |
|
|
65
|
+
| セル内の `data-row-action=""` | 削除する |
|
|
66
|
+
|
|
67
|
+
- aee9c7e: ToB 共通の文字設定 `businessTypography` を追加し、`businessTheme.token` に展開する。
|
|
68
|
+
|
|
69
|
+
これまで `businessTheme` は `@ubie/vitals-antd-theme` の色だけを引き継ぎ、文字は antd 既定(14px 基準・欧文フォント優先)のままだった。文字の正本は toC(`@ubie/vitals-token-consumer`)と ToB で分かれるため、ToB の値はこのパッケージが持つ。
|
|
70
|
+
|
|
71
|
+
| キー | 値 |
|
|
72
|
+
| --------------------- | ------------------------------------------------------------------------------------------- |
|
|
73
|
+
| `fontFamily` | システム UI フォント → Hiragino → Noto Sans JP → Meiryo の順の和文対応スタック |
|
|
74
|
+
| `fontSize` | `16`(antd 既定 14 から変更。`fontSizeSM` 14 / `fontSizeLG` 18 / `fontSizeXL` 22 は派生) |
|
|
75
|
+
| `fontSizeHeading1〜5` | `24` / `20` / `18` / `16` / `14`(antd の自動派生 42〜18 は業務画面には大きすぎるため明示) |
|
|
76
|
+
| `lineHeight` 系 | 本文 `1.6`(SM / LG 含む)、見出し `1.5` |
|
|
77
|
+
|
|
78
|
+
見出しの上限を 24px にした根拠は aimon-genius-fe(MedG)main の調査による。画面 UI に 28px 以上の見出しは無く(font-size 28px は印刷帳票の CSS 直書き 3 箇所のみ)、`Typography.Title` level 1 は 1 箇所で自前 20px 上書き、画面タイトルは level 2 が主流(9 箇所)だった。
|
|
79
|
+
|
|
80
|
+
利用側への影響: `UbieConfigProvider` 配下のすべての antd コンポーネントの文字が 14px → 16px 基準になる。`Typography.Title` は antd 既定の 38 / 30 / 24 / 20 / 16 から 24 / 20 / 18 / 16 / 14 になり、level 2 を画面タイトルに使っている画面は 30px → 20px と小さくなる。個別に `fontSize` を上書きしている箇所は、この既定で足りるなら削除できる。値を戻したい場合は `ConfigProvider` の `theme.token` で差分だけ上書きする。
|
|
81
|
+
|
|
82
|
+
新規 export: `businessTypography` / `businessFontFamily` / `businessFontSizes` / `businessLineHeights`。Storybook に `Business/Typography`(スケール・コントロール内・Table 内)を追加。
|
|
83
|
+
|
|
84
|
+
- d72f499: `@ant-design/icons` を再エクスポートし、ToB の既定のアイコンセットにする
|
|
85
|
+
|
|
86
|
+
- アイコンは `@ubie/vitals-ui-business` から import する(`@ant-design/icons` を利用側の依存に足さない)
|
|
87
|
+
- 自前 SVG を渡す基底コンポーネントは `Icon` として公開(`@ant-design/icons` の default export)
|
|
88
|
+
- 原則 `*Outlined` のみを使う。塗りが要るときは Outlined を容器に載せるか `Icon` + 自前 SVG で作る(線と塗りを別の色として持てるため)。`*Filled` は Outlined + 容器で表現できないときだけ、`*TwoTone` は使わない
|
|
89
|
+
- `@ubie/vitals-icon`(ubie-icons)は `@ant-design/icons` に絵柄が無いときの受け皿。UI Business の依存には入らないので、必要なプロダクトが個別に足す
|
|
90
|
+
- 用法: `docs/components/icon.md`(Storybook `Business/Icon`)。決定: ADR 0004
|
|
91
|
+
|
|
92
|
+
追加した export: `@ant-design/icons` の全アイコンと `Icon` / `IconProvider` / `createFromIconfontCN` / `setTwoToneColor` / `getTwoToneColor`。削除・リネームは無し。
|
|
93
|
+
|
|
94
|
+
### Patch Changes
|
|
95
|
+
|
|
96
|
+
- Updated dependencies [25d839c]
|
|
97
|
+
- @ubie/vitals-antd-theme@0.0.11
|
|
98
|
+
|
|
3
99
|
## 0.3.0
|
|
4
100
|
|
|
5
101
|
### Minor Changes
|
package/DESIGN.md
CHANGED
|
@@ -7,27 +7,32 @@ antd と Ant Design X の公開 API をそのまま再 export し、共通のテ
|
|
|
7
7
|
## 使うときの約束
|
|
8
8
|
|
|
9
9
|
- `antd` から直接ではなく `@ubie/vitals-ui-business` から import する
|
|
10
|
+
- アイコンは `@ant-design/icons` の `*Outlined` から選ぶ。`@ant-design/icons` を直接 import しない。塗りが要るときと、antd に絵柄が無いとき(`@ubie/vitals-icon`)の落とし方は `docs/components/icon.md`
|
|
10
11
|
- 色・寸法の値をプロダクトのコードに書かない。正本はトークンとテーマにある(`docs/tokens.md`)
|
|
11
12
|
- アプリ固有の逸脱は、そのプロダクトのリポジトリに書く
|
|
12
13
|
|
|
13
14
|
## 何をするときに何を読むか
|
|
14
15
|
|
|
15
|
-
| したいこと | 読むもの
|
|
16
|
-
| ---------------------------- |
|
|
17
|
-
| プロダクトを立ち上げる | 下の「立ち上げ」
|
|
18
|
-
| 画面を 1 枚足す |
|
|
19
|
-
| 部品の使い方を確かめる | `docs/components/`(Table / Layout / Modal / Drawer /
|
|
20
|
-
|
|
|
21
|
-
|
|
|
16
|
+
| したいこと | 読むもの |
|
|
17
|
+
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
18
|
+
| プロダクトを立ち上げる | 下の「立ち上げ」 |
|
|
19
|
+
| 画面を 1 枚足す | 骨格と区画は `docs/patterns/skeleton.md` → 一覧と詳細の関係は `docs/patterns/list-detail.md` → 情報の出し方は `docs/patterns/disclosure.md` |
|
|
20
|
+
| 部品の使い方を確かめる | `docs/components/`(Table / Layout / Modal / Drawer / Statistic / チャット / アイコン) |
|
|
21
|
+
| アイコンを選ぶ | `docs/components/icon.md` |
|
|
22
|
+
| 色・寸法を決める | `docs/tokens.md` |
|
|
23
|
+
| グラフを置く | `docs/patterns/chart.md`。系列色は `chartSeriesColors` |
|
|
24
|
+
| 設計や実装を見直す・採点する | `docs/principles/` |
|
|
22
25
|
|
|
23
26
|
## 索引
|
|
24
27
|
|
|
25
28
|
### テーマ
|
|
26
29
|
|
|
27
|
-
| 名前 | 場所
|
|
28
|
-
| -------------------- |
|
|
29
|
-
| `businessTheme` | `src/theme/businessTheme.ts`
|
|
30
|
-
| `
|
|
30
|
+
| 名前 | 場所 | 役割 |
|
|
31
|
+
| -------------------- | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
32
|
+
| `businessTheme` | `src/theme/businessTheme.ts` | ToB プロダクト共通の antd テーマ。`antdTheme` の token 層(色)+ `businessTypography`(文字)+ Layout / Table の components 既定 |
|
|
33
|
+
| `businessTypography` | `src/theme/businessTypography.ts` | ToB の文字の正本。書体スタック・本文 16px 基準の見出しスケール・行間。toC の `@ubie/vitals-token-consumer` とは正本が別 |
|
|
34
|
+
| `UbieConfigProvider` | `src/UbieConfigProvider.tsx` | `businessTheme` を既定で当てる ConfigProvider。利用側の `theme` は差分として重なる |
|
|
35
|
+
| `chartSeriesColors` | `src/theme/chartSeriesColors.ts` | グラフの系列色。2 系統(`cool` / `warm`、色相 4 ずつ、`cool` は主・従の 2 段)+ `neutral` + 印刷用 `printRamp`。使い方は `docs/patterns/chart.md` |
|
|
31
36
|
|
|
32
37
|
### コンポーネント
|
|
33
38
|
|
|
@@ -35,37 +40,45 @@ antd の同名コンポーネントに既定を足したもの、および antd
|
|
|
35
40
|
|
|
36
41
|
| 名前 | 場所 | antd との差分 | カード |
|
|
37
42
|
| ------------------- | -------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -------------------------- |
|
|
38
|
-
| `Table` | `src/components/Table/index.tsx` | `
|
|
43
|
+
| `Table` | `src/components/Table/index.tsx` | `rowActions` / `revealOnHover` / `disableHoverEffect`、`size="small"` 既定 | `docs/components/table.md` |
|
|
39
44
|
| `ChatBubble` | `src/components/ChatBubble/index.tsx` | `evidence` / `timestamp` / `timestampFormat` / `onRetry` / `retryLabel` を `footer` / `extra` に合成 | `docs/components/chat.md` |
|
|
40
45
|
| `ChatConversations` | `src/components/ChatConversations/index.tsx` | `emptyState`(未指定なら antd の `Empty`) | `docs/components/chat.md` |
|
|
41
46
|
|
|
42
47
|
### 文書
|
|
43
48
|
|
|
44
|
-
| 文書
|
|
45
|
-
|
|
|
46
|
-
| 体験設計の 8 原則と採点の枠
|
|
47
|
-
| 情報設計の原則
|
|
48
|
-
| トークンの優先順位
|
|
49
|
-
| Table カード
|
|
50
|
-
| 画面骨格 5
|
|
51
|
-
| 情報の開示パターン
|
|
52
|
-
| 一覧と詳細
|
|
53
|
-
|
|
|
54
|
-
|
|
|
55
|
-
|
|
|
56
|
-
|
|
|
49
|
+
| 文書 | 場所 |
|
|
50
|
+
| ---------------------------- | --------------------------------------- |
|
|
51
|
+
| 体験設計の 8 原則と採点の枠 | `docs/principles/README.md` |
|
|
52
|
+
| 情報設計の原則 | `docs/principles/information-design.md` |
|
|
53
|
+
| トークンの優先順位 | `docs/tokens.md` |
|
|
54
|
+
| Table カード | `docs/components/table.md` |
|
|
55
|
+
| 画面骨格 5 型と区画 | `docs/patterns/skeleton.md` |
|
|
56
|
+
| 情報の開示パターン | `docs/patterns/disclosure.md` |
|
|
57
|
+
| 一覧と詳細 | `docs/patterns/list-detail.md` |
|
|
58
|
+
| グラフ | `docs/patterns/chart.md` |
|
|
59
|
+
| 区画の状態(読み込み・失敗) | `docs/patterns/region-state.md` |
|
|
60
|
+
| 空状態 | `docs/patterns/empty-state.md` |
|
|
61
|
+
| 印刷様式 | `docs/patterns/print.md` |
|
|
62
|
+
| Statistic カード | `docs/components/statistic.md` |
|
|
63
|
+
| Layout カード | `docs/components/layout.md` |
|
|
64
|
+
| Modal カード | `docs/components/modal.md` |
|
|
65
|
+
| Drawer カード | `docs/components/drawer.md` |
|
|
66
|
+
| チャット | `docs/components/chat.md` |
|
|
67
|
+
| Icon カード | `docs/components/icon.md` |
|
|
57
68
|
|
|
58
69
|
### 描画カタログ
|
|
59
70
|
|
|
60
71
|
Storybook: https://ubie-inc.github.io/ubie-vitals/ui-business (main への push で更新)
|
|
61
72
|
コンポーネントは Storybook の "Business/" グループ、パターンの実演は "Patterns/" グループにある。
|
|
62
73
|
|
|
63
|
-
- コンポーネント: `src/stories/business/Table.stories.tsx`・`src/stories/business/Chat.stories.tsx`
|
|
64
|
-
- パターンの実演: `src/stories/patterns/Skeleton.stories.tsx`・`src/stories/patterns/Disclosure.stories.tsx`・`src/stories/patterns/ListDetail.stories.tsx`
|
|
74
|
+
- コンポーネント: `src/stories/business/Table.stories.tsx`・`src/stories/business/Chat.stories.tsx`・`src/stories/business/Icon.stories.tsx`
|
|
75
|
+
- パターンの実演: `src/stories/patterns/Skeleton.stories.tsx`・`src/stories/patterns/Section.stories.tsx`・`src/stories/patterns/Disclosure.stories.tsx`・`src/stories/patterns/ListDetail.stories.tsx`・`src/stories/patterns/Chart.stories.tsx`
|
|
65
76
|
|
|
66
77
|
## 立ち上げ
|
|
67
78
|
|
|
68
79
|
1. 依存を入れる: `pnpm add @ubie/vitals-ui-business react react-dom`
|
|
69
|
-
2. アプリの最上位を `UbieConfigProvider`
|
|
80
|
+
2. アプリの最上位を `UbieConfigProvider` で包み、`locale={jaJP}` を渡す。`jaJP` も `UbieConfigProvider` も `@ubie/vitals-ui-business` から import する(`antd/locale/*` を直接 import しない)
|
|
70
81
|
3. アプリ固有のテーマ差分(ヘッダー高さなど)は `UbieConfigProvider` の `theme` に差分だけ渡す。書き方は `docs/tokens.md`
|
|
71
82
|
4. 骨格は `docs/patterns/skeleton.md` の 5 型から選ぶ。一覧と詳細の組み立ては `docs/patterns/list-detail.md`、情報の出し方は `docs/patterns/disclosure.md`、部品の用法は `docs/components/` にある
|
|
83
|
+
5. CSS module から antd の値を参照するときは CSS 変数(`--ant-*`)をそのまま使う。`UbieConfigProvider` を通した時点で出ているので `cssVar` の指定は要らない。スタイルの挿入順を変える `StyleProvider` が要るときだけ、antd と同じ major の `@ant-design/cssinjs` を依存に足して直接 import する(再 export していない)
|
|
84
|
+
6. Storybook で描くときは decorator で `UbieConfigProvider` → `App` → `Layout` > `Layout.Content` の順に包む。`Layout` が無いと `Layout.bodyBg` が当たらず、面の外側が白いまま描かれる(`docs/components/layout.md`)
|
package/dist/index.cjs
CHANGED
|
@@ -1,6 +1,32 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
//#region \0rolldown/runtime.js
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
11
|
+
key = keys[i];
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
13
|
+
get: ((k) => from[k]).bind(null, key),
|
|
14
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
20
|
+
value: mod,
|
|
21
|
+
enumerable: true
|
|
22
|
+
}) : target, mod));
|
|
23
|
+
//#endregion
|
|
24
|
+
let _ant_design_icons = require("@ant-design/icons");
|
|
25
|
+
_ant_design_icons = __toESM(_ant_design_icons);
|
|
2
26
|
let _ant_design_x = require("@ant-design/x");
|
|
3
27
|
let antd = require("antd");
|
|
28
|
+
let antd_locale_ja_JP_js = require("antd/locale/ja_JP.js");
|
|
29
|
+
antd_locale_ja_JP_js = __toESM(antd_locale_ja_JP_js);
|
|
4
30
|
let _ubie_vitals_antd_theme = require("@ubie/vitals-antd-theme");
|
|
5
31
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
6
32
|
let react = require("react");
|
|
@@ -9,6 +35,92 @@ let react = require("react");
|
|
|
9
35
|
* Do not edit directly, this file was auto-generated.
|
|
10
36
|
*/
|
|
11
37
|
const ColorUbieBlue100 = "#f0f2fdff";
|
|
38
|
+
const ColorUbieBlue400 = "#8499e0ff";
|
|
39
|
+
const ColorUbieBlue700 = "#2843b4ff";
|
|
40
|
+
const ColorUbiePink500 = "#e84f88ff";
|
|
41
|
+
const ColorUbieSky500 = "#008bf2ff";
|
|
42
|
+
const ColorUbieGreen400 = "#52c997ff";
|
|
43
|
+
const ColorUbieGreen700 = "#1c7e4fff";
|
|
44
|
+
const ColorUbieYellow700 = "#9f7200ff";
|
|
45
|
+
const ColorUbiePurple400 = "#cb90f8ff";
|
|
46
|
+
const ColorUbiePurple500 = "#b65df2ff";
|
|
47
|
+
const ColorUbiePurple700 = "#7700afff";
|
|
48
|
+
const ColorUbieRed700 = "#a4002cff";
|
|
49
|
+
const ColorUbieGray200 = "#e2e5e9ff";
|
|
50
|
+
const ColorUbieGray300 = "#c8cbd0ff";
|
|
51
|
+
const ColorUbieGray400 = "#a4a8adff";
|
|
52
|
+
const ColorUbieGray500 = "#83868cff";
|
|
53
|
+
const ColorUbieGray700 = "#474b50ff";
|
|
54
|
+
const ColorUbieGray800 = "#2b2e33ff";
|
|
55
|
+
const ColorUbieGray900 = "#181b1eff";
|
|
56
|
+
const ColorSurfaceContainer = "#ffffffff";
|
|
57
|
+
const ColorOnSurface = "#0a0b0eff";
|
|
58
|
+
const ColorOnSurfaceVariant = "#63666bff";
|
|
59
|
+
//#endregion
|
|
60
|
+
//#region src/theme/businessTypography.ts
|
|
61
|
+
/**
|
|
62
|
+
* ToB プロダクト共通の書体スタック。
|
|
63
|
+
*
|
|
64
|
+
* 欧文はシステム UI フォント(San Francisco / Segoe UI)に任せ、和文は Hiragino → Noto Sans JP → Meiryo の順で
|
|
65
|
+
* 拾う。toC の `@ubie/vitals-token-consumer` にも同趣旨の `text.base-family` があるが、あちらは toC の正本なので
|
|
66
|
+
* 依存せず、ToB の正本としてここに持つ。ブランド共通に昇格させる判断が出たら `@ubie/vitals-token` へ移す。
|
|
67
|
+
*/
|
|
68
|
+
const businessFontFamily = "-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'Noto Sans JP', Meiryo, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'";
|
|
69
|
+
/**
|
|
70
|
+
* ToB の文字スケール(px)。
|
|
71
|
+
*
|
|
72
|
+
* 基準は本文 16px(2026-09-09 デザイナー決定)。antd の既定 14px から基準を上げると、antd は見出しを
|
|
73
|
+
* 42 / 34 / 28 / 22 / 18 に自動で派生させるが、業務画面ではヘッダー・見出しが大きすぎるため
|
|
74
|
+
* 見出しはここで明示する。Figma 側に ToB の文字定義はまだ無く、この値が正本(Figma に定義ができたら差し替える)。
|
|
75
|
+
*
|
|
76
|
+
* 見出しの上限を 24px にした根拠(2026-09-09 aimon-genius-fe main を調査):
|
|
77
|
+
* - 画面 UI に 28px 以上の見出しは無い。font-size 28px は印刷帳票の CSS 直書き 3 箇所のみ
|
|
78
|
+
* - `Typography.Title` level 1 は 1 箇所だけで、しかも自前で 20px に上書きしている
|
|
79
|
+
* - 画面タイトルは level 2 が主流(9 箇所)。level 3 が 22、level 4 が 19、level 5 が 10 箇所
|
|
80
|
+
* よって H1 は「画面タイトルの最大」として 24px に置き、以下を 1 段ずつ詰める。
|
|
81
|
+
*/
|
|
82
|
+
const businessFontSizes = {
|
|
83
|
+
/** 本文。antd はこの値から fontSizeSM (14) / fontSizeLG (18) / fontSizeXL (22) を派生させる */
|
|
84
|
+
fontSize: 16,
|
|
85
|
+
/** 画面タイトル。1 画面に 1 つ */
|
|
86
|
+
fontSizeHeading1: 24,
|
|
87
|
+
/** セクション見出し。現行 MedG の画面タイトルはこの level を使っている */
|
|
88
|
+
fontSizeHeading2: 20,
|
|
89
|
+
/** カード・パネルの見出し */
|
|
90
|
+
fontSizeHeading3: 18,
|
|
91
|
+
/** 本文と同サイズの見出し。太さだけで本文と区別する */
|
|
92
|
+
fontSizeHeading4: 16,
|
|
93
|
+
/** 表の中の小見出しなど。補足文字(fontSizeSM)と同サイズ */
|
|
94
|
+
fontSizeHeading5: 14
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* 行間(倍率)。
|
|
98
|
+
*
|
|
99
|
+
* 本文は和文の読みやすさで 1.6 を採る。toC は 1.7 だが、業務画面は 32px の入力欄・ボタンに 16px の文字を収めるため
|
|
100
|
+
* 1.7 では上下の余白が 2px 台まで詰まる。1.6 なら 25.6px で 3px 強の余白が残る。
|
|
101
|
+
* 見出しは行送りを詰めて塊として読めるよう 1.5 を採る。
|
|
102
|
+
*/
|
|
103
|
+
const businessLineHeights = {
|
|
104
|
+
lineHeight: 1.6,
|
|
105
|
+
lineHeightSM: 1.6,
|
|
106
|
+
lineHeightLG: 1.6,
|
|
107
|
+
lineHeightHeading1: 1.5,
|
|
108
|
+
lineHeightHeading2: 1.5,
|
|
109
|
+
lineHeightHeading3: 1.5,
|
|
110
|
+
lineHeightHeading4: 1.5,
|
|
111
|
+
lineHeightHeading5: 1.5
|
|
112
|
+
};
|
|
113
|
+
/**
|
|
114
|
+
* ToB プロダクト共通の文字設定。`businessTheme.token` に展開される。
|
|
115
|
+
*
|
|
116
|
+
* `@ubie/vitals-antd-theme` は色だけを持ち、文字は持たない。文字は ToB / toC で正本が分かれるため
|
|
117
|
+
* antd-theme ではなくこのパッケージが持つ。
|
|
118
|
+
*/
|
|
119
|
+
const businessTypography = {
|
|
120
|
+
fontFamily: businessFontFamily,
|
|
121
|
+
...businessFontSizes,
|
|
122
|
+
...businessLineHeights
|
|
123
|
+
};
|
|
12
124
|
//#endregion
|
|
13
125
|
//#region src/theme/businessTheme.ts
|
|
14
126
|
/**
|
|
@@ -16,7 +128,7 @@ const ColorUbieBlue100 = "#f0f2fdff";
|
|
|
16
128
|
*
|
|
17
129
|
* business 判断による上書きはここに置かず `businessComponentOverrides` に置く。
|
|
18
130
|
*/
|
|
19
|
-
const semanticComponentTokens = { Layout: { headerBg:
|
|
131
|
+
const semanticComponentTokens = { Layout: { headerBg: ColorSurfaceContainer } };
|
|
20
132
|
/**
|
|
21
133
|
* business 判断で DS semantic を採らない層。
|
|
22
134
|
*
|
|
@@ -33,17 +145,26 @@ const businessComponentOverrides = {
|
|
|
33
145
|
/**
|
|
34
146
|
* 色ではなく寸法・密度の既定。一覧画面は行数が多いため small 密度を共通既定にする。
|
|
35
147
|
*/
|
|
36
|
-
const businessComponentMetrics = { Table: {
|
|
148
|
+
const businessComponentMetrics = { Table: {
|
|
149
|
+
cellPaddingBlockSM: 6,
|
|
150
|
+
cellFontSize: 14,
|
|
151
|
+
cellFontSizeMD: 14,
|
|
152
|
+
cellFontSizeSM: 14
|
|
153
|
+
} };
|
|
37
154
|
/**
|
|
38
155
|
* ToB プロダクト共通の antd テーマ。
|
|
39
156
|
*
|
|
40
|
-
* token 層は `@ubie/vitals-antd-theme` の `antdTheme
|
|
41
|
-
* business 共通の components
|
|
157
|
+
* token 層は `@ubie/vitals-antd-theme` の `antdTheme`(色)をそのまま引き継ぎ、
|
|
158
|
+
* ToB の文字設定(`businessTypography`)と business 共通の components 既定をここで足す。アプリ側は
|
|
42
159
|
* `{ ...businessTheme, components: { ...businessTheme.components, Layout: { ...businessTheme.components.Layout, headerHeight: 64 } } }`
|
|
43
160
|
* のように差分だけを上書きする。
|
|
44
161
|
*/
|
|
45
162
|
const businessTheme = {
|
|
46
163
|
..._ubie_vitals_antd_theme.antdTheme,
|
|
164
|
+
token: {
|
|
165
|
+
..._ubie_vitals_antd_theme.antdTheme.token,
|
|
166
|
+
...businessTypography
|
|
167
|
+
},
|
|
47
168
|
components: {
|
|
48
169
|
Layout: {
|
|
49
170
|
...semanticComponentTokens.Layout,
|
|
@@ -71,29 +192,88 @@ function UbieConfigProvider({ children, ...configProviderProps }) {
|
|
|
71
192
|
});
|
|
72
193
|
}
|
|
73
194
|
//#endregion
|
|
74
|
-
//#region src/
|
|
75
|
-
/** 行内アクションであることを示す属性。この属性を持つ要素(とその子孫)のクリックは行クリックにしない。 */
|
|
76
|
-
const ROW_ACTION_ATTRIBUTE = "data-row-action";
|
|
77
|
-
/** クリック要素から行までの経路のどこかに行内アクションの印があるか。 */
|
|
78
|
-
function isRowActionTarget(path) {
|
|
79
|
-
return path.some((element) => element.hasAttribute(ROW_ACTION_ATTRIBUTE));
|
|
80
|
-
}
|
|
195
|
+
//#region src/theme/chartSeriesColors.ts
|
|
81
196
|
/**
|
|
82
|
-
*
|
|
83
|
-
*
|
|
197
|
+
* グラフの系列色。
|
|
198
|
+
*
|
|
199
|
+
* 系列色は「意味で表せない色」なので primitive から取る(docs/tokens.md「選ぶ順」)。使い方の規則は docs/patterns/chart.md。
|
|
200
|
+
* 選び方の約束(chartSeriesColors.test.ts が構造を検査する):
|
|
201
|
+
* - プライマリ・意味色(success / warning / error)と同じ段(blue-600・green-600・yellow-500・red-600 など)は系列に使わない。
|
|
202
|
+
* 同じ色相を使うときは段をずらす。状態を表す色と分類を表す色が同じ画面で混ざるため
|
|
203
|
+
* - hospital accent(sky / cream / slate / indigo / stone)は系列に使わない。sky-500 だけは系統 1 の例外
|
|
204
|
+
* - 白地(colorBgContainer)に対して 3:1 以上(WCAG 1.4.11)。`shade`(従)と `other` だけは例外で、単独では使わない
|
|
205
|
+
* - 1 系統の色相は 4 まで。それ以上の区分は上位 4 + その他に畳む(docs/patterns/chart.md「系列」)
|
|
206
|
+
*
|
|
207
|
+
* 2 系統を持つ理由: 1 画面に分類軸が 2 つあるとき(例: システム側の分類と人・組織側の分類)、軸ごとに系統を固定すると、
|
|
208
|
+
* 別の軸の同じ位置の色が並んでも別物だと読める。同じ軸のグラフでは、同じ系列に常に同じ色を当てる。
|
|
84
209
|
*/
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
210
|
+
const chartSeriesColors = {
|
|
211
|
+
/**
|
|
212
|
+
* 系統 1(寒色)。システム側の分類に使う。`base` が系列の色、`shade` は同じ系列を主・従の 2 値に割るときの従(淡)。
|
|
213
|
+
* `shade` が無い位置は 2 値の内訳に使わない。
|
|
214
|
+
*/
|
|
215
|
+
cool: [
|
|
216
|
+
{
|
|
217
|
+
base: ColorUbieBlue700,
|
|
218
|
+
shade: ColorUbieBlue400
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
base: ColorUbieSky500,
|
|
222
|
+
shade: null
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
base: ColorUbiePurple700,
|
|
226
|
+
shade: ColorUbiePurple400
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
base: ColorUbieGreen700,
|
|
230
|
+
shade: ColorUbieGreen400
|
|
231
|
+
}
|
|
232
|
+
],
|
|
233
|
+
/** 系統 2(暖色主体)。人・組織側の分類に使う。系統 1 と同じ色を含まない */
|
|
234
|
+
warm: [
|
|
235
|
+
ColorUbiePink500,
|
|
236
|
+
ColorUbieYellow700,
|
|
237
|
+
ColorUbieRed700,
|
|
238
|
+
ColorUbiePurple500
|
|
239
|
+
],
|
|
240
|
+
/** 系列ではない中立の色 */
|
|
241
|
+
neutral: {
|
|
242
|
+
/** 「(未設定)」「未分類」の系列。補足文字と同じ色 */
|
|
243
|
+
unset: ColorOnSurfaceVariant,
|
|
244
|
+
/** 上位 4 に入らなかった残りを畳んだ「その他」。淡いグレーの実色(透過だと印刷・画像で消える) */
|
|
245
|
+
other: ColorUbieGray300,
|
|
246
|
+
/** どの系列にも属さない全体の線(合計・率)。本文の文字色 */
|
|
247
|
+
total: ColorOnSurface
|
|
248
|
+
},
|
|
249
|
+
/**
|
|
250
|
+
* モノクロ印刷で系列の塗りを差し替えるグレーのランプ。積む順(底が濃い)に並ぶ。
|
|
251
|
+
* 色相の違いは白黒では潰れるため、印刷では色ではなく明度の段で系列を分ける(docs/patterns/print.md)。
|
|
252
|
+
*/
|
|
253
|
+
printRamp: {
|
|
254
|
+
/** 系統 1 の 4 系列 */
|
|
255
|
+
cool: [
|
|
256
|
+
ColorUbieGray900,
|
|
257
|
+
ColorUbieGray700,
|
|
258
|
+
ColorUbieGray500,
|
|
259
|
+
ColorUbieGray300
|
|
260
|
+
],
|
|
261
|
+
/** 系統 2 の 4 系列。続けて(未設定)は gray-300、その他は gray-200 */
|
|
262
|
+
warm: [
|
|
263
|
+
ColorUbieGray900,
|
|
264
|
+
ColorUbieGray700,
|
|
265
|
+
ColorUbieGray500,
|
|
266
|
+
ColorUbieGray400
|
|
267
|
+
],
|
|
268
|
+
warmUnset: ColorUbieGray300,
|
|
269
|
+
warmOther: ColorUbieGray200,
|
|
270
|
+
/** 2 値の内訳(主 / 従) */
|
|
271
|
+
shade: [ColorUbieGray800, ColorUbieGray400]
|
|
91
272
|
}
|
|
92
|
-
|
|
93
|
-
}
|
|
273
|
+
};
|
|
94
274
|
//#endregion
|
|
95
275
|
//#region src/components/Table/index.tsx
|
|
96
|
-
const
|
|
276
|
+
const ROW_ACTIONS_COLUMN_KEY = "__rowActions";
|
|
97
277
|
function resolveRowKey(rowKey, record, index) {
|
|
98
278
|
if (typeof rowKey === "function") return rowKey(record, index);
|
|
99
279
|
const value = record[rowKey ?? "key"];
|
|
@@ -103,34 +283,32 @@ function resolveRowKey(rowKey, record, index) {
|
|
|
103
283
|
* ToB プロダクト共通の Table。antd Table の superset。
|
|
104
284
|
*
|
|
105
285
|
* - `size` の既定は `small`(`businessTheme` の `Table.cellPaddingBlockSM` と組で一覧画面の密度にする)
|
|
106
|
-
* - `
|
|
286
|
+
* - `rowActions` / `revealOnHover` / `disableHoverEffect` を足す。それ以外の props は antd にそのまま渡す
|
|
107
287
|
* - hover 状態は React state で持つ(CSS に依存しないので描画テストで検査できる)
|
|
108
288
|
*
|
|
109
289
|
* @displayName Table
|
|
110
290
|
*/
|
|
111
291
|
function InternalTable(props) {
|
|
112
|
-
const {
|
|
292
|
+
const { rowActions, revealOnHover = false, disableHoverEffect = false, onRow, columns, rowKey, size = "small", ref, ...rest } = props;
|
|
113
293
|
const [hoveredKey, setHoveredKey] = (0, react.useState)(null);
|
|
114
|
-
const
|
|
294
|
+
const revealEnabled = revealOnHover && !disableHoverEffect;
|
|
295
|
+
const trackHover = Boolean(rowActions) && revealEnabled;
|
|
115
296
|
const mergedColumns = (0, react.useMemo)(() => {
|
|
116
|
-
if (!
|
|
117
|
-
const
|
|
297
|
+
if (!rowActions) return columns;
|
|
298
|
+
const actionColumn = {
|
|
118
299
|
align: "right",
|
|
119
|
-
key:
|
|
300
|
+
key: ROW_ACTIONS_COLUMN_KEY,
|
|
120
301
|
render: (_value, record, index) => {
|
|
121
|
-
return
|
|
122
|
-
[ROW_ACTION_ATTRIBUTE]: "",
|
|
123
|
-
children: hoverActions?.(record)
|
|
124
|
-
}) : null;
|
|
302
|
+
return !revealEnabled || hoveredKey !== null && hoveredKey === resolveRowKey(rowKey, record, index) ? rowActions(record) : null;
|
|
125
303
|
},
|
|
126
304
|
title: ""
|
|
127
305
|
};
|
|
128
|
-
return [...columns ?? [],
|
|
306
|
+
return [...columns ?? [], actionColumn];
|
|
129
307
|
}, [
|
|
130
308
|
columns,
|
|
131
|
-
hoverActions,
|
|
132
|
-
hoverEnabled,
|
|
133
309
|
hoveredKey,
|
|
310
|
+
revealEnabled,
|
|
311
|
+
rowActions,
|
|
134
312
|
rowKey
|
|
135
313
|
]);
|
|
136
314
|
const mergedOnRow = (0, react.useCallback)((record, index) => {
|
|
@@ -138,40 +316,29 @@ function InternalTable(props) {
|
|
|
138
316
|
const rowIndex = index ?? 0;
|
|
139
317
|
return {
|
|
140
318
|
...user,
|
|
141
|
-
onClick: (event) => {
|
|
142
|
-
user.onClick?.(event);
|
|
143
|
-
if (!onRowClick) return;
|
|
144
|
-
if (!event.currentTarget.contains(event.target)) return;
|
|
145
|
-
if (isRowActionTarget(elementPath(event.target, event.currentTarget))) return;
|
|
146
|
-
onRowClick(record, event);
|
|
147
|
-
},
|
|
148
319
|
onMouseEnter: (event) => {
|
|
149
320
|
user.onMouseEnter?.(event);
|
|
150
|
-
if (
|
|
321
|
+
if (trackHover) setHoveredKey(resolveRowKey(rowKey, record, rowIndex));
|
|
151
322
|
},
|
|
152
323
|
onMouseLeave: (event) => {
|
|
153
324
|
user.onMouseLeave?.(event);
|
|
154
|
-
if (
|
|
325
|
+
if (trackHover) setHoveredKey(null);
|
|
155
326
|
},
|
|
156
327
|
onFocus: (event) => {
|
|
157
328
|
user.onFocus?.(event);
|
|
158
|
-
if (
|
|
329
|
+
if (trackHover) setHoveredKey(resolveRowKey(rowKey, record, rowIndex));
|
|
159
330
|
},
|
|
160
331
|
onBlur: (event) => {
|
|
161
332
|
user.onBlur?.(event);
|
|
162
|
-
if (!
|
|
333
|
+
if (!trackHover) return;
|
|
163
334
|
const related = event.relatedTarget;
|
|
164
335
|
if (related === null || !event.currentTarget.contains(related)) setHoveredKey(null);
|
|
165
336
|
},
|
|
166
|
-
style:
|
|
167
|
-
cursor: "pointer",
|
|
168
|
-
...user.style
|
|
169
|
-
} : user.style
|
|
337
|
+
style: user.style
|
|
170
338
|
};
|
|
171
339
|
}, [
|
|
172
|
-
|
|
340
|
+
trackHover,
|
|
173
341
|
onRow,
|
|
174
|
-
onRowClick,
|
|
175
342
|
rowKey
|
|
176
343
|
]);
|
|
177
344
|
const columnsProp = mergedColumns === void 0 ? {} : { columns: mergedColumns };
|
|
@@ -286,9 +453,26 @@ function ChatConversations({ emptyState, items, ref, ...rest }) {
|
|
|
286
453
|
//#endregion
|
|
287
454
|
exports.ChatBubble = ChatBubble;
|
|
288
455
|
exports.ChatConversations = ChatConversations;
|
|
456
|
+
Object.defineProperty(exports, "Icon", {
|
|
457
|
+
enumerable: true,
|
|
458
|
+
get: function() {
|
|
459
|
+
return _ant_design_icons.default;
|
|
460
|
+
}
|
|
461
|
+
});
|
|
289
462
|
exports.Table = Table;
|
|
290
463
|
exports.UbieConfigProvider = UbieConfigProvider;
|
|
464
|
+
exports.businessFontFamily = businessFontFamily;
|
|
465
|
+
exports.businessFontSizes = businessFontSizes;
|
|
466
|
+
exports.businessLineHeights = businessLineHeights;
|
|
291
467
|
exports.businessTheme = businessTheme;
|
|
468
|
+
exports.businessTypography = businessTypography;
|
|
469
|
+
exports.chartSeriesColors = chartSeriesColors;
|
|
470
|
+
Object.defineProperty(exports, "jaJP", {
|
|
471
|
+
enumerable: true,
|
|
472
|
+
get: function() {
|
|
473
|
+
return antd_locale_ja_JP_js.default;
|
|
474
|
+
}
|
|
475
|
+
});
|
|
292
476
|
Object.defineProperty(exports, "notification", {
|
|
293
477
|
enumerable: true,
|
|
294
478
|
get: function() {
|
|
@@ -313,6 +497,14 @@ Object.defineProperty(exports, "xVersion", {
|
|
|
313
497
|
return _ant_design_x.version;
|
|
314
498
|
}
|
|
315
499
|
});
|
|
500
|
+
Object.keys(_ant_design_icons).forEach(function(k) {
|
|
501
|
+
if (k !== "default" && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
|
|
502
|
+
enumerable: true,
|
|
503
|
+
get: function() {
|
|
504
|
+
return _ant_design_icons[k];
|
|
505
|
+
}
|
|
506
|
+
});
|
|
507
|
+
});
|
|
316
508
|
Object.keys(_ant_design_x).forEach(function(k) {
|
|
317
509
|
if (k !== "default" && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
|
|
318
510
|
enumerable: true,
|