@bstage-sdk/cli 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.
@@ -0,0 +1,46 @@
1
+ import { Plugin, UserConfig } from 'vite';
2
+
3
+ /**
4
+ * 인증 모드. 같은 SDK CLI 안에서 유저 플랫폼/어드민 플랫폼 두 종류 로그인을
5
+ * 모두 다룬다. 호스트·경로·쿠키 이름이 전부 달라서 모드로 분기한다.
6
+ */
7
+ type AuthMode = 'user' | 'admin';
8
+
9
+ interface BstageDevPluginOptions {
10
+ /** Target phase for the login page (default: 'sandbox') */
11
+ phase?: string;
12
+ /**
13
+ * 인증 모드 (default: 'user').
14
+ * 어드민 슬롯을 확인하려면 'admin'으로 지정한다.
15
+ */
16
+ mode?: AuthMode;
17
+ }
18
+ /**
19
+ * bstage 로컬 개발용 Vite 플러그인.
20
+ *
21
+ * 1. bstage-core의 PHASE_BASE_URLS를 localhost 프록시 경로로 치환
22
+ * 2. Vite 프록시를 설정하여 API 호출을 실제 게이트웨이로 전달
23
+ * 3. 쿠키 보안 속성을 제거하여 localhost에서도 httpOnly 쿠키 동작
24
+ * 4. /__bstage__/login에 간이 로그인 페이지 제공 (user/admin 모드 지원)
25
+ * 5. /__auth__/*에서 동적 인증 프록시 — 요청 헤더의 X-BSTAGE-TENANT-ID 참조
26
+ *
27
+ * 별도 프록시 서버 없이 Vite 안에서 모두 처리.
28
+ */
29
+ declare function bstageDevPlugin(options?: BstageDevPluginOptions): Plugin;
30
+
31
+ interface VitePresetOptions {
32
+ /** Entry file path (default: 'src/index.tsx') */
33
+ entry?: string;
34
+ /** Output directory (default: 'dist') */
35
+ outDir?: string;
36
+ }
37
+
38
+ /**
39
+ * bstage 템플릿 빌드용 Vite 설정 프리셋을 생성한다.
40
+ *
41
+ * `<script>` 태그로 로드 가능한 IIFE 번들(`template.js`)을 출력.
42
+ * React를 번들에 포함(외부화하지 않음). CSS는 Shadow DOM 주입을 위해 JS에 인라인.
43
+ */
44
+ declare function createViteConfig(options?: VitePresetOptions): UserConfig;
45
+
46
+ export { type BstageDevPluginOptions, type VitePresetOptions, bstageDevPlugin, createViteConfig };
@@ -0,0 +1,8 @@
1
+ import {
2
+ bstageDevPlugin,
3
+ createViteConfig
4
+ } from "../chunk-S6HGR2U3.js";
5
+ export {
6
+ bstageDevPlugin,
7
+ createViteConfig
8
+ };
package/package.json ADDED
@@ -0,0 +1,47 @@
1
+ {
2
+ "name": "@bstage-sdk/cli",
3
+ "version": "0.1.0",
4
+ "description": "bstage SDK CLI — build b.stage templates",
5
+ "type": "module",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/bstage-sdk/web-sdk.git",
9
+ "directory": "packages/cli"
10
+ },
11
+ "bin": {
12
+ "bstage": "./dist/index.js"
13
+ },
14
+ "exports": {
15
+ "./vite": {
16
+ "import": {
17
+ "types": "./dist/vite/preset.d.ts",
18
+ "default": "./dist/vite/preset.js"
19
+ }
20
+ }
21
+ },
22
+ "files": [
23
+ "dist"
24
+ ],
25
+ "dependencies": {
26
+ "@clack/prompts": "^1.1.0",
27
+ "@vitejs/plugin-react": "^5.2.0",
28
+ "commander": "^12.0.0",
29
+ "picocolors": "^1.1.1",
30
+ "vite": "^7.0.0",
31
+ "@bstage-sdk/core": "0.1.0"
32
+ },
33
+ "devDependencies": {
34
+ "@types/node": "^25.5.0",
35
+ "tsup": "^8.0.0",
36
+ "typescript": "^5.5.0",
37
+ "@bstage-sdk/design": "0.1.0"
38
+ },
39
+ "license": "MIT",
40
+ "publishConfig": {
41
+ "access": "public"
42
+ },
43
+ "scripts": {
44
+ "build": "tsup && cp ../../docs/MIGRATION.md dist/MIGRATION.md",
45
+ "typecheck": "tsc --noEmit"
46
+ }
47
+ }