Docs Components Assistant

ToolGroup

React example follows below.
ts
import { ToolGroup } from "@grassroot/ui-react/assistant";
import { assistantDemoTools } from "@grassroot/demo-fixtures";
export default function ToolGroupDemo() {
return <ToolGroup items={assistantDemoTools} defaultOpen={true} />;
}
ts
<script setup lang="ts">
import { ToolGroup } from "@grassroot/ui-vue/assistant";
import { assistantDemoTools } from "@grassroot/demo-fixtures";
</script>
<template>
<ToolGroup :items="assistantDemoTools" :defaultOpen="true" />
</template>
ts
import "./ensure-compiler";
import { ChangeDetectionStrategy, Component } from "@angular/core";
import { GrassrootToolGroup } from "@grassroot/ui-angular/assistant";
import { assistantDemoTools } from "@grassroot/demo-fixtures";
@Component({
selector: "app-tool-group-demo",
standalone: true,
imports: [GrassrootToolGroup],
changeDetection: ChangeDetectionStrategy.OnPush,
template: `<grassroot-tool-group [items]="items" [defaultOpen]="defaultOpen" />`,
})
export class ToolGroupDemoComponent {
protected readonly items = assistantDemoTools;
protected readonly defaultOpen = true;
}
export default ToolGroupDemoComponent;
ts
<script lang="ts">
import { ToolGroup } from "@grassroot/ui-svelte/assistant";
import { assistantDemoTools } from "@grassroot/demo-fixtures";
</script>
<ToolGroup items={assistantDemoTools} defaultOpen={true} />
ts
/** @jsxImportSource solid-js */
import { ToolGroup } from "@grassroot/ui-solid/assistant";
import { assistantDemoTools } from "@grassroot/demo-fixtures";
export default function ToolGroupDemo() {
return <ToolGroup items={assistantDemoTools} defaultOpen={true} />;
}

Installation

API Reference

Import

import { ToolGroup } from "@grassroot/ui-react/assistant";
import { assistantDemoTools } from "@grassroot/demo-fixtures";

Props

Prop
Type
Default
Requirement
items
readonly ToolGroupItem[] | undefined
optional
count
number | undefined
optional
active
boolean | undefined
optional
streaming
boolean | undefined
optional
open
boolean | undefined
optional
defaultOpen
boolean | undefined
optional
onOpenChange
((open: boolean) => void) | undefined
optional
Prop
items
Type
readonly ToolGroupItem[] | undefined
Default
Requirement
optional
Prop
count
Type
number | undefined
Default
Requirement
optional
Prop
active
Type
boolean | undefined
Default
Requirement
optional
Prop
streaming
Type
boolean | undefined
Default
Requirement
optional
Prop
open
Type
boolean | undefined
Default
Requirement
optional
Prop
defaultOpen
Type
boolean | undefined
Default
Requirement
optional
Prop
onOpenChange
Type
((open: boolean) => void) | undefined
Default
Requirement
optional

Events

EventPayload
onOpenChange((open: boolean) => void) | undefined

Content regions

  • children

Native attributes

Standard DOM and ARIA attributes not listed above spread onto the root element.

Import

import { ToolGroup } from "@grassroot/ui-vue/assistant";
import { assistantDemoTools } from "@grassroot/demo-fixtures";

Props

Prop
Type
Default
Requirement
items
ToolGroupItem[]
() => []
optional
count
number
optional
active
boolean
optional
streaming
boolean
optional
open
boolean
optional
defaultOpen
boolean
optional
Prop
items
Type
ToolGroupItem[]
Default
() => []
Requirement
optional
Prop
count
Type
number
Default
Requirement
optional
Prop
active
Type
boolean
Default
Requirement
optional
Prop
streaming
Type
boolean
Default
Requirement
optional
Prop
open
Type
boolean
Default
Requirement
optional
Prop
defaultOpen
Type
boolean
Default
Requirement
optional

Events

EventPayload
update:open(boolean) => void
openChange(boolean) => void

Content regions

  • default

Import

import "./ensure-compiler";
import { ChangeDetectionStrategy, Component } from "@angular/core";
import { GrassrootToolGroup } from "@grassroot/ui-angular/assistant";
import { assistantDemoTools } from "@grassroot/demo-fixtures";

Props

Prop
Type
Default
Requirement
items
readonly { id: string; name?: string; status?: ToolStatus; content?: string }[]
[]
optional
count
number
optional
active
boolean
false
optional
streaming
boolean
false
optional
open
boolean
optional
defaultOpen
boolean
false
optional
Prop
items
Type
readonly { id: string; name?: string; status?: ToolStatus; content?: string }[]
Default
[]
Requirement
optional
Prop
count
Type
number
Default
Requirement
optional
Prop
active
Type
boolean
Default
false
Requirement
optional
Prop
streaming
Type
boolean
Default
false
Requirement
optional
Prop
open
Type
boolean
Default
Requirement
optional
Prop
defaultOpen
Type
boolean
Default
false
Requirement
optional

Events

EventPayload
openChangeboolean

Content regions

  • default

Import

import { ToolGroup } from "@grassroot/ui-svelte/assistant";
import { assistantDemoTools } from "@grassroot/demo-fixtures";

Props

Prop
Type
Default
Requirement
class
string
optional
style
string
optional
items
readonly AssistantToolItem[]
optional
count
number
optional
active
boolean
false
optional
streaming
boolean
false
optional
open
boolean
optional
defaultOpen
boolean
false
optional
onOpenChange
(open: boolean) => void
optional
Prop
class
Type
string
Default
Requirement
optional
Prop
style
Type
string
Default
Requirement
optional
Prop
items
Type
readonly AssistantToolItem[]
Default
Requirement
optional
Prop
count
Type
number
Default
Requirement
optional
Prop
active
Type
boolean
Default
false
Requirement
optional
Prop
streaming
Type
boolean
Default
false
Requirement
optional
Prop
open
Type
boolean
Default
Requirement
optional
Prop
defaultOpen
Type
boolean
Default
false
Requirement
optional
Prop
onOpenChange
Type
(open: boolean) => void
Default
Requirement
optional

Events

EventPayload
onOpenChange(open: boolean) => void

Content regions

  • children

Import

import { ToolGroup } from "@grassroot/ui-solid/assistant";
import { assistantDemoTools } from "@grassroot/demo-fixtures";

Props

Prop
Type
Default
Requirement
items
readonly ToolGroupItem[]
optional
count
number
optional
active
boolean
optional
streaming
boolean
optional
open
boolean
optional
defaultOpen
boolean
optional
onOpenChange
(open: boolean) => void
optional
Prop
items
Type
readonly ToolGroupItem[]
Default
Requirement
optional
Prop
count
Type
number
Default
Requirement
optional
Prop
active
Type
boolean
Default
Requirement
optional
Prop
streaming
Type
boolean
Default
Requirement
optional
Prop
open
Type
boolean
Default
Requirement
optional
Prop
defaultOpen
Type
boolean
Default
Requirement
optional
Prop
onOpenChange
Type
(open: boolean) => void
Default
Requirement
optional

Events

EventPayload
onOpenChange(open: boolean) => void

Content regions

  • children

Native attributes

Standard DOM and ARIA attributes not listed above spread onto the root element.