bluelamp 6.4.14 → 6.4.16
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/auth/InteractiveLogin.js +1 -1
- package/dist/auth/PortalAuthClient.js +1 -1
- package/dist/auth/TokenManager.d.ts +5 -14
- package/dist/auth/TokenManager.d.ts.map +1 -1
- package/dist/auth/TokenManager.js +1 -1
- package/dist/auth/TokenManager.js.map +1 -1
- package/dist/auth/portalTokenStore.d.ts +36 -0
- package/dist/auth/portalTokenStore.d.ts.map +1 -0
- package/dist/auth/portalTokenStore.js +1 -0
- package/dist/auth/portalTokenStore.js.map +1 -0
- package/dist/bin/bluelamp-vscode-base.mjs +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/mcp-server/index.cjs +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenManager.js","sourceRoot":"","sources":["../../src/auth/TokenManager.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"TokenManager.js","sourceRoot":"","sources":["../../src/auth/TokenManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* portalTokenStore — CLI トークン (`CLI_<64hex>`) の暗号化保存の単一の真実源。
|
|
3
|
+
*
|
|
4
|
+
* 保存パス (`~/.musuhi/portal-token.enc`) / 暗号鍵 / AES-256-CBC 手順 / 保存フォーマット
|
|
5
|
+
* (StoredTokenData) はこのモジュールだけが定義する。CLI (TokenManager) と VSCode 拡張
|
|
6
|
+
* (SimpleAuthService のログイン成功フック) の両方がここを import する。
|
|
7
|
+
*
|
|
8
|
+
* 制約: 拡張 (webpack bundle) からも使うため、node 標準モジュール以外に依存しない
|
|
9
|
+
* (i18n / console 出力はしない。メッセージングは呼び出し側の責務)。
|
|
10
|
+
*/
|
|
11
|
+
export interface StoredUserInfo {
|
|
12
|
+
id?: string;
|
|
13
|
+
name?: string;
|
|
14
|
+
email?: string;
|
|
15
|
+
role?: string;
|
|
16
|
+
language?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface StoredTokenData {
|
|
19
|
+
token: string;
|
|
20
|
+
savedAt: number;
|
|
21
|
+
userInfo: StoredUserInfo;
|
|
22
|
+
version: string;
|
|
23
|
+
source: string;
|
|
24
|
+
}
|
|
25
|
+
/** 保存先パス。テストで HOME/USERPROFILE を差し替えられるよう呼び出し時に解決する。 */
|
|
26
|
+
export declare function getTokenFilePath(): string;
|
|
27
|
+
export declare function validateTokenFormat(token: unknown): token is string;
|
|
28
|
+
export declare function encrypt(text: string): string;
|
|
29
|
+
export declare function decrypt(encryptedData: string): string;
|
|
30
|
+
/** トークンを暗号化保存する。フォーマット不正・書込失敗は throw(呼び出し側が通知を担う)。 */
|
|
31
|
+
export declare function savePortalToken(token: string, userInfo?: StoredUserInfo): void;
|
|
32
|
+
/** 保存済みトークンを読む。ファイル無し・内容不正は null、復号失敗は throw。 */
|
|
33
|
+
export declare function loadPortalToken(): StoredTokenData | null;
|
|
34
|
+
/** 保存済みトークンを削除する。ファイル無しは no-op。削除失敗は throw。 */
|
|
35
|
+
export declare function deletePortalToken(): void;
|
|
36
|
+
//# sourceMappingURL=portalTokenStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portalTokenStore.d.ts","sourceRoot":"","sources":["../../src/auth/portalTokenStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wDAAwD;AACxD,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAKnE;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQ5C;AAED,wBAAgB,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAarD;AAED,sDAAsD;AACtD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,cAAmB,GAAG,IAAI,CAmBlF;AAED,iDAAiD;AACjD,wBAAgB,eAAe,IAAI,eAAe,GAAG,IAAI,CAWxD;AAED,+CAA+C;AAC/C,wBAAgB,iBAAiB,IAAI,IAAI,CAKxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(null!=t)for(var n=e(t),o=0;o<n.length;o++)"default"!==n[o]&&__createBinding(r,t,n[o]);return __setModuleDefault(r,t),r}}();Object.defineProperty(exports,"__esModule",{value:!0}),exports.getTokenFilePath=getTokenFilePath,exports.validateTokenFormat=validateTokenFormat,exports.encrypt=encrypt,exports.decrypt=decrypt,exports.savePortalToken=savePortalToken,exports.loadPortalToken=loadPortalToken,exports.deletePortalToken=deletePortalToken;const fs=__importStar(require("node:fs")),path=__importStar(require("node:path")),os=__importStar(require("node:os")),crypto=__importStar(require("node:crypto")),ENCRYPTION_KEY="musuhi-vscode-portal-token-key-2025";function getTokenFilePath(){return path.join(os.homedir(),".musuhi","portal-token.enc")}function validateTokenFormat(e){return!(!e||"string"!=typeof e)&&/^CLI_[a-f0-9]{64}$/i.test(e)}function encrypt(e){const t=crypto.scryptSync(ENCRYPTION_KEY,"salt",32),r=crypto.randomBytes(16),n=crypto.createCipheriv("aes-256-cbc",t,r);let o=n.update(e,"utf8","hex");return o+=n.final("hex"),`${r.toString("hex")}:${o}`}function decrypt(e){const t=crypto.scryptSync(ENCRYPTION_KEY,"salt",32),r=e.split(":");if(2!==r.length)throw new Error("Invalid encrypted payload format");const n=Buffer.from(r[0],"hex"),o=r[1],a=crypto.createDecipheriv("aes-256-cbc",t,n);let i=a.update(o,"hex","utf8");return i+=a.final("utf8"),i}function savePortalToken(e,t={}){if(!validateTokenFormat(e))throw new Error("Invalid CLI token format");const r={token:e,savedAt:Date.now(),userInfo:t,version:"1.0",source:"portal"},n=getTokenFilePath(),o=path.dirname(n);fs.existsSync(o)||fs.mkdirSync(o,{recursive:!0}),fs.writeFileSync(n,encrypt(JSON.stringify(r)))}function loadPortalToken(){const e=getTokenFilePath();if(!fs.existsSync(e))return null;const t=decrypt(fs.readFileSync(e,"utf8")),r=JSON.parse(t);return r.token&&r.version?r:null}function deletePortalToken(){const e=getTokenFilePath();fs.existsSync(e)&&fs.unlinkSync(e)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portalTokenStore.js","sourceRoot":"","sources":["../../src/auth/portalTokenStore.ts"],"names":[],"mappings":"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"}
|