@beacon-build/sdk 1.16.1 → 1.18.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/CHANGELOG.md +34 -0
- package/dist/clients/admin/settings.client.d.ts +63 -0
- package/dist/clients/admin/settings.client.d.ts.map +1 -0
- package/dist/clients/admin/settings.client.js +56 -0
- package/dist/clients/admin/settings.client.js.map +1 -0
- package/dist/clients/shared/task-config.client.d.ts +23 -0
- package/dist/clients/shared/task-config.client.d.ts.map +1 -0
- package/dist/clients/shared/task-config.client.js +29 -0
- package/dist/clients/shared/task-config.client.js.map +1 -0
- package/dist/factory/admin-sdk.d.ts +6 -0
- package/dist/factory/admin-sdk.d.ts.map +1 -1
- package/dist/factory/admin-sdk.js +4 -0
- package/dist/factory/admin-sdk.js.map +1 -1
- package/dist/factory/agent-sdk.d.ts +3 -0
- package/dist/factory/agent-sdk.d.ts.map +1 -1
- package/dist/factory/agent-sdk.js +9 -0
- package/dist/factory/agent-sdk.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/legacy/sdk-factory.d.ts +3 -0
- package/dist/legacy/sdk-factory.d.ts.map +1 -1
- package/dist/legacy/sdk-factory.js +2 -0
- package/dist/legacy/sdk-factory.js.map +1 -1
- package/dist/react/RealtimeProvider.d.ts +30 -0
- package/dist/react/RealtimeProvider.d.ts.map +1 -0
- package/dist/react/RealtimeProvider.js +34 -0
- package/dist/react/RealtimeProvider.js.map +1 -0
- package/dist/react/index.d.ts +5 -0
- package/dist/react/index.d.ts.map +1 -0
- package/dist/react/index.js +7 -0
- package/dist/react/index.js.map +1 -0
- package/dist/react/useRealtime.d.ts +30 -0
- package/dist/react/useRealtime.d.ts.map +1 -0
- package/dist/react/useRealtime.js +63 -0
- package/dist/react/useRealtime.js.map +1 -0
- package/package.json +24 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# @beacon-build/sdk Changelog
|
|
2
2
|
|
|
3
|
+
## 1.18.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 9b75d82: F143: Config Hierarchy + Task Config (Workflow & Board)
|
|
8
|
+
- Setting table with nullable organization_id (global → org-scoped hierarchy)
|
|
9
|
+
- AES-256-GCM encryption for secrets via CONFIG_ENCRYPTION_KEY
|
|
10
|
+
- SettingsService with hierarchy resolution (org → global → null)
|
|
11
|
+
- ConfigRepository with typed access and Zod schema validation
|
|
12
|
+
- PrismaSettingsRepository with automatic encrypt/decrypt
|
|
13
|
+
- Admin Config API (/admin/config, /admin/config/all) with Vendor/Admin RBAC
|
|
14
|
+
- Public Task Config endpoint (/task-config) with Any-JWT auth
|
|
15
|
+
- TaskConfigSchema with Zod validation for 4-level state machines
|
|
16
|
+
- DefaultTaskStateMachine (config-driven transitions)
|
|
17
|
+
- SDK clients: SettingsClient, TaskConfigClient
|
|
18
|
+
- Route-based code splitting for platform app
|
|
19
|
+
|
|
20
|
+
### Patch Changes
|
|
21
|
+
|
|
22
|
+
- Updated dependencies [9b75d82]
|
|
23
|
+
- Updated dependencies [9b75d82]
|
|
24
|
+
- Updated dependencies [9b75d82]
|
|
25
|
+
- Updated dependencies [9b75d82]
|
|
26
|
+
- Updated dependencies [9b75d82]
|
|
27
|
+
- @beacon-build/core@1.18.0
|
|
28
|
+
|
|
29
|
+
## 1.17.0
|
|
30
|
+
|
|
31
|
+
### Patch Changes
|
|
32
|
+
|
|
33
|
+
- Updated dependencies
|
|
34
|
+
- Updated dependencies
|
|
35
|
+
- @beacon-build/core@1.17.0
|
|
36
|
+
|
|
3
37
|
## 2.0.0 (2026-05-27)
|
|
4
38
|
|
|
5
39
|
### Breaking Changes
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { HttpClient } from '../../transport/http-client.js';
|
|
2
|
+
import type { ConfigSource } from '@beacon-build/core';
|
|
3
|
+
/**
|
|
4
|
+
* Setting value (JSON-serializable).
|
|
5
|
+
*/
|
|
6
|
+
export type SettingValue = unknown;
|
|
7
|
+
/**
|
|
8
|
+
* Setting response with hierarchy info.
|
|
9
|
+
*/
|
|
10
|
+
export interface SettingResponse {
|
|
11
|
+
key: string;
|
|
12
|
+
value: SettingValue;
|
|
13
|
+
source: ConfigSource;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* List settings response.
|
|
17
|
+
*/
|
|
18
|
+
export interface SettingsListResponse {
|
|
19
|
+
organizationId: string | null;
|
|
20
|
+
settings: Record<string, SettingValue>;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* F143: Client for admin config API endpoints (Admin/Vendor only).
|
|
24
|
+
*
|
|
25
|
+
* Endpoints:
|
|
26
|
+
* GET /api/v1/admin/config?key=&organizationId=
|
|
27
|
+
* GET /api/v1/admin/config/all?organizationId=
|
|
28
|
+
* PATCH /api/v1/admin/config
|
|
29
|
+
*/
|
|
30
|
+
export declare class SettingsClient {
|
|
31
|
+
private readonly http;
|
|
32
|
+
constructor(http: HttpClient);
|
|
33
|
+
/**
|
|
34
|
+
* GET /api/v1/admin/config?key=&organizationId=
|
|
35
|
+
* Get a single config value with hierarchy resolution.
|
|
36
|
+
*/
|
|
37
|
+
get(key: string, organizationId?: string | null): Promise<SettingResponse>;
|
|
38
|
+
/**
|
|
39
|
+
* GET /api/v1/admin/config/all?organizationId=
|
|
40
|
+
* List all config values for a scope (secrets masked).
|
|
41
|
+
*/
|
|
42
|
+
list(organizationId?: string | null): Promise<SettingsListResponse>;
|
|
43
|
+
/**
|
|
44
|
+
* PATCH /api/v1/admin/config
|
|
45
|
+
* Set or delete a config value.
|
|
46
|
+
* value=null deletes the entry.
|
|
47
|
+
*/
|
|
48
|
+
set(key: string, value: SettingValue, organizationId?: string | null): Promise<{
|
|
49
|
+
key: string;
|
|
50
|
+
organizationId: string | null;
|
|
51
|
+
updatedAt: string;
|
|
52
|
+
}>;
|
|
53
|
+
/**
|
|
54
|
+
* PATCH /api/v1/admin/config (convenience — value=null deletes)
|
|
55
|
+
* Delete a config value.
|
|
56
|
+
*/
|
|
57
|
+
delete(key: string, organizationId?: string | null): Promise<{
|
|
58
|
+
key: string;
|
|
59
|
+
organizationId: string | null;
|
|
60
|
+
updatedAt: string;
|
|
61
|
+
}>;
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=settings.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/settings.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,CAAA;AAElC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,YAAY,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CACzC;AAaD;;;;;;;GAOG;AACH,qBAAa,cAAc;IACX,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAE7C;;;OAGG;IACG,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,eAAe,CAAC;IAKhF;;;OAGG;IACG,IAAI,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAKzE;;;;OAIG;IACG,GAAG,CACL,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,YAAY,EACnB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAO7E;;;OAGG;IACG,MAAM,CACR,GAAG,EAAE,MAAM,EACX,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAGhF"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
function buildQueryString(params) {
|
|
2
|
+
const searchParams = new URLSearchParams();
|
|
3
|
+
for (const [key, value] of Object.entries(params)) {
|
|
4
|
+
if (value !== undefined && value !== null) {
|
|
5
|
+
searchParams.set(key, value);
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
const query = searchParams.toString();
|
|
9
|
+
return query ? `?${query}` : '';
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* F143: Client for admin config API endpoints (Admin/Vendor only).
|
|
13
|
+
*
|
|
14
|
+
* Endpoints:
|
|
15
|
+
* GET /api/v1/admin/config?key=&organizationId=
|
|
16
|
+
* GET /api/v1/admin/config/all?organizationId=
|
|
17
|
+
* PATCH /api/v1/admin/config
|
|
18
|
+
*/
|
|
19
|
+
export class SettingsClient {
|
|
20
|
+
http;
|
|
21
|
+
constructor(http) {
|
|
22
|
+
this.http = http;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* GET /api/v1/admin/config?key=&organizationId=
|
|
26
|
+
* Get a single config value with hierarchy resolution.
|
|
27
|
+
*/
|
|
28
|
+
async get(key, organizationId) {
|
|
29
|
+
const query = buildQueryString({ key, organizationId });
|
|
30
|
+
return this.http.get(`/admin/config${query}`);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* GET /api/v1/admin/config/all?organizationId=
|
|
34
|
+
* List all config values for a scope (secrets masked).
|
|
35
|
+
*/
|
|
36
|
+
async list(organizationId) {
|
|
37
|
+
const query = buildQueryString({ organizationId });
|
|
38
|
+
return this.http.get(`/admin/config/all${query}`);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* PATCH /api/v1/admin/config
|
|
42
|
+
* Set or delete a config value.
|
|
43
|
+
* value=null deletes the entry.
|
|
44
|
+
*/
|
|
45
|
+
async set(key, value, organizationId) {
|
|
46
|
+
return this.http.patch(`/admin/config`, { key, value, organizationId: organizationId ?? null });
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* PATCH /api/v1/admin/config (convenience — value=null deletes)
|
|
50
|
+
* Delete a config value.
|
|
51
|
+
*/
|
|
52
|
+
async delete(key, organizationId) {
|
|
53
|
+
return this.set(key, null, organizationId);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=settings.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.client.js","sourceRoot":"","sources":["../../../src/clients/admin/settings.client.ts"],"names":[],"mappings":"AAyBA,SAAS,gBAAgB,CAAC,MAAiD;IACvE,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAA;IAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACxC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAChC,CAAC;IACL,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAA;IACrC,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AACnC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,cAAc;IACM;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD;;;OAGG;IACH,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,cAA8B;QACjD,MAAM,KAAK,GAAG,gBAAgB,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAA;QACvD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAkB,gBAAgB,KAAK,EAAE,CAAC,CAAA;IAClE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,cAA8B;QACrC,MAAM,KAAK,GAAG,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC,CAAA;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAuB,oBAAoB,KAAK,EAAE,CAAC,CAAA;IAC3E,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,GAAG,CACL,GAAW,EACX,KAAmB,EACnB,cAA8B;QAE9B,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAClB,eAAe,EACf,EAAE,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,cAAc,IAAI,IAAI,EAAE,CACzD,CAAA;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CACR,GAAW,EACX,cAA8B;QAE9B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,cAAc,CAAC,CAAA;IAC9C,CAAC;CACJ"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { HttpClient } from '../../transport/http-client.js';
|
|
2
|
+
import type { TaskConfig, ConfigSource } from '@beacon-build/core';
|
|
3
|
+
/**
|
|
4
|
+
* Task config response from API.
|
|
5
|
+
*/
|
|
6
|
+
export interface TaskConfigResponse {
|
|
7
|
+
value: TaskConfig;
|
|
8
|
+
source: ConfigSource;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Client for task-config API endpoints.
|
|
12
|
+
* Used by both Admin and Agent SDKs.
|
|
13
|
+
*/
|
|
14
|
+
export declare class TaskConfigClient {
|
|
15
|
+
private readonly http;
|
|
16
|
+
constructor(http: HttpClient);
|
|
17
|
+
/**
|
|
18
|
+
* GET /api/v1/task-config
|
|
19
|
+
* Get task config (typed, with validation).
|
|
20
|
+
*/
|
|
21
|
+
get(organizationId?: string | null): Promise<TaskConfigResponse>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=task-config.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-config.client.d.ts","sourceRoot":"","sources":["../../../src/clients/shared/task-config.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAElE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,UAAU,CAAA;IACjB,MAAM,EAAE,YAAY,CAAA;CACvB;AAaD;;;GAGG;AACH,qBAAa,gBAAgB;IACb,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAE7C;;;OAGG;IACG,GAAG,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAIzE"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
function buildQueryString(params) {
|
|
2
|
+
const searchParams = new URLSearchParams();
|
|
3
|
+
for (const [key, value] of Object.entries(params)) {
|
|
4
|
+
if (value !== undefined && value !== null) {
|
|
5
|
+
searchParams.set(key, value);
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
const query = searchParams.toString();
|
|
9
|
+
return query ? `?${query}` : '';
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Client for task-config API endpoints.
|
|
13
|
+
* Used by both Admin and Agent SDKs.
|
|
14
|
+
*/
|
|
15
|
+
export class TaskConfigClient {
|
|
16
|
+
http;
|
|
17
|
+
constructor(http) {
|
|
18
|
+
this.http = http;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* GET /api/v1/task-config
|
|
22
|
+
* Get task config (typed, with validation).
|
|
23
|
+
*/
|
|
24
|
+
async get(organizationId) {
|
|
25
|
+
const query = buildQueryString({ organizationId });
|
|
26
|
+
return this.http.get(`/task-config${query}`);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=task-config.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-config.client.js","sourceRoot":"","sources":["../../../src/clients/shared/task-config.client.ts"],"names":[],"mappings":"AAWA,SAAS,gBAAgB,CAAC,MAAiD;IACvE,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAA;IAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACxC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAChC,CAAC;IACL,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAA;IACrC,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AACnC,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,gBAAgB;IACI;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD;;;OAGG;IACH,KAAK,CAAC,GAAG,CAAC,cAA8B;QACpC,MAAM,KAAK,GAAG,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC,CAAA;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAqB,eAAe,KAAK,EAAE,CAAC,CAAA;IACpE,CAAC;CACJ"}
|
|
@@ -15,6 +15,8 @@ import { AdminConversationMessagesClient } from '../clients/admin/conversation-m
|
|
|
15
15
|
import { AdminDbClient } from '../clients/admin/db.client.js';
|
|
16
16
|
import { AdminBoardMessagesClient } from '../clients/admin/board-messages.client.js';
|
|
17
17
|
import { AdminGithubProxyClient } from '../clients/admin/github-proxy.client.js';
|
|
18
|
+
import { SettingsClient } from '../clients/admin/settings.client.js';
|
|
19
|
+
import { TaskConfigClient } from '../clients/shared/task-config.client.js';
|
|
18
20
|
export interface AdminSdkConfig {
|
|
19
21
|
/** Base URL for the beacon API (e.g. 'https://api.beacon.build') */
|
|
20
22
|
baseUrl: string;
|
|
@@ -42,6 +44,10 @@ export interface AdminSdk {
|
|
|
42
44
|
/** @deprecated Will be removed with F114 */
|
|
43
45
|
boardMessages: AdminBoardMessagesClient;
|
|
44
46
|
github: AdminGithubProxyClient;
|
|
47
|
+
/** F143: Config management (admin only) */
|
|
48
|
+
settings: SettingsClient;
|
|
49
|
+
/** F143: Task config (read-only for agents, read-write for admin) */
|
|
50
|
+
taskConfig: TaskConfigClient;
|
|
45
51
|
}
|
|
46
52
|
/**
|
|
47
53
|
* createAdminClient — creates an Admin SDK instance authenticated with a User-JWT.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-sdk.d.ts","sourceRoot":"","sources":["../../src/factory/admin-sdk.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAA;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,+BAA+B,EAAE,MAAM,kDAAkD,CAAA;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAA;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;
|
|
1
|
+
{"version":3,"file":"admin-sdk.d.ts","sourceRoot":"","sources":["../../src/factory/admin-sdk.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAA;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,+BAA+B,EAAE,MAAM,kDAAkD,CAAA;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAA;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAE1E,MAAM,WAAW,cAAc;IAC3B,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAA;IACf,4BAA4B;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,0EAA0E;IAC1E,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;CAC9B;AAED,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,gBAAgB,CAAA;IACvB,aAAa,EAAE,wBAAwB,CAAA;IACvC,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,MAAM,EAAE,iBAAiB,CAAA;IACzB,MAAM,EAAE,iBAAiB,CAAA;IACzB,KAAK,EAAE,gBAAgB,CAAA;IACvB,SAAS,EAAE,oBAAoB,CAAA;IAC/B,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,MAAM,EAAE,iBAAiB,CAAA;IACzB,KAAK,EAAE,gBAAgB,CAAA;IACvB,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,SAAS,EAAE,oBAAoB,CAAA;IAC/B,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,oBAAoB,EAAE,+BAA+B,CAAA;IACrD,EAAE,EAAE,aAAa,CAAA;IACjB,4CAA4C;IAC5C,aAAa,EAAE,wBAAwB,CAAA;IACvC,MAAM,EAAE,sBAAsB,CAAA;IAC9B,2CAA2C;IAC3C,QAAQ,EAAE,cAAc,CAAA;IACxB,qEAAqE;IACrE,UAAU,EAAE,gBAAgB,CAAA;CAC/B;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,QAAQ,CAoClE"}
|
|
@@ -17,6 +17,8 @@ import { AdminConversationMessagesClient } from '../clients/admin/conversation-m
|
|
|
17
17
|
import { AdminDbClient } from '../clients/admin/db.client.js';
|
|
18
18
|
import { AdminBoardMessagesClient } from '../clients/admin/board-messages.client.js';
|
|
19
19
|
import { AdminGithubProxyClient } from '../clients/admin/github-proxy.client.js';
|
|
20
|
+
import { SettingsClient } from '../clients/admin/settings.client.js';
|
|
21
|
+
import { TaskConfigClient } from '../clients/shared/task-config.client.js';
|
|
20
22
|
/**
|
|
21
23
|
* createAdminClient — creates an Admin SDK instance authenticated with a User-JWT.
|
|
22
24
|
* Use for admin UIs and user-scoped operations against /api/v1/*.
|
|
@@ -54,6 +56,8 @@ export function createAdminClient(config) {
|
|
|
54
56
|
db: new AdminDbClient(http),
|
|
55
57
|
boardMessages: new AdminBoardMessagesClient(http),
|
|
56
58
|
github: new AdminGithubProxyClient(http),
|
|
59
|
+
settings: new SettingsClient(http),
|
|
60
|
+
taskConfig: new TaskConfigClient(http),
|
|
57
61
|
};
|
|
58
62
|
}
|
|
59
63
|
//# sourceMappingURL=admin-sdk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-sdk.js","sourceRoot":"","sources":["../../src/factory/admin-sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAA;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,+BAA+B,EAAE,MAAM,kDAAkD,CAAA;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAA;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;
|
|
1
|
+
{"version":3,"file":"admin-sdk.js","sourceRoot":"","sources":["../../src/factory/admin-sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AgentTasksClient } from '../clients/agent/tasks.client.js';
|
|
2
2
|
import { AgentMessagingClient } from '../clients/agent/messaging.client.js';
|
|
3
|
+
import { TaskConfigClient } from '../clients/shared/task-config.client.js';
|
|
3
4
|
export interface AgentSdkConfig {
|
|
4
5
|
/** Base URL for the beacon API (e.g. 'https://api.beacon.build') */
|
|
5
6
|
baseUrl: string;
|
|
@@ -11,6 +12,8 @@ export interface AgentSdkConfig {
|
|
|
11
12
|
export interface AgentSdk {
|
|
12
13
|
tasks: AgentTasksClient;
|
|
13
14
|
messaging: AgentMessagingClient;
|
|
15
|
+
/** F143: Task config (read-only) — uses /api/v1 basePath */
|
|
16
|
+
taskConfig: TaskConfigClient;
|
|
14
17
|
}
|
|
15
18
|
/**
|
|
16
19
|
* createAgentClient — creates an Agent SDK instance authenticated with an Agent-JWT.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-sdk.d.ts","sourceRoot":"","sources":["../../src/factory/agent-sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;
|
|
1
|
+
{"version":3,"file":"agent-sdk.d.ts","sourceRoot":"","sources":["../../src/factory/agent-sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAE1E,MAAM,WAAW,cAAc;IAC3B,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAA;IACf,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAA;IAClB,yCAAyC;IACzC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;CAC9B;AAED,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,gBAAgB,CAAA;IACvB,SAAS,EAAE,oBAAoB,CAAA;IAC/B,4DAA4D;IAC5D,UAAU,EAAE,gBAAgB,CAAA;CAC/B;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,QAAQ,CAqBlE"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { HttpClient } from '../transport/http-client.js';
|
|
2
2
|
import { AgentTasksClient } from '../clients/agent/tasks.client.js';
|
|
3
3
|
import { AgentMessagingClient } from '../clients/agent/messaging.client.js';
|
|
4
|
+
import { TaskConfigClient } from '../clients/shared/task-config.client.js';
|
|
4
5
|
/**
|
|
5
6
|
* createAgentClient — creates an Agent SDK instance authenticated with an Agent-JWT.
|
|
6
7
|
* Use for agent runtime operations against /api/agent/v1/*.
|
|
@@ -14,9 +15,17 @@ export function createAgentClient(config) {
|
|
|
14
15
|
getToken: () => config.agentToken,
|
|
15
16
|
onUnauthorized: config.onUnauthorized,
|
|
16
17
|
});
|
|
18
|
+
// Separate client for /api/v1 endpoints (task-config is shared between admin/agent)
|
|
19
|
+
const v1Http = new HttpClient({
|
|
20
|
+
baseUrl: config.baseUrl,
|
|
21
|
+
basePath: '/api/v1',
|
|
22
|
+
getToken: () => config.agentToken,
|
|
23
|
+
onUnauthorized: config.onUnauthorized,
|
|
24
|
+
});
|
|
17
25
|
return {
|
|
18
26
|
tasks: new AgentTasksClient(http),
|
|
19
27
|
messaging: new AgentMessagingClient(http),
|
|
28
|
+
taskConfig: new TaskConfigClient(v1Http),
|
|
20
29
|
};
|
|
21
30
|
}
|
|
22
31
|
//# sourceMappingURL=agent-sdk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-sdk.js","sourceRoot":"","sources":["../../src/factory/agent-sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;
|
|
1
|
+
{"version":3,"file":"agent-sdk.js","sourceRoot":"","sources":["../../src/factory/agent-sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAkB1E;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAsB;IACpD,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,QAAQ,EAAE,eAAe;QACzB,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU;QACjC,cAAc,EAAE,MAAM,CAAC,cAAc;KACxC,CAAC,CAAA;IAEF,oFAAoF;IACpF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC;QAC1B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU;QACjC,cAAc,EAAE,MAAM,CAAC,cAAc;KACxC,CAAC,CAAA;IAEF,OAAO;QACH,KAAK,EAAE,IAAI,gBAAgB,CAAC,IAAI,CAAC;QACjC,SAAS,EAAE,IAAI,oBAAoB,CAAC,IAAI,CAAC;QACzC,UAAU,EAAE,IAAI,gBAAgB,CAAC,MAAM,CAAC;KAC3C,CAAA;AACL,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -34,5 +34,9 @@ export type { TaskListOpsFilter } from './clients/ops/tasks-ops.client.js';
|
|
|
34
34
|
export type { SessionsOpsFilter as SessionsFilter, CreateSessionResult, } from './clients/ops/sessions-ops.client.js';
|
|
35
35
|
export { SdkFactory } from './legacy/sdk-factory.js';
|
|
36
36
|
export type { AgentSdk as LegacyAgentSdk, AgentSdkOptions } from './legacy/sdk-factory.js';
|
|
37
|
-
export
|
|
37
|
+
export { SettingsClient } from './clients/admin/settings.client.js';
|
|
38
|
+
export type { SettingValue, SettingResponse, SettingsListResponse, } from './clients/admin/settings.client.js';
|
|
39
|
+
export { TaskConfigClient } from './clients/shared/task-config.client.js';
|
|
40
|
+
export type { TaskConfigResponse } from './clients/shared/task-config.client.js';
|
|
41
|
+
export type { TaskDto, TaskDetailDto, TaskStatus, TaskType, TaskSize, TaskResult, TaskQueueStats, SessionSummaryDto, SessionListItemDto, SessionWithCosts, Memory, MemoryType, MemoryScope, UpsertMemoryInput, AgentDto, AgentSummaryDto, AgentSessionDto, UserDto, OrganizationDto, OrganizationWithCountDto, OrganizationWithMembersDto, OrganizationMemberDto, ProjectApiItem, Document, Asset, UsageRow, UsageSummaryItem, ConversationMessageDto, SessionMessagesDto, SubagentGroupDto, ToolCallDto, ToolCallSummaryDto, VelocityRow, TimesheetRow, RoadmapData, TaskLogEntry, BoardMessageDto, EnrichedAlert, RealtimePayload, RealtimeChannel, RealtimeEventType, WorkflowLog, AgentContext, TaskConfig, TaskLevelConfig, TaskStateMachineConfig, TaskBoardConfig, SwimLaneConfig, BoardColumnConfig, ConfigSource, } from '@beacon-build/core';
|
|
38
42
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,iBAAiB,EAAE,KAAK,QAAQ,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC9F,OAAO,EAAE,iBAAiB,EAAE,KAAK,QAAQ,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGtF,OAAO,EACH,gBAAgB,EAChB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,QAAQ,GAChB,MAAM,0BAA0B,CAAA;AAGjC,OAAO,EAAE,iBAAiB,EAAE,KAAK,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;AAG/F,OAAO,EAAE,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAGnE,OAAO,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AACrF,OAAO,EAAE,UAAU,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAE9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAGlE,OAAO,EACH,YAAY,EACZ,iBAAiB,EACjB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,WAAW,GACnB,MAAM,eAAe,CAAA;AAKtB,OAAO,EAAE,YAAY,IAAI,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAGlF,OAAO,EAAE,eAAe,IAAI,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACtF,OAAO,EAAE,iBAAiB,IAAI,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAC5F,OAAO,EAAE,iBAAiB,IAAI,eAAe,EAAE,MAAM,sCAAsC,CAAA;AAC3F,OAAO,EAAE,kBAAkB,IAAI,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAChG,OAAO,EAAE,sBAAsB,IAAI,cAAc,EAAE,MAAM,4CAA4C,CAAA;AACrG,OAAO,EAAE,cAAc,IAAI,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAA;AACnF,YAAY,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,YAAY,EACR,iBAAiB,IAAI,cAAc,EACnC,mBAAmB,GACtB,MAAM,sCAAsC,CAAA;AAG7C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,YAAY,EAAE,QAAQ,IAAI,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAG1F,YAAY,EAER,OAAO,EACP,aAAa,EACb,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,cAAc,EAEd,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAEhB,MAAM,EACN,UAAU,EACV,WAAW,EACX,iBAAiB,EAEjB,QAAQ,EACR,eAAe,EACf,eAAe,EAEf,OAAO,EAEP,eAAe,EACf,wBAAwB,EACxB,0BAA0B,EAC1B,qBAAqB,EAErB,cAAc,EAEd,QAAQ,EAER,KAAK,EAEL,QAAQ,EACR,gBAAgB,EAEhB,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EAEhB,WAAW,EACX,kBAAkB,EAElB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,EAEZ,eAAe,EAEf,aAAa,EAEb,eAAe,EACf,eAAe,EACf,iBAAiB,EAEjB,WAAW,EAEX,YAAY,GACf,MAAM,oBAAoB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -43,4 +43,7 @@ export { TasksOpsClient as TaskOpsSdkClient } from './clients/ops/tasks-ops.clie
|
|
|
43
43
|
export { ThreadMessagingOpsClient } from './clients/ops/thread-messaging.client.js';
|
|
44
44
|
// Legacy SdkFactory — wraps new factory functions for backward compat
|
|
45
45
|
export { SdkFactory } from './legacy/sdk-factory.js';
|
|
46
|
+
// F143: Config clients
|
|
47
|
+
export { SettingsClient } from './clients/admin/settings.client.js';
|
|
48
|
+
export { TaskConfigClient } from './clients/shared/task-config.client.js';
|
|
46
49
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,kFAAkF;AAClF,OAAO,EAAE,iBAAiB,EAAsC,MAAM,wBAAwB,CAAA;AAC9F,OAAO,EAAE,iBAAiB,EAAsC,MAAM,wBAAwB,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAkC,MAAM,sBAAsB,CAAA;AAEtF,kFAAkF;AAClF,OAAO,EACH,gBAAgB,GAMnB,MAAM,0BAA0B,CAAA;AAEjC,iFAAiF;AACjF,OAAO,EAAE,iBAAiB,EAAgC,MAAM,+BAA+B,CAAA;AAE/F,iFAAiF;AACjF,OAAO,EAAE,QAAQ,EAAqB,MAAM,uBAAuB,CAAA;AAEnE,gFAAgF;AAChF,OAAO,EAAE,YAAY,EAA2B,MAAM,+BAA+B,CAAA;AACrF,OAAO,EAAE,UAAU,EAAyB,MAAM,4BAA4B,CAAA;AAC9E,uFAAuF;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAElE,iFAAiF;AACjF,OAAO,EACH,YAAY,EACZ,iBAAiB,GAIpB,MAAM,eAAe,CAAA;AAEtB,iFAAiF;AACjF,6DAA6D;AAC7D,2FAA2F;AAC3F,OAAO,EAAE,YAAY,IAAI,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAElF,gFAAgF;AAChF,OAAO,EAAE,eAAe,IAAI,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACtF,OAAO,EAAE,iBAAiB,IAAI,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAC5F,OAAO,EAAE,iBAAiB,IAAI,eAAe,EAAE,MAAM,sCAAsC,CAAA;AAC3F,OAAO,EAAE,kBAAkB,IAAI,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAChG,OAAO,EAAE,sBAAsB,IAAI,cAAc,EAAE,MAAM,4CAA4C,CAAA;AACrG,OAAO,EAAE,cAAc,IAAI,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAA;AAOnF,sEAAsE;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,kFAAkF;AAClF,OAAO,EAAE,iBAAiB,EAAsC,MAAM,wBAAwB,CAAA;AAC9F,OAAO,EAAE,iBAAiB,EAAsC,MAAM,wBAAwB,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAkC,MAAM,sBAAsB,CAAA;AAEtF,kFAAkF;AAClF,OAAO,EACH,gBAAgB,GAMnB,MAAM,0BAA0B,CAAA;AAEjC,iFAAiF;AACjF,OAAO,EAAE,iBAAiB,EAAgC,MAAM,+BAA+B,CAAA;AAE/F,iFAAiF;AACjF,OAAO,EAAE,QAAQ,EAAqB,MAAM,uBAAuB,CAAA;AAEnE,gFAAgF;AAChF,OAAO,EAAE,YAAY,EAA2B,MAAM,+BAA+B,CAAA;AACrF,OAAO,EAAE,UAAU,EAAyB,MAAM,4BAA4B,CAAA;AAC9E,uFAAuF;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAElE,iFAAiF;AACjF,OAAO,EACH,YAAY,EACZ,iBAAiB,GAIpB,MAAM,eAAe,CAAA;AAEtB,iFAAiF;AACjF,6DAA6D;AAC7D,2FAA2F;AAC3F,OAAO,EAAE,YAAY,IAAI,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAElF,gFAAgF;AAChF,OAAO,EAAE,eAAe,IAAI,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACtF,OAAO,EAAE,iBAAiB,IAAI,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAC5F,OAAO,EAAE,iBAAiB,IAAI,eAAe,EAAE,MAAM,sCAAsC,CAAA;AAC3F,OAAO,EAAE,kBAAkB,IAAI,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAChG,OAAO,EAAE,sBAAsB,IAAI,cAAc,EAAE,MAAM,4CAA4C,CAAA;AACrG,OAAO,EAAE,cAAc,IAAI,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAA;AAOnF,sEAAsE;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAGpD,uBAAuB;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AAMnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA"}
|
|
@@ -11,6 +11,7 @@ import { MemoriesOpsClient } from '../clients/ops/memories-ops.client.js';
|
|
|
11
11
|
import { SessionsOpsClient } from '../clients/ops/sessions-ops.client.js';
|
|
12
12
|
import { ToolCallsOpsClient } from '../clients/ops/tool-calls-ops.client.js';
|
|
13
13
|
import { AgentsOpsClient } from '../clients/ops/agents-ops.client.js';
|
|
14
|
+
import { TaskConfigClient } from '../clients/shared/task-config.client.js';
|
|
14
15
|
export interface AgentSdkOptions {
|
|
15
16
|
/** Agent-scoped JWT issued by POST /api/v1/agent-token */
|
|
16
17
|
agentToken: string;
|
|
@@ -26,6 +27,8 @@ export interface AgentSdk {
|
|
|
26
27
|
sessions: SessionsOpsClient;
|
|
27
28
|
toolCalls: ToolCallsOpsClient;
|
|
28
29
|
agents: AgentsOpsClient;
|
|
30
|
+
/** F143: Task config client for accessing task configuration */
|
|
31
|
+
taskConfig: TaskConfigClient;
|
|
29
32
|
}
|
|
30
33
|
/** @deprecated Use createAgentClient() + createOpsClient() instead */
|
|
31
34
|
export declare class SdkFactory {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk-factory.d.ts","sourceRoot":"","sources":["../../src/legacy/sdk-factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAA;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;
|
|
1
|
+
{"version":3,"file":"sdk-factory.d.ts","sourceRoot":"","sources":["../../src/legacy/sdk-factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAA;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAE1E,MAAM,WAAW,eAAe;IAC5B,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAA;IAClB,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,gBAAgB,CAAA;IACvB,SAAS,EAAE,oBAAoB,CAAA;IAC/B,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,SAAS,EAAE,kBAAkB,CAAA;IAC7B,MAAM,EAAE,eAAe,CAAA;IACvB,gEAAgE;IAChE,UAAU,EAAE,gBAAgB,CAAA;CAC/B;AAED,sEAAsE;AACtE,qBAAa,UAAU;IACnB,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,GAAG,QAAQ;CAiB3E"}
|
|
@@ -12,6 +12,7 @@ import { MemoriesOpsClient } from '../clients/ops/memories-ops.client.js';
|
|
|
12
12
|
import { SessionsOpsClient } from '../clients/ops/sessions-ops.client.js';
|
|
13
13
|
import { ToolCallsOpsClient } from '../clients/ops/tool-calls-ops.client.js';
|
|
14
14
|
import { AgentsOpsClient } from '../clients/ops/agents-ops.client.js';
|
|
15
|
+
import { TaskConfigClient } from '../clients/shared/task-config.client.js';
|
|
15
16
|
/** @deprecated Use createAgentClient() + createOpsClient() instead */
|
|
16
17
|
export class SdkFactory {
|
|
17
18
|
static forAgent(_context, opts) {
|
|
@@ -28,6 +29,7 @@ export class SdkFactory {
|
|
|
28
29
|
sessions: new SessionsOpsClient(opsApi),
|
|
29
30
|
toolCalls: new ToolCallsOpsClient(opsApi),
|
|
30
31
|
agents: new AgentsOpsClient(opsApi),
|
|
32
|
+
taskConfig: new TaskConfigClient(http),
|
|
31
33
|
};
|
|
32
34
|
}
|
|
33
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk-factory.js","sourceRoot":"","sources":["../../src/legacy/sdk-factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAA;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;
|
|
1
|
+
{"version":3,"file":"sdk-factory.js","sourceRoot":"","sources":["../../src/legacy/sdk-factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAA;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAsB1E,sEAAsE;AACtE,MAAM,OAAO,UAAU;IACnB,MAAM,CAAC,QAAQ,CAAC,QAAsB,EAAE,IAAqB;QACzD,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC;YACxB,OAAO,EAAE,IAAI,CAAC,MAAM;YACpB,QAAQ,EAAE,eAAe;YACzB,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU;SAClC,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QAC9E,OAAO;YACH,KAAK,EAAE,IAAI,gBAAgB,CAAC,IAAI,CAAC;YACjC,SAAS,EAAE,IAAI,oBAAoB,CAAC,IAAI,CAAC;YACzC,QAAQ,EAAE,IAAI,iBAAiB,CAAC,MAAM,CAAC;YACvC,QAAQ,EAAE,IAAI,iBAAiB,CAAC,MAAM,CAAC;YACvC,SAAS,EAAE,IAAI,kBAAkB,CAAC,MAAM,CAAC;YACzC,MAAM,EAAE,IAAI,eAAe,CAAC,MAAM,CAAC;YACnC,UAAU,EAAE,IAAI,gBAAgB,CAAC,IAAI,CAAC;SACzC,CAAA;IACL,CAAC;CACJ"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RealtimeProvider — F141
|
|
3
|
+
*
|
|
4
|
+
* Context provider for the beacon Realtime SSE client.
|
|
5
|
+
* Wrap your app with <RealtimeProvider baseUrl authToken> to enable useRealtime().
|
|
6
|
+
*
|
|
7
|
+
* INV-19: useRealtime() without <RealtimeProvider> throws RealtimeProviderNotFoundError.
|
|
8
|
+
*/
|
|
9
|
+
import React from 'react';
|
|
10
|
+
export interface RealtimeContextValue {
|
|
11
|
+
baseUrl: string;
|
|
12
|
+
authToken: string;
|
|
13
|
+
}
|
|
14
|
+
export declare class RealtimeProviderNotFoundError extends Error {
|
|
15
|
+
constructor();
|
|
16
|
+
}
|
|
17
|
+
export interface RealtimeProviderProps {
|
|
18
|
+
/** API base URL, e.g. 'https://api.beacon.build' */
|
|
19
|
+
baseUrl: string;
|
|
20
|
+
/** User-JWT or Agent-JWT */
|
|
21
|
+
authToken: string;
|
|
22
|
+
children: React.ReactNode;
|
|
23
|
+
}
|
|
24
|
+
export declare const RealtimeProvider: React.FC<RealtimeProviderProps>;
|
|
25
|
+
/**
|
|
26
|
+
* Internal hook — reads RealtimeContext. Throws RealtimeProviderNotFoundError
|
|
27
|
+
* if called outside of <RealtimeProvider>.
|
|
28
|
+
*/
|
|
29
|
+
export declare function useRealtimeContext(): RealtimeContextValue;
|
|
30
|
+
//# sourceMappingURL=RealtimeProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RealtimeProvider.d.ts","sourceRoot":"","sources":["../../src/react/RealtimeProvider.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAoC,MAAM,OAAO,CAAA;AAIxD,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CACpB;AAMD,qBAAa,6BAA8B,SAAQ,KAAK;;CAQvD;AAID,MAAM,WAAW,qBAAqB;IAClC,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAA;IACf,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC5B;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAU5D,CAAA;AAID;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,oBAAoB,CAIzD"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* RealtimeProvider — F141
|
|
4
|
+
*
|
|
5
|
+
* Context provider for the beacon Realtime SSE client.
|
|
6
|
+
* Wrap your app with <RealtimeProvider baseUrl authToken> to enable useRealtime().
|
|
7
|
+
*
|
|
8
|
+
* INV-19: useRealtime() without <RealtimeProvider> throws RealtimeProviderNotFoundError.
|
|
9
|
+
*/
|
|
10
|
+
import { createContext, useContext } from 'react';
|
|
11
|
+
const RealtimeContext = createContext(null);
|
|
12
|
+
// ─── Error ────────────────────────────────────────────────────────────────────
|
|
13
|
+
export class RealtimeProviderNotFoundError extends Error {
|
|
14
|
+
constructor() {
|
|
15
|
+
super('useRealtime() was called outside of <RealtimeProvider>. ' +
|
|
16
|
+
'Wrap your app with <RealtimeProvider baseUrl={...} authToken={...}>.');
|
|
17
|
+
this.name = 'RealtimeProviderNotFoundError';
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export const RealtimeProvider = ({ baseUrl, authToken, children, }) => {
|
|
21
|
+
return (_jsx(RealtimeContext.Provider, { value: { baseUrl, authToken }, children: children }));
|
|
22
|
+
};
|
|
23
|
+
// ─── Context hook ─────────────────────────────────────────────────────────────
|
|
24
|
+
/**
|
|
25
|
+
* Internal hook — reads RealtimeContext. Throws RealtimeProviderNotFoundError
|
|
26
|
+
* if called outside of <RealtimeProvider>.
|
|
27
|
+
*/
|
|
28
|
+
export function useRealtimeContext() {
|
|
29
|
+
const ctx = useContext(RealtimeContext);
|
|
30
|
+
if (!ctx)
|
|
31
|
+
throw new RealtimeProviderNotFoundError();
|
|
32
|
+
return ctx;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=RealtimeProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RealtimeProvider.js","sourceRoot":"","sources":["../../src/react/RealtimeProvider.tsx"],"names":[],"mappings":";AAAA;;;;;;;GAOG;AAEH,OAAc,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AASxD,MAAM,eAAe,GAAG,aAAa,CAA8B,IAAI,CAAC,CAAA;AAExE,iFAAiF;AAEjF,MAAM,OAAO,6BAA8B,SAAQ,KAAK;IACpD;QACI,KAAK,CACD,0DAA0D;YACtD,sEAAsE,CAC7E,CAAA;QACD,IAAI,CAAC,IAAI,GAAG,+BAA+B,CAAA;IAC/C,CAAC;CACJ;AAYD,MAAM,CAAC,MAAM,gBAAgB,GAAoC,CAAC,EAC9D,OAAO,EACP,SAAS,EACT,QAAQ,GACX,EAAE,EAAE;IACD,OAAO,CACH,KAAC,eAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,YAClD,QAAQ,GACc,CAC9B,CAAA;AACL,CAAC,CAAA;AAED,iFAAiF;AAEjF;;;GAGG;AACH,MAAM,UAAU,kBAAkB;IAC9B,MAAM,GAAG,GAAG,UAAU,CAAC,eAAe,CAAC,CAAA;IACvC,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,6BAA6B,EAAE,CAAA;IACnD,OAAO,GAAG,CAAA;AACd,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { RealtimeProvider, useRealtimeContext, RealtimeProviderNotFoundError, } from './RealtimeProvider.js';
|
|
2
|
+
export type { RealtimeProviderProps, RealtimeContextValue } from './RealtimeProvider.js';
|
|
3
|
+
export { useRealtime } from './useRealtime.js';
|
|
4
|
+
export type { UseRealtimeOptions, UseRealtimeResult } from './useRealtime.js';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,gBAAgB,EAChB,kBAAkB,EAClB,6BAA6B,GAChC,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAExF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// ─── React Integration for @beacon-build/sdk (F141) ───────────────────────────
|
|
2
|
+
//
|
|
3
|
+
// These exports moved from @beacon-build/ui → @beacon-build/sdk (C128).
|
|
4
|
+
// Consumers should import directly from @beacon-build/sdk.
|
|
5
|
+
export { RealtimeProvider, useRealtimeContext, RealtimeProviderNotFoundError, } from './RealtimeProvider.js';
|
|
6
|
+
export { useRealtime } from './useRealtime.js';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,EAAE;AACF,wEAAwE;AACxE,2DAA2D;AAE3D,OAAO,EACH,gBAAgB,EAChB,kBAAkB,EAClB,6BAA6B,GAChC,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useRealtime — F141
|
|
3
|
+
*
|
|
4
|
+
* Thin React wrapper over RealtimeSdkClient.
|
|
5
|
+
* Subscribes to one or more channels and calls onEvent when an event arrives.
|
|
6
|
+
*
|
|
7
|
+
* Lifecycle:
|
|
8
|
+
* - Connects on mount (if enabled !== false).
|
|
9
|
+
* - Disconnects on unmount (INV-13).
|
|
10
|
+
* - React StrictMode-compatible: double-mount produces effectively one connection
|
|
11
|
+
* after the cleanup cycle.
|
|
12
|
+
* - Reconnects when channels string representation changes.
|
|
13
|
+
*
|
|
14
|
+
* INV-19: Must be used inside <RealtimeProvider>. Throws RealtimeProviderNotFoundError otherwise.
|
|
15
|
+
*/
|
|
16
|
+
import type { RealtimeChannel, RealtimeEventType } from '@beacon-build/core';
|
|
17
|
+
export interface UseRealtimeOptions<T extends Record<string, unknown> = Record<string, unknown>> {
|
|
18
|
+
channels: RealtimeChannel[];
|
|
19
|
+
eventType: RealtimeEventType;
|
|
20
|
+
onEvent: (data: T) => void;
|
|
21
|
+
/** default: true */
|
|
22
|
+
enabled?: boolean;
|
|
23
|
+
onError?: (error: Error) => void;
|
|
24
|
+
}
|
|
25
|
+
export interface UseRealtimeResult {
|
|
26
|
+
isConnected: boolean;
|
|
27
|
+
error: Error | null;
|
|
28
|
+
}
|
|
29
|
+
export declare function useRealtime<T extends Record<string, unknown> = Record<string, unknown>>(options: UseRealtimeOptions<T>): UseRealtimeResult;
|
|
30
|
+
//# sourceMappingURL=useRealtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRealtime.d.ts","sourceRoot":"","sources":["../../src/react/useRealtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAK5E,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3F,QAAQ,EAAE,eAAe,EAAE,CAAA;IAC3B,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;IAC1B,oBAAoB;IACpB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;CACnC;AAED,MAAM,WAAW,iBAAiB;IAC9B,WAAW,EAAE,OAAO,CAAA;IACpB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;CACtB;AAID,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnF,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC/B,iBAAiB,CAkDnB"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useRealtime — F141
|
|
3
|
+
*
|
|
4
|
+
* Thin React wrapper over RealtimeSdkClient.
|
|
5
|
+
* Subscribes to one or more channels and calls onEvent when an event arrives.
|
|
6
|
+
*
|
|
7
|
+
* Lifecycle:
|
|
8
|
+
* - Connects on mount (if enabled !== false).
|
|
9
|
+
* - Disconnects on unmount (INV-13).
|
|
10
|
+
* - React StrictMode-compatible: double-mount produces effectively one connection
|
|
11
|
+
* after the cleanup cycle.
|
|
12
|
+
* - Reconnects when channels string representation changes.
|
|
13
|
+
*
|
|
14
|
+
* INV-19: Must be used inside <RealtimeProvider>. Throws RealtimeProviderNotFoundError otherwise.
|
|
15
|
+
*/
|
|
16
|
+
import { useEffect, useRef, useState } from 'react';
|
|
17
|
+
import { RealtimeSdkClient } from '../realtime/realtime.client.js';
|
|
18
|
+
import { useRealtimeContext } from './RealtimeProvider.js';
|
|
19
|
+
// ─── Hook ─────────────────────────────────────────────────────────────────────
|
|
20
|
+
export function useRealtime(options) {
|
|
21
|
+
const { baseUrl, authToken } = useRealtimeContext();
|
|
22
|
+
const [isConnected, setIsConnected] = useState(false);
|
|
23
|
+
const [error, setError] = useState(null);
|
|
24
|
+
// Stable refs for handlers — avoids triggering re-connects on every render
|
|
25
|
+
const onEventRef = useRef(options.onEvent);
|
|
26
|
+
onEventRef.current = options.onEvent;
|
|
27
|
+
const onErrorRef = useRef(options.onError);
|
|
28
|
+
onErrorRef.current = options.onError;
|
|
29
|
+
const enabled = options.enabled !== false;
|
|
30
|
+
// Serialize channels for deep-compare in useEffect deps
|
|
31
|
+
const channelsKey = options.channels.slice().sort().join(',');
|
|
32
|
+
useEffect(() => {
|
|
33
|
+
if (!enabled)
|
|
34
|
+
return;
|
|
35
|
+
const client = new RealtimeSdkClient({
|
|
36
|
+
baseUrl,
|
|
37
|
+
authToken,
|
|
38
|
+
channels: options.channels,
|
|
39
|
+
onConnect: () => {
|
|
40
|
+
setIsConnected(true);
|
|
41
|
+
setError(null);
|
|
42
|
+
},
|
|
43
|
+
onDisconnect: () => {
|
|
44
|
+
setIsConnected(false);
|
|
45
|
+
},
|
|
46
|
+
onError: (err) => {
|
|
47
|
+
setError(err);
|
|
48
|
+
onErrorRef.current?.(err);
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
client.on(options.eventType, (data) => {
|
|
52
|
+
onEventRef.current(data);
|
|
53
|
+
});
|
|
54
|
+
client.connect();
|
|
55
|
+
return () => {
|
|
56
|
+
client.disconnect();
|
|
57
|
+
setIsConnected(false);
|
|
58
|
+
};
|
|
59
|
+
// channelsKey covers the channels array. authToken + baseUrl + eventType are stable by convention.
|
|
60
|
+
}, [baseUrl, authToken, channelsKey, options.eventType, enabled]);
|
|
61
|
+
return { isConnected, error };
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=useRealtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRealtime.js","sourceRoot":"","sources":["../../src/react/useRealtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAkB1D,iFAAiF;AAEjF,MAAM,UAAU,WAAW,CACvB,OAA8B;IAE9B,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,kBAAkB,EAAE,CAAA;IACnD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACrD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAA;IAEtD,2EAA2E;IAC3E,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1C,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;IACpC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1C,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;IAEpC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,KAAK,CAAA;IAEzC,wDAAwD;IACxD,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAE7D,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,CAAC,OAAO;YAAE,OAAM;QAEpB,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC;YACjC,OAAO;YACP,SAAS;YACT,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,GAAG,EAAE;gBACZ,cAAc,CAAC,IAAI,CAAC,CAAA;gBACpB,QAAQ,CAAC,IAAI,CAAC,CAAA;YAClB,CAAC;YACD,YAAY,EAAE,GAAG,EAAE;gBACf,cAAc,CAAC,KAAK,CAAC,CAAA;YACzB,CAAC;YACD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACb,QAAQ,CAAC,GAAG,CAAC,CAAA;gBACb,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;YAC7B,CAAC;SACJ,CAAC,CAAA;QAEF,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;YAClC,UAAU,CAAC,OAAO,CAAC,IAAS,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;QAEF,MAAM,CAAC,OAAO,EAAE,CAAA;QAEhB,OAAO,GAAG,EAAE;YACR,MAAM,CAAC,UAAU,EAAE,CAAA;YACnB,cAAc,CAAC,KAAK,CAAC,CAAA;QACzB,CAAC,CAAA;QACD,mGAAmG;IACvG,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;IAEjE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAA;AACjC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@beacon-build/sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.18.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"import": "./dist/index.js",
|
|
10
|
+
"types": "./dist/index.d.ts"
|
|
11
|
+
},
|
|
12
|
+
"./react": {
|
|
13
|
+
"import": "./dist/react/index.js",
|
|
14
|
+
"types": "./dist/react/index.d.ts"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
7
17
|
"files": [
|
|
8
18
|
"dist",
|
|
9
19
|
"README.md",
|
|
@@ -11,13 +21,24 @@
|
|
|
11
21
|
"CHANGELOG.md"
|
|
12
22
|
],
|
|
13
23
|
"dependencies": {
|
|
14
|
-
"@beacon-build/core": "1.16.1",
|
|
15
24
|
"@types/event-source-polyfill": "^1.0.5",
|
|
16
|
-
"event-source-polyfill": "^1.0.31"
|
|
25
|
+
"event-source-polyfill": "^1.0.31",
|
|
26
|
+
"@beacon-build/core": "1.18.1"
|
|
17
27
|
},
|
|
18
28
|
"devDependencies": {
|
|
29
|
+
"@testing-library/react": "^16.3.2",
|
|
30
|
+
"@types/react": "^19.2.0",
|
|
31
|
+
"@types/react-dom": "^19.2.0",
|
|
32
|
+
"@vitejs/plugin-react": "^4.7.0",
|
|
33
|
+
"jsdom": "^29.1.1",
|
|
34
|
+
"react": "^19.2.0",
|
|
35
|
+
"react-dom": "^19.2.0",
|
|
19
36
|
"vitest": "^4.1.2"
|
|
20
37
|
},
|
|
38
|
+
"peerDependencies": {
|
|
39
|
+
"react": "^19.0.0",
|
|
40
|
+
"react-dom": "^19.0.0"
|
|
41
|
+
},
|
|
21
42
|
"publishConfig": {
|
|
22
43
|
"registry": "https://registry.npmjs.org",
|
|
23
44
|
"access": "public"
|