@oxy.so/bloom 6.3.0 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/docs/adoption-matrix.mdx +20 -17
- package/docs/agent-avatar.mdx +24 -0
- package/docs/agent-creator.mdx +50 -0
- package/docs/button.mdx +1 -1
- package/docs/design-tokens.mdx +8 -0
- package/docs/dialog.mdx +6 -0
- package/docs/migrating-to-1.0.mdx +3 -3
- package/docs/multi-agent-chat.mdx +69 -0
- package/docs/page-header.mdx +18 -0
- package/docs/project-board.mdx +35 -0
- package/docs/segmented-control.mdx +2 -0
- package/docs/settings-modal.mdx +2 -0
- package/docs/sidebar.mdx +8 -0
- package/docs/stat-widgets.mdx +3 -4
- package/lib/commonjs/agent-avatar/AgentAvatar.js +214 -0
- package/lib/commonjs/agent-avatar/AgentAvatar.js.map +1 -0
- package/lib/commonjs/agent-avatar/AgentFace.js +26 -0
- package/lib/commonjs/agent-avatar/AgentFace.js.map +1 -0
- package/lib/commonjs/agent-avatar/SvgDrawing.js +207 -0
- package/lib/commonjs/agent-avatar/SvgDrawing.js.map +1 -0
- package/lib/commonjs/agent-avatar/artwork.js +148 -0
- package/lib/commonjs/agent-avatar/artwork.js.map +1 -0
- package/lib/commonjs/agent-avatar/attention.js +79 -0
- package/lib/commonjs/agent-avatar/attention.js.map +1 -0
- package/lib/commonjs/agent-avatar/blink.js +46 -0
- package/lib/commonjs/agent-avatar/blink.js.map +1 -0
- package/lib/commonjs/agent-avatar/context.js +10 -0
- package/lib/commonjs/agent-avatar/context.js.map +1 -0
- package/lib/commonjs/agent-avatar/drawing.js +234 -0
- package/lib/commonjs/agent-avatar/drawing.js.map +1 -0
- package/lib/commonjs/agent-avatar/entrance.js +32 -0
- package/lib/commonjs/agent-avatar/entrance.js.map +1 -0
- package/lib/commonjs/agent-avatar/face.js +403 -0
- package/lib/commonjs/agent-avatar/face.js.map +1 -0
- package/lib/commonjs/agent-avatar/fold-outlines.js +43 -0
- package/lib/commonjs/agent-avatar/fold-outlines.js.map +1 -0
- package/lib/commonjs/agent-avatar/fold.js +322 -0
- package/lib/commonjs/agent-avatar/fold.js.map +1 -0
- package/lib/commonjs/agent-avatar/grain.js +9 -0
- package/lib/commonjs/agent-avatar/grain.js.map +1 -0
- package/lib/commonjs/agent-avatar/index.js +146 -0
- package/lib/commonjs/agent-avatar/index.js.map +1 -0
- package/lib/commonjs/agent-avatar/messages.js +11 -0
- package/lib/commonjs/agent-avatar/messages.js.map +1 -0
- package/lib/commonjs/agent-avatar/model.js +429 -0
- package/lib/commonjs/agent-avatar/model.js.map +1 -0
- package/lib/commonjs/agent-avatar/shape-morph.js +163 -0
- package/lib/commonjs/agent-avatar/shape-morph.js.map +1 -0
- package/lib/commonjs/{dot-grid-meter → agent-avatar}/types.js.map +1 -1
- package/lib/commonjs/agent-avatar/wander.js +64 -0
- package/lib/commonjs/agent-avatar/wander.js.map +1 -0
- package/lib/commonjs/agent-avatar/working.js +28 -0
- package/lib/commonjs/agent-avatar/working.js.map +1 -0
- package/lib/commonjs/agent-chat/AgentChatMessage.js +21 -0
- package/lib/commonjs/agent-chat/AgentChatMessage.js.map +1 -1
- package/lib/commonjs/agent-creator/AgentCreator.js +32 -0
- package/lib/commonjs/agent-creator/AgentCreator.js.map +1 -0
- package/lib/commonjs/agent-creator/AgentCreator.web.js +32 -0
- package/lib/commonjs/agent-creator/AgentCreator.web.js.map +1 -0
- package/lib/commonjs/agent-creator/AgentCreatorBase.js +319 -0
- package/lib/commonjs/agent-creator/AgentCreatorBase.js.map +1 -0
- package/lib/commonjs/agent-creator/AgentPreferencesPanel.js +260 -0
- package/lib/commonjs/agent-creator/AgentPreferencesPanel.js.map +1 -0
- package/lib/commonjs/agent-creator/CustomColorPicker.js +374 -0
- package/lib/commonjs/agent-creator/CustomColorPicker.js.map +1 -0
- package/lib/commonjs/agent-creator/EmotionPicker.js +179 -0
- package/lib/commonjs/agent-creator/EmotionPicker.js.map +1 -0
- package/lib/commonjs/agent-creator/GlossArt.js +210 -0
- package/lib/commonjs/agent-creator/GlossArt.js.map +1 -0
- package/lib/commonjs/agent-creator/ScrollSurface.js +135 -0
- package/lib/commonjs/agent-creator/ScrollSurface.js.map +1 -0
- package/lib/commonjs/agent-creator/ShapeArc.js +222 -0
- package/lib/commonjs/agent-creator/ShapeArc.js.map +1 -0
- package/lib/commonjs/agent-creator/constants.js +68 -0
- package/lib/commonjs/agent-creator/constants.js.map +1 -0
- package/lib/commonjs/agent-creator/context.js +30 -0
- package/lib/commonjs/agent-creator/context.js.map +1 -0
- package/lib/commonjs/agent-creator/index.js +39 -0
- package/lib/commonjs/agent-creator/index.js.map +1 -0
- package/lib/commonjs/agent-creator/index.web.js +39 -0
- package/lib/commonjs/agent-creator/index.web.js.map +1 -0
- package/lib/commonjs/agent-creator/messages.js +104 -0
- package/lib/commonjs/agent-creator/messages.js.map +1 -0
- package/lib/commonjs/agent-creator/rainbow-artwork.js +10 -0
- package/lib/commonjs/agent-creator/rainbow-artwork.js.map +1 -0
- package/lib/commonjs/agent-creator/shared.js +83 -0
- package/lib/commonjs/agent-creator/shared.js.map +1 -0
- package/lib/commonjs/agent-creator/types.js +6 -0
- package/lib/{module/dot-grid-meter → commonjs/agent-creator}/types.js.map +1 -1
- package/lib/commonjs/agent-creator/use-agent-voices.js +59 -0
- package/lib/commonjs/agent-creator/use-agent-voices.js.map +1 -0
- package/lib/commonjs/agent-creator/use-track-events.js +43 -0
- package/lib/commonjs/agent-creator/use-track-events.js.map +1 -0
- package/lib/commonjs/button/CloseButton.js +4 -1
- package/lib/commonjs/button/CloseButton.js.map +1 -1
- package/lib/commonjs/chip/Chip.js +28 -15
- package/lib/commonjs/chip/Chip.js.map +1 -1
- package/lib/commonjs/design-tokens/component-roles.js +94 -0
- package/lib/commonjs/design-tokens/component-roles.js.map +1 -0
- package/lib/commonjs/design-tokens/tailwind-preset.js +25 -5
- package/lib/commonjs/design-tokens/tailwind-preset.js.map +1 -1
- package/lib/commonjs/design-tokens/theme-css.js +18 -0
- package/lib/commonjs/design-tokens/theme-css.js.map +1 -1
- package/lib/commonjs/design-tokens/theme.css +284 -0
- package/lib/commonjs/dialog/Dialog.js +28 -14
- package/lib/commonjs/dialog/Dialog.js.map +1 -1
- package/lib/commonjs/dialog/Dialog.web.js +24 -15
- package/lib/commonjs/dialog/Dialog.web.js.map +1 -1
- package/lib/commonjs/dialog/DialogHeader.js +1 -1
- package/lib/commonjs/hooks/use-accessible-name-warning.js +2 -2
- package/lib/commonjs/index.js +143 -103
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +143 -103
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/locale/translations/ar.js +363 -0
- package/lib/commonjs/locale/translations/ar.js.map +1 -1
- package/lib/commonjs/locale/translations/bn.js +351 -0
- package/lib/commonjs/locale/translations/bn.js.map +1 -1
- package/lib/commonjs/locale/translations/ca.js +355 -0
- package/lib/commonjs/locale/translations/ca.js.map +1 -1
- package/lib/commonjs/locale/translations/de.js +355 -0
- package/lib/commonjs/locale/translations/de.js.map +1 -1
- package/lib/commonjs/locale/translations/es.js +355 -0
- package/lib/commonjs/locale/translations/es.js.map +1 -1
- package/lib/commonjs/locale/translations/fr.js +355 -0
- package/lib/commonjs/locale/translations/fr.js.map +1 -1
- package/lib/commonjs/locale/translations/hi.js +354 -0
- package/lib/commonjs/locale/translations/hi.js.map +1 -1
- package/lib/commonjs/locale/translations/id.js +354 -0
- package/lib/commonjs/locale/translations/id.js.map +1 -1
- package/lib/commonjs/locale/translations/it.js +355 -0
- package/lib/commonjs/locale/translations/it.js.map +1 -1
- package/lib/commonjs/locale/translations/ja.js +351 -0
- package/lib/commonjs/locale/translations/ja.js.map +1 -1
- package/lib/commonjs/locale/translations/pt.js +355 -0
- package/lib/commonjs/locale/translations/pt.js.map +1 -1
- package/lib/commonjs/locale/translations/ru.js +359 -0
- package/lib/commonjs/locale/translations/ru.js.map +1 -1
- package/lib/commonjs/locale/translations/tr.js +354 -0
- package/lib/commonjs/locale/translations/tr.js.map +1 -1
- package/lib/commonjs/locale/translations/zh.js +351 -0
- package/lib/commonjs/locale/translations/zh.js.map +1 -1
- package/lib/commonjs/multi-agent-chat/AvatarFlightHost.js +16 -0
- package/lib/commonjs/multi-agent-chat/AvatarFlightHost.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/AvatarFlightHost.web.js +16 -0
- package/lib/commonjs/multi-agent-chat/AvatarFlightHost.web.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/AvatarHandoff.js +179 -0
- package/lib/commonjs/multi-agent-chat/AvatarHandoff.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/ChatDialogFrame.js +161 -0
- package/lib/commonjs/multi-agent-chat/ChatDialogFrame.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/ChatSidebar.js +368 -0
- package/lib/commonjs/multi-agent-chat/ChatSidebar.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/EditorRail.js +63 -0
- package/lib/commonjs/multi-agent-chat/EditorRail.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/Marketplace.js +501 -0
- package/lib/commonjs/multi-agent-chat/Marketplace.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/MarketplaceSettings.js +123 -0
- package/lib/commonjs/multi-agent-chat/MarketplaceSettings.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/MultiAgentChat.js +39 -0
- package/lib/commonjs/multi-agent-chat/MultiAgentChat.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/MultiAgentChat.web.js +39 -0
- package/lib/commonjs/multi-agent-chat/MultiAgentChat.web.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/MultiAgentChatBase.js +926 -0
- package/lib/commonjs/multi-agent-chat/MultiAgentChatBase.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/ReplyRow.js +172 -0
- package/lib/commonjs/multi-agent-chat/ReplyRow.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/ScrollSurface.js +94 -0
- package/lib/commonjs/multi-agent-chat/ScrollSurface.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/SelectedAgentPreview.js +126 -0
- package/lib/commonjs/multi-agent-chat/SelectedAgentPreview.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/WorkspaceSettingsPages.js +480 -0
- package/lib/commonjs/multi-agent-chat/WorkspaceSettingsPages.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/context.js +15 -0
- package/lib/commonjs/multi-agent-chat/context.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/data.js +423 -0
- package/lib/commonjs/multi-agent-chat/data.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/handoff.js +104 -0
- package/lib/commonjs/multi-agent-chat/handoff.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/index.js +13 -0
- package/lib/commonjs/multi-agent-chat/index.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/index.web.js +13 -0
- package/lib/commonjs/multi-agent-chat/index.web.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/marketplace-data.js +145 -0
- package/lib/commonjs/multi-agent-chat/marketplace-data.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/marketplace-logos.js +36 -0
- package/lib/commonjs/multi-agent-chat/marketplace-logos.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/messages.js +196 -0
- package/lib/commonjs/multi-agent-chat/messages.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/model-catalog.js +771 -0
- package/lib/commonjs/multi-agent-chat/model-catalog.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/stream-reply.js +41 -0
- package/lib/commonjs/multi-agent-chat/stream-reply.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/types.js +6 -0
- package/lib/commonjs/multi-agent-chat/types.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/use-replies.js +157 -0
- package/lib/commonjs/multi-agent-chat/use-replies.js.map +1 -0
- package/lib/commonjs/multi-agent-chat/use-workspace.js +57 -0
- package/lib/commonjs/multi-agent-chat/use-workspace.js.map +1 -0
- package/lib/commonjs/page-header/EdgeScrim.js +7 -3
- package/lib/commonjs/page-header/EdgeScrim.js.map +1 -1
- package/lib/commonjs/page-header/index.js +13 -0
- package/lib/commonjs/page-header/index.js.map +1 -1
- package/lib/commonjs/project-board/BoardTooltip.js +49 -0
- package/lib/commonjs/project-board/BoardTooltip.js.map +1 -0
- package/lib/commonjs/project-board/CreateTicketDialog.js +330 -0
- package/lib/commonjs/project-board/CreateTicketDialog.js.map +1 -0
- package/lib/commonjs/project-board/ProjectBoard.js +39 -0
- package/lib/commonjs/project-board/ProjectBoard.js.map +1 -0
- package/lib/commonjs/project-board/ProjectBoard.web.js +40 -0
- package/lib/commonjs/project-board/ProjectBoard.web.js.map +1 -0
- package/lib/commonjs/project-board/ProjectBoardBase.js +768 -0
- package/lib/commonjs/project-board/ProjectBoardBase.js.map +1 -0
- package/lib/commonjs/project-board/ProjectBoardControls.js +198 -0
- package/lib/commonjs/project-board/ProjectBoardControls.js.map +1 -0
- package/lib/commonjs/project-board/ProjectBoardEmptyState.js +171 -0
- package/lib/commonjs/project-board/ProjectBoardEmptyState.js.map +1 -0
- package/lib/commonjs/project-board/ProjectBoardIcons.js +91 -0
- package/lib/commonjs/project-board/ProjectBoardIcons.js.map +1 -0
- package/lib/commonjs/project-board/RiInboxArchiveLine.js +11 -0
- package/lib/commonjs/project-board/RiInboxArchiveLine.js.map +1 -0
- package/lib/commonjs/project-board/RiMoreLine.js +11 -0
- package/lib/commonjs/project-board/RiMoreLine.js.map +1 -0
- package/lib/commonjs/project-board/RiPieChart2Line.js +11 -0
- package/lib/commonjs/project-board/RiPieChart2Line.js.map +1 -0
- package/lib/commonjs/project-board/RiRestartLine.js +11 -0
- package/lib/commonjs/project-board/RiRestartLine.js.map +1 -0
- package/lib/commonjs/project-board/SourcePrimitives.js +135 -0
- package/lib/commonjs/project-board/SourcePrimitives.js.map +1 -0
- package/lib/commonjs/project-board/TicketCornerGenieSurface.web.js +338 -0
- package/lib/commonjs/project-board/TicketCornerGenieSurface.web.js.map +1 -0
- package/lib/commonjs/project-board/TicketDetailDialog.js +597 -0
- package/lib/commonjs/project-board/TicketDetailDialog.js.map +1 -0
- package/lib/commonjs/project-board/TicketGenieSurface.js +76 -0
- package/lib/commonjs/project-board/TicketGenieSurface.js.map +1 -0
- package/lib/commonjs/project-board/TicketGenieSurface.web.js +193 -0
- package/lib/commonjs/project-board/TicketGenieSurface.web.js.map +1 -0
- package/lib/commonjs/project-board/animation.web.js +21 -0
- package/lib/commonjs/project-board/animation.web.js.map +1 -0
- package/lib/commonjs/project-board/constants.js +18 -0
- package/lib/commonjs/project-board/constants.js.map +1 -0
- package/lib/commonjs/project-board/context.js +15 -0
- package/lib/commonjs/project-board/context.js.map +1 -0
- package/lib/commonjs/project-board/index.js +13 -0
- package/lib/commonjs/project-board/index.js.map +1 -0
- package/lib/commonjs/project-board/index.web.js +13 -0
- package/lib/commonjs/project-board/index.web.js.map +1 -0
- package/lib/commonjs/project-board/messages.js +80 -0
- package/lib/commonjs/project-board/messages.js.map +1 -0
- package/lib/commonjs/project-board/shared.js +90 -0
- package/lib/commonjs/project-board/shared.js.map +1 -0
- package/lib/commonjs/project-board/types.js +6 -0
- package/lib/commonjs/project-board/types.js.map +1 -0
- package/lib/commonjs/segmented-control/SegmentedControl.js +36 -38
- package/lib/commonjs/segmented-control/SegmentedControl.js.map +1 -1
- package/lib/commonjs/settings-modal/SettingsModal.js +18 -4
- package/lib/commonjs/settings-modal/SettingsModal.js.map +1 -1
- package/lib/commonjs/settings-modal/SettingsRows.js +4 -1
- package/lib/commonjs/settings-modal/SettingsRows.js.map +1 -1
- package/lib/commonjs/sidebar/Sidebar.js +21 -9
- package/lib/commonjs/sidebar/Sidebar.js.map +1 -1
- package/lib/commonjs/sidebar/SidebarItem.js +58 -14
- package/lib/commonjs/sidebar/SidebarItem.js.map +1 -1
- package/lib/commonjs/sidebar/SidebarScrollArea.js +3 -5
- package/lib/commonjs/sidebar/SidebarScrollArea.js.map +1 -1
- package/lib/commonjs/sidebar/SidebarTeamMenu.js +3 -3
- package/lib/commonjs/sidebar/SidebarTeamMenu.js.map +1 -1
- package/lib/commonjs/sidebar/SidebarToolbar.js +166 -0
- package/lib/commonjs/sidebar/SidebarToolbar.js.map +1 -0
- package/lib/commonjs/sidebar/index.js +7 -0
- package/lib/commonjs/sidebar/index.js.map +1 -1
- package/lib/commonjs/sidebar/parts.js +11 -3
- package/lib/commonjs/sidebar/parts.js.map +1 -1
- package/lib/commonjs/social-button/SocialButtonBase.js +1 -0
- package/lib/commonjs/social-button/SocialButtonBase.js.map +1 -1
- package/lib/commonjs/textarea/Textarea.js +28 -14
- package/lib/commonjs/textarea/Textarea.js.map +1 -1
- package/lib/commonjs/theme/color-scope/seed-scope.js +2 -0
- package/lib/commonjs/theme/color-scope/seed-scope.js.map +1 -1
- package/lib/module/agent-avatar/AgentAvatar.js +210 -0
- package/lib/module/agent-avatar/AgentAvatar.js.map +1 -0
- package/lib/module/agent-avatar/AgentFace.js +23 -0
- package/lib/module/agent-avatar/AgentFace.js.map +1 -0
- package/lib/module/agent-avatar/SvgDrawing.js +202 -0
- package/lib/module/agent-avatar/SvgDrawing.js.map +1 -0
- package/lib/module/agent-avatar/artwork.js +144 -0
- package/lib/module/agent-avatar/artwork.js.map +1 -0
- package/lib/module/agent-avatar/attention.js +74 -0
- package/lib/module/agent-avatar/attention.js.map +1 -0
- package/lib/module/agent-avatar/blink.js +41 -0
- package/lib/module/agent-avatar/blink.js.map +1 -0
- package/lib/module/agent-avatar/context.js +6 -0
- package/lib/module/agent-avatar/context.js.map +1 -0
- package/lib/module/agent-avatar/drawing.js +226 -0
- package/lib/module/agent-avatar/drawing.js.map +1 -0
- package/lib/module/agent-avatar/entrance.js +27 -0
- package/lib/module/agent-avatar/entrance.js.map +1 -0
- package/lib/module/agent-avatar/face.js +392 -0
- package/lib/module/agent-avatar/face.js.map +1 -0
- package/lib/module/agent-avatar/fold-outlines.js +37 -0
- package/lib/module/agent-avatar/fold-outlines.js.map +1 -0
- package/lib/module/agent-avatar/fold.js +319 -0
- package/lib/module/agent-avatar/fold.js.map +1 -0
- package/lib/module/agent-avatar/grain.js +5 -0
- package/lib/module/agent-avatar/grain.js.map +1 -0
- package/lib/module/agent-avatar/index.js +5 -0
- package/lib/module/agent-avatar/index.js.map +1 -0
- package/lib/module/agent-avatar/messages.js +7 -0
- package/lib/module/agent-avatar/messages.js.map +1 -0
- package/lib/module/agent-avatar/model.js +424 -0
- package/lib/module/agent-avatar/model.js.map +1 -0
- package/lib/module/agent-avatar/shape-morph.js +155 -0
- package/lib/module/agent-avatar/shape-morph.js.map +1 -0
- package/lib/module/agent-avatar/types.js.map +1 -0
- package/lib/module/agent-avatar/wander.js +59 -0
- package/lib/module/agent-avatar/wander.js.map +1 -0
- package/lib/module/agent-avatar/working.js +23 -0
- package/lib/module/agent-avatar/working.js.map +1 -0
- package/lib/module/agent-chat/AgentChatMessage.js +20 -0
- package/lib/module/agent-chat/AgentChatMessage.js.map +1 -1
- package/lib/module/agent-creator/AgentCreator.js +28 -0
- package/lib/module/agent-creator/AgentCreator.js.map +1 -0
- package/lib/module/agent-creator/AgentCreator.web.js +28 -0
- package/lib/module/agent-creator/AgentCreator.web.js.map +1 -0
- package/lib/module/agent-creator/AgentCreatorBase.js +315 -0
- package/lib/module/agent-creator/AgentCreatorBase.js.map +1 -0
- package/lib/module/agent-creator/AgentPreferencesPanel.js +257 -0
- package/lib/module/agent-creator/AgentPreferencesPanel.js.map +1 -0
- package/lib/module/agent-creator/CustomColorPicker.js +369 -0
- package/lib/module/agent-creator/CustomColorPicker.js.map +1 -0
- package/lib/module/agent-creator/EmotionPicker.js +174 -0
- package/lib/module/agent-creator/EmotionPicker.js.map +1 -0
- package/lib/module/agent-creator/GlossArt.js +206 -0
- package/lib/module/agent-creator/GlossArt.js.map +1 -0
- package/lib/module/agent-creator/ScrollSurface.js +130 -0
- package/lib/module/agent-creator/ScrollSurface.js.map +1 -0
- package/lib/module/agent-creator/ShapeArc.js +217 -0
- package/lib/module/agent-creator/ShapeArc.js.map +1 -0
- package/lib/module/agent-creator/constants.js +64 -0
- package/lib/module/agent-creator/constants.js.map +1 -0
- package/lib/module/agent-creator/context.js +24 -0
- package/lib/module/agent-creator/context.js.map +1 -0
- package/lib/module/agent-creator/index.js +6 -0
- package/lib/module/agent-creator/index.js.map +1 -0
- package/lib/module/agent-creator/index.web.js +11 -0
- package/lib/module/agent-creator/index.web.js.map +1 -0
- package/lib/module/agent-creator/messages.js +100 -0
- package/lib/module/agent-creator/messages.js.map +1 -0
- package/lib/module/agent-creator/rainbow-artwork.js +6 -0
- package/lib/module/agent-creator/rainbow-artwork.js.map +1 -0
- package/lib/module/agent-creator/shared.js +72 -0
- package/lib/module/agent-creator/shared.js.map +1 -0
- package/lib/module/agent-creator/types.js +4 -0
- package/lib/module/agent-creator/types.js.map +1 -0
- package/lib/module/agent-creator/use-agent-voices.js +55 -0
- package/lib/module/agent-creator/use-agent-voices.js.map +1 -0
- package/lib/module/agent-creator/use-track-events.js +40 -0
- package/lib/module/agent-creator/use-track-events.js.map +1 -0
- package/lib/module/button/CloseButton.js +5 -2
- package/lib/module/button/CloseButton.js.map +1 -1
- package/lib/module/chip/Chip.js +29 -14
- package/lib/module/chip/Chip.js.map +1 -1
- package/lib/module/design-tokens/component-roles.js +90 -0
- package/lib/module/design-tokens/component-roles.js.map +1 -0
- package/lib/module/design-tokens/tailwind-preset.js +25 -5
- package/lib/module/design-tokens/tailwind-preset.js.map +1 -1
- package/lib/module/design-tokens/theme-css.js +18 -0
- package/lib/module/design-tokens/theme-css.js.map +1 -1
- package/lib/module/design-tokens/theme.css +284 -0
- package/lib/module/dialog/Dialog.js +28 -14
- package/lib/module/dialog/Dialog.js.map +1 -1
- package/lib/module/dialog/Dialog.web.js +24 -15
- package/lib/module/dialog/Dialog.web.js.map +1 -1
- package/lib/module/dialog/DialogHeader.js +1 -1
- package/lib/module/hooks/use-accessible-name-warning.js +2 -2
- package/lib/module/index.js +4 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +4 -1
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/locale/translations/ar.js +363 -0
- package/lib/module/locale/translations/ar.js.map +1 -1
- package/lib/module/locale/translations/bn.js +351 -0
- package/lib/module/locale/translations/bn.js.map +1 -1
- package/lib/module/locale/translations/ca.js +355 -0
- package/lib/module/locale/translations/ca.js.map +1 -1
- package/lib/module/locale/translations/de.js +355 -0
- package/lib/module/locale/translations/de.js.map +1 -1
- package/lib/module/locale/translations/es.js +355 -0
- package/lib/module/locale/translations/es.js.map +1 -1
- package/lib/module/locale/translations/fr.js +355 -0
- package/lib/module/locale/translations/fr.js.map +1 -1
- package/lib/module/locale/translations/hi.js +354 -0
- package/lib/module/locale/translations/hi.js.map +1 -1
- package/lib/module/locale/translations/id.js +354 -0
- package/lib/module/locale/translations/id.js.map +1 -1
- package/lib/module/locale/translations/it.js +355 -0
- package/lib/module/locale/translations/it.js.map +1 -1
- package/lib/module/locale/translations/ja.js +351 -0
- package/lib/module/locale/translations/ja.js.map +1 -1
- package/lib/module/locale/translations/pt.js +355 -0
- package/lib/module/locale/translations/pt.js.map +1 -1
- package/lib/module/locale/translations/ru.js +359 -0
- package/lib/module/locale/translations/ru.js.map +1 -1
- package/lib/module/locale/translations/tr.js +354 -0
- package/lib/module/locale/translations/tr.js.map +1 -1
- package/lib/module/locale/translations/zh.js +351 -0
- package/lib/module/locale/translations/zh.js.map +1 -1
- package/lib/module/multi-agent-chat/AvatarFlightHost.js +12 -0
- package/lib/module/multi-agent-chat/AvatarFlightHost.js.map +1 -0
- package/lib/module/multi-agent-chat/AvatarFlightHost.web.js +12 -0
- package/lib/module/multi-agent-chat/AvatarFlightHost.web.js.map +1 -0
- package/lib/module/multi-agent-chat/AvatarHandoff.js +174 -0
- package/lib/module/multi-agent-chat/AvatarHandoff.js.map +1 -0
- package/lib/module/multi-agent-chat/ChatDialogFrame.js +155 -0
- package/lib/module/multi-agent-chat/ChatDialogFrame.js.map +1 -0
- package/lib/module/multi-agent-chat/ChatSidebar.js +362 -0
- package/lib/module/multi-agent-chat/ChatSidebar.js.map +1 -0
- package/lib/module/multi-agent-chat/EditorRail.js +58 -0
- package/lib/module/multi-agent-chat/EditorRail.js.map +1 -0
- package/lib/module/multi-agent-chat/Marketplace.js +496 -0
- package/lib/module/multi-agent-chat/Marketplace.js.map +1 -0
- package/lib/module/multi-agent-chat/MarketplaceSettings.js +119 -0
- package/lib/module/multi-agent-chat/MarketplaceSettings.js.map +1 -0
- package/lib/module/multi-agent-chat/MultiAgentChat.js +34 -0
- package/lib/module/multi-agent-chat/MultiAgentChat.js.map +1 -0
- package/lib/module/multi-agent-chat/MultiAgentChat.web.js +34 -0
- package/lib/module/multi-agent-chat/MultiAgentChat.web.js.map +1 -0
- package/lib/module/multi-agent-chat/MultiAgentChatBase.js +921 -0
- package/lib/module/multi-agent-chat/MultiAgentChatBase.js.map +1 -0
- package/lib/module/multi-agent-chat/ReplyRow.js +166 -0
- package/lib/module/multi-agent-chat/ReplyRow.js.map +1 -0
- package/lib/module/multi-agent-chat/ScrollSurface.js +89 -0
- package/lib/module/multi-agent-chat/ScrollSurface.js.map +1 -0
- package/lib/module/multi-agent-chat/SelectedAgentPreview.js +121 -0
- package/lib/module/multi-agent-chat/SelectedAgentPreview.js.map +1 -0
- package/lib/module/multi-agent-chat/WorkspaceSettingsPages.js +476 -0
- package/lib/module/multi-agent-chat/WorkspaceSettingsPages.js.map +1 -0
- package/lib/module/multi-agent-chat/context.js +10 -0
- package/lib/module/multi-agent-chat/context.js.map +1 -0
- package/lib/module/multi-agent-chat/data.js +412 -0
- package/lib/module/multi-agent-chat/data.js.map +1 -0
- package/lib/module/multi-agent-chat/handoff.js +94 -0
- package/lib/module/multi-agent-chat/handoff.js.map +1 -0
- package/lib/module/multi-agent-chat/index.js +4 -0
- package/lib/module/multi-agent-chat/index.js.map +1 -0
- package/lib/module/multi-agent-chat/index.web.js +9 -0
- package/lib/module/multi-agent-chat/index.web.js.map +1 -0
- package/lib/module/multi-agent-chat/marketplace-data.js +137 -0
- package/lib/module/multi-agent-chat/marketplace-data.js.map +1 -0
- package/lib/module/multi-agent-chat/marketplace-logos.js +32 -0
- package/lib/module/multi-agent-chat/marketplace-logos.js.map +1 -0
- package/lib/module/multi-agent-chat/messages.js +191 -0
- package/lib/module/multi-agent-chat/messages.js.map +1 -0
- package/lib/module/multi-agent-chat/model-catalog.js +767 -0
- package/lib/module/multi-agent-chat/model-catalog.js.map +1 -0
- package/lib/module/multi-agent-chat/stream-reply.js +36 -0
- package/lib/module/multi-agent-chat/stream-reply.js.map +1 -0
- package/lib/module/multi-agent-chat/types.js +4 -0
- package/lib/module/multi-agent-chat/types.js.map +1 -0
- package/lib/module/multi-agent-chat/use-replies.js +152 -0
- package/lib/module/multi-agent-chat/use-replies.js.map +1 -0
- package/lib/module/multi-agent-chat/use-workspace.js +53 -0
- package/lib/module/multi-agent-chat/use-workspace.js.map +1 -0
- package/lib/module/page-header/EdgeScrim.js +7 -3
- package/lib/module/page-header/EdgeScrim.js.map +1 -1
- package/lib/module/page-header/index.js +1 -0
- package/lib/module/page-header/index.js.map +1 -1
- package/lib/module/project-board/BoardTooltip.js +45 -0
- package/lib/module/project-board/BoardTooltip.js.map +1 -0
- package/lib/module/project-board/CreateTicketDialog.js +326 -0
- package/lib/module/project-board/CreateTicketDialog.js.map +1 -0
- package/lib/module/project-board/ProjectBoard.js +34 -0
- package/lib/module/project-board/ProjectBoard.js.map +1 -0
- package/lib/module/project-board/ProjectBoard.web.js +35 -0
- package/lib/module/project-board/ProjectBoard.web.js.map +1 -0
- package/lib/module/project-board/ProjectBoardBase.js +763 -0
- package/lib/module/project-board/ProjectBoardBase.js.map +1 -0
- package/lib/module/project-board/ProjectBoardControls.js +188 -0
- package/lib/module/project-board/ProjectBoardControls.js.map +1 -0
- package/lib/module/project-board/ProjectBoardEmptyState.js +166 -0
- package/lib/module/project-board/ProjectBoardEmptyState.js.map +1 -0
- package/lib/module/project-board/ProjectBoardIcons.js +83 -0
- package/lib/module/project-board/ProjectBoardIcons.js.map +1 -0
- package/lib/module/project-board/RiInboxArchiveLine.js +7 -0
- package/lib/module/project-board/RiInboxArchiveLine.js.map +1 -0
- package/lib/module/project-board/RiMoreLine.js +7 -0
- package/lib/module/project-board/RiMoreLine.js.map +1 -0
- package/lib/module/project-board/RiPieChart2Line.js +7 -0
- package/lib/module/project-board/RiPieChart2Line.js.map +1 -0
- package/lib/module/project-board/RiRestartLine.js +7 -0
- package/lib/module/project-board/RiRestartLine.js.map +1 -0
- package/lib/module/project-board/SourcePrimitives.js +125 -0
- package/lib/module/project-board/SourcePrimitives.js.map +1 -0
- package/lib/module/project-board/TicketCornerGenieSurface.web.js +334 -0
- package/lib/module/project-board/TicketCornerGenieSurface.web.js.map +1 -0
- package/lib/module/project-board/TicketDetailDialog.js +593 -0
- package/lib/module/project-board/TicketDetailDialog.js.map +1 -0
- package/lib/module/project-board/TicketGenieSurface.js +70 -0
- package/lib/module/project-board/TicketGenieSurface.js.map +1 -0
- package/lib/module/project-board/TicketGenieSurface.web.js +189 -0
- package/lib/module/project-board/TicketGenieSurface.web.js.map +1 -0
- package/lib/module/project-board/animation.web.js +17 -0
- package/lib/module/project-board/animation.web.js.map +1 -0
- package/lib/module/project-board/constants.js +13 -0
- package/lib/module/project-board/constants.js.map +1 -0
- package/lib/module/project-board/context.js +10 -0
- package/lib/module/project-board/context.js.map +1 -0
- package/lib/module/project-board/index.js +4 -0
- package/lib/module/project-board/index.js.map +1 -0
- package/lib/module/project-board/index.web.js +9 -0
- package/lib/module/project-board/index.web.js.map +1 -0
- package/lib/module/project-board/messages.js +76 -0
- package/lib/module/project-board/messages.js.map +1 -0
- package/lib/module/project-board/shared.js +82 -0
- package/lib/module/project-board/shared.js.map +1 -0
- package/lib/module/project-board/types.js +4 -0
- package/lib/module/project-board/types.js.map +1 -0
- package/lib/module/segmented-control/SegmentedControl.js +37 -39
- package/lib/module/segmented-control/SegmentedControl.js.map +1 -1
- package/lib/module/settings-modal/SettingsModal.js +18 -4
- package/lib/module/settings-modal/SettingsModal.js.map +1 -1
- package/lib/module/settings-modal/SettingsRows.js +4 -1
- package/lib/module/settings-modal/SettingsRows.js.map +1 -1
- package/lib/module/sidebar/Sidebar.js +21 -9
- package/lib/module/sidebar/Sidebar.js.map +1 -1
- package/lib/module/sidebar/SidebarItem.js +59 -15
- package/lib/module/sidebar/SidebarItem.js.map +1 -1
- package/lib/module/sidebar/SidebarScrollArea.js +3 -5
- package/lib/module/sidebar/SidebarScrollArea.js.map +1 -1
- package/lib/module/sidebar/SidebarTeamMenu.js +3 -3
- package/lib/module/sidebar/SidebarTeamMenu.js.map +1 -1
- package/lib/module/sidebar/SidebarToolbar.js +161 -0
- package/lib/module/sidebar/SidebarToolbar.js.map +1 -0
- package/lib/module/sidebar/index.js +1 -0
- package/lib/module/sidebar/index.js.map +1 -1
- package/lib/module/sidebar/parts.js +11 -3
- package/lib/module/sidebar/parts.js.map +1 -1
- package/lib/module/social-button/SocialButtonBase.js +1 -1
- package/lib/module/social-button/SocialButtonBase.js.map +1 -1
- package/lib/module/textarea/Textarea.js +29 -15
- package/lib/module/textarea/Textarea.js.map +1 -1
- package/lib/module/theme/color-scope/seed-scope.js +2 -0
- package/lib/module/theme/color-scope/seed-scope.js.map +1 -1
- package/lib/typescript/commonjs/agent-avatar/AgentAvatar.d.ts +4 -0
- package/lib/typescript/commonjs/agent-avatar/AgentAvatar.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/AgentFace.d.ts +7 -0
- package/lib/typescript/commonjs/agent-avatar/AgentFace.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/SvgDrawing.d.ts +14 -0
- package/lib/typescript/commonjs/agent-avatar/SvgDrawing.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/artwork.d.ts +7 -0
- package/lib/typescript/commonjs/agent-avatar/artwork.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/attention.d.ts +24 -0
- package/lib/typescript/commonjs/agent-avatar/attention.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/blink.d.ts +12 -0
- package/lib/typescript/commonjs/agent-avatar/blink.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/context.d.ts +4 -0
- package/lib/typescript/commonjs/agent-avatar/context.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/drawing.d.ts +102 -0
- package/lib/typescript/commonjs/agent-avatar/drawing.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/entrance.d.ts +13 -0
- package/lib/typescript/commonjs/agent-avatar/entrance.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/face.d.ts +38 -0
- package/lib/typescript/commonjs/agent-avatar/face.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/fold-outlines.d.ts +13 -0
- package/lib/typescript/commonjs/agent-avatar/fold-outlines.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/fold.d.ts +7 -0
- package/lib/typescript/commonjs/agent-avatar/fold.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/grain.d.ts +3 -0
- package/lib/typescript/commonjs/agent-avatar/grain.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/index.d.ts +5 -0
- package/lib/typescript/commonjs/agent-avatar/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/messages.d.ts +4 -0
- package/lib/typescript/commonjs/agent-avatar/messages.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/model.d.ts +63 -0
- package/lib/typescript/commonjs/agent-avatar/model.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/shape-morph.d.ts +39 -0
- package/lib/typescript/commonjs/agent-avatar/shape-morph.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/types.d.ts +21 -0
- package/lib/typescript/commonjs/agent-avatar/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/wander.d.ts +14 -0
- package/lib/typescript/commonjs/agent-avatar/wander.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-avatar/working.d.ts +8 -0
- package/lib/typescript/commonjs/agent-avatar/working.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-chat/AgentChatMessage.d.ts +5 -0
- package/lib/typescript/commonjs/agent-chat/AgentChatMessage.d.ts.map +1 -1
- package/lib/typescript/commonjs/agent-creator/AgentCreator.d.ts +3 -0
- package/lib/typescript/commonjs/agent-creator/AgentCreator.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/AgentCreator.web.d.ts +3 -0
- package/lib/typescript/commonjs/agent-creator/AgentCreator.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/AgentCreatorBase.d.ts +4 -0
- package/lib/typescript/commonjs/agent-creator/AgentCreatorBase.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/AgentPreferencesPanel.d.ts +4 -0
- package/lib/typescript/commonjs/agent-creator/AgentPreferencesPanel.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/CustomColorPicker.d.ts +7 -0
- package/lib/typescript/commonjs/agent-creator/CustomColorPicker.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/EmotionPicker.d.ts +7 -0
- package/lib/typescript/commonjs/agent-creator/EmotionPicker.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/GlossArt.d.ts +9 -0
- package/lib/typescript/commonjs/agent-creator/GlossArt.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/ScrollSurface.d.ts +11 -0
- package/lib/typescript/commonjs/agent-creator/ScrollSurface.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/ShapeArc.d.ts +7 -0
- package/lib/typescript/commonjs/agent-creator/ShapeArc.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/constants.d.ts +49 -0
- package/lib/typescript/commonjs/agent-creator/constants.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/context.d.ts +64 -0
- package/lib/typescript/commonjs/agent-creator/context.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/index.d.ts +5 -0
- package/lib/typescript/commonjs/agent-creator/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/index.web.d.ts +5 -0
- package/lib/typescript/commonjs/agent-creator/index.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/messages.d.ts +53 -0
- package/lib/typescript/commonjs/agent-creator/messages.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/rainbow-artwork.d.ts +3 -0
- package/lib/typescript/commonjs/agent-creator/rainbow-artwork.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/shared.d.ts +18 -0
- package/lib/typescript/commonjs/agent-creator/shared.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/types.d.ts +37 -0
- package/lib/typescript/commonjs/agent-creator/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/use-agent-voices.d.ts +9 -0
- package/lib/typescript/commonjs/agent-creator/use-agent-voices.d.ts.map +1 -0
- package/lib/typescript/commonjs/agent-creator/use-track-events.d.ts +5 -0
- package/lib/typescript/commonjs/agent-creator/use-track-events.d.ts.map +1 -0
- package/lib/typescript/commonjs/button/CloseButton.d.ts +1 -1
- package/lib/typescript/commonjs/button/CloseButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/button/shared.d.ts +1 -1
- package/lib/typescript/commonjs/button/types.d.ts +2 -0
- package/lib/typescript/commonjs/button/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/chip/Chip.d.ts.map +1 -1
- package/lib/typescript/commonjs/chip/types.d.ts +3 -0
- package/lib/typescript/commonjs/chip/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/design-tokens/component-roles.d.ts +89 -0
- package/lib/typescript/commonjs/design-tokens/component-roles.d.ts.map +1 -0
- package/lib/typescript/commonjs/design-tokens/tailwind-preset.d.ts +3 -27
- package/lib/typescript/commonjs/design-tokens/tailwind-preset.d.ts.map +1 -1
- package/lib/typescript/commonjs/design-tokens/theme-css.d.ts +0 -24
- package/lib/typescript/commonjs/design-tokens/theme-css.d.ts.map +1 -1
- package/lib/typescript/commonjs/dialog/Dialog.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/dialog/types.d.ts +6 -0
- package/lib/typescript/commonjs/dialog/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +4 -2
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.web.d.ts +4 -2
- package/lib/typescript/commonjs/index.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/ar.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/bn.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/ca.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/de.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/es.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/fr.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/hi.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/id.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/it.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/ja.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/pt.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/ru.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/tr.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/types.d.ts +8 -0
- package/lib/typescript/commonjs/locale/translations/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/locale/translations/zh.d.ts.map +1 -1
- package/lib/typescript/commonjs/multi-agent-chat/AvatarFlightHost.d.ts +4 -0
- package/lib/typescript/commonjs/multi-agent-chat/AvatarFlightHost.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/AvatarFlightHost.web.d.ts +3 -0
- package/lib/typescript/commonjs/multi-agent-chat/AvatarFlightHost.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/AvatarHandoff.d.ts +10 -0
- package/lib/typescript/commonjs/multi-agent-chat/AvatarHandoff.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/ChatDialogFrame.d.ts +15 -0
- package/lib/typescript/commonjs/multi-agent-chat/ChatDialogFrame.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/ChatSidebar.d.ts +24 -0
- package/lib/typescript/commonjs/multi-agent-chat/ChatSidebar.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/EditorRail.d.ts +7 -0
- package/lib/typescript/commonjs/multi-agent-chat/EditorRail.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/Marketplace.d.ts +14 -0
- package/lib/typescript/commonjs/multi-agent-chat/Marketplace.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/MarketplaceSettings.d.ts +7 -0
- package/lib/typescript/commonjs/multi-agent-chat/MarketplaceSettings.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/MultiAgentChat.d.ts +3 -0
- package/lib/typescript/commonjs/multi-agent-chat/MultiAgentChat.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/MultiAgentChat.web.d.ts +3 -0
- package/lib/typescript/commonjs/multi-agent-chat/MultiAgentChat.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/MultiAgentChatBase.d.ts +4 -0
- package/lib/typescript/commonjs/multi-agent-chat/MultiAgentChatBase.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/ReplyRow.d.ts +18 -0
- package/lib/typescript/commonjs/multi-agent-chat/ReplyRow.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/ScrollSurface.d.ts +13 -0
- package/lib/typescript/commonjs/multi-agent-chat/ScrollSurface.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/SelectedAgentPreview.d.ts +9 -0
- package/lib/typescript/commonjs/multi-agent-chat/SelectedAgentPreview.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/WorkspaceSettingsPages.d.ts +3 -0
- package/lib/typescript/commonjs/multi-agent-chat/WorkspaceSettingsPages.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/context.d.ts +20 -0
- package/lib/typescript/commonjs/multi-agent-chat/context.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/data.d.ts +39 -0
- package/lib/typescript/commonjs/multi-agent-chat/data.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/handoff.d.ts +42 -0
- package/lib/typescript/commonjs/multi-agent-chat/handoff.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/index.d.ts +4 -0
- package/lib/typescript/commonjs/multi-agent-chat/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/index.web.d.ts +4 -0
- package/lib/typescript/commonjs/multi-agent-chat/index.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/marketplace-data.d.ts +26 -0
- package/lib/typescript/commonjs/multi-agent-chat/marketplace-data.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/marketplace-logos.d.ts +30 -0
- package/lib/typescript/commonjs/multi-agent-chat/marketplace-logos.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/messages.d.ts +175 -0
- package/lib/typescript/commonjs/multi-agent-chat/messages.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/model-catalog.d.ts +3 -0
- package/lib/typescript/commonjs/multi-agent-chat/model-catalog.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/stream-reply.d.ts +5 -0
- package/lib/typescript/commonjs/multi-agent-chat/stream-reply.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/types.d.ts +21 -0
- package/lib/typescript/commonjs/multi-agent-chat/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/use-replies.d.ts +14 -0
- package/lib/typescript/commonjs/multi-agent-chat/use-replies.d.ts.map +1 -0
- package/lib/typescript/commonjs/multi-agent-chat/use-workspace.d.ts +9 -0
- package/lib/typescript/commonjs/multi-agent-chat/use-workspace.d.ts.map +1 -0
- package/lib/typescript/commonjs/page-header/EdgeScrim.d.ts +10 -1
- package/lib/typescript/commonjs/page-header/EdgeScrim.d.ts.map +1 -1
- package/lib/typescript/commonjs/page-header/index.d.ts +2 -0
- package/lib/typescript/commonjs/page-header/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/project-board/BoardTooltip.d.ts +7 -0
- package/lib/typescript/commonjs/project-board/BoardTooltip.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/CreateTicketDialog.d.ts +12 -0
- package/lib/typescript/commonjs/project-board/CreateTicketDialog.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/ProjectBoard.d.ts +3 -0
- package/lib/typescript/commonjs/project-board/ProjectBoard.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/ProjectBoard.web.d.ts +3 -0
- package/lib/typescript/commonjs/project-board/ProjectBoard.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/ProjectBoardBase.d.ts +3 -0
- package/lib/typescript/commonjs/project-board/ProjectBoardBase.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/ProjectBoardControls.d.ts +32 -0
- package/lib/typescript/commonjs/project-board/ProjectBoardControls.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/ProjectBoardEmptyState.d.ts +3 -0
- package/lib/typescript/commonjs/project-board/ProjectBoardEmptyState.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/ProjectBoardIcons.d.ts +15 -0
- package/lib/typescript/commonjs/project-board/ProjectBoardIcons.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/RiInboxArchiveLine.d.ts +7 -0
- package/lib/typescript/commonjs/project-board/RiInboxArchiveLine.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/RiMoreLine.d.ts +7 -0
- package/lib/typescript/commonjs/project-board/RiMoreLine.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/RiPieChart2Line.d.ts +7 -0
- package/lib/typescript/commonjs/project-board/RiPieChart2Line.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/RiRestartLine.d.ts +7 -0
- package/lib/typescript/commonjs/project-board/RiRestartLine.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/SourcePrimitives.d.ts +177 -0
- package/lib/typescript/commonjs/project-board/SourcePrimitives.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/TicketCornerGenieSurface.web.d.ts +7 -0
- package/lib/typescript/commonjs/project-board/TicketCornerGenieSurface.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/TicketDetailDialog.d.ts +16 -0
- package/lib/typescript/commonjs/project-board/TicketDetailDialog.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/TicketGenieSurface.d.ts +9 -0
- package/lib/typescript/commonjs/project-board/TicketGenieSurface.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/TicketGenieSurface.web.d.ts +6 -0
- package/lib/typescript/commonjs/project-board/TicketGenieSurface.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/animation.web.d.ts +10 -0
- package/lib/typescript/commonjs/project-board/animation.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/constants.d.ts +7 -0
- package/lib/typescript/commonjs/project-board/constants.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/context.d.ts +39 -0
- package/lib/typescript/commonjs/project-board/context.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/index.d.ts +3 -0
- package/lib/typescript/commonjs/project-board/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/index.web.d.ts +3 -0
- package/lib/typescript/commonjs/project-board/index.web.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/messages.d.ts +73 -0
- package/lib/typescript/commonjs/project-board/messages.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/shared.d.ts +18 -0
- package/lib/typescript/commonjs/project-board/shared.d.ts.map +1 -0
- package/lib/typescript/commonjs/project-board/types.d.ts +78 -0
- package/lib/typescript/commonjs/project-board/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/segmented-control/SegmentedControl.d.ts +4 -2
- package/lib/typescript/commonjs/segmented-control/SegmentedControl.d.ts.map +1 -1
- package/lib/typescript/commonjs/settings-modal/SettingsModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/settings-modal/SettingsRows.d.ts +1 -1
- package/lib/typescript/commonjs/settings-modal/SettingsRows.d.ts.map +1 -1
- package/lib/typescript/commonjs/settings-modal/index.d.ts +1 -1
- package/lib/typescript/commonjs/settings-modal/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/settings-modal/types.d.ts +12 -1
- package/lib/typescript/commonjs/settings-modal/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/sidebar/Sidebar.d.ts.map +1 -1
- package/lib/typescript/commonjs/sidebar/SidebarItem.d.ts.map +1 -1
- package/lib/typescript/commonjs/sidebar/SidebarTeamMenu.d.ts.map +1 -1
- package/lib/typescript/commonjs/sidebar/SidebarToolbar.d.ts +4 -0
- package/lib/typescript/commonjs/sidebar/SidebarToolbar.d.ts.map +1 -0
- package/lib/typescript/commonjs/sidebar/index.d.ts +2 -1
- package/lib/typescript/commonjs/sidebar/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/sidebar/parts.d.ts +2 -1
- package/lib/typescript/commonjs/sidebar/parts.d.ts.map +1 -1
- package/lib/typescript/commonjs/sidebar/types.d.ts +47 -5
- package/lib/typescript/commonjs/sidebar/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/social-button/SocialButtonBase.d.ts +7 -0
- package/lib/typescript/commonjs/social-button/SocialButtonBase.d.ts.map +1 -1
- package/lib/typescript/commonjs/textarea/Textarea.d.ts +1 -1
- package/lib/typescript/commonjs/textarea/Textarea.d.ts.map +1 -1
- package/lib/typescript/commonjs/textarea/types.d.ts +6 -1
- package/lib/typescript/commonjs/textarea/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/theme/color-scope/seed-scope.d.ts.map +1 -1
- package/lib/typescript/module/agent-avatar/AgentAvatar.d.ts +4 -0
- package/lib/typescript/module/agent-avatar/AgentAvatar.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/AgentFace.d.ts +7 -0
- package/lib/typescript/module/agent-avatar/AgentFace.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/SvgDrawing.d.ts +14 -0
- package/lib/typescript/module/agent-avatar/SvgDrawing.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/artwork.d.ts +7 -0
- package/lib/typescript/module/agent-avatar/artwork.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/attention.d.ts +24 -0
- package/lib/typescript/module/agent-avatar/attention.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/blink.d.ts +12 -0
- package/lib/typescript/module/agent-avatar/blink.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/context.d.ts +4 -0
- package/lib/typescript/module/agent-avatar/context.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/drawing.d.ts +102 -0
- package/lib/typescript/module/agent-avatar/drawing.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/entrance.d.ts +13 -0
- package/lib/typescript/module/agent-avatar/entrance.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/face.d.ts +38 -0
- package/lib/typescript/module/agent-avatar/face.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/fold-outlines.d.ts +13 -0
- package/lib/typescript/module/agent-avatar/fold-outlines.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/fold.d.ts +7 -0
- package/lib/typescript/module/agent-avatar/fold.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/grain.d.ts +3 -0
- package/lib/typescript/module/agent-avatar/grain.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/index.d.ts +5 -0
- package/lib/typescript/module/agent-avatar/index.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/messages.d.ts +4 -0
- package/lib/typescript/module/agent-avatar/messages.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/model.d.ts +63 -0
- package/lib/typescript/module/agent-avatar/model.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/shape-morph.d.ts +39 -0
- package/lib/typescript/module/agent-avatar/shape-morph.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/types.d.ts +21 -0
- package/lib/typescript/module/agent-avatar/types.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/wander.d.ts +14 -0
- package/lib/typescript/module/agent-avatar/wander.d.ts.map +1 -0
- package/lib/typescript/module/agent-avatar/working.d.ts +8 -0
- package/lib/typescript/module/agent-avatar/working.d.ts.map +1 -0
- package/lib/typescript/module/agent-chat/AgentChatMessage.d.ts +5 -0
- package/lib/typescript/module/agent-chat/AgentChatMessage.d.ts.map +1 -1
- package/lib/typescript/module/agent-creator/AgentCreator.d.ts +3 -0
- package/lib/typescript/module/agent-creator/AgentCreator.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/AgentCreator.web.d.ts +3 -0
- package/lib/typescript/module/agent-creator/AgentCreator.web.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/AgentCreatorBase.d.ts +4 -0
- package/lib/typescript/module/agent-creator/AgentCreatorBase.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/AgentPreferencesPanel.d.ts +4 -0
- package/lib/typescript/module/agent-creator/AgentPreferencesPanel.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/CustomColorPicker.d.ts +7 -0
- package/lib/typescript/module/agent-creator/CustomColorPicker.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/EmotionPicker.d.ts +7 -0
- package/lib/typescript/module/agent-creator/EmotionPicker.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/GlossArt.d.ts +9 -0
- package/lib/typescript/module/agent-creator/GlossArt.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/ScrollSurface.d.ts +11 -0
- package/lib/typescript/module/agent-creator/ScrollSurface.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/ShapeArc.d.ts +7 -0
- package/lib/typescript/module/agent-creator/ShapeArc.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/constants.d.ts +49 -0
- package/lib/typescript/module/agent-creator/constants.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/context.d.ts +64 -0
- package/lib/typescript/module/agent-creator/context.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/index.d.ts +5 -0
- package/lib/typescript/module/agent-creator/index.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/index.web.d.ts +5 -0
- package/lib/typescript/module/agent-creator/index.web.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/messages.d.ts +53 -0
- package/lib/typescript/module/agent-creator/messages.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/rainbow-artwork.d.ts +3 -0
- package/lib/typescript/module/agent-creator/rainbow-artwork.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/shared.d.ts +18 -0
- package/lib/typescript/module/agent-creator/shared.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/types.d.ts +37 -0
- package/lib/typescript/module/agent-creator/types.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/use-agent-voices.d.ts +9 -0
- package/lib/typescript/module/agent-creator/use-agent-voices.d.ts.map +1 -0
- package/lib/typescript/module/agent-creator/use-track-events.d.ts +5 -0
- package/lib/typescript/module/agent-creator/use-track-events.d.ts.map +1 -0
- package/lib/typescript/module/button/CloseButton.d.ts +1 -1
- package/lib/typescript/module/button/CloseButton.d.ts.map +1 -1
- package/lib/typescript/module/button/shared.d.ts +1 -1
- package/lib/typescript/module/button/types.d.ts +2 -0
- package/lib/typescript/module/button/types.d.ts.map +1 -1
- package/lib/typescript/module/chip/Chip.d.ts.map +1 -1
- package/lib/typescript/module/chip/types.d.ts +3 -0
- package/lib/typescript/module/chip/types.d.ts.map +1 -1
- package/lib/typescript/module/design-tokens/component-roles.d.ts +89 -0
- package/lib/typescript/module/design-tokens/component-roles.d.ts.map +1 -0
- package/lib/typescript/module/design-tokens/tailwind-preset.d.ts +3 -27
- package/lib/typescript/module/design-tokens/tailwind-preset.d.ts.map +1 -1
- package/lib/typescript/module/design-tokens/theme-css.d.ts +0 -24
- package/lib/typescript/module/design-tokens/theme-css.d.ts.map +1 -1
- package/lib/typescript/module/dialog/Dialog.web.d.ts.map +1 -1
- package/lib/typescript/module/dialog/types.d.ts +6 -0
- package/lib/typescript/module/dialog/types.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +4 -2
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/index.web.d.ts +4 -2
- package/lib/typescript/module/index.web.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/ar.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/bn.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/ca.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/de.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/es.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/fr.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/hi.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/id.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/it.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/ja.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/pt.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/ru.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/tr.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/types.d.ts +8 -0
- package/lib/typescript/module/locale/translations/types.d.ts.map +1 -1
- package/lib/typescript/module/locale/translations/zh.d.ts.map +1 -1
- package/lib/typescript/module/multi-agent-chat/AvatarFlightHost.d.ts +4 -0
- package/lib/typescript/module/multi-agent-chat/AvatarFlightHost.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/AvatarFlightHost.web.d.ts +3 -0
- package/lib/typescript/module/multi-agent-chat/AvatarFlightHost.web.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/AvatarHandoff.d.ts +10 -0
- package/lib/typescript/module/multi-agent-chat/AvatarHandoff.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/ChatDialogFrame.d.ts +15 -0
- package/lib/typescript/module/multi-agent-chat/ChatDialogFrame.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/ChatSidebar.d.ts +24 -0
- package/lib/typescript/module/multi-agent-chat/ChatSidebar.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/EditorRail.d.ts +7 -0
- package/lib/typescript/module/multi-agent-chat/EditorRail.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/Marketplace.d.ts +14 -0
- package/lib/typescript/module/multi-agent-chat/Marketplace.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/MarketplaceSettings.d.ts +7 -0
- package/lib/typescript/module/multi-agent-chat/MarketplaceSettings.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/MultiAgentChat.d.ts +3 -0
- package/lib/typescript/module/multi-agent-chat/MultiAgentChat.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/MultiAgentChat.web.d.ts +3 -0
- package/lib/typescript/module/multi-agent-chat/MultiAgentChat.web.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/MultiAgentChatBase.d.ts +4 -0
- package/lib/typescript/module/multi-agent-chat/MultiAgentChatBase.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/ReplyRow.d.ts +18 -0
- package/lib/typescript/module/multi-agent-chat/ReplyRow.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/ScrollSurface.d.ts +13 -0
- package/lib/typescript/module/multi-agent-chat/ScrollSurface.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/SelectedAgentPreview.d.ts +9 -0
- package/lib/typescript/module/multi-agent-chat/SelectedAgentPreview.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/WorkspaceSettingsPages.d.ts +3 -0
- package/lib/typescript/module/multi-agent-chat/WorkspaceSettingsPages.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/context.d.ts +20 -0
- package/lib/typescript/module/multi-agent-chat/context.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/data.d.ts +39 -0
- package/lib/typescript/module/multi-agent-chat/data.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/handoff.d.ts +42 -0
- package/lib/typescript/module/multi-agent-chat/handoff.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/index.d.ts +4 -0
- package/lib/typescript/module/multi-agent-chat/index.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/index.web.d.ts +4 -0
- package/lib/typescript/module/multi-agent-chat/index.web.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/marketplace-data.d.ts +26 -0
- package/lib/typescript/module/multi-agent-chat/marketplace-data.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/marketplace-logos.d.ts +30 -0
- package/lib/typescript/module/multi-agent-chat/marketplace-logos.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/messages.d.ts +175 -0
- package/lib/typescript/module/multi-agent-chat/messages.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/model-catalog.d.ts +3 -0
- package/lib/typescript/module/multi-agent-chat/model-catalog.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/stream-reply.d.ts +5 -0
- package/lib/typescript/module/multi-agent-chat/stream-reply.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/types.d.ts +21 -0
- package/lib/typescript/module/multi-agent-chat/types.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/use-replies.d.ts +14 -0
- package/lib/typescript/module/multi-agent-chat/use-replies.d.ts.map +1 -0
- package/lib/typescript/module/multi-agent-chat/use-workspace.d.ts +9 -0
- package/lib/typescript/module/multi-agent-chat/use-workspace.d.ts.map +1 -0
- package/lib/typescript/module/page-header/EdgeScrim.d.ts +10 -1
- package/lib/typescript/module/page-header/EdgeScrim.d.ts.map +1 -1
- package/lib/typescript/module/page-header/index.d.ts +2 -0
- package/lib/typescript/module/page-header/index.d.ts.map +1 -1
- package/lib/typescript/module/project-board/BoardTooltip.d.ts +7 -0
- package/lib/typescript/module/project-board/BoardTooltip.d.ts.map +1 -0
- package/lib/typescript/module/project-board/CreateTicketDialog.d.ts +12 -0
- package/lib/typescript/module/project-board/CreateTicketDialog.d.ts.map +1 -0
- package/lib/typescript/module/project-board/ProjectBoard.d.ts +3 -0
- package/lib/typescript/module/project-board/ProjectBoard.d.ts.map +1 -0
- package/lib/typescript/module/project-board/ProjectBoard.web.d.ts +3 -0
- package/lib/typescript/module/project-board/ProjectBoard.web.d.ts.map +1 -0
- package/lib/typescript/module/project-board/ProjectBoardBase.d.ts +3 -0
- package/lib/typescript/module/project-board/ProjectBoardBase.d.ts.map +1 -0
- package/lib/typescript/module/project-board/ProjectBoardControls.d.ts +32 -0
- package/lib/typescript/module/project-board/ProjectBoardControls.d.ts.map +1 -0
- package/lib/typescript/module/project-board/ProjectBoardEmptyState.d.ts +3 -0
- package/lib/typescript/module/project-board/ProjectBoardEmptyState.d.ts.map +1 -0
- package/lib/typescript/module/project-board/ProjectBoardIcons.d.ts +15 -0
- package/lib/typescript/module/project-board/ProjectBoardIcons.d.ts.map +1 -0
- package/lib/typescript/module/project-board/RiInboxArchiveLine.d.ts +7 -0
- package/lib/typescript/module/project-board/RiInboxArchiveLine.d.ts.map +1 -0
- package/lib/typescript/module/project-board/RiMoreLine.d.ts +7 -0
- package/lib/typescript/module/project-board/RiMoreLine.d.ts.map +1 -0
- package/lib/typescript/module/project-board/RiPieChart2Line.d.ts +7 -0
- package/lib/typescript/module/project-board/RiPieChart2Line.d.ts.map +1 -0
- package/lib/typescript/module/project-board/RiRestartLine.d.ts +7 -0
- package/lib/typescript/module/project-board/RiRestartLine.d.ts.map +1 -0
- package/lib/typescript/module/project-board/SourcePrimitives.d.ts +177 -0
- package/lib/typescript/module/project-board/SourcePrimitives.d.ts.map +1 -0
- package/lib/typescript/module/project-board/TicketCornerGenieSurface.web.d.ts +7 -0
- package/lib/typescript/module/project-board/TicketCornerGenieSurface.web.d.ts.map +1 -0
- package/lib/typescript/module/project-board/TicketDetailDialog.d.ts +16 -0
- package/lib/typescript/module/project-board/TicketDetailDialog.d.ts.map +1 -0
- package/lib/typescript/module/project-board/TicketGenieSurface.d.ts +9 -0
- package/lib/typescript/module/project-board/TicketGenieSurface.d.ts.map +1 -0
- package/lib/typescript/module/project-board/TicketGenieSurface.web.d.ts +6 -0
- package/lib/typescript/module/project-board/TicketGenieSurface.web.d.ts.map +1 -0
- package/lib/typescript/module/project-board/animation.web.d.ts +10 -0
- package/lib/typescript/module/project-board/animation.web.d.ts.map +1 -0
- package/lib/typescript/module/project-board/constants.d.ts +7 -0
- package/lib/typescript/module/project-board/constants.d.ts.map +1 -0
- package/lib/typescript/module/project-board/context.d.ts +39 -0
- package/lib/typescript/module/project-board/context.d.ts.map +1 -0
- package/lib/typescript/module/project-board/index.d.ts +3 -0
- package/lib/typescript/module/project-board/index.d.ts.map +1 -0
- package/lib/typescript/module/project-board/index.web.d.ts +3 -0
- package/lib/typescript/module/project-board/index.web.d.ts.map +1 -0
- package/lib/typescript/module/project-board/messages.d.ts +73 -0
- package/lib/typescript/module/project-board/messages.d.ts.map +1 -0
- package/lib/typescript/module/project-board/shared.d.ts +18 -0
- package/lib/typescript/module/project-board/shared.d.ts.map +1 -0
- package/lib/typescript/module/project-board/types.d.ts +78 -0
- package/lib/typescript/module/project-board/types.d.ts.map +1 -0
- package/lib/typescript/module/segmented-control/SegmentedControl.d.ts +4 -2
- package/lib/typescript/module/segmented-control/SegmentedControl.d.ts.map +1 -1
- package/lib/typescript/module/settings-modal/SettingsModal.d.ts.map +1 -1
- package/lib/typescript/module/settings-modal/SettingsRows.d.ts +1 -1
- package/lib/typescript/module/settings-modal/SettingsRows.d.ts.map +1 -1
- package/lib/typescript/module/settings-modal/index.d.ts +1 -1
- package/lib/typescript/module/settings-modal/index.d.ts.map +1 -1
- package/lib/typescript/module/settings-modal/types.d.ts +12 -1
- package/lib/typescript/module/settings-modal/types.d.ts.map +1 -1
- package/lib/typescript/module/sidebar/Sidebar.d.ts.map +1 -1
- package/lib/typescript/module/sidebar/SidebarItem.d.ts.map +1 -1
- package/lib/typescript/module/sidebar/SidebarTeamMenu.d.ts.map +1 -1
- package/lib/typescript/module/sidebar/SidebarToolbar.d.ts +4 -0
- package/lib/typescript/module/sidebar/SidebarToolbar.d.ts.map +1 -0
- package/lib/typescript/module/sidebar/index.d.ts +2 -1
- package/lib/typescript/module/sidebar/index.d.ts.map +1 -1
- package/lib/typescript/module/sidebar/parts.d.ts +2 -1
- package/lib/typescript/module/sidebar/parts.d.ts.map +1 -1
- package/lib/typescript/module/sidebar/types.d.ts +47 -5
- package/lib/typescript/module/sidebar/types.d.ts.map +1 -1
- package/lib/typescript/module/social-button/SocialButtonBase.d.ts +7 -0
- package/lib/typescript/module/social-button/SocialButtonBase.d.ts.map +1 -1
- package/lib/typescript/module/textarea/Textarea.d.ts +1 -1
- package/lib/typescript/module/textarea/Textarea.d.ts.map +1 -1
- package/lib/typescript/module/textarea/types.d.ts +6 -1
- package/lib/typescript/module/textarea/types.d.ts.map +1 -1
- package/lib/typescript/module/theme/color-scope/seed-scope.d.ts.map +1 -1
- package/package.json +84 -18
- package/src/agent-avatar/AgentAvatar.tsx +299 -0
- package/src/agent-avatar/AgentFace.tsx +20 -0
- package/src/agent-avatar/SvgDrawing.tsx +237 -0
- package/src/agent-avatar/artwork.ts +195 -0
- package/src/agent-avatar/attention.ts +109 -0
- package/src/agent-avatar/blink.ts +47 -0
- package/src/agent-avatar/context.ts +7 -0
- package/src/agent-avatar/drawing.ts +276 -0
- package/src/agent-avatar/entrance.ts +25 -0
- package/src/agent-avatar/face.ts +540 -0
- package/src/agent-avatar/fold-outlines.ts +90 -0
- package/src/agent-avatar/fold.ts +444 -0
- package/src/agent-avatar/grain.ts +3 -0
- package/src/agent-avatar/index.ts +27 -0
- package/src/agent-avatar/messages.ts +5 -0
- package/src/agent-avatar/model.ts +576 -0
- package/src/agent-avatar/shape-morph.ts +210 -0
- package/src/agent-avatar/types.ts +21 -0
- package/src/agent-avatar/wander.ts +97 -0
- package/src/agent-avatar/working.ts +20 -0
- package/src/agent-chat/AgentChatMessage.tsx +7 -0
- package/src/agent-creator/AgentCreator.tsx +32 -0
- package/src/agent-creator/AgentCreator.web.tsx +32 -0
- package/src/agent-creator/AgentCreatorBase.tsx +287 -0
- package/src/agent-creator/AgentPreferencesPanel.tsx +268 -0
- package/src/agent-creator/CustomColorPicker.tsx +382 -0
- package/src/agent-creator/EmotionPicker.tsx +201 -0
- package/src/agent-creator/GlossArt.tsx +165 -0
- package/src/agent-creator/ScrollSurface.tsx +144 -0
- package/src/agent-creator/ShapeArc.tsx +266 -0
- package/src/agent-creator/constants.ts +57 -0
- package/src/agent-creator/context.ts +38 -0
- package/src/agent-creator/index.ts +14 -0
- package/src/agent-creator/index.web.ts +19 -0
- package/src/agent-creator/messages.ts +198 -0
- package/src/agent-creator/rainbow-artwork.ts +5 -0
- package/src/agent-creator/shared.ts +102 -0
- package/src/agent-creator/types.ts +34 -0
- package/src/agent-creator/use-agent-voices.ts +72 -0
- package/src/agent-creator/use-track-events.ts +42 -0
- package/src/button/CloseButton.tsx +6 -3
- package/src/button/types.ts +2 -0
- package/src/chip/Chip.tsx +17 -10
- package/src/chip/types.ts +3 -0
- package/src/design-tokens/component-roles.ts +93 -0
- package/src/design-tokens/tailwind-preset.ts +12 -8
- package/src/design-tokens/theme-css.ts +18 -0
- package/src/design-tokens/theme.css +284 -0
- package/src/dialog/Dialog.tsx +25 -14
- package/src/dialog/Dialog.web.tsx +23 -16
- package/src/dialog/DialogHeader.tsx +1 -1
- package/src/dialog/types.ts +6 -0
- package/src/hooks/use-accessible-name-warning.ts +2 -2
- package/src/index.ts +5 -2
- package/src/index.web.ts +5 -2
- package/src/locale/translations/ar.ts +297 -0
- package/src/locale/translations/bn.ts +297 -0
- package/src/locale/translations/ca.ts +297 -0
- package/src/locale/translations/de.ts +297 -0
- package/src/locale/translations/es.ts +297 -0
- package/src/locale/translations/fr.ts +297 -0
- package/src/locale/translations/hi.ts +297 -0
- package/src/locale/translations/id.ts +297 -0
- package/src/locale/translations/it.ts +297 -0
- package/src/locale/translations/ja.ts +297 -0
- package/src/locale/translations/pt.ts +297 -0
- package/src/locale/translations/ru.ts +297 -0
- package/src/locale/translations/tr.ts +297 -0
- package/src/locale/translations/types.ts +8 -0
- package/src/locale/translations/zh.ts +297 -0
- package/src/multi-agent-chat/AvatarFlightHost.tsx +5 -0
- package/src/multi-agent-chat/AvatarFlightHost.web.tsx +5 -0
- package/src/multi-agent-chat/AvatarHandoff.tsx +258 -0
- package/src/multi-agent-chat/ChatDialogFrame.tsx +186 -0
- package/src/multi-agent-chat/ChatSidebar.tsx +384 -0
- package/src/multi-agent-chat/EditorRail.tsx +68 -0
- package/src/multi-agent-chat/Marketplace.tsx +649 -0
- package/src/multi-agent-chat/MarketplaceSettings.tsx +110 -0
- package/src/multi-agent-chat/MultiAgentChat.tsx +30 -0
- package/src/multi-agent-chat/MultiAgentChat.web.tsx +30 -0
- package/src/multi-agent-chat/MultiAgentChatBase.tsx +1202 -0
- package/src/multi-agent-chat/ReplyRow.tsx +188 -0
- package/src/multi-agent-chat/ScrollSurface.tsx +122 -0
- package/src/multi-agent-chat/SelectedAgentPreview.tsx +143 -0
- package/src/multi-agent-chat/WorkspaceSettingsPages.tsx +515 -0
- package/src/multi-agent-chat/context.ts +23 -0
- package/src/multi-agent-chat/data.ts +629 -0
- package/src/multi-agent-chat/handoff.ts +150 -0
- package/src/multi-agent-chat/index.ts +8 -0
- package/src/multi-agent-chat/index.web.ts +13 -0
- package/src/multi-agent-chat/marketplace-data.ts +359 -0
- package/src/multi-agent-chat/marketplace-logos.ts +29 -0
- package/src/multi-agent-chat/messages.ts +215 -0
- package/src/multi-agent-chat/model-catalog.tsx +461 -0
- package/src/multi-agent-chat/stream-reply.ts +39 -0
- package/src/multi-agent-chat/types.ts +27 -0
- package/src/multi-agent-chat/use-replies.ts +166 -0
- package/src/multi-agent-chat/use-workspace.ts +59 -0
- package/src/page-header/EdgeScrim.tsx +13 -3
- package/src/page-header/index.ts +2 -0
- package/src/project-board/BoardTooltip.tsx +41 -0
- package/src/project-board/CreateTicketDialog.tsx +373 -0
- package/src/project-board/ProjectBoard.tsx +34 -0
- package/src/project-board/ProjectBoard.web.tsx +32 -0
- package/src/project-board/ProjectBoardBase.tsx +1022 -0
- package/src/project-board/ProjectBoardControls.tsx +254 -0
- package/src/project-board/ProjectBoardEmptyState.tsx +179 -0
- package/src/project-board/ProjectBoardIcons.tsx +93 -0
- package/src/project-board/RiInboxArchiveLine.tsx +4 -0
- package/src/project-board/RiMoreLine.tsx +4 -0
- package/src/project-board/RiPieChart2Line.tsx +4 -0
- package/src/project-board/RiRestartLine.tsx +4 -0
- package/src/project-board/SourcePrimitives.tsx +155 -0
- package/src/project-board/TicketCornerGenieSurface.web.tsx +401 -0
- package/src/project-board/TicketDetailDialog.tsx +730 -0
- package/src/project-board/TicketGenieSurface.tsx +73 -0
- package/src/project-board/TicketGenieSurface.web.tsx +190 -0
- package/src/project-board/animation.web.ts +22 -0
- package/src/project-board/constants.ts +20 -0
- package/src/project-board/context.ts +46 -0
- package/src/project-board/index.ts +12 -0
- package/src/project-board/index.web.ts +17 -0
- package/src/project-board/messages.ts +74 -0
- package/src/project-board/shared.ts +104 -0
- package/src/project-board/types.ts +78 -0
- package/src/segmented-control/SegmentedControl.tsx +12 -8
- package/src/settings-modal/SettingsModal.tsx +9 -6
- package/src/settings-modal/SettingsRows.tsx +4 -3
- package/src/settings-modal/index.ts +1 -0
- package/src/settings-modal/types.ts +13 -1
- package/src/sidebar/Sidebar.tsx +19 -9
- package/src/sidebar/SidebarItem.tsx +36 -11
- package/src/sidebar/SidebarScrollArea.tsx +1 -1
- package/src/sidebar/SidebarTeamMenu.tsx +1 -0
- package/src/sidebar/SidebarToolbar.tsx +176 -0
- package/src/sidebar/index.ts +2 -0
- package/src/sidebar/parts.tsx +4 -2
- package/src/sidebar/types.ts +46 -5
- package/src/social-button/SocialButtonBase.tsx +1 -1
- package/src/textarea/Textarea.tsx +21 -9
- package/src/textarea/types.ts +6 -1
- package/src/theme/color-scope/seed-scope.ts +2 -0
- package/docs/dot-grid-meter.mdx +0 -66
- package/lib/commonjs/dot-grid-meter/DotGridMeter.js +0 -80
- package/lib/commonjs/dot-grid-meter/DotGridMeter.js.map +0 -1
- package/lib/commonjs/dot-grid-meter/index.js +0 -13
- package/lib/commonjs/dot-grid-meter/index.js.map +0 -1
- package/lib/module/dot-grid-meter/DotGridMeter.js +0 -75
- package/lib/module/dot-grid-meter/DotGridMeter.js.map +0 -1
- package/lib/module/dot-grid-meter/index.js +0 -4
- package/lib/module/dot-grid-meter/index.js.map +0 -1
- package/lib/typescript/commonjs/dot-grid-meter/DotGridMeter.d.ts +0 -4
- package/lib/typescript/commonjs/dot-grid-meter/DotGridMeter.d.ts.map +0 -1
- package/lib/typescript/commonjs/dot-grid-meter/index.d.ts +0 -3
- package/lib/typescript/commonjs/dot-grid-meter/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/dot-grid-meter/types.d.ts +0 -48
- package/lib/typescript/commonjs/dot-grid-meter/types.d.ts.map +0 -1
- package/lib/typescript/module/dot-grid-meter/DotGridMeter.d.ts +0 -4
- package/lib/typescript/module/dot-grid-meter/DotGridMeter.d.ts.map +0 -1
- package/lib/typescript/module/dot-grid-meter/index.d.ts +0 -3
- package/lib/typescript/module/dot-grid-meter/index.d.ts.map +0 -1
- package/lib/typescript/module/dot-grid-meter/types.d.ts +0 -48
- package/lib/typescript/module/dot-grid-meter/types.d.ts.map +0 -1
- package/src/dot-grid-meter/DotGridMeter.tsx +0 -84
- package/src/dot-grid-meter/index.ts +0 -2
- package/src/dot-grid-meter/types.ts +0 -48
- /package/lib/commonjs/{dot-grid-meter → agent-avatar}/types.js +0 -0
- /package/lib/module/{dot-grid-meter → agent-avatar}/types.js +0 -0
|
@@ -0,0 +1,540 @@
|
|
|
1
|
+
import { type DrawingContext } from './drawing';
|
|
2
|
+
import type { AvatarConfig } from './model';
|
|
3
|
+
|
|
4
|
+
/** Optical sizing is based on CSS pixels, never the canvas's Retina resolution.
|
|
5
|
+
* Keep the saved recipe unchanged; the same agent adapts to its display size.
|
|
6
|
+
*/
|
|
7
|
+
export function faceAtSize(
|
|
8
|
+
config: AvatarConfig,
|
|
9
|
+
cssSize: number,
|
|
10
|
+
): AvatarConfig {
|
|
11
|
+
const small = Math.max(0, Math.min(1, (64 - cssSize) / 40));
|
|
12
|
+
if (small === 0) return config;
|
|
13
|
+
return {
|
|
14
|
+
...config,
|
|
15
|
+
eyeSize: Math.min(
|
|
16
|
+
36,
|
|
17
|
+
config.eyeSize * (1 + small * (config.family === 'alien' ? 0.22 : 0.35)),
|
|
18
|
+
),
|
|
19
|
+
eyeGap: config.eyeGap * (1 + small * 0.14),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/** A small continuous face rig: expressions interpolate instead of swapping icons. */
|
|
24
|
+
export type FaceRig = {
|
|
25
|
+
leftOpen: number;
|
|
26
|
+
rightOpen: number;
|
|
27
|
+
width: number;
|
|
28
|
+
smile: number;
|
|
29
|
+
leftAngle: number;
|
|
30
|
+
rightAngle: number;
|
|
31
|
+
brow: number;
|
|
32
|
+
browAngle: number;
|
|
33
|
+
browLift: number;
|
|
34
|
+
browAsymmetry: number;
|
|
35
|
+
lookX: number;
|
|
36
|
+
lookY: number;
|
|
37
|
+
headTilt: number;
|
|
38
|
+
bounce: number;
|
|
39
|
+
tremble: number;
|
|
40
|
+
blink: number;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
const NEUTRAL: FaceRig = {
|
|
44
|
+
leftOpen: 1,
|
|
45
|
+
rightOpen: 1,
|
|
46
|
+
width: 0.45,
|
|
47
|
+
smile: 0,
|
|
48
|
+
leftAngle: -0.08,
|
|
49
|
+
rightAngle: -0.08,
|
|
50
|
+
brow: 0,
|
|
51
|
+
browAngle: 0,
|
|
52
|
+
browLift: 0,
|
|
53
|
+
browAsymmetry: 0,
|
|
54
|
+
lookX: 0,
|
|
55
|
+
lookY: 0,
|
|
56
|
+
headTilt: 0,
|
|
57
|
+
bounce: 0,
|
|
58
|
+
tremble: 0,
|
|
59
|
+
blink: 1,
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const EXPRESSIONS: Record<AvatarConfig['eyes'], Partial<FaceRig>> = {
|
|
63
|
+
neutral: {},
|
|
64
|
+
happy: { leftOpen: 0.75, rightOpen: 0.75, width: 0.53, smile: 1, bounce: 1 },
|
|
65
|
+
angry: {
|
|
66
|
+
leftOpen: 0.45,
|
|
67
|
+
rightOpen: 0.45,
|
|
68
|
+
width: 0.52,
|
|
69
|
+
leftAngle: 0.35,
|
|
70
|
+
rightAngle: -0.35,
|
|
71
|
+
brow: 1,
|
|
72
|
+
browAngle: 0.45,
|
|
73
|
+
browLift: -2,
|
|
74
|
+
headTilt: -0.07,
|
|
75
|
+
lookY: 2,
|
|
76
|
+
},
|
|
77
|
+
thinking: {
|
|
78
|
+
leftOpen: 0.7,
|
|
79
|
+
rightOpen: 0.42,
|
|
80
|
+
brow: 0.9,
|
|
81
|
+
browAngle: -0.1,
|
|
82
|
+
browLift: 2,
|
|
83
|
+
browAsymmetry: 6,
|
|
84
|
+
lookX: 8,
|
|
85
|
+
lookY: -9,
|
|
86
|
+
headTilt: 0.15,
|
|
87
|
+
},
|
|
88
|
+
shook: {
|
|
89
|
+
leftOpen: 1.55,
|
|
90
|
+
rightOpen: 1.55,
|
|
91
|
+
width: 0.57,
|
|
92
|
+
brow: 1,
|
|
93
|
+
browLift: 11,
|
|
94
|
+
browAngle: -0.15,
|
|
95
|
+
lookY: -2,
|
|
96
|
+
tremble: 1,
|
|
97
|
+
},
|
|
98
|
+
curious: {
|
|
99
|
+
leftOpen: 1.15,
|
|
100
|
+
rightOpen: 0.68,
|
|
101
|
+
brow: 0.8,
|
|
102
|
+
browLift: 4,
|
|
103
|
+
browAsymmetry: 8,
|
|
104
|
+
lookX: 4,
|
|
105
|
+
lookY: -3,
|
|
106
|
+
headTilt: -0.13,
|
|
107
|
+
},
|
|
108
|
+
wink: {
|
|
109
|
+
leftOpen: 1,
|
|
110
|
+
rightOpen: 0.08,
|
|
111
|
+
width: 0.45,
|
|
112
|
+
rightAngle: -0.13,
|
|
113
|
+
headTilt: -0.1,
|
|
114
|
+
bounce: 0.3,
|
|
115
|
+
},
|
|
116
|
+
sleepy: {
|
|
117
|
+
leftOpen: 0.18,
|
|
118
|
+
rightOpen: 0.18,
|
|
119
|
+
width: 0.55,
|
|
120
|
+
leftAngle: 0.08,
|
|
121
|
+
rightAngle: -0.08,
|
|
122
|
+
lookY: 5,
|
|
123
|
+
headTilt: 0.12,
|
|
124
|
+
},
|
|
125
|
+
sad: {
|
|
126
|
+
leftOpen: 0.48,
|
|
127
|
+
rightOpen: 0.48,
|
|
128
|
+
width: 0.48,
|
|
129
|
+
leftAngle: -0.28,
|
|
130
|
+
rightAngle: 0.28,
|
|
131
|
+
brow: 0.85,
|
|
132
|
+
browAngle: -0.65,
|
|
133
|
+
browLift: -1,
|
|
134
|
+
lookY: 7,
|
|
135
|
+
headTilt: 0.07,
|
|
136
|
+
},
|
|
137
|
+
worried: {
|
|
138
|
+
leftOpen: 1.1,
|
|
139
|
+
rightOpen: 1.1,
|
|
140
|
+
width: 0.34,
|
|
141
|
+
brow: 1,
|
|
142
|
+
browAngle: -0.85,
|
|
143
|
+
browLift: 5,
|
|
144
|
+
lookY: -3,
|
|
145
|
+
tremble: 0.18,
|
|
146
|
+
},
|
|
147
|
+
skeptical: {
|
|
148
|
+
leftOpen: 0.16,
|
|
149
|
+
rightOpen: 0.65,
|
|
150
|
+
width: 0.6,
|
|
151
|
+
brow: 0.8,
|
|
152
|
+
browAngle: 0.06,
|
|
153
|
+
browAsymmetry: -12,
|
|
154
|
+
browLift: 1,
|
|
155
|
+
headTilt: 0.1,
|
|
156
|
+
lookX: -5,
|
|
157
|
+
},
|
|
158
|
+
focused: {
|
|
159
|
+
leftOpen: 0.32,
|
|
160
|
+
rightOpen: 0.32,
|
|
161
|
+
width: 0.68,
|
|
162
|
+
leftAngle: 0.12,
|
|
163
|
+
rightAngle: -0.12,
|
|
164
|
+
brow: 0.4,
|
|
165
|
+
browAngle: 0.15,
|
|
166
|
+
browLift: -4,
|
|
167
|
+
lookY: 1,
|
|
168
|
+
},
|
|
169
|
+
excited: {
|
|
170
|
+
leftOpen: 1.3,
|
|
171
|
+
rightOpen: 1.3,
|
|
172
|
+
width: 0.68,
|
|
173
|
+
smile: 1,
|
|
174
|
+
brow: 0.65,
|
|
175
|
+
browLift: 8,
|
|
176
|
+
bounce: 1.3,
|
|
177
|
+
},
|
|
178
|
+
calm: {
|
|
179
|
+
leftOpen: 0.25,
|
|
180
|
+
rightOpen: 0.25,
|
|
181
|
+
width: 0.62,
|
|
182
|
+
smile: 1,
|
|
183
|
+
leftAngle: -0.1,
|
|
184
|
+
rightAngle: 0.1,
|
|
185
|
+
headTilt: -0.04,
|
|
186
|
+
},
|
|
187
|
+
shy: {
|
|
188
|
+
leftOpen: 0.6,
|
|
189
|
+
rightOpen: 0.6,
|
|
190
|
+
width: 0.3,
|
|
191
|
+
leftAngle: -0.3,
|
|
192
|
+
rightAngle: 0.3,
|
|
193
|
+
lookY: 10,
|
|
194
|
+
lookX: -4,
|
|
195
|
+
headTilt: -0.18,
|
|
196
|
+
},
|
|
197
|
+
confused: {
|
|
198
|
+
leftOpen: 0.45,
|
|
199
|
+
rightOpen: 1.3,
|
|
200
|
+
width: 0.5,
|
|
201
|
+
leftAngle: -0.2,
|
|
202
|
+
rightAngle: 0.14,
|
|
203
|
+
brow: 0.9,
|
|
204
|
+
browAngle: -0.25,
|
|
205
|
+
browAsymmetry: -10,
|
|
206
|
+
browLift: 3,
|
|
207
|
+
headTilt: 0.2,
|
|
208
|
+
lookX: -4,
|
|
209
|
+
},
|
|
210
|
+
};
|
|
211
|
+
|
|
212
|
+
export function mixFace(from: FaceRig, to: FaceRig, progress: number): FaceRig {
|
|
213
|
+
const result = { ...to };
|
|
214
|
+
for (const key of Object.keys(result) as (keyof FaceRig)[])
|
|
215
|
+
result[key] =
|
|
216
|
+
(from[key] ?? to[key]) + (to[key] - (from[key] ?? to[key])) * progress;
|
|
217
|
+
return result;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
/** Critically damped motion retains velocity when an expression is interrupted. */
|
|
221
|
+
export function easeFace(
|
|
222
|
+
current: FaceRig,
|
|
223
|
+
target: FaceRig,
|
|
224
|
+
velocity: Partial<FaceRig>,
|
|
225
|
+
seconds: number,
|
|
226
|
+
): FaceRig {
|
|
227
|
+
const result = { ...target };
|
|
228
|
+
const dt = Math.max(0, Math.min(seconds, 0.064));
|
|
229
|
+
const speed = 16;
|
|
230
|
+
const decay = Math.exp(-speed * dt);
|
|
231
|
+
for (const key of Object.keys(target) as (keyof FaceRig)[]) {
|
|
232
|
+
const delta = (current[key] ?? target[key]) - target[key];
|
|
233
|
+
const v = velocity[key] ?? 0;
|
|
234
|
+
const change = v + speed * delta;
|
|
235
|
+
let next = target[key] + (delta + change * dt) * decay;
|
|
236
|
+
let nextVelocity = (v - speed * change * dt) * decay;
|
|
237
|
+
if (
|
|
238
|
+
[
|
|
239
|
+
'leftOpen',
|
|
240
|
+
'rightOpen',
|
|
241
|
+
'width',
|
|
242
|
+
'bounce',
|
|
243
|
+
'tremble',
|
|
244
|
+
'smile',
|
|
245
|
+
'brow',
|
|
246
|
+
].includes(key) &&
|
|
247
|
+
next < 0
|
|
248
|
+
) {
|
|
249
|
+
next = 0;
|
|
250
|
+
nextVelocity = 0;
|
|
251
|
+
}
|
|
252
|
+
if ((key === 'smile' || key === 'brow') && next > 1) {
|
|
253
|
+
next = 1;
|
|
254
|
+
nextVelocity = 0;
|
|
255
|
+
}
|
|
256
|
+
if (
|
|
257
|
+
Math.abs(next - target[key]) < 0.0005 &&
|
|
258
|
+
Math.abs(nextVelocity) < 0.005
|
|
259
|
+
) {
|
|
260
|
+
next = target[key];
|
|
261
|
+
nextVelocity = 0;
|
|
262
|
+
}
|
|
263
|
+
result[key] = next;
|
|
264
|
+
velocity[key] = nextVelocity;
|
|
265
|
+
}
|
|
266
|
+
return result;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
export function expressionRig(config: AvatarConfig): FaceRig {
|
|
270
|
+
if (config.idle)
|
|
271
|
+
return {
|
|
272
|
+
...NEUTRAL,
|
|
273
|
+
...EXPRESSIONS.sleepy,
|
|
274
|
+
leftOpen: 0.1,
|
|
275
|
+
rightOpen: 0.13,
|
|
276
|
+
headTilt: 0.09,
|
|
277
|
+
};
|
|
278
|
+
return mixFace(
|
|
279
|
+
NEUTRAL,
|
|
280
|
+
{ ...NEUTRAL, ...EXPRESSIONS[config.eyes] },
|
|
281
|
+
config.expression / 100,
|
|
282
|
+
);
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
/** Project artwork attached to a sphere, pitching first and then turning sideways.
|
|
286
|
+
* Each point gets its own depth: the far eye compresses, tilts, and recedes.
|
|
287
|
+
*/
|
|
288
|
+
export function projectEyePoint(
|
|
289
|
+
x: number,
|
|
290
|
+
y: number,
|
|
291
|
+
yaw: number,
|
|
292
|
+
pitch: number,
|
|
293
|
+
): [number, number] {
|
|
294
|
+
const radius = 86;
|
|
295
|
+
const z = Math.sqrt(Math.max(1, radius * radius - x * x - y * y));
|
|
296
|
+
const y1 = y * Math.cos(pitch) + z * Math.sin(pitch);
|
|
297
|
+
const z1 = z * Math.cos(pitch) - y * Math.sin(pitch);
|
|
298
|
+
const x2 = x * Math.cos(yaw) + z1 * Math.sin(yaw);
|
|
299
|
+
const z2 = z1 * Math.cos(yaw) - x * Math.sin(yaw);
|
|
300
|
+
const perspective = (360 - radius) / (360 - z2);
|
|
301
|
+
return [x2 * perspective, y1 * perspective];
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
const DIRECTIONS: Record<
|
|
305
|
+
Exclude<AvatarConfig['lookAt'], 'wander'>,
|
|
306
|
+
[number, number]
|
|
307
|
+
> = {
|
|
308
|
+
'top-left': [-1, -1],
|
|
309
|
+
top: [0, -1],
|
|
310
|
+
'top-right': [1, -1],
|
|
311
|
+
left: [-1, 0],
|
|
312
|
+
center: [0, 0],
|
|
313
|
+
right: [1, 0],
|
|
314
|
+
'bottom-left': [-1, 1],
|
|
315
|
+
bottom: [0, 1],
|
|
316
|
+
'bottom-right': [1, 1],
|
|
317
|
+
};
|
|
318
|
+
|
|
319
|
+
export function gazeAngles(
|
|
320
|
+
c: AvatarConfig,
|
|
321
|
+
_phase: number,
|
|
322
|
+
rig: FaceRig,
|
|
323
|
+
wander: [number, number] = [0, 0],
|
|
324
|
+
): [number, number] {
|
|
325
|
+
if (c.idle) return [0, 0.055];
|
|
326
|
+
const [x, y] =
|
|
327
|
+
c.lookAt === 'wander' ? wander : (DIRECTIONS[c.lookAt] ?? [0, 0]);
|
|
328
|
+
// Narrow silhouettes leave less room for the same face to turn.
|
|
329
|
+
const room =
|
|
330
|
+
c.family === 'fold'
|
|
331
|
+
? 0.68
|
|
332
|
+
: c.family === 'alien'
|
|
333
|
+
? 0.58
|
|
334
|
+
: c.shape === 'triangle'
|
|
335
|
+
? 0.52
|
|
336
|
+
: c.shape === 'diamond'
|
|
337
|
+
? 0.7
|
|
338
|
+
: 1;
|
|
339
|
+
const eyeExtent =
|
|
340
|
+
c.eyeSize * Math.max(rig.leftOpen, rig.rightOpen) + rig.browLift;
|
|
341
|
+
const sizeRoom = Math.max(0.45, 1 - Math.max(0, eyeExtent - 27) * 0.018);
|
|
342
|
+
const travel = (c.gaze / 100) * room * sizeRoom;
|
|
343
|
+
return [
|
|
344
|
+
x * 0.68 * travel + rig.lookX / 180,
|
|
345
|
+
y * 0.62 * travel + rig.lookY / 180,
|
|
346
|
+
];
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
export function drawFace(
|
|
350
|
+
ctx: DrawingContext,
|
|
351
|
+
c: AvatarConfig,
|
|
352
|
+
_phase: number,
|
|
353
|
+
rig: FaceRig,
|
|
354
|
+
angles?: [number, number],
|
|
355
|
+
cssSize = 200,
|
|
356
|
+
bodyYaw = 0,
|
|
357
|
+
) {
|
|
358
|
+
const [yaw, pitch] = angles ?? gazeAngles(c, _phase, rig);
|
|
359
|
+
const tilt = (c.eyeTilt * Math.PI) / 180 + rig.headTilt + yaw * pitch * 0.8;
|
|
360
|
+
const project = (x: number, y: number) =>
|
|
361
|
+
projectEyePoint(
|
|
362
|
+
x * Math.cos(tilt) - y * Math.sin(tilt),
|
|
363
|
+
x * Math.sin(tilt) + y * Math.cos(tilt),
|
|
364
|
+
yaw + bodyYaw,
|
|
365
|
+
pitch,
|
|
366
|
+
);
|
|
367
|
+
const blink = c.motion > 0 ? rig.blink : 1;
|
|
368
|
+
ctx.save();
|
|
369
|
+
ctx.fillStyle = ctx.strokeStyle = c.lightEyes
|
|
370
|
+
? 'hsl(40, 30%, 98%)'
|
|
371
|
+
: 'hsl(240, 15%, 8%)';
|
|
372
|
+
ctx.lineCap = 'round';
|
|
373
|
+
const faceAlpha = ctx.globalAlpha;
|
|
374
|
+
|
|
375
|
+
for (const side of [-1, 1]) {
|
|
376
|
+
const alien = c.family === 'alien';
|
|
377
|
+
const center = (side * c.eyeGap) / 2;
|
|
378
|
+
// Each eye crosses the horizon separately as its surface normal turns away.
|
|
379
|
+
const normal =
|
|
380
|
+
Math.sqrt(Math.max(0, 86 * 86 - center * center)) *
|
|
381
|
+
Math.cos(yaw + bodyYaw) *
|
|
382
|
+
Math.cos(pitch) -
|
|
383
|
+
center * Math.sin(yaw + bodyYaw);
|
|
384
|
+
ctx.globalAlpha = faceAlpha * Math.max(0, Math.min(1, normal / 12));
|
|
385
|
+
if (ctx.globalAlpha === 0) continue;
|
|
386
|
+
const open = side === -1 ? rig.leftOpen : rig.rightOpen;
|
|
387
|
+
const minimumLid = cssSize <= 48 ? 90 / cssSize : 1.2;
|
|
388
|
+
const h = Math.max(
|
|
389
|
+
minimumLid,
|
|
390
|
+
c.eyeSize * (alien ? 0.6 : 0.96) * open * blink,
|
|
391
|
+
);
|
|
392
|
+
const w = alien
|
|
393
|
+
? Math.min(c.eyeSize * 1.06 * (rig.width / 0.45) ** 0.25, c.eyeGap * 0.43)
|
|
394
|
+
: c.eyeSize * rig.width;
|
|
395
|
+
const angle =
|
|
396
|
+
(side === -1 ? rig.leftAngle : rig.rightAngle) +
|
|
397
|
+
(alien ? 0.08 - side * 0.4 : 0);
|
|
398
|
+
const eyePoint = (x: number, y: number) =>
|
|
399
|
+
project(
|
|
400
|
+
center + x * Math.cos(angle) - y * Math.sin(angle),
|
|
401
|
+
(alien ? -9 : 0) + x * Math.sin(angle) + y * Math.cos(angle),
|
|
402
|
+
);
|
|
403
|
+
const radius = Math.min(w, h);
|
|
404
|
+
ctx.beginPath();
|
|
405
|
+
if (alien) {
|
|
406
|
+
// Two tapered lids form a slanted almond lens, wrapped onto the same surface.
|
|
407
|
+
for (let edge = 0; edge < 2; edge++) {
|
|
408
|
+
for (let i = 0; i <= 24; i++) {
|
|
409
|
+
const t = edge === 0 ? i / 24 : 1 - i / 24;
|
|
410
|
+
const x = -w + t * w * 2;
|
|
411
|
+
const arch = 4 * t * (1 - t);
|
|
412
|
+
const upper = -h * arch;
|
|
413
|
+
const lower = h * arch * (1 - 2 * rig.smile) + rig.smile * 4 * arch;
|
|
414
|
+
const point = eyePoint(x, edge === 0 ? upper : lower);
|
|
415
|
+
if (!edge && !i) ctx.moveTo(...point);
|
|
416
|
+
else ctx.lineTo(...point);
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
} else {
|
|
420
|
+
// Morph a vertical capsule into a bent horizontal capsule. Sample both
|
|
421
|
+
// the round caps and connecting edges so the lid keeps a curved middle.
|
|
422
|
+
const lidRadius = Math.min(w, Math.max(minimumLid, c.eyeSize * 0.16));
|
|
423
|
+
const vertex = (
|
|
424
|
+
corner: number,
|
|
425
|
+
a: number,
|
|
426
|
+
): [number, number, number, number] => {
|
|
427
|
+
const direction = corner === 0 || corner === 3 ? 1 : -1;
|
|
428
|
+
return [
|
|
429
|
+
direction * (w - radius) + Math.cos(a) * radius,
|
|
430
|
+
(corner < 2 ? 1 : -1) * (h - radius) + Math.sin(a) * radius,
|
|
431
|
+
direction * (w - lidRadius) + Math.cos(a) * lidRadius,
|
|
432
|
+
Math.sin(a) * lidRadius,
|
|
433
|
+
];
|
|
434
|
+
};
|
|
435
|
+
let first = true;
|
|
436
|
+
const plot = ([x, y, lidX, lidY]: [number, number, number, number]) => {
|
|
437
|
+
const smileY = lidY - h * 0.6 * (1 - (lidX / w) ** 2);
|
|
438
|
+
const point = eyePoint(
|
|
439
|
+
x * (1 - rig.smile) + lidX * rig.smile,
|
|
440
|
+
y * (1 - rig.smile) + smileY * rig.smile,
|
|
441
|
+
);
|
|
442
|
+
if (first) {
|
|
443
|
+
ctx.moveTo(...point);
|
|
444
|
+
first = false;
|
|
445
|
+
} else ctx.lineTo(...point);
|
|
446
|
+
};
|
|
447
|
+
for (let corner = 0; corner < 4; corner++) {
|
|
448
|
+
for (let step = 0; step <= 10; step++)
|
|
449
|
+
plot(vertex(corner, ((corner + step / 10) * Math.PI) / 2));
|
|
450
|
+
const end = vertex(corner, ((corner + 1) * Math.PI) / 2);
|
|
451
|
+
const next = vertex((corner + 1) % 4, ((corner + 1) * Math.PI) / 2);
|
|
452
|
+
for (let step = 1; step <= 8; step++)
|
|
453
|
+
plot(
|
|
454
|
+
end.map((value, i) => value + ((next[i]! - value) * step) / 8) as [
|
|
455
|
+
number,
|
|
456
|
+
number,
|
|
457
|
+
number,
|
|
458
|
+
number,
|
|
459
|
+
],
|
|
460
|
+
);
|
|
461
|
+
}
|
|
462
|
+
}
|
|
463
|
+
ctx.closePath();
|
|
464
|
+
ctx.fill();
|
|
465
|
+
|
|
466
|
+
if (alien && !c.idle && open > 0.4 && rig.smile < 0.4 && cssSize >= 48) {
|
|
467
|
+
ctx.save();
|
|
468
|
+
ctx.clip();
|
|
469
|
+
ctx.strokeStyle = c.lightEyes
|
|
470
|
+
? 'hsla(240, 15%, 8%, .13)'
|
|
471
|
+
: 'hsla(180, 20%, 98%, .28)';
|
|
472
|
+
ctx.lineWidth = 1.8;
|
|
473
|
+
ctx.beginPath();
|
|
474
|
+
ctx.moveTo(...eyePoint(-w * 0.53, -h * 0.32));
|
|
475
|
+
ctx.quadraticCurveTo(
|
|
476
|
+
...eyePoint(-w * 0.28, -h * 0.74),
|
|
477
|
+
...eyePoint(w * 0.05, -h * 0.58),
|
|
478
|
+
);
|
|
479
|
+
ctx.stroke();
|
|
480
|
+
ctx.restore();
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
if (rig.brow > 0.01 && !alien) {
|
|
484
|
+
ctx.save();
|
|
485
|
+
ctx.globalAlpha *= rig.brow;
|
|
486
|
+
const y =
|
|
487
|
+
-c.eyeSize * 0.95 - 6 - rig.browLift + side * rig.browAsymmetry * 0.5;
|
|
488
|
+
ctx.lineWidth = Math.max(2.5, c.eyeSize * 0.2);
|
|
489
|
+
ctx.beginPath();
|
|
490
|
+
for (let i = 0; i <= 16; i++) {
|
|
491
|
+
const x = ((i / 16) * 2 - 1) * (w + 1);
|
|
492
|
+
const point = project(
|
|
493
|
+
center + x,
|
|
494
|
+
y - side * x * rig.browAngle - Math.sin((i / 16) * Math.PI) * 1.5,
|
|
495
|
+
);
|
|
496
|
+
if (i === 0) ctx.moveTo(...point);
|
|
497
|
+
else ctx.lineTo(...point);
|
|
498
|
+
}
|
|
499
|
+
ctx.stroke();
|
|
500
|
+
ctx.restore();
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
|
|
504
|
+
ctx.restore();
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
/** Four staggered sleep marks float from the eye corner and dissolve. */
|
|
508
|
+
export function drawSleepMarks(
|
|
509
|
+
ctx: DrawingContext,
|
|
510
|
+
c: AvatarConfig,
|
|
511
|
+
phase: number,
|
|
512
|
+
gaze: [number, number],
|
|
513
|
+
) {
|
|
514
|
+
const anchor = projectEyePoint(
|
|
515
|
+
c.eyeGap / 2 + c.eyeSize * 0.5,
|
|
516
|
+
-c.eyeSize * 0.55,
|
|
517
|
+
...gaze,
|
|
518
|
+
);
|
|
519
|
+
ctx.save();
|
|
520
|
+
ctx.fillStyle = c.lightEyes ? 'hsl(40, 30%, 98%)' : 'hsl(240, 15%, 8%)';
|
|
521
|
+
ctx.textAlign = 'center';
|
|
522
|
+
ctx.textBaseline = 'middle';
|
|
523
|
+
for (let i = 0; i < 4; i++) {
|
|
524
|
+
const progress = (((phase / (Math.PI * 2) + i * 0.25) % 1) + 1) % 1;
|
|
525
|
+
// Vanish before wrapping, so there is no visible jump to the eye corner.
|
|
526
|
+
const alpha = Math.sin(progress * Math.PI) ** 1.5;
|
|
527
|
+
const letterSize = (i % 2 ? 13 : 10) + progress * 3;
|
|
528
|
+
ctx.save();
|
|
529
|
+
ctx.globalAlpha = alpha * 0.8;
|
|
530
|
+
ctx.translate(
|
|
531
|
+
anchor[0] + 5 + progress * 15 + Math.sin(progress * Math.PI) * 4,
|
|
532
|
+
anchor[1] - 3 - progress * 44,
|
|
533
|
+
);
|
|
534
|
+
ctx.rotate(-0.12 + progress * 0.2);
|
|
535
|
+
ctx.font = `800 ${letterSize}px ui-rounded, system-ui, sans-serif`;
|
|
536
|
+
ctx.fillText(i % 2 ? 'Z' : 'z', 0, 0);
|
|
537
|
+
ctx.restore();
|
|
538
|
+
}
|
|
539
|
+
ctx.restore();
|
|
540
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
type Point = [number, number];
|
|
2
|
+
type Curve = [number, number, number, number, number, number];
|
|
3
|
+
type Outline = { start: Point; curves: Curve[] };
|
|
4
|
+
|
|
5
|
+
// Clockwise, rounded contours with enough uninterrupted space for a small face.
|
|
6
|
+
const outlines: Record<'heart' | 'cloud' | 'diamond' | 'shield', Outline> = {
|
|
7
|
+
heart: {
|
|
8
|
+
start: [0, -46],
|
|
9
|
+
curves: [
|
|
10
|
+
[12, -46, 16, -73, 43, -73],
|
|
11
|
+
[86, -73, 96, -29, 76, 2],
|
|
12
|
+
[59, 34, 28, 64, 10, 78],
|
|
13
|
+
[4, 84, -4, 84, -10, 78],
|
|
14
|
+
[-28, 64, -59, 34, -76, 2],
|
|
15
|
+
[-96, -29, -86, -73, -43, -73],
|
|
16
|
+
[-16, -73, -12, -46, 0, -46],
|
|
17
|
+
],
|
|
18
|
+
},
|
|
19
|
+
cloud: {
|
|
20
|
+
start: [0, -75],
|
|
21
|
+
curves: [
|
|
22
|
+
[25, -75, 42, -54, 44, -32],
|
|
23
|
+
[70, -45, 93, -23, 92, 0],
|
|
24
|
+
[105, 30, 81, 62, 55, 62],
|
|
25
|
+
[21, 64, -19, 64, -54, 62],
|
|
26
|
+
[-84, 62, -100, 40, -96, 13],
|
|
27
|
+
[-94, -10, -76, -24, -55, -23],
|
|
28
|
+
[-59, -49, -35, -66, -15, -58],
|
|
29
|
+
[-12, -68, -8, -75, 0, -75],
|
|
30
|
+
],
|
|
31
|
+
},
|
|
32
|
+
diamond: {
|
|
33
|
+
start: [0, -88],
|
|
34
|
+
curves: [
|
|
35
|
+
[8, -88, 14, -77, 24, -66],
|
|
36
|
+
[42, -46, 61, -25, 76, -10],
|
|
37
|
+
[84, -2, 84, 2, 76, 10],
|
|
38
|
+
[61, 25, 42, 46, 24, 66],
|
|
39
|
+
[14, 77, 8, 88, 0, 88],
|
|
40
|
+
[-8, 88, -14, 77, -24, 66],
|
|
41
|
+
[-42, 46, -61, 25, -76, 10],
|
|
42
|
+
[-84, 2, -84, -2, -76, -10],
|
|
43
|
+
[-61, -25, -42, -46, -24, -66],
|
|
44
|
+
[-14, -77, -8, -88, 0, -88],
|
|
45
|
+
],
|
|
46
|
+
},
|
|
47
|
+
shield: {
|
|
48
|
+
start: [0, -86],
|
|
49
|
+
curves: [
|
|
50
|
+
[7, -86, 16, -74, 33, -67],
|
|
51
|
+
[48, -60, 63, -56, 73, -54],
|
|
52
|
+
[80, -53, 81, -49, 81, -41],
|
|
53
|
+
[81, -26, 81, -7, 80, 10],
|
|
54
|
+
[79, 42, 51, 60, 10, 84],
|
|
55
|
+
[4, 88, -4, 88, -10, 84],
|
|
56
|
+
[-51, 60, -79, 42, -80, 10],
|
|
57
|
+
[-81, -7, -81, -26, -81, -41],
|
|
58
|
+
[-81, -49, -80, -53, -73, -54],
|
|
59
|
+
[-63, -56, -48, -60, -33, -67],
|
|
60
|
+
[-16, -74, -7, -86, 0, -86],
|
|
61
|
+
],
|
|
62
|
+
},
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
export type PaperSymbol = keyof typeof outlines;
|
|
66
|
+
export const isPaperSymbol = (shape: string): shape is PaperSymbol =>
|
|
67
|
+
Object.prototype.hasOwnProperty.call(outlines, shape);
|
|
68
|
+
|
|
69
|
+
/** Same contour drives the front, tucked sheet, and connecting turn surfaces. */
|
|
70
|
+
export function paperSymbolPoint(shape: PaperSymbol, angle: number): Point {
|
|
71
|
+
const outline = outlines[shape];
|
|
72
|
+
const turn = (angle + Math.PI / 2) / (Math.PI * 2);
|
|
73
|
+
const position = (((turn % 1) + 1) % 1) * outline.curves.length;
|
|
74
|
+
const index = Math.floor(position),
|
|
75
|
+
t = position - index,
|
|
76
|
+
u = 1 - t;
|
|
77
|
+
const previous = index ? outline.curves[index - 1] : null;
|
|
78
|
+
const start: Point = previous ? [previous[4], previous[5]] : outline.start;
|
|
79
|
+
const c = outline.curves[index]!;
|
|
80
|
+
return [
|
|
81
|
+
u ** 3 * start[0] +
|
|
82
|
+
3 * u * u * t * c[0] +
|
|
83
|
+
3 * u * t * t * c[2] +
|
|
84
|
+
t ** 3 * c[4],
|
|
85
|
+
u ** 3 * start[1] +
|
|
86
|
+
3 * u * u * t * c[1] +
|
|
87
|
+
3 * u * t * t * c[3] +
|
|
88
|
+
t ** 3 * c[5],
|
|
89
|
+
];
|
|
90
|
+
}
|