@xeonr/console-shell 0.2.4 → 0.3.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.
@@ -19,7 +19,7 @@ export interface ConsoleState {
19
19
  /**
20
20
  * False when the client answered with an anonymous `Me` — an empty subject.
21
21
  * Only a console with a signed-out surface ever sees it (see
22
- * `httpConsoleClient`'s `onUnauthenticated`); everywhere else a missing
22
+ * `connectConsoleClient`'s `onUnauthenticated`); everywhere else a missing
23
23
  * session redirects before the shell mounts.
24
24
  */
25
25
  signedIn: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleProvider.d.ts","sourceRoot":"","sources":["../src/ConsoleProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE7G,OAAO,KAAK,EAAE,aAAa,EAAkB,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAW7G;;;;GAIG;AACH,eAAO,MAAM,UAAU,IAAI,CAAC;AAE5B,MAAM,WAAW,YAAY;IAC3B,kFAAkF;IAClF,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,EAAE,EAAE,EAAE,CAAC;IACP;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;;;OAGG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C;;;OAGG;IACH,aAAa,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,6DAA6D;IAC7D,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/C;;;;;OAKG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1D,gGAAgG;IAChG,QAAQ,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC/C,OAAO,IAAI,IAAI,CAAC;CACjB;AAID,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAClD,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC/C,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,oBAAoB,+BAgO/H;AAED,sFAAsF;AACtF,wBAAgB,eAAe,IAAI,YAAY,GAAG,IAAI,CAErD;AAED,wBAAgB,UAAU,IAAI,YAAY,CAIzC"}
1
+ {"version":3,"file":"ConsoleProvider.d.ts","sourceRoot":"","sources":["../src/ConsoleProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE7G,OAAO,KAAK,EAAE,aAAa,EAAkB,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAW7G;;;;GAIG;AACH,eAAO,MAAM,UAAU,IAAI,CAAC;AAE5B,MAAM,WAAW,YAAY;IAC3B,kFAAkF;IAClF,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,EAAE,EAAE,EAAE,CAAC;IACP;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;;;OAGG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C;;;OAGG;IACH,aAAa,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,6DAA6D;IAC7D,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/C;;;;;OAKG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1D,gGAAgG;IAChG,QAAQ,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC/C,OAAO,IAAI,IAAI,CAAC;CACjB;AAID,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAClD,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC/C,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,oBAAoB,+BAgQ/H;AAED,sFAAsF;AACtF,wBAAgB,eAAe,IAAI,YAAY,GAAG,IAAI,CAErD;AAED,wBAAgB,UAAU,IAAI,YAAY,CAIzC"}
@@ -56,9 +56,14 @@ export function ConsoleProvider({ client, product, teamSlug, onTeamChange, homeO
56
56
  // one — is a choice. An older BFF always sends an array, so an empty one
57
57
  // from it is treated as unset, exactly as it behaved before.
58
58
  setPins((cur) => cur ?? c.pinnedProducts ?? null);
59
- // The server-held theme follows you across hosts; local preference wins
60
- // only if it was set explicitly on this host.
61
- if (theme.pref === "system" && c.theme !== "system")
59
+ // The server copy IS the theme preference — it is the only one that can
60
+ // follow you between console hosts, because localStorage is per-origin.
61
+ // It used to be applied only when the local value was still "system",
62
+ // which meant the first toggle on a host pinned that host to its own
63
+ // theme for good: light on Databases, dark on Functions, with nothing
64
+ // reconciling them. Applied only when the read actually succeeded, so a
65
+ // failed context call does not wipe a real preference back to system.
66
+ if (cr.status === "fulfilled")
62
67
  theme.setPref(c.theme);
63
68
  });
64
69
  return () => {
@@ -104,6 +109,33 @@ export function ConsoleProvider({ client, product, teamSlug, onTeamChange, homeO
104
109
  if (currentProduct?.colour)
105
110
  setBrand(currentProduct.colour);
106
111
  }, [currentProduct?.colour, setBrand]);
112
+ // The other half of that: a preference changed anywhere — the rail's toggle,
113
+ // a product's own settings screen, another tab — is written back to the
114
+ // console context, so the next console you open agrees with this one. The
115
+ // rail's button has always been purely local; the server copy was written
116
+ // once at sign-up and never again, which is why every ConsoleContext row in
117
+ // production still reads "system".
118
+ //
119
+ // Watching `theme.pref` rather than wrapping the toggle covers every path
120
+ // that can change it, and cannot disagree with what is on screen.
121
+ const serverTheme = ctx?.theme;
122
+ useEffect(() => {
123
+ // Nothing to compare against until the context has loaded; writing before
124
+ // that would push this origin's cached guess over a newer choice made
125
+ // somewhere else.
126
+ if (serverTheme === undefined || theme.pref === serverTheme)
127
+ return;
128
+ const next = theme.pref;
129
+ const revert = theme.setPref;
130
+ setCtx((c) => (c ? { ...c, theme: next } : c));
131
+ void client.setContext({ theme: next }).catch((err) => {
132
+ // Roll the *preference* back, not just the cached context: leaving the
133
+ // two disagreeing would re-enter this effect on every render and retry
134
+ // the failed write forever.
135
+ revert(serverTheme);
136
+ onError?.(err);
137
+ });
138
+ }, [theme.pref, theme.setPref, serverTheme, client, onError]);
107
139
  const pinned = useMemo(() => {
108
140
  if (pins === null)
109
141
  return products.filter((p) => p.pinnedByDefault).map((p) => p.key);
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleProvider.js","sourceRoot":"","sources":["../src/ConsoleProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConsoleProvider.js","sourceRoot":"","sources":["../src/ConsoleProvider.tsx"],"names":[],"mappings":"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"}
package/dist/client.d.ts CHANGED
@@ -1,17 +1,18 @@
1
1
  import type { ConsoleClient, ConsoleContext, Invitation, Me, Product, SearchResult } from "./types.ts";
2
- export interface HttpConsoleClientOptions {
2
+ export interface ConnectConsoleClientOptions {
3
3
  /**
4
- * What to do when /console/* answers 401. The default sends the person to
5
- * `/auth/login`, which is right for a console you cannot use signed out.
4
+ * What to do when the service answers Unauthenticated. The default sends the
5
+ * person to `/auth/login`, which is right for a console you cannot use
6
+ * signed out.
6
7
  *
7
- * A product with a public surface — a catalogue anyone may read — passes
8
- * its own handler and returns a value to render instead: for that product
9
- * "no session" is a state, not an interruption. Returning a value resolves
10
- * the call with it; throwing rejects it; the default never returns.
8
+ * A product with a public surface — a catalogue anyone may read — passes its
9
+ * own handler and returns a value to render instead: for that product "no
10
+ * session" is a state, not an interruption. Returning a value resolves the
11
+ * call with it; throwing rejects it; the default never returns.
11
12
  */
12
- onUnauthenticated?: ((path: string) => unknown) | undefined;
13
+ onUnauthenticated?: ((method: string) => unknown) | undefined;
13
14
  }
14
- export declare function httpConsoleClient(base?: string, opts?: HttpConsoleClientOptions): ConsoleClient;
15
+ export declare function connectConsoleClient(baseUrl?: string, opts?: ConnectConsoleClientOptions): ConsoleClient;
15
16
  export interface MockFixtures {
16
17
  me: Me;
17
18
  products: Product[];
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAMvG,MAAM,WAAW,wBAAwB;IACvC;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;CAC7D;AAED,wBAAgB,iBAAiB,CAAC,IAAI,SAAa,EAAE,IAAI,GAAE,wBAA6B,GAAG,aAAa,CAiDvG;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,EAAE,CAAC;IACP,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;IAC9C,WAAW,CAAC,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IACvC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,YAAY,EAAE,CAAC,GAAG,SAAS,CAAC;CAC1D;AAKD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,SAAM,GAAG,aAAa,CAuChF"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,UAAU,EACV,EAAE,EACF,OAAO,EAGP,YAAY,EAEb,MAAM,YAAY,CAAC;AAapB,MAAM,WAAW,2BAA2B;IAC1C;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;CAC/D;AAyCD,wBAAgB,oBAAoB,CAAC,OAAO,SAAK,EAAE,IAAI,GAAE,2BAAgC,GAAG,aAAa,CA6IxG;AAaD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,EAAE,CAAC;IACP,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;IAC9C,WAAW,CAAC,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IACvC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,YAAY,EAAE,CAAC,GAAG,SAAS,CAAC;CAC1D;AAKD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,SAAM,GAAG,aAAa,CAuChF"}
package/dist/client.js CHANGED
@@ -1,52 +1,170 @@
1
- export function httpConsoleClient(base = "/console", opts = {}) {
2
- async function call(path, init) {
3
- const res = await fetch(`${base}${path}`, {
4
- credentials: "same-origin",
5
- headers: { "content-type": "application/json", ...(init?.headers ?? {}) },
6
- ...init,
7
- });
8
- if (res.status === 401) {
9
- if (opts.onUnauthenticated)
10
- return opts.onUnauthenticated(path);
11
- // The BFF answers 401 only when there is no session at all; it has
12
- // already tried a silent prompt=none entry, so this is a real sign-in.
13
- window.location.assign(`/auth/login?next=${encodeURIComponent(window.location.pathname + window.location.search)}`);
14
- return new Promise(() => { });
1
+ import { Code, ConnectError, createClient } from "@connectrpc/connect";
2
+ import { createConnectTransport } from "@connectrpc/connect-web";
3
+ import { ConsoleProductService, ProductStatus, SearchResultKind, TeamRole } from "./gen/xeonr/console/v1/console_pb.js";
4
+ const STATUS_NAME = {
5
+ [ProductStatus.UNSPECIFIED]: "live",
6
+ [ProductStatus.LIVE]: "live",
7
+ [ProductStatus.PREVIEW]: "preview",
8
+ [ProductStatus.COMING_SOON]: "coming_soon",
9
+ };
10
+ const SEARCH_KIND_NAME = {
11
+ [SearchResultKind.UNSPECIFIED]: "entity",
12
+ [SearchResultKind.ENTITY]: "entity",
13
+ [SearchResultKind.ACTION]: "action",
14
+ [SearchResultKind.TEAM]: "team",
15
+ [SearchResultKind.NAVIGATION]: "navigation",
16
+ };
17
+ function teamFrom(t) {
18
+ return {
19
+ id: t.id,
20
+ slug: t.slug,
21
+ name: t.name,
22
+ avatarUrl: t.avatarUrl || undefined,
23
+ role: t.role === TeamRole.OWNER ? "owner" : "member",
24
+ roles: t.roles,
25
+ entitled: t.entitled,
26
+ canEnable: t.canEnable,
27
+ };
28
+ }
29
+ export function connectConsoleClient(baseUrl = "", opts = {}) {
30
+ const rpc = createClient(ConsoleProductService,
31
+ // Same-origin by default: the BFF is this console's own server, and a
32
+ // same-origin request carries the session cookie without any credentials
33
+ // dance.
34
+ createConnectTransport({ baseUrl }));
35
+ // Unauthenticated is the one error the shell handles rather than surfaces:
36
+ // the BFF answers it only when there is no session at all, having already
37
+ // tried a silent prompt=none entry, so it means a real sign-in is due.
38
+ async function call(method, run) {
39
+ try {
40
+ return await run();
41
+ }
42
+ catch (err) {
43
+ if (err instanceof ConnectError && err.code === Code.Unauthenticated) {
44
+ if (opts.onUnauthenticated)
45
+ return opts.onUnauthenticated(method);
46
+ window.location.assign(`/auth/login?next=${encodeURIComponent(window.location.pathname + window.location.search)}`);
47
+ return new Promise(() => { });
48
+ }
49
+ throw err;
15
50
  }
16
- if (!res.ok)
17
- throw new Error(`${path}: ${res.status}`);
18
- return (await res.json());
19
51
  }
20
52
  return {
21
- me: () => call("/me"),
22
- listProducts: (team) => call(`/products${team ? `?team=${encodeURIComponent(team)}` : ""}`),
23
- getContext: () => call("/context"),
24
- setContext: (patch) => call("/context", { method: "PATCH", body: JSON.stringify(patch) }),
25
- listMyInvitations: () => call("/invitations"),
26
- // Not `call`: this answers 204 with no body, and its failure body is auth's
27
- // own message ("that product is not self-serve", "you do not own this
28
- // team"), which the caller shows rather than a status code.
53
+ me: () => call("GetMe", async () => {
54
+ const r = await rpc.getMe({});
55
+ const me = {
56
+ subject: r.subject,
57
+ displayName: r.displayName,
58
+ email: r.email,
59
+ avatarUrl: r.avatarUrl || undefined,
60
+ teams: r.teams.map(teamFrom),
61
+ teamsVersion: Number(r.teamsVersion),
62
+ isOrgAdmin: r.isOrgAdmin,
63
+ warnings: r.warnings,
64
+ };
65
+ return me;
66
+ }),
67
+ listProducts: (team) => call("ListProducts", async () => {
68
+ const r = await rpc.listProducts({ team: team ?? "" });
69
+ return r.products.map((p) => ({
70
+ key: p.key,
71
+ name: p.name,
72
+ origin: p.origin,
73
+ icon: p.icon,
74
+ colour: p.colour,
75
+ category: p.category,
76
+ blurb: p.blurb,
77
+ status: STATUS_NAME[p.status] ?? "live",
78
+ scopes: p.scopes,
79
+ pinnedByDefault: p.pinnedByDefault,
80
+ enabled: p.enabled,
81
+ canEnable: p.canEnable,
82
+ docsUrl: p.docsUrl || undefined,
83
+ supportUrl: p.supportUrl || undefined,
84
+ }));
85
+ }),
86
+ getContext: () => call("GetContext", async () => contextFrom((await rpc.getContext({})).context)),
87
+ setContext: (patch) => call("UpdateContext", async () => {
88
+ // Only the keys actually present in the patch are named as paths, so a
89
+ // write that touches the theme cannot clear the pins by omission.
90
+ const paths = [];
91
+ const context = {};
92
+ if ("activeTeam" in patch) {
93
+ paths.push("active_team");
94
+ context.activeTeam = patch.activeTeam ?? "";
95
+ }
96
+ if ("pinnedProducts" in patch) {
97
+ paths.push("pinned_products");
98
+ // null unsets the choice, so the registry's defaults apply again. An
99
+ // array — the empty one included — is a choice, and the message's
100
+ // presence is what carries that distinction onto the wire.
101
+ if (patch.pinnedProducts != null)
102
+ context.pinnedProducts = { keys: patch.pinnedProducts };
103
+ }
104
+ if ("theme" in patch) {
105
+ paths.push("theme");
106
+ context.theme = patch.theme ?? "system";
107
+ }
108
+ return contextFrom((await rpc.updateContext({ context, paths })).context);
109
+ }),
110
+ listMyInvitations: () => call("ListInvitations", async () => {
111
+ const r = await rpc.listInvitations({});
112
+ return r.invitations.map((i) => ({
113
+ id: i.id,
114
+ team: {
115
+ id: i.team?.id ?? "",
116
+ slug: i.team?.slug ?? "",
117
+ name: i.team?.name ?? "",
118
+ avatarUrl: i.team?.avatarUrl || undefined,
119
+ },
120
+ invitedBy: i.invitedBy,
121
+ role: i.role === TeamRole.OWNER ? "owner" : "member",
122
+ expiresAt: i.expiresAt,
123
+ }));
124
+ }),
125
+ // Not wrapped in `call`: its failure message is auth's own ("that product
126
+ // is not self-serve", "you do not own this team"), which the caller shows
127
+ // instead of a status code.
29
128
  enableProduct: async (team, product) => {
30
- const res = await fetch(`${base}/products/enable`, {
31
- method: "POST",
32
- credentials: "same-origin",
33
- headers: { "content-type": "application/json" },
34
- body: JSON.stringify({ team, product }),
35
- });
36
- if (res.status === 401) {
37
- if (opts.onUnauthenticated) {
38
- opts.onUnauthenticated("/products/enable");
39
- return;
40
- }
41
- window.location.assign(`/auth/login?next=${encodeURIComponent(window.location.pathname + window.location.search)}`);
42
- return new Promise(() => { });
129
+ try {
130
+ await rpc.createProductBinding({ team, product });
43
131
  }
44
- if (!res.ok) {
45
- const text = (await res.text().catch(() => "")).trim();
46
- throw new Error(text || `Could not enable ${product} (${res.status})`);
132
+ catch (err) {
133
+ if (!(err instanceof ConnectError))
134
+ throw err;
135
+ if (err.code === Code.Unauthenticated) {
136
+ if (opts.onUnauthenticated) {
137
+ opts.onUnauthenticated("CreateProductBinding");
138
+ return;
139
+ }
140
+ window.location.assign(`/auth/login?next=${encodeURIComponent(window.location.pathname + window.location.search)}`);
141
+ return new Promise(() => { });
142
+ }
143
+ throw new Error(err.rawMessage || `Could not enable ${product}`);
47
144
  }
48
145
  },
49
- search: (query, team) => call(`/search?q=${encodeURIComponent(query)}${team ? `&team=${encodeURIComponent(team)}` : ""}`),
146
+ search: (query, team) => call("Search", async () => {
147
+ const r = await rpc.search({ query, team: team ?? "" });
148
+ return r.results.map((s) => ({
149
+ product: s.product,
150
+ kind: SEARCH_KIND_NAME[s.kind] ?? "entity",
151
+ title: s.title,
152
+ subtitle: s.subtitle || undefined,
153
+ href: s.href,
154
+ icon: s.icon || undefined,
155
+ internal: s.internal,
156
+ }));
157
+ }),
158
+ };
159
+ }
160
+ function contextFrom(ctx) {
161
+ const theme = ctx?.theme;
162
+ return {
163
+ activeTeam: ctx?.activeTeam ? ctx.activeTeam : null,
164
+ // An absent message is "nobody has chosen"; a present one — even with no
165
+ // keys — is a choice, and must not revive the registry's defaults.
166
+ pinnedProducts: ctx?.pinnedProducts ? ctx.pinnedProducts.keys : null,
167
+ theme: theme === "light" || theme === "dark" ? theme : "system",
50
168
  };
51
169
  }
52
170
  // mockConsoleClient drives the shell with no server at all — the same idea as
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}