@arcgis/ai-components 5.0.13 → 5.0.14

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.
@@ -1 +1 @@
1
- {"$schema":"https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json","name":"@arcgis/ai-components","version":"5.0.13","description-markup":"markdown","contributions":{"html":{"elements":[{"name":"arcgis-assistant","description":"The ArcGIS Assistant component provides a chat-based natural language interface for interacting with\nweb map data via agents. This component uses an orchestrator, which relies on a large language model (LLM)\nfor determining user intent. Once the intent is determined, the assistant routes the user's request\nto an agent that uses an LLM to generate text and structured responses.\n\nBy default, the `arcgis-assistant` component does not include any agents. You must register at least one\nagent for the assistant to function. You can register agents declaratively using any of the\navailable agent components, or you can register custom agents.\n\n## Register agents\n\nTo register agents declaratively, include one or more agent components as children\nof the `arcgis-assistant` component. This can be done in HTML or programmatically using JavaScript.\n\n```html\n<arcgis-map id=\"my-map\"></arcgis-map>\n<arcgis-assistant reference-element=\"#my-map\">\n <arcgis-assistant-navigation-agent></arcgis-assistant-navigation-agent>\n <arcgis-assistant-data-exploration-agent></arcgis-assistant-data-exploration-agent>\n <arcgis-assistant-help-agent></arcgis-assistant-help-agent>\n</arcgis-assistant>\n```\n\n```js\nconst assistant = document.querySelector(\"arcgis-assistant\");\nconst navigationAgent = document.createElement(\"arcgis-assistant-navigation-agent\");\nconst dataExplorationAgent = document.createElement(\"arcgis-assistant-data-exploration-agent\");\nassistant.appendChild(navigationAgent);\nassistant.appendChild(dataExplorationAgent);\n```\n\nNote that the `reference-element` property on the `arcgis-assistant` component must point to a valid `arcgis-map` element\nfor the included ArcGIS agents to function properly, as they rely on the map context to perform their tasks. This is not\na requirement for [custom agents](https://developers.arcgis.com/javascript/latest/agentic-apps/ai-custom-agents/).\n\n## Context\n\nUse the [referenceElement](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#referenceElement) property to provide a web map as context to the assistant and its agents.\nThis should be a reference to the map that the assistant will interact with, and is required for the included ArcGIS\nagents to function properly.\n\nTo learn more about this component, try out the [demo](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#demos)\n\n## Important considerations and best practices\n\nDue to the non-deterministic nature of generative AI, there may be inaccuracies or unexpected behavior when using the\nout-of-the-box agents. Therefore, it is important to set clear expectations\nfor end users and provide guidance on how to interact with the assistant to help mitigate these issues. Some ways to do this include:\n\n- Provide [suggestedPrompts](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#suggestedPrompts). This helps users understand the bounds of the assistant\nand gives them an idea of how to phrase questions to get the best results.\n- Use the [entryMessage](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#entryMessage) property to provide an entry message with instructions and guidance.\n--\n\n### Events\n- **arcgisCancel** - Emitted when the user cancels a message. This is typically invoked when a user submits a question while a previous question is still being processed.\nThis allows app developers to capture messages cancelled by the user and respond to them in custom ways, such as by providing additional information,\ntriggering other actions in the app, or logging them for analysis.\n- **arcgisError** - Emitted when the assistant encounters an error. The event detail includes an Error object with information about the error that occurred.\nThis allows app developers to capture errors that occur within the assistant and respond to them in custom ways, such as by displaying an\nerror message to the user, logging the error for analysis, or triggering other actions in the app.\n- **arcgisFeedback** - Emitted when the user clicks the thumbs up or thumbs down feedback action that is displayed when [feedbackEnabled](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#feedbackEnabled) is `true`.\nThe event detail includes an AssistantMessage object that includes a feedback property with an object indicating whether the feedback is positive or negative.\nThis allows the application to capture user feedback on the assistant's responses and respond to it in custom ways, such as by providing additional\ninformation, adjusting the assistant's behavior, logging the feedback for analysis, or triggering other actions in the app.\n- **arcgisInterrupt** - Emitted when an agent triggers an interrupt. An interrupt is a human-in-the-loop mechanism that provides a UI component prompting\nthe user for additional information.\n- **arcgisInterruptCancel** - Emitted when the user cancels an interrupt. This is typically invoked when a user clicks the cancel button displayed in an interrupt message\n- **arcgisInterruptSubmit** - Emitted when the user submits a message during an interrupt. For example, this will be invoked if the user clicks the submit button\nin an interrupt message asking for confirmation, or when the user submits additional text or selects an option provided in an interrupt.\n- **arcgisReady** - Emitted when the assistant is ready to receive messages from the end user. This indicates that the assistant has been successfully\ninitialized and is ready to process user input.\n- **arcgisSubmit** - Emitted when the user submits a message. This is typically invoked when a user clicks the submit button in the chat interface or hits the Enter key.\n\n### Methods\n- `clearChatHistory(): Promise<void>` - Clears the chat history between the user and the assistant. This method can be used to programmatically reset the conversation,\nremoving all messages from the chat interface.\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.\n- `submitMessage(message: string): Promise<void>` - Programmatically submits a message to the assistant. This method can be used to submit messages from outside the component,\nsuch as from another component or from custom JavaScript code. When a message is submitted using this method, it is added\nto the messages collection with the role of \"user\", and then processed by the assistant in the same way as if it were submitted\nthrough the chat interface. This allows for greater flexibility in how messages are sent to the assistant and can enable more\ncomplex interactions and integrations with other components or services.\n\n### Slots\n- _default_ - This is the default slot\n- **header-actions-end** - Slot for adding actions to the end of the header.\n- **entry-message** - Slot for adding a welcome or entry message on load.\n- **entry-actions-start** - Slot for adding actions to the start of the entry area.\n- **footer-content** - Slot for adding content to the footer.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/","attributes":[{"name":"copy-enabled","description":"When `true`, enables the copy action that, when clicked, copies the content of the message to the clipboard. This can be helpful for users to easily copy and share\ninformation provided by the assistant, such as a summary of findings, a set of instructions, or any other relevant details. Enabling this property can enhance the user experience by providing a convenient way for users to capture and utilize the information generated by the assistant.","default":"false","value":{"type":"boolean"}},{"name":"description","description":"The description text displayed below the heading in the assistant. This text provides additional\ncontext about the assistant's capabilities and how users can interact with it.","value":{"type":"string"}},{"name":"entry-message","description":"The instructions to display when the assistant is first loaded. This is intended to be a welcome or entry message that\nprovides guidance to users on how to interact with the assistant. Once the user submits their first message,\nthe entry message will be closed and replaced with the chat interface. You can use this property to provide\ninstructions, suggest prompts, or simply welcome users to the assistant.","value":{"type":"string"}},{"name":"feedback-enabled","description":"When `true`, enables the feedback action in the chat interface, allowing developers to capture user feedback on the assistant's responses.\nThe action simply provides a thumbs up and thumbs down experience for users to indicate whether a response was helpful or not. When the\nuser submits feedback, the [@arcgisFeedback](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#event-arcgisFeedback) event is emitted allowing the app developer to capture additional feedback\nthrough a custom interface and log it to a database or service for later analysis.","default":"false","value":{"type":"boolean"}},{"name":"heading","description":"The heading text displayed at the top of the assistant. This name should be concise and\ndescriptive of the assistant's purpose.\n\nFor applications where the primary interface is the assistant, this heading could also be used as the\napplication title. In cases where the assistant could be collapsed or is a secondary interface to a standard\nGUI, the heading should be more specific to the assistant's function to avoid confusion with the overall\napplication title.","value":{"type":"string"}},{"name":"keep-suggested-prompts","description":"When `true`, keeps suggested prompts displayed in the UI after the user submits a message. By default, suggested prompts are cleared,\nwhen the user submits a message.","default":"false","value":{"type":"boolean"}},{"name":"log-enabled","description":"When `true`, enables the log action that when clicked displays log messages in the chat interface. Log messages provide detailed messages including\nwhich agents or tools were invoked, the parameters generated by the LLM, and any relevant details about how the assistant arrived at its response.\nEnabling logs can be helpful for developers for debugging during the development of an assistant or agentic web application.\nIt may also be useful to end users for transparency purposes, allowing them to understand the assistant's behavior and decision-making process.\n\nEnabling this property for a production app depends on the role of the audience. More technical audiences may benefit from having access to these\nlogs while non-technical audiences may find them overwhelming or confusing.","default":"false","value":{"type":"boolean"}},{"name":"reference-element","description":"The reference element to the map that provides context for the assistant and its agents. Currently,\nthis is only scoped to `arcgis-map` elements. This is required when ArcGIS agents are registered to the assistant.\nFor example, this allows the navigation agent to execute a map navigation tool for a specific map.","value":{"type":["string","object"]}}],"slots":[{"name":"","description":"This is the default slot"},{"name":"header-actions-end","description":"Slot for adding actions to the end of the header."},{"name":"entry-message","description":"Slot for adding a welcome or entry message on load."},{"name":"entry-actions-start","description":"Slot for adding actions to the start of the entry area."},{"name":"footer-content","description":"Slot for adding content to the footer."}],"events":[{"name":"arcgisCancel","type":"void","description":"Emitted when the user cancels a message. This is typically invoked when a user submits a question while a previous question is still being processed.\nThis allows app developers to capture messages cancelled by the user and respond to them in custom ways, such as by providing additional information,\ntriggering other actions in the app, or logging them for analysis."},{"name":"arcgisError","type":"Error","description":"Emitted when the assistant encounters an error. The event detail includes an Error object with information about the error that occurred.\nThis allows app developers to capture errors that occur within the assistant and respond to them in custom ways, such as by displaying an\nerror message to the user, logging the error for analysis, or triggering other actions in the app."},{"name":"arcgisFeedback","type":"AssistantMessage","description":"Emitted when the user clicks the thumbs up or thumbs down feedback action that is displayed when [feedbackEnabled](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#feedbackEnabled) is `true`.\nThe event detail includes an AssistantMessage object that includes a feedback property with an object indicating whether the feedback is positive or negative.\nThis allows the application to capture user feedback on the assistant's responses and respond to it in custom ways, such as by providing additional\ninformation, adjusting the assistant's behavior, logging the feedback for analysis, or triggering other actions in the app."},{"name":"arcgisInterrupt","type":"Interrupt","description":"Emitted when an agent triggers an interrupt. An interrupt is a human-in-the-loop mechanism that provides a UI component prompting\nthe user for additional information."},{"name":"arcgisInterruptCancel","type":"void","description":"Emitted when the user cancels an interrupt. This is typically invoked when a user clicks the cancel button displayed in an interrupt message"},{"name":"arcgisInterruptSubmit","type":"string[] | boolean | string","description":"Emitted when the user submits a message during an interrupt. For example, this will be invoked if the user clicks the submit button\nin an interrupt message asking for confirmation, or when the user submits additional text or selects an option provided in an interrupt."},{"name":"arcgisReady","type":"void","description":"Emitted when the assistant is ready to receive messages from the end user. This indicates that the assistant has been successfully\ninitialized and is ready to process user input."},{"name":"arcgisSubmit","type":"string","description":"Emitted when the user submits a message. This is typically invoked when a user clicks the submit button in the chat interface or hits the Enter key."}],"js":{"properties":[{"name":"copyEnabled","description":"When `true`, enables the copy action that, when clicked, copies the content of the message to the clipboard. This can be helpful for users to easily copy and share\ninformation provided by the assistant, such as a summary of findings, a set of instructions, or any other relevant details. Enabling this property can enhance the user experience by providing a convenient way for users to capture and utilize the information generated by the assistant.","type":"boolean"},{"name":"description","description":"The description text displayed below the heading in the assistant. This text provides additional\ncontext about the assistant's capabilities and how users can interact with it.","type":"string | undefined"},{"name":"entryMessage","description":"The instructions to display when the assistant is first loaded. This is intended to be a welcome or entry message that\nprovides guidance to users on how to interact with the assistant. Once the user submits their first message,\nthe entry message will be closed and replaced with the chat interface. You can use this property to provide\ninstructions, suggest prompts, or simply welcome users to the assistant.","type":"string | undefined"},{"name":"feedbackEnabled","description":"When `true`, enables the feedback action in the chat interface, allowing developers to capture user feedback on the assistant's responses.\nThe action simply provides a thumbs up and thumbs down experience for users to indicate whether a response was helpful or not. When the\nuser submits feedback, the [@arcgisFeedback](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#event-arcgisFeedback) event is emitted allowing the app developer to capture additional feedback\nthrough a custom interface and log it to a database or service for later analysis.","type":"boolean"},{"name":"heading","description":"The heading text displayed at the top of the assistant. This name should be concise and\ndescriptive of the assistant's purpose.\n\nFor applications where the primary interface is the assistant, this heading could also be used as the\napplication title. In cases where the assistant could be collapsed or is a secondary interface to a standard\nGUI, the heading should be more specific to the assistant's function to avoid confusion with the overall\napplication title.","type":"string | undefined"},{"name":"keepSuggestedPrompts","description":"When `true`, keeps suggested prompts displayed in the UI after the user submits a message. By default, suggested prompts are cleared,\nwhen the user submits a message.","type":"boolean"},{"name":"logEnabled","description":"When `true`, enables the log action that when clicked displays log messages in the chat interface. Log messages provide detailed messages including\nwhich agents or tools were invoked, the parameters generated by the LLM, and any relevant details about how the assistant arrived at its response.\nEnabling logs can be helpful for developers for debugging during the development of an assistant or agentic web application.\nIt may also be useful to end users for transparency purposes, allowing them to understand the assistant's behavior and decision-making process.\n\nEnabling this property for a production app depends on the role of the audience. More technical audiences may benefit from having access to these\nlogs while non-technical audiences may find them overwhelming or confusing.","type":"boolean"},{"name":"messages","description":"The collection of messages exchanged between the user and the assistant. Each message includes the role\n(user or assistant), along with any relevant logs or errors. These messages are rendered in the chat interface\nand are used to provide context for the conversation. When a user submits a message, it is added to this\ncollection with the role of \"user\". When the assistant generates a response, it is added to this collection\nwith the role of \"assistant\", along with any logs or errors that occurred during processing.","type":"Collection<ChatMessage>"},{"name":"referenceElement","description":"The reference element to the map that provides context for the assistant and its agents. Currently,\nthis is only scoped to `arcgis-map` elements. This is required when ArcGIS agents are registered to the assistant.\nFor example, this allows the navigation agent to execute a map navigation tool for a specific map.","type":"ArcgisMap | string | null"},{"name":"suggestedPrompts","description":"Prompts to suggest to the end user on load. These are intended to help users understand which questions they can ask.\nThis property should be set to establish boundaries for the end user. As all agents have limitations and LLMs can\nbe unpredictable, it's important to set clear expectations for users to give them a better chance to succeed.\nBy providing suggested prompts, you can guide users towards asking questions that are relevant to the data being\nused and the capabilities of the registered agents, which can help to ensure that the assistant provides accurate\nand helpful responses.\n\nYou should typically provide 2-3 suggested prompts.","type":"string[]"}],"events":[{"name":"arcgisCancel","type":"void","description":"Emitted when the user cancels a message. This is typically invoked when a user submits a question while a previous question is still being processed.\nThis allows app developers to capture messages cancelled by the user and respond to them in custom ways, such as by providing additional information,\ntriggering other actions in the app, or logging them for analysis."},{"name":"arcgisError","type":"Error","description":"Emitted when the assistant encounters an error. The event detail includes an Error object with information about the error that occurred.\nThis allows app developers to capture errors that occur within the assistant and respond to them in custom ways, such as by displaying an\nerror message to the user, logging the error for analysis, or triggering other actions in the app."},{"name":"arcgisFeedback","type":"AssistantMessage","description":"Emitted when the user clicks the thumbs up or thumbs down feedback action that is displayed when [feedbackEnabled](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#feedbackEnabled) is `true`.\nThe event detail includes an AssistantMessage object that includes a feedback property with an object indicating whether the feedback is positive or negative.\nThis allows the application to capture user feedback on the assistant's responses and respond to it in custom ways, such as by providing additional\ninformation, adjusting the assistant's behavior, logging the feedback for analysis, or triggering other actions in the app."},{"name":"arcgisInterrupt","type":"Interrupt","description":"Emitted when an agent triggers an interrupt. An interrupt is a human-in-the-loop mechanism that provides a UI component prompting\nthe user for additional information."},{"name":"arcgisInterruptCancel","type":"void","description":"Emitted when the user cancels an interrupt. This is typically invoked when a user clicks the cancel button displayed in an interrupt message"},{"name":"arcgisInterruptSubmit","type":"string[] | boolean | string","description":"Emitted when the user submits a message during an interrupt. For example, this will be invoked if the user clicks the submit button\nin an interrupt message asking for confirmation, or when the user submits additional text or selects an option provided in an interrupt."},{"name":"arcgisReady","type":"void","description":"Emitted when the assistant is ready to receive messages from the end user. This indicates that the assistant has been successfully\ninitialized and is ready to process user input."},{"name":"arcgisSubmit","type":"string","description":"Emitted when the user submits a message. This is typically invoked when a user clicks the submit button in the chat interface or hits the Enter key."}]}},{"name":"arcgis-assistant-agent","description":"The Assistant Agent component is a generic wrapper for registering custom agents to the [arcgis-assistant](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/) component. To define\na custom agent, you must be familiar with [LangGraph](https://docs.langchain.com/oss/javascript/langgraph/overview). Custom agents must\ninclude a StateGraph that defines the agent's graph and subgraphs.\n\nBuilding custom agents can only be done using modern JavaScript/TypeScript tooling and cannot be done directly in HTML using\nCDN imports. Therefore, you must use a package manager like npm or yarn to install the required dependencies. Please refer to the\n[Custom Agents guide](https://developers.arcgis.com/javascript/latest/agentic-apps/ai-custom-agents/) for more instructions on how to create a custom agent.\n\nUse the [utils](https://developers.arcgis.com/javascript/latest/references/ai-components/utils/index/) module for helper functions and types related to building custom agents, including the `AgentRegistration`\ntype and functions for making LLM calls, managing agent state, and setting up human-in-the-loop workflows.\n\n> We recommend that developers building custom agents have experience working with LLMs and generative AI, and have a good\nunderstanding of the limitations of these technologies when building applications for end users.\n\nThis is an unrendered component that must be added as a child of the `arcgis-assistant` component in either HTML or JavaScript.\n\n```html\n<arcgis-assistant></arcgis-assistant>\n```\n\n```js\nconst myCustomAgent = {\n id: \"my-custom-agent\",\n name: \"My Custom Agent\",\n description: \"An agent that does custom things. Use this agent when users want to do custom things.\",\n createGraph: {\n // StateGraph definition using LangGraph\n },\n workspace: {\n // AnnotationRoot definition using LangGraph\n // relevant variables and context required by the agent\n },\n};\n\nconst assistant = document.querySelector(\"arcgis-assistant\");\nconst assistantAgent = document.createElement(\"arcgis-assistant-agent\");\n\nassistantAgent.agent = myCustomAgent;\nassistant.appendChild(assistantAgent);\n```\n--\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-agent/","attributes":[],"events":[],"js":{"properties":[{"name":"agent","description":"The agent registration object that defines the AI agent's behavior and capabilities.\nThis must include a StateGraph definition (defined using\n[LangGraph](https://docs.langchain.com/oss/javascript/langgraph/overview)).\n\nThis is an agent defined in the client and can be invoked by the assistant from the browser to perform specific tasks\nusing functions defined in the client.\n\nSee the [Custom Agents guide](https://developers.arcgis.com/javascript/latest/agentic-apps/ai-custom-agents/) for more instructions\nand links to samples demonstrating how to create custom agents.","type":"AgentRegistration"},{"name":"context","description":"If the agent requires context provided by the application or user, it can be provided via this property and accessed in the\nagent's graph nodes.","type":"TContext | (() => Promise<TContext | undefined> | TContext | undefined) | undefined"}],"events":[]}},{"name":"arcgis-assistant-data-exploration-agent","description":"The Data Exploration Agent enables the end user to query features, statistics, and spatial proximity\nto features in a layer within a web map. Currently, this is only scoped to querying feature layers within\na 2D web map. See the list of capabilities below for more details.\n\nThe data exploration agent is designed to answer questions about the data in the map, and does not have\naccess to external data sources or the user's location. It also cannot create visualizations in the form of charts,\nlayer renderers, new maps, or other visual outputs. It can currently only provide answers in text form based on the\ndata in the map.\n\nThis agent can change the state of the map by filtering features in a layer, but it cannot change the symbology of\nfeatures or create new layers or export results of a query to a file or external source.\n\nThis is an unrendered component that must be added as a child of the `arcgis-assistant` component in either HTML or JavaScript.\n\n```html\n<arcgis-map id=\"my-map\"></arcgis-map>\n<arcgis-assistant reference-element=\"my-map\">\n <arcgis-assistant-data-exploration-agent></arcgis-assistant-data-exploration-agent>\n</arcgis-assistant>\n```\n\n```js\nconst assistant = document.querySelector(\"arcgis-assistant\");\nconst dataExplorationAgent = document.createElement(\"arcgis-assistant-data-exploration-agent\");\nassistant.appendChild(dataExplorationAgent);\n```\n\nOnce added to the assistant, the agent is loaded and ready to receive user messages related to data exploration.\n\n### Capabilities\n\nThe data exploration agent provides the following capabilities related to exploring data in the map:\n\n- **Query features** - Ask about the attributes of features in a layer, including a single feature or a set\n of features.\n- **Query statistics** - Ask about statistics related to features in a layer. Statistics that can be queried\n include count, average, minimum, maximum, and sum. This includes asking about the top number of features based on a\n particular attribute.\n- **Query spatial proximity** - Ask about the spatial proximity of features in a layer, such as\n the number of features that intersect a polygon, or information about features within a distance of a specified location or feature.\n This currently does not include questions about the closest feature, but this is planned to be included in a future release.\n- **Filter features** - Users can ask the agent to show a subset of features that filter by attributes, or spatial\n proximity to other features. This includes asking the agent to show features that intersect a particular area,\n or are within a certain distance of a location or feature.\n\n### Example questions\n\nThe following are example questions a user can ask within the bounds of the data exploration agent.\nThese questions assume a map with layers that include cities, states, and rivers.\n\n- \"What is the city with the largest population?\"\n- \"How does that population compare to the average population of the cities in this map?\"\n- \"How many cities are within 30 miles of the Colorado River?\"\n- \"Show all cities in the state of California.\"\n- \"List the top 5 rivers by length.\"\n- \"Emphasize the largest river on the map.\"\n\nThe following are examples of the types of questions that fall outside the bounds of the\ndata exploration agent and should therefore be avoided:\n\n- \"What is the closest restaurant to me?\" (the data exploration agent does not have access to the user's location,\nnor can it find the nearest feature from a location)\n- \"What is the projected growth of Phoenix in the next 10 years?\" (the data exploration agent can\nonly answer questions about the data in the map, not external data or projections)\n- \"Show me the population of cities in this map on a graph.\" (the data exploration agent can only\nprovide answers in text form, not visualizations)\n\n> Due to the non-deterministic nature of generative AI, there may be inaccuracies or unexpected behavior when using the\nout-of-the-box agents.\n--\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-data-exploration-agent/","attributes":[{"name":"reference-element","description":"The reference element to the map that provides context for the data exploration agent. Currently,\nthis is only scoped to `arcgis-map` elements. This provides the data exploration agent with the layers\nneeded for answering user questions about the data in the map.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","description":"The reference element to the map that provides context for the data exploration agent. Currently,\nthis is only scoped to `arcgis-map` elements. This provides the data exploration agent with the layers\nneeded for answering user questions about the data in the map.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-help-agent","description":"The Help Agent provides contextual assistance and guidance to the end user within an\nagentic web mapping application. It can provide answers to questions about the web map provided\nto the [referenceElement](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-help-agent/#referenceElement) property and answer questions about other agents included\nas subcomponents to the [arcgis-assistant](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/) component.\n\nThis is an unrendered component that must be added as a child of the `arcgis-assistant` component in\neither HTML or JavaScript.\n\n```html\n<arcgis-map id=\"my-map\"></arcgis-map>\n<arcgis-assistant reference-element=\"my-map\">\n <arcgis-assistant-help-agent></arcgis-assistant-help-agent>\n</arcgis-assistant>\n```\n\n```js\nconst assistant = document.querySelector(\"arcgis-assistant\");\nconst helpAgent = document.createElement(\"arcgis-assistant-help-agent\");\nassistant.appendChild(helpAgent);\n```\n\nOnce added to the assistant, the agent is loaded and ready to receive user messages related to help and guidance.\n\n### Example questions\n\nThe following are example questions a user can ask within the bounds of the help agent:\n\n- \"What kind of questions can I ask?\"\n- \"What layers are in this map?\"\n- \"What kind of data can I ask questions about?\"\n\nThe following are examples of the types of questions that fall outside the bounds of the\nhelp agent and should therefore be avoided:\n\n- \"Search the Esri documentation for ways that I can query my data.\"\n- \"Log a bug related to map navigation to the Esri support team.\"\n- \"How do I bake a cake?\"\n- \"How does map navigation work in ArcGIS?\"\n\n> Due to the non-deterministic nature of generative AI, there may be inaccuracies or unexpected behavior when using the\nout-of-the-box agents.\n--\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-help-agent/","attributes":[{"name":"reference-element","description":"The reference element to the map that provides context for the help agent. Currently,\nthis is only scoped to `arcgis-map` elements. This shows the help agent which map for which to\nprovide assistance. This allows users to ask questions about the specific map provided to the agent.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","description":"The reference element to the map that provides context for the help agent. Currently,\nthis is only scoped to `arcgis-map` elements. This shows the help agent which map for which to\nprovide assistance. This allows users to ask questions about the specific map provided to the agent.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-layer-filter-agent","description":"### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-layer-filter-agent/","attributes":[{"name":"reference-element","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-layer-query-agent","description":"### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-layer-query-agent/","attributes":[{"name":"reference-element","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-layer-styling-agent","description":"### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-layer-styling-agent/","attributes":[{"name":"reference-element","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-navigation-agent","description":"The Navigation Agent enables the end user to navigate to different areas of a web map. See the list\nof capabilities below for more details.\n\nThis is an unrendered component that must be added as a child of the `arcgis-assistant` component in either HTML or JavaScript.\n\n```html\n<arcgis-map id=\"my-map\"></arcgis-map>\n<arcgis-assistant reference-element=\"my-map\">\n <arcgis-assistant-navigation-agent></arcgis-assistant-navigation-agent>\n</arcgis-assistant>\n```\n\n```js\nconst assistant = document.querySelector(\"arcgis-assistant\");\nconst navigationAgent = document.createElement(\"arcgis-assistant-navigation-agent\");\nassistant.appendChild(navigationAgent);\n```\n\nOnce added to the assistant, the agent is loaded and ready to receive user messages related to navigation.\n\n### Capabilities\n\nThe navigation agent provides the following capabilities related to map navigation:\n\n- **Geocoding** - Navigate to an address using Esri's World Geocoding Service.\n- **Go to extent** - Navigate to the extent of a bookmark in the map, the home extent of the web map,\n or the extent of a layer.\n- **Go to features** - Navigate to a specified feature or set of features.\n- **Go to viewpoint** - Navigate to a specified viewpoint, which can include center, zoom, and/or\n rotation.\n\n### Example questions\n\nThe following are example questions a user can ask within the bounds of the navigation agent:\n\n- \"Go to the Golden Gate Bridge\"\n- \"Zoom to a 1 to 24,000 scale\"\n- \"Zoom in\"\n- \"Go to the parks layer\"\n\nThe following are examples of the types of questions that fall outside the bounds of the\nnavigation agent and should therefore be avoided:\n\n- \"Rotate the map 45 degrees\" (this capability is not currently supported but may be in the future)\n- \"Make this map 3D and tilt the view to a 45 degree angle\" (3D navigation is currently not supported)\n- \"Where am I?\" (the navigation agent does not have access to the user's location)\n\n> Due to the non-deterministic nature of generative AI, there may be inaccuracies or unexpected behavior when using the\nout-of-the-box agents.\n--\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-navigation-agent/","attributes":[{"name":"reference-element","description":"The reference element to the map that provides context for the navigation agent. Currently,\nthis is only scoped to `arcgis-map` elements. This shows the navigation agent which map on which to\nperform navigation actions. This is required for the navigation agent to function properly.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","description":"The reference element to the map that provides context for the navigation agent. Currently,\nthis is only scoped to `arcgis-map` elements. This shows the navigation agent which map on which to\nperform navigation actions. This is required for the navigation agent to function properly.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-chat","description":"### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-chat/","attributes":[{"name":"copy-enabled","default":"false","value":{"type":"boolean"}},{"name":"feedback-enabled","default":"false","value":{"type":"boolean"}},{"name":"loading","default":"false","value":{"type":"boolean"}},{"name":"loading-message","default":"\"\"","value":{"type":"string"}},{"name":"log-enabled","default":"false","value":{"type":"boolean"}},{"name":"user","value":{"type":"string"}}],"events":[],"js":{"properties":[{"name":"copyEnabled","type":"boolean"},{"name":"feedbackEnabled","type":"boolean"},{"name":"loading","type":"boolean"},{"name":"loadingMessage","type":"string"},{"name":"logEnabled","type":"boolean"},{"name":"messages","type":"Collection<ChatMessage>"},{"name":"user","type":"string | undefined"}],"events":[]}},{"name":"arcgis-assistant-chat-card","description":"### Events\n- **arcgisFeedback**\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-chat-card/","attributes":[{"name":"content","value":{"type":"string"}},{"name":"copy-enabled","default":"false","value":{"type":"boolean"}},{"name":"error","value":{"type":"string"}},{"name":"feedback-enabled","default":"false","value":{"type":"boolean"}},{"name":"loading","default":"false","value":{"type":"boolean"}},{"name":"loading-message","value":{"type":"string"}},{"name":"log-enabled","default":"false","value":{"type":"boolean"}},{"name":"message-role","value":{"type":["\"user\"","\"assistant\""]}},{"name":"user","value":{"type":"string"}}],"events":[{"name":"arcgisFeedback","type":"AssistantMessage"}],"js":{"properties":[{"name":"content","type":"string | undefined"},{"name":"copyEnabled","type":"boolean"},{"name":"error","type":"string | undefined"},{"name":"feedbackEnabled","type":"boolean"},{"name":"loading","type":"boolean"},{"name":"loadingMessage","type":"string | undefined"},{"name":"log","type":"string[] | undefined"},{"name":"logEnabled","type":"boolean"},{"name":"message","type":"ChatMessage | undefined"},{"name":"messageRole","type":"ChatMessage[\"role\"] | undefined"},{"name":"user","type":"string | undefined"}],"events":[{"name":"arcgisFeedback","type":"AssistantMessage"}]}},{"name":"arcgis-assistant-chat-card-content","description":"### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-chat-card-content/","attributes":[{"name":"content","value":{"type":"string"}},{"name":"loading","default":"false","value":{"type":"boolean"}},{"name":"loading-message","value":{"type":"string"}},{"name":"type","default":"\"text\"","value":{"type":["\"chart\"","\"error\"","\"text\""]}}],"events":[],"js":{"properties":[{"name":"content","type":"string | undefined"},{"name":"loading","type":"boolean"},{"name":"loadingMessage","type":"string | undefined"},{"name":"type","type":"\"chart\" | \"error\" | \"text\""}],"events":[]}},{"name":"arcgis-assistant-chat-entry","description":"### Events\n- **arcgisCancel**\n- **arcgisSubmit**\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-chat-entry/","attributes":[{"name":"awaiting-response","default":"false","value":{"type":"boolean"}},{"name":"entry-placeholder","value":{"type":"string"}},{"name":"input-value","default":"\"\"","value":{"type":"string"}},{"name":"keyboard-shortcuts-disabled","default":"false","value":{"type":"boolean"}},{"name":"status","value":{"type":["\"error\"","\"ready\"","\"working\""]}}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string"}],"js":{"properties":[{"name":"awaitingResponse","type":"boolean"},{"name":"entryPlaceholder","type":"string | undefined"},{"name":"inputValue","type":"string"},{"name":"keyboardShortcutsDisabled","type":"boolean"},{"name":"messages","type":"Collection<ChatMessage>"},{"name":"status","type":"\"error\" | \"ready\" | \"working\" | undefined"}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string"}]}},{"name":"arcgis-assistant-interrupt","description":"### Events\n- **arcgisCancel**\n- **arcgisSubmit**\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-interrupt/","attributes":[{"name":"message","value":{"type":"string"}},{"name":"type","value":{"type":["\"boolean-choice\"","\"multi-select\"","\"single-select\"","\"text-input\""]}}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string[] | boolean | string"}],"js":{"properties":[{"name":"message","type":"string | undefined"},{"name":"options","type":"string[] | undefined"},{"name":"type","type":"\"boolean-choice\" | \"multi-select\" | \"single-select\" | \"text-input\""}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string[] | boolean | string"}]}},{"name":"arcgis-assistant-shell","description":"### Events\n- **arcgisCancel**\n- **arcgisSubmit**\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-shell/","attributes":[{"name":"awaiting-response","default":"false","value":{"type":"boolean"}},{"name":"description","default":"\"\"","value":{"type":"string"}},{"name":"entry-message","value":{"type":"string"}},{"name":"entry-message-closed","default":"false","value":{"type":"boolean"}},{"name":"heading","value":{"type":"string"}},{"name":"input-value","default":"\"\"","value":{"type":"string"}},{"name":"loading","default":"false","value":{"type":"boolean"}},{"name":"status","value":{"type":["\"error\"","\"ready\"","\"working\""]}}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string"}],"js":{"properties":[{"name":"awaitingResponse","type":"boolean"},{"name":"description","type":"string"},{"name":"entryMessage","type":"string | undefined"},{"name":"entryMessageClosed","type":"boolean"},{"name":"heading","type":"string | undefined"},{"name":"inputValue","type":"string"},{"name":"loading","type":"boolean"},{"name":"messages","type":"Collection<ChatMessage>"},{"name":"status","type":"\"error\" | \"ready\" | \"working\" | undefined"},{"name":"suggestedPrompts","type":"string[]"}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string"}]}}]},"css":{"properties":[],"pseudo-elements":[]}}}
1
+ {"$schema":"https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json","name":"@arcgis/ai-components","version":"5.0.14","description-markup":"markdown","contributions":{"html":{"elements":[{"name":"arcgis-assistant","description":"The ArcGIS Assistant component provides a chat-based natural language interface for interacting with\nweb map data via agents. This component uses an orchestrator, which relies on a large language model (LLM)\nfor determining user intent. Once the intent is determined, the assistant routes the user's request\nto an agent that uses an LLM to generate text and structured responses.\n\nBy default, the `arcgis-assistant` component does not include any agents. You must register at least one\nagent for the assistant to function. You can register agents declaratively using any of the\navailable agent components, or you can register custom agents.\n\n## Register agents\n\nTo register agents declaratively, include one or more agent components as children\nof the `arcgis-assistant` component. This can be done in HTML or programmatically using JavaScript.\n\n```html\n<arcgis-map id=\"my-map\"></arcgis-map>\n<arcgis-assistant reference-element=\"#my-map\">\n <arcgis-assistant-navigation-agent></arcgis-assistant-navigation-agent>\n <arcgis-assistant-data-exploration-agent></arcgis-assistant-data-exploration-agent>\n <arcgis-assistant-help-agent></arcgis-assistant-help-agent>\n</arcgis-assistant>\n```\n\n```js\nconst assistant = document.querySelector(\"arcgis-assistant\");\nconst navigationAgent = document.createElement(\"arcgis-assistant-navigation-agent\");\nconst dataExplorationAgent = document.createElement(\"arcgis-assistant-data-exploration-agent\");\nassistant.appendChild(navigationAgent);\nassistant.appendChild(dataExplorationAgent);\n```\n\nNote that the `reference-element` property on the `arcgis-assistant` component must point to a valid `arcgis-map` element\nfor the included ArcGIS agents to function properly, as they rely on the map context to perform their tasks. This is not\na requirement for [custom agents](https://developers.arcgis.com/javascript/latest/agentic-apps/ai-custom-agents/).\n\n## Context\n\nUse the [referenceElement](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#referenceElement) property to provide a web map as context to the assistant and its agents.\nThis should be a reference to the map that the assistant will interact with, and is required for the included ArcGIS\nagents to function properly.\n\nTo learn more about this component, try out the [demo](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#demos)\n\n## Important considerations and best practices\n\nDue to the non-deterministic nature of generative AI, there may be inaccuracies or unexpected behavior when using the\nout-of-the-box agents. Therefore, it is important to set clear expectations\nfor end users and provide guidance on how to interact with the assistant to help mitigate these issues. Some ways to do this include:\n\n- Provide [suggestedPrompts](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#suggestedPrompts). This helps users understand the bounds of the assistant\nand gives them an idea of how to phrase questions to get the best results.\n- Use the [entryMessage](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#entryMessage) property to provide an entry message with instructions and guidance.\n--\n\n### Events\n- **arcgisCancel** - Emitted when the user cancels a message. This is typically invoked when a user submits a question while a previous question is still being processed.\nThis allows app developers to capture messages cancelled by the user and respond to them in custom ways, such as by providing additional information,\ntriggering other actions in the app, or logging them for analysis.\n- **arcgisError** - Emitted when the assistant encounters an error. The event detail includes an Error object with information about the error that occurred.\nThis allows app developers to capture errors that occur within the assistant and respond to them in custom ways, such as by displaying an\nerror message to the user, logging the error for analysis, or triggering other actions in the app.\n- **arcgisFeedback** - Emitted when the user clicks the thumbs up or thumbs down feedback action that is displayed when [feedbackEnabled](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#feedbackEnabled) is `true`.\nThe event detail includes an AssistantMessage object that includes a feedback property with an object indicating whether the feedback is positive or negative.\nThis allows the application to capture user feedback on the assistant's responses and respond to it in custom ways, such as by providing additional\ninformation, adjusting the assistant's behavior, logging the feedback for analysis, or triggering other actions in the app.\n- **arcgisInterrupt** - Emitted when an agent triggers an interrupt. An interrupt is a human-in-the-loop mechanism that provides a UI component prompting\nthe user for additional information.\n- **arcgisInterruptCancel** - Emitted when the user cancels an interrupt. This is typically invoked when a user clicks the cancel button displayed in an interrupt message\n- **arcgisInterruptSubmit** - Emitted when the user submits a message during an interrupt. For example, this will be invoked if the user clicks the submit button\nin an interrupt message asking for confirmation, or when the user submits additional text or selects an option provided in an interrupt.\n- **arcgisReady** - Emitted when the assistant is ready to receive messages from the end user. This indicates that the assistant has been successfully\ninitialized and is ready to process user input.\n- **arcgisSubmit** - Emitted when the user submits a message. This is typically invoked when a user clicks the submit button in the chat interface or hits the Enter key.\n\n### Methods\n- `clearChatHistory(): Promise<void>` - Clears the chat history between the user and the assistant. This method can be used to programmatically reset the conversation,\nremoving all messages from the chat interface.\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.\n- `submitMessage(message: string): Promise<void>` - Programmatically submits a message to the assistant. This method can be used to submit messages from outside the component,\nsuch as from another component or from custom JavaScript code. When a message is submitted using this method, it is added\nto the messages collection with the role of \"user\", and then processed by the assistant in the same way as if it were submitted\nthrough the chat interface. This allows for greater flexibility in how messages are sent to the assistant and can enable more\ncomplex interactions and integrations with other components or services.\n\n### Slots\n- _default_ - This is the default slot\n- **header-actions-end** - Slot for adding actions to the end of the header.\n- **entry-message** - Slot for adding a welcome or entry message on load.\n- **entry-actions-start** - Slot for adding actions to the start of the entry area.\n- **footer-content** - Slot for adding content to the footer.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/","attributes":[{"name":"copy-enabled","description":"When `true`, enables the copy action that, when clicked, copies the content of the message to the clipboard. This can be helpful for users to easily copy and share\ninformation provided by the assistant, such as a summary of findings, a set of instructions, or any other relevant details. Enabling this property can enhance the user experience by providing a convenient way for users to capture and utilize the information generated by the assistant.","default":"false","value":{"type":"boolean"}},{"name":"description","description":"The description text displayed below the heading in the assistant. This text provides additional\ncontext about the assistant's capabilities and how users can interact with it.","value":{"type":"string"}},{"name":"entry-message","description":"The instructions to display when the assistant is first loaded. This is intended to be a welcome or entry message that\nprovides guidance to users on how to interact with the assistant. Once the user submits their first message,\nthe entry message will be closed and replaced with the chat interface. You can use this property to provide\ninstructions, suggest prompts, or simply welcome users to the assistant.","value":{"type":"string"}},{"name":"feedback-enabled","description":"When `true`, enables the feedback action in the chat interface, allowing developers to capture user feedback on the assistant's responses.\nThe action simply provides a thumbs up and thumbs down experience for users to indicate whether a response was helpful or not. When the\nuser submits feedback, the [@arcgisFeedback](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#event-arcgisFeedback) event is emitted allowing the app developer to capture additional feedback\nthrough a custom interface and log it to a database or service for later analysis.","default":"false","value":{"type":"boolean"}},{"name":"heading","description":"The heading text displayed at the top of the assistant. This name should be concise and\ndescriptive of the assistant's purpose.\n\nFor applications where the primary interface is the assistant, this heading could also be used as the\napplication title. In cases where the assistant could be collapsed or is a secondary interface to a standard\nGUI, the heading should be more specific to the assistant's function to avoid confusion with the overall\napplication title.","value":{"type":"string"}},{"name":"keep-suggested-prompts","description":"When `true`, keeps suggested prompts displayed in the UI after the user submits a message. By default, suggested prompts are cleared,\nwhen the user submits a message.","default":"false","value":{"type":"boolean"}},{"name":"log-enabled","description":"When `true`, enables the log action that when clicked displays log messages in the chat interface. Log messages provide detailed messages including\nwhich agents or tools were invoked, the parameters generated by the LLM, and any relevant details about how the assistant arrived at its response.\nEnabling logs can be helpful for developers for debugging during the development of an assistant or agentic web application.\nIt may also be useful to end users for transparency purposes, allowing them to understand the assistant's behavior and decision-making process.\n\nEnabling this property for a production app depends on the role of the audience. More technical audiences may benefit from having access to these\nlogs while non-technical audiences may find them overwhelming or confusing.","default":"false","value":{"type":"boolean"}},{"name":"reference-element","description":"The reference element to the map that provides context for the assistant and its agents. Currently,\nthis is only scoped to `arcgis-map` elements. This is required when ArcGIS agents are registered to the assistant.\nFor example, this allows the navigation agent to execute a map navigation tool for a specific map.","value":{"type":["string","object"]}}],"slots":[{"name":"","description":"This is the default slot"},{"name":"header-actions-end","description":"Slot for adding actions to the end of the header."},{"name":"entry-message","description":"Slot for adding a welcome or entry message on load."},{"name":"entry-actions-start","description":"Slot for adding actions to the start of the entry area."},{"name":"footer-content","description":"Slot for adding content to the footer."}],"events":[{"name":"arcgisCancel","type":"void","description":"Emitted when the user cancels a message. This is typically invoked when a user submits a question while a previous question is still being processed.\nThis allows app developers to capture messages cancelled by the user and respond to them in custom ways, such as by providing additional information,\ntriggering other actions in the app, or logging them for analysis."},{"name":"arcgisError","type":"Error","description":"Emitted when the assistant encounters an error. The event detail includes an Error object with information about the error that occurred.\nThis allows app developers to capture errors that occur within the assistant and respond to them in custom ways, such as by displaying an\nerror message to the user, logging the error for analysis, or triggering other actions in the app."},{"name":"arcgisFeedback","type":"AssistantMessage","description":"Emitted when the user clicks the thumbs up or thumbs down feedback action that is displayed when [feedbackEnabled](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#feedbackEnabled) is `true`.\nThe event detail includes an AssistantMessage object that includes a feedback property with an object indicating whether the feedback is positive or negative.\nThis allows the application to capture user feedback on the assistant's responses and respond to it in custom ways, such as by providing additional\ninformation, adjusting the assistant's behavior, logging the feedback for analysis, or triggering other actions in the app."},{"name":"arcgisInterrupt","type":"Interrupt","description":"Emitted when an agent triggers an interrupt. An interrupt is a human-in-the-loop mechanism that provides a UI component prompting\nthe user for additional information."},{"name":"arcgisInterruptCancel","type":"void","description":"Emitted when the user cancels an interrupt. This is typically invoked when a user clicks the cancel button displayed in an interrupt message"},{"name":"arcgisInterruptSubmit","type":"string[] | boolean | string","description":"Emitted when the user submits a message during an interrupt. For example, this will be invoked if the user clicks the submit button\nin an interrupt message asking for confirmation, or when the user submits additional text or selects an option provided in an interrupt."},{"name":"arcgisReady","type":"void","description":"Emitted when the assistant is ready to receive messages from the end user. This indicates that the assistant has been successfully\ninitialized and is ready to process user input."},{"name":"arcgisSubmit","type":"string","description":"Emitted when the user submits a message. This is typically invoked when a user clicks the submit button in the chat interface or hits the Enter key."}],"js":{"properties":[{"name":"copyEnabled","description":"When `true`, enables the copy action that, when clicked, copies the content of the message to the clipboard. This can be helpful for users to easily copy and share\ninformation provided by the assistant, such as a summary of findings, a set of instructions, or any other relevant details. Enabling this property can enhance the user experience by providing a convenient way for users to capture and utilize the information generated by the assistant.","type":"boolean"},{"name":"description","description":"The description text displayed below the heading in the assistant. This text provides additional\ncontext about the assistant's capabilities and how users can interact with it.","type":"string | undefined"},{"name":"entryMessage","description":"The instructions to display when the assistant is first loaded. This is intended to be a welcome or entry message that\nprovides guidance to users on how to interact with the assistant. Once the user submits their first message,\nthe entry message will be closed and replaced with the chat interface. You can use this property to provide\ninstructions, suggest prompts, or simply welcome users to the assistant.","type":"string | undefined"},{"name":"feedbackEnabled","description":"When `true`, enables the feedback action in the chat interface, allowing developers to capture user feedback on the assistant's responses.\nThe action simply provides a thumbs up and thumbs down experience for users to indicate whether a response was helpful or not. When the\nuser submits feedback, the [@arcgisFeedback](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#event-arcgisFeedback) event is emitted allowing the app developer to capture additional feedback\nthrough a custom interface and log it to a database or service for later analysis.","type":"boolean"},{"name":"heading","description":"The heading text displayed at the top of the assistant. This name should be concise and\ndescriptive of the assistant's purpose.\n\nFor applications where the primary interface is the assistant, this heading could also be used as the\napplication title. In cases where the assistant could be collapsed or is a secondary interface to a standard\nGUI, the heading should be more specific to the assistant's function to avoid confusion with the overall\napplication title.","type":"string | undefined"},{"name":"keepSuggestedPrompts","description":"When `true`, keeps suggested prompts displayed in the UI after the user submits a message. By default, suggested prompts are cleared,\nwhen the user submits a message.","type":"boolean"},{"name":"logEnabled","description":"When `true`, enables the log action that when clicked displays log messages in the chat interface. Log messages provide detailed messages including\nwhich agents or tools were invoked, the parameters generated by the LLM, and any relevant details about how the assistant arrived at its response.\nEnabling logs can be helpful for developers for debugging during the development of an assistant or agentic web application.\nIt may also be useful to end users for transparency purposes, allowing them to understand the assistant's behavior and decision-making process.\n\nEnabling this property for a production app depends on the role of the audience. More technical audiences may benefit from having access to these\nlogs while non-technical audiences may find them overwhelming or confusing.","type":"boolean"},{"name":"messages","description":"The collection of messages exchanged between the user and the assistant. Each message includes the role\n(user or assistant), along with any relevant logs or errors. These messages are rendered in the chat interface\nand are used to provide context for the conversation. When a user submits a message, it is added to this\ncollection with the role of \"user\". When the assistant generates a response, it is added to this collection\nwith the role of \"assistant\", along with any logs or errors that occurred during processing.","type":"Collection<ChatMessage>"},{"name":"referenceElement","description":"The reference element to the map that provides context for the assistant and its agents. Currently,\nthis is only scoped to `arcgis-map` elements. This is required when ArcGIS agents are registered to the assistant.\nFor example, this allows the navigation agent to execute a map navigation tool for a specific map.","type":"ArcgisMap | string | null"},{"name":"suggestedPrompts","description":"Prompts to suggest to the end user on load. These are intended to help users understand which questions they can ask.\nThis property should be set to establish boundaries for the end user. As all agents have limitations and LLMs can\nbe unpredictable, it's important to set clear expectations for users to give them a better chance to succeed.\nBy providing suggested prompts, you can guide users towards asking questions that are relevant to the data being\nused and the capabilities of the registered agents, which can help to ensure that the assistant provides accurate\nand helpful responses.\n\nYou should typically provide 2-3 suggested prompts.","type":"string[]"}],"events":[{"name":"arcgisCancel","type":"void","description":"Emitted when the user cancels a message. This is typically invoked when a user submits a question while a previous question is still being processed.\nThis allows app developers to capture messages cancelled by the user and respond to them in custom ways, such as by providing additional information,\ntriggering other actions in the app, or logging them for analysis."},{"name":"arcgisError","type":"Error","description":"Emitted when the assistant encounters an error. The event detail includes an Error object with information about the error that occurred.\nThis allows app developers to capture errors that occur within the assistant and respond to them in custom ways, such as by displaying an\nerror message to the user, logging the error for analysis, or triggering other actions in the app."},{"name":"arcgisFeedback","type":"AssistantMessage","description":"Emitted when the user clicks the thumbs up or thumbs down feedback action that is displayed when [feedbackEnabled](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#feedbackEnabled) is `true`.\nThe event detail includes an AssistantMessage object that includes a feedback property with an object indicating whether the feedback is positive or negative.\nThis allows the application to capture user feedback on the assistant's responses and respond to it in custom ways, such as by providing additional\ninformation, adjusting the assistant's behavior, logging the feedback for analysis, or triggering other actions in the app."},{"name":"arcgisInterrupt","type":"Interrupt","description":"Emitted when an agent triggers an interrupt. An interrupt is a human-in-the-loop mechanism that provides a UI component prompting\nthe user for additional information."},{"name":"arcgisInterruptCancel","type":"void","description":"Emitted when the user cancels an interrupt. This is typically invoked when a user clicks the cancel button displayed in an interrupt message"},{"name":"arcgisInterruptSubmit","type":"string[] | boolean | string","description":"Emitted when the user submits a message during an interrupt. For example, this will be invoked if the user clicks the submit button\nin an interrupt message asking for confirmation, or when the user submits additional text or selects an option provided in an interrupt."},{"name":"arcgisReady","type":"void","description":"Emitted when the assistant is ready to receive messages from the end user. This indicates that the assistant has been successfully\ninitialized and is ready to process user input."},{"name":"arcgisSubmit","type":"string","description":"Emitted when the user submits a message. This is typically invoked when a user clicks the submit button in the chat interface or hits the Enter key."}]}},{"name":"arcgis-assistant-agent","description":"The Assistant Agent component is a generic wrapper for registering custom agents to the [arcgis-assistant](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/) component. To define\na custom agent, you must be familiar with [LangGraph](https://docs.langchain.com/oss/javascript/langgraph/overview). Custom agents must\ninclude a StateGraph that defines the agent's graph and subgraphs.\n\nBuilding custom agents can only be done using modern JavaScript/TypeScript tooling and cannot be done directly in HTML using\nCDN imports. Therefore, you must use a package manager like npm or yarn to install the required dependencies. Please refer to the\n[Custom Agents guide](https://developers.arcgis.com/javascript/latest/agentic-apps/ai-custom-agents/) for more instructions on how to create a custom agent.\n\nUse the [utils](https://developers.arcgis.com/javascript/latest/references/ai-components/utils/index/) module for helper functions and types related to building custom agents, including the `AgentRegistration`\ntype and functions for making LLM calls, managing agent state, and setting up human-in-the-loop workflows.\n\n> We recommend that developers building custom agents have experience working with LLMs and generative AI, and have a good\nunderstanding of the limitations of these technologies when building applications for end users.\n\nThis is an unrendered component that must be added as a child of the `arcgis-assistant` component in either HTML or JavaScript.\n\n```html\n<arcgis-assistant></arcgis-assistant>\n```\n\n```js\nconst myCustomAgent = {\n id: \"my-custom-agent\",\n name: \"My Custom Agent\",\n description: \"An agent that does custom things. Use this agent when users want to do custom things.\",\n createGraph: {\n // StateGraph definition using LangGraph\n },\n workspace: {\n // AnnotationRoot definition using LangGraph\n // relevant variables and context required by the agent\n },\n};\n\nconst assistant = document.querySelector(\"arcgis-assistant\");\nconst assistantAgent = document.createElement(\"arcgis-assistant-agent\");\n\nassistantAgent.agent = myCustomAgent;\nassistant.appendChild(assistantAgent);\n```\n--\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-agent/","attributes":[],"events":[],"js":{"properties":[{"name":"agent","description":"The agent registration object that defines the AI agent's behavior and capabilities.\nThis must include a StateGraph definition (defined using\n[LangGraph](https://docs.langchain.com/oss/javascript/langgraph/overview)).\n\nThis is an agent defined in the client and can be invoked by the assistant from the browser to perform specific tasks\nusing functions defined in the client.\n\nSee the [Custom Agents guide](https://developers.arcgis.com/javascript/latest/agentic-apps/ai-custom-agents/) for more instructions\nand links to samples demonstrating how to create custom agents.","type":"AgentRegistration"},{"name":"context","description":"If the agent requires context provided by the application or user, it can be provided via this property and accessed in the\nagent's graph nodes.","type":"TContext | (() => Promise<TContext | undefined> | TContext | undefined) | undefined"}],"events":[]}},{"name":"arcgis-assistant-data-exploration-agent","description":"The Data Exploration Agent enables the end user to query features, statistics, and spatial proximity\nto features in a layer within a web map. Currently, this is only scoped to querying feature layers within\na 2D web map. See the list of capabilities below for more details.\n\nThe data exploration agent is designed to answer questions about the data in the map, and does not have\naccess to external data sources or the user's location. It also cannot create visualizations in the form of charts,\nlayer renderers, new maps, or other visual outputs. It can currently only provide answers in text form based on the\ndata in the map.\n\nThis agent can change the state of the map by filtering features in a layer, but it cannot change the symbology of\nfeatures or create new layers or export results of a query to a file or external source.\n\nThis is an unrendered component that must be added as a child of the `arcgis-assistant` component in either HTML or JavaScript.\n\n```html\n<arcgis-map id=\"my-map\"></arcgis-map>\n<arcgis-assistant reference-element=\"my-map\">\n <arcgis-assistant-data-exploration-agent></arcgis-assistant-data-exploration-agent>\n</arcgis-assistant>\n```\n\n```js\nconst assistant = document.querySelector(\"arcgis-assistant\");\nconst dataExplorationAgent = document.createElement(\"arcgis-assistant-data-exploration-agent\");\nassistant.appendChild(dataExplorationAgent);\n```\n\nOnce added to the assistant, the agent is loaded and ready to receive user messages related to data exploration.\n\n### Capabilities\n\nThe data exploration agent provides the following capabilities related to exploring data in the map:\n\n- **Query features** - Ask about the attributes of features in a layer, including a single feature or a set\n of features.\n- **Query statistics** - Ask about statistics related to features in a layer. Statistics that can be queried\n include count, average, minimum, maximum, and sum. This includes asking about the top number of features based on a\n particular attribute.\n- **Query spatial proximity** - Ask about the spatial proximity of features in a layer, such as\n the number of features that intersect a polygon, or information about features within a distance of a specified location or feature.\n This currently does not include questions about the closest feature, but this is planned to be included in a future release.\n- **Filter features** - Users can ask the agent to show a subset of features that filter by attributes, or spatial\n proximity to other features. This includes asking the agent to show features that intersect a particular area,\n or are within a certain distance of a location or feature.\n\n### Example questions\n\nThe following are example questions a user can ask within the bounds of the data exploration agent.\nThese questions assume a map with layers that include cities, states, and rivers.\n\n- \"What is the city with the largest population?\"\n- \"How does that population compare to the average population of the cities in this map?\"\n- \"How many cities are within 30 miles of the Colorado River?\"\n- \"Show all cities in the state of California.\"\n- \"List the top 5 rivers by length.\"\n- \"Emphasize the largest river on the map.\"\n\nThe following are examples of the types of questions that fall outside the bounds of the\ndata exploration agent and should therefore be avoided:\n\n- \"What is the closest restaurant to me?\" (the data exploration agent does not have access to the user's location,\nnor can it find the nearest feature from a location)\n- \"What is the projected growth of Phoenix in the next 10 years?\" (the data exploration agent can\nonly answer questions about the data in the map, not external data or projections)\n- \"Show me the population of cities in this map on a graph.\" (the data exploration agent can only\nprovide answers in text form, not visualizations)\n\n> Due to the non-deterministic nature of generative AI, there may be inaccuracies or unexpected behavior when using the\nout-of-the-box agents.\n--\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-data-exploration-agent/","attributes":[{"name":"reference-element","description":"The reference element to the map that provides context for the data exploration agent. Currently,\nthis is only scoped to `arcgis-map` elements. This provides the data exploration agent with the layers\nneeded for answering user questions about the data in the map.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","description":"The reference element to the map that provides context for the data exploration agent. Currently,\nthis is only scoped to `arcgis-map` elements. This provides the data exploration agent with the layers\nneeded for answering user questions about the data in the map.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-help-agent","description":"The Help Agent provides contextual assistance and guidance to the end user within an\nagentic web mapping application. It can provide answers to questions about the web map provided\nto the [referenceElement](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-help-agent/#referenceElement) property and answer questions about other agents included\nas subcomponents to the [arcgis-assistant](https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/) component.\n\nThis is an unrendered component that must be added as a child of the `arcgis-assistant` component in\neither HTML or JavaScript.\n\n```html\n<arcgis-map id=\"my-map\"></arcgis-map>\n<arcgis-assistant reference-element=\"my-map\">\n <arcgis-assistant-help-agent></arcgis-assistant-help-agent>\n</arcgis-assistant>\n```\n\n```js\nconst assistant = document.querySelector(\"arcgis-assistant\");\nconst helpAgent = document.createElement(\"arcgis-assistant-help-agent\");\nassistant.appendChild(helpAgent);\n```\n\nOnce added to the assistant, the agent is loaded and ready to receive user messages related to help and guidance.\n\n### Example questions\n\nThe following are example questions a user can ask within the bounds of the help agent:\n\n- \"What kind of questions can I ask?\"\n- \"What layers are in this map?\"\n- \"What kind of data can I ask questions about?\"\n\nThe following are examples of the types of questions that fall outside the bounds of the\nhelp agent and should therefore be avoided:\n\n- \"Search the Esri documentation for ways that I can query my data.\"\n- \"Log a bug related to map navigation to the Esri support team.\"\n- \"How do I bake a cake?\"\n- \"How does map navigation work in ArcGIS?\"\n\n> Due to the non-deterministic nature of generative AI, there may be inaccuracies or unexpected behavior when using the\nout-of-the-box agents.\n--\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-help-agent/","attributes":[{"name":"reference-element","description":"The reference element to the map that provides context for the help agent. Currently,\nthis is only scoped to `arcgis-map` elements. This shows the help agent which map for which to\nprovide assistance. This allows users to ask questions about the specific map provided to the agent.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","description":"The reference element to the map that provides context for the help agent. Currently,\nthis is only scoped to `arcgis-map` elements. This shows the help agent which map for which to\nprovide assistance. This allows users to ask questions about the specific map provided to the agent.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-layer-filter-agent","description":"### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-layer-filter-agent/","attributes":[{"name":"reference-element","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-layer-query-agent","description":"### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-layer-query-agent/","attributes":[{"name":"reference-element","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-layer-styling-agent","description":"### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-layer-styling-agent/","attributes":[{"name":"reference-element","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-navigation-agent","description":"The Navigation Agent enables the end user to navigate to different areas of a web map. See the list\nof capabilities below for more details.\n\nThis is an unrendered component that must be added as a child of the `arcgis-assistant` component in either HTML or JavaScript.\n\n```html\n<arcgis-map id=\"my-map\"></arcgis-map>\n<arcgis-assistant reference-element=\"my-map\">\n <arcgis-assistant-navigation-agent></arcgis-assistant-navigation-agent>\n</arcgis-assistant>\n```\n\n```js\nconst assistant = document.querySelector(\"arcgis-assistant\");\nconst navigationAgent = document.createElement(\"arcgis-assistant-navigation-agent\");\nassistant.appendChild(navigationAgent);\n```\n\nOnce added to the assistant, the agent is loaded and ready to receive user messages related to navigation.\n\n### Capabilities\n\nThe navigation agent provides the following capabilities related to map navigation:\n\n- **Geocoding** - Navigate to an address using Esri's World Geocoding Service.\n- **Go to extent** - Navigate to the extent of a bookmark in the map, the home extent of the web map,\n or the extent of a layer.\n- **Go to features** - Navigate to a specified feature or set of features.\n- **Go to viewpoint** - Navigate to a specified viewpoint, which can include center, zoom, and/or\n rotation.\n\n### Example questions\n\nThe following are example questions a user can ask within the bounds of the navigation agent:\n\n- \"Go to the Golden Gate Bridge\"\n- \"Zoom to a 1 to 24,000 scale\"\n- \"Zoom in\"\n- \"Go to the parks layer\"\n\nThe following are examples of the types of questions that fall outside the bounds of the\nnavigation agent and should therefore be avoided:\n\n- \"Rotate the map 45 degrees\" (this capability is not currently supported but may be in the future)\n- \"Make this map 3D and tilt the view to a 45 degree angle\" (3D navigation is currently not supported)\n- \"Where am I?\" (the navigation agent does not have access to the user's location)\n\n> Due to the non-deterministic nature of generative AI, there may be inaccuracies or unexpected behavior when using the\nout-of-the-box agents.\n--\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-navigation-agent/","attributes":[{"name":"reference-element","description":"The reference element to the map that provides context for the navigation agent. Currently,\nthis is only scoped to `arcgis-map` elements. This shows the navigation agent which map on which to\nperform navigation actions. This is required for the navigation agent to function properly.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","value":{"type":["string","object"]}}],"events":[],"js":{"properties":[{"name":"referenceElement","description":"The reference element to the map that provides context for the navigation agent. Currently,\nthis is only scoped to `arcgis-map` elements. This shows the navigation agent which map on which to\nperform navigation actions. This is required for the navigation agent to function properly.\n\nSetting this property is not necessary if you set the reference element on the parent\n`arcgis-assistant` component.","type":"ArcgisMap | string | undefined"}],"events":[]}},{"name":"arcgis-assistant-chat","description":"### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-chat/","attributes":[{"name":"copy-enabled","default":"false","value":{"type":"boolean"}},{"name":"feedback-enabled","default":"false","value":{"type":"boolean"}},{"name":"loading","default":"false","value":{"type":"boolean"}},{"name":"loading-message","default":"\"\"","value":{"type":"string"}},{"name":"log-enabled","default":"false","value":{"type":"boolean"}},{"name":"user","value":{"type":"string"}}],"events":[],"js":{"properties":[{"name":"copyEnabled","type":"boolean"},{"name":"feedbackEnabled","type":"boolean"},{"name":"loading","type":"boolean"},{"name":"loadingMessage","type":"string"},{"name":"logEnabled","type":"boolean"},{"name":"messages","type":"Collection<ChatMessage>"},{"name":"user","type":"string | undefined"}],"events":[]}},{"name":"arcgis-assistant-chat-card","description":"### Events\n- **arcgisFeedback**\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-chat-card/","attributes":[{"name":"content","value":{"type":"string"}},{"name":"copy-enabled","default":"false","value":{"type":"boolean"}},{"name":"error","value":{"type":"string"}},{"name":"feedback-enabled","default":"false","value":{"type":"boolean"}},{"name":"loading","default":"false","value":{"type":"boolean"}},{"name":"loading-message","value":{"type":"string"}},{"name":"log-enabled","default":"false","value":{"type":"boolean"}},{"name":"message-role","value":{"type":["\"user\"","\"assistant\""]}},{"name":"user","value":{"type":"string"}}],"events":[{"name":"arcgisFeedback","type":"AssistantMessage"}],"js":{"properties":[{"name":"content","type":"string | undefined"},{"name":"copyEnabled","type":"boolean"},{"name":"error","type":"string | undefined"},{"name":"feedbackEnabled","type":"boolean"},{"name":"loading","type":"boolean"},{"name":"loadingMessage","type":"string | undefined"},{"name":"log","type":"string[] | undefined"},{"name":"logEnabled","type":"boolean"},{"name":"message","type":"ChatMessage | undefined"},{"name":"messageRole","type":"ChatMessage[\"role\"] | undefined"},{"name":"user","type":"string | undefined"}],"events":[{"name":"arcgisFeedback","type":"AssistantMessage"}]}},{"name":"arcgis-assistant-chat-card-content","description":"### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-chat-card-content/","attributes":[{"name":"content","value":{"type":"string"}},{"name":"loading","default":"false","value":{"type":"boolean"}},{"name":"loading-message","value":{"type":"string"}},{"name":"type","default":"\"text\"","value":{"type":["\"chart\"","\"error\"","\"text\""]}}],"events":[],"js":{"properties":[{"name":"content","type":"string | undefined"},{"name":"loading","type":"boolean"},{"name":"loadingMessage","type":"string | undefined"},{"name":"type","type":"\"chart\" | \"error\" | \"text\""}],"events":[]}},{"name":"arcgis-assistant-chat-entry","description":"### Events\n- **arcgisCancel**\n- **arcgisSubmit**\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-chat-entry/","attributes":[{"name":"awaiting-response","default":"false","value":{"type":"boolean"}},{"name":"entry-placeholder","value":{"type":"string"}},{"name":"input-value","default":"\"\"","value":{"type":"string"}},{"name":"keyboard-shortcuts-disabled","default":"false","value":{"type":"boolean"}},{"name":"status","value":{"type":["\"error\"","\"ready\"","\"working\""]}}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string"}],"js":{"properties":[{"name":"awaitingResponse","type":"boolean"},{"name":"entryPlaceholder","type":"string | undefined"},{"name":"inputValue","type":"string"},{"name":"keyboardShortcutsDisabled","type":"boolean"},{"name":"messages","type":"Collection<ChatMessage>"},{"name":"status","type":"\"error\" | \"ready\" | \"working\" | undefined"}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string"}]}},{"name":"arcgis-assistant-interrupt","description":"### Events\n- **arcgisCancel**\n- **arcgisSubmit**\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-interrupt/","attributes":[{"name":"message","value":{"type":"string"}},{"name":"type","value":{"type":["\"boolean-choice\"","\"multi-select\"","\"single-select\"","\"text-input\""]}}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string[] | boolean | string"}],"js":{"properties":[{"name":"message","type":"string | undefined"},{"name":"options","type":"string[] | undefined"},{"name":"type","type":"\"boolean-choice\" | \"multi-select\" | \"single-select\" | \"text-input\""}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string[] | boolean | string"}]}},{"name":"arcgis-assistant-shell","description":"### Events\n- **arcgisCancel**\n- **arcgisSubmit**\n\n### Methods\n- `componentOnReady(): Promise<this>` - Creates a promise that resolves once the component is fully loaded.","doc-url":"https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-shell/","attributes":[{"name":"awaiting-response","default":"false","value":{"type":"boolean"}},{"name":"description","default":"\"\"","value":{"type":"string"}},{"name":"entry-message","value":{"type":"string"}},{"name":"entry-message-closed","default":"false","value":{"type":"boolean"}},{"name":"heading","value":{"type":"string"}},{"name":"input-value","default":"\"\"","value":{"type":"string"}},{"name":"loading","default":"false","value":{"type":"boolean"}},{"name":"status","value":{"type":["\"error\"","\"ready\"","\"working\""]}}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string"}],"js":{"properties":[{"name":"awaitingResponse","type":"boolean"},{"name":"description","type":"string"},{"name":"entryMessage","type":"string | undefined"},{"name":"entryMessageClosed","type":"boolean"},{"name":"heading","type":"string | undefined"},{"name":"inputValue","type":"string"},{"name":"loading","type":"boolean"},{"name":"messages","type":"Collection<ChatMessage>"},{"name":"status","type":"\"error\" | \"ready\" | \"working\" | undefined"},{"name":"suggestedPrompts","type":"string[]"}],"events":[{"name":"arcgisCancel","type":"void"},{"name":"arcgisSubmit","type":"string"}]}}]},"css":{"properties":[],"pseudo-elements":[]}}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcgis/ai-components",
3
- "version": "5.0.13",
3
+ "version": "5.0.14",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -29,11 +29,11 @@
29
29
  "marked": "~17.0.3",
30
30
  "tslib": "^2.8.1",
31
31
  "zod": "^3.25.76",
32
- "@arcgis/ai-agents": "5.0.13",
33
- "@arcgis/lumina": "5.0.13",
34
- "@arcgis/ai-orchestrator": "5.0.13",
35
- "@arcgis/map-components": "5.0.13",
36
- "@arcgis/toolkit": "5.0.13"
32
+ "@arcgis/ai-agents": "5.0.14",
33
+ "@arcgis/ai-orchestrator": "5.0.14",
34
+ "@arcgis/map-components": "5.0.14",
35
+ "@arcgis/lumina": "5.0.14",
36
+ "@arcgis/toolkit": "5.0.14"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "@arcgis/core": "^5.0.0",