@opengeni/react 6.0.0-canary.1 → 6.1.0-canary.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.
Files changed (71) hide show
  1. package/README.md +17 -0
  2. package/dist/capability-catalog-row.d.ts +20 -0
  3. package/dist/{chunk-VRBL3F5E.js → chunk-5GAL23FF.js} +10 -2
  4. package/dist/{chunk-VRBL3F5E.js.map → chunk-5GAL23FF.js.map} +1 -1
  5. package/dist/{chunk-IHQII5WO.js → chunk-G5JFM6ZE.js} +29 -4
  6. package/dist/chunk-G5JFM6ZE.js.map +1 -0
  7. package/dist/{chunk-UMECRJRV.js → chunk-HJ5VJ4JB.js} +21 -12
  8. package/dist/chunk-HJ5VJ4JB.js.map +1 -0
  9. package/dist/{chunk-R4KRSFGA.js → chunk-IP4BUBKH.js} +3 -3
  10. package/dist/{chunk-CC7AVRIJ.js → chunk-KZ4QDBGM.js} +87 -14
  11. package/dist/chunk-KZ4QDBGM.js.map +1 -0
  12. package/dist/{chunk-PZ27MCZP.js → chunk-L5VJYZIW.js} +34 -4
  13. package/dist/chunk-L5VJYZIW.js.map +1 -0
  14. package/dist/{chunk-45XEUVTK.js → chunk-UWVY3OXF.js} +12 -5
  15. package/dist/chunk-UWVY3OXF.js.map +1 -0
  16. package/dist/components/message-timeline.d.ts +2 -2
  17. package/dist/composer.js +4 -4
  18. package/dist/connect-panel.d.ts +2 -1
  19. package/dist/connect-setup.d.ts +3 -1
  20. package/dist/connect.d.ts +1 -0
  21. package/dist/connect.js +620 -424
  22. package/dist/connect.js.map +1 -1
  23. package/dist/connection-catalog.d.ts +6 -1
  24. package/dist/connection-installed.d.ts +1 -0
  25. package/dist/connection-logo.d.ts +4 -2
  26. package/dist/discovery-cache.d.ts +5 -0
  27. package/dist/hooks/use-workspace-sessions.d.ts +2 -0
  28. package/dist/index.js +16 -8
  29. package/dist/index.js.map +1 -1
  30. package/dist/{model-policy-picker-menu-3R336DP2.js → model-policy-picker-menu-RVOQ4ZZG.js} +4 -4
  31. package/dist/model-policy.d.ts +6 -2
  32. package/dist/model-policy.js +1 -1
  33. package/dist/plugin-discovery.d.ts +4 -0
  34. package/dist/realtime.js +2 -2
  35. package/dist/session-ui.js +6 -6
  36. package/dist/session.js +1 -1
  37. package/dist/skill-discovery.d.ts +11 -0
  38. package/dist/timeline/projection.d.ts +3 -1
  39. package/dist/timeline/turn-summary.d.ts +2 -2
  40. package/package.json +3 -3
  41. package/src/capability-catalog-row.tsx +94 -0
  42. package/src/components/markdown.tsx +32 -3
  43. package/src/components/message-timeline.tsx +88 -4
  44. package/src/components/model-picker.tsx +11 -3
  45. package/src/components/model-policy-picker-menu.tsx +10 -3
  46. package/src/components/session-conversation.tsx +1 -3
  47. package/src/components/session-status.tsx +2 -2
  48. package/src/connect-panel.tsx +19 -8
  49. package/src/connect-setup.tsx +49 -14
  50. package/src/connect.ts +6 -0
  51. package/src/connection-catalog.tsx +61 -39
  52. package/src/connection-installed.tsx +2 -0
  53. package/src/connection-logo.tsx +14 -10
  54. package/src/discovery-cache.ts +42 -0
  55. package/src/hooks/use-session-events.ts +24 -2
  56. package/src/hooks/use-workspace-sessions.ts +10 -0
  57. package/src/model-policy.ts +21 -0
  58. package/src/plugin-details.tsx +8 -5
  59. package/src/plugin-discovery.tsx +87 -71
  60. package/src/skill-discovery.tsx +101 -56
  61. package/src/timeline/projection.ts +31 -1
  62. package/src/timeline/turn-summary.tsx +3 -3
  63. package/styles/compiled.css +27 -0
  64. package/styles/connect.css +56 -15
  65. package/dist/chunk-45XEUVTK.js.map +0 -1
  66. package/dist/chunk-CC7AVRIJ.js.map +0 -1
  67. package/dist/chunk-IHQII5WO.js.map +0 -1
  68. package/dist/chunk-PZ27MCZP.js.map +0 -1
  69. package/dist/chunk-UMECRJRV.js.map +0 -1
  70. /package/dist/{chunk-R4KRSFGA.js.map → chunk-IP4BUBKH.js.map} +0 -0
  71. /package/dist/{model-policy-picker-menu-3R336DP2.js.map → model-policy-picker-menu-RVOQ4ZZG.js.map} +0 -0
@@ -1,4 +1,5 @@
1
1
  import type { ReactNode } from "react";
2
+ import { type CapabilityCatalogStatus } from "./capability-catalog-row.js";
2
3
  /** Status comes from the host/controller, never inferred from a display label. */
3
4
  export type ConnectionCatalogOption = {
4
5
  id: string;
@@ -6,6 +7,8 @@ export type ConnectionCatalogOption = {
6
7
  description?: string | undefined;
7
8
  status: string;
8
9
  connected: boolean;
10
+ /** Explicit health/availability. Omit to retain visible legacy status text. */
11
+ state?: CapabilityCatalogStatus;
9
12
  onOpen: () => void;
10
13
  action?: ReactNode;
11
14
  };
@@ -19,6 +22,8 @@ export type ConnectionCatalogProps = {
19
22
  services: ConnectionCatalogService[];
20
23
  query?: string;
21
24
  columns?: 1 | 2;
25
+ resultLimit?: number;
26
+ onShowMore?: () => void;
22
27
  /** Group capabilities by service, or show every capability independently. */
23
28
  grouped?: boolean;
24
29
  className?: string;
@@ -30,4 +35,4 @@ export declare function ConnectionOptionRow({ option }: {
30
35
  export declare function ConnectionServiceRow({ service }: {
31
36
  service: ConnectionCatalogService;
32
37
  }): import("react").JSX.Element | null;
33
- export declare function ConnectionCatalog({ services, query, columns, grouped, className, emptyMessage, }: ConnectionCatalogProps): import("react").JSX.Element;
38
+ export declare function ConnectionCatalog({ services, query, columns, grouped, resultLimit, onShowMore, className, emptyMessage, }: ConnectionCatalogProps): import("react").JSX.Element;
@@ -5,6 +5,7 @@ export type ConnectionInstalledItem = {
5
5
  status: string;
6
6
  icon?: ReactNode;
7
7
  needsAttention?: boolean;
8
+ disabled?: boolean;
8
9
  onOpen: () => void;
9
10
  };
10
11
  /** Compact account/service shortcuts. The host supplies authoritative status. */
@@ -1,6 +1,8 @@
1
- /** Brand identifier; failed/missing assets use a stable text fallback. */
2
- export declare function ConnectionLogo({ src, name, size, }: {
1
+ import { type ReactNode } from "react";
2
+ /** Brand identifier; failed/missing assets use the supplied fallback or stable initials. */
3
+ export declare function ConnectionLogo({ src, name, size, fallback, }: {
3
4
  src: string | null;
4
5
  name: string;
5
6
  size?: number;
7
+ fallback?: ReactNode;
6
8
  }): import("react").JSX.Element;
@@ -0,0 +1,5 @@
1
+ /** Short-lived presentation data only. Never cache installation or authorization state. */
2
+ export declare function createDiscoveryCache<T>(ttlMs?: number, capacity?: number): {
3
+ peek(client: object, key: string): T | undefined;
4
+ read(client: object, key: string, fetch: () => Promise<T>): Promise<T>;
5
+ };
@@ -8,6 +8,8 @@ export type UseWorkspaceSessionsOptions = ClientOverride & {
8
8
  /** Return only the complete personal pinned projection. */
9
9
  pinsOnly?: boolean | undefined;
10
10
  archivedOnly?: boolean | undefined;
11
+ sortBy?: "updatedAt" | "createdAt" | "name" | undefined;
12
+ archiveStatus?: "active" | "archived" | "all" | undefined;
11
13
  /** Refresh interval (ms) for fleet/manager views. Off by default. */
12
14
  pollIntervalMs?: number | undefined;
13
15
  enabled?: boolean | undefined;
package/dist/index.js CHANGED
@@ -44,7 +44,7 @@ import {
44
44
  } from "./chunk-5YK2ZDIG.js";
45
45
  import {
46
46
  ModelPolicyPickerMenu
47
- } from "./chunk-UMECRJRV.js";
47
+ } from "./chunk-HJ5VJ4JB.js";
48
48
  import {
49
49
  ActivityDisclosure,
50
50
  ActivityRail,
@@ -108,7 +108,7 @@ import {
108
108
  useWorkspaceModelCatalog,
109
109
  userMessageLikelyNeedsDisclosure,
110
110
  v4aToGitFileDiff
111
- } from "./chunk-CC7AVRIJ.js";
111
+ } from "./chunk-KZ4QDBGM.js";
112
112
  import "./chunk-YBM6CQRU.js";
113
113
  import "./chunk-5M6VTFJ5.js";
114
114
  import "./chunk-ZYRGEKWS.js";
@@ -124,7 +124,7 @@ import {
124
124
  retainedImageId,
125
125
  sandboxFileLocationFromHref,
126
126
  sandboxFilePathFromHref
127
- } from "./chunk-IHQII5WO.js";
127
+ } from "./chunk-G5JFM6ZE.js";
128
128
  import {
129
129
  copyTextToClipboard,
130
130
  tableElementToTsv
@@ -164,7 +164,7 @@ import {
164
164
  useSlashCommands,
165
165
  useTranscription,
166
166
  useVoiceInput
167
- } from "./chunk-45XEUVTK.js";
167
+ } from "./chunk-UWVY3OXF.js";
168
168
  import {
169
169
  Tooltip,
170
170
  TooltipContent,
@@ -179,7 +179,7 @@ import {
179
179
  PickerBackHeader,
180
180
  PickerNavRow,
181
181
  defaultModelPolicyPickerMessages
182
- } from "./chunk-R4KRSFGA.js";
182
+ } from "./chunk-IP4BUBKH.js";
183
183
  import {
184
184
  usePortalTokenSource,
185
185
  usePortalTokenStyle
@@ -219,7 +219,7 @@ import {
219
219
  useSession,
220
220
  useSessionEvents,
221
221
  useTurnQueue
222
- } from "./chunk-PZ27MCZP.js";
222
+ } from "./chunk-L5VJYZIW.js";
223
223
  import {
224
224
  FILE_ONLY_MESSAGE_TEXT,
225
225
  composeSendInput,
@@ -269,7 +269,7 @@ import {
269
269
  projectPickerRows,
270
270
  runnableLatencyModesForModel,
271
271
  sortPickerRows
272
- } from "./chunk-VRBL3F5E.js";
272
+ } from "./chunk-5GAL23FF.js";
273
273
  import {
274
274
  cn
275
275
  } from "./chunk-22KP6LR5.js";
@@ -415,6 +415,8 @@ function useWorkspaceSessions(options = {}) {
415
415
  const search = options.search;
416
416
  const pinsOnly = options.pinsOnly;
417
417
  const archivedOnly = options.archivedOnly;
418
+ const sortBy = options.sortBy;
419
+ const archiveStatus = options.archiveStatus;
418
420
  const enabled = options.enabled ?? true;
419
421
  const nextReadRevision = useRef(0);
420
422
  const nextReadGeneration = useRef(0);
@@ -426,7 +428,9 @@ function useWorkspaceSessions(options = {}) {
426
428
  cursor ?? "",
427
429
  search ?? "",
428
430
  pinsOnly ? "1" : "",
429
- archivedOnly ? "archived" : "active"
431
+ archivedOnly ? "archived" : "active",
432
+ sortBy ?? "",
433
+ archiveStatus ?? ""
430
434
  ].join("\0");
431
435
  const previousQueryKey = useRef(queryKey);
432
436
  const queryKeyTransition = previousQueryKey.current !== queryKey;
@@ -443,6 +447,8 @@ function useWorkspaceSessions(options = {}) {
443
447
  ...search !== void 0 ? { search } : {},
444
448
  ...pinsOnly ? { pinsOnly: true } : {},
445
449
  ...archivedOnly ? { archivedOnly: true } : {},
450
+ ...sortBy ? { sortBy } : {},
451
+ ...archiveStatus ? { archiveStatus } : {},
446
452
  signal
447
453
  });
448
454
  return {
@@ -462,6 +468,8 @@ function useWorkspaceSessions(options = {}) {
462
468
  search,
463
469
  pinsOnly,
464
470
  archivedOnly,
471
+ sortBy,
472
+ archiveStatus,
465
473
  queryKey
466
474
  ]
467
475
  );