xiaotime 0.2.0 → 0.2.1
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.d.ts.map +1 -1
- package/dist/auth.js +6 -2
- package/dist/auth.js.map +1 -1
- package/dist/config.d.ts +19 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +24 -1
- package/dist/config.js.map +1 -1
- package/package.json +1 -1
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAcH,UAAU,WAAW;IACnB,KAAK,EAAE,MAAM,CAAC;IAMd,QAAQ,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAgBD,wBAAgB,eAAe,IAAI,WAAW,GAAG,IAAI,CAOpD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAMxD;AAED,wBAAgB,QAAQ,IAAI,MAAM,CAOjC;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAuC9C"}
|
package/dist/auth.js
CHANGED
|
@@ -58,6 +58,10 @@ exports.runLogin = runLogin;
|
|
|
58
58
|
const fs = __importStar(require("fs"));
|
|
59
59
|
const os = __importStar(require("os"));
|
|
60
60
|
const path = __importStar(require("path"));
|
|
61
|
+
// SPRINT-#6097 PR2 follow-up: OAuth init/poll endpoints live on the
|
|
62
|
+
// MAIN orchestrator (AUTH_URL), not on terminal-orchestrator
|
|
63
|
+
// (ORCHESTRATOR_URL). 0.2.0 collapsed the two by mistake; restored
|
|
64
|
+
// in 0.2.1.
|
|
61
65
|
const config_js_1 = require("./config.js");
|
|
62
66
|
const CREDENTIALS_DIR = path.join(os.homedir(), ".xiaotime");
|
|
63
67
|
const CREDENTIALS_FILE = path.join(CREDENTIALS_DIR, "credentials.json");
|
|
@@ -101,7 +105,7 @@ async function runLogin() {
|
|
|
101
105
|
const tokenPath = `/oauth/${provider}/cli/token`;
|
|
102
106
|
console.log(`Connecting to xiaotime (${providerLabel} login)...\n`);
|
|
103
107
|
// Step 1: init
|
|
104
|
-
const initRes = await fetch(`${config_js_1.
|
|
108
|
+
const initRes = await fetch(`${config_js_1.AUTH_URL}${initPath}`, {
|
|
105
109
|
method: "POST",
|
|
106
110
|
});
|
|
107
111
|
if (!initRes.ok) {
|
|
@@ -131,7 +135,7 @@ async function pollForToken(pendingId, tokenPath, timeoutMs = 120_000) {
|
|
|
131
135
|
while (Date.now() < deadline) {
|
|
132
136
|
await sleep(interval);
|
|
133
137
|
try {
|
|
134
|
-
const res = await fetch(`${config_js_1.
|
|
138
|
+
const res = await fetch(`${config_js_1.AUTH_URL}${tokenPath}?pending_id=${encodeURIComponent(pendingId)}`);
|
|
135
139
|
if (!res.ok) {
|
|
136
140
|
// 410 = expired
|
|
137
141
|
const body = await res.json();
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,6 +1,25 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Runtime configuration from environment variables.
|
|
3
|
+
*
|
|
4
|
+
* Two different hosts are involved:
|
|
5
|
+
* - ORCHESTRATOR_URL: terminal-orchestrator, where the `xiaotime dev`
|
|
6
|
+
* session lives (REST + WebSocket). The cli_token is presented to
|
|
7
|
+
* this host as the x-api-key header.
|
|
8
|
+
* - AUTH_URL: the main orchestrator, where the OAuth init/poll
|
|
9
|
+
* endpoints live (/oauth/{discord,google}/cli/{init,token}).
|
|
10
|
+
*
|
|
11
|
+
* The two hosts are intentionally separate today: terminal-orchestrator
|
|
12
|
+
* lives at terminal.xiaotime.ai (its own Caddy block), the main
|
|
13
|
+
* orchestrator at api.xiaotime.ai (or apid.xiaotime.ai on dev). The
|
|
14
|
+
* OAuth callback redirect URI is registered on the Google + Discord
|
|
15
|
+
* OAuth clients at the main orchestrator's host, so login MUST go
|
|
16
|
+
* there.
|
|
17
|
+
*
|
|
18
|
+
* Bug history: 0.2.0 collapsed AUTH_URL into ORCHESTRATOR_URL by
|
|
19
|
+
* mistake, so `xiaotime login` hit terminal.xiaotime.ai/oauth/... and
|
|
20
|
+
* got 404. Restored in 0.2.1 (#6097 PR2 follow-up).
|
|
3
21
|
*/
|
|
4
22
|
export declare const ORCHESTRATOR_URL: string;
|
|
23
|
+
export declare const AUTH_URL: string;
|
|
5
24
|
export declare const WS_URL: string;
|
|
6
25
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,eAAO,MAAM,gBAAgB,QAC4C,CAAC;AAK1E,eAAO,MAAM,QAAQ,QACuC,CAAC;AAQ7D,eAAO,MAAM,MAAM,QAA4B,CAAC"}
|
package/dist/config.js
CHANGED
|
@@ -1,10 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* Runtime configuration from environment variables.
|
|
4
|
+
*
|
|
5
|
+
* Two different hosts are involved:
|
|
6
|
+
* - ORCHESTRATOR_URL: terminal-orchestrator, where the `xiaotime dev`
|
|
7
|
+
* session lives (REST + WebSocket). The cli_token is presented to
|
|
8
|
+
* this host as the x-api-key header.
|
|
9
|
+
* - AUTH_URL: the main orchestrator, where the OAuth init/poll
|
|
10
|
+
* endpoints live (/oauth/{discord,google}/cli/{init,token}).
|
|
11
|
+
*
|
|
12
|
+
* The two hosts are intentionally separate today: terminal-orchestrator
|
|
13
|
+
* lives at terminal.xiaotime.ai (its own Caddy block), the main
|
|
14
|
+
* orchestrator at api.xiaotime.ai (or apid.xiaotime.ai on dev). The
|
|
15
|
+
* OAuth callback redirect URI is registered on the Google + Discord
|
|
16
|
+
* OAuth clients at the main orchestrator's host, so login MUST go
|
|
17
|
+
* there.
|
|
18
|
+
*
|
|
19
|
+
* Bug history: 0.2.0 collapsed AUTH_URL into ORCHESTRATOR_URL by
|
|
20
|
+
* mistake, so `xiaotime login` hit terminal.xiaotime.ai/oauth/... and
|
|
21
|
+
* got 404. Restored in 0.2.1 (#6097 PR2 follow-up).
|
|
4
22
|
*/
|
|
5
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.WS_URL = exports.ORCHESTRATOR_URL = void 0;
|
|
24
|
+
exports.WS_URL = exports.AUTH_URL = exports.ORCHESTRATOR_URL = void 0;
|
|
25
|
+
// Terminal orchestrator — handles dev sessions (WebSocket + REST).
|
|
7
26
|
exports.ORCHESTRATOR_URL = process.env.XIAOTIME_ORCHESTRATOR_URL || "https://terminal.xiaotime.ai";
|
|
27
|
+
// Main orchestrator — handles the OAuth login flow (init + token poll).
|
|
28
|
+
// Defaults to prod; override with XIAOTIME_AUTH_URL=https://apid.xiaotime.ai
|
|
29
|
+
// when testing against dev.
|
|
30
|
+
exports.AUTH_URL = process.env.XIAOTIME_AUTH_URL || "https://api.xiaotime.ai";
|
|
8
31
|
function toWsUrl(url) {
|
|
9
32
|
const parsed = new URL(url);
|
|
10
33
|
parsed.protocol = parsed.protocol === "https:" ? "wss:" : "ws:";
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;;;AAEH,mEAAmE;AACtD,QAAA,gBAAgB,GAC3B,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,8BAA8B,CAAC;AAE1E,wEAAwE;AACxE,6EAA6E;AAC7E,4BAA4B;AACf,QAAA,QAAQ,GACnB,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,yBAAyB,CAAC;AAE7D,SAAS,OAAO,CAAC,GAAW;IAC1B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IAChE,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC;AAEY,QAAA,MAAM,GAAG,OAAO,CAAC,wBAAgB,CAAC,CAAC"}
|