@squadbase/vantage 0.0.1 → 0.1.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.
Files changed (167) hide show
  1. package/README.md +21 -4
  2. package/dist/chunk-A2UUGASH.js +12 -0
  3. package/dist/chunk-A2UUGASH.js.map +1 -0
  4. package/dist/{chunk-ZGDU5YLH.js → chunk-PRFBSQA4.js} +9 -5
  5. package/dist/chunk-PRFBSQA4.js.map +1 -0
  6. package/dist/chunk-WQZYXXQW.js +2249 -0
  7. package/dist/chunk-WQZYXXQW.js.map +1 -0
  8. package/dist/{chunk-73J5ZD4C.js → chunk-YLAB6UQS.js} +17 -3
  9. package/dist/chunk-YLAB6UQS.js.map +1 -0
  10. package/dist/cli.js +607 -36
  11. package/dist/cli.js.map +1 -1
  12. package/dist/components/index.d.ts +554 -0
  13. package/dist/components/index.js +1983 -0
  14. package/dist/components/index.js.map +1 -0
  15. package/dist/markdown/index.d.ts +9 -0
  16. package/dist/markdown/index.js +26 -0
  17. package/dist/markdown/index.js.map +1 -0
  18. package/dist/query/index.d.ts +27 -1
  19. package/dist/query/index.js +18 -0
  20. package/dist/query/index.js.map +1 -1
  21. package/dist/server/node.js +6 -1
  22. package/dist/server/node.js.map +1 -1
  23. package/dist/ui/index.d.ts +316 -200
  24. package/dist/ui/index.js +566 -511
  25. package/dist/ui/index.js.map +1 -1
  26. package/dist/vite/index.js +2 -2
  27. package/docs/en/agent-skills.md +89 -0
  28. package/docs/en/api-and-server.md +84 -0
  29. package/docs/en/build-and-deploy.md +280 -0
  30. package/docs/en/cli-reference.md +311 -0
  31. package/docs/en/components.md +233 -0
  32. package/docs/en/data-fetching.md +78 -0
  33. package/docs/en/environment-variables.md +69 -0
  34. package/docs/en/getting-started.md +95 -0
  35. package/docs/en/index.md +65 -0
  36. package/docs/en/markdown/markdown-renderer.md +44 -0
  37. package/docs/en/pages-and-metadata.md +56 -0
  38. package/docs/en/parts/app-shell.md +54 -0
  39. package/docs/en/parts/dashboard-card.md +64 -0
  40. package/docs/en/parts/data-table.md +86 -0
  41. package/docs/en/parts/date-range-picker.md +41 -0
  42. package/docs/en/parts/echart.md +53 -0
  43. package/docs/en/parts/filter-bar.md +66 -0
  44. package/docs/en/parts/funnel-steps.md +33 -0
  45. package/docs/en/parts/metric-value.md +23 -0
  46. package/docs/en/parts/multi-select.md +27 -0
  47. package/docs/en/parts/page-shell.md +45 -0
  48. package/docs/en/parts/searchable-select.md +47 -0
  49. package/docs/en/parts/section-header.md +20 -0
  50. package/docs/en/parts/segmented-control.md +25 -0
  51. package/docs/en/parts/status-badge.md +44 -0
  52. package/docs/en/parts/trend-indicator.md +26 -0
  53. package/docs/en/routing.md +95 -0
  54. package/docs/en/ui/accordion.md +36 -0
  55. package/docs/en/ui/alert.md +31 -0
  56. package/docs/en/ui/badge.md +23 -0
  57. package/docs/en/ui/breadcrumb.md +38 -0
  58. package/docs/en/ui/button.md +39 -0
  59. package/docs/en/ui/calendar.md +28 -0
  60. package/docs/en/ui/card.md +35 -0
  61. package/docs/en/ui/checkbox.md +34 -0
  62. package/docs/en/ui/cn.md +34 -0
  63. package/docs/en/ui/collapsible.md +21 -0
  64. package/docs/en/ui/command.md +37 -0
  65. package/docs/en/ui/dialog.md +52 -0
  66. package/docs/en/ui/dropdown-menu.md +50 -0
  67. package/docs/en/ui/empty.md +22 -0
  68. package/docs/en/ui/error-state.md +50 -0
  69. package/docs/en/ui/input-group.md +30 -0
  70. package/docs/en/ui/input.md +28 -0
  71. package/docs/en/ui/label.md +19 -0
  72. package/docs/en/ui/loading.md +19 -0
  73. package/docs/en/ui/popover.md +34 -0
  74. package/docs/en/ui/progress.md +28 -0
  75. package/docs/en/ui/scroll-area.md +23 -0
  76. package/docs/en/ui/select.md +63 -0
  77. package/docs/en/ui/separator.md +15 -0
  78. package/docs/en/ui/sheet.md +28 -0
  79. package/docs/en/ui/sidebar.md +92 -0
  80. package/docs/en/ui/skeleton.md +16 -0
  81. package/docs/en/ui/slider.md +21 -0
  82. package/docs/en/ui/spinner.md +14 -0
  83. package/docs/en/ui/switch.md +19 -0
  84. package/docs/en/ui/table.md +24 -0
  85. package/docs/en/ui/tabs.md +23 -0
  86. package/docs/en/ui/textarea.md +15 -0
  87. package/docs/en/ui/toggle-group.md +26 -0
  88. package/docs/en/ui/toggle.md +19 -0
  89. package/docs/en/ui/tooltip.md +22 -0
  90. package/docs/en/ui/use-is-mobile.md +18 -0
  91. package/docs/en/ui-and-theming.md +95 -0
  92. package/docs/index.json +1306 -0
  93. package/docs/ja/agent-skills.md +87 -0
  94. package/docs/ja/api-and-server.md +84 -0
  95. package/docs/ja/build-and-deploy.md +279 -0
  96. package/docs/ja/cli-reference.md +305 -0
  97. package/docs/ja/components.md +229 -0
  98. package/docs/ja/data-fetching.md +78 -0
  99. package/docs/ja/environment-variables.md +68 -0
  100. package/docs/ja/getting-started.md +95 -0
  101. package/docs/ja/index.md +65 -0
  102. package/docs/ja/markdown/markdown-renderer.md +43 -0
  103. package/docs/ja/pages-and-metadata.md +56 -0
  104. package/docs/ja/parts/app-shell.md +54 -0
  105. package/docs/ja/parts/dashboard-card.md +64 -0
  106. package/docs/ja/parts/data-table.md +85 -0
  107. package/docs/ja/parts/date-range-picker.md +41 -0
  108. package/docs/ja/parts/echart.md +52 -0
  109. package/docs/ja/parts/filter-bar.md +64 -0
  110. package/docs/ja/parts/funnel-steps.md +33 -0
  111. package/docs/ja/parts/metric-value.md +25 -0
  112. package/docs/ja/parts/multi-select.md +27 -0
  113. package/docs/ja/parts/page-shell.md +45 -0
  114. package/docs/ja/parts/searchable-select.md +47 -0
  115. package/docs/ja/parts/section-header.md +20 -0
  116. package/docs/ja/parts/segmented-control.md +26 -0
  117. package/docs/ja/parts/status-badge.md +44 -0
  118. package/docs/ja/parts/trend-indicator.md +26 -0
  119. package/docs/ja/routing.md +95 -0
  120. package/docs/ja/ui/accordion.md +37 -0
  121. package/docs/ja/ui/alert.md +31 -0
  122. package/docs/ja/ui/badge.md +23 -0
  123. package/docs/ja/ui/breadcrumb.md +38 -0
  124. package/docs/ja/ui/button.md +39 -0
  125. package/docs/ja/ui/calendar.md +28 -0
  126. package/docs/ja/ui/card.md +35 -0
  127. package/docs/ja/ui/checkbox.md +34 -0
  128. package/docs/ja/ui/cn.md +34 -0
  129. package/docs/ja/ui/collapsible.md +21 -0
  130. package/docs/ja/ui/command.md +36 -0
  131. package/docs/ja/ui/dialog.md +51 -0
  132. package/docs/ja/ui/dropdown-menu.md +50 -0
  133. package/docs/ja/ui/empty.md +22 -0
  134. package/docs/ja/ui/error-state.md +50 -0
  135. package/docs/ja/ui/input-group.md +30 -0
  136. package/docs/ja/ui/input.md +28 -0
  137. package/docs/ja/ui/label.md +19 -0
  138. package/docs/ja/ui/loading.md +19 -0
  139. package/docs/ja/ui/popover.md +34 -0
  140. package/docs/ja/ui/progress.md +28 -0
  141. package/docs/ja/ui/scroll-area.md +24 -0
  142. package/docs/ja/ui/select.md +64 -0
  143. package/docs/ja/ui/separator.md +15 -0
  144. package/docs/ja/ui/sheet.md +28 -0
  145. package/docs/ja/ui/sidebar.md +92 -0
  146. package/docs/ja/ui/skeleton.md +16 -0
  147. package/docs/ja/ui/slider.md +21 -0
  148. package/docs/ja/ui/spinner.md +14 -0
  149. package/docs/ja/ui/switch.md +19 -0
  150. package/docs/ja/ui/table.md +24 -0
  151. package/docs/ja/ui/tabs.md +24 -0
  152. package/docs/ja/ui/textarea.md +15 -0
  153. package/docs/ja/ui/toggle-group.md +27 -0
  154. package/docs/ja/ui/toggle.md +19 -0
  155. package/docs/ja/ui/tooltip.md +22 -0
  156. package/docs/ja/ui/use-is-mobile.md +18 -0
  157. package/docs/ja/ui-and-theming.md +95 -0
  158. package/package.json +29 -4
  159. package/registry/blocks/sales-overview.tsx +43 -19
  160. package/registry/ui/data-table.tsx +702 -102
  161. package/skills/vantage-add-feature/SKILL.md +150 -0
  162. package/skills/vantage-app/SKILL.md +258 -0
  163. package/skills/vantage-pitfalls/SKILL.md +115 -0
  164. package/templates/AGENTS.md +268 -0
  165. package/theme.css +178 -40
  166. package/dist/chunk-73J5ZD4C.js.map +0 -1
  167. package/dist/chunk-ZGDU5YLH.js.map +0 -1
@@ -0,0 +1,1306 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "generatedFrom": "docs/content",
4
+ "docs": [
5
+ {
6
+ "slug": "index",
7
+ "lang": "ja",
8
+ "section": "guide",
9
+ "sectionTitle": "ガイド",
10
+ "title": "Vantage とは",
11
+ "description": "設定ファイル不要(config-free)な React ダッシュボードフレームワーク。書くのは index.tsx だけ。",
12
+ "file": "ja/index.md",
13
+ "order": -1
14
+ },
15
+ {
16
+ "slug": "getting-started",
17
+ "lang": "ja",
18
+ "section": "guide",
19
+ "sectionTitle": "ガイド",
20
+ "title": "はじめに",
21
+ "description": "インストールから最初の Vantage アプリを起動するまで。",
22
+ "file": "ja/getting-started.md",
23
+ "order": 0
24
+ },
25
+ {
26
+ "slug": "routing",
27
+ "lang": "ja",
28
+ "section": "guide",
29
+ "sectionTitle": "ガイド",
30
+ "title": "ファイルベースルーティング",
31
+ "description": "ファイルを置くだけでルートが生まれる。ページ・レイアウト・動的パラメータ・404/error の規約。",
32
+ "file": "ja/routing.md",
33
+ "order": 1
34
+ },
35
+ {
36
+ "slug": "pages-and-metadata",
37
+ "lang": "ja",
38
+ "section": "guide",
39
+ "sectionTitle": "ガイド",
40
+ "title": "ページと definePage",
41
+ "description": "ページの唯一の要件は default export。definePage でタイトルと説明を静的に付与する。",
42
+ "file": "ja/pages-and-metadata.md",
43
+ "order": 2
44
+ },
45
+ {
46
+ "slug": "data-fetching",
47
+ "lang": "ja",
48
+ "section": "guide",
49
+ "sectionTitle": "ガイド",
50
+ "title": "データ取得",
51
+ "description": "管理された TanStack Query(useQuery)でサーバー状態を扱う。",
52
+ "file": "ja/data-fetching.md",
53
+ "order": 3
54
+ },
55
+ {
56
+ "slug": "api-and-server",
57
+ "lang": "ja",
58
+ "section": "guide",
59
+ "sectionTitle": "ガイド",
60
+ "title": "API とサーバー",
61
+ "description": "server/ を足すと API が有効になる。ApiContext・HttpError・HTTP メソッドの規約。",
62
+ "file": "ja/api-and-server.md",
63
+ "order": 4
64
+ },
65
+ {
66
+ "slug": "environment-variables",
67
+ "lang": "ja",
68
+ "section": "guide",
69
+ "sectionTitle": "ガイド",
70
+ "title": "環境変数",
71
+ "description": "PUBLIC_ 接頭辞の env だけがクライアントに届く。シークレットはサーバーの env から読む。",
72
+ "file": "ja/environment-variables.md",
73
+ "order": 5
74
+ },
75
+ {
76
+ "slug": "ui-and-theming",
77
+ "lang": "ja",
78
+ "section": "guide",
79
+ "sectionTitle": "ガイド",
80
+ "title": "UI とテーマ",
81
+ "description": "組み込み UI キットを import する。styles.css でテーマトークンを上書きする。add でソースをコピーする。",
82
+ "file": "ja/ui-and-theming.md",
83
+ "order": 6
84
+ },
85
+ {
86
+ "slug": "build-and-deploy",
87
+ "lang": "ja",
88
+ "section": "guide",
89
+ "sectionTitle": "ガイド",
90
+ "title": "ビルドとデプロイ",
91
+ "description": "dist/ の中身と vantage-manifest.json。同一オリジン配信と、フロント/サーバーを別オリジンに分けるデプロイ(S3+CloudFront ⇄ Lambda など)。",
92
+ "file": "ja/build-and-deploy.md",
93
+ "order": 7
94
+ },
95
+ {
96
+ "slug": "cli-reference",
97
+ "lang": "ja",
98
+ "section": "guide",
99
+ "sectionTitle": "ガイド",
100
+ "title": "CLI リファレンス",
101
+ "description": "vantage の全コマンド。dev・build・preview・check・routes・add・docs・search・doctor・upgrade。",
102
+ "file": "ja/cli-reference.md",
103
+ "order": 8
104
+ },
105
+ {
106
+ "slug": "agent-skills",
107
+ "lang": "ja",
108
+ "section": "guide",
109
+ "sectionTitle": "ガイド",
110
+ "title": "エージェントと Skills",
111
+ "description": "Vantage に同梱された Claude Code の Agent Skills。vantage add skill でアプリの .claude/skills/ に配置し、エージェントに手順を伴うワークフローを教える。",
112
+ "file": "ja/agent-skills.md",
113
+ "order": 9
114
+ },
115
+ {
116
+ "slug": "components",
117
+ "lang": "ja",
118
+ "section": "components",
119
+ "sectionTitle": "コンポーネント",
120
+ "title": "コンポーネント",
121
+ "description": "Vantage に同梱される shadcn/ui (Base UI) キットと、ダッシュボード用の複合コンポーネントのリファレンス。",
122
+ "file": "ja/components.md",
123
+ "order": -1
124
+ },
125
+ {
126
+ "slug": "ui/accordion",
127
+ "lang": "ja",
128
+ "section": "components/ui",
129
+ "sectionTitle": "@squadbase/vantage/ui",
130
+ "title": "Accordion",
131
+ "description": "開閉する見出しの縦積み。既定では 1 つだけ開く。",
132
+ "file": "ja/ui/accordion.md",
133
+ "order": 0
134
+ },
135
+ {
136
+ "slug": "ui/alert",
137
+ "lang": "ja",
138
+ "section": "components/ui",
139
+ "sectionTitle": "@squadbase/vantage/ui",
140
+ "title": "Alert",
141
+ "description": "ページ内に置く通知。中身は表示したまま注意を促す。",
142
+ "file": "ja/ui/alert.md",
143
+ "order": 1
144
+ },
145
+ {
146
+ "slug": "ui/badge",
147
+ "lang": "ja",
148
+ "section": "components/ui",
149
+ "sectionTitle": "@squadbase/vantage/ui",
150
+ "title": "Badge",
151
+ "description": "小さなラベル。件数・状態・タグに。",
152
+ "file": "ja/ui/badge.md",
153
+ "order": 2
154
+ },
155
+ {
156
+ "slug": "ui/breadcrumb",
157
+ "lang": "ja",
158
+ "section": "components/ui",
159
+ "sectionTitle": "@squadbase/vantage/ui",
160
+ "title": "Breadcrumb",
161
+ "description": "階層を示すパンくずリスト。",
162
+ "file": "ja/ui/breadcrumb.md",
163
+ "order": 3
164
+ },
165
+ {
166
+ "slug": "ui/button",
167
+ "lang": "ja",
168
+ "section": "components/ui",
169
+ "sectionTitle": "@squadbase/vantage/ui",
170
+ "title": "Button",
171
+ "description": "6 つの variant と 8 つの size を持つボタン。",
172
+ "file": "ja/ui/button.md",
173
+ "order": 4
174
+ },
175
+ {
176
+ "slug": "ui/calendar",
177
+ "lang": "ja",
178
+ "section": "components/ui",
179
+ "sectionTitle": "@squadbase/vantage/ui",
180
+ "title": "Calendar",
181
+ "description": "react-day-picker ベースの日付カレンダー。",
182
+ "file": "ja/ui/calendar.md",
183
+ "order": 5
184
+ },
185
+ {
186
+ "slug": "ui/card",
187
+ "lang": "ja",
188
+ "section": "components/ui",
189
+ "sectionTitle": "@squadbase/vantage/ui",
190
+ "title": "Card",
191
+ "description": "汎用のカード。ダッシュボードのタイルには DashboardCard を。",
192
+ "file": "ja/ui/card.md",
193
+ "order": 6
194
+ },
195
+ {
196
+ "slug": "ui/checkbox",
197
+ "lang": "ja",
198
+ "section": "components/ui",
199
+ "sectionTitle": "@squadbase/vantage/ui",
200
+ "title": "Checkbox",
201
+ "description": "チェックボックス。中間状態は indeterminate プロップで。",
202
+ "file": "ja/ui/checkbox.md",
203
+ "order": 7
204
+ },
205
+ {
206
+ "slug": "ui/collapsible",
207
+ "lang": "ja",
208
+ "section": "components/ui",
209
+ "sectionTitle": "@squadbase/vantage/ui",
210
+ "title": "Collapsible",
211
+ "description": "単独の折りたたみ。スタイルは付かない。",
212
+ "file": "ja/ui/collapsible.md",
213
+ "order": 8
214
+ },
215
+ {
216
+ "slug": "ui/command",
217
+ "lang": "ja",
218
+ "section": "components/ui",
219
+ "sectionTitle": "@squadbase/vantage/ui",
220
+ "title": "Command",
221
+ "description": "絞り込み付きのコマンドリスト。⌘K パレットの土台。",
222
+ "file": "ja/ui/command.md",
223
+ "order": 9
224
+ },
225
+ {
226
+ "slug": "ui/dialog",
227
+ "lang": "ja",
228
+ "section": "components/ui",
229
+ "sectionTitle": "@squadbase/vantage/ui",
230
+ "title": "Dialog",
231
+ "description": "モーダルダイアログ。",
232
+ "file": "ja/ui/dialog.md",
233
+ "order": 10
234
+ },
235
+ {
236
+ "slug": "ui/dropdown-menu",
237
+ "lang": "ja",
238
+ "section": "components/ui",
239
+ "sectionTitle": "@squadbase/vantage/ui",
240
+ "title": "DropdownMenu",
241
+ "description": "ボタンから開くメニュー。チェック項目・ラジオ・サブメニュー対応。",
242
+ "file": "ja/ui/dropdown-menu.md",
243
+ "order": 11
244
+ },
245
+ {
246
+ "slug": "ui/empty",
247
+ "lang": "ja",
248
+ "section": "components/ui",
249
+ "sectionTitle": "@squadbase/vantage/ui",
250
+ "title": "Empty",
251
+ "description": "データが 0 件のときの表示。",
252
+ "file": "ja/ui/empty.md",
253
+ "order": 12
254
+ },
255
+ {
256
+ "slug": "ui/error-state",
257
+ "lang": "ja",
258
+ "section": "components/ui",
259
+ "sectionTitle": "@squadbase/vantage/ui",
260
+ "title": "ErrorState",
261
+ "description": "失敗したときの表示。",
262
+ "file": "ja/ui/error-state.md",
263
+ "order": 13
264
+ },
265
+ {
266
+ "slug": "ui/input",
267
+ "lang": "ja",
268
+ "section": "components/ui",
269
+ "sectionTitle": "@squadbase/vantage/ui",
270
+ "title": "Input",
271
+ "description": "1 行のテキスト入力。",
272
+ "file": "ja/ui/input.md",
273
+ "order": 14
274
+ },
275
+ {
276
+ "slug": "ui/input-group",
277
+ "lang": "ja",
278
+ "section": "components/ui",
279
+ "sectionTitle": "@squadbase/vantage/ui",
280
+ "title": "InputGroup",
281
+ "description": "入力欄の前後にアイコン・テキスト・ボタンを添える。",
282
+ "file": "ja/ui/input-group.md",
283
+ "order": 15
284
+ },
285
+ {
286
+ "slug": "ui/label",
287
+ "lang": "ja",
288
+ "section": "components/ui",
289
+ "sectionTitle": "@squadbase/vantage/ui",
290
+ "title": "Label",
291
+ "description": "フォーム項目のラベル。",
292
+ "file": "ja/ui/label.md",
293
+ "order": 16
294
+ },
295
+ {
296
+ "slug": "ui/loading",
297
+ "lang": "ja",
298
+ "section": "components/ui",
299
+ "sectionTitle": "@squadbase/vantage/ui",
300
+ "title": "Loading",
301
+ "description": "ラベル付きの中央寄せスピナー。",
302
+ "file": "ja/ui/loading.md",
303
+ "order": 17
304
+ },
305
+ {
306
+ "slug": "ui/popover",
307
+ "lang": "ja",
308
+ "section": "components/ui",
309
+ "sectionTitle": "@squadbase/vantage/ui",
310
+ "title": "Popover",
311
+ "description": "トリガーに寄り添う吹き出し。",
312
+ "file": "ja/ui/popover.md",
313
+ "order": 18
314
+ },
315
+ {
316
+ "slug": "ui/progress",
317
+ "lang": "ja",
318
+ "section": "components/ui",
319
+ "sectionTitle": "@squadbase/vantage/ui",
320
+ "title": "Progress",
321
+ "description": "進捗バー。ラベルと値の表示を組める。",
322
+ "file": "ja/ui/progress.md",
323
+ "order": 19
324
+ },
325
+ {
326
+ "slug": "ui/scroll-area",
327
+ "lang": "ja",
328
+ "section": "components/ui",
329
+ "sectionTitle": "@squadbase/vantage/ui",
330
+ "title": "ScrollArea",
331
+ "description": "OS 依存しないスクロールバーを持つ領域。",
332
+ "file": "ja/ui/scroll-area.md",
333
+ "order": 20
334
+ },
335
+ {
336
+ "slug": "ui/select",
337
+ "lang": "ja",
338
+ "section": "components/ui",
339
+ "sectionTitle": "@squadbase/vantage/ui",
340
+ "title": "Select",
341
+ "description": "単一選択のセレクト。onValueChange は null を渡しうる。",
342
+ "file": "ja/ui/select.md",
343
+ "order": 21
344
+ },
345
+ {
346
+ "slug": "ui/separator",
347
+ "lang": "ja",
348
+ "section": "components/ui",
349
+ "sectionTitle": "@squadbase/vantage/ui",
350
+ "title": "Separator",
351
+ "description": "1 本の区切り線。",
352
+ "file": "ja/ui/separator.md",
353
+ "order": 22
354
+ },
355
+ {
356
+ "slug": "ui/sheet",
357
+ "lang": "ja",
358
+ "section": "components/ui",
359
+ "sectionTitle": "@squadbase/vantage/ui",
360
+ "title": "Sheet",
361
+ "description": "画面の端から出るパネル。",
362
+ "file": "ja/ui/sheet.md",
363
+ "order": 23
364
+ },
365
+ {
366
+ "slug": "ui/sidebar",
367
+ "lang": "ja",
368
+ "section": "components/ui",
369
+ "sectionTitle": "@squadbase/vantage/ui",
370
+ "title": "Sidebar",
371
+ "description": "折りたためるアプリのサイドバー一式。",
372
+ "file": "ja/ui/sidebar.md",
373
+ "order": 24
374
+ },
375
+ {
376
+ "slug": "ui/skeleton",
377
+ "lang": "ja",
378
+ "section": "components/ui",
379
+ "sectionTitle": "@squadbase/vantage/ui",
380
+ "title": "Skeleton",
381
+ "description": "中身と同じ形をした読み込み中の箱。",
382
+ "file": "ja/ui/skeleton.md",
383
+ "order": 25
384
+ },
385
+ {
386
+ "slug": "ui/slider",
387
+ "lang": "ja",
388
+ "section": "components/ui",
389
+ "sectionTitle": "@squadbase/vantage/ui",
390
+ "title": "Slider",
391
+ "description": "つまみで数値を選ぶ。範囲指定にも対応。",
392
+ "file": "ja/ui/slider.md",
393
+ "order": 26
394
+ },
395
+ {
396
+ "slug": "ui/spinner",
397
+ "lang": "ja",
398
+ "section": "components/ui",
399
+ "sectionTitle": "@squadbase/vantage/ui",
400
+ "title": "Spinner",
401
+ "description": "いちばん小さい待機表示。",
402
+ "file": "ja/ui/spinner.md",
403
+ "order": 27
404
+ },
405
+ {
406
+ "slug": "ui/switch",
407
+ "lang": "ja",
408
+ "section": "components/ui",
409
+ "sectionTitle": "@squadbase/vantage/ui",
410
+ "title": "Switch",
411
+ "description": "即時に効く設定のトグル。",
412
+ "file": "ja/ui/switch.md",
413
+ "order": 28
414
+ },
415
+ {
416
+ "slug": "ui/table",
417
+ "lang": "ja",
418
+ "section": "components/ui",
419
+ "sectionTitle": "@squadbase/vantage/ui",
420
+ "title": "Table",
421
+ "description": "素の表プリミティブ。並べ替えや検索が要るなら DataTable を。",
422
+ "file": "ja/ui/table.md",
423
+ "order": 29
424
+ },
425
+ {
426
+ "slug": "ui/tabs",
427
+ "lang": "ja",
428
+ "section": "components/ui",
429
+ "sectionTitle": "@squadbase/vantage/ui",
430
+ "title": "Tabs",
431
+ "description": "表示を切り替えるタブ。",
432
+ "file": "ja/ui/tabs.md",
433
+ "order": 30
434
+ },
435
+ {
436
+ "slug": "ui/textarea",
437
+ "lang": "ja",
438
+ "section": "components/ui",
439
+ "sectionTitle": "@squadbase/vantage/ui",
440
+ "title": "Textarea",
441
+ "description": "複数行のテキスト入力。",
442
+ "file": "ja/ui/textarea.md",
443
+ "order": 31
444
+ },
445
+ {
446
+ "slug": "ui/toggle",
447
+ "lang": "ja",
448
+ "section": "components/ui",
449
+ "sectionTitle": "@squadbase/vantage/ui",
450
+ "title": "Toggle",
451
+ "description": "押した状態を保つボタン。",
452
+ "file": "ja/ui/toggle.md",
453
+ "order": 32
454
+ },
455
+ {
456
+ "slug": "ui/toggle-group",
457
+ "lang": "ja",
458
+ "section": "components/ui",
459
+ "sectionTitle": "@squadbase/vantage/ui",
460
+ "title": "ToggleGroup",
461
+ "description": "トグルの束。value は常に配列。",
462
+ "file": "ja/ui/toggle-group.md",
463
+ "order": 33
464
+ },
465
+ {
466
+ "slug": "ui/tooltip",
467
+ "lang": "ja",
468
+ "section": "components/ui",
469
+ "sectionTitle": "@squadbase/vantage/ui",
470
+ "title": "Tooltip",
471
+ "description": "ホバーで出る短い説明。",
472
+ "file": "ja/ui/tooltip.md",
473
+ "order": 34
474
+ },
475
+ {
476
+ "slug": "ui/cn",
477
+ "lang": "ja",
478
+ "section": "components/ui",
479
+ "sectionTitle": "@squadbase/vantage/ui",
480
+ "title": "cn()",
481
+ "description": "条件付きでクラスを組み立て、競合を解決するヘルパー。",
482
+ "file": "ja/ui/cn.md",
483
+ "order": 35
484
+ },
485
+ {
486
+ "slug": "ui/use-is-mobile",
487
+ "lang": "ja",
488
+ "section": "components/ui",
489
+ "sectionTitle": "@squadbase/vantage/ui",
490
+ "title": "useIsMobile()",
491
+ "description": "画面幅が狭いかどうかを返すフック。",
492
+ "file": "ja/ui/use-is-mobile.md",
493
+ "order": 36
494
+ },
495
+ {
496
+ "slug": "parts/app-shell",
497
+ "lang": "ja",
498
+ "section": "components/parts",
499
+ "sectionTitle": "@squadbase/vantage/components",
500
+ "title": "AppShell",
501
+ "description": "ナビゲーション定義を渡すだけのアプリ枠。",
502
+ "file": "ja/parts/app-shell.md",
503
+ "order": 0
504
+ },
505
+ {
506
+ "slug": "parts/dashboard-card",
507
+ "lang": "ja",
508
+ "section": "components/parts",
509
+ "sectionTitle": "@squadbase/vantage/components",
510
+ "title": "DashboardCard",
511
+ "description": "ダッシュボードのタイル。プリセットとスケルトン付き。",
512
+ "file": "ja/parts/dashboard-card.md",
513
+ "order": 1
514
+ },
515
+ {
516
+ "slug": "parts/data-table",
517
+ "lang": "ja",
518
+ "section": "components/parts",
519
+ "sectionTitle": "@squadbase/vantage/components",
520
+ "title": "DataTable",
521
+ "description": "TanStack Table ベースの表。並べ替え・検索・ページング・選択。",
522
+ "file": "ja/parts/data-table.md",
523
+ "order": 2
524
+ },
525
+ {
526
+ "slug": "parts/date-range-picker",
527
+ "lang": "ja",
528
+ "section": "components/parts",
529
+ "sectionTitle": "@squadbase/vantage/components",
530
+ "title": "DateRangePicker",
531
+ "description": "プリセット付きの期間選択。",
532
+ "file": "ja/parts/date-range-picker.md",
533
+ "order": 3
534
+ },
535
+ {
536
+ "slug": "parts/echart",
537
+ "lang": "ja",
538
+ "section": "components/parts",
539
+ "sectionTitle": "@squadbase/vantage/components",
540
+ "title": "EChart",
541
+ "description": "Apache ECharts の薄いラッパー。配色は option で指定する。",
542
+ "file": "ja/parts/echart.md",
543
+ "order": 4
544
+ },
545
+ {
546
+ "slug": "parts/filter-bar",
547
+ "lang": "ja",
548
+ "section": "components/parts",
549
+ "sectionTitle": "@squadbase/vantage/components",
550
+ "title": "FilterBar",
551
+ "description": "フィルタ一式を 1 つの値オブジェクトで扱う行。",
552
+ "file": "ja/parts/filter-bar.md",
553
+ "order": 5
554
+ },
555
+ {
556
+ "slug": "parts/funnel-steps",
557
+ "lang": "ja",
558
+ "section": "components/parts",
559
+ "sectionTitle": "@squadbase/vantage/components",
560
+ "title": "FunnelSteps",
561
+ "description": "ファネルの各段を棒で示す。転換率も出せる。",
562
+ "file": "ja/parts/funnel-steps.md",
563
+ "order": 6
564
+ },
565
+ {
566
+ "slug": "parts/metric-value",
567
+ "lang": "ja",
568
+ "section": "components/parts",
569
+ "sectionTitle": "@squadbase/vantage/components",
570
+ "title": "MetricValue",
571
+ "description": "KPI の数値。単位は MetricUnit で。",
572
+ "file": "ja/parts/metric-value.md",
573
+ "order": 7
574
+ },
575
+ {
576
+ "slug": "parts/multi-select",
577
+ "lang": "ja",
578
+ "section": "components/parts",
579
+ "sectionTitle": "@squadbase/vantage/components",
580
+ "title": "MultiSelect",
581
+ "description": "検索できる複数選択。選択はチップで表示。",
582
+ "file": "ja/parts/multi-select.md",
583
+ "order": 8
584
+ },
585
+ {
586
+ "slug": "parts/page-shell",
587
+ "lang": "ja",
588
+ "section": "components/parts",
589
+ "sectionTitle": "@squadbase/vantage/components",
590
+ "title": "PageShell",
591
+ "description": "ヘッダー帯・サマリー・本文からなるページ枠。",
592
+ "file": "ja/parts/page-shell.md",
593
+ "order": 9
594
+ },
595
+ {
596
+ "slug": "parts/searchable-select",
597
+ "lang": "ja",
598
+ "section": "components/parts",
599
+ "sectionTitle": "@squadbase/vantage/components",
600
+ "title": "SearchableSelect",
601
+ "description": "検索できる単一選択。候補が多いときに。",
602
+ "file": "ja/parts/searchable-select.md",
603
+ "order": 10
604
+ },
605
+ {
606
+ "slug": "parts/section-header",
607
+ "lang": "ja",
608
+ "section": "components/parts",
609
+ "sectionTitle": "@squadbase/vantage/components",
610
+ "title": "SectionHeader",
611
+ "description": "セクションの見出しとアクション。",
612
+ "file": "ja/parts/section-header.md",
613
+ "order": 11
614
+ },
615
+ {
616
+ "slug": "parts/segmented-control",
617
+ "lang": "ja",
618
+ "section": "components/parts",
619
+ "sectionTitle": "@squadbase/vantage/components",
620
+ "title": "SegmentedControl",
621
+ "description": "単一選択のセグメント。ToggleGroup の配列を隠す。",
622
+ "file": "ja/parts/segmented-control.md",
623
+ "order": 12
624
+ },
625
+ {
626
+ "slug": "parts/status-badge",
627
+ "lang": "ja",
628
+ "section": "components/parts",
629
+ "sectionTitle": "@squadbase/vantage/components",
630
+ "title": "StatusBadge",
631
+ "description": "ドット付きのステータスバッジ。色は名前で決まる。",
632
+ "file": "ja/parts/status-badge.md",
633
+ "order": 13
634
+ },
635
+ {
636
+ "slug": "parts/trend-indicator",
637
+ "lang": "ja",
638
+ "section": "components/parts",
639
+ "sectionTitle": "@squadbase/vantage/components",
640
+ "title": "TrendIndicator",
641
+ "description": "増減の矢印と変化率。良し悪しは positiveIsGood で決まる。",
642
+ "file": "ja/parts/trend-indicator.md",
643
+ "order": 14
644
+ },
645
+ {
646
+ "slug": "markdown/markdown-renderer",
647
+ "lang": "ja",
648
+ "section": "components/markdown",
649
+ "sectionTitle": "@squadbase/vantage/markdown",
650
+ "title": "MarkdownRenderer",
651
+ "description": "Markdown を描画する。シンタックスハイライト込み。",
652
+ "file": "ja/markdown/markdown-renderer.md",
653
+ "order": 0
654
+ },
655
+ {
656
+ "slug": "index",
657
+ "lang": "en",
658
+ "section": "guide",
659
+ "sectionTitle": "Guide",
660
+ "title": "What is Vantage",
661
+ "description": "A config-free React dashboard framework. You only write index.tsx.",
662
+ "file": "en/index.md",
663
+ "order": -1
664
+ },
665
+ {
666
+ "slug": "getting-started",
667
+ "lang": "en",
668
+ "section": "guide",
669
+ "sectionTitle": "Guide",
670
+ "title": "Getting started",
671
+ "description": "From install to running your first Vantage app.",
672
+ "file": "en/getting-started.md",
673
+ "order": 0
674
+ },
675
+ {
676
+ "slug": "routing",
677
+ "lang": "en",
678
+ "section": "guide",
679
+ "sectionTitle": "Guide",
680
+ "title": "File-based routing",
681
+ "description": "Dropping a file creates a route. Conventions for pages, layouts, dynamic params, and 404/error.",
682
+ "file": "en/routing.md",
683
+ "order": 1
684
+ },
685
+ {
686
+ "slug": "pages-and-metadata",
687
+ "lang": "en",
688
+ "section": "guide",
689
+ "sectionTitle": "Guide",
690
+ "title": "Pages & definePage",
691
+ "description": "A page's only requirement is a default export. Use definePage to attach a static title and description.",
692
+ "file": "en/pages-and-metadata.md",
693
+ "order": 2
694
+ },
695
+ {
696
+ "slug": "data-fetching",
697
+ "lang": "en",
698
+ "section": "guide",
699
+ "sectionTitle": "Guide",
700
+ "title": "Data fetching",
701
+ "description": "Handle server state with a managed TanStack Query (useQuery).",
702
+ "file": "en/data-fetching.md",
703
+ "order": 3
704
+ },
705
+ {
706
+ "slug": "api-and-server",
707
+ "lang": "en",
708
+ "section": "guide",
709
+ "sectionTitle": "Guide",
710
+ "title": "API & server",
711
+ "description": "Adding server/ enables an API. Conventions for ApiContext, HttpError, and HTTP methods.",
712
+ "file": "en/api-and-server.md",
713
+ "order": 4
714
+ },
715
+ {
716
+ "slug": "environment-variables",
717
+ "lang": "en",
718
+ "section": "guide",
719
+ "sectionTitle": "Guide",
720
+ "title": "Environment variables",
721
+ "description": "Only PUBLIC_-prefixed env reaches the client. Read secrets from the server's env.",
722
+ "file": "en/environment-variables.md",
723
+ "order": 5
724
+ },
725
+ {
726
+ "slug": "ui-and-theming",
727
+ "lang": "en",
728
+ "section": "guide",
729
+ "sectionTitle": "Guide",
730
+ "title": "UI & theming",
731
+ "description": "Import the built-in UI kit. Override theme tokens in styles.css. Copy sources with add.",
732
+ "file": "en/ui-and-theming.md",
733
+ "order": 6
734
+ },
735
+ {
736
+ "slug": "build-and-deploy",
737
+ "lang": "en",
738
+ "section": "guide",
739
+ "sectionTitle": "Guide",
740
+ "title": "Build & deploy",
741
+ "description": "What's in dist/ and vantage-manifest.json. Same-origin serving, and splitting the client and server across origins (S3+CloudFront ⇄ Lambda, etc.).",
742
+ "file": "en/build-and-deploy.md",
743
+ "order": 7
744
+ },
745
+ {
746
+ "slug": "cli-reference",
747
+ "lang": "en",
748
+ "section": "guide",
749
+ "sectionTitle": "Guide",
750
+ "title": "CLI reference",
751
+ "description": "Every vantage command. dev, build, preview, check, routes, add, docs, search, doctor, upgrade.",
752
+ "file": "en/cli-reference.md",
753
+ "order": 8
754
+ },
755
+ {
756
+ "slug": "agent-skills",
757
+ "lang": "en",
758
+ "section": "guide",
759
+ "sectionTitle": "Guide",
760
+ "title": "Agents and Skills",
761
+ "description": "The Claude Code agent skills bundled with Vantage. Place them into your app's .claude/skills/ with vantage add skill to teach agents step-by-step workflows.",
762
+ "file": "en/agent-skills.md",
763
+ "order": 9
764
+ },
765
+ {
766
+ "slug": "components",
767
+ "lang": "en",
768
+ "section": "components",
769
+ "sectionTitle": "Components",
770
+ "title": "Components",
771
+ "description": "Reference for the bundled shadcn/ui (Base UI) kit and the composite dashboard components.",
772
+ "file": "en/components.md",
773
+ "order": -1
774
+ },
775
+ {
776
+ "slug": "ui/accordion",
777
+ "lang": "en",
778
+ "section": "components/ui",
779
+ "sectionTitle": "@squadbase/vantage/ui",
780
+ "title": "Accordion",
781
+ "description": "A stack of headings that open and close. One at a time by default.",
782
+ "file": "en/ui/accordion.md",
783
+ "order": 0
784
+ },
785
+ {
786
+ "slug": "ui/alert",
787
+ "lang": "en",
788
+ "section": "components/ui",
789
+ "sectionTitle": "@squadbase/vantage/ui",
790
+ "title": "Alert",
791
+ "description": "An in-page notice that flags something while the content is still shown.",
792
+ "file": "en/ui/alert.md",
793
+ "order": 1
794
+ },
795
+ {
796
+ "slug": "ui/badge",
797
+ "lang": "en",
798
+ "section": "components/ui",
799
+ "sectionTitle": "@squadbase/vantage/ui",
800
+ "title": "Badge",
801
+ "description": "A small label for counts, states and tags.",
802
+ "file": "en/ui/badge.md",
803
+ "order": 2
804
+ },
805
+ {
806
+ "slug": "ui/breadcrumb",
807
+ "lang": "en",
808
+ "section": "components/ui",
809
+ "sectionTitle": "@squadbase/vantage/ui",
810
+ "title": "Breadcrumb",
811
+ "description": "A breadcrumb trail showing where the page sits.",
812
+ "file": "en/ui/breadcrumb.md",
813
+ "order": 3
814
+ },
815
+ {
816
+ "slug": "ui/button",
817
+ "lang": "en",
818
+ "section": "components/ui",
819
+ "sectionTitle": "@squadbase/vantage/ui",
820
+ "title": "Button",
821
+ "description": "The button, with six variants and eight sizes.",
822
+ "file": "en/ui/button.md",
823
+ "order": 4
824
+ },
825
+ {
826
+ "slug": "ui/calendar",
827
+ "lang": "en",
828
+ "section": "components/ui",
829
+ "sectionTitle": "@squadbase/vantage/ui",
830
+ "title": "Calendar",
831
+ "description": "The date calendar, built on react-day-picker.",
832
+ "file": "en/ui/calendar.md",
833
+ "order": 5
834
+ },
835
+ {
836
+ "slug": "ui/card",
837
+ "lang": "en",
838
+ "section": "components/ui",
839
+ "sectionTitle": "@squadbase/vantage/ui",
840
+ "title": "Card",
841
+ "description": "The generic card. For dashboard tiles use DashboardCard.",
842
+ "file": "en/ui/card.md",
843
+ "order": 6
844
+ },
845
+ {
846
+ "slug": "ui/checkbox",
847
+ "lang": "en",
848
+ "section": "components/ui",
849
+ "sectionTitle": "@squadbase/vantage/ui",
850
+ "title": "Checkbox",
851
+ "description": "The checkbox. The mixed state is a separate indeterminate prop.",
852
+ "file": "en/ui/checkbox.md",
853
+ "order": 7
854
+ },
855
+ {
856
+ "slug": "ui/collapsible",
857
+ "lang": "en",
858
+ "section": "components/ui",
859
+ "sectionTitle": "@squadbase/vantage/ui",
860
+ "title": "Collapsible",
861
+ "description": "A single unstyled disclosure.",
862
+ "file": "en/ui/collapsible.md",
863
+ "order": 8
864
+ },
865
+ {
866
+ "slug": "ui/command",
867
+ "lang": "en",
868
+ "section": "components/ui",
869
+ "sectionTitle": "@squadbase/vantage/ui",
870
+ "title": "Command",
871
+ "description": "A filterable command list — the base for a ⌘K palette.",
872
+ "file": "en/ui/command.md",
873
+ "order": 9
874
+ },
875
+ {
876
+ "slug": "ui/dialog",
877
+ "lang": "en",
878
+ "section": "components/ui",
879
+ "sectionTitle": "@squadbase/vantage/ui",
880
+ "title": "Dialog",
881
+ "description": "The modal dialog.",
882
+ "file": "en/ui/dialog.md",
883
+ "order": 10
884
+ },
885
+ {
886
+ "slug": "ui/dropdown-menu",
887
+ "lang": "en",
888
+ "section": "components/ui",
889
+ "sectionTitle": "@squadbase/vantage/ui",
890
+ "title": "DropdownMenu",
891
+ "description": "A menu opened from a button, with checkbox, radio and submenu items.",
892
+ "file": "en/ui/dropdown-menu.md",
893
+ "order": 11
894
+ },
895
+ {
896
+ "slug": "ui/empty",
897
+ "lang": "en",
898
+ "section": "components/ui",
899
+ "sectionTitle": "@squadbase/vantage/ui",
900
+ "title": "Empty",
901
+ "description": "The zero-results state.",
902
+ "file": "en/ui/empty.md",
903
+ "order": 12
904
+ },
905
+ {
906
+ "slug": "ui/error-state",
907
+ "lang": "en",
908
+ "section": "components/ui",
909
+ "sectionTitle": "@squadbase/vantage/ui",
910
+ "title": "ErrorState",
911
+ "description": "The failure state.",
912
+ "file": "en/ui/error-state.md",
913
+ "order": 13
914
+ },
915
+ {
916
+ "slug": "ui/input",
917
+ "lang": "en",
918
+ "section": "components/ui",
919
+ "sectionTitle": "@squadbase/vantage/ui",
920
+ "title": "Input",
921
+ "description": "The single-line text input.",
922
+ "file": "en/ui/input.md",
923
+ "order": 14
924
+ },
925
+ {
926
+ "slug": "ui/input-group",
927
+ "lang": "en",
928
+ "section": "components/ui",
929
+ "sectionTitle": "@squadbase/vantage/ui",
930
+ "title": "InputGroup",
931
+ "description": "Attach icons, text or buttons to either end of an input.",
932
+ "file": "en/ui/input-group.md",
933
+ "order": 15
934
+ },
935
+ {
936
+ "slug": "ui/label",
937
+ "lang": "en",
938
+ "section": "components/ui",
939
+ "sectionTitle": "@squadbase/vantage/ui",
940
+ "title": "Label",
941
+ "description": "The form label.",
942
+ "file": "en/ui/label.md",
943
+ "order": 16
944
+ },
945
+ {
946
+ "slug": "ui/loading",
947
+ "lang": "en",
948
+ "section": "components/ui",
949
+ "sectionTitle": "@squadbase/vantage/ui",
950
+ "title": "Loading",
951
+ "description": "A centred spinner with a label.",
952
+ "file": "en/ui/loading.md",
953
+ "order": 17
954
+ },
955
+ {
956
+ "slug": "ui/popover",
957
+ "lang": "en",
958
+ "section": "components/ui",
959
+ "sectionTitle": "@squadbase/vantage/ui",
960
+ "title": "Popover",
961
+ "description": "A bubble anchored to its trigger.",
962
+ "file": "en/ui/popover.md",
963
+ "order": 18
964
+ },
965
+ {
966
+ "slug": "ui/progress",
967
+ "lang": "en",
968
+ "section": "components/ui",
969
+ "sectionTitle": "@squadbase/vantage/ui",
970
+ "title": "Progress",
971
+ "description": "The progress bar, with optional label and value.",
972
+ "file": "en/ui/progress.md",
973
+ "order": 19
974
+ },
975
+ {
976
+ "slug": "ui/scroll-area",
977
+ "lang": "en",
978
+ "section": "components/ui",
979
+ "sectionTitle": "@squadbase/vantage/ui",
980
+ "title": "ScrollArea",
981
+ "description": "A scroll region with a consistent, non-native scrollbar.",
982
+ "file": "en/ui/scroll-area.md",
983
+ "order": 20
984
+ },
985
+ {
986
+ "slug": "ui/select",
987
+ "lang": "en",
988
+ "section": "components/ui",
989
+ "sectionTitle": "@squadbase/vantage/ui",
990
+ "title": "Select",
991
+ "description": "The single-choice select. Note that onValueChange can hand you null.",
992
+ "file": "en/ui/select.md",
993
+ "order": 21
994
+ },
995
+ {
996
+ "slug": "ui/separator",
997
+ "lang": "en",
998
+ "section": "components/ui",
999
+ "sectionTitle": "@squadbase/vantage/ui",
1000
+ "title": "Separator",
1001
+ "description": "A single dividing rule.",
1002
+ "file": "en/ui/separator.md",
1003
+ "order": 22
1004
+ },
1005
+ {
1006
+ "slug": "ui/sheet",
1007
+ "lang": "en",
1008
+ "section": "components/ui",
1009
+ "sectionTitle": "@squadbase/vantage/ui",
1010
+ "title": "Sheet",
1011
+ "description": "A panel that slides in from an edge.",
1012
+ "file": "en/ui/sheet.md",
1013
+ "order": 23
1014
+ },
1015
+ {
1016
+ "slug": "ui/sidebar",
1017
+ "lang": "en",
1018
+ "section": "components/ui",
1019
+ "sectionTitle": "@squadbase/vantage/ui",
1020
+ "title": "Sidebar",
1021
+ "description": "The full collapsible application sidebar kit.",
1022
+ "file": "en/ui/sidebar.md",
1023
+ "order": 24
1024
+ },
1025
+ {
1026
+ "slug": "ui/skeleton",
1027
+ "lang": "en",
1028
+ "section": "components/ui",
1029
+ "sectionTitle": "@squadbase/vantage/ui",
1030
+ "title": "Skeleton",
1031
+ "description": "A box shaped like the content that will replace it.",
1032
+ "file": "en/ui/skeleton.md",
1033
+ "order": 25
1034
+ },
1035
+ {
1036
+ "slug": "ui/slider",
1037
+ "lang": "en",
1038
+ "section": "components/ui",
1039
+ "sectionTitle": "@squadbase/vantage/ui",
1040
+ "title": "Slider",
1041
+ "description": "Pick a number by dragging. Ranges included.",
1042
+ "file": "en/ui/slider.md",
1043
+ "order": 26
1044
+ },
1045
+ {
1046
+ "slug": "ui/spinner",
1047
+ "lang": "en",
1048
+ "section": "components/ui",
1049
+ "sectionTitle": "@squadbase/vantage/ui",
1050
+ "title": "Spinner",
1051
+ "description": "The smallest waiting indicator.",
1052
+ "file": "en/ui/spinner.md",
1053
+ "order": 27
1054
+ },
1055
+ {
1056
+ "slug": "ui/switch",
1057
+ "lang": "en",
1058
+ "section": "components/ui",
1059
+ "sectionTitle": "@squadbase/vantage/ui",
1060
+ "title": "Switch",
1061
+ "description": "A toggle for settings that take effect at once.",
1062
+ "file": "en/ui/switch.md",
1063
+ "order": 28
1064
+ },
1065
+ {
1066
+ "slug": "ui/table",
1067
+ "lang": "en",
1068
+ "section": "components/ui",
1069
+ "sectionTitle": "@squadbase/vantage/ui",
1070
+ "title": "Table",
1071
+ "description": "The bare table primitives. For sorting and search, use DataTable.",
1072
+ "file": "en/ui/table.md",
1073
+ "order": 29
1074
+ },
1075
+ {
1076
+ "slug": "ui/tabs",
1077
+ "lang": "en",
1078
+ "section": "components/ui",
1079
+ "sectionTitle": "@squadbase/vantage/ui",
1080
+ "title": "Tabs",
1081
+ "description": "Tabs that switch between views.",
1082
+ "file": "en/ui/tabs.md",
1083
+ "order": 30
1084
+ },
1085
+ {
1086
+ "slug": "ui/textarea",
1087
+ "lang": "en",
1088
+ "section": "components/ui",
1089
+ "sectionTitle": "@squadbase/vantage/ui",
1090
+ "title": "Textarea",
1091
+ "description": "The multi-line text input.",
1092
+ "file": "en/ui/textarea.md",
1093
+ "order": 31
1094
+ },
1095
+ {
1096
+ "slug": "ui/toggle",
1097
+ "lang": "en",
1098
+ "section": "components/ui",
1099
+ "sectionTitle": "@squadbase/vantage/ui",
1100
+ "title": "Toggle",
1101
+ "description": "A button that stays pressed.",
1102
+ "file": "en/ui/toggle.md",
1103
+ "order": 32
1104
+ },
1105
+ {
1106
+ "slug": "ui/toggle-group",
1107
+ "lang": "en",
1108
+ "section": "components/ui",
1109
+ "sectionTitle": "@squadbase/vantage/ui",
1110
+ "title": "ToggleGroup",
1111
+ "description": "A band of toggles. value is always an array.",
1112
+ "file": "en/ui/toggle-group.md",
1113
+ "order": 33
1114
+ },
1115
+ {
1116
+ "slug": "ui/tooltip",
1117
+ "lang": "en",
1118
+ "section": "components/ui",
1119
+ "sectionTitle": "@squadbase/vantage/ui",
1120
+ "title": "Tooltip",
1121
+ "description": "A short caption on hover.",
1122
+ "file": "en/ui/tooltip.md",
1123
+ "order": 34
1124
+ },
1125
+ {
1126
+ "slug": "ui/cn",
1127
+ "lang": "en",
1128
+ "section": "components/ui",
1129
+ "sectionTitle": "@squadbase/vantage/ui",
1130
+ "title": "cn()",
1131
+ "description": "The helper that builds class names and resolves conflicts.",
1132
+ "file": "en/ui/cn.md",
1133
+ "order": 35
1134
+ },
1135
+ {
1136
+ "slug": "ui/use-is-mobile",
1137
+ "lang": "en",
1138
+ "section": "components/ui",
1139
+ "sectionTitle": "@squadbase/vantage/ui",
1140
+ "title": "useIsMobile()",
1141
+ "description": "A hook that reports whether the viewport is narrow.",
1142
+ "file": "en/ui/use-is-mobile.md",
1143
+ "order": 36
1144
+ },
1145
+ {
1146
+ "slug": "parts/app-shell",
1147
+ "lang": "en",
1148
+ "section": "components/parts",
1149
+ "sectionTitle": "@squadbase/vantage/components",
1150
+ "title": "AppShell",
1151
+ "description": "The application frame — hand it your nav and you're done.",
1152
+ "file": "en/parts/app-shell.md",
1153
+ "order": 0
1154
+ },
1155
+ {
1156
+ "slug": "parts/dashboard-card",
1157
+ "lang": "en",
1158
+ "section": "components/parts",
1159
+ "sectionTitle": "@squadbase/vantage/components",
1160
+ "title": "DashboardCard",
1161
+ "description": "The dashboard tile, with a preset and a matching skeleton.",
1162
+ "file": "en/parts/dashboard-card.md",
1163
+ "order": 1
1164
+ },
1165
+ {
1166
+ "slug": "parts/data-table",
1167
+ "lang": "en",
1168
+ "section": "components/parts",
1169
+ "sectionTitle": "@squadbase/vantage/components",
1170
+ "title": "DataTable",
1171
+ "description": "The TanStack Table–backed table: sorting, search, pagination, selection.",
1172
+ "file": "en/parts/data-table.md",
1173
+ "order": 2
1174
+ },
1175
+ {
1176
+ "slug": "parts/date-range-picker",
1177
+ "lang": "en",
1178
+ "section": "components/parts",
1179
+ "sectionTitle": "@squadbase/vantage/components",
1180
+ "title": "DateRangePicker",
1181
+ "description": "A date-range picker with presets.",
1182
+ "file": "en/parts/date-range-picker.md",
1183
+ "order": 3
1184
+ },
1185
+ {
1186
+ "slug": "parts/echart",
1187
+ "lang": "en",
1188
+ "section": "components/parts",
1189
+ "sectionTitle": "@squadbase/vantage/components",
1190
+ "title": "EChart",
1191
+ "description": "A thin Apache ECharts wrapper. Set colours in your option.",
1192
+ "file": "en/parts/echart.md",
1193
+ "order": 4
1194
+ },
1195
+ {
1196
+ "slug": "parts/filter-bar",
1197
+ "lang": "en",
1198
+ "section": "components/parts",
1199
+ "sectionTitle": "@squadbase/vantage/components",
1200
+ "title": "FilterBar",
1201
+ "description": "A row of filters driven by one value object.",
1202
+ "file": "en/parts/filter-bar.md",
1203
+ "order": 5
1204
+ },
1205
+ {
1206
+ "slug": "parts/funnel-steps",
1207
+ "lang": "en",
1208
+ "section": "components/parts",
1209
+ "sectionTitle": "@squadbase/vantage/components",
1210
+ "title": "FunnelSteps",
1211
+ "description": "A funnel drawn as bars, with conversion rates.",
1212
+ "file": "en/parts/funnel-steps.md",
1213
+ "order": 6
1214
+ },
1215
+ {
1216
+ "slug": "parts/metric-value",
1217
+ "lang": "en",
1218
+ "section": "components/parts",
1219
+ "sectionTitle": "@squadbase/vantage/components",
1220
+ "title": "MetricValue",
1221
+ "description": "The KPI number, with MetricUnit for the unit.",
1222
+ "file": "en/parts/metric-value.md",
1223
+ "order": 7
1224
+ },
1225
+ {
1226
+ "slug": "parts/multi-select",
1227
+ "lang": "en",
1228
+ "section": "components/parts",
1229
+ "sectionTitle": "@squadbase/vantage/components",
1230
+ "title": "MultiSelect",
1231
+ "description": "Multiple choice with search; selections show as chips.",
1232
+ "file": "en/parts/multi-select.md",
1233
+ "order": 8
1234
+ },
1235
+ {
1236
+ "slug": "parts/page-shell",
1237
+ "lang": "en",
1238
+ "section": "components/parts",
1239
+ "sectionTitle": "@squadbase/vantage/components",
1240
+ "title": "PageShell",
1241
+ "description": "The page frame: header band, summary row, content.",
1242
+ "file": "en/parts/page-shell.md",
1243
+ "order": 9
1244
+ },
1245
+ {
1246
+ "slug": "parts/searchable-select",
1247
+ "lang": "en",
1248
+ "section": "components/parts",
1249
+ "sectionTitle": "@squadbase/vantage/components",
1250
+ "title": "SearchableSelect",
1251
+ "description": "Single choice with search, for long option lists.",
1252
+ "file": "en/parts/searchable-select.md",
1253
+ "order": 10
1254
+ },
1255
+ {
1256
+ "slug": "parts/section-header",
1257
+ "lang": "en",
1258
+ "section": "components/parts",
1259
+ "sectionTitle": "@squadbase/vantage/components",
1260
+ "title": "SectionHeader",
1261
+ "description": "A section heading with its actions.",
1262
+ "file": "en/parts/section-header.md",
1263
+ "order": 11
1264
+ },
1265
+ {
1266
+ "slug": "parts/segmented-control",
1267
+ "lang": "en",
1268
+ "section": "components/parts",
1269
+ "sectionTitle": "@squadbase/vantage/components",
1270
+ "title": "SegmentedControl",
1271
+ "description": "Single-choice segments — it hides ToggleGroup's array.",
1272
+ "file": "en/parts/segmented-control.md",
1273
+ "order": 12
1274
+ },
1275
+ {
1276
+ "slug": "parts/status-badge",
1277
+ "lang": "en",
1278
+ "section": "components/parts",
1279
+ "sectionTitle": "@squadbase/vantage/components",
1280
+ "title": "StatusBadge",
1281
+ "description": "A dot-and-label status badge, coloured by name.",
1282
+ "file": "en/parts/status-badge.md",
1283
+ "order": 13
1284
+ },
1285
+ {
1286
+ "slug": "parts/trend-indicator",
1287
+ "lang": "en",
1288
+ "section": "components/parts",
1289
+ "sectionTitle": "@squadbase/vantage/components",
1290
+ "title": "TrendIndicator",
1291
+ "description": "An arrow and a percentage; positiveIsGood decides the colour.",
1292
+ "file": "en/parts/trend-indicator.md",
1293
+ "order": 14
1294
+ },
1295
+ {
1296
+ "slug": "markdown/markdown-renderer",
1297
+ "lang": "en",
1298
+ "section": "components/markdown",
1299
+ "sectionTitle": "@squadbase/vantage/markdown",
1300
+ "title": "MarkdownRenderer",
1301
+ "description": "Renders markdown, syntax highlighting included.",
1302
+ "file": "en/markdown/markdown-renderer.md",
1303
+ "order": 0
1304
+ }
1305
+ ]
1306
+ }