@razorpay/blade 12.90.0 → 12.91.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/build/lib/web/development/_virtual/cloneDeep.js +1 -1
- package/build/lib/web/development/_virtual/cloneDeep3.js +1 -1
- package/build/lib/web/development/components/ChatMessage/ChatMessage.web.js +10 -2
- package/build/lib/web/development/components/ChatMessage/ChatMessage.web.js.map +1 -1
- package/build/lib/web/development/components/ChatMessage/DefaultMessageBubble.web.js +26 -7
- package/build/lib/web/development/components/ChatMessage/DefaultMessageBubble.web.js.map +1 -1
- package/build/lib/web/development/components/ChatMessage/ReasoningTraces.web.js +378 -0
- package/build/lib/web/development/components/ChatMessage/ReasoningTraces.web.js.map +1 -0
- package/build/lib/web/development/node_modules/es-toolkit/dist/compat/object/cloneDeep.js +1 -1
- package/build/lib/web/development/node_modules/es-toolkit/dist/compat/predicate/matches.js +2 -2
- package/build/lib/web/development/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.js +2 -2
- package/build/lib/web/development/node_modules/es-toolkit/dist/object/cloneDeep.js +1 -1
- package/build/lib/web/production/components/ChatMessage/ChatMessage.web.js +10 -2
- package/build/lib/web/production/components/ChatMessage/ChatMessage.web.js.map +1 -1
- package/build/lib/web/production/components/ChatMessage/DefaultMessageBubble.web.js +26 -7
- package/build/lib/web/production/components/ChatMessage/DefaultMessageBubble.web.js.map +1 -1
- package/build/lib/web/production/components/ChatMessage/ReasoningTraces.web.js +378 -0
- package/build/lib/web/production/components/ChatMessage/ReasoningTraces.web.js.map +1 -0
- package/build/types/components/index.d.ts +41 -0
- package/build/types/components/index.native.d.ts +41 -0
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import '../node_modules/es-toolkit/dist/object/cloneDeep.js';
|
|
1
|
+
import '../node_modules/es-toolkit/dist/compat/object/cloneDeep.js';
|
|
2
2
|
//# sourceMappingURL=cloneDeep.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import '../node_modules/es-toolkit/dist/
|
|
1
|
+
import '../node_modules/es-toolkit/dist/object/cloneDeep.js';
|
|
2
2
|
//# sourceMappingURL=cloneDeep3.js.map
|
|
@@ -23,7 +23,7 @@ import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeA
|
|
|
23
23
|
import { getStyledProps } from '../Box/styledProps/getStyledProps.js';
|
|
24
24
|
import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
|
|
25
25
|
|
|
26
|
-
var _excluded = ["messageType", "senderType", "isLoading", "validationState", "errorText", "onClick", "footerActions", "children", "leading", "loadingText", "wordBreak", "maxWidth", "thumbnails", "onThumbnailClick"];
|
|
26
|
+
var _excluded = ["messageType", "senderType", "isLoading", "validationState", "errorText", "onClick", "footerActions", "children", "leading", "loadingText", "wordBreak", "maxWidth", "thumbnails", "onThumbnailClick", "reasoningTraces", "reasoningStatus", "reasoningTitle", "reasoningActiveStepIndex"];
|
|
27
27
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
28
28
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
29
29
|
var ButtonResetCss = {
|
|
@@ -58,6 +58,10 @@ var _ChatMessage = function _ChatMessage(_ref, ref) {
|
|
|
58
58
|
maxWidth = _ref.maxWidth,
|
|
59
59
|
thumbnails = _ref.thumbnails,
|
|
60
60
|
onThumbnailClick = _ref.onThumbnailClick,
|
|
61
|
+
reasoningTraces = _ref.reasoningTraces,
|
|
62
|
+
reasoningStatus = _ref.reasoningStatus,
|
|
63
|
+
reasoningTitle = _ref.reasoningTitle,
|
|
64
|
+
reasoningActiveStepIndex = _ref.reasoningActiveStepIndex,
|
|
61
65
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
62
66
|
// Keep deprecated prop "used" to avoid lint errors while preserving compatibility.
|
|
63
67
|
void messageType;
|
|
@@ -88,7 +92,11 @@ var _ChatMessage = function _ChatMessage(_ref, ref) {
|
|
|
88
92
|
leading: leading,
|
|
89
93
|
isLoading: isLoading,
|
|
90
94
|
footerActions: footerActions,
|
|
91
|
-
isChildText: shouldWrapInText
|
|
95
|
+
isChildText: shouldWrapInText,
|
|
96
|
+
reasoningTraces: reasoningTraces,
|
|
97
|
+
reasoningStatus: reasoningStatus,
|
|
98
|
+
reasoningTitle: reasoningTitle,
|
|
99
|
+
reasoningActiveStepIndex: reasoningActiveStepIndex
|
|
92
100
|
});
|
|
93
101
|
var imagePreviewAlignment = senderType === 'self' ? 'flex-end' : 'flex-start';
|
|
94
102
|
return /*#__PURE__*/jsxs(BaseBox, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatMessage.web.js","sources":["../../../../../../src/components/ChatMessage/ChatMessage.web.tsx"],"sourcesContent":["import React from 'react';\nimport { SelfMessageBubble } from './SelfMessageBubble.web';\nimport { DefaultMessageBubble } from './DefaultMessageBubble.web';\nimport type { ChatMessageProps } from './types';\nimport { ThumbnailPreview } from './ThumbnailPreview.web';\nimport { RollingText } from '~components/RollingText';\nimport { Text } from '~components/Typography';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { getStringFromReactText } from '~utils/getStringChildren';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport type { BladeElementRef } from '~utils/types';\n\nconst ButtonResetCss = {\n background: 'none',\n border: 'none',\n padding: undefined,\n cursor: 'pointer',\n color: 'inherit',\n font: 'inherit',\n textAlign: 'left' as const,\n outline: 'inherit',\n appearance: 'none',\n backgroundColor: 'inherit',\n};\n\nconst _ChatMessage: React.ForwardRefRenderFunction<BladeElementRef, ChatMessageProps> = (\n {\n messageType = 'default',\n senderType = 'self',\n isLoading = false,\n validationState = 'none',\n errorText,\n onClick,\n footerActions,\n children,\n leading,\n loadingText,\n wordBreak = 'break-word',\n maxWidth,\n thumbnails,\n onThumbnailClick,\n ...props\n }: ChatMessageProps,\n ref: React.Ref<BladeElementRef>,\n): React.ReactElement => {\n // Keep deprecated prop \"used\" to avoid lint errors while preserving compatibility.\n void messageType;\n\n // since we can pass both string and Card component as children, we need to check if children is string or Card component\n // if children is string or array of string, we need to wrap it in Text component otherwise we will pass children as it is\n const shouldWrapInText =\n typeof children === 'string' ||\n (Array.isArray(children) && children.every((child) => typeof child === 'string')) ||\n isLoading;\n\n const loadingContent =\n isLoading && Array.isArray(loadingText) ? <RollingText texts={loadingText} /> : loadingText;\n\n const finalChildren = shouldWrapInText ? (\n <Text\n color={\n isLoading\n ? Array.isArray(loadingText)\n ? 'feedback.text.positive.intense'\n : 'surface.text.gray.muted'\n : 'surface.text.gray.normal'\n }\n weight=\"regular\"\n variant=\"body\"\n size=\"medium\"\n wordBreak={wordBreak}\n >\n {isLoading ? loadingContent : getStringFromReactText(children as string | string[])}\n </Text>\n ) : (\n (children as React.ReactElement)\n );\n\n const messageBubble =\n senderType === 'self' ? (\n <SelfMessageBubble\n validationState={validationState}\n errorText={errorText}\n children={finalChildren}\n isChildText={shouldWrapInText}\n />\n ) : (\n <DefaultMessageBubble\n children={finalChildren}\n leading={leading}\n isLoading={isLoading}\n footerActions={footerActions}\n isChildText={shouldWrapInText}\n />\n );\n\n const imagePreviewAlignment = senderType === 'self' ? 'flex-end' : 'flex-start';\n\n return (\n <BaseBox display=\"flex\" flexDirection=\"column\" gap=\"spacing.3\">\n {thumbnails && thumbnails.length > 0 ? (\n <BaseBox alignSelf={imagePreviewAlignment}>\n <ThumbnailPreview thumbnails={thumbnails} onThumbnailClick={onThumbnailClick} />\n </BaseBox>\n ) : null}\n <BaseBox\n onClick={onClick}\n {...(onClick ? { ...ButtonResetCss } : {})}\n {...metaAttribute({ name: MetaConstants.ChatMessage, testID: props.testID })}\n {...makeAnalyticsAttribute(props)}\n {...getStyledProps(props)}\n maxWidth={maxWidth}\n ref={ref as never}\n as={onClick ? 'button' : undefined}\n >\n {messageBubble}\n </BaseBox>\n </BaseBox>\n );\n};\n\nconst ChatMessage = assignWithoutSideEffects(React.forwardRef(_ChatMessage), {\n displayName: 'ChatMessage',\n componentId: MetaConstants.ChatMessage,\n});\nexport { ChatMessage };\n"],"names":["ButtonResetCss","background","border","padding","undefined","cursor","color","font","textAlign","outline","appearance","backgroundColor","_ChatMessage","_ref","ref","_ref$messageType","messageType","_ref$senderType","senderType","_ref$isLoading","isLoading","_ref$validationState","validationState","errorText","onClick","footerActions","children","leading","loadingText","_ref$wordBreak","wordBreak","maxWidth","thumbnails","onThumbnailClick","props","_objectWithoutProperties","_excluded","shouldWrapInText","Array","isArray","every","child","loadingContent","_jsx","RollingText","texts","finalChildren","Text","weight","variant","size","getStringFromReactText","messageBubble","SelfMessageBubble","isChildText","DefaultMessageBubble","imagePreviewAlignment","_jsxs","BaseBox","display","flexDirection","gap","length","alignSelf","ThumbnailPreview","_objectSpread","metaAttribute","name","MetaConstants","ChatMessage","testID","makeAnalyticsAttribute","getStyledProps","as","assignWithoutSideEffects","React","forwardRef","displayName","componentId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,IAAMA,cAAc,GAAG;AACrBC,EAAAA,UAAU,EAAE,MAAM;AAClBC,EAAAA,MAAM,EAAE,MAAM;AACdC,EAAAA,OAAO,EAAEC,SAAS;AAClBC,EAAAA,MAAM,EAAE,SAAS;AACjBC,EAAAA,KAAK,EAAE,SAAS;AAChBC,EAAAA,IAAI,EAAE,SAAS;AACfC,EAAAA,SAAS,EAAE,MAAe;AAC1BC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,UAAU,EAAE,MAAM;AAClBC,EAAAA,eAAe,EAAE,SAAA;AACnB,CAAC,CAAA;AAED,IAAMC,YAA+E,GAAG,SAAlFA,YAA+EA,CAAAC,IAAA,
|
|
1
|
+
{"version":3,"file":"ChatMessage.web.js","sources":["../../../../../../src/components/ChatMessage/ChatMessage.web.tsx"],"sourcesContent":["import React from 'react';\nimport { SelfMessageBubble } from './SelfMessageBubble.web';\nimport { DefaultMessageBubble } from './DefaultMessageBubble.web';\nimport type { ChatMessageProps } from './types';\nimport { ThumbnailPreview } from './ThumbnailPreview.web';\nimport { RollingText } from '~components/RollingText';\nimport { Text } from '~components/Typography';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { getStringFromReactText } from '~utils/getStringChildren';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport type { BladeElementRef } from '~utils/types';\n\nconst ButtonResetCss = {\n background: 'none',\n border: 'none',\n padding: undefined,\n cursor: 'pointer',\n color: 'inherit',\n font: 'inherit',\n textAlign: 'left' as const,\n outline: 'inherit',\n appearance: 'none',\n backgroundColor: 'inherit',\n};\n\nconst _ChatMessage: React.ForwardRefRenderFunction<BladeElementRef, ChatMessageProps> = (\n {\n messageType = 'default',\n senderType = 'self',\n isLoading = false,\n validationState = 'none',\n errorText,\n onClick,\n footerActions,\n children,\n leading,\n loadingText,\n wordBreak = 'break-word',\n maxWidth,\n thumbnails,\n onThumbnailClick,\n reasoningTraces,\n reasoningStatus,\n reasoningTitle,\n reasoningActiveStepIndex,\n ...props\n }: ChatMessageProps,\n ref: React.Ref<BladeElementRef>,\n): React.ReactElement => {\n // Keep deprecated prop \"used\" to avoid lint errors while preserving compatibility.\n void messageType;\n\n // since we can pass both string and Card component as children, we need to check if children is string or Card component\n // if children is string or array of string, we need to wrap it in Text component otherwise we will pass children as it is\n const shouldWrapInText =\n typeof children === 'string' ||\n (Array.isArray(children) && children.every((child) => typeof child === 'string')) ||\n isLoading;\n\n const loadingContent =\n isLoading && Array.isArray(loadingText) ? <RollingText texts={loadingText} /> : loadingText;\n\n const finalChildren = shouldWrapInText ? (\n <Text\n color={\n isLoading\n ? Array.isArray(loadingText)\n ? 'feedback.text.positive.intense'\n : 'surface.text.gray.muted'\n : 'surface.text.gray.normal'\n }\n weight=\"regular\"\n variant=\"body\"\n size=\"medium\"\n wordBreak={wordBreak}\n >\n {isLoading ? loadingContent : getStringFromReactText(children as string | string[])}\n </Text>\n ) : (\n (children as React.ReactElement)\n );\n\n const messageBubble =\n senderType === 'self' ? (\n <SelfMessageBubble\n validationState={validationState}\n errorText={errorText}\n children={finalChildren}\n isChildText={shouldWrapInText}\n />\n ) : (\n <DefaultMessageBubble\n children={finalChildren}\n leading={leading}\n isLoading={isLoading}\n footerActions={footerActions}\n isChildText={shouldWrapInText}\n reasoningTraces={reasoningTraces}\n reasoningStatus={reasoningStatus}\n reasoningTitle={reasoningTitle}\n reasoningActiveStepIndex={reasoningActiveStepIndex}\n />\n );\n\n const imagePreviewAlignment = senderType === 'self' ? 'flex-end' : 'flex-start';\n\n return (\n <BaseBox display=\"flex\" flexDirection=\"column\" gap=\"spacing.3\">\n {thumbnails && thumbnails.length > 0 ? (\n <BaseBox alignSelf={imagePreviewAlignment}>\n <ThumbnailPreview thumbnails={thumbnails} onThumbnailClick={onThumbnailClick} />\n </BaseBox>\n ) : null}\n <BaseBox\n onClick={onClick}\n {...(onClick ? { ...ButtonResetCss } : {})}\n {...metaAttribute({ name: MetaConstants.ChatMessage, testID: props.testID })}\n {...makeAnalyticsAttribute(props)}\n {...getStyledProps(props)}\n maxWidth={maxWidth}\n ref={ref as never}\n as={onClick ? 'button' : undefined}\n >\n {messageBubble}\n </BaseBox>\n </BaseBox>\n );\n};\n\nconst ChatMessage = assignWithoutSideEffects(React.forwardRef(_ChatMessage), {\n displayName: 'ChatMessage',\n componentId: MetaConstants.ChatMessage,\n});\nexport { ChatMessage };\n"],"names":["ButtonResetCss","background","border","padding","undefined","cursor","color","font","textAlign","outline","appearance","backgroundColor","_ChatMessage","_ref","ref","_ref$messageType","messageType","_ref$senderType","senderType","_ref$isLoading","isLoading","_ref$validationState","validationState","errorText","onClick","footerActions","children","leading","loadingText","_ref$wordBreak","wordBreak","maxWidth","thumbnails","onThumbnailClick","reasoningTraces","reasoningStatus","reasoningTitle","reasoningActiveStepIndex","props","_objectWithoutProperties","_excluded","shouldWrapInText","Array","isArray","every","child","loadingContent","_jsx","RollingText","texts","finalChildren","Text","weight","variant","size","getStringFromReactText","messageBubble","SelfMessageBubble","isChildText","DefaultMessageBubble","imagePreviewAlignment","_jsxs","BaseBox","display","flexDirection","gap","length","alignSelf","ThumbnailPreview","_objectSpread","metaAttribute","name","MetaConstants","ChatMessage","testID","makeAnalyticsAttribute","getStyledProps","as","assignWithoutSideEffects","React","forwardRef","displayName","componentId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,IAAMA,cAAc,GAAG;AACrBC,EAAAA,UAAU,EAAE,MAAM;AAClBC,EAAAA,MAAM,EAAE,MAAM;AACdC,EAAAA,OAAO,EAAEC,SAAS;AAClBC,EAAAA,MAAM,EAAE,SAAS;AACjBC,EAAAA,KAAK,EAAE,SAAS;AAChBC,EAAAA,IAAI,EAAE,SAAS;AACfC,EAAAA,SAAS,EAAE,MAAe;AAC1BC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,UAAU,EAAE,MAAM;AAClBC,EAAAA,eAAe,EAAE,SAAA;AACnB,CAAC,CAAA;AAED,IAAMC,YAA+E,GAAG,SAAlFA,YAA+EA,CAAAC,IAAA,EAsBnFC,GAA+B,EACR;AAAA,EAAA,IAAAC,gBAAA,GAAAF,IAAA,CArBrBG,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,gBAAA;IAAAE,eAAA,GAAAJ,IAAA,CACvBK,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,eAAA;IAAAE,cAAA,GAAAN,IAAA,CACnBO,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;IAAAE,oBAAA,GAAAR,IAAA,CACjBS,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,oBAAA;IACxBE,SAAS,GAAAV,IAAA,CAATU,SAAS;IACTC,OAAO,GAAAX,IAAA,CAAPW,OAAO;IACPC,aAAa,GAAAZ,IAAA,CAAbY,aAAa;IACbC,QAAQ,GAAAb,IAAA,CAARa,QAAQ;IACRC,OAAO,GAAAd,IAAA,CAAPc,OAAO;IACPC,WAAW,GAAAf,IAAA,CAAXe,WAAW;IAAAC,cAAA,GAAAhB,IAAA,CACXiB,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,YAAY,GAAAA,cAAA;IACxBE,QAAQ,GAAAlB,IAAA,CAARkB,QAAQ;IACRC,UAAU,GAAAnB,IAAA,CAAVmB,UAAU;IACVC,gBAAgB,GAAApB,IAAA,CAAhBoB,gBAAgB;IAChBC,eAAe,GAAArB,IAAA,CAAfqB,eAAe;IACfC,eAAe,GAAAtB,IAAA,CAAfsB,eAAe;IACfC,cAAc,GAAAvB,IAAA,CAAduB,cAAc;IACdC,wBAAwB,GAAAxB,IAAA,CAAxBwB,wBAAwB;AACrBC,IAAAA,KAAK,GAAAC,wBAAA,CAAA1B,IAAA,EAAA2B,SAAA,CAAA,CAAA;AAIV;AACA,EAAA,KAAKxB,WAAW,CAAA;;AAEhB;AACA;AACA,EAAA,IAAMyB,gBAAgB,GACpB,OAAOf,QAAQ,KAAK,QAAQ,IAC3BgB,KAAK,CAACC,OAAO,CAACjB,QAAQ,CAAC,IAAIA,QAAQ,CAACkB,KAAK,CAAC,UAACC,KAAK,EAAA;IAAA,OAAK,OAAOA,KAAK,KAAK,QAAQ,CAAA;AAAA,GAAA,CAAE,IACjFzB,SAAS,CAAA;AAEX,EAAA,IAAM0B,cAAc,GAClB1B,SAAS,IAAIsB,KAAK,CAACC,OAAO,CAACf,WAAW,CAAC,gBAAGmB,GAAA,CAACC,WAAW,EAAA;AAACC,IAAAA,KAAK,EAAErB,WAAAA;GAAc,CAAC,GAAGA,WAAW,CAAA;AAE7F,EAAA,IAAMsB,aAAa,GAAGT,gBAAgB,gBACpCM,GAAA,CAACI,IAAI,EAAA;AACH7C,IAAAA,KAAK,EACHc,SAAS,GACLsB,KAAK,CAACC,OAAO,CAACf,WAAW,CAAC,GACxB,gCAAgC,GAChC,yBAAyB,GAC3B,0BACL;AACDwB,IAAAA,MAAM,EAAC,SAAS;AAChBC,IAAAA,OAAO,EAAC,MAAM;AACdC,IAAAA,IAAI,EAAC,QAAQ;AACbxB,IAAAA,SAAS,EAAEA,SAAU;AAAAJ,IAAAA,QAAA,EAEpBN,SAAS,GAAG0B,cAAc,GAAGS,sBAAsB,CAAC7B,QAA6B,CAAA;GAC9E,CAAC,GAENA,QACF,CAAA;EAED,IAAM8B,aAAa,GACjBtC,UAAU,KAAK,MAAM,gBACnB6B,GAAA,CAACU,iBAAiB,EAAA;AAChBnC,IAAAA,eAAe,EAAEA,eAAgB;AACjCC,IAAAA,SAAS,EAAEA,SAAU;AACrBG,IAAAA,QAAQ,EAAEwB,aAAc;AACxBQ,IAAAA,WAAW,EAAEjB,gBAAAA;AAAiB,GAC/B,CAAC,gBAEFM,GAAA,CAACY,oBAAoB,EAAA;AACnBjC,IAAAA,QAAQ,EAAEwB,aAAc;AACxBvB,IAAAA,OAAO,EAAEA,OAAQ;AACjBP,IAAAA,SAAS,EAAEA,SAAU;AACrBK,IAAAA,aAAa,EAAEA,aAAc;AAC7BiC,IAAAA,WAAW,EAAEjB,gBAAiB;AAC9BP,IAAAA,eAAe,EAAEA,eAAgB;AACjCC,IAAAA,eAAe,EAAEA,eAAgB;AACjCC,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,wBAAwB,EAAEA,wBAAAA;AAAyB,GACpD,CACF,CAAA;EAEH,IAAMuB,qBAAqB,GAAG1C,UAAU,KAAK,MAAM,GAAG,UAAU,GAAG,YAAY,CAAA;EAE/E,oBACE2C,IAAA,CAACC,OAAO,EAAA;AAACC,IAAAA,OAAO,EAAC,MAAM;AAACC,IAAAA,aAAa,EAAC,QAAQ;AAACC,IAAAA,GAAG,EAAC,WAAW;IAAAvC,QAAA,EAAA,CAC3DM,UAAU,IAAIA,UAAU,CAACkC,MAAM,GAAG,CAAC,gBAClCnB,GAAA,CAACe,OAAO,EAAA;AAACK,MAAAA,SAAS,EAAEP,qBAAsB;MAAAlC,QAAA,eACxCqB,GAAA,CAACqB,gBAAgB,EAAA;AAACpC,QAAAA,UAAU,EAAEA,UAAW;AAACC,QAAAA,gBAAgB,EAAEA,gBAAAA;OAAmB,CAAA;AAAC,KACzE,CAAC,GACR,IAAI,eACRc,GAAA,CAACe,OAAO,EAAAO,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAA;AACN7C,MAAAA,OAAO,EAAEA,OAAAA;KACJA,EAAAA,OAAO,GAAA6C,aAAA,CAAQrE,EAAAA,EAAAA,cAAc,IAAK,EAAE,CACrCsE,EAAAA,aAAa,CAAC;MAAEC,IAAI,EAAEC,aAAa,CAACC,WAAW;MAAEC,MAAM,EAAEpC,KAAK,CAACoC,MAAAA;KAAQ,CAAC,CACxEC,EAAAA,sBAAsB,CAACrC,KAAK,CAAC,CAC7BsC,EAAAA,cAAc,CAACtC,KAAK,CAAC,CAAA,EAAA,EAAA,EAAA;AACzBP,MAAAA,QAAQ,EAAEA,QAAS;AACnBjB,MAAAA,GAAG,EAAEA,GAAa;AAClB+D,MAAAA,EAAE,EAAErD,OAAO,GAAG,QAAQ,GAAGpB,SAAU;AAAAsB,MAAAA,QAAA,EAElC8B,aAAAA;AAAa,KAAA,CACP,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAEd,CAAC,CAAA;AAEKiB,IAAAA,WAAW,gBAAGK,wBAAwB,cAACC,cAAK,CAACC,UAAU,CAACpE,YAAY,CAAC,EAAE;AAC3EqE,EAAAA,WAAW,EAAE,aAAa;EAC1BC,WAAW,EAAEV,aAAa,CAACC,WAAAA;AAC7B,CAAC;;;;"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import 'react';
|
|
2
2
|
import Rotate from './Rotate.web.js';
|
|
3
|
+
import { ReasoningTraces } from './ReasoningTraces.web.js';
|
|
3
4
|
import '../Box/BaseBox/index.js';
|
|
4
5
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
5
6
|
import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
|
|
@@ -9,24 +10,42 @@ var DefaultMessageBubble = function DefaultMessageBubble(_ref) {
|
|
|
9
10
|
leading = _ref.leading,
|
|
10
11
|
isLoading = _ref.isLoading,
|
|
11
12
|
footerActions = _ref.footerActions,
|
|
12
|
-
isChildText = _ref.isChildText
|
|
13
|
+
isChildText = _ref.isChildText,
|
|
14
|
+
reasoningTraces = _ref.reasoningTraces,
|
|
15
|
+
reasoningStatus = _ref.reasoningStatus,
|
|
16
|
+
reasoningTitle = _ref.reasoningTitle,
|
|
17
|
+
reasoningActiveStepIndex = _ref.reasoningActiveStepIndex;
|
|
18
|
+
var hasReasoningTraces = reasoningTraces && reasoningTraces.length > 0;
|
|
13
19
|
return /*#__PURE__*/jsx(BaseBox, {
|
|
14
20
|
children: /*#__PURE__*/jsxs(BaseBox, {
|
|
15
21
|
display: "grid",
|
|
16
22
|
gridTemplateColumns: "auto 1fr",
|
|
17
|
-
gridTemplateRows: "auto auto",
|
|
18
23
|
columnGap: "spacing.4",
|
|
24
|
+
alignItems: "start",
|
|
19
25
|
children: [/*#__PURE__*/jsx(BaseBox, {
|
|
20
|
-
padding: "spacing.
|
|
26
|
+
padding: "spacing.1",
|
|
21
27
|
children: /*#__PURE__*/jsx(Rotate, {
|
|
22
28
|
animate: isLoading,
|
|
23
29
|
children: leading
|
|
24
30
|
})
|
|
25
|
-
}), /*#__PURE__*/
|
|
31
|
+
}), /*#__PURE__*/jsxs(BaseBox, {
|
|
26
32
|
display: "flex",
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
33
|
+
flexDirection: "column",
|
|
34
|
+
children: [hasReasoningTraces && reasoningStatus === 'loading' && isLoading && /*#__PURE__*/jsx(BaseBox, {
|
|
35
|
+
paddingY: isChildText ? 'spacing.2' : 'spacing.0',
|
|
36
|
+
children: children
|
|
37
|
+
}), hasReasoningTraces && /*#__PURE__*/jsx(ReasoningTraces, {
|
|
38
|
+
traces: reasoningTraces,
|
|
39
|
+
status: reasoningStatus,
|
|
40
|
+
title: reasoningTitle,
|
|
41
|
+
activeStepIndex: reasoningActiveStepIndex
|
|
42
|
+
}), hasReasoningTraces && reasoningStatus === 'complete' && !isLoading && children && /*#__PURE__*/jsx(BaseBox, {
|
|
43
|
+
paddingY: isChildText ? 'spacing.2' : 'spacing.0',
|
|
44
|
+
children: children
|
|
45
|
+
}), !hasReasoningTraces && children && /*#__PURE__*/jsx(BaseBox, {
|
|
46
|
+
paddingY: isChildText ? 'spacing.2' : 'spacing.0',
|
|
47
|
+
children: children
|
|
48
|
+
})]
|
|
30
49
|
}), /*#__PURE__*/jsx(BaseBox, {
|
|
31
50
|
gridColumn: "2",
|
|
32
51
|
children: footerActions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultMessageBubble.web.js","sources":["../../../../../../src/components/ChatMessage/DefaultMessageBubble.web.tsx"],"sourcesContent":["import React from 'react';\nimport Rotate from './Rotate.web';\nimport type { CommonChatMessageProps } from './types';\nimport BaseBox from '~components/Box/BaseBox';\n\nconst DefaultMessageBubble = ({\n children,\n leading,\n isLoading,\n footerActions,\n isChildText,\n}: Pick
|
|
1
|
+
{"version":3,"file":"DefaultMessageBubble.web.js","sources":["../../../../../../src/components/ChatMessage/DefaultMessageBubble.web.tsx"],"sourcesContent":["import React from 'react';\nimport Rotate from './Rotate.web';\nimport { ReasoningTraces } from './ReasoningTraces.web';\nimport type { CommonChatMessageProps } from './types';\nimport BaseBox from '~components/Box/BaseBox';\n\nconst DefaultMessageBubble = ({\n children,\n leading,\n isLoading,\n footerActions,\n isChildText,\n reasoningTraces,\n reasoningStatus,\n reasoningTitle,\n reasoningActiveStepIndex,\n}: Pick<\n CommonChatMessageProps,\n | 'children'\n | 'leading'\n | 'isLoading'\n | 'footerActions'\n | 'reasoningTraces'\n | 'reasoningStatus'\n | 'reasoningTitle'\n | 'reasoningActiveStepIndex'\n> & {\n isChildText: boolean;\n}): React.ReactElement => {\n const hasReasoningTraces = reasoningTraces && reasoningTraces.length > 0;\n\n return (\n <BaseBox>\n <BaseBox\n display=\"grid\"\n gridTemplateColumns=\"auto 1fr\"\n columnGap=\"spacing.4\"\n alignItems=\"start\"\n >\n {/* Icon aligns with message content */}\n <BaseBox padding=\"spacing.1\">\n <Rotate animate={isLoading}>{leading as React.ReactElement}</Rotate>\n </BaseBox>\n\n {/* Column 2: Main message content + ReasoningTraces */}\n <BaseBox display=\"flex\" flexDirection=\"column\">\n {/* While loading: show loadingText above traces (only if reasoning is still loading) */}\n {hasReasoningTraces && reasoningStatus === 'loading' && isLoading && (\n <BaseBox paddingY={isChildText ? 'spacing.2' : 'spacing.0'}>{children}</BaseBox>\n )}\n\n {/* ReasoningTraces: shown while loading or when complete */}\n {hasReasoningTraces && (\n <ReasoningTraces\n traces={reasoningTraces}\n status={reasoningStatus}\n title={reasoningTitle}\n activeStepIndex={reasoningActiveStepIndex}\n />\n )}\n\n {/* When complete: show final content below reasoning (only if not loading) */}\n {hasReasoningTraces && reasoningStatus === 'complete' && !isLoading && children && (\n <BaseBox paddingY={isChildText ? 'spacing.2' : 'spacing.0'}>{children}</BaseBox>\n )}\n\n {/* No reasoning traces: show content normally */}\n {!hasReasoningTraces && children && (\n <BaseBox paddingY={isChildText ? 'spacing.2' : 'spacing.0'}>{children}</BaseBox>\n )}\n </BaseBox>\n\n <BaseBox gridColumn=\"2\">{footerActions}</BaseBox>\n </BaseBox>\n </BaseBox>\n );\n};\n\nexport { DefaultMessageBubble };\n"],"names":["DefaultMessageBubble","_ref","children","leading","isLoading","footerActions","isChildText","reasoningTraces","reasoningStatus","reasoningTitle","reasoningActiveStepIndex","hasReasoningTraces","length","_jsx","BaseBox","_jsxs","display","gridTemplateColumns","columnGap","alignItems","padding","Rotate","animate","flexDirection","paddingY","ReasoningTraces","traces","status","title","activeStepIndex","gridColumn"],"mappings":";;;;;;;AAMA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAC,IAAA,EAsBA;AAAA,EAAA,IArBxBC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACRC,OAAO,GAAAF,IAAA,CAAPE,OAAO;IACPC,SAAS,GAAAH,IAAA,CAATG,SAAS;IACTC,aAAa,GAAAJ,IAAA,CAAbI,aAAa;IACbC,WAAW,GAAAL,IAAA,CAAXK,WAAW;IACXC,eAAe,GAAAN,IAAA,CAAfM,eAAe;IACfC,eAAe,GAAAP,IAAA,CAAfO,eAAe;IACfC,cAAc,GAAAR,IAAA,CAAdQ,cAAc;IACdC,wBAAwB,GAAAT,IAAA,CAAxBS,wBAAwB,CAAA;EAcxB,IAAMC,kBAAkB,GAAGJ,eAAe,IAAIA,eAAe,CAACK,MAAM,GAAG,CAAC,CAAA;EAExE,oBACEC,GAAA,CAACC,OAAO,EAAA;IAAAZ,QAAA,eACNa,IAAA,CAACD,OAAO,EAAA;AACNE,MAAAA,OAAO,EAAC,MAAM;AACdC,MAAAA,mBAAmB,EAAC,UAAU;AAC9BC,MAAAA,SAAS,EAAC,WAAW;AACrBC,MAAAA,UAAU,EAAC,OAAO;MAAAjB,QAAA,EAAA,cAGlBW,GAAA,CAACC,OAAO,EAAA;AAACM,QAAAA,OAAO,EAAC,WAAW;QAAAlB,QAAA,eAC1BW,GAAA,CAACQ,MAAM,EAAA;AAACC,UAAAA,OAAO,EAAElB,SAAU;AAAAF,UAAAA,QAAA,EAAEC,OAAAA;SAAsC,CAAA;AAAC,OAC7D,CAAC,eAGVY,IAAA,CAACD,OAAO,EAAA;AAACE,QAAAA,OAAO,EAAC,MAAM;AAACO,QAAAA,aAAa,EAAC,QAAQ;QAAArB,QAAA,EAAA,CAE3CS,kBAAkB,IAAIH,eAAe,KAAK,SAAS,IAAIJ,SAAS,iBAC/DS,GAAA,CAACC,OAAO,EAAA;AAACU,UAAAA,QAAQ,EAAElB,WAAW,GAAG,WAAW,GAAG,WAAY;AAAAJ,UAAAA,QAAA,EAAEA,QAAAA;AAAQ,SAAU,CAChF,EAGAS,kBAAkB,iBACjBE,GAAA,CAACY,eAAe,EAAA;AACdC,UAAAA,MAAM,EAAEnB,eAAgB;AACxBoB,UAAAA,MAAM,EAAEnB,eAAgB;AACxBoB,UAAAA,KAAK,EAAEnB,cAAe;AACtBoB,UAAAA,eAAe,EAAEnB,wBAAAA;AAAyB,SAC3C,CACF,EAGAC,kBAAkB,IAAIH,eAAe,KAAK,UAAU,IAAI,CAACJ,SAAS,IAAIF,QAAQ,iBAC7EW,GAAA,CAACC,OAAO,EAAA;AAACU,UAAAA,QAAQ,EAAElB,WAAW,GAAG,WAAW,GAAG,WAAY;AAAAJ,UAAAA,QAAA,EAAEA,QAAAA;SAAkB,CAChF,EAGA,CAACS,kBAAkB,IAAIT,QAAQ,iBAC9BW,GAAA,CAACC,OAAO,EAAA;AAACU,UAAAA,QAAQ,EAAElB,WAAW,GAAG,WAAW,GAAG,WAAY;AAAAJ,UAAAA,QAAA,EAAEA,QAAAA;AAAQ,SAAU,CAChF,CAAA;AAAA,OACM,CAAC,eAEVW,GAAA,CAACC,OAAO,EAAA;AAACgB,QAAAA,UAAU,EAAC,GAAG;AAAA5B,QAAAA,QAAA,EAAEG,aAAAA;AAAa,OAAU,CAAC,CAAA;KAC1C,CAAA;AAAC,GACH,CAAC,CAAA;AAEd;;;;"}
|
|
@@ -0,0 +1,378 @@
|
|
|
1
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
2
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
3
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
4
|
+
import { useState, useEffect } from 'react';
|
|
5
|
+
import { m, AnimatePresence } from 'framer-motion';
|
|
6
|
+
import Rotate from './Rotate.web.js';
|
|
7
|
+
import '../BladeProvider/index.js';
|
|
8
|
+
import { msToSeconds } from '../../utils/msToSeconds.js';
|
|
9
|
+
import { cssBezierToArray } from '../../utils/cssBezierToArray.js';
|
|
10
|
+
import '../../utils/index.js';
|
|
11
|
+
import '../Icons/index.js';
|
|
12
|
+
import '../Typography/index.js';
|
|
13
|
+
import '../Box/BaseBox/index.js';
|
|
14
|
+
import { Collapsible } from '../Collapsible/Collapsible.js';
|
|
15
|
+
import { CollapsibleBody } from '../Collapsible/CollapsibleBody.js';
|
|
16
|
+
import '../Icons/_Svg/index.js';
|
|
17
|
+
import '../Icons/useIconProps/index.js';
|
|
18
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
19
|
+
import useIconProps from '../Icons/useIconProps/useIconProps.js';
|
|
20
|
+
import Svg from '../Icons/_Svg/Svg/Svg.web.js';
|
|
21
|
+
import Path from '../Icons/_Svg/Path/Path.web.js';
|
|
22
|
+
import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
|
|
23
|
+
import useTheme from '../BladeProvider/useTheme.js';
|
|
24
|
+
import { castWebType } from '../../utils/platform/castUtils.js';
|
|
25
|
+
import { Text } from '../Typography/Text/Text.js';
|
|
26
|
+
import ChevronUpIcon from '../Icons/ChevronUpIcon/ChevronUpIcon.js';
|
|
27
|
+
import ChevronDownIcon from '../Icons/ChevronDownIcon/ChevronDownIcon.js';
|
|
28
|
+
|
|
29
|
+
var _excluded = ["size", "color"];
|
|
30
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
31
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
32
|
+
var SparkleIcon = function SparkleIcon(_ref) {
|
|
33
|
+
var size = _ref.size,
|
|
34
|
+
color = _ref.color,
|
|
35
|
+
styledProps = _objectWithoutProperties(_ref, _excluded);
|
|
36
|
+
var _useIconProps = useIconProps({
|
|
37
|
+
size: size,
|
|
38
|
+
color: color
|
|
39
|
+
}),
|
|
40
|
+
height = _useIconProps.height,
|
|
41
|
+
width = _useIconProps.width;
|
|
42
|
+
return /*#__PURE__*/jsx(Svg, _objectSpread(_objectSpread({}, styledProps), {}, {
|
|
43
|
+
width: width,
|
|
44
|
+
height: height,
|
|
45
|
+
viewBox: "0 0 9 9",
|
|
46
|
+
fill: "none",
|
|
47
|
+
children: /*#__PURE__*/jsx(Path, {
|
|
48
|
+
d: "M4.7169 8.67519C4.62025 8.93638 4.25084 8.93638 4.15419 8.67519L3.13296 5.91537C3.10258 5.83326 3.03784 5.76851 2.95572 5.73813L0.195898 4.7169C-0.0652872 4.62025 -0.0652871 4.25084 0.195899 4.15419L2.95572 3.13296C3.03784 3.10258 3.10258 3.03784 3.13297 2.95572L4.15419 0.1959C4.25084 -0.0652861 4.62026 -0.0652861 4.7169 0.195899L5.73813 2.95572C5.76851 3.03784 5.83326 3.10258 5.91537 3.13297L8.6752 4.15419C8.93638 4.25084 8.93638 4.62026 8.6752 4.7169L5.91537 5.73813C5.83326 5.76851 5.76851 5.83326 5.73813 5.91537L4.7169 8.67519Z",
|
|
49
|
+
fill: "#009E5C"
|
|
50
|
+
})
|
|
51
|
+
}));
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
// Spinning sparkle for the active step row (smaller)
|
|
55
|
+
var ActiveStepIcon = function ActiveStepIcon() {
|
|
56
|
+
return /*#__PURE__*/jsx(Rotate, {
|
|
57
|
+
animate: true,
|
|
58
|
+
children: /*#__PURE__*/jsx(SparkleIcon, {
|
|
59
|
+
size: "xsmall",
|
|
60
|
+
color: "feedback.icon.positive.intense"
|
|
61
|
+
})
|
|
62
|
+
});
|
|
63
|
+
};
|
|
64
|
+
var StepDot = function StepDot(_ref2) {
|
|
65
|
+
var status = _ref2.status;
|
|
66
|
+
return /*#__PURE__*/jsx(BaseBox, {
|
|
67
|
+
style: {
|
|
68
|
+
opacity: status === 'pending' ? 0.3 : 1
|
|
69
|
+
},
|
|
70
|
+
width: "6px",
|
|
71
|
+
height: "6px",
|
|
72
|
+
borderRadius: "max",
|
|
73
|
+
backgroundColor: status === 'completed' ? 'surface.icon.onSea.onSubtle' : 'surface.icon.gray.muted',
|
|
74
|
+
flexShrink: 0
|
|
75
|
+
});
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
// Connector color follows the step above it: green after completed, gray otherwise
|
|
79
|
+
var StepConnector = function StepConnector(_ref3) {
|
|
80
|
+
var fromStatus = _ref3.fromStatus;
|
|
81
|
+
return /*#__PURE__*/jsx(BaseBox, {
|
|
82
|
+
style: {
|
|
83
|
+
flex: 1,
|
|
84
|
+
minHeight: '6px'
|
|
85
|
+
},
|
|
86
|
+
width: "1px",
|
|
87
|
+
backgroundColor: fromStatus === 'completed' ? 'surface.icon.onSea.onSubtle' : 'surface.border.gray.muted'
|
|
88
|
+
});
|
|
89
|
+
};
|
|
90
|
+
var ShimmerOverlay = function ShimmerOverlay(_ref4) {
|
|
91
|
+
var children = _ref4.children,
|
|
92
|
+
isActive = _ref4.isActive;
|
|
93
|
+
var _useTheme = useTheme(),
|
|
94
|
+
theme = _useTheme.theme;
|
|
95
|
+
var shimmerColor = theme.colors.surface.text.staticWhite.muted;
|
|
96
|
+
var shimmerDuration = msToSeconds(theme.motion.duration['2xgentle']);
|
|
97
|
+
var shimmerDelay = msToSeconds(theme.motion.delay.gentle);
|
|
98
|
+
var shimmerEase = cssBezierToArray(castWebType(theme.motion.easing.standard));
|
|
99
|
+
return /*#__PURE__*/jsxs(BaseBox, {
|
|
100
|
+
position: "relative",
|
|
101
|
+
overflow: "hidden",
|
|
102
|
+
children: [children, isActive && /*#__PURE__*/jsx(m.span, {
|
|
103
|
+
"aria-hidden": true,
|
|
104
|
+
style: {
|
|
105
|
+
position: 'absolute',
|
|
106
|
+
inset: 0,
|
|
107
|
+
background: "linear-gradient(90deg, transparent 0%, ".concat(shimmerColor, " 50%, transparent 100%)"),
|
|
108
|
+
pointerEvents: 'none'
|
|
109
|
+
},
|
|
110
|
+
initial: {
|
|
111
|
+
x: '-100%'
|
|
112
|
+
},
|
|
113
|
+
animate: {
|
|
114
|
+
x: '100%'
|
|
115
|
+
},
|
|
116
|
+
transition: {
|
|
117
|
+
duration: shimmerDuration,
|
|
118
|
+
ease: shimmerEase,
|
|
119
|
+
repeat: Infinity,
|
|
120
|
+
repeatDelay: shimmerDelay
|
|
121
|
+
}
|
|
122
|
+
})]
|
|
123
|
+
});
|
|
124
|
+
};
|
|
125
|
+
var TraceRow = function TraceRow(_ref5) {
|
|
126
|
+
var text = _ref5.text,
|
|
127
|
+
isLast = _ref5.isLast,
|
|
128
|
+
stepStatus = _ref5.stepStatus;
|
|
129
|
+
return /*#__PURE__*/jsxs(BaseBox, {
|
|
130
|
+
display: "flex",
|
|
131
|
+
flexDirection: "row",
|
|
132
|
+
alignItems: "stretch",
|
|
133
|
+
children: [/*#__PURE__*/jsxs(BaseBox, {
|
|
134
|
+
display: "flex",
|
|
135
|
+
flexDirection: "column",
|
|
136
|
+
alignItems: "center",
|
|
137
|
+
flexShrink: 0,
|
|
138
|
+
width: "16px",
|
|
139
|
+
marginRight: "spacing.3",
|
|
140
|
+
children: [/*#__PURE__*/jsx(BaseBox, {
|
|
141
|
+
display: "flex",
|
|
142
|
+
alignItems: "center",
|
|
143
|
+
justifyContent: "center",
|
|
144
|
+
height: "17px",
|
|
145
|
+
flexShrink: 0,
|
|
146
|
+
children: stepStatus === 'active' ? /*#__PURE__*/jsx(ActiveStepIcon, {}) : /*#__PURE__*/jsx(StepDot, {
|
|
147
|
+
status: stepStatus
|
|
148
|
+
})
|
|
149
|
+
}), !isLast && /*#__PURE__*/jsx(StepConnector, {
|
|
150
|
+
fromStatus: stepStatus
|
|
151
|
+
})]
|
|
152
|
+
}), /*#__PURE__*/jsx(BaseBox, {
|
|
153
|
+
paddingBottom: isLast ? 'spacing.0' : 'spacing.2',
|
|
154
|
+
style: stepStatus === 'pending' ? {
|
|
155
|
+
opacity: 0.5
|
|
156
|
+
} : undefined,
|
|
157
|
+
children: /*#__PURE__*/jsx(ShimmerOverlay, {
|
|
158
|
+
isActive: stepStatus === 'active',
|
|
159
|
+
children: /*#__PURE__*/jsx(Text, {
|
|
160
|
+
color: stepStatus === 'active' ? 'surface.text.onSea.onSubtle' : 'surface.text.gray.muted',
|
|
161
|
+
size: "small",
|
|
162
|
+
weight: "regular",
|
|
163
|
+
children: text
|
|
164
|
+
})
|
|
165
|
+
})
|
|
166
|
+
})]
|
|
167
|
+
});
|
|
168
|
+
};
|
|
169
|
+
var ReasoningTraces = function ReasoningTraces(_ref6) {
|
|
170
|
+
var traces = _ref6.traces,
|
|
171
|
+
_ref6$status = _ref6.status,
|
|
172
|
+
status = _ref6$status === void 0 ? 'loading' : _ref6$status,
|
|
173
|
+
_ref6$title = _ref6.title,
|
|
174
|
+
title = _ref6$title === void 0 ? 'Explored' : _ref6$title,
|
|
175
|
+
activeStepIndex = _ref6.activeStepIndex;
|
|
176
|
+
// Upfront mode: all steps are known; activeStepIndex controls which is active
|
|
177
|
+
var isUpfrontMode = activeStepIndex !== undefined;
|
|
178
|
+
|
|
179
|
+
// Start collapsed in upfront mode so the open animation plays on mount
|
|
180
|
+
var _useState = useState(!isUpfrontMode),
|
|
181
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
182
|
+
isExpanded = _useState2[0],
|
|
183
|
+
setIsExpanded = _useState2[1];
|
|
184
|
+
var _useTheme2 = useTheme(),
|
|
185
|
+
theme = _useTheme2.theme;
|
|
186
|
+
var isLoading = status === 'loading';
|
|
187
|
+
var rowTransition = {
|
|
188
|
+
duration: msToSeconds(theme.motion.duration.moderate),
|
|
189
|
+
ease: cssBezierToArray(castWebType(theme.motion.easing.entrance))
|
|
190
|
+
};
|
|
191
|
+
var slideTransition = {
|
|
192
|
+
duration: msToSeconds(theme.motion.duration.xmoderate),
|
|
193
|
+
ease: cssBezierToArray(castWebType(theme.motion.easing.emphasized))
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
// Reset to expanded when status changes back to loading (for replay scenarios)
|
|
197
|
+
useEffect(function () {
|
|
198
|
+
if (status === 'loading') {
|
|
199
|
+
setIsExpanded(true);
|
|
200
|
+
}
|
|
201
|
+
}, [status]);
|
|
202
|
+
|
|
203
|
+
// Auto-collapse once all steps complete
|
|
204
|
+
useEffect(function () {
|
|
205
|
+
if (status === 'complete') {
|
|
206
|
+
var timer = setTimeout(function () {
|
|
207
|
+
return setIsExpanded(false);
|
|
208
|
+
}, 600);
|
|
209
|
+
return function () {
|
|
210
|
+
return clearTimeout(timer);
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
return undefined;
|
|
214
|
+
}, [status]);
|
|
215
|
+
var handleExpandChange = function handleExpandChange(_ref7) {
|
|
216
|
+
var next = _ref7.isExpanded;
|
|
217
|
+
setIsExpanded(next);
|
|
218
|
+
};
|
|
219
|
+
var getStepStatus = function getStepStatus(index) {
|
|
220
|
+
if (status === 'complete') return 'completed';
|
|
221
|
+
if (isUpfrontMode) {
|
|
222
|
+
if (index < activeStepIndex) return 'completed';
|
|
223
|
+
if (index === activeStepIndex) return 'active';
|
|
224
|
+
return 'pending';
|
|
225
|
+
}
|
|
226
|
+
// Streaming mode: last trace is active, all before are completed
|
|
227
|
+
return index < traces.length - 1 ? 'completed' : 'active';
|
|
228
|
+
};
|
|
229
|
+
var getTraceLabel = function getTraceLabel(trace, stepStatus) {
|
|
230
|
+
return stepStatus === 'completed' && trace.completedLabel ? trace.completedLabel : trace.label;
|
|
231
|
+
};
|
|
232
|
+
return /*#__PURE__*/jsxs(BaseBox, {
|
|
233
|
+
marginTop: "spacing.2",
|
|
234
|
+
marginBottom: "spacing.3",
|
|
235
|
+
children: [status === 'complete' && /*#__PURE__*/jsxs(BaseBox, {
|
|
236
|
+
as: "button",
|
|
237
|
+
display: "flex",
|
|
238
|
+
flexDirection: "row",
|
|
239
|
+
alignItems: "center",
|
|
240
|
+
gap: "spacing.2",
|
|
241
|
+
onClick: function onClick() {
|
|
242
|
+
return setIsExpanded(function (prev) {
|
|
243
|
+
return !prev;
|
|
244
|
+
});
|
|
245
|
+
},
|
|
246
|
+
cursor: "pointer",
|
|
247
|
+
style: {
|
|
248
|
+
background: 'none',
|
|
249
|
+
border: 'none'
|
|
250
|
+
},
|
|
251
|
+
padding: "spacing.0",
|
|
252
|
+
textAlign: "left",
|
|
253
|
+
marginBottom: "spacing.3",
|
|
254
|
+
children: [/*#__PURE__*/jsx(Text, {
|
|
255
|
+
color: "surface.text.gray.muted",
|
|
256
|
+
weight: "regular",
|
|
257
|
+
variant: "body",
|
|
258
|
+
size: "medium",
|
|
259
|
+
children: title
|
|
260
|
+
}), /*#__PURE__*/jsx(BaseBox, {
|
|
261
|
+
display: "flex",
|
|
262
|
+
alignItems: "center",
|
|
263
|
+
children: isExpanded ? /*#__PURE__*/jsx(ChevronUpIcon, {
|
|
264
|
+
size: "small",
|
|
265
|
+
color: "surface.icon.gray.muted"
|
|
266
|
+
}) : /*#__PURE__*/jsx(ChevronDownIcon, {
|
|
267
|
+
size: "small",
|
|
268
|
+
color: "surface.icon.gray.muted"
|
|
269
|
+
})
|
|
270
|
+
})]
|
|
271
|
+
}), /*#__PURE__*/jsx(Collapsible, {
|
|
272
|
+
isExpanded: isExpanded,
|
|
273
|
+
onExpandChange: handleExpandChange,
|
|
274
|
+
_shouldApplyWidthRestrictions: false,
|
|
275
|
+
children: /*#__PURE__*/jsx(CollapsibleBody, {
|
|
276
|
+
_hasMargin: false,
|
|
277
|
+
children: /*#__PURE__*/jsx(BaseBox, {
|
|
278
|
+
paddingTop: "spacing.2",
|
|
279
|
+
children: isUpfrontMode || !isLoading ?
|
|
280
|
+
// Upfront mode OR complete: render all traces with computed step status
|
|
281
|
+
traces.map(function (trace, index) {
|
|
282
|
+
var stepStatus = getStepStatus(index);
|
|
283
|
+
return /*#__PURE__*/jsx(TraceRow, {
|
|
284
|
+
text: getTraceLabel(trace, stepStatus),
|
|
285
|
+
isLast: index === traces.length - 1,
|
|
286
|
+
stepStatus: stepStatus
|
|
287
|
+
}, index);
|
|
288
|
+
}) :
|
|
289
|
+
/*#__PURE__*/
|
|
290
|
+
// Streaming mode (loading, steps added one by one):
|
|
291
|
+
// completed rows + active RollingText row
|
|
292
|
+
jsxs(Fragment, {
|
|
293
|
+
children: [traces.slice(0, -1).map(function (trace, index) {
|
|
294
|
+
// The last completed row just transitioned from the active position —
|
|
295
|
+
// it was already visible, so skip the entry animation for it.
|
|
296
|
+
var isJustCompleted = index === traces.length - 2;
|
|
297
|
+
return /*#__PURE__*/jsx(m.div, {
|
|
298
|
+
initial: isJustCompleted ? false : {
|
|
299
|
+
opacity: 0,
|
|
300
|
+
y: 8
|
|
301
|
+
},
|
|
302
|
+
animate: {
|
|
303
|
+
opacity: 1,
|
|
304
|
+
y: 0
|
|
305
|
+
},
|
|
306
|
+
transition: rowTransition,
|
|
307
|
+
children: /*#__PURE__*/jsx(TraceRow, {
|
|
308
|
+
text: getTraceLabel(trace, 'completed'),
|
|
309
|
+
isLast: false,
|
|
310
|
+
stepStatus: "completed"
|
|
311
|
+
})
|
|
312
|
+
}, trace.label);
|
|
313
|
+
}), traces.length > 0 && /*#__PURE__*/jsx(m.div, {
|
|
314
|
+
initial: {
|
|
315
|
+
opacity: 0,
|
|
316
|
+
y: 8
|
|
317
|
+
},
|
|
318
|
+
animate: {
|
|
319
|
+
opacity: 1,
|
|
320
|
+
y: 0
|
|
321
|
+
},
|
|
322
|
+
transition: rowTransition,
|
|
323
|
+
children: /*#__PURE__*/jsxs(BaseBox, {
|
|
324
|
+
display: "flex",
|
|
325
|
+
flexDirection: "row",
|
|
326
|
+
alignItems: "center",
|
|
327
|
+
gap: "spacing.3",
|
|
328
|
+
children: [/*#__PURE__*/jsx(BaseBox, {
|
|
329
|
+
display: "flex",
|
|
330
|
+
alignItems: "center",
|
|
331
|
+
justifyContent: "center",
|
|
332
|
+
flexShrink: 0,
|
|
333
|
+
width: "16px",
|
|
334
|
+
children: /*#__PURE__*/jsx(ActiveStepIcon, {})
|
|
335
|
+
}), /*#__PURE__*/jsx(BaseBox, {
|
|
336
|
+
position: "relative",
|
|
337
|
+
overflow: "hidden",
|
|
338
|
+
children: /*#__PURE__*/jsx(AnimatePresence, {
|
|
339
|
+
mode: "popLayout",
|
|
340
|
+
initial: false,
|
|
341
|
+
children: /*#__PURE__*/jsx(m.div, {
|
|
342
|
+
initial: {
|
|
343
|
+
y: 12,
|
|
344
|
+
opacity: 0
|
|
345
|
+
},
|
|
346
|
+
animate: {
|
|
347
|
+
y: 0,
|
|
348
|
+
opacity: 1
|
|
349
|
+
},
|
|
350
|
+
exit: {
|
|
351
|
+
y: -12,
|
|
352
|
+
opacity: 0,
|
|
353
|
+
position: 'absolute'
|
|
354
|
+
},
|
|
355
|
+
transition: slideTransition,
|
|
356
|
+
children: /*#__PURE__*/jsx(ShimmerOverlay, {
|
|
357
|
+
isActive: true,
|
|
358
|
+
children: /*#__PURE__*/jsx(Text, {
|
|
359
|
+
color: "surface.text.onSea.onSubtle",
|
|
360
|
+
size: "small",
|
|
361
|
+
weight: "regular",
|
|
362
|
+
children: getTraceLabel(traces[traces.length - 1], 'active')
|
|
363
|
+
})
|
|
364
|
+
})
|
|
365
|
+
}, traces.length)
|
|
366
|
+
})
|
|
367
|
+
})]
|
|
368
|
+
})
|
|
369
|
+
}, "active-row")]
|
|
370
|
+
})
|
|
371
|
+
})
|
|
372
|
+
})
|
|
373
|
+
})]
|
|
374
|
+
});
|
|
375
|
+
};
|
|
376
|
+
|
|
377
|
+
export { ReasoningTraces };
|
|
378
|
+
//# sourceMappingURL=ReasoningTraces.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReasoningTraces.web.js","sources":["../../../../../../src/components/ChatMessage/ReasoningTraces.web.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { AnimatePresence, m } from 'framer-motion';\nimport type { ReasoningTrace, ReasoningTracesProps } from './types';\nimport Rotate from './Rotate';\nimport { useTheme } from '~components/BladeProvider';\nimport { msToSeconds } from '~utils/msToSeconds';\nimport { cssBezierToArray } from '~utils/cssBezierToArray';\nimport { castWebType } from '~utils';\nimport type { IconComponent } from '~components/Icons';\nimport { ChevronDownIcon, ChevronUpIcon } from '~components/Icons';\nimport { Text } from '~components/Typography';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Collapsible } from '~components/Collapsible/Collapsible';\nimport { CollapsibleBody } from '~components/Collapsible/CollapsibleBody';\nimport { Svg, Path } from '~components/Icons/_Svg';\nimport useIconProps from '~components/Icons/useIconProps';\n\n// Custom 4-pointed star matching the Figma design\nconst SparkleIcon: IconComponent = ({ size, color, ...styledProps }) => {\n const { height, width } = useIconProps({ size, color });\n return (\n <Svg {...styledProps} width={width} height={height} viewBox=\"0 0 9 9\" fill=\"none\">\n <Path\n d=\"M4.7169 8.67519C4.62025 8.93638 4.25084 8.93638 4.15419 8.67519L3.13296 5.91537C3.10258 5.83326 3.03784 5.76851 2.95572 5.73813L0.195898 4.7169C-0.0652872 4.62025 -0.0652871 4.25084 0.195899 4.15419L2.95572 3.13296C3.03784 3.10258 3.10258 3.03784 3.13297 2.95572L4.15419 0.1959C4.25084 -0.0652861 4.62026 -0.0652861 4.7169 0.195899L5.73813 2.95572C5.76851 3.03784 5.83326 3.10258 5.91537 3.13297L8.6752 4.15419C8.93638 4.25084 8.93638 4.62026 8.6752 4.7169L5.91537 5.73813C5.83326 5.76851 5.76851 5.83326 5.73813 5.91537L4.7169 8.67519Z\"\n fill=\"#009E5C\"\n />\n </Svg>\n );\n};\n\n// Spinning sparkle for the active step row (smaller)\nconst ActiveStepIcon = (): React.ReactElement => {\n return (\n <Rotate animate={true}>\n <SparkleIcon size=\"xsmall\" color=\"feedback.icon.positive.intense\" />\n </Rotate>\n );\n};\n\ntype StepStatus = 'completed' | 'active' | 'pending';\n\nconst StepDot = ({ status }: { status: StepStatus }): React.ReactElement => (\n <BaseBox\n style={{ opacity: status === 'pending' ? 0.3 : 1 }}\n width=\"6px\"\n height=\"6px\"\n borderRadius=\"max\"\n backgroundColor={\n status === 'completed' ? 'surface.icon.onSea.onSubtle' : 'surface.icon.gray.muted'\n }\n flexShrink={0}\n />\n);\n\n// Connector color follows the step above it: green after completed, gray otherwise\nconst StepConnector = ({ fromStatus }: { fromStatus: StepStatus }): React.ReactElement => (\n <BaseBox\n style={{ flex: 1, minHeight: '6px' }}\n width=\"1px\"\n backgroundColor={\n fromStatus === 'completed' ? 'surface.icon.onSea.onSubtle' : 'surface.border.gray.muted'\n }\n />\n);\n\nconst ShimmerOverlay = ({\n children,\n isActive,\n}: {\n children: React.ReactNode;\n isActive: boolean;\n}): React.ReactElement => {\n const { theme } = useTheme();\n\n const shimmerColor = theme.colors.surface.text.staticWhite.muted;\n const shimmerDuration = msToSeconds(theme.motion.duration['2xgentle']);\n const shimmerDelay = msToSeconds(theme.motion.delay.gentle);\n const shimmerEase = cssBezierToArray(castWebType(theme.motion.easing.standard));\n return (\n <BaseBox position=\"relative\" overflow=\"hidden\">\n {children}\n {isActive && (\n <m.span\n aria-hidden\n style={{\n position: 'absolute',\n inset: 0,\n background: `linear-gradient(90deg, transparent 0%, ${shimmerColor} 50%, transparent 100%)`,\n pointerEvents: 'none',\n }}\n initial={{ x: '-100%' }}\n animate={{ x: '100%' }}\n transition={{\n duration: shimmerDuration,\n ease: shimmerEase,\n repeat: Infinity,\n repeatDelay: shimmerDelay,\n }}\n />\n )}\n </BaseBox>\n );\n};\n\nconst TraceRow = ({\n text,\n isLast,\n stepStatus,\n}: {\n text: string;\n isLast: boolean;\n stepStatus: StepStatus;\n}): React.ReactElement => (\n <BaseBox display=\"flex\" flexDirection=\"row\" alignItems=\"stretch\">\n {/* Left column: icon + connector */}\n <BaseBox\n display=\"flex\"\n flexDirection=\"column\"\n alignItems=\"center\"\n flexShrink={0}\n width=\"16px\"\n marginRight=\"spacing.3\"\n >\n <BaseBox\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n height=\"17px\"\n flexShrink={0}\n >\n {stepStatus === 'active' ? <ActiveStepIcon /> : <StepDot status={stepStatus} />}\n </BaseBox>\n {!isLast && <StepConnector fromStatus={stepStatus} />}\n </BaseBox>\n\n {/* Text */}\n <BaseBox\n paddingBottom={isLast ? 'spacing.0' : 'spacing.2'}\n style={stepStatus === 'pending' ? { opacity: 0.5 } : undefined}\n >\n <ShimmerOverlay isActive={stepStatus === 'active'}>\n <Text\n color={\n stepStatus === 'active' ? 'surface.text.onSea.onSubtle' : 'surface.text.gray.muted'\n }\n size=\"small\"\n weight=\"regular\"\n >\n {text}\n </Text>\n </ShimmerOverlay>\n </BaseBox>\n </BaseBox>\n);\n\nconst ReasoningTraces = ({\n traces,\n status = 'loading',\n title = 'Explored',\n activeStepIndex,\n}: ReasoningTracesProps): React.ReactElement => {\n // Upfront mode: all steps are known; activeStepIndex controls which is active\n const isUpfrontMode = activeStepIndex !== undefined;\n\n // Start collapsed in upfront mode so the open animation plays on mount\n const [isExpanded, setIsExpanded] = useState(!isUpfrontMode);\n const { theme } = useTheme();\n const isLoading = status === 'loading';\n const rowTransition = {\n duration: msToSeconds(theme.motion.duration.moderate),\n ease: cssBezierToArray(castWebType(theme.motion.easing.entrance)),\n };\n const slideTransition = {\n duration: msToSeconds(theme.motion.duration.xmoderate),\n ease: cssBezierToArray(castWebType(theme.motion.easing.emphasized)),\n };\n\n // Reset to expanded when status changes back to loading (for replay scenarios)\n useEffect(() => {\n if (status === 'loading') {\n setIsExpanded(true);\n }\n }, [status]);\n\n // Auto-collapse once all steps complete\n useEffect(() => {\n if (status === 'complete') {\n const timer = setTimeout(() => setIsExpanded(false), 600);\n return () => clearTimeout(timer);\n }\n return undefined;\n }, [status]);\n\n const handleExpandChange = ({ isExpanded: next }: { isExpanded: boolean }): void => {\n setIsExpanded(next);\n };\n\n const getStepStatus = (index: number): StepStatus => {\n if (status === 'complete') return 'completed';\n if (isUpfrontMode) {\n if (index < activeStepIndex) return 'completed';\n if (index === activeStepIndex) return 'active';\n return 'pending';\n }\n // Streaming mode: last trace is active, all before are completed\n return index < traces.length - 1 ? 'completed' : 'active';\n };\n\n const getTraceLabel = (trace: ReasoningTrace, stepStatus: StepStatus): string => {\n return stepStatus === 'completed' && trace.completedLabel ? trace.completedLabel : trace.label;\n };\n\n return (\n <BaseBox marginTop=\"spacing.2\" marginBottom=\"spacing.3\">\n {/* Show header only when complete */}\n {status === 'complete' && (\n <BaseBox\n as=\"button\"\n display=\"flex\"\n flexDirection=\"row\"\n alignItems=\"center\"\n gap=\"spacing.2\"\n onClick={() => setIsExpanded((prev) => !prev)}\n cursor=\"pointer\"\n style={{ background: 'none', border: 'none' }}\n padding=\"spacing.0\"\n textAlign=\"left\"\n marginBottom=\"spacing.3\"\n >\n <Text color=\"surface.text.gray.muted\" weight=\"regular\" variant=\"body\" size=\"medium\">\n {title}\n </Text>\n\n <BaseBox display=\"flex\" alignItems=\"center\">\n {isExpanded ? (\n <ChevronUpIcon size=\"small\" color=\"surface.icon.gray.muted\" />\n ) : (\n <ChevronDownIcon size=\"small\" color=\"surface.icon.gray.muted\" />\n )}\n </BaseBox>\n </BaseBox>\n )}\n\n {/* ── Body (animated via Blade Collapsible) ── */}\n <Collapsible\n isExpanded={isExpanded}\n onExpandChange={handleExpandChange}\n _shouldApplyWidthRestrictions={false}\n >\n <CollapsibleBody _hasMargin={false}>\n <BaseBox paddingTop=\"spacing.2\">\n {isUpfrontMode || !isLoading ? (\n // Upfront mode OR complete: render all traces with computed step status\n traces.map((trace, index) => {\n const stepStatus = getStepStatus(index);\n return (\n <TraceRow\n key={index}\n text={getTraceLabel(trace, stepStatus)}\n isLast={index === traces.length - 1}\n stepStatus={stepStatus}\n />\n );\n })\n ) : (\n // Streaming mode (loading, steps added one by one):\n // completed rows + active RollingText row\n <>\n {traces.slice(0, -1).map((trace, index) => {\n // The last completed row just transitioned from the active position —\n // it was already visible, so skip the entry animation for it.\n const isJustCompleted = index === traces.length - 2;\n return (\n <m.div\n key={trace.label}\n initial={isJustCompleted ? false : { opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n transition={rowTransition}\n >\n <TraceRow\n text={getTraceLabel(trace, 'completed')}\n isLast={false}\n stepStatus=\"completed\"\n />\n </m.div>\n );\n })}\n\n {traces.length > 0 && (\n <m.div\n key=\"active-row\"\n initial={{ opacity: 0, y: 8 }}\n animate={{ opacity: 1, y: 0 }}\n transition={rowTransition}\n >\n <BaseBox display=\"flex\" flexDirection=\"row\" alignItems=\"center\" gap=\"spacing.3\">\n <BaseBox\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n flexShrink={0}\n width=\"16px\"\n >\n <ActiveStepIcon />\n </BaseBox>\n <BaseBox position=\"relative\" overflow=\"hidden\">\n <AnimatePresence mode=\"popLayout\" initial={false}>\n <m.div\n key={traces.length}\n initial={{ y: 12, opacity: 0 }}\n animate={{ y: 0, opacity: 1 }}\n exit={{ y: -12, opacity: 0, position: 'absolute' }}\n transition={slideTransition}\n >\n <ShimmerOverlay isActive>\n <Text\n color=\"surface.text.onSea.onSubtle\"\n size=\"small\"\n weight=\"regular\"\n >\n {getTraceLabel(traces[traces.length - 1], 'active')}\n </Text>\n </ShimmerOverlay>\n </m.div>\n </AnimatePresence>\n </BaseBox>\n </BaseBox>\n </m.div>\n )}\n </>\n )}\n </BaseBox>\n </CollapsibleBody>\n </Collapsible>\n </BaseBox>\n );\n};\n\nexport { ReasoningTraces };\n"],"names":["SparkleIcon","_ref","size","color","styledProps","_objectWithoutProperties","_excluded","_useIconProps","useIconProps","height","width","_jsx","Svg","_objectSpread","viewBox","fill","children","Path","d","ActiveStepIcon","Rotate","animate","StepDot","_ref2","status","BaseBox","style","opacity","borderRadius","backgroundColor","flexShrink","StepConnector","_ref3","fromStatus","flex","minHeight","ShimmerOverlay","_ref4","isActive","_useTheme","useTheme","theme","shimmerColor","colors","surface","text","staticWhite","muted","shimmerDuration","msToSeconds","motion","duration","shimmerDelay","delay","gentle","shimmerEase","cssBezierToArray","castWebType","easing","standard","_jsxs","position","overflow","m","span","inset","background","concat","pointerEvents","initial","x","transition","ease","repeat","Infinity","repeatDelay","TraceRow","_ref5","isLast","stepStatus","display","flexDirection","alignItems","marginRight","justifyContent","paddingBottom","undefined","Text","weight","ReasoningTraces","_ref6","traces","_ref6$status","_ref6$title","title","activeStepIndex","isUpfrontMode","_useState","useState","_useState2","_slicedToArray","isExpanded","setIsExpanded","_useTheme2","isLoading","rowTransition","moderate","entrance","slideTransition","xmoderate","emphasized","useEffect","timer","setTimeout","clearTimeout","handleExpandChange","_ref7","next","getStepStatus","index","length","getTraceLabel","trace","completedLabel","label","marginTop","marginBottom","as","gap","onClick","prev","cursor","border","padding","textAlign","variant","ChevronUpIcon","ChevronDownIcon","Collapsible","onExpandChange","_shouldApplyWidthRestrictions","CollapsibleBody","_hasMargin","paddingTop","map","_Fragment","slice","isJustCompleted","div","y","AnimatePresence","mode","exit"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getDefaultExportFromCjs } from '../../../../../_virtual/_commonjsHelpers.js';
|
|
2
|
-
import { __exports as cloneDeep$1 } from '../../../../../_virtual/
|
|
2
|
+
import { __exports as cloneDeep$1 } from '../../../../../_virtual/cloneDeep2.js';
|
|
3
3
|
import '../../../../../_virtual/cloneDeepWith.js';
|
|
4
4
|
import { __exports as cloneDeepWith } from '../../../../../_virtual/cloneDeepWith2.js';
|
|
5
5
|
|