@bikdotai/bik-component-library 0.0.821-beta.9 → 0.0.821
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/assets/icons/ManifestGlass.svg.js +2 -0
- package/dist/cjs/assets/icons/ManifestGlass.svg.js.map +1 -0
- package/dist/cjs/assets/icons/Shopify.svg.js +2 -0
- package/dist/cjs/assets/icons/Shopify.svg.js.map +1 -0
- package/dist/cjs/assets/icons/playOutline.svg.js +2 -0
- package/dist/cjs/assets/icons/playOutline.svg.js.map +1 -0
- package/dist/cjs/components/BikGiftedChat/Bubble/Bubble.js +1 -1
- package/dist/cjs/components/BikGiftedChat/Bubble/Bubble.js.map +1 -1
- package/dist/cjs/components/BikGiftedChat/GiftedChat/Day.js +1 -1
- package/dist/cjs/components/BikGiftedChat/GiftedChat/Day.js.map +1 -1
- package/dist/cjs/components/BikGiftedChat/GiftedChat/GiftedChat.js +1 -1
- package/dist/cjs/components/BikGiftedChat/GiftedChat/GiftedChat.js.map +1 -1
- package/dist/cjs/components/BikGiftedChat/GiftedChat/types.js.map +1 -1
- package/dist/cjs/components/TypographyStyle.js +20 -41
- package/dist/cjs/components/TypographyStyle.js.map +1 -1
- package/dist/cjs/components/agent-builder/AgentBuilder.js +2 -0
- package/dist/cjs/components/agent-builder/AgentBuilder.js.map +1 -0
- package/dist/cjs/components/agent-builder/AgentBuilder.styled.js +411 -0
- package/dist/cjs/components/agent-builder/AgentBuilder.styled.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/AgentBuilderFooter.js +2 -0
- package/dist/cjs/components/agent-builder/components/AgentBuilderFooter.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/AgentBuilderTopBar.js +2 -0
- package/dist/cjs/components/agent-builder/components/AgentBuilderTopBar.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/AiTextArea.js +2 -0
- package/dist/cjs/components/agent-builder/components/AiTextArea.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/CreateSubAgentPanel.js +2 -0
- package/dist/cjs/components/agent-builder/components/CreateSubAgentPanel.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/DiscardModal.js +2 -0
- package/dist/cjs/components/agent-builder/components/DiscardModal.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/GoLiveModal.js +2 -0
- package/dist/cjs/components/agent-builder/components/GoLiveModal.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/MentionEditor.js +2 -0
- package/dist/cjs/components/agent-builder/components/MentionEditor.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/MentionField.js +2 -0
- package/dist/cjs/components/agent-builder/components/MentionField.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/MentionPicker.js +78 -0
- package/dist/cjs/components/agent-builder/components/MentionPicker.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/SelectableListSection.js +2 -0
- package/dist/cjs/components/agent-builder/components/SelectableListSection.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/StepRail.js +2 -0
- package/dist/cjs/components/agent-builder/components/StepRail.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/StepSectionHeader.js +2 -0
- package/dist/cjs/components/agent-builder/components/StepSectionHeader.js.map +1 -0
- package/dist/cjs/components/agent-builder/components/UndoToast.js +2 -0
- package/dist/cjs/components/agent-builder/components/UndoToast.js.map +1 -0
- package/dist/cjs/components/agent-builder/constants/charLimits.js +2 -0
- package/dist/cjs/components/agent-builder/constants/charLimits.js.map +1 -0
- package/dist/cjs/components/agent-builder/constants/editorStyle.js +2 -0
- package/dist/cjs/components/agent-builder/constants/editorStyle.js.map +1 -0
- package/dist/cjs/components/agent-builder/constants/steps.js +2 -0
- package/dist/cjs/components/agent-builder/constants/steps.js.map +1 -0
- package/dist/cjs/components/agent-builder/context/AgentBuilderContext.js +2 -0
- package/dist/cjs/components/agent-builder/context/AgentBuilderContext.js.map +1 -0
- package/dist/cjs/components/agent-builder/hooks/useAgentDraft.js +2 -0
- package/dist/cjs/components/agent-builder/hooks/useAgentDraft.js.map +1 -0
- package/dist/cjs/components/agent-builder/steps/Step1About.js +2 -0
- package/dist/cjs/components/agent-builder/steps/Step1About.js.map +1 -0
- package/dist/cjs/components/agent-builder/steps/Step2WhenItStepsIn.js +2 -0
- package/dist/cjs/components/agent-builder/steps/Step2WhenItStepsIn.js.map +1 -0
- package/dist/cjs/components/agent-builder/steps/Step3HowItResponds.js +2 -0
- package/dist/cjs/components/agent-builder/steps/Step3HowItResponds.js.map +1 -0
- package/dist/cjs/components/agent-builder/steps/Step4HandoverRules.js +2 -0
- package/dist/cjs/components/agent-builder/steps/Step4HandoverRules.js.map +1 -0
- package/dist/cjs/components/agent-builder/utils/mentionSerialization.js +4 -0
- package/dist/cjs/components/agent-builder/utils/mentionSerialization.js.map +1 -0
- package/dist/cjs/components/agent-builder/utils/sourceIcons.js +2 -0
- package/dist/cjs/components/agent-builder/utils/sourceIcons.js.map +1 -0
- package/dist/cjs/components/agent-listing/AgentListing.js +2 -0
- package/dist/cjs/components/agent-listing/AgentListing.js.map +1 -0
- package/dist/cjs/components/agent-listing/AgentListing.styled.js +115 -0
- package/dist/cjs/components/agent-listing/AgentListing.styled.js.map +1 -0
- package/dist/cjs/components/agent-listing/AgentListingFilters.js +2 -0
- package/dist/cjs/components/agent-listing/AgentListingFilters.js.map +1 -0
- package/dist/cjs/components/agent-listing/AgentListingHeader.js +2 -0
- package/dist/cjs/components/agent-listing/AgentListingHeader.js.map +1 -0
- package/dist/cjs/components/agent-listing/AgentTable.js +2 -0
- package/dist/cjs/components/agent-listing/AgentTable.js.map +1 -0
- package/dist/cjs/components/agent-listing/AgentTableRow.js +2 -0
- package/dist/cjs/components/agent-listing/AgentTableRow.js.map +1 -0
- package/dist/cjs/components/agent-listing/DeleteAgentModal.js +2 -0
- package/dist/cjs/components/agent-listing/DeleteAgentModal.js.map +1 -0
- package/dist/cjs/components/avatar/Avatar.js +1 -1
- package/dist/cjs/components/avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/avatar/Avatar.styled.js +4 -4
- package/dist/cjs/components/avatar/Avatar.styled.js.map +1 -1
- package/dist/cjs/components/avatar/AvatarHelper.js +1 -1
- package/dist/cjs/components/avatar/AvatarHelper.js.map +1 -1
- package/dist/cjs/components/bik-layout/BikSidebar.js.map +1 -1
- package/dist/cjs/components/bik-layout/CommonStyles.js +1 -1
- package/dist/cjs/components/bik-layout/CommonStyles.js.map +1 -1
- package/dist/cjs/components/button/Button.js +1 -1
- package/dist/cjs/components/button/Button.js.map +1 -1
- package/dist/cjs/components/button/Button.styled.js +13 -13
- package/dist/cjs/components/button/Button.styled.js.map +1 -1
- package/dist/cjs/components/button/themes.js +6 -6
- package/dist/cjs/components/button/themes.js.map +1 -1
- package/dist/cjs/components/checkBox/CheckBox.js +1 -1
- package/dist/cjs/components/checkBox/CheckBox.js.map +1 -1
- package/dist/cjs/components/checkBox/CheckBox.styled.js +20 -21
- package/dist/cjs/components/checkBox/CheckBox.styled.js.map +1 -1
- package/dist/cjs/components/country-code-picker/CountryCodePicker.js.map +1 -1
- package/dist/cjs/components/country-code-picker/CountryPicker.js.map +1 -1
- package/dist/cjs/components/dropdown/Dropdown.js +1 -1
- package/dist/cjs/components/dropdown/Dropdown.js.map +1 -1
- package/dist/cjs/components/dropdown/DropdownPopover/index.js +1 -1
- package/dist/cjs/components/dropdown/DropdownPopover/index.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.styled.js +8 -9
- package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.styled.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/description/Description.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/description/Description.styled.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuItem.js +9 -9
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuItem.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.styled.js +2 -6
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.styled.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js.map +1 -1
- package/dist/cjs/components/dropdown-button/DropdownButton.js +1 -1
- package/dist/cjs/components/dropdown-button/DropdownButton.js.map +1 -1
- package/dist/cjs/components/dropdown-button/DropdownButton.style.js +6 -20
- package/dist/cjs/components/dropdown-button/DropdownButton.style.js.map +1 -1
- package/dist/cjs/components/fab-menu/FABMenu.js.map +1 -1
- package/dist/cjs/components/icon-button/IconButton.js +1 -1
- package/dist/cjs/components/icon-button/IconButton.js.map +1 -1
- package/dist/cjs/components/icon-button/IconButton.styled.js +12 -18
- package/dist/cjs/components/icon-button/IconButton.styled.js.map +1 -1
- package/dist/cjs/components/icon-button/theme.js +1 -1
- package/dist/cjs/components/icon-button/theme.js.map +1 -1
- package/dist/cjs/components/input/Input.js +1 -1
- package/dist/cjs/components/input/Input.js.map +1 -1
- package/dist/cjs/components/input/Input.styled.js +16 -27
- package/dist/cjs/components/input/Input.styled.js.map +1 -1
- package/dist/cjs/components/input-with-vars/InputWithVariables.js +3 -3
- package/dist/cjs/components/input-with-vars/InputWithVariables.js.map +1 -1
- package/dist/cjs/components/list-item/ListItem.js +1 -1
- package/dist/cjs/components/list-item/ListItem.js.map +1 -1
- package/dist/cjs/components/list-item/ListItem.styled.js +6 -6
- package/dist/cjs/components/list-item/ListItem.styled.js.map +1 -1
- package/dist/cjs/components/list-item/themes.js +20 -32
- package/dist/cjs/components/list-item/themes.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/GroupedMenuList.js +1 -1
- package/dist/cjs/components/multi-level-dropdown/GroupedMenuList.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/MenuItem.js +1 -1
- package/dist/cjs/components/multi-level-dropdown/MenuItem.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/MenuList.js +1 -1
- package/dist/cjs/components/multi-level-dropdown/MenuList.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.js +1 -1
- package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.styled.js +29 -32
- package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.styled.js.map +1 -1
- package/dist/cjs/components/tag/Tag.js +1 -1
- package/dist/cjs/components/tag/Tag.js.map +1 -1
- package/dist/cjs/components/tag/Tag.styled.js +4 -4
- package/dist/cjs/components/tag/Tag.styled.js.map +1 -1
- package/dist/cjs/components/tag/model.js.map +1 -1
- package/dist/cjs/components/variable-picker-v3/Content.js +1 -1
- package/dist/cjs/components/variable-picker-v3/Content.js.map +1 -1
- package/dist/cjs/components/variable-picker-v3/model.js.map +1 -1
- package/dist/cjs/components/whats-new/WhatsNew.js +1 -1
- package/dist/cjs/components/whats-new/WhatsNew.js.map +1 -1
- package/dist/cjs/components/whats-new/WhatsNewButton.js +2 -2
- package/dist/cjs/components/whats-new/WhatsNewButton.js.map +1 -1
- package/dist/cjs/components/whats-new/WhatsNewPanel.js.map +1 -1
- package/dist/cjs/constants/Theme.js +1 -1
- package/dist/cjs/constants/Theme.js.map +1 -1
- package/dist/cjs/editor/BikEditor.js +1 -1
- package/dist/cjs/editor/BikEditor.js.map +1 -1
- package/dist/cjs/editor/BikEditor.styles.js +14 -1
- package/dist/cjs/editor/BikEditor.styles.js.map +1 -1
- package/dist/cjs/editor/BikEditor.types.js.map +1 -1
- package/dist/cjs/editor/BikEditor.utils.js +2 -2
- package/dist/cjs/editor/BikEditor.utils.js.map +1 -1
- package/dist/cjs/editor/extensions/buildExtensions.js +1 -1
- package/dist/cjs/editor/extensions/buildExtensions.js.map +1 -1
- package/dist/cjs/editor/extensions/editorDropdown.styles.js +15 -10
- package/dist/cjs/editor/extensions/editorDropdown.styles.js.map +1 -1
- package/dist/cjs/editor/extensions/mention/MentionDropdown.js +1 -1
- package/dist/cjs/editor/extensions/mention/MentionDropdown.js.map +1 -1
- package/dist/cjs/editor/extensions/mention/MentionExtension.js +1 -1
- package/dist/cjs/editor/extensions/mention/MentionExtension.js.map +1 -1
- package/dist/cjs/icons/Arrows/Chevron/ChevronUp.js +1 -1
- package/dist/cjs/icons/Arrows/Chevron/ChevronUp.js.map +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/esm/assets/icons/ManifestGlass.svg.js +6 -0
- package/dist/esm/assets/icons/ManifestGlass.svg.js.map +1 -0
- package/dist/esm/assets/icons/Shopify.svg.js +6 -0
- package/dist/esm/assets/icons/Shopify.svg.js.map +1 -0
- package/dist/esm/assets/icons/playOutline.svg.js +6 -0
- package/dist/esm/assets/icons/playOutline.svg.js.map +1 -0
- package/dist/esm/components/BikGiftedChat/Bubble/Bubble.js +59 -61
- package/dist/esm/components/BikGiftedChat/Bubble/Bubble.js.map +1 -1
- package/dist/esm/components/BikGiftedChat/GiftedChat/Day.d.ts +0 -6
- package/dist/esm/components/BikGiftedChat/GiftedChat/Day.js +88 -124
- package/dist/esm/components/BikGiftedChat/GiftedChat/Day.js.map +1 -1
- package/dist/esm/components/BikGiftedChat/GiftedChat/GiftedChat.js +128 -225
- package/dist/esm/components/BikGiftedChat/GiftedChat/GiftedChat.js.map +1 -1
- package/dist/esm/components/BikGiftedChat/GiftedChat/types.d.ts +2 -6
- package/dist/esm/components/BikGiftedChat/GiftedChat/types.js.map +1 -1
- package/dist/esm/components/TypographyStyle.d.ts +0 -8
- package/dist/esm/components/TypographyStyle.js +40 -63
- package/dist/esm/components/TypographyStyle.js.map +1 -1
- package/dist/esm/components/agent-builder/AgentBuilder.d.ts +18 -0
- package/dist/esm/components/agent-builder/AgentBuilder.js +203 -0
- package/dist/esm/components/agent-builder/AgentBuilder.js.map +1 -0
- package/dist/esm/components/agent-builder/AgentBuilder.model.d.ts +107 -0
- package/dist/esm/components/agent-builder/AgentBuilder.styled.d.ts +161 -0
- package/dist/esm/components/agent-builder/AgentBuilder.styled.js +517 -0
- package/dist/esm/components/agent-builder/AgentBuilder.styled.js.map +1 -0
- package/dist/esm/components/agent-builder/components/AgentBuilderFooter.d.ts +10 -0
- package/dist/esm/components/agent-builder/components/AgentBuilderFooter.js +70 -0
- package/dist/esm/components/agent-builder/components/AgentBuilderFooter.js.map +1 -0
- package/dist/esm/components/agent-builder/components/AgentBuilderTopBar.d.ts +12 -0
- package/dist/esm/components/agent-builder/components/AgentBuilderTopBar.js +73 -0
- package/dist/esm/components/agent-builder/components/AgentBuilderTopBar.js.map +1 -0
- package/dist/esm/components/agent-builder/components/AiTextArea.d.ts +14 -0
- package/dist/esm/components/agent-builder/components/AiTextArea.js +44 -0
- package/dist/esm/components/agent-builder/components/AiTextArea.js.map +1 -0
- package/dist/esm/components/agent-builder/components/CreateSubAgentPanel.d.ts +25 -0
- package/dist/esm/components/agent-builder/components/CreateSubAgentPanel.js +215 -0
- package/dist/esm/components/agent-builder/components/CreateSubAgentPanel.js.map +1 -0
- package/dist/esm/components/agent-builder/components/DiscardModal.d.ts +18 -0
- package/dist/esm/components/agent-builder/components/DiscardModal.js +54 -0
- package/dist/esm/components/agent-builder/components/DiscardModal.js.map +1 -0
- package/dist/esm/components/agent-builder/components/GoLiveModal.d.ts +18 -0
- package/dist/esm/components/agent-builder/components/GoLiveModal.js +73 -0
- package/dist/esm/components/agent-builder/components/GoLiveModal.js.map +1 -0
- package/dist/esm/components/agent-builder/components/MentionEditor.d.ts +39 -0
- package/dist/esm/components/agent-builder/components/MentionEditor.js +100 -0
- package/dist/esm/components/agent-builder/components/MentionEditor.js.map +1 -0
- package/dist/esm/components/agent-builder/components/MentionField.d.ts +19 -0
- package/dist/esm/components/agent-builder/components/MentionField.js +64 -0
- package/dist/esm/components/agent-builder/components/MentionField.js.map +1 -0
- package/dist/esm/components/agent-builder/components/MentionPicker.d.ts +17 -0
- package/dist/esm/components/agent-builder/components/MentionPicker.js +268 -0
- package/dist/esm/components/agent-builder/components/MentionPicker.js.map +1 -0
- package/dist/esm/components/agent-builder/components/SelectableListSection.d.ts +52 -0
- package/dist/esm/components/agent-builder/components/SelectableListSection.js +192 -0
- package/dist/esm/components/agent-builder/components/SelectableListSection.js.map +1 -0
- package/dist/esm/components/agent-builder/components/StepRail.d.ts +2 -0
- package/dist/esm/components/agent-builder/components/StepRail.js +35 -0
- package/dist/esm/components/agent-builder/components/StepRail.js.map +1 -0
- package/dist/esm/components/agent-builder/components/StepSectionHeader.d.ts +7 -0
- package/dist/esm/components/agent-builder/components/StepSectionHeader.js +15 -0
- package/dist/esm/components/agent-builder/components/StepSectionHeader.js.map +1 -0
- package/dist/esm/components/agent-builder/components/UndoToast.d.ts +7 -0
- package/dist/esm/components/agent-builder/components/UndoToast.js +27 -0
- package/dist/esm/components/agent-builder/components/UndoToast.js.map +1 -0
- package/dist/esm/components/agent-builder/constants/charLimits.d.ts +21 -0
- package/dist/esm/components/agent-builder/constants/charLimits.js +18 -0
- package/dist/esm/components/agent-builder/constants/charLimits.js.map +1 -0
- package/dist/esm/components/agent-builder/constants/editorStyle.d.ts +8 -0
- package/dist/esm/components/agent-builder/constants/editorStyle.js +10 -0
- package/dist/esm/components/agent-builder/constants/editorStyle.js.map +1 -0
- package/dist/esm/components/agent-builder/constants/steps.d.ts +13 -0
- package/dist/esm/components/agent-builder/constants/steps.js +32 -0
- package/dist/esm/components/agent-builder/constants/steps.js.map +1 -0
- package/dist/esm/components/agent-builder/context/AgentBuilderContext.d.ts +98 -0
- package/dist/esm/components/agent-builder/context/AgentBuilderContext.js +174 -0
- package/dist/esm/components/agent-builder/context/AgentBuilderContext.js.map +1 -0
- package/dist/esm/components/agent-builder/hooks/useAgentDraft.d.ts +24 -0
- package/dist/esm/components/agent-builder/hooks/useAgentDraft.js +27 -0
- package/dist/esm/components/agent-builder/hooks/useAgentDraft.js.map +1 -0
- package/dist/esm/components/agent-builder/index.d.ts +7 -0
- package/dist/esm/components/agent-builder/steps/Step1About.d.ts +2 -0
- package/dist/esm/components/agent-builder/steps/Step1About.js +43 -0
- package/dist/esm/components/agent-builder/steps/Step1About.js.map +1 -0
- package/dist/esm/components/agent-builder/steps/Step2WhenItStepsIn.d.ts +2 -0
- package/dist/esm/components/agent-builder/steps/Step2WhenItStepsIn.js +148 -0
- package/dist/esm/components/agent-builder/steps/Step2WhenItStepsIn.js.map +1 -0
- package/dist/esm/components/agent-builder/steps/Step3HowItResponds.d.ts +2 -0
- package/dist/esm/components/agent-builder/steps/Step3HowItResponds.js +218 -0
- package/dist/esm/components/agent-builder/steps/Step3HowItResponds.js.map +1 -0
- package/dist/esm/components/agent-builder/steps/Step4HandoverRules.d.ts +2 -0
- package/dist/esm/components/agent-builder/steps/Step4HandoverRules.js +83 -0
- package/dist/esm/components/agent-builder/steps/Step4HandoverRules.js.map +1 -0
- package/dist/esm/components/agent-builder/utils/mentionSerialization.d.ts +61 -0
- package/dist/esm/components/agent-builder/utils/mentionSerialization.js +96 -0
- package/dist/esm/components/agent-builder/utils/mentionSerialization.js.map +1 -0
- package/dist/esm/components/agent-builder/utils/sourceIcons.d.ts +10 -0
- package/dist/esm/components/agent-builder/utils/sourceIcons.js +10 -0
- package/dist/esm/components/agent-builder/utils/sourceIcons.js.map +1 -0
- package/dist/esm/components/agent-listing/AgentListing.d.ts +18 -0
- package/dist/esm/components/agent-listing/AgentListing.js +176 -0
- package/dist/esm/components/agent-listing/AgentListing.js.map +1 -0
- package/dist/esm/components/agent-listing/AgentListing.model.d.ts +78 -0
- package/dist/esm/components/agent-listing/AgentListing.styled.d.ts +56 -0
- package/dist/esm/components/agent-listing/AgentListing.styled.js +145 -0
- package/dist/esm/components/agent-listing/AgentListing.styled.js.map +1 -0
- package/dist/esm/components/agent-listing/AgentListingFilters.d.ts +18 -0
- package/dist/esm/components/agent-listing/AgentListingFilters.js +85 -0
- package/dist/esm/components/agent-listing/AgentListingFilters.js.map +1 -0
- package/dist/esm/components/agent-listing/AgentListingHeader.d.ts +8 -0
- package/dist/esm/components/agent-listing/AgentListingHeader.js +40 -0
- package/dist/esm/components/agent-listing/AgentListingHeader.js.map +1 -0
- package/dist/esm/components/agent-listing/AgentTable.d.ts +11 -0
- package/dist/esm/components/agent-listing/AgentTable.js +35 -0
- package/dist/esm/components/agent-listing/AgentTable.js.map +1 -0
- package/dist/esm/components/agent-listing/AgentTableRow.d.ts +12 -0
- package/dist/esm/components/agent-listing/AgentTableRow.js +108 -0
- package/dist/esm/components/agent-listing/AgentTableRow.js.map +1 -0
- package/dist/esm/components/agent-listing/DeleteAgentModal.d.ts +16 -0
- package/dist/esm/components/agent-listing/DeleteAgentModal.js +69 -0
- package/dist/esm/components/agent-listing/DeleteAgentModal.js.map +1 -0
- package/dist/esm/components/agent-listing/index.d.ts +2 -0
- package/dist/esm/components/avatar/Avatar.d.ts +1 -2
- package/dist/esm/components/avatar/Avatar.js +73 -51
- package/dist/esm/components/avatar/Avatar.js.map +1 -1
- package/dist/esm/components/avatar/Avatar.styled.js +8 -8
- package/dist/esm/components/avatar/Avatar.styled.js.map +1 -1
- package/dist/esm/components/avatar/AvatarHelper.d.ts +4 -5
- package/dist/esm/components/avatar/AvatarHelper.js +4 -4
- package/dist/esm/components/avatar/AvatarHelper.js.map +1 -1
- package/dist/esm/components/bik-layout/BikSidebar.js.map +1 -1
- package/dist/esm/components/bik-layout/CommonStyles.js +1 -1
- package/dist/esm/components/bik-layout/CommonStyles.js.map +1 -1
- package/dist/esm/components/bik-layout/index.d.ts +0 -2
- package/dist/esm/components/button/Button.js +31 -31
- package/dist/esm/components/button/Button.js.map +1 -1
- package/dist/esm/components/button/Button.styled.d.ts +1 -1
- package/dist/esm/components/button/Button.styled.js +20 -20
- package/dist/esm/components/button/Button.styled.js.map +1 -1
- package/dist/esm/components/button/model.d.ts +3 -3
- package/dist/esm/components/button/themes.d.ts +2 -2
- package/dist/esm/components/button/themes.js +17 -31
- package/dist/esm/components/button/themes.js.map +1 -1
- package/dist/esm/components/checkBox/CheckBox.d.ts +1 -2
- package/dist/esm/components/checkBox/CheckBox.js +87 -124
- package/dist/esm/components/checkBox/CheckBox.js.map +1 -1
- package/dist/esm/components/checkBox/CheckBox.styled.d.ts +1 -1
- package/dist/esm/components/checkBox/CheckBox.styled.js +9 -10
- package/dist/esm/components/checkBox/CheckBox.styled.js.map +1 -1
- package/dist/esm/components/country-code-picker/CountryCodePicker.d.ts +1 -1
- package/dist/esm/components/country-code-picker/CountryCodePicker.js.map +1 -1
- package/dist/esm/components/country-code-picker/CountryPicker.d.ts +1 -1
- package/dist/esm/components/country-code-picker/CountryPicker.js.map +1 -1
- package/dist/esm/components/dropdown/Dropdown.js +67 -67
- package/dist/esm/components/dropdown/Dropdown.js.map +1 -1
- package/dist/esm/components/dropdown/DropdownPopover/index.js +61 -74
- package/dist/esm/components/dropdown/DropdownPopover/index.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.js +174 -183
- package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.styled.d.ts +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.styled.js +4 -5
- package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.styled.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/description/Description.d.ts +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/description/Description.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/description/Description.styled.d.ts +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/description/Description.styled.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.d.ts +1 -3
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js +20 -29
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuItem.d.ts +1 -3
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuItem.js +87 -93
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuItem.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.d.ts +1 -3
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.js +61 -68
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.styled.d.ts +1 -2
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.styled.js +2 -7
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.styled.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.d.ts +1 -3
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js +10 -18
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.d.ts +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js +18 -18
- package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.d.ts +0 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js +17 -43
- package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/utils/iterationOnOptions.d.ts +0 -2
- package/dist/esm/components/dropdown/hooks/useDropdown.d.ts +0 -2
- package/dist/esm/components/dropdown/type.d.ts +1 -6
- package/dist/esm/components/dropdown-button/DropdownButton.d.ts +1 -3
- package/dist/esm/components/dropdown-button/DropdownButton.js +17 -71
- package/dist/esm/components/dropdown-button/DropdownButton.js.map +1 -1
- package/dist/esm/components/dropdown-button/DropdownButton.style.d.ts +2 -9
- package/dist/esm/components/dropdown-button/DropdownButton.style.js +9 -35
- package/dist/esm/components/dropdown-button/DropdownButton.style.js.map +1 -1
- package/dist/esm/components/fab-menu/FABMenu.d.ts +1 -1
- package/dist/esm/components/fab-menu/FABMenu.js.map +1 -1
- package/dist/esm/components/icon-button/IconButton.js +32 -36
- package/dist/esm/components/icon-button/IconButton.js.map +1 -1
- package/dist/esm/components/icon-button/IconButton.styled.d.ts +1 -3
- package/dist/esm/components/icon-button/IconButton.styled.js +14 -20
- package/dist/esm/components/icon-button/IconButton.styled.js.map +1 -1
- package/dist/esm/components/icon-button/model.d.ts +1 -12
- package/dist/esm/components/icon-button/theme.js +10 -12
- package/dist/esm/components/icon-button/theme.js.map +1 -1
- package/dist/esm/components/input/Input.js +115 -119
- package/dist/esm/components/input/Input.js.map +1 -1
- package/dist/esm/components/input/Input.model.d.ts +3 -2
- package/dist/esm/components/input/Input.styled.d.ts +1 -8
- package/dist/esm/components/input/Input.styled.js +22 -34
- package/dist/esm/components/input/Input.styled.js.map +1 -1
- package/dist/esm/components/input-with-vars/InputWithVariables.d.ts +2 -0
- package/dist/esm/components/input-with-vars/InputWithVariables.js +81 -75
- package/dist/esm/components/input-with-vars/InputWithVariables.js.map +1 -1
- package/dist/esm/components/list-item/List.model.d.ts +1 -2
- package/dist/esm/components/list-item/ListItem.js +38 -40
- package/dist/esm/components/list-item/ListItem.js.map +1 -1
- package/dist/esm/components/list-item/ListItem.styled.d.ts +1 -2
- package/dist/esm/components/list-item/ListItem.styled.js +8 -8
- package/dist/esm/components/list-item/ListItem.styled.js.map +1 -1
- package/dist/esm/components/list-item/themes.d.ts +2 -2
- package/dist/esm/components/list-item/themes.js +6 -20
- package/dist/esm/components/list-item/themes.js.map +1 -1
- package/dist/esm/components/multi-level-dropdown/GroupedMenuList.d.ts +0 -1
- package/dist/esm/components/multi-level-dropdown/GroupedMenuList.js +28 -30
- package/dist/esm/components/multi-level-dropdown/GroupedMenuList.js.map +1 -1
- package/dist/esm/components/multi-level-dropdown/MenuItem.d.ts +0 -1
- package/dist/esm/components/multi-level-dropdown/MenuItem.js +54 -57
- package/dist/esm/components/multi-level-dropdown/MenuItem.js.map +1 -1
- package/dist/esm/components/multi-level-dropdown/MenuList.d.ts +0 -1
- package/dist/esm/components/multi-level-dropdown/MenuList.js +42 -46
- package/dist/esm/components/multi-level-dropdown/MenuList.js.map +1 -1
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.js +59 -95
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.js.map +1 -1
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.styled.d.ts +3 -13
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.styled.js +41 -50
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.styled.js.map +1 -1
- package/dist/esm/components/multi-level-dropdown/type.d.ts +0 -1
- package/dist/esm/components/tag/Tag.d.ts +1 -1
- package/dist/esm/components/tag/Tag.js +18 -22
- package/dist/esm/components/tag/Tag.js.map +1 -1
- package/dist/esm/components/tag/Tag.styled.d.ts +1 -3
- package/dist/esm/components/tag/Tag.styled.js +7 -7
- package/dist/esm/components/tag/Tag.styled.js.map +1 -1
- package/dist/esm/components/tag/model.d.ts +1 -5
- package/dist/esm/components/tag/model.js.map +1 -1
- package/dist/esm/components/variable-picker-v3/Content.js +69 -69
- package/dist/esm/components/variable-picker-v3/Content.js.map +1 -1
- package/dist/esm/components/variable-picker-v3/model.d.ts +2 -0
- package/dist/esm/components/variable-picker-v3/model.js.map +1 -1
- package/dist/esm/components/whats-new/WhatsNew.d.ts +0 -2
- package/dist/esm/components/whats-new/WhatsNew.js +19 -23
- package/dist/esm/components/whats-new/WhatsNew.js.map +1 -1
- package/dist/esm/components/whats-new/WhatsNew.types.d.ts +0 -2
- package/dist/esm/components/whats-new/WhatsNewButton.js +38 -34
- package/dist/esm/components/whats-new/WhatsNewButton.js.map +1 -1
- package/dist/esm/components/whats-new/WhatsNewPanel.js.map +1 -1
- package/dist/esm/constants/Theme.d.ts +0 -36
- package/dist/esm/constants/Theme.js +1 -21
- package/dist/esm/constants/Theme.js.map +1 -1
- package/dist/esm/editor/BikEditor.js +19 -18
- package/dist/esm/editor/BikEditor.js.map +1 -1
- package/dist/esm/editor/BikEditor.styles.js +13 -0
- package/dist/esm/editor/BikEditor.styles.js.map +1 -1
- package/dist/esm/editor/BikEditor.types.d.ts +21 -0
- package/dist/esm/editor/BikEditor.types.js.map +1 -1
- package/dist/esm/editor/BikEditor.utils.js +76 -75
- package/dist/esm/editor/BikEditor.utils.js.map +1 -1
- package/dist/esm/editor/extensions/buildExtensions.d.ts +1 -0
- package/dist/esm/editor/extensions/buildExtensions.js +31 -29
- package/dist/esm/editor/extensions/buildExtensions.js.map +1 -1
- package/dist/esm/editor/extensions/editorDropdown.styles.d.ts +2 -8
- package/dist/esm/editor/extensions/editorDropdown.styles.js +22 -18
- package/dist/esm/editor/extensions/editorDropdown.styles.js.map +1 -1
- package/dist/esm/editor/extensions/mention/MentionDropdown.d.ts +2 -0
- package/dist/esm/editor/extensions/mention/MentionDropdown.js +35 -28
- package/dist/esm/editor/extensions/mention/MentionDropdown.js.map +1 -1
- package/dist/esm/editor/extensions/mention/MentionExtension.d.ts +2 -2
- package/dist/esm/editor/extensions/mention/MentionExtension.js +91 -59
- package/dist/esm/editor/extensions/mention/MentionExtension.js.map +1 -1
- package/dist/esm/icons/Arrows/Chevron/ChevronUp.d.ts +2 -1
- package/dist/esm/icons/Arrows/Chevron/ChevronUp.js +28 -24
- package/dist/esm/icons/Arrows/Chevron/ChevronUp.js.map +1 -1
- package/dist/esm/icons/index.d.ts +24 -24
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/index.js +806 -798
- package/dist/esm/index.js.map +1 -1
- package/package.json +3 -2
- package/dist/cjs/components/bik-layout/BikSidebarV2/BikSidebarV2.js +0 -2
- package/dist/cjs/components/bik-layout/BikSidebarV2/BikSidebarV2.js.map +0 -1
- package/dist/cjs/components/bik-layout/BikSidebarV2/SidebarV2Popup.js +0 -2
- package/dist/cjs/components/bik-layout/BikSidebarV2/SidebarV2Popup.js.map +0 -1
- package/dist/cjs/components/bik-layout/BikSidebarV2/SidebarV2Styles.js +0 -294
- package/dist/cjs/components/bik-layout/BikSidebarV2/SidebarV2Styles.js.map +0 -1
- package/dist/cjs/components/bik-layout/BikSidebarV2/SimpleSidebarV2.js +0 -2
- package/dist/cjs/components/bik-layout/BikSidebarV2/SimpleSidebarV2.js.map +0 -1
- package/dist/cjs/components/dual-icon-button/DualIconButton.js +0 -2
- package/dist/cjs/components/dual-icon-button/DualIconButton.js.map +0 -1
- package/dist/cjs/components/dual-icon-button/DualIconButton.styled.js +0 -33
- package/dist/cjs/components/dual-icon-button/DualIconButton.styled.js.map +0 -1
- package/dist/esm/components/bik-layout/BikSidebarV2/BikSidebarV2.d.ts +0 -33
- package/dist/esm/components/bik-layout/BikSidebarV2/BikSidebarV2.js +0 -272
- package/dist/esm/components/bik-layout/BikSidebarV2/BikSidebarV2.js.map +0 -1
- package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2.model.d.ts +0 -27
- package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Popup.d.ts +0 -12
- package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Popup.js +0 -53
- package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Popup.js.map +0 -1
- package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Styles.d.ts +0 -44
- package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Styles.js +0 -310
- package/dist/esm/components/bik-layout/BikSidebarV2/SidebarV2Styles.js.map +0 -1
- package/dist/esm/components/bik-layout/BikSidebarV2/SimpleSidebarV2.d.ts +0 -2
- package/dist/esm/components/bik-layout/BikSidebarV2/SimpleSidebarV2.js +0 -107
- package/dist/esm/components/bik-layout/BikSidebarV2/SimpleSidebarV2.js.map +0 -1
- package/dist/esm/components/dual-icon-button/DualIconButton.d.ts +0 -3
- package/dist/esm/components/dual-icon-button/DualIconButton.js +0 -53
- package/dist/esm/components/dual-icon-button/DualIconButton.js.map +0 -1
- package/dist/esm/components/dual-icon-button/DualIconButton.styled.d.ts +0 -7
- package/dist/esm/components/dual-icon-button/DualIconButton.styled.js +0 -40
- package/dist/esm/components/dual-icon-button/DualIconButton.styled.js.map +0 -1
- package/dist/esm/components/dual-icon-button/index.d.ts +0 -2
- package/dist/esm/components/dual-icon-button/model.d.ts +0 -12
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { jsx as st } from "react/jsx-runtime";
|
|
2
|
+
import it, { useState as S, useRef as g, useCallback as o, useMemo as Z, useContext as ct } from "react";
|
|
3
|
+
import { AGENT_CHAR_LIMITS as O } from "../constants/charLimits.js";
|
|
4
|
+
import { getStepIndex as ut, STEP_KEYS as x } from "../constants/steps.js";
|
|
5
|
+
const b = it.createContext(null), pt = () => {
|
|
6
|
+
const n = ct(b);
|
|
7
|
+
if (!n)
|
|
8
|
+
throw new Error(
|
|
9
|
+
"useAgentBuilderContext must be used within an AgentBuilderProvider"
|
|
10
|
+
);
|
|
11
|
+
return n;
|
|
12
|
+
}, dt = (n) => {
|
|
13
|
+
const s = n.trigger.mode === "custom_intent" ? (n.trigger.custom_intent ?? "").trim().length > 0 : n.trigger.intents.length > 0;
|
|
14
|
+
return {
|
|
15
|
+
about: n.name.trim().length > 0 && n.name.length <= O.name && n.description.length <= O.description,
|
|
16
|
+
trigger: s,
|
|
17
|
+
// At least one of Instructions / Guardrails must be filled.
|
|
18
|
+
response: n.instructions.trim().length > 0 || (n.guardrail ?? "").trim().length > 0,
|
|
19
|
+
// Optional until specced further — never blocks go-live.
|
|
20
|
+
handover: !0
|
|
21
|
+
};
|
|
22
|
+
}, xt = ({
|
|
23
|
+
value: n,
|
|
24
|
+
onChange: s,
|
|
25
|
+
activeStep: R,
|
|
26
|
+
onStepChange: B,
|
|
27
|
+
availableTools: u,
|
|
28
|
+
availableSubAgents: m,
|
|
29
|
+
availableIntents: F,
|
|
30
|
+
availableModels: I,
|
|
31
|
+
validation: P,
|
|
32
|
+
applicationType: A,
|
|
33
|
+
disableStepNavigation: E = !0,
|
|
34
|
+
onCreateSubAgent: $,
|
|
35
|
+
onFetchSubAgent: w,
|
|
36
|
+
onUpdateSubAgent: y,
|
|
37
|
+
onImproveSubAgent: T,
|
|
38
|
+
children: v
|
|
39
|
+
}) => {
|
|
40
|
+
const [tt, nt] = S("about"), l = R ?? tt, i = ut(l), [V, a] = S(0), _ = g({}), j = g("instructions"), K = o(
|
|
41
|
+
(t, e) => {
|
|
42
|
+
e ? _.current[t] = e : delete _.current[t];
|
|
43
|
+
},
|
|
44
|
+
[]
|
|
45
|
+
), L = o((t) => {
|
|
46
|
+
j.current = t;
|
|
47
|
+
}, []), q = g(null), C = o((t) => {
|
|
48
|
+
q.current = t;
|
|
49
|
+
}, []), G = o(() => {
|
|
50
|
+
q.current?.();
|
|
51
|
+
}, []), H = o((t, e, p) => {
|
|
52
|
+
const d = _.current;
|
|
53
|
+
(d[j.current] ?? d.instructions)?.(t, e, p);
|
|
54
|
+
}, []), [N, h] = S(null), f = g(null), U = g(0), c = o(
|
|
55
|
+
(t) => {
|
|
56
|
+
R === void 0 && nt(t), B?.(t);
|
|
57
|
+
},
|
|
58
|
+
[R, B]
|
|
59
|
+
), Y = o(() => {
|
|
60
|
+
const t = x[Math.min(i + 1, x.length - 1)];
|
|
61
|
+
c(t);
|
|
62
|
+
}, [i, c]), k = o(() => {
|
|
63
|
+
const t = x[Math.max(i - 1, 0)];
|
|
64
|
+
c(t);
|
|
65
|
+
}, [i, c]), z = o(
|
|
66
|
+
(t) => s(t),
|
|
67
|
+
[s]
|
|
68
|
+
), D = o(
|
|
69
|
+
(t, e) => s({ [t]: e }),
|
|
70
|
+
[s]
|
|
71
|
+
), J = o(
|
|
72
|
+
(t, e) => {
|
|
73
|
+
const p = t === "tool" ? (() => {
|
|
74
|
+
const r = u.find((ot) => ot.tool_id === e);
|
|
75
|
+
return r ? `{{tool:${r.function_key}}}` : null;
|
|
76
|
+
})() : `{{subagent:${e}}}`, d = (r) => p ? r.split(p).join("") : r;
|
|
77
|
+
f.current = {
|
|
78
|
+
tools: n.tools,
|
|
79
|
+
subagents: n.subagents,
|
|
80
|
+
instructions: n.instructions,
|
|
81
|
+
guardrail: n.guardrail
|
|
82
|
+
};
|
|
83
|
+
const X = {
|
|
84
|
+
instructions: d(n.instructions),
|
|
85
|
+
guardrail: d(n.guardrail ?? ""),
|
|
86
|
+
...t === "tool" ? { tools: n.tools.filter((r) => r !== e) } : { subagents: n.subagents.filter((r) => r !== e) }
|
|
87
|
+
};
|
|
88
|
+
s(X), a((r) => r + 1);
|
|
89
|
+
const et = t === "tool" ? u.find((r) => r.tool_id === e)?.display_name ?? "Tool" : m.find((r) => r.id === e)?.name ?? "Sub-agent";
|
|
90
|
+
U.current += 1, h({
|
|
91
|
+
id: U.current,
|
|
92
|
+
message: `${t === "tool" ? "Tool" : "Sub-agent"} "${et}" removed`
|
|
93
|
+
});
|
|
94
|
+
},
|
|
95
|
+
[u, m, n, s]
|
|
96
|
+
), Q = o(() => {
|
|
97
|
+
f.current && (s(f.current), f.current = null, a((t) => t + 1)), h(null);
|
|
98
|
+
}, [s]), W = o(() => h(null), []), M = Z(
|
|
99
|
+
() => ({ ...dt(n), ...P }),
|
|
100
|
+
[n, P]
|
|
101
|
+
), rt = Z(
|
|
102
|
+
() => ({
|
|
103
|
+
value: n,
|
|
104
|
+
patch: z,
|
|
105
|
+
updateField: D,
|
|
106
|
+
removeReference: J,
|
|
107
|
+
mentionResetKey: V,
|
|
108
|
+
insertMention: H,
|
|
109
|
+
registerMentionField: K,
|
|
110
|
+
notifyMentionFocus: L,
|
|
111
|
+
undoToast: N,
|
|
112
|
+
undoRemoval: Q,
|
|
113
|
+
dismissUndo: W,
|
|
114
|
+
activeStep: l,
|
|
115
|
+
activeIndex: i,
|
|
116
|
+
goToStep: c,
|
|
117
|
+
goNext: Y,
|
|
118
|
+
goPrev: k,
|
|
119
|
+
isFirstStep: i === 0,
|
|
120
|
+
isLastStep: i === x.length - 1,
|
|
121
|
+
validation: M,
|
|
122
|
+
isActiveStepValid: M[l],
|
|
123
|
+
availableTools: u,
|
|
124
|
+
availableSubAgents: m,
|
|
125
|
+
availableIntents: F,
|
|
126
|
+
availableModels: I,
|
|
127
|
+
applicationType: A,
|
|
128
|
+
disableStepNavigation: E,
|
|
129
|
+
onCreateSubAgent: $,
|
|
130
|
+
registerSubAgentCreator: C,
|
|
131
|
+
requestCreateSubAgent: G,
|
|
132
|
+
onFetchSubAgent: w,
|
|
133
|
+
onUpdateSubAgent: y,
|
|
134
|
+
onImproveSubAgent: T
|
|
135
|
+
}),
|
|
136
|
+
[
|
|
137
|
+
n,
|
|
138
|
+
z,
|
|
139
|
+
D,
|
|
140
|
+
J,
|
|
141
|
+
V,
|
|
142
|
+
H,
|
|
143
|
+
K,
|
|
144
|
+
L,
|
|
145
|
+
N,
|
|
146
|
+
Q,
|
|
147
|
+
W,
|
|
148
|
+
l,
|
|
149
|
+
i,
|
|
150
|
+
c,
|
|
151
|
+
Y,
|
|
152
|
+
k,
|
|
153
|
+
M,
|
|
154
|
+
u,
|
|
155
|
+
m,
|
|
156
|
+
F,
|
|
157
|
+
I,
|
|
158
|
+
A,
|
|
159
|
+
E,
|
|
160
|
+
$,
|
|
161
|
+
C,
|
|
162
|
+
G,
|
|
163
|
+
w,
|
|
164
|
+
y,
|
|
165
|
+
T
|
|
166
|
+
]
|
|
167
|
+
);
|
|
168
|
+
return /* @__PURE__ */ st(b.Provider, { value: rt, children: v });
|
|
169
|
+
};
|
|
170
|
+
export {
|
|
171
|
+
xt as AgentBuilderProvider,
|
|
172
|
+
pt as useAgentBuilderContext
|
|
173
|
+
};
|
|
174
|
+
//# sourceMappingURL=AgentBuilderContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentBuilderContext.js","sources":["../../../../../src/components/agent-builder/context/AgentBuilderContext.tsx"],"sourcesContent":["import type { ApplicationType } from '@bikdotai/bik-models/growth';\nimport React, {\n\tuseCallback,\n\tuseContext,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport {\n\tAgentTool,\n\tAgentValue,\n\tIntentOption,\n\tModelOption,\n\tStepKey,\n\tStepValidation,\n\tSubAgentDraft,\n\tSubAgentRef,\n} from '../AgentBuilder.model';\nimport { AGENT_CHAR_LIMITS } from '../constants/charLimits';\nimport { getStepIndex, STEP_KEYS } from '../constants/steps';\n\n/** Mention-capable text fields in Step 3 (both store firebase token text). */\nexport type MentionFieldKey = 'instructions' | 'guardrail';\ntype MentionInsertFn = (\n\tkind: 'tool' | 'subagent',\n\tid: string,\n\tlabel?: string,\n) => void;\n\n/** Toast shown after a tool / sub-agent is removed, offering an undo. */\nexport interface UndoToastState {\n\t/** Bumped per removal so the toast timer restarts. */\n\tid: number;\n\tmessage: string;\n}\n\nexport interface AgentBuilderContextShape {\n\t/** Controlled value relayed from props. */\n\tvalue: AgentValue;\n\t/** Patch one or more fields. */\n\tpatch: (partial: Partial<AgentValue>) => void;\n\t/** Patch a single field. */\n\tupdateField: <K extends keyof AgentValue>(key: K, val: AgentValue[K]) => void;\n\t/**\n\t * Remove a tool / sub-agent everywhere: drops it from the list AND strips ALL\n\t * its `{{tool:KEY}}` / `{{subagent:ID}}` tokens from BOTH the instructions and\n\t * the guardrails, remounts the editors, and raises an undo toast.\n\t */\n\tremoveReference: (kind: 'tool' | 'subagent', id: string) => void;\n\t/** Remount signal for the mention editors after an external edit. */\n\tmentionResetKey: number;\n\t/**\n\t * Insert a tool / sub-agent mention chip at the last cursor position of\n\t * whichever mention field was focused most recently (Instructions or\n\t * Guardrails). `label` overrides the chip text (e.g. a just-created sub-agent\n\t * not yet in the available list).\n\t */\n\tinsertMention: (\n\t\tkind: 'tool' | 'subagent',\n\t\tid: string,\n\t\tlabel?: string,\n\t) => void;\n\t/** A mention field registers its editor-backed insert here (internal). */\n\tregisterMentionField: (\n\t\tfieldKey: MentionFieldKey,\n\t\tfn: MentionInsertFn | null,\n\t) => void;\n\t/** A mention field reports focus so inserts target it (internal). */\n\tnotifyMentionFocus: (fieldKey: MentionFieldKey) => void;\n\n\t// Undo (post-removal)\n\t/** Non-null while the undo toast should be visible. */\n\tundoToast: UndoToastState | null;\n\t/** Restore the last removed tool / sub-agent (list + stripped tokens). */\n\tundoRemoval: () => void;\n\t/** Dismiss the undo toast without restoring. */\n\tdismissUndo: () => void;\n\n\t// Navigation\n\tactiveStep: StepKey;\n\tactiveIndex: number;\n\tgoToStep: (step: StepKey) => void;\n\tgoNext: () => void;\n\tgoPrev: () => void;\n\tisFirstStep: boolean;\n\tisLastStep: boolean;\n\n\t// Validation\n\tvalidation: StepValidation;\n\tisActiveStepValid: boolean;\n\n\t// Reference data\n\tavailableTools: AgentTool[];\n\tavailableSubAgents: SubAgentRef[];\n\tavailableIntents: IntentOption[];\n\tavailableModels: ModelOption[];\n\t/** Host application context (e.g. MANIFEST) — drives tool-chip labelling. */\n\tapplicationType?: ApplicationType;\n\t/** When true, step-rail items are not clickable (Back / Next only). */\n\tdisableStepNavigation: boolean;\n\n\t// Sub-agent creation (Step 3 drawer)\n\t/** Persist a new sub-agent and resolve with its ref. Omit to hide the create flow. */\n\tonCreateSubAgent?: (draft: SubAgentDraft) => Promise<SubAgentRef>;\n\t/**\n\t * Step 3 registers its \"open create-sub-agent drawer\" action here so the `@`\n\t * picker's \"Create new\" row can trigger it. Pass `null` to unregister.\n\t */\n\tregisterSubAgentCreator: (fn: (() => void) | null) => void;\n\t/** Open the create-sub-agent drawer (no-op until Step 3 registers it). */\n\trequestCreateSubAgent: () => void;\n\t/** Fetch a sub-agent's editable data (Configure). Omit to hide Configure. */\n\tonFetchSubAgent?: (id: string) => Promise<SubAgentDraft>;\n\t/** Persist edits to an existing sub-agent. */\n\tonUpdateSubAgent?: (id: string, draft: SubAgentDraft) => Promise<SubAgentRef>;\n\t/** Optional \"Improve with AI\" for the drawer's instructions / guardrails. */\n\tonImproveSubAgent?: (\n\t\tkind: 'instructions' | 'guardrail',\n\t\ttext: string,\n\t) => Promise<string>;\n}\n\nconst AgentBuilderContext =\n\tReact.createContext<AgentBuilderContextShape | null>(null);\n\nexport const useAgentBuilderContext = (): AgentBuilderContextShape => {\n\tconst ctx = useContext(AgentBuilderContext);\n\tif (!ctx) {\n\t\tthrow new Error(\n\t\t\t'useAgentBuilderContext must be used within an AgentBuilderProvider',\n\t\t);\n\t}\n\treturn ctx;\n};\n\n/** Validity derived purely from the current value (no effects). */\nconst deriveValidation = (value: AgentValue): StepValidation => {\n\tconst triggerValid =\n\t\tvalue.trigger.mode === 'custom_intent'\n\t\t\t? (value.trigger.custom_intent ?? '').trim().length > 0\n\t\t\t: value.trigger.intents.length > 0;\n\n\treturn {\n\t\tabout:\n\t\t\tvalue.name.trim().length > 0 &&\n\t\t\tvalue.name.length <= AGENT_CHAR_LIMITS.name &&\n\t\t\tvalue.description.length <= AGENT_CHAR_LIMITS.description,\n\t\ttrigger: triggerValid,\n\t\t// At least one of Instructions / Guardrails must be filled.\n\t\tresponse:\n\t\t\tvalue.instructions.trim().length > 0 ||\n\t\t\t(value.guardrail ?? '').trim().length > 0,\n\t\t// Optional until specced further — never blocks go-live.\n\t\thandover: true,\n\t};\n};\n\ninterface ProviderProps {\n\tvalue: AgentValue;\n\tonChange: (patch: Partial<AgentValue>) => void;\n\tactiveStep?: StepKey;\n\tonStepChange?: (step: StepKey) => void;\n\tavailableTools: AgentTool[];\n\tavailableSubAgents: SubAgentRef[];\n\tavailableIntents: IntentOption[];\n\tavailableModels: ModelOption[];\n\tvalidation?: Partial<StepValidation>;\n\tapplicationType?: ApplicationType;\n\tdisableStepNavigation?: boolean;\n\tonCreateSubAgent?: (draft: SubAgentDraft) => Promise<SubAgentRef>;\n\tonFetchSubAgent?: (id: string) => Promise<SubAgentDraft>;\n\tonUpdateSubAgent?: (id: string, draft: SubAgentDraft) => Promise<SubAgentRef>;\n\tonImproveSubAgent?: (\n\t\tkind: 'instructions' | 'guardrail',\n\t\ttext: string,\n\t) => Promise<string>;\n\tchildren: React.ReactNode;\n}\n\nexport const AgentBuilderProvider: React.FC<ProviderProps> = ({\n\tvalue,\n\tonChange,\n\tactiveStep: controlledStep,\n\tonStepChange,\n\tavailableTools,\n\tavailableSubAgents,\n\tavailableIntents,\n\tavailableModels,\n\tvalidation: validationOverride,\n\tapplicationType,\n\tdisableStepNavigation = true,\n\tonCreateSubAgent,\n\tonFetchSubAgent,\n\tonUpdateSubAgent,\n\tonImproveSubAgent,\n\tchildren,\n}) => {\n\tconst [internalStep, setInternalStep] = useState<StepKey>('about');\n\tconst activeStep = controlledStep ?? internalStep;\n\tconst activeIndex = getStepIndex(activeStep);\n\n\t// Bumped when a mention field is edited from OUTSIDE its editor (removing a\n\t// tool from the side list, undo), forcing the mention editors to remount.\n\tconst [mentionResetKey, setMentionResetKey] = useState(0);\n\n\t// Each mention field registers an editor-backed insert fn + reports focus, so\n\t// side-panel adds drop a chip into the last-focused field at its cursor.\n\tconst mentionInsertersRef = useRef<\n\t\tPartial<Record<MentionFieldKey, MentionInsertFn>>\n\t>({});\n\tconst lastFocusedFieldRef = useRef<MentionFieldKey>('instructions');\n\tconst registerMentionField = useCallback(\n\t\t(fieldKey: MentionFieldKey, fn: MentionInsertFn | null) => {\n\t\t\tif (fn) {\n\t\t\t\tmentionInsertersRef.current[fieldKey] = fn;\n\t\t\t} else {\n\t\t\t\tdelete mentionInsertersRef.current[fieldKey];\n\t\t\t}\n\t\t},\n\t\t[],\n\t);\n\tconst notifyMentionFocus = useCallback((fieldKey: MentionFieldKey) => {\n\t\tlastFocusedFieldRef.current = fieldKey;\n\t}, []);\n\n\t// Step 3 registers its drawer opener here; the `@` picker's \"Create new\" calls it.\n\tconst subAgentCreatorRef = useRef<(() => void) | null>(null);\n\tconst registerSubAgentCreator = useCallback((fn: (() => void) | null) => {\n\t\tsubAgentCreatorRef.current = fn;\n\t}, []);\n\tconst requestCreateSubAgent = useCallback(() => {\n\t\tsubAgentCreatorRef.current?.();\n\t}, []);\n\tconst insertMention = useCallback<MentionInsertFn>((kind, id, label) => {\n\t\tconst inserters = mentionInsertersRef.current;\n\t\tconst target =\n\t\t\tinserters[lastFocusedFieldRef.current] ?? inserters.instructions;\n\t\ttarget?.(kind, id, label);\n\t}, []);\n\n\t// Undo state for the most recent removal.\n\tconst [undoToast, setUndoToast] = useState<UndoToastState | null>(null);\n\tconst undoSnapshotRef = useRef<Partial<AgentValue> | null>(null);\n\tconst undoIdRef = useRef(0);\n\n\tconst goToStep = useCallback(\n\t\t(step: StepKey) => {\n\t\t\tif (controlledStep === undefined) {\n\t\t\t\tsetInternalStep(step);\n\t\t\t}\n\t\t\tonStepChange?.(step);\n\t\t},\n\t\t[controlledStep, onStepChange],\n\t);\n\n\tconst goNext = useCallback(() => {\n\t\tconst next = STEP_KEYS[Math.min(activeIndex + 1, STEP_KEYS.length - 1)];\n\t\tgoToStep(next);\n\t}, [activeIndex, goToStep]);\n\n\tconst goPrev = useCallback(() => {\n\t\tconst prev = STEP_KEYS[Math.max(activeIndex - 1, 0)];\n\t\tgoToStep(prev);\n\t}, [activeIndex, goToStep]);\n\n\tconst patch = useCallback(\n\t\t(partial: Partial<AgentValue>) => onChange(partial),\n\t\t[onChange],\n\t);\n\n\tconst updateField = useCallback(\n\t\t<K extends keyof AgentValue>(key: K, val: AgentValue[K]) =>\n\t\t\tonChange({ [key]: val } as Partial<AgentValue>),\n\t\t[onChange],\n\t);\n\n\tconst removeReference = useCallback(\n\t\t(kind: 'tool' | 'subagent', id: string) => {\n\t\t\tconst token =\n\t\t\t\tkind === 'tool'\n\t\t\t\t\t? (() => {\n\t\t\t\t\t\t\tconst tool = availableTools.find((t) => t.tool_id === id);\n\t\t\t\t\t\t\treturn tool ? `{{tool:${tool.function_key}}}` : null;\n\t\t\t\t\t })()\n\t\t\t\t\t: `{{subagent:${id}}}`;\n\t\t\tconst strip = (text: string) =>\n\t\t\t\ttoken ? text.split(token).join('') : text;\n\n\t\t\t// Snapshot the four fields a removal touches, for undo.\n\t\t\tundoSnapshotRef.current = {\n\t\t\t\ttools: value.tools,\n\t\t\t\tsubagents: value.subagents,\n\t\t\t\tinstructions: value.instructions,\n\t\t\t\tguardrail: value.guardrail,\n\t\t\t};\n\n\t\t\tconst next: Partial<AgentValue> = {\n\t\t\t\tinstructions: strip(value.instructions),\n\t\t\t\tguardrail: strip(value.guardrail ?? ''),\n\t\t\t\t...(kind === 'tool'\n\t\t\t\t\t? { tools: value.tools.filter((t) => t !== id) }\n\t\t\t\t\t: { subagents: value.subagents.filter((s) => s !== id) }),\n\t\t\t};\n\t\t\tonChange(next);\n\t\t\tsetMentionResetKey((k) => k + 1);\n\n\t\t\tconst label =\n\t\t\t\tkind === 'tool'\n\t\t\t\t\t? availableTools.find((t) => t.tool_id === id)?.display_name ?? 'Tool'\n\t\t\t\t\t: availableSubAgents.find((s) => s.id === id)?.name ?? 'Sub-agent';\n\t\t\tundoIdRef.current += 1;\n\t\t\tsetUndoToast({\n\t\t\t\tid: undoIdRef.current,\n\t\t\t\tmessage: `${kind === 'tool' ? 'Tool' : 'Sub-agent'} \"${label}\" removed`,\n\t\t\t});\n\t\t},\n\t\t[availableTools, availableSubAgents, value, onChange],\n\t);\n\n\tconst undoRemoval = useCallback(() => {\n\t\tif (undoSnapshotRef.current) {\n\t\t\tonChange(undoSnapshotRef.current);\n\t\t\tundoSnapshotRef.current = null;\n\t\t\tsetMentionResetKey((k) => k + 1);\n\t\t}\n\t\tsetUndoToast(null);\n\t}, [onChange]);\n\n\tconst dismissUndo = useCallback(() => setUndoToast(null), []);\n\n\tconst validation: StepValidation = useMemo(\n\t\t() => ({ ...deriveValidation(value), ...validationOverride }),\n\t\t[value, validationOverride],\n\t);\n\n\tconst ctx = useMemo<AgentBuilderContextShape>(\n\t\t() => ({\n\t\t\tvalue,\n\t\t\tpatch,\n\t\t\tupdateField,\n\t\t\tremoveReference,\n\t\t\tmentionResetKey,\n\t\t\tinsertMention,\n\t\t\tregisterMentionField,\n\t\t\tnotifyMentionFocus,\n\t\t\tundoToast,\n\t\t\tundoRemoval,\n\t\t\tdismissUndo,\n\t\t\tactiveStep,\n\t\t\tactiveIndex,\n\t\t\tgoToStep,\n\t\t\tgoNext,\n\t\t\tgoPrev,\n\t\t\tisFirstStep: activeIndex === 0,\n\t\t\tisLastStep: activeIndex === STEP_KEYS.length - 1,\n\t\t\tvalidation,\n\t\t\tisActiveStepValid: validation[activeStep],\n\t\t\tavailableTools,\n\t\t\tavailableSubAgents,\n\t\t\tavailableIntents,\n\t\t\tavailableModels,\n\t\t\tapplicationType,\n\t\t\tdisableStepNavigation,\n\t\t\tonCreateSubAgent,\n\t\t\tregisterSubAgentCreator,\n\t\t\trequestCreateSubAgent,\n\t\t\tonFetchSubAgent,\n\t\t\tonUpdateSubAgent,\n\t\t\tonImproveSubAgent,\n\t\t}),\n\t\t[\n\t\t\tvalue,\n\t\t\tpatch,\n\t\t\tupdateField,\n\t\t\tremoveReference,\n\t\t\tmentionResetKey,\n\t\t\tinsertMention,\n\t\t\tregisterMentionField,\n\t\t\tnotifyMentionFocus,\n\t\t\tundoToast,\n\t\t\tundoRemoval,\n\t\t\tdismissUndo,\n\t\t\tactiveStep,\n\t\t\tactiveIndex,\n\t\t\tgoToStep,\n\t\t\tgoNext,\n\t\t\tgoPrev,\n\t\t\tvalidation,\n\t\t\tavailableTools,\n\t\t\tavailableSubAgents,\n\t\t\tavailableIntents,\n\t\t\tavailableModels,\n\t\t\tapplicationType,\n\t\t\tdisableStepNavigation,\n\t\t\tonCreateSubAgent,\n\t\t\tregisterSubAgentCreator,\n\t\t\trequestCreateSubAgent,\n\t\t\tonFetchSubAgent,\n\t\t\tonUpdateSubAgent,\n\t\t\tonImproveSubAgent,\n\t\t],\n\t);\n\n\treturn (\n\t\t<AgentBuilderContext.Provider value={ctx}>\n\t\t\t{children}\n\t\t</AgentBuilderContext.Provider>\n\t);\n};\n"],"names":["AgentBuilderContext","React","useAgentBuilderContext","ctx","useContext","deriveValidation","value","triggerValid","AGENT_CHAR_LIMITS","AgentBuilderProvider","onChange","controlledStep","onStepChange","availableTools","availableSubAgents","availableIntents","availableModels","validationOverride","applicationType","disableStepNavigation","onCreateSubAgent","onFetchSubAgent","onUpdateSubAgent","onImproveSubAgent","children","internalStep","setInternalStep","useState","activeStep","activeIndex","getStepIndex","mentionResetKey","setMentionResetKey","mentionInsertersRef","useRef","lastFocusedFieldRef","registerMentionField","useCallback","fieldKey","fn","notifyMentionFocus","subAgentCreatorRef","registerSubAgentCreator","requestCreateSubAgent","insertMention","kind","id","label","inserters","undoToast","setUndoToast","undoSnapshotRef","undoIdRef","goToStep","step","goNext","next","STEP_KEYS","goPrev","prev","patch","partial","updateField","key","val","removeReference","token","tool","t","strip","text","s","k","undoRemoval","dismissUndo","validation","useMemo"],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { AgentValue } from '../AgentBuilder.model';
|
|
2
|
+
export interface AgentDraft {
|
|
3
|
+
/** Current draft value — pass straight to `<AgentBuilder value={...} />`. */
|
|
4
|
+
value: AgentValue;
|
|
5
|
+
/** Merge a partial — pass straight to `<AgentBuilder onChange={...} />`. */
|
|
6
|
+
onChange: (patch: Partial<AgentValue>) => void;
|
|
7
|
+
/** Replace the whole value (e.g. after an async edit-mode load). */
|
|
8
|
+
setValue: (value: AgentValue) => void;
|
|
9
|
+
/** Reset back to the initial value this hook was created with. */
|
|
10
|
+
reset: () => void;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* `useReducer`-based state helper for driving a controlled `<AgentBuilder />` from
|
|
14
|
+
* the consumer (e.g. merchantAdminReact) without hand-writing the patch/merge logic.
|
|
15
|
+
*
|
|
16
|
+
* The consumer remains the single source of truth — this just packages the reducer.
|
|
17
|
+
* For edit mode where the agent loads asynchronously, either key the host component
|
|
18
|
+
* on the agent id, or call `setValue` once the data arrives.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* const { value, onChange } = useAgentDraft(mapDocToAgentValue(doc));
|
|
22
|
+
* <AgentBuilder value={value} onChange={onChange} onSaveDraft={() => save(value)} ... />
|
|
23
|
+
*/
|
|
24
|
+
export declare const useAgentDraft: (initial: AgentValue) => AgentDraft;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { useRef as o, useReducer as l, useCallback as u } from "react";
|
|
2
|
+
const h = (e, t) => {
|
|
3
|
+
switch (t.type) {
|
|
4
|
+
case "patch":
|
|
5
|
+
return { ...e, ...t.patch };
|
|
6
|
+
case "set":
|
|
7
|
+
return t.value;
|
|
8
|
+
default:
|
|
9
|
+
return e;
|
|
10
|
+
}
|
|
11
|
+
}, d = (e) => {
|
|
12
|
+
const t = o(e), [c, s] = l(h, e), a = u(
|
|
13
|
+
(r) => s({ type: "patch", patch: r }),
|
|
14
|
+
[]
|
|
15
|
+
), n = u(
|
|
16
|
+
(r) => s({ type: "set", value: r }),
|
|
17
|
+
[]
|
|
18
|
+
), p = u(
|
|
19
|
+
() => s({ type: "set", value: t.current }),
|
|
20
|
+
[]
|
|
21
|
+
);
|
|
22
|
+
return { value: c, onChange: a, setValue: n, reset: p };
|
|
23
|
+
};
|
|
24
|
+
export {
|
|
25
|
+
d as useAgentDraft
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=useAgentDraft.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAgentDraft.js","sources":["../../../../../src/components/agent-builder/hooks/useAgentDraft.ts"],"sourcesContent":["import { useCallback, useReducer, useRef } from 'react';\nimport { AgentValue } from '../AgentBuilder.model';\n\ntype DraftAction =\n\t| { type: 'patch'; patch: Partial<AgentValue> }\n\t| { type: 'set'; value: AgentValue };\n\nconst reducer = (state: AgentValue, action: DraftAction): AgentValue => {\n\tswitch (action.type) {\n\t\tcase 'patch':\n\t\t\treturn { ...state, ...action.patch };\n\t\tcase 'set':\n\t\t\treturn action.value;\n\t\tdefault:\n\t\t\treturn state;\n\t}\n};\n\nexport interface AgentDraft {\n\t/** Current draft value — pass straight to `<AgentBuilder value={...} />`. */\n\tvalue: AgentValue;\n\t/** Merge a partial — pass straight to `<AgentBuilder onChange={...} />`. */\n\tonChange: (patch: Partial<AgentValue>) => void;\n\t/** Replace the whole value (e.g. after an async edit-mode load). */\n\tsetValue: (value: AgentValue) => void;\n\t/** Reset back to the initial value this hook was created with. */\n\treset: () => void;\n}\n\n/**\n * `useReducer`-based state helper for driving a controlled `<AgentBuilder />` from\n * the consumer (e.g. merchantAdminReact) without hand-writing the patch/merge logic.\n *\n * The consumer remains the single source of truth — this just packages the reducer.\n * For edit mode where the agent loads asynchronously, either key the host component\n * on the agent id, or call `setValue` once the data arrives.\n *\n * @example\n * const { value, onChange } = useAgentDraft(mapDocToAgentValue(doc));\n * <AgentBuilder value={value} onChange={onChange} onSaveDraft={() => save(value)} ... />\n */\nexport const useAgentDraft = (initial: AgentValue): AgentDraft => {\n\tconst initialRef = useRef(initial);\n\tconst [value, dispatch] = useReducer(reducer, initial);\n\n\tconst onChange = useCallback(\n\t\t(patch: Partial<AgentValue>) => dispatch({ type: 'patch', patch }),\n\t\t[],\n\t);\n\tconst setValue = useCallback(\n\t\t(next: AgentValue) => dispatch({ type: 'set', value: next }),\n\t\t[],\n\t);\n\tconst reset = useCallback(\n\t\t() => dispatch({ type: 'set', value: initialRef.current }),\n\t\t[],\n\t);\n\n\treturn { value, onChange, setValue, reset };\n};\n"],"names":["reducer","state","action","useAgentDraft","initial","initialRef","useRef","value","dispatch","useReducer","onChange","useCallback","patch","setValue","next","reset"],"mappings":";AAOA,MAAMA,IAAU,CAACC,GAAmBC,MAAoC;AACvE,UAAQA,EAAO,MAAA;AAAA,IACd,KAAK;AACJ,aAAO,EAAE,GAAGD,GAAO,GAAGC,EAAO,MAAA;AAAA,IAC9B,KAAK;AACJ,aAAOA,EAAO;AAAA,IACf;AACC,aAAOD;AAAA,EAAA;AAEV,GAyBaE,IAAgB,CAACC,MAAoC;AACjE,QAAMC,IAAaC,EAAOF,CAAO,GAC3B,CAACG,GAAOC,CAAQ,IAAIC,EAAWT,GAASI,CAAO,GAE/CM,IAAWC;AAAA,IAChB,CAACC,MAA+BJ,EAAS,EAAE,MAAM,SAAS,OAAAI,GAAO;AAAA,IACjE,CAAA;AAAA,EAAC,GAEIC,IAAWF;AAAA,IAChB,CAACG,MAAqBN,EAAS,EAAE,MAAM,OAAO,OAAOM,GAAM;AAAA,IAC3D,CAAA;AAAA,EAAC,GAEIC,IAAQJ;AAAA,IACb,MAAMH,EAAS,EAAE,MAAM,OAAO,OAAOH,EAAW,SAAS;AAAA,IACzD,CAAA;AAAA,EAAC;AAGF,SAAO,EAAE,OAAAE,GAAO,UAAAG,GAAU,UAAAG,GAAU,OAAAE,EAAA;AACrC;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { AgentBuilder } from './AgentBuilder';
|
|
2
|
+
export { useAgentDraft } from './hooks/useAgentDraft';
|
|
3
|
+
export type { AgentDraft } from './hooks/useAgentDraft';
|
|
4
|
+
export { AGENT_CHAR_LIMITS } from './constants/charLimits';
|
|
5
|
+
export { STEP_DEFINITIONS } from './constants/steps';
|
|
6
|
+
export { buildAgentMentionItems, editorDocToInstructions, instructionsToEditorHtml, } from './utils/mentionSerialization';
|
|
7
|
+
export type { AgentBuilderProps, AgentBuilderConfig, AgentValue, AgentStatus as AgentBuilderStatus, StepKey, StepValidation, TriggerMode, AgentTriggerValue, AgentHandoverConfig, HandoverMethod, AgentTool, SubAgentRef, SubAgentDraft, IntentOption, ModelOption, } from './AgentBuilder.model';
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { jsxs as r, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { AiTextArea as m } from "../components/AiTextArea.js";
|
|
3
|
+
import { StepSectionHeader as l } from "../components/StepSectionHeader.js";
|
|
4
|
+
import { AGENT_CHAR_LIMITS as n } from "../constants/charLimits.js";
|
|
5
|
+
import { STEP_DEFINITIONS as p } from "../constants/steps.js";
|
|
6
|
+
import { useAgentBuilderContext as s } from "../context/AgentBuilderContext.js";
|
|
7
|
+
import { Input as d } from "../../input/Input.js";
|
|
8
|
+
const o = p[0], f = () => {
|
|
9
|
+
const { value: i, updateField: a } = s();
|
|
10
|
+
return /* @__PURE__ */ r("div", { className: "bik-agent-step bik-agent-step--about", children: [
|
|
11
|
+
/* @__PURE__ */ e(l, { title: o.title, helper: o.helper }),
|
|
12
|
+
/* @__PURE__ */ e("div", { style: { marginBottom: 20 }, children: /* @__PURE__ */ e(
|
|
13
|
+
d,
|
|
14
|
+
{
|
|
15
|
+
"data-test": "agent-name",
|
|
16
|
+
labelText: "Agent name",
|
|
17
|
+
labelTextBold: !0,
|
|
18
|
+
placeholder: "Enter agent name",
|
|
19
|
+
value: i.name,
|
|
20
|
+
maxCharLimit: n.name,
|
|
21
|
+
maxCharLimitPosition: "TOP",
|
|
22
|
+
maxCharStyle: { fontSize: 12, lineHeight: "16px" },
|
|
23
|
+
onChangeText: (t) => a("name", t)
|
|
24
|
+
}
|
|
25
|
+
) }),
|
|
26
|
+
/* @__PURE__ */ e(
|
|
27
|
+
m,
|
|
28
|
+
{
|
|
29
|
+
"data-test": "agent-description",
|
|
30
|
+
label: "What it does",
|
|
31
|
+
value: i.description,
|
|
32
|
+
onChange: (t) => a("description", t),
|
|
33
|
+
maxLength: n.description,
|
|
34
|
+
placeholder: "Enter description",
|
|
35
|
+
minHeight: "200px"
|
|
36
|
+
}
|
|
37
|
+
)
|
|
38
|
+
] });
|
|
39
|
+
};
|
|
40
|
+
export {
|
|
41
|
+
f as Step1About
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=Step1About.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Step1About.js","sources":["../../../../../src/components/agent-builder/steps/Step1About.tsx"],"sourcesContent":["import React from 'react';\nimport { Input } from '@src/components/input';\nimport { AiTextArea } from '../components/AiTextArea';\nimport { StepSectionHeader } from '../components/StepSectionHeader';\nimport { AGENT_CHAR_LIMITS } from '../constants/charLimits';\nimport { STEP_DEFINITIONS } from '../constants/steps';\nimport { useAgentBuilderContext } from '../context/AgentBuilderContext';\n\nconst STEP = STEP_DEFINITIONS[0];\n\nexport const Step1About: React.FC = () => {\n\tconst { value, updateField } = useAgentBuilderContext();\n\n\treturn (\n\t\t<div className=\"bik-agent-step bik-agent-step--about\">\n\t\t\t<StepSectionHeader title={STEP.title} helper={STEP.helper} />\n\n\t\t\t<div style={{ marginBottom: 20 }}>\n\t\t\t\t<Input\n\t\t\t\t\tdata-test=\"agent-name\"\n\t\t\t\t\tlabelText=\"Agent name\"\n\t\t\t\t\tlabelTextBold\n\t\t\t\t\tplaceholder=\"Enter agent name\"\n\t\t\t\t\tvalue={value.name}\n\t\t\t\t\tmaxCharLimit={AGENT_CHAR_LIMITS.name}\n\t\t\t\t\tmaxCharLimitPosition=\"TOP\"\n\t\t\t\t\tmaxCharStyle={{ fontSize: 12, lineHeight: '16px' }}\n\t\t\t\t\tonChangeText={(text) => updateField('name', text)}\n\t\t\t\t/>\n\t\t\t</div>\n\n\t\t\t<AiTextArea\n\t\t\t\tdata-test=\"agent-description\"\n\t\t\t\tlabel=\"What it does\"\n\t\t\t\tvalue={value.description}\n\t\t\t\tonChange={(text) => updateField('description', text)}\n\t\t\t\tmaxLength={AGENT_CHAR_LIMITS.description}\n\t\t\t\tplaceholder=\"Enter description\"\n\t\t\t\tminHeight=\"200px\"\n\t\t\t/>\n\t\t</div>\n\t);\n};\n"],"names":["STEP","STEP_DEFINITIONS","Step1About","value","updateField","useAgentBuilderContext","jsxs","jsx","StepSectionHeader","Input","AGENT_CHAR_LIMITS","text","AiTextArea"],"mappings":";;;;;;;AAQA,MAAMA,IAAOC,EAAiB,CAAC,GAElBC,IAAuB,MAAM;AACzC,QAAM,EAAE,OAAAC,GAAO,aAAAC,EAAA,IAAgBC,EAAA;AAE/B,SACC,gBAAAC,EAAC,OAAA,EAAI,WAAU,wCACd,UAAA;AAAA,IAAA,gBAAAC,EAACC,KAAkB,OAAOR,EAAK,OAAO,QAAQA,EAAK,QAAQ;AAAA,sBAE1D,OAAA,EAAI,OAAO,EAAE,cAAc,MAC3B,UAAA,gBAAAO;AAAA,MAACE;AAAA,MAAA;AAAA,QACA,aAAU;AAAA,QACV,WAAU;AAAA,QACV,eAAa;AAAA,QACb,aAAY;AAAA,QACZ,OAAON,EAAM;AAAA,QACb,cAAcO,EAAkB;AAAA,QAChC,sBAAqB;AAAA,QACrB,cAAc,EAAE,UAAU,IAAI,YAAY,OAAA;AAAA,QAC1C,cAAc,CAACC,MAASP,EAAY,QAAQO,CAAI;AAAA,MAAA;AAAA,IAAA,GAElD;AAAA,IAEA,gBAAAJ;AAAA,MAACK;AAAA,MAAA;AAAA,QACA,aAAU;AAAA,QACV,OAAM;AAAA,QACN,OAAOT,EAAM;AAAA,QACb,UAAU,CAACQ,MAASP,EAAY,eAAeO,CAAI;AAAA,QACnD,WAAWD,EAAkB;AAAA,QAC7B,aAAY;AAAA,QACZ,WAAU;AAAA,MAAA;AAAA,IAAA;AAAA,EACX,GACD;AAEF;"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import { jsxs as i, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import A from "../../../assets/icons/cross.svg.js";
|
|
3
|
+
import w from "../../../assets/icons/plus.svg.js";
|
|
4
|
+
import T from "react";
|
|
5
|
+
import { RadioButton as g } from "../../radioButton/RadioButton.js";
|
|
6
|
+
import { TitleSmall as l, BodyCaption as d, BodySecondary as f } from "../../TypographyStyle.js";
|
|
7
|
+
import { COLORS as o } from "../../../constants/Theme.js";
|
|
8
|
+
import { CardRow as k, RadioCard as C, RadioCardText as v, FieldBlock as x, ChipWrap as R, IntentChip as B, ChipCloseButton as O, AddChipButton as D } from "../AgentBuilder.styled.js";
|
|
9
|
+
import { AiTextArea as E } from "../components/AiTextArea.js";
|
|
10
|
+
import { StepSectionHeader as H } from "../components/StepSectionHeader.js";
|
|
11
|
+
import { AGENT_CHAR_LIMITS as M } from "../constants/charLimits.js";
|
|
12
|
+
import { STEP_DEFINITIONS as F } from "../constants/steps.js";
|
|
13
|
+
import { useAgentBuilderContext as L } from "../context/AgentBuilderContext.js";
|
|
14
|
+
import { Dropdown as N } from "../../dropdown/Dropdown.js";
|
|
15
|
+
const y = F[1], Z = () => {
|
|
16
|
+
const { value: S, patch: r, availableIntents: m } = L(), { trigger: n } = S, [_, h] = T.useState(!1), a = (e) => r({ trigger: { ...n, mode: e } }), b = (e) => {
|
|
17
|
+
n.intents.includes(e) || r({
|
|
18
|
+
trigger: { ...n, intents: [...n.intents, e] }
|
|
19
|
+
}), h(!1);
|
|
20
|
+
}, I = (e) => r({
|
|
21
|
+
trigger: {
|
|
22
|
+
...n,
|
|
23
|
+
intents: n.intents.filter((c) => c !== e)
|
|
24
|
+
}
|
|
25
|
+
}), u = (e) => m.find((c) => c.value === e)?.label ?? e, s = m.filter((e) => !n.intents.includes(e.value)).map((e) => ({ label: e.label, value: e.value }));
|
|
26
|
+
return /* @__PURE__ */ i("div", { children: [
|
|
27
|
+
/* @__PURE__ */ t(H, { title: y.title, helper: y.helper }),
|
|
28
|
+
/* @__PURE__ */ i(k, { children: [
|
|
29
|
+
/* @__PURE__ */ i(
|
|
30
|
+
C,
|
|
31
|
+
{
|
|
32
|
+
"data-test": "trigger-mode-manifest",
|
|
33
|
+
selected: n.mode === "manifest_intent",
|
|
34
|
+
onClick: () => a("manifest_intent"),
|
|
35
|
+
children: [
|
|
36
|
+
/* @__PURE__ */ t(
|
|
37
|
+
g,
|
|
38
|
+
{
|
|
39
|
+
isActive: n.mode === "manifest_intent",
|
|
40
|
+
onValueChange: () => a("manifest_intent"),
|
|
41
|
+
skipSelectingOff: !0,
|
|
42
|
+
activeColor: o.content.brand
|
|
43
|
+
}
|
|
44
|
+
),
|
|
45
|
+
/* @__PURE__ */ i(v, { children: [
|
|
46
|
+
/* @__PURE__ */ t(l, { color: o.content.primary, children: "Manifest intent" }),
|
|
47
|
+
/* @__PURE__ */ t(d, { color: o.content.secondary, children: "Manifest's AI classifier routes conversations automatically — no keywords needed." })
|
|
48
|
+
] })
|
|
49
|
+
]
|
|
50
|
+
}
|
|
51
|
+
),
|
|
52
|
+
/* @__PURE__ */ i(
|
|
53
|
+
C,
|
|
54
|
+
{
|
|
55
|
+
"data-test": "trigger-mode-custom",
|
|
56
|
+
selected: n.mode === "custom_intent",
|
|
57
|
+
onClick: () => a("custom_intent"),
|
|
58
|
+
children: [
|
|
59
|
+
/* @__PURE__ */ t(
|
|
60
|
+
g,
|
|
61
|
+
{
|
|
62
|
+
isActive: n.mode === "custom_intent",
|
|
63
|
+
onValueChange: () => a("custom_intent"),
|
|
64
|
+
skipSelectingOff: !0,
|
|
65
|
+
activeColor: o.content.brand
|
|
66
|
+
}
|
|
67
|
+
),
|
|
68
|
+
/* @__PURE__ */ i(v, { children: [
|
|
69
|
+
/* @__PURE__ */ t(l, { color: o.content.primary, children: "Custom intent" }),
|
|
70
|
+
/* @__PURE__ */ t(d, { color: o.content.secondary, children: "Define your own trigger — use exact phrases or describe the customer's intent." })
|
|
71
|
+
] })
|
|
72
|
+
]
|
|
73
|
+
}
|
|
74
|
+
)
|
|
75
|
+
] }),
|
|
76
|
+
n.mode === "manifest_intent" ? /* @__PURE__ */ i(x, { children: [
|
|
77
|
+
/* @__PURE__ */ t(l, { color: o.content.primary, children: "If customer talks about" }),
|
|
78
|
+
/* @__PURE__ */ i(R, { children: [
|
|
79
|
+
n.intents.map((e) => /* @__PURE__ */ i(B, { "data-test": `intent-chip-${e}`, children: [
|
|
80
|
+
/* @__PURE__ */ t(f, { color: o.content.primary, children: u(e) }),
|
|
81
|
+
/* @__PURE__ */ t(
|
|
82
|
+
O,
|
|
83
|
+
{
|
|
84
|
+
onClick: () => I(e),
|
|
85
|
+
"aria-label": `Remove ${u(e)}`,
|
|
86
|
+
children: /* @__PURE__ */ t(
|
|
87
|
+
A,
|
|
88
|
+
{
|
|
89
|
+
width: 14,
|
|
90
|
+
height: 14,
|
|
91
|
+
color: o.content.secondary
|
|
92
|
+
}
|
|
93
|
+
)
|
|
94
|
+
}
|
|
95
|
+
)
|
|
96
|
+
] }, e)),
|
|
97
|
+
_ && s.length > 0 ? /* @__PURE__ */ t(
|
|
98
|
+
N,
|
|
99
|
+
{
|
|
100
|
+
"data-test": "intent-add-dropdown",
|
|
101
|
+
size: "small",
|
|
102
|
+
width: "200px",
|
|
103
|
+
placeHolder: "Select intent",
|
|
104
|
+
isSearchable: !0,
|
|
105
|
+
options: s,
|
|
106
|
+
onSelect: (e) => {
|
|
107
|
+
const p = (Array.isArray(e) ? e[0] : e)?.value;
|
|
108
|
+
p && b(p);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
) : s.length > 0 && /* @__PURE__ */ i(
|
|
112
|
+
D,
|
|
113
|
+
{
|
|
114
|
+
"data-test": "intent-add-button",
|
|
115
|
+
onClick: () => h(!0),
|
|
116
|
+
children: [
|
|
117
|
+
/* @__PURE__ */ t(
|
|
118
|
+
w,
|
|
119
|
+
{
|
|
120
|
+
width: 16,
|
|
121
|
+
height: 16,
|
|
122
|
+
color: o.content.secondary
|
|
123
|
+
}
|
|
124
|
+
),
|
|
125
|
+
/* @__PURE__ */ t(f, { color: o.content.secondary, children: "Intent" })
|
|
126
|
+
]
|
|
127
|
+
}
|
|
128
|
+
)
|
|
129
|
+
] }),
|
|
130
|
+
/* @__PURE__ */ t(d, { color: o.content.secondary, children: "This agent takes over from your main assistant when this intent is detected. The changeover is automatic when you go live." })
|
|
131
|
+
] }) : /* @__PURE__ */ t(
|
|
132
|
+
E,
|
|
133
|
+
{
|
|
134
|
+
"data-test": "custom-intent",
|
|
135
|
+
label: "Describe the trigger",
|
|
136
|
+
value: n.custom_intent ?? "",
|
|
137
|
+
onChange: (e) => r({ trigger: { ...n, custom_intent: e } }),
|
|
138
|
+
maxLength: M.custom_intent,
|
|
139
|
+
placeholder: "e.g. The customer wants to cancel an order they placed.",
|
|
140
|
+
minHeight: "120px"
|
|
141
|
+
}
|
|
142
|
+
)
|
|
143
|
+
] });
|
|
144
|
+
};
|
|
145
|
+
export {
|
|
146
|
+
Z as Step2WhenItStepsIn
|
|
147
|
+
};
|
|
148
|
+
//# sourceMappingURL=Step2WhenItStepsIn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Step2WhenItStepsIn.js","sources":["../../../../../src/components/agent-builder/steps/Step2WhenItStepsIn.tsx"],"sourcesContent":["import CrossIcon from '@src/assets/icons/cross.svg';\nimport PlusIcon from '@src/assets/icons/plus.svg';\nimport React from 'react';\nimport { Dropdown } from '@src/components/dropdown';\nimport { SingleOption } from '@src/components/dropdown/type';\nimport { RadioButton } from '@src/components/radioButton/RadioButton';\nimport {\n\tBodyCaption,\n\tBodySecondary,\n\tTitleSmall,\n} from '@src/components/TypographyStyle';\nimport { COLORS } from '@src/constants/Theme';\nimport { TriggerMode } from '../AgentBuilder.model';\nimport {\n\tAddChipButton,\n\tCardRow,\n\tChipCloseButton,\n\tChipWrap,\n\tFieldBlock,\n\tIntentChip,\n\tRadioCard,\n\tRadioCardText,\n} from '../AgentBuilder.styled';\nimport { AiTextArea } from '../components/AiTextArea';\nimport { StepSectionHeader } from '../components/StepSectionHeader';\nimport { AGENT_CHAR_LIMITS } from '../constants/charLimits';\nimport { STEP_DEFINITIONS } from '../constants/steps';\nimport { useAgentBuilderContext } from '../context/AgentBuilderContext';\n\nconst STEP = STEP_DEFINITIONS[1];\n\nexport const Step2WhenItStepsIn: React.FC = () => {\n\tconst { value, patch, availableIntents } = useAgentBuilderContext();\n\tconst { trigger } = value;\n\tconst [adding, setAdding] = React.useState(false);\n\n\tconst setMode = (mode: TriggerMode) =>\n\t\tpatch({ trigger: { ...trigger, mode } });\n\n\tconst addIntent = (intentValue: string) => {\n\t\tif (!trigger.intents.includes(intentValue)) {\n\t\t\tpatch({\n\t\t\t\ttrigger: { ...trigger, intents: [...trigger.intents, intentValue] },\n\t\t\t});\n\t\t}\n\t\tsetAdding(false);\n\t};\n\n\tconst removeIntent = (intentValue: string) =>\n\t\tpatch({\n\t\t\ttrigger: {\n\t\t\t\t...trigger,\n\t\t\t\tintents: trigger.intents.filter((i) => i !== intentValue),\n\t\t\t},\n\t\t});\n\n\tconst labelFor = (v: string) =>\n\t\tavailableIntents.find((o) => o.value === v)?.label ?? v;\n\n\tconst remainingOptions: SingleOption[] = availableIntents\n\t\t.filter((o) => !trigger.intents.includes(o.value))\n\t\t.map((o) => ({ label: o.label, value: o.value }));\n\n\treturn (\n\t\t<div>\n\t\t\t<StepSectionHeader title={STEP.title} helper={STEP.helper} />\n\n\t\t\t<CardRow>\n\t\t\t\t<RadioCard\n\t\t\t\t\tdata-test=\"trigger-mode-manifest\"\n\t\t\t\t\tselected={trigger.mode === 'manifest_intent'}\n\t\t\t\t\tonClick={() => setMode('manifest_intent')}\n\t\t\t\t>\n\t\t\t\t\t<RadioButton\n\t\t\t\t\t\tisActive={trigger.mode === 'manifest_intent'}\n\t\t\t\t\t\tonValueChange={() => setMode('manifest_intent')}\n\t\t\t\t\t\tskipSelectingOff\n\t\t\t\t\t\tactiveColor={COLORS.content.brand}\n\t\t\t\t\t/>\n\t\t\t\t\t<RadioCardText>\n\t\t\t\t\t\t<TitleSmall color={COLORS.content.primary}>\n\t\t\t\t\t\t\tManifest intent\n\t\t\t\t\t\t</TitleSmall>\n\t\t\t\t\t\t<BodyCaption color={COLORS.content.secondary}>\n\t\t\t\t\t\t\tManifest's AI classifier routes conversations automatically —\n\t\t\t\t\t\t\tno keywords needed.\n\t\t\t\t\t\t</BodyCaption>\n\t\t\t\t\t</RadioCardText>\n\t\t\t\t</RadioCard>\n\n\t\t\t\t<RadioCard\n\t\t\t\t\tdata-test=\"trigger-mode-custom\"\n\t\t\t\t\tselected={trigger.mode === 'custom_intent'}\n\t\t\t\t\tonClick={() => setMode('custom_intent')}\n\t\t\t\t>\n\t\t\t\t\t<RadioButton\n\t\t\t\t\t\tisActive={trigger.mode === 'custom_intent'}\n\t\t\t\t\t\tonValueChange={() => setMode('custom_intent')}\n\t\t\t\t\t\tskipSelectingOff\n\t\t\t\t\t\tactiveColor={COLORS.content.brand}\n\t\t\t\t\t/>\n\t\t\t\t\t<RadioCardText>\n\t\t\t\t\t\t<TitleSmall color={COLORS.content.primary}>\n\t\t\t\t\t\t\tCustom intent\n\t\t\t\t\t\t</TitleSmall>\n\t\t\t\t\t\t<BodyCaption color={COLORS.content.secondary}>\n\t\t\t\t\t\t\tDefine your own trigger — use exact phrases or describe the\n\t\t\t\t\t\t\tcustomer's intent.\n\t\t\t\t\t\t</BodyCaption>\n\t\t\t\t\t</RadioCardText>\n\t\t\t\t</RadioCard>\n\t\t\t</CardRow>\n\n\t\t\t{trigger.mode === 'manifest_intent' ? (\n\t\t\t\t<FieldBlock>\n\t\t\t\t\t<TitleSmall color={COLORS.content.primary}>\n\t\t\t\t\t\tIf customer talks about\n\t\t\t\t\t</TitleSmall>\n\t\t\t\t\t<ChipWrap>\n\t\t\t\t\t\t{trigger.intents.map((intent) => (\n\t\t\t\t\t\t\t<IntentChip key={intent} data-test={`intent-chip-${intent}`}>\n\t\t\t\t\t\t\t\t<BodySecondary color={COLORS.content.primary}>\n\t\t\t\t\t\t\t\t\t{labelFor(intent)}\n\t\t\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t\t\t\t<ChipCloseButton\n\t\t\t\t\t\t\t\t\tonClick={() => removeIntent(intent)}\n\t\t\t\t\t\t\t\t\taria-label={`Remove ${labelFor(intent)}`}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<CrossIcon\n\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ChipCloseButton>\n\t\t\t\t\t\t\t</IntentChip>\n\t\t\t\t\t\t))}\n\n\t\t\t\t\t\t{adding && remainingOptions.length > 0 ? (\n\t\t\t\t\t\t\t<Dropdown\n\t\t\t\t\t\t\t\tdata-test=\"intent-add-dropdown\"\n\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\twidth=\"200px\"\n\t\t\t\t\t\t\t\tplaceHolder=\"Select intent\"\n\t\t\t\t\t\t\t\tisSearchable\n\t\t\t\t\t\t\t\toptions={remainingOptions}\n\t\t\t\t\t\t\t\tonSelect={(opt) => {\n\t\t\t\t\t\t\t\t\tconst single = Array.isArray(opt) ? opt[0] : opt;\n\t\t\t\t\t\t\t\t\tconst v = (single as SingleOption)?.value;\n\t\t\t\t\t\t\t\t\tif (v) {\n\t\t\t\t\t\t\t\t\t\taddIntent(v);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\tremainingOptions.length > 0 && (\n\t\t\t\t\t\t\t\t<AddChipButton\n\t\t\t\t\t\t\t\t\tdata-test=\"intent-add-button\"\n\t\t\t\t\t\t\t\t\tonClick={() => setAdding(true)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<PlusIcon\n\t\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<BodySecondary color={COLORS.content.secondary}>\n\t\t\t\t\t\t\t\t\t\tIntent\n\t\t\t\t\t\t\t\t\t</BodySecondary>\n\t\t\t\t\t\t\t\t</AddChipButton>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t)}\n\t\t\t\t\t</ChipWrap>\n\t\t\t\t\t<BodyCaption color={COLORS.content.secondary}>\n\t\t\t\t\t\tThis agent takes over from your main assistant when this intent is\n\t\t\t\t\t\tdetected. The changeover is automatic when you go live.\n\t\t\t\t\t</BodyCaption>\n\t\t\t\t</FieldBlock>\n\t\t\t) : (\n\t\t\t\t<AiTextArea\n\t\t\t\t\tdata-test=\"custom-intent\"\n\t\t\t\t\tlabel=\"Describe the trigger\"\n\t\t\t\t\tvalue={trigger.custom_intent ?? ''}\n\t\t\t\t\tonChange={(text) =>\n\t\t\t\t\t\tpatch({ trigger: { ...trigger, custom_intent: text } })\n\t\t\t\t\t}\n\t\t\t\t\tmaxLength={AGENT_CHAR_LIMITS.custom_intent}\n\t\t\t\t\tplaceholder=\"e.g. The customer wants to cancel an order they placed.\"\n\t\t\t\t\tminHeight=\"120px\"\n\t\t\t\t/>\n\t\t\t)}\n\t\t</div>\n\t);\n};\n"],"names":["STEP","STEP_DEFINITIONS","Step2WhenItStepsIn","value","patch","availableIntents","useAgentBuilderContext","trigger","adding","setAdding","React","setMode","mode","addIntent","intentValue","removeIntent","i","labelFor","v","o","remainingOptions","jsx","StepSectionHeader","CardRow","jsxs","RadioCard","RadioButton","COLORS","RadioCardText","TitleSmall","BodyCaption","FieldBlock","ChipWrap","intent","IntentChip","BodySecondary","ChipCloseButton","CrossIcon","Dropdown","opt","AddChipButton","PlusIcon","AiTextArea","text","AGENT_CHAR_LIMITS"],"mappings":"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"}
|