@kortix/sdk 0.12.7 → 0.13.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.
- package/README.md +13 -6
- package/dist/browser/session-sync/session-sync-registry.d.ts +7 -2
- package/dist/browser/session-sync/session-sync-registry.d.ts.map +1 -1
- package/dist/browser/session-sync/session-sync-registry.js +33 -44
- package/dist/browser/session-sync/session-sync-registry.js.map +1 -1
- package/dist/browser/stores/opencode-compaction-store.d.ts +9 -3
- package/dist/browser/stores/opencode-compaction-store.d.ts.map +1 -1
- package/dist/browser/stores/opencode-compaction-store.js +5 -12
- package/dist/browser/stores/opencode-compaction-store.js.map +1 -1
- package/dist/browser/stores/sandbox-connection-store.d.ts +28 -17
- package/dist/browser/stores/sandbox-connection-store.d.ts.map +1 -1
- package/dist/browser/stores/sandbox-connection-store.js +32 -84
- package/dist/browser/stores/sandbox-connection-store.js.map +1 -1
- package/dist/browser/stores/session-working-store.d.ts +73 -0
- package/dist/browser/stores/session-working-store.d.ts.map +1 -0
- package/dist/browser/stores/session-working-store.js +86 -0
- package/dist/browser/stores/session-working-store.js.map +1 -0
- package/dist/browser/stores/sync-store/types.d.ts +14 -4
- package/dist/browser/stores/sync-store/types.d.ts.map +1 -1
- package/dist/browser/stores/sync-store.d.ts +140 -3
- package/dist/browser/stores/sync-store.d.ts.map +1 -1
- package/dist/browser/stores/sync-store.js +425 -36
- package/dist/browser/stores/sync-store.js.map +1 -1
- package/dist/core/client/kortix.d.ts +102 -1
- package/dist/core/client/kortix.d.ts.map +1 -1
- package/dist/core/client/kortix.js +78 -0
- package/dist/core/client/kortix.js.map +1 -1
- package/dist/core/files/client.d.ts +50 -2
- package/dist/core/files/client.d.ts.map +1 -1
- package/dist/core/files/client.js +253 -44
- package/dist/core/files/client.js.map +1 -1
- package/dist/core/files/types.d.ts +11 -0
- package/dist/core/files/types.d.ts.map +1 -1
- package/dist/core/http/abort-error.d.ts +89 -0
- package/dist/core/http/abort-error.d.ts.map +1 -0
- package/dist/core/http/abort-error.js +190 -0
- package/dist/core/http/abort-error.js.map +1 -0
- package/dist/core/http/api-client.d.ts.map +1 -1
- package/dist/core/http/api-client.js +28 -4
- package/dist/core/http/api-client.js.map +1 -1
- package/dist/core/http/impersonation.d.ts +58 -0
- package/dist/core/http/impersonation.d.ts.map +1 -0
- package/dist/core/http/impersonation.js +174 -0
- package/dist/core/http/impersonation.js.map +1 -0
- package/dist/core/rest/platform-client/github-app.d.ts +13 -0
- package/dist/core/rest/platform-client/github-app.d.ts.map +1 -1
- package/dist/core/rest/platform-client/github-app.js +2 -0
- package/dist/core/rest/platform-client/github-app.js.map +1 -1
- package/dist/core/rest/platform-client/members.d.ts +10 -64
- package/dist/core/rest/platform-client/members.d.ts.map +1 -1
- package/dist/core/rest/platform-client/members.js +10 -28
- package/dist/core/rest/platform-client/members.js.map +1 -1
- package/dist/core/rest/projects-client/accounts.d.ts +30 -1
- package/dist/core/rest/projects-client/accounts.d.ts.map +1 -1
- package/dist/core/rest/projects-client/accounts.js +1 -1
- package/dist/core/rest/projects-client/accounts.js.map +1 -1
- package/dist/core/rest/projects-client/agent-config.d.ts +21 -0
- package/dist/core/rest/projects-client/agent-config.d.ts.map +1 -1
- package/dist/core/rest/projects-client/agent-config.js +14 -0
- package/dist/core/rest/projects-client/agent-config.js.map +1 -1
- package/dist/core/rest/projects-client/apps.d.ts +13 -0
- package/dist/core/rest/projects-client/apps.d.ts.map +1 -1
- package/dist/core/rest/projects-client/apps.js.map +1 -1
- package/dist/core/rest/projects-client/assignments.d.ts +114 -0
- package/dist/core/rest/projects-client/assignments.d.ts.map +1 -0
- package/dist/core/rest/projects-client/assignments.js +91 -0
- package/dist/core/rest/projects-client/assignments.js.map +1 -0
- package/dist/core/rest/projects-client/billing.d.ts +80 -1
- package/dist/core/rest/projects-client/billing.d.ts.map +1 -1
- package/dist/core/rest/projects-client/billing.js +61 -2
- package/dist/core/rest/projects-client/billing.js.map +1 -1
- package/dist/core/rest/projects-client/connectors.d.ts +2 -0
- package/dist/core/rest/projects-client/connectors.d.ts.map +1 -1
- package/dist/core/rest/projects-client/connectors.js.map +1 -1
- package/dist/core/rest/projects-client/files.js +2 -2
- package/dist/core/rest/projects-client/files.js.map +1 -1
- package/dist/core/rest/projects-client/gateway.d.ts +51 -0
- package/dist/core/rest/projects-client/gateway.d.ts.map +1 -1
- package/dist/core/rest/projects-client/gateway.js.map +1 -1
- package/dist/core/rest/projects-client/iam.d.ts +51 -3
- package/dist/core/rest/projects-client/iam.d.ts.map +1 -1
- package/dist/core/rest/projects-client/iam.js +18 -1
- package/dist/core/rest/projects-client/iam.js.map +1 -1
- package/dist/core/rest/projects-client/index.d.ts +1 -0
- package/dist/core/rest/projects-client/index.d.ts.map +1 -1
- package/dist/core/rest/projects-client/index.js +1 -0
- package/dist/core/rest/projects-client/index.js.map +1 -1
- package/dist/core/rest/projects-client/projects.d.ts +1 -1
- package/dist/core/rest/projects-client/projects.d.ts.map +1 -1
- package/dist/core/rest/projects-client/projects.js +3 -0
- package/dist/core/rest/projects-client/projects.js.map +1 -1
- package/dist/core/rest/projects-client/secrets.d.ts +11 -0
- package/dist/core/rest/projects-client/secrets.d.ts.map +1 -1
- package/dist/core/rest/projects-client/secrets.js +1 -1
- package/dist/core/rest/projects-client/secrets.js.map +1 -1
- package/dist/core/rest/projects-client/session-costs.d.ts +33 -0
- package/dist/core/rest/projects-client/session-costs.d.ts.map +1 -1
- package/dist/core/rest/projects-client/session-costs.js.map +1 -1
- package/dist/core/rest/projects-client/sessions.d.ts +253 -4
- package/dist/core/rest/projects-client/sessions.d.ts.map +1 -1
- package/dist/core/rest/projects-client/sessions.js +101 -4
- package/dist/core/rest/projects-client/sessions.js.map +1 -1
- package/dist/core/rest/projects-client/shared.d.ts +10 -1
- package/dist/core/rest/projects-client/shared.d.ts.map +1 -1
- package/dist/core/rest/projects-client/shared.js.map +1 -1
- package/dist/core/rest/projects-client/tokens.d.ts +13 -1
- package/dist/core/rest/projects-client/tokens.d.ts.map +1 -1
- package/dist/core/rest/projects-client/tokens.js +7 -2
- package/dist/core/rest/projects-client/tokens.js.map +1 -1
- package/dist/core/rest/projects-client/triggers.d.ts +69 -2
- package/dist/core/rest/projects-client/triggers.d.ts.map +1 -1
- package/dist/core/rest/projects-client/triggers.js +1 -1
- package/dist/core/rest/projects-client/triggers.js.map +1 -1
- package/dist/core/session/compaction.d.ts +98 -0
- package/dist/core/session/compaction.d.ts.map +1 -0
- package/dist/core/session/compaction.js +108 -0
- package/dist/core/session/compaction.js.map +1 -0
- package/dist/core/session/health.d.ts +22 -0
- package/dist/core/session/health.d.ts.map +1 -1
- package/dist/core/session/health.js +31 -5
- package/dist/core/session/health.js.map +1 -1
- package/dist/core/session/index.d.ts +2 -0
- package/dist/core/session/index.d.ts.map +1 -1
- package/dist/core/session/index.js +2 -0
- package/dist/core/session/index.js.map +1 -1
- package/dist/core/session/message-queue.d.ts +79 -15
- package/dist/core/session/message-queue.d.ts.map +1 -1
- package/dist/core/session/message-queue.js +73 -27
- package/dist/core/session/message-queue.js.map +1 -1
- package/dist/core/session/rewind.d.ts +76 -10
- package/dist/core/session/rewind.d.ts.map +1 -1
- package/dist/core/session/rewind.js +68 -11
- package/dist/core/session/rewind.js.map +1 -1
- package/dist/core/session/working.d.ts +241 -0
- package/dist/core/session/working.d.ts.map +1 -0
- package/dist/core/session/working.js +261 -0
- package/dist/core/session/working.js.map +1 -0
- package/dist/core/session-sync/session-sync-controller.d.ts +35 -20
- package/dist/core/session-sync/session-sync-controller.d.ts.map +1 -1
- package/dist/core/session-sync/session-sync-controller.js +48 -115
- package/dist/core/session-sync/session-sync-controller.js.map +1 -1
- package/dist/core/stream/event-stream.d.ts +22 -0
- package/dist/core/stream/event-stream.d.ts.map +1 -1
- package/dist/core/stream/event-stream.js +132 -36
- package/dist/core/stream/event-stream.js.map +1 -1
- package/dist/core/turns/classify.d.ts +5 -2
- package/dist/core/turns/classify.d.ts.map +1 -1
- package/dist/core/turns/classify.js +1 -0
- package/dist/core/turns/classify.js.map +1 -1
- package/dist/core/turns/errors.d.ts +11 -0
- package/dist/core/turns/errors.d.ts.map +1 -1
- package/dist/core/turns/errors.js +49 -2
- package/dist/core/turns/errors.js.map +1 -1
- package/dist/core/turns/grouping.d.ts +32 -2
- package/dist/core/turns/grouping.d.ts.map +1 -1
- package/dist/core/turns/grouping.js +31 -2
- package/dist/core/turns/grouping.js.map +1 -1
- package/dist/core/turns/index.d.ts +1 -0
- package/dist/core/turns/index.d.ts.map +1 -1
- package/dist/core/turns/index.js +1 -0
- package/dist/core/turns/index.js.map +1 -1
- package/dist/core/turns/open-turn.d.ts +81 -0
- package/dist/core/turns/open-turn.d.ts.map +1 -0
- package/dist/core/turns/open-turn.js +77 -0
- package/dist/core/turns/open-turn.js.map +1 -0
- package/dist/core/turns/state.d.ts +1 -1
- package/dist/core/turns/state.d.ts.map +1 -1
- package/dist/core/turns/state.js +29 -27
- package/dist/core/turns/state.js.map +1 -1
- package/dist/core/turns/types.d.ts +8 -0
- package/dist/core/turns/types.d.ts.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/kortix.esm.min.js +25 -25
- package/dist/kortix.global.js +25 -25
- package/dist/node/server.d.ts.map +1 -1
- package/dist/node/server.js +14 -2
- package/dist/node/server.js.map +1 -1
- package/dist/react/index.d.ts +3 -1
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +8 -1
- package/dist/react/index.js.map +1 -1
- package/dist/react/initial-session-pin.d.ts +17 -0
- package/dist/react/initial-session-pin.d.ts.map +1 -1
- package/dist/react/initial-session-pin.js +58 -0
- package/dist/react/initial-session-pin.js.map +1 -1
- package/dist/react/opencode.d.ts +6 -2
- package/dist/react/opencode.d.ts.map +1 -1
- package/dist/react/opencode.js +5 -1
- package/dist/react/opencode.js.map +1 -1
- package/dist/react/prefetch-session-start.d.ts +10 -4
- package/dist/react/prefetch-session-start.d.ts.map +1 -1
- package/dist/react/prefetch-session-start.js +10 -4
- package/dist/react/prefetch-session-start.js.map +1 -1
- package/dist/react/query-keys.d.ts +8 -2
- package/dist/react/query-keys.d.ts.map +1 -1
- package/dist/react/query-keys.js +8 -2
- package/dist/react/query-keys.js.map +1 -1
- package/dist/react/session-start-stash.d.ts +25 -0
- package/dist/react/session-start-stash.d.ts.map +1 -1
- package/dist/react/session-start-stash.js +34 -3
- package/dist/react/session-start-stash.js.map +1 -1
- package/dist/react/session-title-sync.d.ts +5 -1
- package/dist/react/session-title-sync.d.ts.map +1 -1
- package/dist/react/session-title-sync.js +16 -4
- package/dist/react/session-title-sync.js.map +1 -1
- package/dist/react/use-admin-accounts.d.ts +121 -0
- package/dist/react/use-admin-accounts.d.ts.map +1 -1
- package/dist/react/use-admin-accounts.js +92 -0
- package/dist/react/use-admin-accounts.js.map +1 -1
- package/dist/react/use-can.d.ts +105 -0
- package/dist/react/use-can.d.ts.map +1 -0
- package/dist/react/use-can.js +190 -0
- package/dist/react/use-can.js.map +1 -0
- package/dist/react/use-canonical-opencode-session.d.ts +6 -1
- package/dist/react/use-canonical-opencode-session.d.ts.map +1 -1
- package/dist/react/use-canonical-opencode-session.js +46 -3
- package/dist/react/use-canonical-opencode-session.js.map +1 -1
- package/dist/react/use-impersonation.d.ts +54 -0
- package/dist/react/use-impersonation.d.ts.map +1 -0
- package/dist/react/use-impersonation.js +91 -0
- package/dist/react/use-impersonation.js.map +1 -0
- package/dist/react/use-opencode-events/handle-event.d.ts +10 -0
- package/dist/react/use-opencode-events/handle-event.d.ts.map +1 -1
- package/dist/react/use-opencode-events/handle-event.js +76 -7
- package/dist/react/use-opencode-events/handle-event.js.map +1 -1
- package/dist/react/use-opencode-events/helpers.d.ts +21 -8
- package/dist/react/use-opencode-events/helpers.d.ts.map +1 -1
- package/dist/react/use-opencode-events/helpers.js +25 -26
- package/dist/react/use-opencode-events/helpers.js.map +1 -1
- package/dist/react/use-opencode-events/index.d.ts.map +1 -1
- package/dist/react/use-opencode-events/index.js +43 -26
- package/dist/react/use-opencode-events/index.js.map +1 -1
- package/dist/react/use-opencode-events/use-event-stream-refs.d.ts.map +1 -1
- package/dist/react/use-opencode-events/use-event-stream-refs.js +66 -3
- package/dist/react/use-opencode-events/use-event-stream-refs.js.map +1 -1
- package/dist/react/use-opencode-local.d.ts +17 -0
- package/dist/react/use-opencode-local.d.ts.map +1 -1
- package/dist/react/use-opencode-local.js +41 -7
- package/dist/react/use-opencode-local.js.map +1 -1
- package/dist/react/use-opencode-sessions/messages.d.ts +101 -1
- package/dist/react/use-opencode-sessions/messages.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/messages.js +481 -63
- package/dist/react/use-opencode-sessions/messages.js.map +1 -1
- package/dist/react/use-project-apps.d.ts +24 -1
- package/dist/react/use-project-apps.d.ts.map +1 -1
- package/dist/react/use-project-apps.js +5 -3
- package/dist/react/use-project-apps.js.map +1 -1
- package/dist/react/use-runtime-boot-stalled.d.ts +32 -0
- package/dist/react/use-runtime-boot-stalled.d.ts.map +1 -0
- package/dist/react/use-runtime-boot-stalled.js +48 -0
- package/dist/react/use-runtime-boot-stalled.js.map +1 -0
- package/dist/react/use-runtime-reconnect.d.ts +67 -1
- package/dist/react/use-runtime-reconnect.d.ts.map +1 -1
- package/dist/react/use-runtime-reconnect.js +116 -18
- package/dist/react/use-runtime-reconnect.js.map +1 -1
- package/dist/react/use-session-prompts.d.ts +113 -0
- package/dist/react/use-session-prompts.d.ts.map +1 -0
- package/dist/react/use-session-prompts.js +242 -0
- package/dist/react/use-session-prompts.js.map +1 -0
- package/dist/react/use-session-send.d.ts +169 -20
- package/dist/react/use-session-send.d.ts.map +1 -1
- package/dist/react/use-session-send.js +178 -29
- package/dist/react/use-session-send.js.map +1 -1
- package/dist/react/use-session-sync.d.ts +35 -2
- package/dist/react/use-session-sync.d.ts.map +1 -1
- package/dist/react/use-session-sync.js +46 -9
- package/dist/react/use-session-sync.js.map +1 -1
- package/dist/react/use-session-working.d.ts +57 -0
- package/dist/react/use-session-working.d.ts.map +1 -0
- package/dist/react/use-session-working.js +178 -0
- package/dist/react/use-session-working.js.map +1 -0
- package/dist/react/use-session.d.ts +122 -5
- package/dist/react/use-session.d.ts.map +1 -1
- package/dist/react/use-session.js +343 -69
- package/dist/react/use-session.js.map +1 -1
- package/package.json +2 -2
- package/dist/browser/stores/tab-store.d.ts +0 -91
- package/dist/browser/stores/tab-store.d.ts.map +0 -1
- package/dist/browser/stores/tab-store.js +0 -369
- package/dist/browser/stores/tab-store.js.map +0 -1
- package/dist/core/session/send-queue.d.ts +0 -70
- package/dist/core/session/send-queue.d.ts.map +0 -1
- package/dist/core/session/send-queue.js +0 -116
- package/dist/core/session/send-queue.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-start-stash.js","sourceRoot":"","sources":["../../src/react/session-start-stash.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"session-start-stash.js","sourceRoot":"","sources":["../../src/react/session-start-stash.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import type { QueryClient } from '@tanstack/react-query';
|
|
2
|
-
type SessionTitleQueryClient = Pick<QueryClient, 'getQueryData' | 'refetchQueries'
|
|
2
|
+
type SessionTitleQueryClient = Pick<QueryClient, 'getQueryData' | 'refetchQueries'> & {
|
|
3
|
+
/** Optional so lean test fakes (and older callers) keep working; a real
|
|
4
|
+
* QueryClient always has it. */
|
|
5
|
+
getQueryState?: QueryClient['getQueryState'];
|
|
6
|
+
};
|
|
3
7
|
interface SessionTitleRefreshOptions {
|
|
4
8
|
delaysMs?: number[];
|
|
5
9
|
signal?: AbortSignal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-title-sync.d.ts","sourceRoot":"","sources":["../../src/react/session-title-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"session-title-sync.d.ts","sourceRoot":"","sources":["../../src/react/session-title-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAKzD,KAAK,uBAAuB,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,GAAG,gBAAgB,CAAC,GAAG;IACpF;qCACiC;IACjC,aAAa,CAAC,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;CAC9C,CAAC;AAEF,UAAU,0BAA0B;IAClC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAClE;AAmFD;;;;;GAKG;AACH,wBAAsB,qCAAqC,CACzD,WAAW,EAAE,uBAAuB,EACpC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,OAAO,CAAC,CAYlB;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CACjD,WAAW,EAAE,uBAAuB,EACpC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,OAAO,CAAC,CAIlB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { sessionStartKey } from '../core/rest/projects-client/index.js';
|
|
1
2
|
import { qk } from './query-keys.js';
|
|
2
3
|
const DEFAULT_TITLE_REFRESH_DELAYS_MS = [0, 5_000, 5_000, 10_000, 10_000, 15_000, 20_000];
|
|
3
4
|
function readRealTitle(value) {
|
|
@@ -30,15 +31,26 @@ function cachedSessionHasTitle(queryClient, projectId, sessionId) {
|
|
|
30
31
|
});
|
|
31
32
|
}
|
|
32
33
|
function refetchSessionTitleQueries(queryClient, projectId, sessionId) {
|
|
34
|
+
// An adopted warm session is revealed by /start dropping `metadata.warm`.
|
|
35
|
+
// While THIS session's /start is still in flight, a sessions-list refetch
|
|
36
|
+
// can beat it, observe the row still hidden, and overwrite the adopting
|
|
37
|
+
// tab's optimistic seed (warm-session-seed.ts in apps/web) — so the list
|
|
38
|
+
// half waits for the next ladder pass. The detail refetch stays: the
|
|
39
|
+
// session route serves the owner regardless of the marker.
|
|
40
|
+
const startFetching = queryClient.getQueryState?.(sessionStartKey(projectId, sessionId))?.fetchStatus === 'fetching';
|
|
33
41
|
return Promise.all([
|
|
34
42
|
// The broad sessions-family prefix, not just the default-scope list: it
|
|
35
43
|
// reaches the list in EVERY scope plus every session/messages entry
|
|
36
44
|
// beneath it, so a manager-only 'project'-scope reader picks up the
|
|
37
45
|
// resolved title too, not only the default 'visible' one.
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
46
|
+
...(startFetching
|
|
47
|
+
? []
|
|
48
|
+
: [
|
|
49
|
+
queryClient.refetchQueries({
|
|
50
|
+
queryKey: qk.project.sessionsScope(projectId),
|
|
51
|
+
type: 'active',
|
|
52
|
+
}),
|
|
53
|
+
]),
|
|
42
54
|
queryClient.refetchQueries({
|
|
43
55
|
queryKey: qk.project.session(projectId, sessionId),
|
|
44
56
|
type: 'active',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-title-sync.js","sourceRoot":"","sources":["../../src/react/session-title-sync.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"session-title-sync.js","sourceRoot":"","sources":["../../src/react/session-title-sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,64 @@ export interface AdminAccountTrial {
|
|
|
14
14
|
endsAt: string | null;
|
|
15
15
|
note: string | null;
|
|
16
16
|
}
|
|
17
|
+
/**
|
|
18
|
+
* The plan an account BEHAVES as, as the list route resolves it.
|
|
19
|
+
*
|
|
20
|
+
* Distinct from `AdminAccount.tier`, which stays the STORED
|
|
21
|
+
* `credit_accounts.tier` the tier filter matches on. An active admin trial and
|
|
22
|
+
* the per-seat self-heal overlay that column, so the two disagree exactly when
|
|
23
|
+
* it matters most — and the console must show the resolved one.
|
|
24
|
+
*/
|
|
25
|
+
export interface AdminAccountPlan {
|
|
26
|
+
/** Plan key — e.g. 'free', 'per_seat', 'tier_25_200', 'enterprise'. */
|
|
27
|
+
key: string;
|
|
28
|
+
/** Public ladder position: there are exactly three families. */
|
|
29
|
+
family: 'free' | 'team' | 'enterprise';
|
|
30
|
+
/** Customer-facing family name — 'Free' | 'Team' | 'Enterprise'. */
|
|
31
|
+
label: string;
|
|
32
|
+
/** Qualifier to render muted after the label, e.g.
|
|
33
|
+
* '$40/seat/mo · grandfathered'. Null when the plan needs none. */
|
|
34
|
+
sublabel: string | null;
|
|
35
|
+
status: 'current' | 'grandfathered' | 'retired' | 'non_plan';
|
|
36
|
+
/** Sold once, still honored exactly as sold, no longer offered. */
|
|
37
|
+
is_grandfathered: boolean;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* One entitlement override as the account row stores it: a value plus an
|
|
41
|
+
* optional ISO-8601 expiry. Absent `expires_at` = never expires.
|
|
42
|
+
*
|
|
43
|
+
* `value` is `unknown` on purpose. The source is a JSONB column written by
|
|
44
|
+
* admin routes, data migrations, and operator SQL, so a reader narrows
|
|
45
|
+
* (`typeof v === 'boolean'`) before it renders — it never assumes the shape.
|
|
46
|
+
*/
|
|
47
|
+
export interface AdminEntitlementOverrideEntry {
|
|
48
|
+
value: unknown;
|
|
49
|
+
/** ISO-8601. At or past this instant the server ignores the entry. */
|
|
50
|
+
expires_at?: string;
|
|
51
|
+
}
|
|
52
|
+
/** The stored override map, keyed by {@link AdminOverrideKey}. */
|
|
53
|
+
export type AdminEntitlementOverrides = Record<string, AdminEntitlementOverrideEntry>;
|
|
54
|
+
/**
|
|
55
|
+
* Every override key the server accepts. Anything else is a 400 from
|
|
56
|
+
* `validateOverridePatch`, so the console builds its rows from this list rather
|
|
57
|
+
* than from free-form strings.
|
|
58
|
+
*
|
|
59
|
+
* Mirrors `OVERRIDE_KEYS` in
|
|
60
|
+
* `apps/api/src/billing/services/entitlement-overrides.ts`.
|
|
61
|
+
*/
|
|
62
|
+
export declare const ADMIN_OVERRIDE_KEYS: readonly ["enterpriseEntitled", "demoEnterprise", "managedModelsOverride", "maxConcurrentSessions", "computeRateMultiplier", "sso", "scim", "rbac", "auditAccess", "managedModels"];
|
|
63
|
+
export type AdminOverrideKey = (typeof ADMIN_OVERRIDE_KEYS)[number];
|
|
64
|
+
/**
|
|
65
|
+
* A merge patch (RFC 7386, scoped to the known keys): an entry SETS the key,
|
|
66
|
+
* `null` DELETES it, and a key that is absent is left exactly as it was. That
|
|
67
|
+
* is what makes the route safe to call from a form that only knows one field.
|
|
68
|
+
*/
|
|
69
|
+
export type AdminEntitlementOverridePatch = Partial<Record<AdminOverrideKey, {
|
|
70
|
+
value: boolean | number;
|
|
71
|
+
expires_at?: string;
|
|
72
|
+
} | null>>;
|
|
73
|
+
/** Wire path of the platform-admin entitlement-override merge-patch route. */
|
|
74
|
+
export declare function adminAccountOverridesPath(accountId: string): string;
|
|
17
75
|
export interface AdminAccount {
|
|
18
76
|
accountId: string;
|
|
19
77
|
name: string | null;
|
|
@@ -23,7 +81,12 @@ export interface AdminAccount {
|
|
|
23
81
|
expiringCredits: string | null;
|
|
24
82
|
nonExpiringCredits: string | null;
|
|
25
83
|
dailyCreditsBalance: string | null;
|
|
84
|
+
/** STORED `credit_accounts.tier` — what the tier filter matches on. For what
|
|
85
|
+
* the account behaves as, read {@link AdminAccount.plan}. */
|
|
26
86
|
tier: string | null;
|
|
87
|
+
/** Resolved plan. Optional: an API older than the plan resolver omits it, so
|
|
88
|
+
* a console pointed at one falls back to the raw tier key. */
|
|
89
|
+
plan?: AdminAccountPlan;
|
|
27
90
|
paymentStatus: string | null;
|
|
28
91
|
provider: string | null;
|
|
29
92
|
planType: string | null;
|
|
@@ -39,6 +102,19 @@ export interface AdminAccount {
|
|
|
39
102
|
managedModelsOverride: boolean | null;
|
|
40
103
|
demoEnterprise: boolean;
|
|
41
104
|
enterpriseEntitled: boolean;
|
|
105
|
+
/**
|
|
106
|
+
* The STORED override map, exactly as the account row carries it — expiry is
|
|
107
|
+
* NOT applied, so a lapsed entry is still present and the console can show an
|
|
108
|
+
* operator what is on the row. Optional: an API older than the JSONB column
|
|
109
|
+
* omits it. Null is tolerated because the column itself is nullable.
|
|
110
|
+
*/
|
|
111
|
+
entitlementOverrides?: AdminEntitlementOverrides | null;
|
|
112
|
+
/**
|
|
113
|
+
* The RESOLVED compute rate multiplier the meter bills at (1 = list price,
|
|
114
|
+
* 0.5 = half, 0 = free). Already clamped to [0, 10] by the server. Optional
|
|
115
|
+
* for the same reason as {@link AdminAccount.entitlementOverrides}.
|
|
116
|
+
*/
|
|
117
|
+
computeRateMultiplier?: number;
|
|
42
118
|
}
|
|
43
119
|
export interface AdminAccountsSummary {
|
|
44
120
|
totalCredits: string;
|
|
@@ -93,6 +169,17 @@ export interface AdminAccountsFilters {
|
|
|
93
169
|
limit?: number;
|
|
94
170
|
}
|
|
95
171
|
export declare function useAdminAccounts(filters?: AdminAccountsFilters): import("@tanstack/react-query").UseQueryResult<NoInfer<AdminAccountsResponse>, Error>;
|
|
172
|
+
/** Wire path of the exact-id single-account lookup (list route + accountId filter). */
|
|
173
|
+
export declare function adminAccountLookupPath(accountId: string): string;
|
|
174
|
+
/**
|
|
175
|
+
* Live single-account row for the admin detail sheet. Uses the list route's
|
|
176
|
+
* exact-id filter, so it stays correct when the list's own filters (tier,
|
|
177
|
+
* balance, payment status) no longer match the account after a mutation —
|
|
178
|
+
* the bug where the sheet kept rendering a pre-mutation snapshot.
|
|
179
|
+
* Invalidated by the same ['admin','accounts', accountId] subtree every admin
|
|
180
|
+
* mutation already targets.
|
|
181
|
+
*/
|
|
182
|
+
export declare function useAdminAccount(accountId: string | null): import("@tanstack/react-query").UseQueryResult<NoInfer<AdminAccount | null>, Error>;
|
|
96
183
|
export declare function useAdminAccountUsers(accountId: string | null): import("@tanstack/react-query").UseQueryResult<NoInfer<{
|
|
97
184
|
users: AdminAccountUser[];
|
|
98
185
|
}>, Error>;
|
|
@@ -172,6 +259,40 @@ export declare function useAdminSetEnterpriseEntitled(): import("@tanstack/react
|
|
|
172
259
|
accountId: string;
|
|
173
260
|
enabled: boolean;
|
|
174
261
|
}, unknown>;
|
|
262
|
+
/**
|
|
263
|
+
* Merge-patch an account's entitlement overrides — the ONE route behind every
|
|
264
|
+
* override, and the only one that can express an expiry.
|
|
265
|
+
*
|
|
266
|
+
* Send only the keys the form owns: an entry sets, `null` deletes, an absent
|
|
267
|
+
* key is untouched. The server mirrors a PERMANENT patch onto the four legacy
|
|
268
|
+
* columns and clears the column for a TIMED one, so the three single-purpose
|
|
269
|
+
* mutations above and this one stay consistent with each other.
|
|
270
|
+
*/
|
|
271
|
+
export declare function useAdminSetOverrides(): import("@tanstack/react-query").UseMutationResult<{
|
|
272
|
+
ok: boolean;
|
|
273
|
+
overrides: AdminEntitlementOverrides;
|
|
274
|
+
}, Error, {
|
|
275
|
+
accountId: string;
|
|
276
|
+
patch: AdminEntitlementOverridePatch;
|
|
277
|
+
}, unknown>;
|
|
278
|
+
export type AdminAccountMemberRole = 'owner' | 'admin' | 'member';
|
|
279
|
+
/** Wire path of the platform-admin member-role override route. */
|
|
280
|
+
export declare function adminMemberRolePath(accountId: string, userId: string): string;
|
|
281
|
+
/**
|
|
282
|
+
* Platform-admin override of an account member's role. Bypasses the in-account
|
|
283
|
+
* permission rules (which require the caller to be a member), but the server
|
|
284
|
+
* still refuses to demote an account's last owner. Invalidates the account
|
|
285
|
+
* subtree, which includes the users list the Users tab renders.
|
|
286
|
+
*/
|
|
287
|
+
export declare function useAdminSetMemberRole(): import("@tanstack/react-query").UseMutationResult<{
|
|
288
|
+
ok: boolean;
|
|
289
|
+
user_id: string;
|
|
290
|
+
account_role: string;
|
|
291
|
+
}, Error, {
|
|
292
|
+
accountId: string;
|
|
293
|
+
userId: string;
|
|
294
|
+
role: AdminAccountMemberRole;
|
|
295
|
+
}, unknown>;
|
|
175
296
|
export interface AdminLedgerEntry {
|
|
176
297
|
id: string;
|
|
177
298
|
amount: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-admin-accounts.d.ts","sourceRoot":"","sources":["../../src/react/use-admin-accounts.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;AAEvF,+DAA+D;AAC/D,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAC;IAClC,0DAA0D;IAC1D,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,0EAA0E;IAC1E,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,iBAAiB,CAAC;IACzB,yFAAyF;IACzF,qBAAqB,EAAE,OAAO,GAAG,IAAI,CAAC;IACtC,cAAc,EAAE,OAAO,CAAC;IACxB,kBAAkB,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"use-admin-accounts.d.ts","sourceRoot":"","sources":["../../src/react/use-admin-accounts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
|
|
2
2
|
import { backendApi } from '../core/http/api-client.js';
|
|
3
|
+
/**
|
|
4
|
+
* Every override key the server accepts. Anything else is a 400 from
|
|
5
|
+
* `validateOverridePatch`, so the console builds its rows from this list rather
|
|
6
|
+
* than from free-form strings.
|
|
7
|
+
*
|
|
8
|
+
* Mirrors `OVERRIDE_KEYS` in
|
|
9
|
+
* `apps/api/src/billing/services/entitlement-overrides.ts`.
|
|
10
|
+
*/
|
|
11
|
+
export const ADMIN_OVERRIDE_KEYS = [
|
|
12
|
+
'enterpriseEntitled',
|
|
13
|
+
'demoEnterprise',
|
|
14
|
+
'managedModelsOverride',
|
|
15
|
+
'maxConcurrentSessions',
|
|
16
|
+
'computeRateMultiplier',
|
|
17
|
+
'sso',
|
|
18
|
+
'scim',
|
|
19
|
+
'rbac',
|
|
20
|
+
'auditAccess',
|
|
21
|
+
'managedModels',
|
|
22
|
+
];
|
|
23
|
+
/** Wire path of the platform-admin entitlement-override merge-patch route. */
|
|
24
|
+
export function adminAccountOverridesPath(accountId) {
|
|
25
|
+
return `/admin/api/accounts/${encodeURIComponent(accountId)}/overrides`;
|
|
26
|
+
}
|
|
3
27
|
export function useAdminAccounts(filters = {}) {
|
|
4
28
|
const { search = '', tier = [], paymentStatus = [], paidOnly = false, hasSubscription = null, minBalance = null, maxBalance = null, sortBy = 'created', sortDir = 'desc', page = 1, limit = 50, } = filters;
|
|
5
29
|
return useQuery({
|
|
@@ -49,6 +73,31 @@ export function useAdminAccounts(filters = {}) {
|
|
|
49
73
|
placeholderData: (prev) => prev,
|
|
50
74
|
});
|
|
51
75
|
}
|
|
76
|
+
/** Wire path of the exact-id single-account lookup (list route + accountId filter). */
|
|
77
|
+
export function adminAccountLookupPath(accountId) {
|
|
78
|
+
return `/admin/api/accounts?accountId=${encodeURIComponent(accountId)}&limit=1`;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Live single-account row for the admin detail sheet. Uses the list route's
|
|
82
|
+
* exact-id filter, so it stays correct when the list's own filters (tier,
|
|
83
|
+
* balance, payment status) no longer match the account after a mutation —
|
|
84
|
+
* the bug where the sheet kept rendering a pre-mutation snapshot.
|
|
85
|
+
* Invalidated by the same ['admin','accounts', accountId] subtree every admin
|
|
86
|
+
* mutation already targets.
|
|
87
|
+
*/
|
|
88
|
+
export function useAdminAccount(accountId) {
|
|
89
|
+
return useQuery({
|
|
90
|
+
queryKey: ['admin', 'accounts', accountId, 'detail'],
|
|
91
|
+
enabled: !!accountId,
|
|
92
|
+
queryFn: async () => {
|
|
93
|
+
const response = await backendApi.get(adminAccountLookupPath(accountId));
|
|
94
|
+
if (response.error)
|
|
95
|
+
throw new Error(response.error.message);
|
|
96
|
+
return response.data?.accounts?.[0] ?? null;
|
|
97
|
+
},
|
|
98
|
+
staleTime: 5_000,
|
|
99
|
+
});
|
|
100
|
+
}
|
|
52
101
|
export function useAdminAccountUsers(accountId) {
|
|
53
102
|
return useQuery({
|
|
54
103
|
queryKey: ['admin', 'accounts', accountId, 'users'],
|
|
@@ -207,6 +256,49 @@ export function useAdminSetEnterpriseEntitled() {
|
|
|
207
256
|
onSuccess: (_data, { accountId }) => invalidateAdminAccount(queryClient, accountId),
|
|
208
257
|
});
|
|
209
258
|
}
|
|
259
|
+
/**
|
|
260
|
+
* Merge-patch an account's entitlement overrides — the ONE route behind every
|
|
261
|
+
* override, and the only one that can express an expiry.
|
|
262
|
+
*
|
|
263
|
+
* Send only the keys the form owns: an entry sets, `null` deletes, an absent
|
|
264
|
+
* key is untouched. The server mirrors a PERMANENT patch onto the four legacy
|
|
265
|
+
* columns and clears the column for a TIMED one, so the three single-purpose
|
|
266
|
+
* mutations above and this one stay consistent with each other.
|
|
267
|
+
*/
|
|
268
|
+
export function useAdminSetOverrides() {
|
|
269
|
+
const queryClient = useQueryClient();
|
|
270
|
+
return useMutation({
|
|
271
|
+
mutationFn: async ({ accountId, patch }) => {
|
|
272
|
+
const response = await backendApi.put(adminAccountOverridesPath(accountId), patch);
|
|
273
|
+
if (response.error)
|
|
274
|
+
throw new Error(response.error.message);
|
|
275
|
+
return response.data;
|
|
276
|
+
},
|
|
277
|
+
onSuccess: (_data, { accountId }) => invalidateAdminAccount(queryClient, accountId),
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
/** Wire path of the platform-admin member-role override route. */
|
|
281
|
+
export function adminMemberRolePath(accountId, userId) {
|
|
282
|
+
return `/admin/api/accounts/${accountId}/members/${userId}/role`;
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Platform-admin override of an account member's role. Bypasses the in-account
|
|
286
|
+
* permission rules (which require the caller to be a member), but the server
|
|
287
|
+
* still refuses to demote an account's last owner. Invalidates the account
|
|
288
|
+
* subtree, which includes the users list the Users tab renders.
|
|
289
|
+
*/
|
|
290
|
+
export function useAdminSetMemberRole() {
|
|
291
|
+
const queryClient = useQueryClient();
|
|
292
|
+
return useMutation({
|
|
293
|
+
mutationFn: async ({ accountId, userId, role }) => {
|
|
294
|
+
const response = await backendApi.post(adminMemberRolePath(accountId, userId), { role });
|
|
295
|
+
if (response.error)
|
|
296
|
+
throw new Error(response.error.message);
|
|
297
|
+
return response.data;
|
|
298
|
+
},
|
|
299
|
+
onSuccess: (_data, { accountId }) => invalidateAdminAccount(queryClient, accountId),
|
|
300
|
+
});
|
|
301
|
+
}
|
|
210
302
|
export function useAdminAccountLedger(accountId, limit = 50) {
|
|
211
303
|
return useQuery({
|
|
212
304
|
queryKey: ['admin', 'accounts', accountId, 'ledger', limit],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-admin-accounts.js","sourceRoot":"","sources":["../../src/react/use-admin-accounts.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-admin-accounts.js","sourceRoot":"","sources":["../../src/react/use-admin-accounts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `useCan` / `useCans` — the ONLY client-side authorization read.
|
|
3
|
+
*
|
|
4
|
+
* Relocated from `apps/web/src/lib/use-permission.ts` + `use-project-can.ts`.
|
|
5
|
+
* They were host-local, so every other host (the whitelabel demo, mobile) had
|
|
6
|
+
* no probe at all and fell back to reading a role literal off a row — which is
|
|
7
|
+
* exactly the bug the canonical model deletes: a member holding a custom role
|
|
8
|
+
* that grants `project.members.manage` is invisible to `role === 'manager'`.
|
|
9
|
+
*
|
|
10
|
+
* Ask for the LEAF the route asserts (`project.gitops.push`), never for a role.
|
|
11
|
+
* The engine answers; the client renders the answer.
|
|
12
|
+
*
|
|
13
|
+
* NOT a security boundary — the API re-checks every mutating route. This only
|
|
14
|
+
* decides what to show and enable.
|
|
15
|
+
*
|
|
16
|
+
* ### Cache contract
|
|
17
|
+
*
|
|
18
|
+
* A verdict is cached for 5 minutes. That is only safe because every
|
|
19
|
+
* assignment write calls `invalidatePermissionProbes`, so a revoke is visible
|
|
20
|
+
* on the next render rather than up to five minutes later. If you add a write
|
|
21
|
+
* path that changes an assignment, it calls that function. No exceptions.
|
|
22
|
+
*/
|
|
23
|
+
import { type QueryClient } from '@tanstack/react-query';
|
|
24
|
+
import { type PermissionProbeInput, type ResourceType } from '../core/rest/projects-client/index.js';
|
|
25
|
+
/** A probe verdict. `allowed` is true only when the engine said so — loading
|
|
26
|
+
* and error both read false, so a gate defaults to hidden/disabled. */
|
|
27
|
+
export interface CanResult {
|
|
28
|
+
allowed: boolean;
|
|
29
|
+
/** The engine's reason, e.g. `super_admin`, `role`, `not_a_member`,
|
|
30
|
+
* `agent_scope_insufficient`. Drives "why can Alice do this?" tooltips. */
|
|
31
|
+
reason: string | null;
|
|
32
|
+
isLoading: boolean;
|
|
33
|
+
isError: boolean;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* What the action is being asked about.
|
|
37
|
+
*
|
|
38
|
+
* - `{ accountId }` — an account-scope action (`member.update`, `role.create`).
|
|
39
|
+
* - `{ accountId, resource }` — narrowed to one account object (a group, a member).
|
|
40
|
+
* - `{ projectId }` — a project-scope action. The owning account is resolved
|
|
41
|
+
* from the shared project cache; pass `accountId` when you already hold it
|
|
42
|
+
* and the probe runs on the FIRST render instead of after a second fetch.
|
|
43
|
+
*/
|
|
44
|
+
export type CanTarget = {
|
|
45
|
+
accountId: string | undefined;
|
|
46
|
+
projectId?: undefined;
|
|
47
|
+
resource?: {
|
|
48
|
+
type: Exclude<ResourceType, 'account'>;
|
|
49
|
+
id: string;
|
|
50
|
+
};
|
|
51
|
+
} | {
|
|
52
|
+
projectId: string | undefined;
|
|
53
|
+
accountId?: string;
|
|
54
|
+
resource?: undefined;
|
|
55
|
+
};
|
|
56
|
+
export interface CanOptions {
|
|
57
|
+
/** Probe as this user instead of the caller. A host with its own auth
|
|
58
|
+
* context passes it here rather than making the SDK depend on that context;
|
|
59
|
+
* omitted, the SDK resolves the caller from `GET /accounts/me`. */
|
|
60
|
+
userId?: string;
|
|
61
|
+
}
|
|
62
|
+
/** The single-probe cache key. Kept as a flat literal (not under `qk`) because
|
|
63
|
+
* it predates that factory and both `apps/web` and its tests address it. */
|
|
64
|
+
export declare const permissionProbeKey: (accountId: string | undefined, userId: string | undefined, action: string, target?: {
|
|
65
|
+
resourceType?: string;
|
|
66
|
+
resourceId?: string;
|
|
67
|
+
}) => readonly ["iam-permission", string | undefined, string | undefined, string, string | null, string | null];
|
|
68
|
+
/** The batch cache key. Keyed on the probe LIST so adding or removing a probe
|
|
69
|
+
* refetches; the signature is action+target per probe, never object identity,
|
|
70
|
+
* which React swaps every render. */
|
|
71
|
+
export declare const permissionProbeBatchKey: (accountId: string | undefined, userId: string | undefined, probes: readonly PermissionProbeInput[]) => readonly ["iam-permission-batch", string | undefined, string | undefined, string];
|
|
72
|
+
/** Can this principal perform `action` on this target? */
|
|
73
|
+
export declare function useCan(target: CanTarget, action: string, options?: CanOptions): CanResult;
|
|
74
|
+
/**
|
|
75
|
+
* Batch variant — ONE roundtrip for N actions on the same target. Returns a map
|
|
76
|
+
* keyed by action, so a caller reads `caps[ACTION].allowed`.
|
|
77
|
+
*
|
|
78
|
+
* `actions` must be stable across renders (module-level or memoized): the query
|
|
79
|
+
* key is derived from the list.
|
|
80
|
+
*/
|
|
81
|
+
export declare function useCans(target: CanTarget, actions: readonly string[], options?: CanOptions): Record<string, CanResult>;
|
|
82
|
+
/**
|
|
83
|
+
* Probe on behalf of ANOTHER member — the "what can this person actually do"
|
|
84
|
+
* admin panels. Returns one result per input, in order. The caller needs
|
|
85
|
+
* `member.read` on the account; the server enforces it.
|
|
86
|
+
*
|
|
87
|
+
* Kept probe-shaped (not action-shaped like `useCans`) because these panels mix
|
|
88
|
+
* account and project targets in one request.
|
|
89
|
+
*/
|
|
90
|
+
export declare function usePermissionsFor(accountId: string | undefined, memberUserId: string | undefined, probes: PermissionProbeInput[]): CanResult[];
|
|
91
|
+
/**
|
|
92
|
+
* Bust the probe cache after an assignment write. **Every** write that creates,
|
|
93
|
+
* changes or revokes an assignment calls this — a 5-minute stale window on an
|
|
94
|
+
* authorization verdict is a revoke that has not happened yet.
|
|
95
|
+
*
|
|
96
|
+
* Scope it as tightly as you honestly can: an account+user pair when you know
|
|
97
|
+
* whose access changed, the account when a group or a role definition changed
|
|
98
|
+
* (that moves verdicts for principals you cannot enumerate client-side), and
|
|
99
|
+
* everything only when you know nothing.
|
|
100
|
+
*/
|
|
101
|
+
export declare function invalidatePermissionProbes(queryClient: Pick<QueryClient, 'invalidateQueries'>, scope: {
|
|
102
|
+
accountId?: string;
|
|
103
|
+
userId?: string;
|
|
104
|
+
}): Promise<void>;
|
|
105
|
+
//# sourceMappingURL=use-can.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-can.d.ts","sourceRoot":"","sources":["../../src/react/use-can.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAY,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAKL,KAAK,oBAAoB,EACzB,KAAK,YAAY,EAClB,MAAM,8BAA8B,CAAC;AAItC;wEACwE;AACxE,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB;gFAC4E;IAC5E,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,SAAS,GACjB;IACE,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CACnE,GACD;IAAE,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAEhF,MAAM,WAAW,UAAU;IACzB;;wEAEoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID;6EAC6E;AAC7E,eAAO,MAAM,kBAAkB,GAC7B,WAAW,MAAM,GAAG,SAAS,EAC7B,QAAQ,MAAM,GAAG,SAAS,EAC1B,QAAQ,MAAM,EACd,SAAS;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,8GAS7C,CAAC;AAEb;;sCAEsC;AACtC,eAAO,MAAM,uBAAuB,GAClC,WAAW,MAAM,GAAG,SAAS,EAC7B,QAAQ,MAAM,GAAG,SAAS,EAC1B,QAAQ,SAAS,oBAAoB,EAAE,sFAO7B,CAAC;AAsDb,0DAA0D;AAC1D,wBAAgB,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAwBzF;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CACrB,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,OAAO,CAAC,EAAE,UAAU,GACnB,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CA8B3B;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,MAAM,EAAE,oBAAoB,EAAE,GAC7B,SAAS,EAAE,CAoBb;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,mBAAmB,CAAC,EACnD,KAAK,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,IAAI,CAAC,CAKf"}
|