ingred-ui 33.17.0 → 33.18.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/dist/components/Chart/AreaChart/AreaChart.d.ts +4 -0
- package/dist/components/Chart/AreaChart/index.d.ts +2 -0
- package/dist/components/Chart/AreaChart/types.d.ts +36 -0
- package/dist/components/Chart/index.d.ts +4 -0
- package/dist/components/Chart/internal/ChartAreaSeries.d.ts +13 -0
- package/dist/components/Chart/internal/getAreaPath.d.ts +32 -0
- package/dist/components/Select2/styled.d.ts +2 -0
- package/dist/components/Select2/types.d.ts +111 -1
- package/dist/index.es.js +620 -585
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +621 -586
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ChartReferenceLine, ChartSeries } from "../types";
|
|
2
|
+
import { AreaChartLayout } from "../internal/getAreaPath";
|
|
3
|
+
export type { AreaChartLayout };
|
|
4
|
+
export type AreaChartProps = {
|
|
5
|
+
/** X 軸のカテゴリラベル */
|
|
6
|
+
categories: string[];
|
|
7
|
+
/** 1 本以上のデータ系列(BarChart / LineChart 共通) */
|
|
8
|
+
series: ChartSeries[];
|
|
9
|
+
/**
|
|
10
|
+
* - overlay: 系列を重ねて描画(デフォルト)
|
|
11
|
+
* - stacked: 系列を積み上げて描画
|
|
12
|
+
*/
|
|
13
|
+
layout?: AreaChartLayout;
|
|
14
|
+
/**
|
|
15
|
+
* theme.palette.chart.colorSchemes のキー。
|
|
16
|
+
* 未指定時は palette.chart.series(デフォルト)を使う。
|
|
17
|
+
*/
|
|
18
|
+
colorScheme?: string;
|
|
19
|
+
/** 軸・tooltip の数値表示。未指定時は toLocaleString() */
|
|
20
|
+
valueFormatter?: (value: number) => string;
|
|
21
|
+
/** 系列が 2 本以上のとき凡例を表示。デフォルト true */
|
|
22
|
+
showLegend?: boolean;
|
|
23
|
+
/** データ点にマーカーを表示。デフォルト true */
|
|
24
|
+
showPoints?: boolean;
|
|
25
|
+
/** 凡例クリックで系列の表示/非表示を切り替え。デフォルト true */
|
|
26
|
+
interactiveLegend?: boolean;
|
|
27
|
+
/** 値軸上の水平参照線。スケール外は描画しない */
|
|
28
|
+
referenceLines?: ChartReferenceLine[];
|
|
29
|
+
/** true の間、チャートの代わりにローディング表示 */
|
|
30
|
+
loading?: boolean;
|
|
31
|
+
/** 描画可能なデータがないときのメッセージ。未指定時は「データがありません」 */
|
|
32
|
+
emptyMessage?: string;
|
|
33
|
+
"aria-label": string;
|
|
34
|
+
height?: number;
|
|
35
|
+
className?: string;
|
|
36
|
+
};
|
|
@@ -2,6 +2,8 @@ export { BarChart } from "./BarChart";
|
|
|
2
2
|
export type { BarChartLayout, BarChartProps, BarChartValueScale, } from "./BarChart";
|
|
3
3
|
export { LineChart } from "./LineChart";
|
|
4
4
|
export type { LineChartProps } from "./LineChart";
|
|
5
|
+
export { AreaChart } from "./AreaChart";
|
|
6
|
+
export type { AreaChartLayout, AreaChartProps } from "./AreaChart";
|
|
5
7
|
export type { BarSegment, BarChartOrientation, ChartHoverState, ChartReferenceLine, ChartReferenceLineAxis, ChartSeries, ResolvedChartSeries, } from "./types";
|
|
6
8
|
export type { LinePoint, LinePathSegment, LineSeriesGeometry, } from "./internal/getLineSeries";
|
|
7
9
|
export { computeYTicks, computeMaxStackedTotal } from "./internal/utils";
|
|
@@ -16,3 +18,5 @@ export { getReferenceLineGeometry, getReferenceLineLegendItems, isReferenceLineI
|
|
|
16
18
|
export type { ReferenceLineLegendItem } from "./internal/getReferenceLineGeometry";
|
|
17
19
|
export { computeAchievementPercent, formatAchievementPercent, getTooltipReferenceMetrics, } from "./internal/tooltipReferenceMetrics";
|
|
18
20
|
export type { ChartTooltipReferenceMetric } from "./internal/tooltipReferenceMetrics";
|
|
21
|
+
export { computeAreaChartMaxValue, getAreaSegments, getOverlayAreaPath, getStackedAreaPath, toStackedLineSeries, } from "./internal/getAreaPath";
|
|
22
|
+
export type { AreaPathSegment } from "./internal/getAreaPath";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { AreaPathSegment } from "./getAreaPath";
|
|
3
|
+
type ChartAreaSeriesProps = {
|
|
4
|
+
segments: AreaPathSegment[];
|
|
5
|
+
fillOpacity: number;
|
|
6
|
+
hidden: boolean;
|
|
7
|
+
animation?: "enter" | "none";
|
|
8
|
+
enterIndex?: number;
|
|
9
|
+
durationMs?: number;
|
|
10
|
+
staggerMs?: number;
|
|
11
|
+
};
|
|
12
|
+
export declare const ChartAreaSeries: React.FC<ChartAreaSeriesProps>;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ResolvedChartSeries } from "../types";
|
|
2
|
+
import { ChartLayout } from "./getChartLayout";
|
|
3
|
+
import { LinePoint } from "./getLineSeries";
|
|
4
|
+
export type AreaPathSegment = {
|
|
5
|
+
seriesLabel: string;
|
|
6
|
+
color: string;
|
|
7
|
+
d: string;
|
|
8
|
+
/** 系列内の連続面。リサイズで d が変わっても key を安定させる */
|
|
9
|
+
segmentIndex: number;
|
|
10
|
+
};
|
|
11
|
+
export type AreaChartLayout = "overlay" | "stacked";
|
|
12
|
+
/**
|
|
13
|
+
* 幾何計算に含める系列。
|
|
14
|
+
* - overlay: 全系列(非表示は DOM に残してフェードする)
|
|
15
|
+
* - stacked: 表示中だけ(非表示を除いて積み直す)
|
|
16
|
+
*/
|
|
17
|
+
export declare function getAreaChartDrawSeries<T extends {
|
|
18
|
+
label: string;
|
|
19
|
+
}>(series: readonly T[], hiddenLabels: ReadonlySet<string>, layout: AreaChartLayout): T[];
|
|
20
|
+
export declare function getOverlayAreaPath(points: readonly Pick<LinePoint, "x" | "y">[], baselineY: number): string;
|
|
21
|
+
export declare function getStackedAreaPath(upperPoints: readonly {
|
|
22
|
+
x: number;
|
|
23
|
+
y: number;
|
|
24
|
+
}[], lowerPoints: readonly {
|
|
25
|
+
x: number;
|
|
26
|
+
y: number;
|
|
27
|
+
}[]): string;
|
|
28
|
+
export declare function computeAreaChartMaxValue(series: readonly Pick<ResolvedChartSeries, "data">[], layout: AreaChartLayout): number;
|
|
29
|
+
export declare function toStackedLineSeries(series: readonly ResolvedChartSeries[]): ResolvedChartSeries[];
|
|
30
|
+
export declare function getOverlayAreaSegments(item: ResolvedChartSeries, chartLayout: ChartLayout, maxValue: number): AreaPathSegment[];
|
|
31
|
+
export declare function getStackedAreaSegments(series: readonly ResolvedChartSeries[], chartLayout: ChartLayout, maxValue: number, categoryCount?: number): AreaPathSegment[];
|
|
32
|
+
export declare function getAreaSegments(series: readonly ResolvedChartSeries[], chartLayout: ChartLayout, maxValue: number, layout: AreaChartLayout, categoryCount?: number): AreaPathSegment[];
|
|
@@ -99,6 +99,8 @@ export declare const StyledContextMenu2TextInputItem: import("styled-components/
|
|
|
99
99
|
forwardedAs?: import("styled-components").WebTarget | undefined;
|
|
100
100
|
}, "$insetFocusRingPadding">>> & string;
|
|
101
101
|
export declare const OptionsContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
|
|
102
|
+
export declare const LoadingContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
|
|
103
|
+
export declare const VisuallyHidden: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>>> & string;
|
|
102
104
|
export declare const SearchHeaderContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
|
|
103
105
|
export declare const SearchInputWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
|
|
104
106
|
export declare const BulkActionsContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
|
|
@@ -33,6 +33,104 @@ export type Select2OptionProps = {
|
|
|
33
33
|
*/
|
|
34
34
|
append?: React.ReactNode;
|
|
35
35
|
};
|
|
36
|
+
/**
|
|
37
|
+
* onSearchChange が呼ばれた理由。
|
|
38
|
+
* 親はこれで分岐する。searchTerm の値から意図を推測しなくてよい。
|
|
39
|
+
*/
|
|
40
|
+
export type Select2SearchReason =
|
|
41
|
+
/** 検索語が入力された。親は検索して children を差し替える。 */
|
|
42
|
+
"search"
|
|
43
|
+
/** デフォルト候補を求めている。searchTerm は常に空。 */
|
|
44
|
+
| "default"
|
|
45
|
+
/** 検索が打ち切られた。親は取得せず、保留中の debounce と進行中のリクエストを捨てる。 */
|
|
46
|
+
| "abort";
|
|
47
|
+
/**
|
|
48
|
+
* サーバー検索(非同期サジェスト)の設定。
|
|
49
|
+
*
|
|
50
|
+
* この機能がやっていることは、突き詰めると一つだけである。
|
|
51
|
+
* 「候補の絞り込みを誰が担当するか」を Select2 から親に移す。
|
|
52
|
+
*
|
|
53
|
+
* これまで: 親が全件を children で渡し、Select2 が検索語で絞る
|
|
54
|
+
* searchMode: 親が検索して絞った結果を children で渡し、Select2 は絞らずに描く
|
|
55
|
+
*
|
|
56
|
+
* 候補が数千件あると、全件を渡した時点で開いた瞬間の描画が重くなる。
|
|
57
|
+
* 絞り込みを親(サーバー)に移せば、Select2 が受け取る件数そのものが減る。
|
|
58
|
+
*
|
|
59
|
+
* 実装上の切り替え点は Select2.tsx の searchedOptions にある一行だけで、
|
|
60
|
+
* 既存のローカル絞り込みは消していない。searchMode のときに通らなくなるだけである。
|
|
61
|
+
* 以下に並ぶ挙動は、担当を移したことで必要になった後始末にあたる。
|
|
62
|
+
*
|
|
63
|
+
* 渡すと Select2 は次のように振る舞う。
|
|
64
|
+
*
|
|
65
|
+
* - 検索語が入るまで候補を描画せず、選択済みだけを描画する。
|
|
66
|
+
* showDefaultOptions を渡すと、検索前も children を描画する
|
|
67
|
+
* - 内部フィルタをかけず、親が絞り込んだ children をそのまま描画する
|
|
68
|
+
* - isLoading のあいだはローディングを表示する。
|
|
69
|
+
* 検索前に候補を描画しない構成では、選択済みの表示を優先してローディングを出さない
|
|
70
|
+
*
|
|
71
|
+
* 検索窓がないと検索語を入力できないため、searchable の指定に関わらず検索窓を出す。
|
|
72
|
+
* showOptionsOnlyWhenSearching を同時に渡した場合、そちらは無視される。
|
|
73
|
+
*
|
|
74
|
+
* 選択済みの option は children に含めて渡す。
|
|
75
|
+
* Select2 は children からラベルを引くので、検索結果だけに差し替えると
|
|
76
|
+
* トリガーの表示ラベルと複数選択時のタグが消える。
|
|
77
|
+
* 複数選択では、適用前の保留中の選択も onTempChange で受け取って children に残す。
|
|
78
|
+
*
|
|
79
|
+
* その裏返しで、Select2 は children のどれが検索結果でどれが選択済みかを区別できない。
|
|
80
|
+
* 検索が 0 件だったときは hasNoResults を渡す。渡さないと選択済みが検索結果として並ぶ。
|
|
81
|
+
*/
|
|
82
|
+
export type Select2SearchMode = {
|
|
83
|
+
/**
|
|
84
|
+
* 検索語が変わったとき、デフォルト候補が必要になったとき、検索が打ち切られたときに呼ばれる。
|
|
85
|
+
* どれかは reason で渡す。searchTerm は前後の空白を落とした検索語で、search 以外では常に空。
|
|
86
|
+
*
|
|
87
|
+
* - search: 検索語が入力された。同じ検索語は続けて渡らない
|
|
88
|
+
* - default: showDefaultOptions のとき、開いた時点と検索語を消した時点で渡る
|
|
89
|
+
* - abort: 閉じた時点とアンマウントされた時点で渡る。
|
|
90
|
+
* showDefaultOptions を渡していなければ、検索語を消した時点でも渡る。
|
|
91
|
+
* 親に何も頼んでいなければ渡らない
|
|
92
|
+
*
|
|
93
|
+
* 親は reason で分岐する。search と default は取得して children を差し替える。
|
|
94
|
+
* abort は取得せず、保留中の debounce と進行中のリクエストを捨てて isLoading を false に戻す。
|
|
95
|
+
*
|
|
96
|
+
* debounce と、応答が前後して返ったときの順序の保証は親側で行う。
|
|
97
|
+
*/
|
|
98
|
+
onSearchChange: (searchTerm: string, reason: Select2SearchReason) => void;
|
|
99
|
+
/**
|
|
100
|
+
* 検索結果を取得中かどうか。
|
|
101
|
+
* true の間は候補の代わりにローディングを表示する。
|
|
102
|
+
* ただし検索前に候補を描画しない構成では、検索語が空のあいだは
|
|
103
|
+
* 選択済みの表示を優先し、true でもローディングを出さない。
|
|
104
|
+
* showDefaultOptions を渡した場合は、検索前もローディングを表示する。
|
|
105
|
+
*
|
|
106
|
+
* abort を受けたら false に戻す。
|
|
107
|
+
* 戻さないと、閉じた時点の取得が返らないまま、次に開いてもローディングのままになる。
|
|
108
|
+
* @default false
|
|
109
|
+
*/
|
|
110
|
+
isLoading?: boolean;
|
|
111
|
+
/**
|
|
112
|
+
* 直近の検索が 0 件だったかどうか。
|
|
113
|
+
* true の間は候補の代わりに noResultsMessage を表示する。
|
|
114
|
+
* 検索語が空のときは見ない。isLoading が true のときはローディングが優先される。
|
|
115
|
+
*
|
|
116
|
+
* children に残した選択済みは検索結果と区別がつかないため、
|
|
117
|
+
* 0 件の判定は親から受け取る。
|
|
118
|
+
* search の応答で結果の有無に合わせて更新し、default と abort では false に戻す。
|
|
119
|
+
* @default false
|
|
120
|
+
*/
|
|
121
|
+
hasNoResults?: boolean;
|
|
122
|
+
/**
|
|
123
|
+
* 検索語が空のときも children を候補として描画する。
|
|
124
|
+
* 最近使った項目やおすすめを検索前に出したいときに使う。
|
|
125
|
+
* これを渡したときだけ、reason が default の通知が届く。
|
|
126
|
+
* 開いた時点と検索語を消した時点で届くので、親はデフォルト候補を返す。
|
|
127
|
+
*
|
|
128
|
+
* 候補の件数は親が絞る。
|
|
129
|
+
* 全件を返すと、開いた瞬間に候補がすべてマウントされる状態に戻る。
|
|
130
|
+
* @default false
|
|
131
|
+
*/
|
|
132
|
+
showDefaultOptions?: boolean;
|
|
133
|
+
};
|
|
36
134
|
export type Select2StyleProps = {
|
|
37
135
|
theme: Theme;
|
|
38
136
|
$size: Select2Size;
|
|
@@ -111,10 +209,20 @@ export type Select2Props = {
|
|
|
111
209
|
* 候補が大量にある場合に、開いた瞬間の全件描画を避けるためのオプション。
|
|
112
210
|
* searchable=true が前提(検索窓がないと候補を表示できないため)。
|
|
113
211
|
* @default false
|
|
212
|
+
* @deprecated searchMode を使う。
|
|
213
|
+
* このオプションは描画を遅らせるだけで、絞り込みはローカルのまま残る。
|
|
214
|
+
* そのため緩い検索語では、一致した候補が件数の上限なく描画される。
|
|
215
|
+
* searchMode は遅延描画を含んだうえで、絞り込み自体を親に任せられる。
|
|
114
216
|
*/
|
|
115
217
|
showOptionsOnlyWhenSearching?: boolean;
|
|
116
218
|
/**
|
|
117
|
-
*
|
|
219
|
+
* サーバー検索(非同期サジェスト)を有効にする。
|
|
220
|
+
* 詳細は Select2SearchMode を参照。
|
|
221
|
+
*/
|
|
222
|
+
searchMode?: Select2SearchMode;
|
|
223
|
+
/**
|
|
224
|
+
* 検索前に描画する候補がないときに表示する案内文言
|
|
225
|
+
* showOptionsOnlyWhenSearching と searchMode のどちらでも使われる。
|
|
118
226
|
* @default "キーワードを入力してください"
|
|
119
227
|
*/
|
|
120
228
|
searchPromptMessage?: string;
|
|
@@ -134,6 +242,8 @@ export type Select2Props = {
|
|
|
134
242
|
commitOnSelect?: boolean;
|
|
135
243
|
/**
|
|
136
244
|
* 全選択・全クリアボタンを表示するかどうか (multiple=trueの場合のみ有効)
|
|
245
|
+
* 全選択の対象は描画している候補である。
|
|
246
|
+
* searchMode では親が返した候補だけが対象になり、サーバー側で一致する全件は選ばない。
|
|
137
247
|
* @default false
|
|
138
248
|
*/
|
|
139
249
|
showBulkActions?: boolean;
|