@reforma/components 0.1.4 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ToggleButtonGroup/ToggleButtonGroup.module.css +1 -1
- package/dist/chat/ComposerBanner/ComposerBanner.d.ts.map +1 -1
- package/dist/chat/ComposerBanner/ComposerBanner.js +16 -15
- package/dist/chat/ComposerBanner/ComposerBanner.js.map +1 -1
- package/dist/chat/Message/turn/Message.module.css +1 -1
- package/dist/chat/Message/turn/Message.module.css.js +22 -16
- package/dist/chat/Message/turn/Message.module.css.js.map +1 -1
- package/dist/chat/Message/turn/MessageAssistantBody.d.ts +2 -1
- package/dist/chat/Message/turn/MessageAssistantBody.d.ts.map +1 -1
- package/dist/chat/Message/turn/MessageAssistantBody.js +148 -56
- package/dist/chat/Message/turn/MessageAssistantBody.js.map +1 -1
- package/dist/chat/Message/turn/MessageUserBubble.d.ts.map +1 -1
- package/dist/chat/Message/turn/MessageUserBubble.js +52 -53
- package/dist/chat/Message/turn/MessageUserBubble.js.map +1 -1
- package/dist/chat/Message/turn/workedCollapse.d.ts +16 -0
- package/dist/chat/Message/turn/workedCollapse.d.ts.map +1 -0
- package/dist/chat/Message/turn/workedCollapse.js +31 -0
- package/dist/chat/Message/turn/workedCollapse.js.map +1 -0
- package/dist/chat/Tool/agent/AgentTool.d.ts +10 -0
- package/dist/chat/Tool/agent/AgentTool.d.ts.map +1 -1
- package/dist/chat/Tool/agent/AgentTool.js +110 -99
- package/dist/chat/Tool/agent/AgentTool.js.map +1 -1
- package/dist/chat/Tool/index.d.ts +1 -1
- package/dist/chat/Tool/index.d.ts.map +1 -1
- package/dist/chat/Tool/index.js +45 -44
- package/dist/chat/index.js +62 -61
- package/dist/index.js +364 -363
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer components{.ToggleButtonGroup_group_aBSDUm{--reforma-toggle-group-radius: var(--radius-md);display:inline-flex;align-items:center;gap:var(--spacing-sm);box-sizing:border-box;border-radius:calc(var(--reforma-toggle-group-radius) * var(--squircle-radius-factor));corner-shape:superellipse(var(--squircle-value));background-color:var(--color-secondary);overflow:hidden;color:var(--color-text)}.ToggleButtonGroup_group_aBSDUm[data-variant=filled]{padding:0 var(--spacing-xxs)}.ToggleButtonGroup_group_aBSDUm[data-variant=transparent]{gap:1px;background-color:transparent;padding:0;overflow:visible}.ToggleButtonGroup_group_aBSDUm[data-variant=multiselect]{gap:1px;background-color:transparent}.ToggleButtonGroup_group_aBSDUm[data-variant=text]{background-color:transparent;padding:0;overflow:visible}.ToggleButtonGroup_group_aBSDUm[data-active]{box-shadow:0 0 0 1px var(--color-primary)}.ToggleButtonGroup_group_aBSDUm[data-size=xs][data-variant=text]{gap:var(--spacing-8)}.ToggleButtonGroup_group_aBSDUm[data-size=sm][data-variant=text]{gap:var(--spacing-12)}.ToggleButtonGroup_group_aBSDUm[data-size=md][data-variant=text]{gap:var(--spacing-16)}.ToggleButtonGroup_group_aBSDUm[data-size=lg][data-variant=text]{gap:var(--spacing-18)}.ToggleButtonGroup_item_92PAm9{--reforma-toggle-bg: transparent;--reforma-toggle-bg--selected: transparent;--reforma-toggle-color: var(--color-text);--reforma-toggle-color--selected: var(--color-text);--reforma-toggle-opacity: 1;--reforma-toggle-opacity--hover: 1;--reforma-toggle-opacity--selected: 1;--reforma-toggle-item-radius: 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;-webkit-tap-highlight-color:transparent;display:inline-flex;flex:1 1 auto;justify-content:center;align-items:center;gap:var(--spacing-sm);opacity:var(--reforma-toggle-opacity);outline:none;border:none;border-radius:calc(var(--reforma-toggle-item-radius) * var(--squircle-radius-factor));background-color:var(--reforma-toggle-bg);padding:var(--spacing-xs) var(--spacing-md);color:var(--reforma-toggle-color);corner-shape:superellipse(var(--squircle-value));transition-duration:var(--transition-duration-fast);transition-property:background-color,color,opacity;transition-timing-function:var(--ease-in-out)}.ToggleButtonGroup_item_92PAm9:not([data-disabled]):hover{opacity:var(--reforma-toggle-opacity--hover)}.ToggleButtonGroup_item_92PAm9[data-selected=true]{opacity:var(--reforma-toggle-opacity--selected);background-color:var(--reforma-toggle-bg--selected);color:var(--reforma-toggle-color--selected)}.ToggleButtonGroup_group_aBSDUm[data-placeholder-selected] .ToggleButtonGroup_item_92PAm9[data-selected=true]{--reforma-toggle-color--selected: var(--color-secondary-muted-text)}.ToggleButtonGroup_item_92PAm9[data-disabled]{opacity:var(--opacity-disabled);cursor:not-allowed}.ToggleButtonGroup_item_92PAm9[data-focus-visible]{outline:var(--spacing-4) solid var(--color-primary-muted-border);outline-offset:0}.ToggleButtonGroup_group_aBSDUm[data-size=xs]{--reforma-toggle-group-radius: var(--radius-sm);height:var(--spacing-24);font-weight:400;font-size:var(--text-sm);line-height:var(--leading-sm);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_group_aBSDUm[data-size=xs][data-variant=filled]{padding:var(--spacing-xxs)}.ToggleButtonGroup_group_aBSDUm[data-size=sm]{--reforma-toggle-group-radius: var(--radius-md);height:var(--spacing-30);font-weight:400;font-size:var(--text-sm);line-height:var(--leading-sm);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_group_aBSDUm[data-size=sm][data-variant=filled]{padding:var(--spacing-xxs)}.ToggleButtonGroup_group_aBSDUm[data-size=md]{--reforma-toggle-group-radius: var(--radius-lg);height:var(--spacing-36);font-weight:400;font-size:var(--text-md);line-height:var(--leading-md);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_group_aBSDUm[data-size=md][data-variant=filled]{padding:var(--spacing-xs)}.ToggleButtonGroup_group_aBSDUm[data-size=lg]{--reforma-toggle-group-radius: var(--radius-xl);height:var(--spacing-56);font-weight:400;font-size:var(--text-lg);line-height:var(--leading-lg);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_group_aBSDUm[data-size=lg][data-variant=filled]{padding:var(--spacing-sm)}.ToggleButtonGroup_group_aBSDUm[data-variant=text]{height:auto}.ToggleButtonGroup_group_aBSDUm[data-variant=text],.ToggleButtonGroup_group_aBSDUm[data-variant=transparent]{--reforma-toggle-group-radius: 0}.ToggleButtonGroup_group_aBSDUm[data-orientation=vertical]{flex-direction:column;align-items:stretch;width:-moz-fit-content;width:fit-content;height:auto}.ToggleButtonGroup_item_92PAm9[data-size=xs][data-variant=filled]{padding:var(--spacing-2) var(--spacing-6);min-width:var(--spacing-20);height:var(--spacing-20);min-height:var(--spacing-20);--reforma-toggle-item-radius: var(--radius-xs)}.ToggleButtonGroup_item_92PAm9[data-size=sm][data-variant=filled]{padding:var(--spacing-4) var(--spacing-10);min-width:var(--spacing-26);height:var(--spacing-26);min-height:var(--spacing-26);--reforma-toggle-item-radius: var(--radius-sm)}.ToggleButtonGroup_item_92PAm9[data-size=md][data-variant=filled]{padding:var(--spacing-6) var(--spacing-14);min-width:var(--spacing-28);height:var(--spacing-28);min-height:var(--spacing-28);--reforma-toggle-item-radius: var(--radius-md)}.ToggleButtonGroup_item_92PAm9[data-size=lg][data-variant=filled]{padding:var(--spacing-10) var(--spacing-30);min-width:var(--spacing-44);height:var(--spacing-44);min-height:var(--spacing-44);--reforma-toggle-item-radius: var(--radius-lg)}.ToggleButtonGroup_item_92PAm9[data-size=xs][data-variant=transparent],.ToggleButtonGroup_item_92PAm9[data-size=xs][data-variant=multiselect]{padding:var(--spacing-2) var(--spacing-6);min-width:var(--spacing-24);height:var(--spacing-24)}.ToggleButtonGroup_item_92PAm9[data-size=sm][data-variant=transparent],.ToggleButtonGroup_item_92PAm9[data-size=sm][data-variant=multiselect]{padding:var(--spacing-4) var(--spacing-10);min-width:var(--spacing-30);height:var(--spacing-30)}.ToggleButtonGroup_item_92PAm9[data-size=md][data-variant=transparent],.ToggleButtonGroup_item_92PAm9[data-size=md][data-variant=multiselect]{padding:var(--spacing-6) var(--spacing-14);min-width:var(--spacing-36);height:var(--spacing-36)}.ToggleButtonGroup_item_92PAm9[data-size=lg][data-variant=transparent],.ToggleButtonGroup_item_92PAm9[data-size=lg][data-variant=multiselect]{padding:var(--spacing-10) var(--spacing-30);min-width:var(--spacing-56);height:var(--spacing-56)}.ToggleButtonGroup_item_92PAm9[data-size=xs][data-variant=transparent]{--reforma-toggle-item-radius: var(--radius-sm)}.ToggleButtonGroup_item_92PAm9[data-size=sm][data-variant=transparent]{--reforma-toggle-item-radius: var(--radius-md)}.ToggleButtonGroup_item_92PAm9[data-size=md][data-variant=transparent]{--reforma-toggle-item-radius: var(--radius-lg)}.ToggleButtonGroup_item_92PAm9[data-size=lg][data-variant=transparent]{--reforma-toggle-item-radius: var(--radius-xl)}.ToggleButtonGroup_item_92PAm9[data-size=xs][data-variant=text]{padding:var(--spacing-2);min-width:var(--spacing-24);height:var(--spacing-24);font-weight:500;font-size:var(--text-xs);line-height:var(--leading-xs);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_item_92PAm9[data-size=sm][data-variant=text]{padding:var(--spacing-2);min-width:var(--spacing-30);height:var(--spacing-30);font-weight:500;font-size:var(--text-sm);line-height:var(--leading-sm);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_item_92PAm9[data-size=md][data-variant=text]{padding:var(--spacing-2);min-width:var(--spacing-36);height:var(--spacing-36);font-weight:500;font-size:var(--text-md);line-height:var(--leading-md);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_item_92PAm9[data-size=lg][data-variant=text]{padding:var(--spacing-2);min-width:var(--spacing-56);height:var(--spacing-56);font-weight:500;font-size:var(--text-lg);line-height:var(--leading-lg);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_item_92PAm9[data-variant=text][data-selected=true]{--reforma-toggle-opacity--hover: 1 !important}.ToggleButtonGroup_item_92PAm9[data-icon-only][data-size=xs]{padding:var(--spacing-2)}.ToggleButtonGroup_item_92PAm9[data-icon-only][data-size=sm]{padding:var(--spacing-4)}.ToggleButtonGroup_item_92PAm9[data-icon-only][data-size=md]{padding:var(--spacing-6)}.ToggleButtonGroup_item_92PAm9[data-icon-only][data-size=lg]{padding:var(--spacing-10)}.ToggleButtonGroup_item_92PAm9:not([data-icon-only]):not([data-select-item]){min-width:-moz-max-content;min-width:max-content}.ToggleButtonGroup_item_92PAm9[data-variant=filled],.ToggleButtonGroup_item_92PAm9[data-variant=transparent]{--reforma-toggle-color: var(--color-secondary-muted-text);--reforma-toggle-color--selected: var(--color-text);--reforma-toggle-press-nudge: var(--spacing-2);position:relative;z-index:1}.ToggleButtonGroup_item_92PAm9[data-variant=filled]:not([data-selected=true]):not([data-disabled]):is([data-hovered],[data-pressed],:hover),.ToggleButtonGroup_item_92PAm9[data-variant=transparent]:not([data-selected=true]):not([data-disabled]):is([data-hovered],[data-pressed],:hover){background-color:var(--color-secondary-muted-light)}.ToggleButtonGroup_item_92PAm9[data-variant=filled][data-selected=true],.ToggleButtonGroup_item_92PAm9[data-variant=transparent][data-selected=true]{z-index:0}.ToggleButtonGroup_item_92PAm9[data-variant=filled] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_item_92PAm9[data-variant=transparent] .ToggleButtonGroup_selectionIndicator_HFwFs0{position:absolute;z-index:-1;inset:0;border-radius:inherit;corner-shape:inherit;transition-duration:var(--transition-duration-fast);transition-property:translate,width,scale;transition-timing-function:var(--ease-in-out)}.ToggleButtonGroup_item_92PAm9[data-variant=filled][data-selected=true][data-pressed] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_item_92PAm9[data-variant=transparent][data-selected=true][data-pressed] .ToggleButtonGroup_selectionIndicator_HFwFs0{scale:.97}.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=filled]:has(.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-selected=true]) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=transparent]:has(.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-selected=true]) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0{translate:calc(var(--reforma-toggle-press-nudge) * -1) 0;width:calc(100% + var(--reforma-toggle-press-nudge))}.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=filled]:has(.ToggleButtonGroup_item_92PAm9[data-selected=true]+.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=transparent]:has(.ToggleButtonGroup_item_92PAm9[data-selected=true]+.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0{width:calc(100% + var(--reforma-toggle-press-nudge))}.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=filled]:has(.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-selected=true]) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=transparent]:has(.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-selected=true]) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0{translate:calc(var(--reforma-toggle-press-nudge) * -2) 0;width:calc(100% + var(--reforma-toggle-press-nudge) * 2)}.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=filled]:has(.ToggleButtonGroup_item_92PAm9[data-selected=true]+.ToggleButtonGroup_item_92PAm9:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=transparent]:has(.ToggleButtonGroup_item_92PAm9[data-selected=true]+.ToggleButtonGroup_item_92PAm9:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0{width:calc(100% + var(--reforma-toggle-press-nudge) * 2)}.ToggleButtonGroup_item_92PAm9[data-variant=filled] .ToggleButtonGroup_selectionIndicator_HFwFs0{box-shadow:0 var(--spacing-4) var(--spacing-6) 0 var(--color-dark-a8);background-color:var(--color-surface)}.ToggleButtonGroup_item_92PAm9[data-variant=transparent] .ToggleButtonGroup_selectionIndicator_HFwFs0{background-color:var(--color-secondary)}.ToggleButtonGroup_group_aBSDUm[data-placeholder-selected] .ToggleButtonGroup_item_92PAm9[data-variant=filled] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_group_aBSDUm[data-placeholder-selected] .ToggleButtonGroup_item_92PAm9[data-variant=transparent] .ToggleButtonGroup_selectionIndicator_HFwFs0{box-shadow:none}.ToggleButtonGroup_item_92PAm9[data-variant=multiselect]{--reforma-toggle-bg: var(--color-secondary);--reforma-toggle-color: var(--color-secondary-muted-text);--reforma-toggle-bg--selected: var(--color-secondary-light);--reforma-toggle-color--selected: var(--color-text);--reforma-toggle-item-radius: 0;padding:var(--spacing-md)}.ToggleButtonGroup_item_92PAm9[data-variant=text]{--reforma-toggle-opacity: var(--opacity-inactive);--reforma-toggle-opacity--hover: var(--opacity-hover);--reforma-toggle-opacity--selected: 1;flex:0 0 auto}@media(prefers-reduced-motion:reduce){.ToggleButtonGroup_item_92PAm9[data-variant=filled] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_item_92PAm9[data-variant=transparent] .ToggleButtonGroup_selectionIndicator_HFwFs0{transition:none}.ToggleButtonGroup_item_92PAm9[data-variant=filled][data-selected=true][data-pressed] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_item_92PAm9[data-variant=transparent][data-selected=true][data-pressed] .ToggleButtonGroup_selectionIndicator_HFwFs0{scale:none}}.ToggleButtonGroup_itemContent_38HpIc{display:inline-flex;justify-content:center;align-items:center;gap:var(--spacing-sm);width:100%;min-width:0}.ToggleButtonGroup_selectItem_6o13WW{display:contents}.ToggleButtonGroup_item_92PAm9[data-select-item]{min-width:0}.ToggleButtonGroup_selectItemLabel_8QT16c{padding-right:var(--spacing-4);min-width:0;overflow:hidden;text-overflow:clip;white-space:nowrap;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - var(--spacing-2)),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - var(--spacing-2)),transparent)}.ToggleButtonGroup_itemChevron_9sOsUI{flex-shrink:0;opacity:var(--opacity-inactive);transition:transform var(--transition-duration-fast) var(--ease-in-out);fill:currentColor}.ToggleButtonGroup_selectItem_6o13WW[data-open] .ToggleButtonGroup_itemChevron_9sOsUI{transform:rotate(180deg)}.ToggleButtonGroup_selectPopover_Ecq4nt{min-width:var(--trigger-width)}.ToggleButtonGroup_selectListBox_Lv53fJ{min-width:100%}}
|
|
1
|
+
@layer components{.ToggleButtonGroup_group_aBSDUm{--reforma-toggle-group-radius: var(--radius-md);display:inline-flex;align-items:center;gap:var(--spacing-sm);box-sizing:border-box;border-radius:calc(var(--reforma-toggle-group-radius) * var(--squircle-radius-factor));corner-shape:superellipse(var(--squircle-value));background-color:var(--color-secondary);overflow:hidden;color:var(--color-text)}.ToggleButtonGroup_group_aBSDUm[data-variant=filled]{padding:0 var(--spacing-xxs)}.ToggleButtonGroup_group_aBSDUm[data-variant=transparent]{gap:1px;background-color:transparent;padding:0;overflow:visible}.ToggleButtonGroup_group_aBSDUm[data-variant=multiselect]{gap:1px;background-color:transparent}.ToggleButtonGroup_group_aBSDUm[data-variant=text]{background-color:transparent;padding:0;overflow:visible}.ToggleButtonGroup_group_aBSDUm[data-active]{box-shadow:0 0 0 1px var(--color-primary)}.ToggleButtonGroup_group_aBSDUm[data-size=xs][data-variant=text]{gap:var(--spacing-8)}.ToggleButtonGroup_group_aBSDUm[data-size=sm][data-variant=text]{gap:var(--spacing-12)}.ToggleButtonGroup_group_aBSDUm[data-size=md][data-variant=text]{gap:var(--spacing-16)}.ToggleButtonGroup_group_aBSDUm[data-size=lg][data-variant=text]{gap:var(--spacing-18)}.ToggleButtonGroup_item_92PAm9{--reforma-toggle-bg: transparent;--reforma-toggle-bg--selected: transparent;--reforma-toggle-color: var(--color-text);--reforma-toggle-color--selected: var(--color-text);--reforma-toggle-opacity: 1;--reforma-toggle-opacity--hover: 1;--reforma-toggle-opacity--selected: 1;--reforma-toggle-item-radius: 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;-webkit-tap-highlight-color:transparent;display:inline-flex;flex:1 1 auto;justify-content:center;align-items:center;gap:var(--spacing-sm);opacity:var(--reforma-toggle-opacity);outline:none;border:none;border-radius:calc(var(--reforma-toggle-item-radius) * var(--squircle-radius-factor));background-color:var(--reforma-toggle-bg);padding:var(--spacing-xs) var(--spacing-md);color:var(--reforma-toggle-color);corner-shape:superellipse(var(--squircle-value));transition-duration:var(--transition-duration-fast);transition-property:background-color,color,opacity;transition-timing-function:var(--ease-in-out)}.ToggleButtonGroup_item_92PAm9:not([data-disabled]):hover{opacity:var(--reforma-toggle-opacity--hover)}.ToggleButtonGroup_item_92PAm9[data-selected=true]{opacity:var(--reforma-toggle-opacity--selected);background-color:var(--reforma-toggle-bg--selected);color:var(--reforma-toggle-color--selected)}.ToggleButtonGroup_group_aBSDUm[data-placeholder-selected] .ToggleButtonGroup_item_92PAm9[data-selected=true]{--reforma-toggle-color--selected: var(--color-secondary-muted-text)}.ToggleButtonGroup_item_92PAm9[data-disabled]{opacity:var(--opacity-disabled);cursor:not-allowed}.ToggleButtonGroup_item_92PAm9[data-focus-visible]{outline:var(--spacing-4) solid var(--color-primary-muted-border);outline-offset:0}.ToggleButtonGroup_group_aBSDUm[data-size=xs]{--reforma-toggle-group-radius: var(--radius-sm);height:var(--spacing-24);font-weight:400;font-size:var(--text-sm);line-height:var(--leading-sm);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_group_aBSDUm[data-size=xs][data-variant=filled]{padding:var(--spacing-xxs)}.ToggleButtonGroup_group_aBSDUm[data-size=sm]{--reforma-toggle-group-radius: var(--radius-md);height:var(--spacing-30);font-weight:400;font-size:var(--text-sm);line-height:var(--leading-sm);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_group_aBSDUm[data-size=sm][data-variant=filled]{padding:var(--spacing-xxs)}.ToggleButtonGroup_group_aBSDUm[data-size=md]{--reforma-toggle-group-radius: var(--radius-lg);height:var(--spacing-36);font-weight:400;font-size:var(--text-md);line-height:var(--leading-md);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_group_aBSDUm[data-size=md][data-variant=filled]{padding:var(--spacing-xs)}.ToggleButtonGroup_group_aBSDUm[data-size=lg]{--reforma-toggle-group-radius: var(--radius-xl);height:var(--spacing-56);font-weight:400;font-size:var(--text-lg);line-height:var(--leading-lg);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_group_aBSDUm[data-size=lg][data-variant=filled]{padding:var(--spacing-sm)}.ToggleButtonGroup_group_aBSDUm[data-variant=text]{height:auto}.ToggleButtonGroup_group_aBSDUm[data-variant=text],.ToggleButtonGroup_group_aBSDUm[data-variant=transparent]{--reforma-toggle-group-radius: 0}.ToggleButtonGroup_group_aBSDUm[data-orientation=vertical]{flex-direction:column;align-items:stretch;width:-moz-fit-content;width:fit-content;height:auto}.ToggleButtonGroup_item_92PAm9[data-size=xs][data-variant=filled]{padding:var(--spacing-2) var(--spacing-6);min-width:var(--spacing-20);height:var(--spacing-20);min-height:var(--spacing-20);--reforma-toggle-item-radius: var(--radius-xs)}.ToggleButtonGroup_item_92PAm9[data-size=sm][data-variant=filled]{padding:var(--spacing-4) var(--spacing-10);min-width:var(--spacing-26);height:var(--spacing-26);min-height:var(--spacing-26);--reforma-toggle-item-radius: var(--radius-sm)}.ToggleButtonGroup_item_92PAm9[data-size=md][data-variant=filled]{padding:var(--spacing-6) var(--spacing-14);min-width:var(--spacing-28);height:var(--spacing-28);min-height:var(--spacing-28);--reforma-toggle-item-radius: var(--radius-md)}.ToggleButtonGroup_item_92PAm9[data-size=lg][data-variant=filled]{padding:var(--spacing-10) var(--spacing-30);min-width:var(--spacing-44);height:var(--spacing-44);min-height:var(--spacing-44);--reforma-toggle-item-radius: var(--radius-lg)}.ToggleButtonGroup_item_92PAm9[data-size=xs][data-variant=transparent],.ToggleButtonGroup_item_92PAm9[data-size=xs][data-variant=multiselect]{padding:var(--spacing-2) var(--spacing-6);min-width:var(--spacing-24);height:var(--spacing-24)}.ToggleButtonGroup_item_92PAm9[data-size=sm][data-variant=transparent],.ToggleButtonGroup_item_92PAm9[data-size=sm][data-variant=multiselect]{padding:var(--spacing-4) var(--spacing-10);min-width:var(--spacing-30);height:var(--spacing-30)}.ToggleButtonGroup_item_92PAm9[data-size=md][data-variant=transparent],.ToggleButtonGroup_item_92PAm9[data-size=md][data-variant=multiselect]{padding:var(--spacing-6) var(--spacing-14);min-width:var(--spacing-36);height:var(--spacing-36)}.ToggleButtonGroup_item_92PAm9[data-size=lg][data-variant=transparent],.ToggleButtonGroup_item_92PAm9[data-size=lg][data-variant=multiselect]{padding:var(--spacing-10) var(--spacing-30);min-width:var(--spacing-56);height:var(--spacing-56)}.ToggleButtonGroup_item_92PAm9[data-size=xs][data-variant=transparent]{--reforma-toggle-item-radius: var(--radius-sm)}.ToggleButtonGroup_item_92PAm9[data-size=sm][data-variant=transparent]{--reforma-toggle-item-radius: var(--radius-md)}.ToggleButtonGroup_item_92PAm9[data-size=md][data-variant=transparent]{--reforma-toggle-item-radius: var(--radius-lg)}.ToggleButtonGroup_item_92PAm9[data-size=lg][data-variant=transparent]{--reforma-toggle-item-radius: var(--radius-xl)}.ToggleButtonGroup_item_92PAm9[data-size=xs][data-variant=text]{padding:var(--spacing-2);min-width:var(--spacing-24);height:var(--spacing-24);font-weight:500;font-size:var(--text-xs);line-height:var(--leading-xs);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_item_92PAm9[data-size=sm][data-variant=text]{padding:var(--spacing-2);min-width:var(--spacing-30);height:var(--spacing-30);font-weight:500;font-size:var(--text-sm);line-height:var(--leading-sm);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_item_92PAm9[data-size=md][data-variant=text]{padding:var(--spacing-2);min-width:var(--spacing-36);height:var(--spacing-36);font-weight:500;font-size:var(--text-md);line-height:var(--leading-md);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_item_92PAm9[data-size=lg][data-variant=text]{padding:var(--spacing-2);min-width:var(--spacing-56);height:var(--spacing-56);font-weight:500;font-size:var(--text-lg);line-height:var(--leading-lg);font-family:Onest,sans-serif;letter-spacing:0}.ToggleButtonGroup_item_92PAm9[data-variant=text][data-selected=true]{--reforma-toggle-opacity--hover: 1 !important}.ToggleButtonGroup_item_92PAm9[data-icon-only][data-size=xs]{padding:var(--spacing-2)}.ToggleButtonGroup_item_92PAm9[data-icon-only][data-size=sm]{padding:var(--spacing-4)}.ToggleButtonGroup_item_92PAm9[data-icon-only][data-size=md]{padding:var(--spacing-6)}.ToggleButtonGroup_item_92PAm9[data-icon-only][data-size=lg]{padding:var(--spacing-10)}.ToggleButtonGroup_item_92PAm9:not([data-icon-only]):not([data-select-item]){min-width:-moz-max-content;min-width:max-content}.ToggleButtonGroup_item_92PAm9[data-variant=filled],.ToggleButtonGroup_item_92PAm9[data-variant=transparent]{--reforma-toggle-color: var(--color-secondary-muted-text);--reforma-toggle-color--selected: var(--color-text);--reforma-toggle-press-nudge: var(--spacing-2);position:relative;z-index:1}.ToggleButtonGroup_item_92PAm9[data-variant=filled]:not([data-selected=true]):not([data-disabled]):is([data-hovered],[data-pressed],:hover),.ToggleButtonGroup_item_92PAm9[data-variant=transparent]:not([data-selected=true]):not([data-disabled]):is([data-hovered],[data-pressed],:hover){background-color:var(--color-secondary-muted-light)}.ToggleButtonGroup_item_92PAm9[data-variant=filled][data-selected=true],.ToggleButtonGroup_item_92PAm9[data-variant=transparent][data-selected=true]{z-index:0}.ToggleButtonGroup_item_92PAm9[data-variant=filled] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_item_92PAm9[data-variant=transparent] .ToggleButtonGroup_selectionIndicator_HFwFs0{position:absolute;z-index:-1;inset:0;border-radius:inherit;corner-shape:inherit;transition-duration:var(--transition-duration-fast);transition-property:translate,width,scale;transition-timing-function:var(--ease-in-out)}.ToggleButtonGroup_item_92PAm9[data-variant=filled][data-selected=true][data-pressed] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_item_92PAm9[data-variant=transparent][data-selected=true][data-pressed] .ToggleButtonGroup_selectionIndicator_HFwFs0{scale:.97}.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=filled]:has(.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-selected=true]) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=transparent]:has(.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-selected=true]) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0{translate:calc(var(--reforma-toggle-press-nudge) * -1) 0;width:calc(100% + var(--reforma-toggle-press-nudge))}.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=filled]:has(.ToggleButtonGroup_item_92PAm9[data-selected=true]+.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=transparent]:has(.ToggleButtonGroup_item_92PAm9[data-selected=true]+.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0{width:calc(100% + var(--reforma-toggle-press-nudge))}.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=filled]:has(.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-selected=true]) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=transparent]:has(.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-selected=true]) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0{translate:calc(var(--reforma-toggle-press-nudge) * -2) 0;width:calc(100% + var(--reforma-toggle-press-nudge) * 2)}.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=filled]:has(.ToggleButtonGroup_item_92PAm9[data-selected=true]+.ToggleButtonGroup_item_92PAm9:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_group_aBSDUm[data-orientation=horizontal][data-variant=transparent]:has(.ToggleButtonGroup_item_92PAm9[data-selected=true]+.ToggleButtonGroup_item_92PAm9:not([data-selected=true])+.ToggleButtonGroup_item_92PAm9[data-pressed]:not([data-selected=true])) .ToggleButtonGroup_item_92PAm9[data-selected=true] .ToggleButtonGroup_selectionIndicator_HFwFs0{width:calc(100% + var(--reforma-toggle-press-nudge) * 2)}.ToggleButtonGroup_item_92PAm9[data-variant=filled] .ToggleButtonGroup_selectionIndicator_HFwFs0{box-shadow:0 var(--spacing-4) var(--spacing-6) 0 var(--color-dark-a8);background-color:var(--color-surface)}.ToggleButtonGroup_item_92PAm9[data-variant=transparent] .ToggleButtonGroup_selectionIndicator_HFwFs0{background-color:var(--color-secondary)}.ToggleButtonGroup_group_aBSDUm[data-placeholder-selected] .ToggleButtonGroup_item_92PAm9[data-variant=filled] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_group_aBSDUm[data-placeholder-selected] .ToggleButtonGroup_item_92PAm9[data-variant=transparent] .ToggleButtonGroup_selectionIndicator_HFwFs0{box-shadow:none}.ToggleButtonGroup_item_92PAm9[data-variant=multiselect]{--reforma-toggle-bg: var(--color-secondary);--reforma-toggle-color: var(--color-secondary-muted-text);--reforma-toggle-bg--selected: var(--color-secondary-light);--reforma-toggle-color--selected: var(--color-text);--reforma-toggle-item-radius: 0;padding:var(--spacing-md)}.ToggleButtonGroup_item_92PAm9[data-variant=text]{--reforma-toggle-opacity: var(--opacity-inactive);--reforma-toggle-opacity--hover: var(--opacity-hover);--reforma-toggle-opacity--selected: 1;position:relative;flex:0 0 auto}.ToggleButtonGroup_item_92PAm9[data-variant=text]:after{position:absolute;bottom:-1px;transform:scaleX(0);transition:transform var(--transition-duration-fast) var(--ease);inset-inline:0;background:var(--color-primary);height:2px;content:""}.ToggleButtonGroup_item_92PAm9[data-variant=text][data-selected=true]:after{transform:scaleX(1)}@media(prefers-reduced-motion:reduce){.ToggleButtonGroup_item_92PAm9[data-variant=filled] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_item_92PAm9[data-variant=transparent] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_item_92PAm9[data-variant=text]:after{transition:none}.ToggleButtonGroup_item_92PAm9[data-variant=filled][data-selected=true][data-pressed] .ToggleButtonGroup_selectionIndicator_HFwFs0,.ToggleButtonGroup_item_92PAm9[data-variant=transparent][data-selected=true][data-pressed] .ToggleButtonGroup_selectionIndicator_HFwFs0{scale:none}}.ToggleButtonGroup_itemContent_38HpIc{display:inline-flex;justify-content:center;align-items:center;gap:var(--spacing-sm);width:100%;min-width:0}.ToggleButtonGroup_selectItem_6o13WW{display:contents}.ToggleButtonGroup_item_92PAm9[data-select-item]{min-width:0}.ToggleButtonGroup_selectItemLabel_8QT16c{padding-right:var(--spacing-4);min-width:0;overflow:hidden;text-overflow:clip;white-space:nowrap;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - var(--spacing-2)),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - var(--spacing-2)),transparent)}.ToggleButtonGroup_itemChevron_9sOsUI{flex-shrink:0;opacity:var(--opacity-inactive);transition:transform var(--transition-duration-fast) var(--ease-in-out);fill:currentColor}.ToggleButtonGroup_selectItem_6o13WW[data-open] .ToggleButtonGroup_itemChevron_9sOsUI{transform:rotate(180deg)}.ToggleButtonGroup_selectPopover_Ecq4nt{min-width:var(--trigger-width)}.ToggleButtonGroup_selectListBox_Lv53fJ{min-width:100%}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComposerBanner.d.ts","sourceRoot":"","sources":["../../../src/chat/ComposerBanner/ComposerBanner.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,GAAG;IAC9E,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,yDAAyD;IACzD,KAAK,CAAC,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,qDAAqD;AACrD,wBAAgB,cAAc,CAAC,EAC3B,QAAQ,EACR,SAAS,EACT,KAAK,EACL,IAAI,EACJ,GAAG,KAAK,EACX,EAAE,mBAAmB,+BAYrB;AAED,MAAM,MAAM,yBAAyB,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IACrE,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,uEAAuE;AACvE,wBAAgB,oBAAoB,CAAC,EACjC,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACX,EAAE,yBAAyB,+
|
|
1
|
+
{"version":3,"file":"ComposerBanner.d.ts","sourceRoot":"","sources":["../../../src/chat/ComposerBanner/ComposerBanner.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,GAAG;IAC9E,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,yDAAyD;IACzD,KAAK,CAAC,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,qDAAqD;AACrD,wBAAgB,cAAc,CAAC,EAC3B,QAAQ,EACR,SAAS,EACT,KAAK,EACL,IAAI,EACJ,GAAG,KAAK,EACX,EAAE,mBAAmB,+BAYrB;AAED,MAAM,MAAM,yBAAyB,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IACrE,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,uEAAuE;AACvE,wBAAgB,oBAAoB,CAAC,EACjC,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACX,EAAE,yBAAyB,+BAkB3B"}
|
|
@@ -1,44 +1,45 @@
|
|
|
1
|
-
import { cn as
|
|
2
|
-
import { Button as
|
|
3
|
-
import { Text as
|
|
1
|
+
import { cn as i } from "@reforma/lib";
|
|
2
|
+
import { Button as m } from "../../Button/Button.js";
|
|
3
|
+
import { Text as l } from "../../Text/Text.js";
|
|
4
4
|
import a from "./ComposerBanner.module.css.js";
|
|
5
|
-
import { jsx as n, jsxs as
|
|
5
|
+
import { jsx as n, jsxs as c } from "react/jsx-runtime";
|
|
6
6
|
function v({
|
|
7
7
|
children: o,
|
|
8
|
-
className:
|
|
8
|
+
className: s,
|
|
9
9
|
color: r,
|
|
10
|
-
role:
|
|
10
|
+
role: t,
|
|
11
11
|
...e
|
|
12
12
|
}) {
|
|
13
13
|
return /* @__PURE__ */ n("div", {
|
|
14
14
|
"data-slot": "composer-banner",
|
|
15
15
|
"data-color": r,
|
|
16
|
-
role:
|
|
17
|
-
className:
|
|
16
|
+
role: t ?? (r === "danger" ? "alert" : void 0),
|
|
17
|
+
className: i(a.root, s),
|
|
18
18
|
...e,
|
|
19
19
|
children: o
|
|
20
20
|
});
|
|
21
21
|
}
|
|
22
22
|
function h({
|
|
23
23
|
children: o,
|
|
24
|
-
action:
|
|
24
|
+
action: s,
|
|
25
25
|
onAction: r,
|
|
26
|
-
className:
|
|
26
|
+
className: t,
|
|
27
27
|
...e
|
|
28
28
|
}) {
|
|
29
|
-
return /* @__PURE__ */
|
|
30
|
-
className:
|
|
29
|
+
return /* @__PURE__ */ c("div", {
|
|
30
|
+
className: i(a.status, t),
|
|
31
31
|
...e,
|
|
32
|
-
children: [/* @__PURE__ */ n(
|
|
32
|
+
children: [/* @__PURE__ */ n(l, {
|
|
33
33
|
variant: "xs",
|
|
34
34
|
className: a.text,
|
|
35
35
|
children: o
|
|
36
|
-
}), /* @__PURE__ */ n(
|
|
36
|
+
}), /* @__PURE__ */ n(m, {
|
|
37
37
|
size: "xs",
|
|
38
38
|
variant: "ghost",
|
|
39
39
|
color: "secondary",
|
|
40
|
+
isDisabled: !r,
|
|
40
41
|
onPress: r,
|
|
41
|
-
children:
|
|
42
|
+
children: s
|
|
42
43
|
})]
|
|
43
44
|
});
|
|
44
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComposerBanner.js","sources":["../../../src/chat/ComposerBanner/ComposerBanner.tsx"],"sourcesContent":["import { cn } from '@reforma/lib';\n\nimport { Button } from '../../Button';\nimport { Text } from '../../Text';\nimport styles from './ComposerBanner.module.css';\n\nimport type { HTMLAttributes, ReactNode } from 'react';\n\nexport type ComposerBannerProps = Omit<HTMLAttributes<HTMLDivElement>, 'color'> & {\n children?: ReactNode;\n /** Plate tint. Default is the muted interrupt chrome. */\n color?: 'danger';\n};\n\n/** Shared plate above the composer — chrome only. */\nexport function ComposerBanner({\n children,\n className,\n color,\n role,\n ...props\n}: ComposerBannerProps) {\n return (\n <div\n data-slot=\"composer-banner\"\n data-color={ color }\n role={ role ?? (color === 'danger' ? 'alert' : undefined) }\n className={ cn(styles.root, className) }\n { ...props }\n >\n { children }\n </div>\n );\n}\n\nexport type ComposerBannerStatusProps = HTMLAttributes<HTMLDivElement> & {\n children: ReactNode;\n action: string;\n onAction?: () => void;\n};\n\n/** One status row inside {@link ComposerBanner} — message + action. */\nexport function ComposerBannerStatus({\n children,\n action,\n onAction,\n className,\n ...props\n}: ComposerBannerStatusProps) {\n return (\n <div className={ cn(styles.status, className) } { ...props }>\n <Text variant=\"xs\" className={ styles.text }>\n { children }\n </Text>\n\n <Button\n size=\"xs\"\n variant=\"ghost\"\n color=\"secondary\"\n onPress={ onAction }\n >\n { action }\n </Button>\n </div>\n );\n}\n"],"names":["ComposerBanner","children","className","color","role","props","cn","styles","ComposerBannerStatus","action","onAction","_jsx","Text","Button"],"mappings":";;;;;AAMO,SAASA,EAAe;AAAA,EAC7B,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,GAAGC;AACL,GAAG;AACD,2BAAyB,OAAO;AAAA,IAC9B,aAAa;AAAA,IACb,cAAcF;AAAA,IACd,MAAMC,MAASD,MAAU,WAAW,UAAU;AAAA,IAC9C,WAAWG,EAAGC,EAAO,MAAML,CAAS;AAAA,IACpC,GAAGG;AAAA,IACH,UAAAJ;AAAA,EAAA,CACD;AACH;AAEO,SAASO,EAAqB;AAAA,EACnC,UAAAP;AAAA,EACA,QAAAQ;AAAA,EACA,UAAAC;AAAA,EACA,WAAAR;AAAA,EACA,GAAGG;AACL,GAAG;AACD,2BAA0B,OAAO;AAAA,IAC/B,WAAWC,EAAGC,EAAO,QAAQL,CAAS;AAAA,IACtC,GAAGG;AAAA,IACH,UAAU,CAAcM,gBAAAA,EAAKC,GAAM;AAAA,MACjC,SAAS;AAAA,MACT,WAAWL,EAAO;AAAA,MAClB,UAAAN;AAAA,IAAA,CACD,GAAgBU,gBAAAA,EAAKE,GAAQ;AAAA,MAC5B,MAAM;AAAA,MACN,SAAS;AAAA,MACT,OAAO;AAAA,MACP,
|
|
1
|
+
{"version":3,"file":"ComposerBanner.js","sources":["../../../src/chat/ComposerBanner/ComposerBanner.tsx"],"sourcesContent":["import { cn } from '@reforma/lib';\n\nimport { Button } from '../../Button';\nimport { Text } from '../../Text';\nimport styles from './ComposerBanner.module.css';\n\nimport type { HTMLAttributes, ReactNode } from 'react';\n\nexport type ComposerBannerProps = Omit<HTMLAttributes<HTMLDivElement>, 'color'> & {\n children?: ReactNode;\n /** Plate tint. Default is the muted interrupt chrome. */\n color?: 'danger';\n};\n\n/** Shared plate above the composer — chrome only. */\nexport function ComposerBanner({\n children,\n className,\n color,\n role,\n ...props\n}: ComposerBannerProps) {\n return (\n <div\n data-slot=\"composer-banner\"\n data-color={ color }\n role={ role ?? (color === 'danger' ? 'alert' : undefined) }\n className={ cn(styles.root, className) }\n { ...props }\n >\n { children }\n </div>\n );\n}\n\nexport type ComposerBannerStatusProps = HTMLAttributes<HTMLDivElement> & {\n children: ReactNode;\n action: string;\n onAction?: () => void;\n};\n\n/** One status row inside {@link ComposerBanner} — message + action. */\nexport function ComposerBannerStatus({\n children,\n action,\n onAction,\n className,\n ...props\n}: ComposerBannerStatusProps) {\n return (\n <div className={ cn(styles.status, className) } { ...props }>\n <Text variant=\"xs\" className={ styles.text }>\n { children }\n </Text>\n\n <Button\n size=\"xs\"\n variant=\"ghost\"\n color=\"secondary\"\n isDisabled={ !onAction }\n onPress={ onAction }\n >\n { action }\n </Button>\n </div>\n );\n}\n"],"names":["ComposerBanner","children","className","color","role","props","cn","styles","ComposerBannerStatus","action","onAction","_jsx","Text","Button"],"mappings":";;;;;AAMO,SAASA,EAAe;AAAA,EAC7B,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,GAAGC;AACL,GAAG;AACD,2BAAyB,OAAO;AAAA,IAC9B,aAAa;AAAA,IACb,cAAcF;AAAA,IACd,MAAMC,MAASD,MAAU,WAAW,UAAU;AAAA,IAC9C,WAAWG,EAAGC,EAAO,MAAML,CAAS;AAAA,IACpC,GAAGG;AAAA,IACH,UAAAJ;AAAA,EAAA,CACD;AACH;AAEO,SAASO,EAAqB;AAAA,EACnC,UAAAP;AAAA,EACA,QAAAQ;AAAA,EACA,UAAAC;AAAA,EACA,WAAAR;AAAA,EACA,GAAGG;AACL,GAAG;AACD,2BAA0B,OAAO;AAAA,IAC/B,WAAWC,EAAGC,EAAO,QAAQL,CAAS;AAAA,IACtC,GAAGG;AAAA,IACH,UAAU,CAAcM,gBAAAA,EAAKC,GAAM;AAAA,MACjC,SAAS;AAAA,MACT,WAAWL,EAAO;AAAA,MAClB,UAAAN;AAAA,IAAA,CACD,GAAgBU,gBAAAA,EAAKE,GAAQ;AAAA,MAC5B,MAAM;AAAA,MACN,SAAS;AAAA,MACT,OAAO;AAAA,MACP,YAAY,CAACH;AAAA,MACb,SAASA;AAAA,MACT,UAAUD;AAAA,IAAA,CACX,CAAC;AAAA,EAAA,CACH;AACH;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@keyframes Message_message-user-enter_tpC2Ro{0%{transform:translateY(12px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@layer components{.Message_message_ZGJhqY{display:flex;flex-direction:column;
|
|
1
|
+
@keyframes Message_message-user-enter_tpC2Ro{0%{transform:translateY(12px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@layer components{.Message_message_ZGJhqY{display:flex;flex-direction:column;content-visibility:auto;contain:content layout paint;contain-intrinsic-size:auto none;padding-block:20px;width:100%}.Message_message_ZGJhqY[data-role=user]{justify-content:flex-end;padding-left:var(--spacing-10)}.Message_message_ZGJhqY[data-role=user] [data-slot=attachments]{justify-content:flex-end;margin-bottom:var(--spacing-md)}.Message_message_ZGJhqY[data-role=user][data-animate-entry]{animation:Message_message-user-enter_tpC2Ro .5s linear(0,.446 10%,.866 20%,1.002 30%,1.017 40%,1.008 50%,1) both}@media(prefers-reduced-motion:reduce){.Message_message_ZGJhqY[data-role=user][data-animate-entry]{animation:none}}.Message_message_ZGJhqY[data-role=user]+.Message_message_ZGJhqY[data-role=user],.Message_message_ZGJhqY[data-role=assistant]+.Message_message_ZGJhqY[data-role=assistant]{padding-top:0}.Message_message_ZGJhqY[data-role=assistant]{padding-inline:var(--spacing-sm);width:100%}.Message_messageText_eZIs9c{display:block;width:100%;min-width:0;font-weight:400;font-size:var(--text-md);font-size:calc(var(--text-md) * var(--streamdown-font-factor, 1));line-height:var(--leading-md);line-height:calc(var(--leading-lg) * var(--streamdown-font-factor, 1));font-family:Onest,sans-serif;letter-spacing:0;overflow-wrap:anywhere}.Message_messageText_eZIs9c.Message_userMessageFragment_exz01E{display:inline;width:auto}.Message_messageBubble_nXUDl1{align-self:flex-end;border-radius:calc(var(--radius-xl) * var(--squircle-radius-factor));border-bottom-right-radius:0;max-width:90%;overflow:hidden;corner-shape:superellipse(var(--squircle-value));background-color:var(--color-chat-message);padding:var(--spacing-md);color:var(--color-chat-message-content)}.Message_userBubble_a0Jcec{display:flex;position:relative;flex-direction:column;align-items:flex-start;gap:var(--spacing-sm);min-width:0}.Message_userMessageBody_pNc11Y{overflow-wrap:anywhere}.Message_userMessageWithCites_SLaFWP [data-streamdown=p]{display:inline}.Message_userCite_VkVwBX{display:inline-flex;vertical-align:middle;margin-inline:.05em;max-width:100%}.Message_userMessageScroll_mmelNB{width:100%;min-width:0;max-width:100%}.Message_userMessageScrollPort_eMVwNQ{min-width:0;max-width:100%}.Message_messageBubble_nXUDl1 .Message_userMessageScroll_mmelNB[aria-expanded=false]{max-height:calc(16lh + var(--spacing-md) * 2 + var(--spacing-xxs))}.Message_messageBubble_nXUDl1 .Message_userMessageScroll_mmelNB[aria-expanded=true]{max-height:none;overflow:visible}.Message_messageBubble_nXUDl1 .Message_userMessageScroll_mmelNB[aria-expanded=true] .Message_userMessageScrollPort_eMVwNQ{flex:none;height:auto;min-height:auto;max-height:none;overflow:visible}.Message_messageBubble_nXUDl1 .Message_userMessageExpandToggle_6FM7T4{position:absolute;bottom:0;left:50%;transform:translate(-50%)!important;z-index:1}[data-hovered=true]:is(.Message_messageBubble_nXUDl1 .Message_userMessageExpandToggle_6FM7T4){opacity:.75}.Message_parts_J4bcdT{display:flex;flex-direction:column;gap:var(--spacing-lg);min-width:0;max-width:100%}.Message_worked_eYBr7U{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-md);width:100%;min-width:0}.Message_workedTrigger_ddlr5n{font-weight:400;font-size:var(--text-sm);line-height:var(--leading-sm);font-family:Onest,sans-serif;letter-spacing:0}.Message_workedPanel_uxV37n{width:100%;min-width:0}}
|
|
@@ -1,30 +1,36 @@
|
|
|
1
|
-
const e = "Message_message_ZGJhqY", s = "Message_messageText_eZIs9c", a = "Message_userMessageFragment_exz01E", g = "Message_messageBubble_nXUDl1", r = "Message_userBubble_a0Jcec",
|
|
1
|
+
const e = "Message_message_ZGJhqY", s = "Message_messageText_eZIs9c", a = "Message_userMessageFragment_exz01E", g = "Message_messageBubble_nXUDl1", r = "Message_userBubble_a0Jcec", o = "Message_userMessageBody_pNc11Y", t = "Message_userMessageWithCites_SLaFWP", M = "Message_userCite_VkVwBX", u = "Message_userMessageScroll_mmelNB", _ = "Message_userMessageScrollPort_eMVwNQ", l = "Message_userMessageExpandToggle_6FM7T4", n = "Message_parts_J4bcdT", c = "Message_worked_eYBr7U", d = "Message_workedTrigger_ddlr5n", m = "Message_workedPanel_uxV37n", b = {
|
|
2
2
|
message: e,
|
|
3
3
|
messageText: s,
|
|
4
4
|
userMessageFragment: a,
|
|
5
5
|
messageBubble: g,
|
|
6
6
|
userBubble: r,
|
|
7
|
-
userMessageBody:
|
|
8
|
-
userMessageWithCites:
|
|
9
|
-
userCite:
|
|
10
|
-
userMessageScroll:
|
|
11
|
-
userMessageScrollPort:
|
|
12
|
-
userMessageExpandToggle:
|
|
13
|
-
parts:
|
|
7
|
+
userMessageBody: o,
|
|
8
|
+
userMessageWithCites: t,
|
|
9
|
+
userCite: M,
|
|
10
|
+
userMessageScroll: u,
|
|
11
|
+
userMessageScrollPort: _,
|
|
12
|
+
userMessageExpandToggle: l,
|
|
13
|
+
parts: n,
|
|
14
|
+
worked: c,
|
|
15
|
+
workedTrigger: d,
|
|
16
|
+
workedPanel: m
|
|
14
17
|
};
|
|
15
18
|
export {
|
|
16
|
-
|
|
19
|
+
b as default,
|
|
17
20
|
e as message,
|
|
18
21
|
g as messageBubble,
|
|
19
22
|
s as messageText,
|
|
20
|
-
|
|
23
|
+
n as parts,
|
|
21
24
|
r as userBubble,
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
+
M as userCite,
|
|
26
|
+
o as userMessageBody,
|
|
27
|
+
l as userMessageExpandToggle,
|
|
25
28
|
a as userMessageFragment,
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
+
u as userMessageScroll,
|
|
30
|
+
_ as userMessageScrollPort,
|
|
31
|
+
t as userMessageWithCites,
|
|
32
|
+
c as worked,
|
|
33
|
+
m as workedPanel,
|
|
34
|
+
d as workedTrigger
|
|
29
35
|
};
|
|
30
36
|
//# sourceMappingURL=Message.module.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Message.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Message.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Assistant turn segments and streaming pending loader.
|
|
3
|
-
*
|
|
3
|
+
* A finished text answer folds the work into one "Worked for …" disclosure.
|
|
4
|
+
* Cancelled turns and turns that do not end on text keep the phase rows open.
|
|
4
5
|
*/
|
|
5
6
|
export declare const MessageAssistantBody: (({ hideSources, }?: {
|
|
6
7
|
/** Editor footer owns citations — drop in-body Sources groups. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageAssistantBody.d.ts","sourceRoot":"","sources":["../../../../src/chat/Message/turn/MessageAssistantBody.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MessageAssistantBody.d.ts","sourceRoot":"","sources":["../../../../src/chat/Message/turn/MessageAssistantBody.tsx"],"names":[],"mappings":"AAwIA;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,uBAE9B;IACC,kEAAkE;IAClE,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;IAFG,kEAAkE;kBACpD,OAAO;;uCAFtB;QACC,kEAAkE;QAClE,WAAW,CAAC,EAAE,OAAO,CAAC;KACzB;CA8EC,CAAC"}
|
|
@@ -1,70 +1,162 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { ChevronDown as A } from "@reforma/icons/8";
|
|
2
|
+
import { cn as C } from "@reforma/lib";
|
|
3
|
+
import { observer as P } from "mobx-react-lite";
|
|
4
|
+
import { Button as T } from "../../../Button/Button.js";
|
|
5
|
+
import { Collapsible as F, CollapsibleContent as y, useCollapsible as L, CollapsibleTrigger as M } from "../../../Collapsible/Collapsible.js";
|
|
6
|
+
import { For as N } from "../../../For/For.js";
|
|
3
7
|
import { Show as x } from "../../../Show/Show.js";
|
|
4
|
-
import { ConversationPendingLoader as
|
|
5
|
-
import { streamingPhaseActiveIndex as
|
|
6
|
-
import { MessagePhaseSection as
|
|
7
|
-
import
|
|
8
|
-
import {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
8
|
+
import { ConversationPendingLoader as S } from "../../Conversation/ConversationPendingLoader.js";
|
|
9
|
+
import { streamingPhaseActiveIndex as W, partsFromSegmentGroups as j } from "../normalize/normalizeMessageParts.js";
|
|
10
|
+
import { MessagePhaseSection as B } from "../segments/MessagePhaseSection.js";
|
|
11
|
+
import v from "./Message.module.css.js";
|
|
12
|
+
import { useMessageTurn as $ } from "./messageTurnContext.js";
|
|
13
|
+
import { splitFinishedWork as D, workedForLabel as E } from "./workedCollapse.js";
|
|
14
|
+
import { jsx as r, jsxs as d, Fragment as b } from "react/jsx-runtime";
|
|
15
|
+
function G(t) {
|
|
16
|
+
const e = [];
|
|
17
|
+
for (const s of t) {
|
|
18
|
+
const n = s.groups.filter((l) => l.kind !== "sources");
|
|
19
|
+
n.length > 0 && e.push({
|
|
20
|
+
...s,
|
|
21
|
+
groups: n
|
|
16
22
|
});
|
|
17
23
|
}
|
|
18
|
-
return
|
|
24
|
+
return e;
|
|
19
25
|
}
|
|
20
|
-
|
|
21
|
-
|
|
26
|
+
function k({
|
|
27
|
+
segments: t,
|
|
28
|
+
messageId: e,
|
|
29
|
+
isStreaming: s,
|
|
30
|
+
isLiveMessage: n,
|
|
31
|
+
turnActive: l,
|
|
32
|
+
phaseActiveIndex: u,
|
|
33
|
+
getPhaseStats: o,
|
|
34
|
+
lastPart: p,
|
|
35
|
+
loaderParts: g,
|
|
36
|
+
markTail: a
|
|
37
|
+
}) {
|
|
38
|
+
return /* @__PURE__ */ r(N, {
|
|
39
|
+
each: t,
|
|
40
|
+
children: (i, m, {
|
|
41
|
+
isLast: f
|
|
42
|
+
}) => {
|
|
43
|
+
const c = a && f;
|
|
44
|
+
return /* @__PURE__ */ r(B, {
|
|
45
|
+
segment: i,
|
|
46
|
+
messageId: e,
|
|
47
|
+
isStreaming: s,
|
|
48
|
+
isLiveMessage: n,
|
|
49
|
+
isLastSegment: c,
|
|
50
|
+
streamActive: l && (c || m === u),
|
|
51
|
+
fileStats: i.layout === "grouped" ? o?.(j(i.groups)) : void 0,
|
|
52
|
+
children: c && s ? /* @__PURE__ */ r(S, {
|
|
53
|
+
lastPart: p,
|
|
54
|
+
messageId: e,
|
|
55
|
+
parts: g
|
|
56
|
+
}) : null
|
|
57
|
+
}, `${e}-${i.index}`);
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
function I({
|
|
62
|
+
label: t
|
|
63
|
+
}) {
|
|
64
|
+
const {
|
|
65
|
+
state: e
|
|
66
|
+
} = L();
|
|
67
|
+
return /* @__PURE__ */ r(M, {
|
|
68
|
+
asChild: !0,
|
|
69
|
+
children: /* @__PURE__ */ d(T, {
|
|
70
|
+
type: "button",
|
|
71
|
+
variant: "inline",
|
|
72
|
+
color: "secondary",
|
|
73
|
+
className: v.workedTrigger,
|
|
74
|
+
children: [t, /* @__PURE__ */ r(A, {
|
|
75
|
+
className: C("chevron", "next"),
|
|
76
|
+
"aria-expanded": e.isExpanded,
|
|
77
|
+
"aria-hidden": !0
|
|
78
|
+
})]
|
|
79
|
+
})
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
function O({
|
|
83
|
+
label: t,
|
|
84
|
+
children: e
|
|
85
|
+
}) {
|
|
86
|
+
return /* @__PURE__ */ d(F, {
|
|
87
|
+
className: v.worked,
|
|
88
|
+
defaultOpen: !1,
|
|
89
|
+
children: [/* @__PURE__ */ r(I, {
|
|
90
|
+
label: t
|
|
91
|
+
}), /* @__PURE__ */ r(y, {
|
|
92
|
+
className: v.workedPanel,
|
|
93
|
+
children: e
|
|
94
|
+
})]
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
const re = P(({
|
|
98
|
+
hideSources: t = !1
|
|
22
99
|
} = {}) => {
|
|
23
|
-
const
|
|
24
|
-
if (
|
|
100
|
+
const e = $();
|
|
101
|
+
if (e?.role !== "assistant" || e.message.role !== "assistant")
|
|
25
102
|
return null;
|
|
26
103
|
const {
|
|
27
|
-
messageId:
|
|
28
|
-
segments:
|
|
29
|
-
lastPart:
|
|
30
|
-
turnActive:
|
|
31
|
-
isStreaming:
|
|
104
|
+
messageId: s,
|
|
105
|
+
segments: n,
|
|
106
|
+
lastPart: l,
|
|
107
|
+
turnActive: u,
|
|
108
|
+
isStreaming: o,
|
|
32
109
|
isLastMessage: p,
|
|
33
|
-
getPhaseStats:
|
|
34
|
-
} =
|
|
35
|
-
if (
|
|
110
|
+
getPhaseStats: g
|
|
111
|
+
} = e, a = t ? G(n) : n, i = e.message.parts, m = e.message.metadata;
|
|
112
|
+
if (a.length === 0 && !o)
|
|
36
113
|
return null;
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
114
|
+
const f = W(a, o), c = D(a, {
|
|
115
|
+
streaming: o,
|
|
116
|
+
cancelled: m?.stopReason === "cancelled"
|
|
117
|
+
}), h = {
|
|
118
|
+
messageId: s,
|
|
119
|
+
isStreaming: o,
|
|
120
|
+
isLiveMessage: p,
|
|
121
|
+
turnActive: u,
|
|
122
|
+
phaseActiveIndex: f,
|
|
123
|
+
getPhaseStats: g,
|
|
124
|
+
lastPart: l,
|
|
125
|
+
loaderParts: i
|
|
126
|
+
};
|
|
127
|
+
return /* @__PURE__ */ r(x, {
|
|
128
|
+
when: c,
|
|
129
|
+
fallback: /* @__PURE__ */ d(b, {
|
|
130
|
+
children: [/* @__PURE__ */ r(k, {
|
|
131
|
+
...h,
|
|
132
|
+
segments: a,
|
|
133
|
+
markTail: !0
|
|
134
|
+
}), /* @__PURE__ */ r(x, {
|
|
135
|
+
when: o && a.length === 0,
|
|
136
|
+
children: /* @__PURE__ */ r(S, {
|
|
137
|
+
lastPart: l,
|
|
138
|
+
messageId: s,
|
|
139
|
+
parts: i
|
|
140
|
+
})
|
|
141
|
+
})]
|
|
142
|
+
}),
|
|
143
|
+
children: (w) => /* @__PURE__ */ d(b, {
|
|
144
|
+
children: [/* @__PURE__ */ r(O, {
|
|
145
|
+
label: E(m?.startedAt, m?.endedAt),
|
|
146
|
+
children: /* @__PURE__ */ r(k, {
|
|
147
|
+
...h,
|
|
148
|
+
segments: w.work,
|
|
149
|
+
markTail: !1
|
|
150
|
+
})
|
|
151
|
+
}), /* @__PURE__ */ r(k, {
|
|
152
|
+
...h,
|
|
153
|
+
segments: [w.answer],
|
|
154
|
+
markTail: !0
|
|
155
|
+
})]
|
|
156
|
+
})
|
|
65
157
|
});
|
|
66
158
|
});
|
|
67
159
|
export {
|
|
68
|
-
|
|
160
|
+
re as MessageAssistantBody
|
|
69
161
|
};
|
|
70
162
|
//# sourceMappingURL=MessageAssistantBody.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageAssistantBody.js","sources":["../../../../src/chat/Message/turn/MessageAssistantBody.tsx"],"sourcesContent":["'use client';\n\nimport { observer } from 'mobx-react-lite';\n\nimport { For } from '../../../For';\nimport { Show } from '../../../Show';\nimport { ConversationPendingLoader } from '../../Conversation/ConversationPendingLoader';\nimport { partsFromSegmentGroups, streamingPhaseActiveIndex } from '../normalize/normalizeMessageParts';\nimport { MessagePhaseSection } from '../segments';\nimport { useMessageTurn } from './messageTurnContext';\n\nimport type { MessageSegment } from '../normalize/normalizeMessageParts';\n\nfunction segmentsWithoutSources(segments: readonly MessageSegment[]): MessageSegment[] {\n const next: MessageSegment[] = [];\n\n for (const segment of segments) {\n const groups = segment.groups.filter(group => group.kind !== 'sources');\n\n if (groups.length > 0) {\n next.push({ ...segment, groups });\n }\n }\n\n return next;\n}\n\n/**\n * Assistant turn segments and streaming pending loader.\n * While streaming, keep the loader even when all parts are invisible (todos, step-start, …).\n */\nexport const MessageAssistantBody = observer(({\n hideSources = false,\n}: {\n /** Editor footer owns citations — drop in-body Sources groups. */\n hideSources?: boolean;\n} = {}) => {\n const turn = useMessageTurn();\n\n if (turn?.role !== 'assistant') {\n return null;\n }\n\n const {\n messageId,\n segments: rawSegments,\n lastPart,\n turnActive,\n isStreaming,\n isLastMessage,\n getPhaseStats,\n } = turn;\n const segments = hideSources ? segmentsWithoutSources(rawSegments) : rawSegments;\n const loaderParts = turn.message.parts;\n\n if (segments.length === 0 && !isStreaming) {\n return null;\n }\n\n const phaseActiveIndex = streamingPhaseActiveIndex(segments, isStreaming);\n\n return (\n <>\n <For each={ segments }>\n { (segment, segIndex, { isLast }) => (\n <MessagePhaseSection\n key={ `${ messageId }-${ segment.index }` }\n segment={ segment }\n messageId={ messageId }\n isStreaming={ isStreaming }\n isLiveMessage={ isLastMessage }\n isLastSegment={ isLast }\n streamActive={ turnActive && (isLast || segIndex === phaseActiveIndex) }\n fileStats={\n segment.layout === 'grouped'\n ? getPhaseStats?.(partsFromSegmentGroups(segment.groups))\n : undefined\n }\n >\n { isLast && isStreaming\n ? (\n <ConversationPendingLoader\n lastPart={ lastPart }\n messageId={ messageId }\n parts={ loaderParts }\n />\n )\n : null }\n </MessagePhaseSection>\n ) }\n </For>\n\n <Show when={ isStreaming && segments.length === 0 }>\n <ConversationPendingLoader\n lastPart={ lastPart }\n messageId={ messageId }\n parts={ loaderParts }\n />\n </Show>\n </>\n );\n});\n"],"names":["segmentsWithoutSources","segments","next","segment","groups","group","MessageAssistantBody","observer","hideSources","turn","useMessageTurn","messageId","rawSegments","lastPart","turnActive","isStreaming","isLastMessage","getPhaseStats","loaderParts","phaseActiveIndex","streamingPhaseActiveIndex","_Fragment","_jsx","For","segIndex","isLast","MessagePhaseSection","partsFromSegmentGroups","ConversationPendingLoader","Show"],"mappings":";;;;;;;;AAUA,SAASA,EAAuBC,GAAU;AACxC,QAAMC,IAAO,CAAA;AACb,aAAWC,KAAWF,GAAU;AAC9B,UAAMG,IAASD,EAAQ,OAAO,OAAO,CAAAE,MAASA,EAAM,SAAS,SAAS;AACtE,IAAID,EAAO,SAAS,KAClBF,EAAK,KAAK;AAAA,MACR,GAAGC;AAAA,MACH,QAAAC;AAAA,IAAA,CACD;AAAA,EAEL;AACA,SAAOF;AACT;AAMO,MAAMI,IAAuBC,EAAS,CAAC;AAAA,EAC5C,aAAAC,IAAc;AAChB,IAAI,OAAO;AACT,QAAMC,IAAOC,EAAA;AACb,MAAID,GAAM,SAAS;AACjB,WAAO;AAET,QAAM;AAAA,IACJ,WAAAE;AAAA,IACA,UAAUC;AAAA,IACV,UAAAC;AAAA,IACA,YAAAC;AAAA,IACA,aAAAC;AAAA,IACA,eAAAC;AAAA,IACA,eAAAC;AAAA,EAAA,IACER,GACER,IAAWO,IAAcR,EAAuBY,CAAW,IAAIA,GAC/DM,IAAcT,EAAK,QAAQ;AACjC,MAAIR,EAAS,WAAW,KAAK,CAACc;AAC5B,WAAO;AAET,QAAMI,IAAmBC,EAA0BnB,GAAUc,CAAW;AACxE,2BAA0BM,GAAW;AAAA,IACnC,UAAU,CAAcC,gBAAAA,EAAKC,GAAK;AAAA,MAChC,MAAMtB;AAAA,MACN,UAAU,CAACE,GAASqB,GAAU;AAAA,QAC5B,QAAAC;AAAA,MAAA,wBACsBC,GAAqB;AAAA,QAC3C,SAAAvB;AAAA,QACA,WAAAQ;AAAA,QACA,aAAAI;AAAA,QACA,eAAeC;AAAA,QACf,eAAeS;AAAA,QACf,cAAcX,MAAeW,KAAUD,MAAaL;AAAA,QACpD,WAAWhB,EAAQ,WAAW,YAAYc,IAAgBU,EAAuBxB,EAAQ,MAAM,CAAC,IAAI;AAAA,QACpG,UAAUsB,KAAUV,IAA2BO,gBAAAA,EAAKM,GAA2B;AAAA,UAC7E,UAAAf;AAAA,UACA,WAAAF;AAAA,UACA,OAAOO;AAAA,QAAA,CACR,IAAI;AAAA,MAAA,GACJ,GAAGP,CAAS,IAAIR,EAAQ,KAAK,EAAE;AAAA,IAAA,CACnC,GAAgBmB,gBAAAA,EAAKO,GAAM;AAAA,MAC1B,MAAMd,KAAed,EAAS,WAAW;AAAA,MACzC,4BAA4B2B,GAA2B;AAAA,QACrD,UAAAf;AAAA,QACA,WAAAF;AAAA,QACA,OAAOO;AAAA,MAAA,CACR;AAAA,IAAA,CACF,CAAC;AAAA,EAAA,CACH;AACH,CAAC;"}
|
|
1
|
+
{"version":3,"file":"MessageAssistantBody.js","sources":["../../../../src/chat/Message/turn/MessageAssistantBody.tsx"],"sourcesContent":["'use client';\n\nimport { ChevronDown } from '@reforma/icons/8';\nimport { cn } from '@reforma/lib';\nimport { observer } from 'mobx-react-lite';\n\nimport { Button } from '../../../Button';\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n useCollapsible,\n} from '../../../Collapsible';\nimport { For } from '../../../For';\nimport { Show } from '../../../Show';\nimport { ConversationPendingLoader } from '../../Conversation/ConversationPendingLoader';\nimport { partsFromSegmentGroups, streamingPhaseActiveIndex } from '../normalize/normalizeMessageParts';\nimport { MessagePhaseSection } from '../segments';\nimport styles from './Message.module.css';\nimport { useMessageTurn } from './messageTurnContext';\nimport { splitFinishedWork, workedForLabel } from './workedCollapse';\n\nimport type { ReactNode } from 'react';\nimport type { MessageSegment } from '../normalize/normalizeMessageParts';\nimport type { ReformaUIMessagePart } from '../types';\nimport type { GetPhaseStats } from './messageTurnContext';\n\nfunction segmentsWithoutSources(segments: readonly MessageSegment[]): MessageSegment[] {\n const next: MessageSegment[] = [];\n\n for (const segment of segments) {\n const groups = segment.groups.filter(group => group.kind !== 'sources');\n\n if (groups.length > 0) {\n next.push({ ...segment, groups });\n }\n }\n\n return next;\n}\n\ntype SegmentListProps = {\n segments: readonly MessageSegment[];\n messageId: string;\n isStreaming: boolean;\n isLiveMessage: boolean;\n turnActive: boolean;\n phaseActiveIndex: number;\n getPhaseStats: GetPhaseStats | undefined;\n lastPart: ReformaUIMessagePart | undefined;\n loaderParts: readonly ReformaUIMessagePart[];\n /** Work under the spoiler is not the message tail, so its phases stay closed. */\n markTail: boolean;\n};\n\nfunction AssistantSegments({\n segments,\n messageId,\n isStreaming,\n isLiveMessage,\n turnActive,\n phaseActiveIndex,\n getPhaseStats,\n lastPart,\n loaderParts,\n markTail,\n}: SegmentListProps) {\n return (\n <For each={ segments }>\n { (segment, segIndex, { isLast }) => {\n const isLastSegment = markTail && isLast;\n\n return (\n <MessagePhaseSection\n key={ `${ messageId }-${ segment.index }` }\n segment={ segment }\n messageId={ messageId }\n isStreaming={ isStreaming }\n isLiveMessage={ isLiveMessage }\n isLastSegment={ isLastSegment }\n streamActive={ turnActive && (isLastSegment || segIndex === phaseActiveIndex) }\n fileStats={\n segment.layout === 'grouped'\n ? getPhaseStats?.(partsFromSegmentGroups(segment.groups))\n : undefined\n }\n >\n { isLastSegment && isStreaming\n ? (\n <ConversationPendingLoader\n lastPart={ lastPart }\n messageId={ messageId }\n parts={ loaderParts }\n />\n )\n : null }\n </MessagePhaseSection>\n );\n } }\n </For>\n );\n}\n\nfunction WorkedTrigger({ label }: { label: string }) {\n const { state } = useCollapsible();\n\n return (\n <CollapsibleTrigger asChild>\n <Button\n type=\"button\"\n variant=\"inline\"\n color=\"secondary\"\n className={ styles.workedTrigger }\n >\n { label }\n <ChevronDown\n className={ cn('chevron', 'next') }\n aria-expanded={ state.isExpanded }\n aria-hidden\n />\n </Button>\n </CollapsibleTrigger>\n );\n}\n\nfunction WorkedFor({ label, children }: { label: string; children: ReactNode }) {\n return (\n <Collapsible className={ styles.worked } defaultOpen={ false }>\n <WorkedTrigger label={ label } />\n <CollapsibleContent className={ styles.workedPanel }>\n { children }\n </CollapsibleContent>\n </Collapsible>\n );\n}\n\n/**\n * Assistant turn segments and streaming pending loader.\n * A finished text answer folds the work into one \"Worked for …\" disclosure.\n * Cancelled turns and turns that do not end on text keep the phase rows open.\n */\nexport const MessageAssistantBody = observer(({\n hideSources = false,\n}: {\n /** Editor footer owns citations — drop in-body Sources groups. */\n hideSources?: boolean;\n} = {}) => {\n const turn = useMessageTurn();\n\n if (turn?.role !== 'assistant' || turn.message.role !== 'assistant') {\n return null;\n }\n\n const {\n messageId,\n segments: rawSegments,\n lastPart,\n turnActive,\n isStreaming,\n isLastMessage,\n getPhaseStats,\n } = turn;\n const segments = hideSources ? segmentsWithoutSources(rawSegments) : rawSegments;\n const loaderParts = turn.message.parts;\n const metadata = turn.message.metadata;\n\n if (segments.length === 0 && !isStreaming) {\n return null;\n }\n\n const phaseActiveIndex = streamingPhaseActiveIndex(segments, isStreaming);\n const finished = splitFinishedWork(segments, {\n streaming: isStreaming,\n cancelled: metadata?.stopReason === 'cancelled',\n });\n const listProps = {\n messageId,\n isStreaming,\n isLiveMessage: isLastMessage,\n turnActive,\n phaseActiveIndex,\n getPhaseStats,\n lastPart,\n loaderParts,\n };\n\n return (\n <Show\n when={ finished }\n fallback={ (\n <>\n <AssistantSegments\n { ...listProps }\n segments={ segments }\n markTail\n />\n <Show when={ isStreaming && segments.length === 0 }>\n <ConversationPendingLoader\n lastPart={ lastPart }\n messageId={ messageId }\n parts={ loaderParts }\n />\n </Show>\n </>\n ) }\n >\n { split => (\n <>\n <WorkedFor label={ workedForLabel(metadata?.startedAt, metadata?.endedAt) }>\n <AssistantSegments\n { ...listProps }\n segments={ split.work }\n markTail={ false }\n />\n </WorkedFor>\n <AssistantSegments\n { ...listProps }\n segments={ [split.answer] }\n markTail\n />\n </>\n ) }\n </Show>\n );\n});\n"],"names":["segmentsWithoutSources","segments","next","segment","groups","group","AssistantSegments","messageId","isStreaming","isLiveMessage","turnActive","phaseActiveIndex","getPhaseStats","lastPart","loaderParts","markTail","For","segIndex","isLast","isLastSegment","MessagePhaseSection","partsFromSegmentGroups","_jsx","ConversationPendingLoader","WorkedTrigger","label","state","useCollapsible","CollapsibleTrigger","Button","styles","ChevronDown","cn","WorkedFor","children","Collapsible","CollapsibleContent","MessageAssistantBody","observer","hideSources","turn","useMessageTurn","rawSegments","isLastMessage","metadata","streamingPhaseActiveIndex","finished","splitFinishedWork","listProps","Show","_Fragment","split","_jsxs","workedForLabel"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageUserBubble.d.ts","sourceRoot":"","sources":["../../../../src/chat/Message/turn/MessageUserBubble.tsx"],"names":[],"mappings":"AA4BA,eAAO,MAAM,+BAA+B,MAAM,CAAC;AAqPnD,wFAAwF;AACxF,eAAO,MAAM,iBAAiB;;
|
|
1
|
+
{"version":3,"file":"MessageUserBubble.d.ts","sourceRoot":"","sources":["../../../../src/chat/Message/turn/MessageUserBubble.tsx"],"names":[],"mappings":"AA4BA,eAAO,MAAM,+BAA+B,MAAM,CAAC;AAqPnD,wFAAwF;AACxF,eAAO,MAAM,iBAAiB;;CA4D5B,CAAC"}
|