@beacon-build/sdk 2.17.1 → 3.0.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.
Files changed (52) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/clients/billing-requests.types.d.ts +48 -0
  3. package/dist/clients/billing-requests.types.d.ts.map +1 -0
  4. package/dist/clients/billing-requests.types.js +2 -0
  5. package/dist/clients/billing-requests.types.js.map +1 -0
  6. package/dist/clients/billing-seat-fees.types.d.ts +105 -0
  7. package/dist/clients/billing-seat-fees.types.d.ts.map +1 -0
  8. package/dist/clients/billing-seat-fees.types.js +2 -0
  9. package/dist/clients/billing-seat-fees.types.js.map +1 -0
  10. package/dist/clients/billing.client.d.ts +121 -0
  11. package/dist/clients/billing.client.d.ts.map +1 -0
  12. package/dist/clients/billing.client.js +116 -0
  13. package/dist/clients/billing.client.js.map +1 -0
  14. package/dist/clients/capture.client.d.ts +5 -1
  15. package/dist/clients/capture.client.d.ts.map +1 -1
  16. package/dist/clients/capture.client.js.map +1 -1
  17. package/dist/factory/agent-sdk.d.ts +5 -2
  18. package/dist/factory/agent-sdk.d.ts.map +1 -1
  19. package/dist/factory/agent-sdk.js +2 -1
  20. package/dist/factory/agent-sdk.js.map +1 -1
  21. package/dist/factory/tenant-agent-sdk.d.ts +27 -0
  22. package/dist/factory/tenant-agent-sdk.d.ts.map +1 -0
  23. package/dist/factory/tenant-agent-sdk.js +136 -0
  24. package/dist/factory/tenant-agent-sdk.js.map +1 -0
  25. package/dist/factory/user-sdk.d.ts +11 -0
  26. package/dist/factory/user-sdk.d.ts.map +1 -1
  27. package/dist/factory/user-sdk.js +16 -0
  28. package/dist/factory/user-sdk.js.map +1 -1
  29. package/dist/index.d.ts +7 -2
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +8 -2
  32. package/dist/index.js.map +1 -1
  33. package/dist/manifest.negative-list.d.ts.map +1 -1
  34. package/dist/manifest.negative-list.js +11 -1
  35. package/dist/manifest.negative-list.js.map +1 -1
  36. package/dist/manifest.public-entries.d.ts +1 -1
  37. package/dist/manifest.public-entries.d.ts.map +1 -1
  38. package/dist/manifest.public-entries.js +3 -1
  39. package/dist/manifest.public-entries.js.map +1 -1
  40. package/dist/transport/errors.d.ts +7 -1
  41. package/dist/transport/errors.d.ts.map +1 -1
  42. package/dist/transport/errors.js +6 -1
  43. package/dist/transport/errors.js.map +1 -1
  44. package/dist/transport/http-client.d.ts +14 -2
  45. package/dist/transport/http-client.d.ts.map +1 -1
  46. package/dist/transport/http-client.js +24 -10
  47. package/dist/transport/http-client.js.map +1 -1
  48. package/dist/transport/request-origin.d.ts +44 -0
  49. package/dist/transport/request-origin.d.ts.map +1 -0
  50. package/dist/transport/request-origin.js +99 -0
  51. package/dist/transport/request-origin.js.map +1 -0
  52. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/transport/http-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/transport/http-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import type { BillingOrigin } from '@beacon-build/core';
2
+ /** Run `fn` with every transport request it starts synchronously marked `background`. */
3
+ export declare function runWithBackgroundOrigin<T>(fn: () => T): T;
4
+ /**
5
+ * The origin header(s) a transport attaches to the request it is about to send: an explicit
6
+ * per-request `origin` wins, otherwise the ambient `runWithBackgroundOrigin` scope decides.
7
+ * Returns `{}` for `interactive` — the header is simply omitted (the server default).
8
+ */
9
+ export declare function requestOriginHeaders(origin?: BillingOrigin): Record<string, string>;
10
+ /** The slice of react-query's `Query.state` the refetch decision reads. */
11
+ interface QueryStateLike {
12
+ dataUpdatedAt: number;
13
+ fetchMeta?: unknown;
14
+ }
15
+ /** The slice of react-query's defaulted query options the wrapper reads. */
16
+ interface PollingQueryOptionsLike {
17
+ queryFn?: unknown;
18
+ refetchInterval?: unknown;
19
+ queryHash?: string;
20
+ }
21
+ /** The slice of react-query's `QueryClient` `installBackgroundRefetchOrigin` needs. */
22
+ interface QueryClientLike {
23
+ defaultQueryOptions: (options: never) => object;
24
+ getQueryCache(): {
25
+ get(queryHash: string): {
26
+ state: QueryStateLike;
27
+ } | undefined;
28
+ };
29
+ }
30
+ /**
31
+ * Wrap a polling query's `queryFn` so its background refetches run inside
32
+ * `runWithBackgroundOrigin`. Non-polling queries (no positive/function `refetchInterval`) and
33
+ * non-function `queryFn`s (e.g. `skipToken`) are returned unchanged.
34
+ */
35
+ export declare function withBackgroundRefetchOrigin<O extends PollingQueryOptionsLike>(options: O, getQueryState: (queryHash: string) => QueryStateLike | undefined): O;
36
+ /**
37
+ * C907/AC-8: make every polling query of `client` send its background refetches with
38
+ * `X-Beacon-Request-Origin: background`. Hooks into `QueryClient.defaultQueryOptions` — the one
39
+ * chokepoint every `useQuery`/`useInfiniteQuery` observer and `fetchQuery` resolves its options
40
+ * through — so no individual `refetchInterval` call site needs to know about billing.
41
+ */
42
+ export declare function installBackgroundRefetchOrigin<C extends QueryClientLike>(client: C): C;
43
+ export {};
44
+ //# sourceMappingURL=request-origin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-origin.d.ts","sourceRoot":"","sources":["../../src/transport/request-origin.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAKvD,yFAAyF;AACzF,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAOzD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGnF;AAED,2EAA2E;AAC3E,UAAU,cAAc;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,4EAA4E;AAC5E,UAAU,uBAAuB;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,uFAAuF;AACvF,UAAU,eAAe;IACrB,mBAAmB,EAAE,CAAC,OAAO,EAAE,KAAK,KAAK,MAAM,CAAA;IAC/C,aAAa,IAAI;QAAE,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG;YAAE,KAAK,EAAE,cAAc,CAAA;SAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CACrF;AA6BD;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,uBAAuB,EACzE,OAAO,EAAE,CAAC,EACV,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,cAAc,GAAG,SAAS,GACjE,CAAC,CAiBH;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,CAAC,SAAS,eAAe,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAStF"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * C907/AC-8 — client-side billing-origin marking.
3
+ *
4
+ * An automatically repeated call (a poll, a react-query `refetchInterval` refetch) sends
5
+ * `X-Beacon-Request-Origin: background` (the header contract lives in `@beacon-build/core`'s
6
+ * `metrics/request-origin.ts`) so the API counts it but never bills it. A client can only ever
7
+ * mark itself LESS billable — absent/unknown values are `interactive` server-side.
8
+ *
9
+ * Two ways to mark a request:
10
+ * 1. Explicitly, per request — `HttpClient.get(path, { origin: 'background' })`.
11
+ * 2. Ambiently — `runWithBackgroundOrigin(fn)`: every transport request STARTED synchronously
12
+ * inside `fn` (before its first `await`) is marked. Browsers have no async context
13
+ * propagation, so transports read the scope via `requestOriginHeaders()` as the FIRST
14
+ * thing they do, before any `await`. A request started after an `await` inside `fn` falls
15
+ * back to `interactive` — the conservative direction (counted billable), never the reverse.
16
+ *
17
+ * `installBackgroundRefetchOrigin` wires (2) into a react-query `QueryClient` for every polling
18
+ * query, without a dependency on react-query itself (structural types only).
19
+ */
20
+ // From the pure `/ide` subpath (not `core/browser`): the beacon-ide portal bundles the SDK and
21
+ // only `core/ide` alongside it — see packages/core/src/exports/ide.ts.
22
+ import { BACKGROUND_REQUEST_ORIGIN_HEADERS } from '@beacon-build/core/ide';
23
+ /** Nesting depth of active `runWithBackgroundOrigin` scopes (synchronous only — see header). */
24
+ let backgroundScopeDepth = 0;
25
+ /** Run `fn` with every transport request it starts synchronously marked `background`. */
26
+ export function runWithBackgroundOrigin(fn) {
27
+ backgroundScopeDepth++;
28
+ try {
29
+ return fn();
30
+ }
31
+ finally {
32
+ backgroundScopeDepth--;
33
+ }
34
+ }
35
+ /**
36
+ * The origin header(s) a transport attaches to the request it is about to send: an explicit
37
+ * per-request `origin` wins, otherwise the ambient `runWithBackgroundOrigin` scope decides.
38
+ * Returns `{}` for `interactive` — the header is simply omitted (the server default).
39
+ */
40
+ export function requestOriginHeaders(origin) {
41
+ const resolved = origin ?? (backgroundScopeDepth > 0 ? 'background' : 'interactive');
42
+ return resolved === 'background' ? { ...BACKGROUND_REQUEST_ORIGIN_HEADERS } : {};
43
+ }
44
+ /** Already-wrapped queryFns — `defaultQueryOptions` re-runs on already-defaulted options. */
45
+ const wrappedQueryFns = new WeakSet();
46
+ function isPollingQuery(refetchInterval) {
47
+ // A function interval decides per tick (e.g. visibility-gated) — still a polling query.
48
+ return (typeof refetchInterval === 'function' ||
49
+ (typeof refetchInterval === 'number' && refetchInterval > 0));
50
+ }
51
+ /**
52
+ * Background = a RE-fetch of data the query already holds. The initial load (no data yet) is the
53
+ * user opening the view — interactive. An infinite query's `fetchNextPage`/`fetchPreviousPage`
54
+ * (`fetchMeta.fetchMore`) is a user scroll/click — interactive too.
55
+ *
56
+ * Deliberate trade-off: react-query does not tell a `queryFn` WHY it runs, so interval ticks,
57
+ * window-focus/reconnect refetches, invalidations and a manual `refetch()` of an already-loaded
58
+ * POLLING query are indistinguishable here — all are treated as background. The user action
59
+ * that triggers an invalidation (a mutation) is itself a separate, interactive request.
60
+ */
61
+ function isBackgroundRefetch(state) {
62
+ if (!state || state.dataUpdatedAt <= 0)
63
+ return false;
64
+ const fetchMeta = state.fetchMeta;
65
+ return !fetchMeta?.fetchMore;
66
+ }
67
+ /**
68
+ * Wrap a polling query's `queryFn` so its background refetches run inside
69
+ * `runWithBackgroundOrigin`. Non-polling queries (no positive/function `refetchInterval`) and
70
+ * non-function `queryFn`s (e.g. `skipToken`) are returned unchanged.
71
+ */
72
+ export function withBackgroundRefetchOrigin(options, getQueryState) {
73
+ const { queryFn, refetchInterval, queryHash } = options;
74
+ if (typeof queryFn !== 'function' ||
75
+ wrappedQueryFns.has(queryFn) ||
76
+ !queryHash ||
77
+ !isPollingQuery(refetchInterval)) {
78
+ return options;
79
+ }
80
+ const run = queryFn;
81
+ const wrapped = (...args) => isBackgroundRefetch(getQueryState(queryHash))
82
+ ? runWithBackgroundOrigin(() => run(...args))
83
+ : run(...args);
84
+ wrappedQueryFns.add(wrapped);
85
+ return { ...options, queryFn: wrapped };
86
+ }
87
+ /**
88
+ * C907/AC-8: make every polling query of `client` send its background refetches with
89
+ * `X-Beacon-Request-Origin: background`. Hooks into `QueryClient.defaultQueryOptions` — the one
90
+ * chokepoint every `useQuery`/`useInfiniteQuery` observer and `fetchQuery` resolves its options
91
+ * through — so no individual `refetchInterval` call site needs to know about billing.
92
+ */
93
+ export function installBackgroundRefetchOrigin(client) {
94
+ const base = client.defaultQueryOptions.bind(client);
95
+ const getQueryState = (queryHash) => client.getQueryCache().get(queryHash)?.state;
96
+ client.defaultQueryOptions = ((options) => withBackgroundRefetchOrigin(base(options), getQueryState));
97
+ return client;
98
+ }
99
+ //# sourceMappingURL=request-origin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-origin.js","sourceRoot":"","sources":["../../src/transport/request-origin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,+FAA+F;AAC/F,uEAAuE;AACvE,OAAO,EAAE,iCAAiC,EAAE,MAAM,wBAAwB,CAAA;AAG1E,gGAAgG;AAChG,IAAI,oBAAoB,GAAG,CAAC,CAAA;AAE5B,yFAAyF;AACzF,MAAM,UAAU,uBAAuB,CAAI,EAAW;IAClD,oBAAoB,EAAE,CAAA;IACtB,IAAI,CAAC;QACD,OAAO,EAAE,EAAE,CAAA;IACf,CAAC;YAAS,CAAC;QACP,oBAAoB,EAAE,CAAA;IAC1B,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAsB;IACvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;IACpF,OAAO,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,iCAAiC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AACpF,CAAC;AAqBD,6FAA6F;AAC7F,MAAM,eAAe,GAAG,IAAI,OAAO,EAAU,CAAA;AAE7C,SAAS,cAAc,CAAC,eAAwB;IAC5C,wFAAwF;IACxF,OAAO,CACH,OAAO,eAAe,KAAK,UAAU;QACrC,CAAC,OAAO,eAAe,KAAK,QAAQ,IAAI,eAAe,GAAG,CAAC,CAAC,CAC/D,CAAA;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,mBAAmB,CAAC,KAAiC;IAC1D,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IACpD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAuD,CAAA;IAC/E,OAAO,CAAC,SAAS,EAAE,SAAS,CAAA;AAChC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CACvC,OAAU,EACV,aAAgE;IAEhE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;IACvD,IACI,OAAO,OAAO,KAAK,UAAU;QAC7B,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC;QAC5B,CAAC,SAAS;QACV,CAAC,cAAc,CAAC,eAAe,CAAC,EAClC,CAAC;QACC,OAAO,OAAO,CAAA;IAClB,CAAC;IACD,MAAM,GAAG,GAAG,OAA0C,CAAA;IACtD,MAAM,OAAO,GAAG,CAAC,GAAG,IAAe,EAAW,EAAE,CAC5C,mBAAmB,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QAC7C,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAA;IACtB,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAC5B,OAAO,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B,CAA4B,MAAS;IAC/E,MAAM,IAAI,GAAG,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAiC,CAAA;IACpF,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,CAAA;IACzF,MAAM,CAAC,mBAAmB,GAAG,CAAC,CAAC,OAAgB,EAAE,EAAE,CAC/C,2BAA2B,CACvB,IAAI,CAAC,OAAO,CAA4B,EACxC,aAAa,CAChB,CAA6B,CAAA;IAClC,OAAO,MAAM,CAAA;AACjB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@beacon-build/sdk",
3
- "version": "2.17.1",
3
+ "version": "3.0.0",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -26,7 +26,7 @@
26
26
  "@types/react": "^19.2.0",
27
27
  "@types/react-dom": "^19.2.0",
28
28
  "event-source-polyfill": "^1.0.31",
29
- "@beacon-build/core": "2.17.1"
29
+ "@beacon-build/core": "3.0.0"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@testing-library/react": "^16.3.2",