@loxtep/sdk 0.7.9 → 0.7.10
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/CHANGELOG.md +22 -0
- package/README.md +94 -87
- package/dist/cli/commands/deploy-cmd.d.ts +2 -0
- package/dist/cli/commands/deploy-cmd.d.ts.map +1 -1
- package/dist/cli/commands/deploy-cmd.js +1 -1
- package/dist/cli/commands/deploy-cmd.js.map +1 -1
- package/dist/cli/commands/generate-cmd.d.ts +7 -1
- package/dist/cli/commands/generate-cmd.d.ts.map +1 -1
- package/dist/cli/commands/generate-cmd.js +4 -3
- package/dist/cli/commands/generate-cmd.js.map +1 -1
- package/dist/cli/commands/test-cmd.d.ts +2 -0
- package/dist/cli/commands/test-cmd.d.ts.map +1 -1
- package/dist/cli/commands/test-cmd.js +1 -1
- package/dist/cli/commands/test-cmd.js.map +1 -1
- package/dist/cli/commands/whoami.d.ts +10 -12
- package/dist/cli/commands/whoami.d.ts.map +1 -1
- package/dist/cli/commands/whoami.js +6 -2
- package/dist/cli/commands/whoami.js.map +1 -1
- package/dist/cli/create-cli-client.d.ts +2 -0
- package/dist/cli/create-cli-client.d.ts.map +1 -1
- package/dist/cli/create-cli-client.js +5 -1
- package/dist/cli/create-cli-client.js.map +1 -1
- package/dist/cli/index.js +0 -0
- package/dist/client/current-user-response.d.ts +18 -0
- package/dist/client/current-user-response.d.ts.map +1 -0
- package/dist/client/current-user-response.js +50 -0
- package/dist/client/current-user-response.js.map +1 -0
- package/dist/client/session.d.ts.map +1 -1
- package/dist/client/session.js +4 -2
- package/dist/client/session.js.map +1 -1
- package/docs/code-first-cli.md +10 -8
- package/docs/event-replay-cookbook.md +3 -4
- package/docs/getting-started.md +152 -200
- package/docs/quick-reference.md +8 -7
- package/package.json +1 -1
- package/dist/cli/commands/connections-cmd.d.ts +0 -19
- package/dist/cli/commands/connections-cmd.d.ts.map +0 -1
- package/dist/cli/commands/connections-cmd.js +0 -39
- package/dist/cli/commands/connections-cmd.js.map +0 -1
- package/dist/cli/commands/data-assets-cmd.d.ts +0 -12
- package/dist/cli/commands/data-assets-cmd.d.ts.map +0 -1
- package/dist/cli/commands/data-assets-cmd.js +0 -75
- package/dist/cli/commands/data-assets-cmd.js.map +0 -1
- package/dist/cli/commands/flows-cmd.d.ts +0 -19
- package/dist/cli/commands/flows-cmd.d.ts.map +0 -1
- package/dist/cli/commands/flows-cmd.js +0 -37
- package/dist/cli/commands/flows-cmd.js.map +0 -1
- package/dist/cli/commands/pipelines-cmd.d.ts +0 -17
- package/dist/cli/commands/pipelines-cmd.d.ts.map +0 -1
- package/dist/cli/commands/pipelines-cmd.js +0 -52
- package/dist/cli/commands/pipelines-cmd.js.map +0 -1
- package/dist/cli/commands/promises-cmd.d.ts +0 -11
- package/dist/cli/commands/promises-cmd.d.ts.map +0 -1
- package/dist/cli/commands/promises-cmd.js +0 -53
- package/dist/cli/commands/promises-cmd.js.map +0 -1
- package/dist/client/connection-types.d.ts +0 -98
- package/dist/client/connection-types.d.ts.map +0 -1
- package/dist/client/connection-types.js +0 -18
- package/dist/client/connection-types.js.map +0 -1
- package/dist/client/connections.d.ts +0 -18
- package/dist/client/connections.d.ts.map +0 -1
- package/dist/client/connections.js +0 -66
- package/dist/client/connections.js.map +0 -1
- package/dist/client/consumptions-types.d.ts +0 -80
- package/dist/client/consumptions-types.d.ts.map +0 -1
- package/dist/client/consumptions-types.js +0 -5
- package/dist/client/consumptions-types.js.map +0 -1
- package/dist/client/consumptions.d.ts +0 -14
- package/dist/client/consumptions.d.ts.map +0 -1
- package/dist/client/consumptions.js +0 -47
- package/dist/client/consumptions.js.map +0 -1
- package/dist/client/data-assets-types.d.ts +0 -150
- package/dist/client/data-assets-types.d.ts.map +0 -1
- package/dist/client/data-assets-types.js +0 -5
- package/dist/client/data-assets-types.js.map +0 -1
- package/dist/client/data-assets.d.ts +0 -31
- package/dist/client/data-assets.d.ts.map +0 -1
- package/dist/client/data-assets.js +0 -182
- package/dist/client/data-assets.js.map +0 -1
- package/dist/client/delivery-types.d.ts +0 -97
- package/dist/client/delivery-types.d.ts.map +0 -1
- package/dist/client/delivery-types.js +0 -10
- package/dist/client/delivery-types.js.map +0 -1
- package/dist/client/delivery.d.ts +0 -23
- package/dist/client/delivery.d.ts.map +0 -1
- package/dist/client/delivery.js +0 -105
- package/dist/client/delivery.js.map +0 -1
- package/dist/client/flows.d.ts +0 -33
- package/dist/client/flows.d.ts.map +0 -1
- package/dist/client/flows.js +0 -218
- package/dist/client/flows.js.map +0 -1
|
@@ -10,6 +10,8 @@ export interface CreateCliClientOptions {
|
|
|
10
10
|
customerMcpPath?: string;
|
|
11
11
|
/** Working directory used to resolve project-local credentials (default: `process.cwd()`). */
|
|
12
12
|
cwd?: string;
|
|
13
|
+
/** Mock or custom fetch for CLI integration tests. */
|
|
14
|
+
fetch_fn?: typeof fetch;
|
|
13
15
|
/** After refresh, apply STS (or other) side effects; used by {@link createCliClient} for SigV4. */
|
|
14
16
|
on_after_refresh?: (result: RefreshResponse) => void;
|
|
15
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-cli-client.d.ts","sourceRoot":"","sources":["../../src/cli/create-cli-client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/C,OAAO,EAAW,KAAK,eAAe,EAA4B,MAAM,kBAAkB,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,MAAM,WAAW,sBAAsB;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8FAA8F;IAC9F,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mGAAmG;IACnG,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;CACtD;AA4BD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"create-cli-client.d.ts","sourceRoot":"","sources":["../../src/cli/create-cli-client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/C,OAAO,EAAW,KAAK,eAAe,EAA4B,MAAM,kBAAkB,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,MAAM,WAAW,sBAAsB;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8FAA8F;IAC9F,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,KAAK,CAAC;IACxB,mGAAmG;IACnG,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;CACtD;AA4BD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAoEhC;AAED,wBAAsB,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC;IACnF,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC;CAChD,GAAG,IAAI,CAAC,CA6FR;AAED,mDAAmD;AACnD,wBAAsB,gBAAgB,CAAC,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC;IACpF,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC;CAChD,CAAC,CAUD"}
|
|
@@ -45,7 +45,10 @@ export async function createCliAuthContext(options = {}) {
|
|
|
45
45
|
// wherever the global default happens to point.
|
|
46
46
|
const credentialsPath = options.credentialsPath ?? resolved.credentials_path ?? resolveCredentialsPath(options.cwd).path;
|
|
47
47
|
const refreshFn = async (apiUrl, refreshToken) => {
|
|
48
|
-
const r = await refresh(apiUrl, refreshToken, {
|
|
48
|
+
const r = await refresh(apiUrl, refreshToken, {
|
|
49
|
+
auth_path_prefix: config.auth_path_prefix,
|
|
50
|
+
fetchFn: options.fetch_fn,
|
|
51
|
+
});
|
|
49
52
|
const nextExp = r.expires_at != null && r.expires_at !== ''
|
|
50
53
|
? Math.floor(new Date(r.expires_at).getTime() / 1000)
|
|
51
54
|
: jwtExpSeconds(r.access_token);
|
|
@@ -164,6 +167,7 @@ export async function createCliClient(options = {}) {
|
|
|
164
167
|
streams: config.streams,
|
|
165
168
|
}
|
|
166
169
|
: {}),
|
|
170
|
+
...(options.fetch_fn ? { fetch_fn: options.fetch_fn } : {}),
|
|
167
171
|
});
|
|
168
172
|
return { client, config };
|
|
169
173
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-cli-client.js","sourceRoot":"","sources":["../../src/cli/create-cli-client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAsB,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAkD,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"create-cli-client.js","sourceRoot":"","sources":["../../src/cli/create-cli-client.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/index.js
CHANGED
|
File without changes
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Normalize GET /organizations/users/me — API returns `{ success, data: { user, organization } }`
|
|
3
|
+
* for `user_id=me`, or `{ success, data: User }` for other ids.
|
|
4
|
+
*/
|
|
5
|
+
export interface ParsedCurrentUser {
|
|
6
|
+
user_id?: string;
|
|
7
|
+
email?: string;
|
|
8
|
+
first_name?: string;
|
|
9
|
+
last_name?: string;
|
|
10
|
+
organization_id?: string;
|
|
11
|
+
organization_name?: string;
|
|
12
|
+
permissions?: string[];
|
|
13
|
+
[key: string]: unknown;
|
|
14
|
+
}
|
|
15
|
+
/** Unwrap `{ success, data }` when present; otherwise return the raw body. */
|
|
16
|
+
export declare function unwrapApiEnvelope(raw: unknown): unknown;
|
|
17
|
+
export declare function parseCurrentUserResponse(raw: unknown): ParsedCurrentUser;
|
|
18
|
+
//# sourceMappingURL=current-user-response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"current-user-response.d.ts","sourceRoot":"","sources":["../../src/client/current-user-response.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAUD,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAMvD;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,CAgCxE"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Normalize GET /organizations/users/me — API returns `{ success, data: { user, organization } }`
|
|
3
|
+
* for `user_id=me`, or `{ success, data: User }` for other ids.
|
|
4
|
+
*/
|
|
5
|
+
function asRecord(value) {
|
|
6
|
+
return value && typeof value === 'object' ? value : null;
|
|
7
|
+
}
|
|
8
|
+
function str(value) {
|
|
9
|
+
return typeof value === 'string' && value.trim() !== '' ? value : undefined;
|
|
10
|
+
}
|
|
11
|
+
/** Unwrap `{ success, data }` when present; otherwise return the raw body. */
|
|
12
|
+
export function unwrapApiEnvelope(raw) {
|
|
13
|
+
const envelope = asRecord(raw);
|
|
14
|
+
if (envelope?.success === true && envelope.data != null && typeof envelope.data === 'object') {
|
|
15
|
+
return envelope.data;
|
|
16
|
+
}
|
|
17
|
+
return raw;
|
|
18
|
+
}
|
|
19
|
+
export function parseCurrentUserResponse(raw) {
|
|
20
|
+
const inner = unwrapApiEnvelope(raw);
|
|
21
|
+
const record = asRecord(inner);
|
|
22
|
+
if (!record) {
|
|
23
|
+
return {};
|
|
24
|
+
}
|
|
25
|
+
const nestedUser = asRecord(record.user);
|
|
26
|
+
if (nestedUser) {
|
|
27
|
+
const org = asRecord(record.organization);
|
|
28
|
+
return {
|
|
29
|
+
user_id: str(nestedUser.user_id),
|
|
30
|
+
email: str(nestedUser.email),
|
|
31
|
+
first_name: str(nestedUser.first_name),
|
|
32
|
+
last_name: str(nestedUser.last_name),
|
|
33
|
+
organization_id: str(org?.organization_id) ?? str(nestedUser.organization_id),
|
|
34
|
+
organization_name: str(org?.name),
|
|
35
|
+
permissions: Array.isArray(nestedUser.permissions)
|
|
36
|
+
? nestedUser.permissions
|
|
37
|
+
: undefined,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
user_id: str(record.user_id),
|
|
42
|
+
email: str(record.email),
|
|
43
|
+
first_name: str(record.first_name),
|
|
44
|
+
last_name: str(record.last_name),
|
|
45
|
+
organization_id: str(record.organization_id),
|
|
46
|
+
organization_name: str(record.organization_name) ?? str(record.name),
|
|
47
|
+
permissions: Array.isArray(record.permissions) ? record.permissions : undefined,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=current-user-response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"current-user-response.js","sourceRoot":"","sources":["../../src/client/current-user-response.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,IAAI,CAAC;AACxF,CAAC;AAED,SAAS,GAAG,CAAC,KAAc;IACzB,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9E,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,iBAAiB,CAAC,GAAY;IAC5C,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,QAAQ,EAAE,OAAO,KAAK,IAAI,IAAI,QAAQ,CAAC,IAAI,IAAI,IAAI,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7F,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,GAAY;IACnD,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO;YACL,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;YAChC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC;YAC5B,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC;YACtC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC;YACpC,eAAe,EAAE,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC;YAC7E,iBAAiB,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC;YACjC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC;gBAChD,CAAC,CAAE,UAAU,CAAC,WAAwB;gBACtC,CAAC,CAAC,SAAS;SACd,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;QAC5B,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;QACxB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;QAClC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;QAChC,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC;QAC5C,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QACpE,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAE,MAAM,CAAC,WAAwB,CAAC,CAAC,CAAC,SAAS;KAC9F,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/client/session.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/client/session.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,GAAG;IACxD,gBAAgB,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7C,wBAAwB,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC7D,MAAM,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC7C,CA2BA"}
|
package/dist/client/session.js
CHANGED
|
@@ -2,13 +2,15 @@
|
|
|
2
2
|
* Session API — org/user context (MCP: loxtep_session).
|
|
3
3
|
* Thin HTTP wrapper; no dedicated microservice module yet.
|
|
4
4
|
*/
|
|
5
|
+
import { parseCurrentUserResponse } from './current-user-response.js';
|
|
5
6
|
export function createSessionApi(http) {
|
|
6
7
|
return {
|
|
7
8
|
async get_current_user() {
|
|
8
|
-
|
|
9
|
+
const raw = await http.get('/organizations/users/me');
|
|
10
|
+
return parseCurrentUserResponse(raw);
|
|
9
11
|
},
|
|
10
12
|
async get_current_organization() {
|
|
11
|
-
const user = await
|
|
13
|
+
const user = await this.get_current_user();
|
|
12
14
|
const orgId = user.organization_id;
|
|
13
15
|
if (!orgId) {
|
|
14
16
|
throw new Error('organization_id not available on current user');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/client/session.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/client/session.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAoBtE,MAAM,UAAU,gBAAgB,CAAC,IAAsB;IAKrD,OAAO;QACL,KAAK,CAAC,gBAAgB;YACpB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAU,yBAAyB,CAAC,CAAC;YAC/D,OAAO,wBAAwB,CAAC,GAAG,CAAC,CAAC;QACvC,CAAC;QAED,KAAK,CAAC,wBAAwB;YAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC;YACnC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CACxB,gCAAgC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAC5D,CAAC;YACF,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,IAAK,GAAsC,CAAC,IAAI,EAAE,CAAC;gBACpG,OAAQ,GAAqC,CAAC,IAAI,CAAC;YACrD,CAAC;YACD,OAAO,GAA0B,CAAC;QACpC,CAAC;QAED,KAAK,CAAC,MAAM;YACV,uFAAuF;YACvF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/docs/code-first-cli.md
CHANGED
|
@@ -4,10 +4,11 @@ Author Loxtep workflows as TypeScript in your repo, test them locally, and
|
|
|
4
4
|
deploy to a runtime instance — without using the Studio UI as your source of
|
|
5
5
|
truth.
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
Start with the [Getting Started Guide](./getting-started.md) if you have not
|
|
8
|
+
yet run `login`, `init`, `attach`, and `generate`.
|
|
9
|
+
|
|
10
|
+
For **application code** that calls platform APIs or streams events after
|
|
11
|
+
deploy, use `LoxtepClient.fromWorkspace()` (see Getting Started, Step 7–8).
|
|
11
12
|
|
|
12
13
|
---
|
|
13
14
|
|
|
@@ -15,9 +16,10 @@ call `get_writer` / `get_reader` with manual config), see the
|
|
|
15
16
|
|
|
16
17
|
| Goal | Commands |
|
|
17
18
|
| --- | --- |
|
|
18
|
-
|
|
|
19
|
-
|
|
|
20
|
-
|
|
|
19
|
+
| First-time workspace setup | `login` → `init` → `attach` → `generate` |
|
|
20
|
+
| Author, test, and deploy workflows | … → `test` → `deploy` |
|
|
21
|
+
| App code with auto-config | After attach: `LoxtepClient.fromWorkspace()` |
|
|
22
|
+
| Stream I/O to a data product | After **deploy**: `client.get_writer(name)` |
|
|
21
23
|
|
|
22
24
|
`loxtep init` creates **`.loxtep/project.json`** and the on-disk project layout.
|
|
23
25
|
Many CLI commands (`generate`, `test`, `deploy`, `attach`) require that file and
|
|
@@ -33,8 +35,8 @@ after `init`.
|
|
|
33
35
|
|
|
34
36
|
```text
|
|
35
37
|
pnpm add @loxtep/sdk
|
|
36
|
-
pnpm exec loxtep init [--template <slug>]
|
|
37
38
|
pnpm exec loxtep login
|
|
39
|
+
pnpm exec loxtep init [--template <slug>]
|
|
38
40
|
pnpm exec loxtep attach --instance <name-or-id>
|
|
39
41
|
pnpm exec loxtep generate
|
|
40
42
|
# author workflows under workflows/
|
|
@@ -4,10 +4,9 @@ Replay events from a data product or from a queue. This is a key differentiator
|
|
|
4
4
|
for the Loxtep SDK: you can iterate over historical or live events without
|
|
5
5
|
managing checkpoints yourself (or use checkpoints for resumable replay).
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
**`client.get_reader`**.
|
|
7
|
+
Control-plane data product methods live under **`client.build.data_products`**;
|
|
8
|
+
low-level queue I/O is on **`client.observe`**. Live write/read by name uses
|
|
9
|
+
top-level **`client.get_writer`** / **`client.get_reader`** (after deploy).
|
|
11
10
|
|
|
12
11
|
## Replay from a data product
|
|
13
12
|
|