@squadbase/vantage 0.3.0 → 0.4.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 (59) hide show
  1. package/README.md +1 -1
  2. package/dist/add-GQEXRQSI.js +6 -0
  3. package/dist/add-GQEXRQSI.js.map +1 -0
  4. package/dist/build-77KHIRWR.js +108 -0
  5. package/dist/build-77KHIRWR.js.map +1 -0
  6. package/dist/check-26U4O5UW.js +38 -0
  7. package/dist/check-26U4O5UW.js.map +1 -0
  8. package/dist/chunk-2KRCGXBY.js +56 -0
  9. package/dist/chunk-2KRCGXBY.js.map +1 -0
  10. package/dist/chunk-BAM33YZ6.js +202 -0
  11. package/dist/chunk-BAM33YZ6.js.map +1 -0
  12. package/dist/chunk-C4MQRWXS.js +81 -0
  13. package/dist/chunk-C4MQRWXS.js.map +1 -0
  14. package/dist/chunk-D4Y5RWJA.js +189 -0
  15. package/dist/chunk-D4Y5RWJA.js.map +1 -0
  16. package/dist/chunk-N6HAGEUA.js +136 -0
  17. package/dist/chunk-N6HAGEUA.js.map +1 -0
  18. package/dist/chunk-PSEYFYAP.js +276 -0
  19. package/dist/chunk-PSEYFYAP.js.map +1 -0
  20. package/dist/chunk-R2YYVCGS.js +345 -0
  21. package/dist/chunk-R2YYVCGS.js.map +1 -0
  22. package/dist/chunk-RA6Z3OX3.js +199 -0
  23. package/dist/chunk-RA6Z3OX3.js.map +1 -0
  24. package/dist/chunk-VXAV2435.js +142 -0
  25. package/dist/chunk-VXAV2435.js.map +1 -0
  26. package/dist/chunk-ZIM745WE.js +267 -0
  27. package/dist/chunk-ZIM745WE.js.map +1 -0
  28. package/dist/cli.js +27 -1677
  29. package/dist/cli.js.map +1 -1
  30. package/dist/dev-5K2PNSXT.js +67 -0
  31. package/dist/dev-5K2PNSXT.js.map +1 -0
  32. package/dist/docs-XEPM66VI.js +114 -0
  33. package/dist/docs-XEPM66VI.js.map +1 -0
  34. package/dist/doctor-6UMWKG6L.js +58 -0
  35. package/dist/doctor-6UMWKG6L.js.map +1 -0
  36. package/dist/index.d.ts +1 -1
  37. package/dist/index.js +1 -1
  38. package/dist/index.js.map +1 -1
  39. package/dist/preview-VXERMTHP.js +61 -0
  40. package/dist/preview-VXERMTHP.js.map +1 -0
  41. package/dist/routes-3JUXAYQJ.js +119 -0
  42. package/dist/routes-3JUXAYQJ.js.map +1 -0
  43. package/dist/search-NJJW4PXG.js +325 -0
  44. package/dist/search-NJJW4PXG.js.map +1 -0
  45. package/dist/server/node.d.ts +1 -12
  46. package/dist/types-De3mo_hv.d.ts +59 -0
  47. package/dist/upgrade-4XAY447F.js +29 -0
  48. package/dist/upgrade-4XAY447F.js.map +1 -0
  49. package/dist/vite/index.d.ts +13 -0
  50. package/dist/vite/index.js +5 -1
  51. package/docs/en/changelog.md +71 -0
  52. package/docs/en/cli-reference.md +60 -0
  53. package/docs/ja/changelog.md +65 -0
  54. package/docs/ja/cli-reference.md +60 -0
  55. package/package.json +7 -4
  56. package/skills/vantage-app/SKILL.md +1 -1
  57. package/templates/AGENTS.md +1 -1
  58. package/dist/chunk-5UGRNXHC.js +0 -802
  59. package/dist/chunk-5UGRNXHC.js.map +0 -1
@@ -324,6 +324,66 @@ vantage build --api-base-url https://api.example.com
324
324
  The flag takes precedence over `PUBLIC_API_BASE_URL` from `.env`. Unset means empty (same-origin
325
325
  relative paths). See [Build & deploy](build-and-deploy) for details.
326
326
 
327
+ ## `--port` — the dev / preview port
328
+
329
+ `vantage dev` (default `:5173`) and `vantage preview` (default `:4173`) accept `--port`.
330
+
331
+ ```bash
332
+ vantage dev --port 3000
333
+ vantage preview --port 8080
334
+ ```
335
+
336
+ **An explicit `--port` is exact: if the port is taken, the server does not start and the command
337
+ exits 1.** Writing `--port 3000` means the port is a contract with something outside the process — a
338
+ reverse proxy, a container port mapping, an OAuth redirect URI — so quietly binding 3001 instead is a
339
+ silent failure, not a recovery (a supervisor that only checks "is anything listening on 3000" will
340
+ happily report a server nobody can reach).
341
+
342
+ **Without `--port`**, a busy default port still walks to the next free one, so running several
343
+ projects side by side takes no ceremony. Two flags override that default:
344
+
345
+ | Flag | Meaning |
346
+ |---|---|
347
+ | `--strict-port` | Fail instead of walking, even when the port came from the default |
348
+ | `--no-strict-port` | Walk to the next free port, even when `--port` was explicit |
349
+
350
+ ```bash
351
+ vantage dev --port 3000 --no-strict-port # 3000 busy → starts on 3001
352
+ vantage dev --strict-port # will not start unless 5173 is free
353
+ ```
354
+
355
+ > [!NOTE]
356
+ > A `--port` value that is not an integer, or out of range, is an error — it never falls back to the
357
+ > default silently. A fullstack `preview` binds its Node server to exactly one port, so it is **always**
358
+ > strict and `--no-strict-port` has no effect there.
359
+
360
+ ## `VANTAGE_PROFILE` — measure before you tune
361
+
362
+ Set `VANTAGE_PROFILE=1` on any command to see how long each phase took.
363
+
364
+ ```bash
365
+ VANTAGE_PROFILE=1 vantage dev
366
+ ```
367
+
368
+ ```text
369
+ [vantage:profile] scan 1.6ms @0.146s
370
+ [vantage:profile] diagnostics 2.1ms @0.148s
371
+ [vantage:profile] generate 1.5ms @0.159s
372
+ [vantage:profile] vite:createServer 16.2ms @0.165s
373
+ [vantage:profile] vite:listen 41.3ms @0.206s
374
+ ```
375
+
376
+ The left column is the duration; `@` is the time since the process started. The
377
+ phases are `scan` (route discovery), `diagnostics` (the static checks),
378
+ `generate` (writing `.vantage/`), `vite:*`, and `build:client` / `build:server`.
379
+
380
+ > [!NOTE]
381
+ > Everything goes to **stderr**. stdout stays clean, so this composes with `--json`.
382
+ >
383
+ > ```bash
384
+ > VANTAGE_PROFILE=1 vantage check --json > result.json
385
+ > ```
386
+
327
387
  ## Static diagnostics (`check`)
328
388
 
329
389
  `vantage check` detects these eight diagnostics (six errors, two warnings).
@@ -8,6 +8,71 @@ Vantage のリリースごとの変更点です。新しいものが上に来ま
8
8
  > まだプロトタイプ(**0.x**)です。0.x の間は **minor が実質のメジャー**扱いで、後方互換性の
9
9
  > ない変更は minor で入ることがあります。patch は後方互換の機能追加とバグ修正のみです。
10
10
 
11
+ ## v0.4.0
12
+
13
+ 明示した `--port` が厳格になりました。後方互換でない変更を含むため、0.x の方針に従って
14
+ minor を上げています。
15
+
16
+ 依存を `"@squadbase/vantage": "^0.3.0"` と書いているアプリには 0.4.0 は入りません。
17
+ `^0.4.0` に上げてください。
18
+
19
+ > [!WARNING]
20
+ > **`vantage dev --port 3000` は、3000 が埋まっていると起動せずエラーで終了します(exit 1)。**
21
+ > これまでは黙って 3001 へずれていました。従来の挙動が必要なら `--no-strict-port` を付けて
22
+ > ください。`--port` を**省いたとき**の挙動は変わりません(既定の 5173 / 4173 が埋まっていれば
23
+ > 次の空きポートへずれます)。
24
+
25
+ ### 変更
26
+
27
+ - **明示した `--port` は厳格になりました**(→ [CLI リファレンス](cli-reference))― `--port 3000`
28
+ と書くのは、リバースプロキシ・コンテナのポートマッピング・OAuth のリダイレクト URI など
29
+ **プロセスの外側との約束**があるからで、黙って 3001 で上がるのは復旧ではなく静かな失敗です
30
+ (「3000 で誰かが listen しているか」だけを見る監視は、誰も到達できないサーバーを「起動成功」と
31
+ 報告してしまいます)。`--port` を省いたときは従来どおり次の空きポートへずれるので、複数の
32
+ プロジェクトを並べて立ち上げる手軽さは変わりません。
33
+ - **`--port` の値が不正なときはエラーになりました** ― 整数でない・範囲外・値が無い場合、
34
+ これまでは黙って既定値で起動していました。
35
+
36
+ ### 追加
37
+
38
+ - **`--strict-port`** ― `--port` を省いたときも、既定ポートが取れなければ起動しません。
39
+ - **`--no-strict-port`** ― `--port` を明示したときも、埋まっていれば次の空きポートへずらします。
40
+ 0.3.x までの挙動が必要なときに使ってください。
41
+
42
+ fullstack の `vantage preview` は Node サーバーを 1 ポートに bind するだけなので以前から常に
43
+ 厳格で、`--no-strict-port` は効きません(その旨を表示します)。
44
+
45
+ ## v0.3.1
46
+
47
+ CLI の起動と、開発サーバー・ビルドの立ち上がりを速くしました。挙動を変える意図の変更は
48
+ 含まれておらず、すべて後方互換です。
49
+
50
+ ### 速くなったもの
51
+
52
+ - **`check` / `routes` / `docs` / `search` / `add` / `doctor` が約 3 倍速くなりました**
53
+ (実測 205ms → 65〜75ms)。これらのコマンドは Vite も Tailwind も使わないのに、CLI が
54
+ 起動時に必ず読み込んでいました。コマンドごとに必要なものだけを読むようにしています。
55
+ エージェントや CI が `check` と `routes` を繰り返し叩く場面ほど効きます。
56
+ - **`vantage dev` の起動が速くなりました** ― 起動時にプロジェクトを 4 回走査していたのを
57
+ 1 回にしました(生成も 2 回 → 1 回)。
58
+ - **`vantage build` でクライアントとサーバーを並列に建てるようになりました**
59
+ (`server/` があるプロジェクトのみ)。ログは「Building client…」「Building server…」の
60
+ 2 行から「Building client and server…」の 1 行になります。
61
+ - **`vantage check` が同じファイルを読み直さなくなりました** ― ページモジュールは 3 回、
62
+ プロジェクトツリーの走査は 2 回行われていました。大きなアプリほど差が出ます。
63
+ - **開発サーバーの無駄な再走査を減らしました** ― ディレクトリが作られるたびに全走査して
64
+ いたのを、ページや API になり得る場所のときだけにしました。
65
+ - **依存のプリバンドルを先に宣言するようになりました** ― UI キットが使う依存
66
+ (Base UI・ECharts・TanStack Table など)を Vite に先に伝えるので、初めてその
67
+ コンポーネントを使ったページを開いたときの「依存が見つかった → ページ全体がリロード」が
68
+ 起きなくなります(`npm` / `yarn` のように依存が巻き上げられる構成のとき)。
69
+
70
+ ### 追加
71
+
72
+ - **`VANTAGE_PROFILE=1`**(→ [CLI リファレンス](cli-reference))― 任意の `vantage` コマンドの
73
+ 各フェーズの所要時間を **stderr** に出します。「遅い」を測ってから直すための計測口です。
74
+ stdout には出さないので `--json` と併用できます。
75
+
11
76
  ## v0.3.0
12
77
 
13
78
  ページの置き場所として `src/` を認識するようになりました。後方互換でない変更(`src/` を持つ
@@ -318,6 +318,66 @@ vantage build --api-base-url https://api.example.com
318
318
  このフラグは `.env` の `PUBLIC_API_BASE_URL` より優先されます。未指定なら空(同一オリジンの
319
319
  相対パス)。詳細は[ビルドとデプロイ](build-and-deploy)を参照してください。
320
320
 
321
+ ## `--port` — dev / preview のポート
322
+
323
+ `vantage dev`(既定 `:5173`)と `vantage preview`(既定 `:4173`)は `--port` を受け付けます。
324
+
325
+ ```bash
326
+ vantage dev --port 3000
327
+ vantage preview --port 8080
328
+ ```
329
+
330
+ **`--port` を明示したときは、そのポートが取れなければ起動せずエラーで終了します**(exit 1)。
331
+ `--port 3000` と書くのは、リバースプロキシ・コンテナのポートマッピング・OAuth のリダイレクト URI
332
+ など**プロセスの外側との約束**があるからで、黙って 3001 で上がるのは復旧ではなく静かな失敗だからです
333
+ (「3000 で誰かが listen しているか」だけを見る監視は、誰も到達できないサーバーを "起動成功" と
334
+ 報告してしまいます)。
335
+
336
+ `--port` を**省いたとき**は既定ポートが埋まっていれば**次の空きポートへ自動でずれます**。複数の
337
+ プロジェクトを同時に立ち上げるのに手間はかかりません。この既定は 2 つのフラグで上書きできます。
338
+
339
+ | フラグ | 意味 |
340
+ |---|---|
341
+ | `--strict-port` | `--port` を省いたときも、既定ポートが取れなければエラーで終了する |
342
+ | `--no-strict-port` | `--port` を明示したときも、埋まっていれば次の空きポートへずらす |
343
+
344
+ ```bash
345
+ vantage dev --port 3000 --no-strict-port # 3000 が埋まっていれば 3001 で上がる
346
+ vantage dev --strict-port # 5173 が取れなければ起動しない
347
+ ```
348
+
349
+ > [!NOTE]
350
+ > `--port` の値が整数でない・範囲外のときはエラーです(既定値へ黙って戻ることはありません)。
351
+ > また fullstack の `preview` は Node サーバーを 1 ポートに bind するだけなので**常に厳格**で、
352
+ > `--no-strict-port` は効きません。
353
+
354
+ ## `VANTAGE_PROFILE` — 遅いときに測る
355
+
356
+ どのコマンドでも `VANTAGE_PROFILE=1` を付けると、フェーズごとの所要時間が出ます。
357
+
358
+ ```bash
359
+ VANTAGE_PROFILE=1 vantage dev
360
+ ```
361
+
362
+ ```text
363
+ [vantage:profile] scan 1.6ms @0.146s
364
+ [vantage:profile] diagnostics 2.1ms @0.148s
365
+ [vantage:profile] generate 1.5ms @0.159s
366
+ [vantage:profile] vite:createServer 16.2ms @0.165s
367
+ [vantage:profile] vite:listen 41.3ms @0.206s
368
+ ```
369
+
370
+ 左が所要時間、右の `@` はプロセス開始からの経過です。`scan`(ルートの走査)・
371
+ `diagnostics`(静的診断)・`generate`(`.vantage/` の生成)・`vite:*`・`build:client` /
372
+ `build:server` が出ます。
373
+
374
+ > [!NOTE]
375
+ > 出力先は **stderr** です。stdout は汚さないので、`--json` と一緒に使っても JSON は壊れません。
376
+ >
377
+ > ```bash
378
+ > VANTAGE_PROFILE=1 vantage check --json > result.json
379
+ > ```
380
+
321
381
  ## 静的診断(`check`)
322
382
 
323
383
  `vantage check` が検出する診断は次の 8 種類です(エラー 6・警告 2)。
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@squadbase/vantage",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "description": "Data dashboard framework for Squadbase Editor. Vite-powered, config-free, one-file first.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -86,11 +86,14 @@
86
86
  "templates"
87
87
  ],
88
88
  "scripts": {
89
- "build": "node scripts/build-docs.mjs && tsup",
89
+ "build": "node scripts/build-docs.mjs && node scripts/build.mjs",
90
+ "build:js": "tsup --no-dts",
91
+ "build:types": "tsup --dts-only",
90
92
  "build:docs": "node scripts/build-docs.mjs",
91
- "dev": "tsup --watch",
93
+ "dev": "tsup --watch --no-dts",
94
+ "dev:types": "tsc --noEmit --watch",
92
95
  "typecheck": "tsc --noEmit",
93
- "prepublishOnly": "node scripts/build-docs.mjs && tsup"
96
+ "prepublishOnly": "node scripts/build-docs.mjs && node scripts/build.mjs"
94
97
  },
95
98
  "dependencies": {
96
99
  "@base-ui/react": "^1.6.0",
@@ -44,7 +44,7 @@ exit 1 になる。
44
44
  "routes": "vantage routes"
45
45
  },
46
46
  "dependencies": {
47
- "@squadbase/vantage": "^0.3.0",
47
+ "@squadbase/vantage": "^0.4.0",
48
48
  "react": "^19.2.7",
49
49
  "react-dom": "^19.2.7"
50
50
  }
@@ -122,7 +122,7 @@ root/
122
122
  "routes": "vantage routes"
123
123
  },
124
124
  "dependencies": {
125
- "@squadbase/vantage": "^0.3.0",
125
+ "@squadbase/vantage": "^0.4.0",
126
126
  "react": "^19.2.7",
127
127
  "react-dom": "^19.2.7"
128
128
  }