@signalflare-ai/ui 0.5.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +117 -1
- package/ai/USAGE.md +64 -0
- package/ai/component-registry.json +492 -618
- package/ai/component-registry.md +167 -85
- package/ai/schemas.ts +545 -102
- package/bin/sf.js +2 -3
- package/dist/.build-complete +1 -1
- package/dist/ai/schemas.d.ts +1659 -5532
- package/dist/ai/schemas.d.ts.map +1 -1
- package/dist/{ai-actions-DG1dhDMP.js → ai-actions-DSVeQn4e.js} +1 -1
- package/dist/{ai-actions-DG1dhDMP.js.map → ai-actions-DSVeQn4e.js.map} +1 -1
- package/dist/{ai-agent-card-BbtL4NII.js → ai-agent-card-BXHwhWAU.js} +1 -1
- package/dist/{ai-agent-card-BbtL4NII.js.map → ai-agent-card-BXHwhWAU.js.map} +1 -1
- package/dist/{ai-approval-Mb7-BY6i.js → ai-approval-aa0qvjFN.js} +1 -1
- package/dist/{ai-approval-Mb7-BY6i.js.map → ai-approval-aa0qvjFN.js.map} +1 -1
- package/dist/{ai-code-block-BI_z0UVR.js → ai-code-block-BgtIxtZZ.js} +1 -1
- package/dist/{ai-code-block-BI_z0UVR.js.map → ai-code-block-BgtIxtZZ.js.map} +1 -1
- package/dist/{ai-conversation-DYtExcrw.js → ai-conversation-CArP7C8K.js} +1 -1
- package/dist/{ai-conversation-DYtExcrw.js.map → ai-conversation-CArP7C8K.js.map} +1 -1
- package/dist/{ai-info-banner-BpzauUAY.js → ai-info-banner-uFxHHwBA.js} +1 -1
- package/dist/{ai-info-banner-BpzauUAY.js.map → ai-info-banner-uFxHHwBA.js.map} +1 -1
- package/dist/{ai-message-CV8SBoHM.js → ai-message-BjnFznXy.js} +1 -1
- package/dist/{ai-message-CV8SBoHM.js.map → ai-message-BjnFznXy.js.map} +1 -1
- package/dist/{ai-mission-header-ByYkJ6YP.js → ai-mission-header-08__gULL.js} +1 -1
- package/dist/{ai-mission-header-ByYkJ6YP.js.map → ai-mission-header-08__gULL.js.map} +1 -1
- package/dist/ai-part-group-DBtgTgAn.js +277 -0
- package/dist/ai-part-group-DBtgTgAn.js.map +1 -0
- package/dist/ai-prompt-input-Dy1LfxPk.js +1541 -0
- package/dist/ai-prompt-input-Dy1LfxPk.js.map +1 -0
- package/dist/{ai-question-Dp1g9k2o.js → ai-question-CHHoDJMg.js} +1 -1
- package/dist/{ai-question-Dp1g9k2o.js.map → ai-question-CHHoDJMg.js.map} +1 -1
- package/dist/{ai-reasoning-UAmNx_LD.js → ai-reasoning-CnL6ZSr5.js} +84 -5
- package/dist/ai-reasoning-CnL6ZSr5.js.map +1 -0
- package/dist/{ai-response-BWoVsNQG.js → ai-response-BEUg3xvd.js} +13 -16
- package/dist/ai-response-BEUg3xvd.js.map +1 -0
- package/dist/{ai-shimmer-BpOmfonu.js → ai-shimmer-By5_L05p.js} +1 -1
- package/dist/{ai-shimmer-BpOmfonu.js.map → ai-shimmer-By5_L05p.js.map} +1 -1
- package/dist/{ai-status-badge-WhbKVeqn.js → ai-status-badge-BGYGWYF6.js} +1 -1
- package/dist/{ai-status-badge-WhbKVeqn.js.map → ai-status-badge-BGYGWYF6.js.map} +1 -1
- package/dist/{ai-streaming-text-ClL7FwvD.js → ai-streaming-text-CMfoThV0.js} +1 -1
- package/dist/{ai-streaming-text-ClL7FwvD.js.map → ai-streaming-text-CMfoThV0.js.map} +1 -1
- package/dist/{ai-subagent-BruGN1UE.js → ai-subagent-DcPRqkAA.js} +1 -1
- package/dist/{ai-subagent-BruGN1UE.js.map → ai-subagent-DcPRqkAA.js.map} +1 -1
- package/dist/{ai-suggestion-CNsCZj5P.js → ai-suggestion-MgeCg5Ar.js} +1 -1
- package/dist/{ai-suggestion-CNsCZj5P.js.map → ai-suggestion-MgeCg5Ar.js.map} +1 -1
- package/dist/{ai-task-list-B9CpMDYN.js → ai-task-list-Da9zIm00.js} +9 -12
- package/dist/ai-task-list-Da9zIm00.js.map +1 -0
- package/dist/{ai-timeline-Bb5ntsr3.js → ai-timeline-Cwu045IR.js} +1 -1
- package/dist/ai-timeline-Cwu045IR.js.map +1 -0
- package/dist/{ai-tool-BGH8nQ_D.js → ai-tool-Cn1O4xjP.js} +168 -11
- package/dist/ai-tool-Cn1O4xjP.js.map +1 -0
- package/dist/{ai-usage-bar-BI-p-JBk.js → ai-usage-bar-DjS12DMp.js} +1 -1
- package/dist/{ai-usage-bar-BI-p-JBk.js.map → ai-usage-bar-DjS12DMp.js.map} +1 -1
- package/dist/catalog.js +3 -3
- package/dist/catalog.js.map +1 -1
- package/dist/{chart-Bes4MN3C.js → chart-BK3sVPnD.js} +442 -248
- package/dist/chart-BK3sVPnD.js.map +1 -0
- package/dist/{checkbox-CPX7lBaU.js → checkbox-DYhUmZNw.js} +4 -4
- package/dist/checkbox-DYhUmZNw.js.map +1 -0
- package/dist/{clipboard-text-92YeCybc.js → clipboard-text-ssybngLw.js} +2 -2
- package/dist/{clipboard-text-92YeCybc.js.map → clipboard-text-ssybngLw.js.map} +1 -1
- package/dist/{code-DE1Yy1Cu.js → code-Cx-QSoOT.js} +2 -2
- package/dist/{code-DE1Yy1Cu.js.map → code-Cx-QSoOT.js.map} +1 -1
- package/dist/{combobox-B0bLdsX8.js → combobox-C0iW6a0r.js} +2 -2
- package/dist/{combobox-B0bLdsX8.js.map → combobox-C0iW6a0r.js.map} +1 -1
- package/dist/command-line/cli.js +22 -27
- package/dist/{command-palette-CBTY8EiF.js → command-palette-DGzioeki.js} +2 -2
- package/dist/command-palette-DGzioeki.js.map +1 -0
- package/dist/components/ai-actions.js +1 -1
- package/dist/components/ai-agent-card.js +1 -1
- package/dist/components/ai-approval.js +1 -1
- package/dist/components/ai-code-block.js +1 -1
- package/dist/components/ai-conversation.js +1 -1
- package/dist/components/ai-info-banner.js +1 -1
- package/dist/components/ai-message.js +1 -1
- package/dist/components/ai-mission-header.js +1 -1
- package/dist/components/ai-part-group.js +3 -0
- package/dist/components/ai-prompt-input.js +2 -2
- package/dist/components/ai-question.js +1 -1
- package/dist/components/ai-reasoning.js +1 -1
- package/dist/components/ai-response.js +1 -1
- package/dist/components/ai-shimmer.js +1 -1
- package/dist/components/ai-status-badge.js +1 -1
- package/dist/components/ai-streaming-text.js +1 -1
- package/dist/components/ai-subagent.js +1 -1
- package/dist/components/ai-suggestion.js +1 -1
- package/dist/components/ai-task-list.js +1 -1
- package/dist/components/ai-timeline.js +1 -1
- package/dist/components/ai-tool.js +1 -1
- package/dist/components/ai-usage-bar.js +1 -1
- package/dist/components/chart.js +3 -2
- package/dist/components/checkbox.js +1 -1
- package/dist/components/clipboard-text.js +1 -1
- package/dist/components/code.js +1 -1
- package/dist/components/combobox.js +1 -1
- package/dist/components/command-palette.js +1 -1
- package/dist/components/data-grid.js +1 -1
- package/dist/components/date-picker.js +1 -1
- package/dist/components/dropdown.js +1 -1
- package/dist/components/filters.js +1 -1
- package/dist/components/input.js +2 -2
- package/dist/components/link.js +2 -2
- package/dist/components/link.js.map +1 -1
- package/dist/components/pagination.js +1 -1
- package/dist/components/radio.js +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/sensitive-input.js +1 -1
- package/dist/components/sidebar.js +1 -1
- package/dist/components/sparkline.js +3 -0
- package/dist/components/stat-card.js +3 -0
- package/dist/components/table.js +1 -1
- package/dist/components/text-roll.js +3 -0
- package/dist/components/theme-toggle.js +1 -1
- package/dist/components/use-agent-harness.js +1 -1
- package/dist/{data-grid-UJ9ja5cu.js → data-grid-CG76N_hK.js} +6 -6
- package/dist/data-grid-CG76N_hK.js.map +1 -0
- package/dist/{date-picker-ebekkC3R.js → date-picker-Dqg9L4xu.js} +2 -2
- package/dist/{date-picker-ebekkC3R.js.map → date-picker-Dqg9L4xu.js.map} +1 -1
- package/dist/{dist-BNlyONdD.js → dist-1-gcEL2L.js} +224 -135
- package/dist/dist-1-gcEL2L.js.map +1 -0
- package/dist/{dropdown-J5T4pHaR.js → dropdown-qnEYRFXZ.js} +2 -2
- package/dist/{dropdown-J5T4pHaR.js.map → dropdown-qnEYRFXZ.js.map} +1 -1
- package/dist/echart-DURZEyai.js +314 -0
- package/dist/echart-DURZEyai.js.map +1 -0
- package/dist/{filters-BdBogf7D.js → filters-Bw_U6ZTx.js} +5 -5
- package/dist/filters-Bw_U6ZTx.js.map +1 -0
- package/dist/flow-BRsYUCJa.js.map +1 -1
- package/dist/genui.js +2 -2
- package/dist/genui.js.map +1 -1
- package/dist/index.js +45 -42
- package/dist/index.js.map +1 -1
- package/dist/{input-BxQAnXki.js → input-DXYUjGgD.js} +2 -2
- package/dist/{input-BxQAnXki.js.map → input-DXYUjGgD.js.map} +1 -1
- package/dist/{input-Cn25I4o5.js → input-DddtBN-g.js} +2 -2
- package/dist/{input-Cn25I4o5.js.map → input-DddtBN-g.js.map} +1 -1
- package/dist/layer-card-BME0eljh.js.map +1 -1
- package/dist/{pagination-C_YqCy8l.js → pagination-BVqdlONY.js} +2 -2
- package/dist/{pagination-C_YqCy8l.js.map → pagination-BVqdlONY.js.map} +1 -1
- package/dist/primitives/otp-field.js +2 -0
- package/dist/primitives.js +1 -0
- package/dist/{radio-B7zg1wUI.js → radio-BNSwOt3B.js} +3 -3
- package/dist/radio-BNSwOt3B.js.map +1 -0
- package/dist/{select-9p721G00.js → select-1w2aebGQ.js} +2 -2
- package/dist/select-1w2aebGQ.js.map +1 -0
- package/dist/{sensitive-input-D5je2NLl.js → sensitive-input-82Cez3vj.js} +2 -2
- package/dist/{sensitive-input-D5je2NLl.js.map → sensitive-input-82Cez3vj.js.map} +1 -1
- package/dist/{sidebar-DOwBrq57.js → sidebar-CAsCmSpM.js} +3 -3
- package/dist/sidebar-CAsCmSpM.js.map +1 -0
- package/dist/sparkline-DdbeM4Ai.js +108 -0
- package/dist/sparkline-DdbeM4Ai.js.map +1 -0
- package/dist/src/blocks/agent-harness/agent-harness.d.ts +30 -9
- package/dist/src/blocks/agent-harness/agent-harness.d.ts.map +1 -1
- package/dist/src/blocks/agent-harness/agent-harness.stories.tsx +114 -0
- package/dist/src/blocks/agent-harness/agent-harness.tsx +144 -63
- package/dist/src/blocks/commander/commander.stories.tsx +31 -0
- package/dist/src/blocks/dashboard-grid/dashboard-grid.d.ts +48 -0
- package/dist/src/blocks/dashboard-grid/dashboard-grid.d.ts.map +1 -0
- package/dist/src/blocks/dashboard-grid/dashboard-grid.stories.tsx +19 -0
- package/dist/src/blocks/dashboard-grid/dashboard-grid.tsx +110 -0
- package/dist/src/blocks/dashboard-grid/index.d.ts +2 -0
- package/dist/src/blocks/dashboard-grid/index.d.ts.map +1 -0
- package/dist/src/blocks/delete-resource/delete-resource.stories.tsx +31 -0
- package/dist/src/blocks/map-block/map-block.stories.tsx +41 -0
- package/dist/src/blocks/metrics-overview/index.d.ts +2 -0
- package/dist/src/blocks/metrics-overview/index.d.ts.map +1 -0
- package/dist/src/blocks/metrics-overview/metrics-overview.d.ts +67 -0
- package/dist/src/blocks/metrics-overview/metrics-overview.d.ts.map +1 -0
- package/dist/src/blocks/metrics-overview/metrics-overview.stories.tsx +26 -0
- package/dist/src/blocks/metrics-overview/metrics-overview.tsx +139 -0
- package/dist/src/blocks/page-header/page-header.stories.tsx +56 -0
- package/dist/src/blocks/resource-list/resource-list.stories.tsx +31 -0
- package/dist/src/catalog/catalog.d.ts +1 -1
- package/dist/src/catalog/index.d.ts +1 -1
- package/dist/src/catalog/types.d.ts +1 -1
- package/dist/src/command-line/build-cli.d.ts +1 -1
- package/dist/src/command-line/cli.d.ts +1 -1
- package/dist/src/command-line/commands/add.d.ts +1 -1
- package/dist/src/command-line/commands/add.d.ts.map +1 -1
- package/dist/src/command-line/commands/ai.d.ts.map +1 -1
- package/dist/src/command-line/commands/blocks.d.ts +1 -1
- package/dist/src/command-line/commands/blocks.d.ts.map +1 -1
- package/dist/src/command-line/commands/doc.d.ts +1 -1
- package/dist/src/command-line/commands/doc.d.ts.map +1 -1
- package/dist/src/command-line/commands/ls.d.ts +1 -1
- package/dist/src/command-line/commands/ls.d.ts.map +1 -1
- package/dist/src/command-line/commands/migrate.d.ts +3 -3
- package/dist/src/command-line/commands/migrate.d.ts.map +1 -1
- package/dist/src/command-line/utils/config.d.ts +1 -1
- package/dist/src/command-line/utils/transformer.d.ts +1 -1
- package/dist/src/components/ai-part-group/ai-part-group.d.ts +134 -0
- package/dist/src/components/ai-part-group/ai-part-group.d.ts.map +1 -0
- package/dist/src/components/ai-part-group/index.d.ts +2 -0
- package/dist/src/components/ai-part-group/index.d.ts.map +1 -0
- package/dist/src/components/ai-prompt-input/ai-prompt-input.d.ts +196 -7
- package/dist/src/components/ai-prompt-input/ai-prompt-input.d.ts.map +1 -1
- package/dist/src/components/ai-prompt-input/controller.d.ts +41 -0
- package/dist/src/components/ai-prompt-input/controller.d.ts.map +1 -0
- package/dist/src/components/ai-prompt-input/index.d.ts +3 -1
- package/dist/src/components/ai-prompt-input/index.d.ts.map +1 -1
- package/dist/src/components/ai-prompt-input/types.d.ts +86 -0
- package/dist/src/components/ai-prompt-input/types.d.ts.map +1 -0
- package/dist/src/components/ai-reasoning/ai-reasoning.d.ts +17 -1
- package/dist/src/components/ai-reasoning/ai-reasoning.d.ts.map +1 -1
- package/dist/src/components/ai-response/ai-response.d.ts +1 -2
- package/dist/src/components/ai-response/ai-response.d.ts.map +1 -1
- package/dist/src/components/ai-task-list/ai-task-list.d.ts.map +1 -1
- package/dist/src/components/ai-tool/ai-tool.d.ts +17 -1
- package/dist/src/components/ai-tool/ai-tool.d.ts.map +1 -1
- package/dist/src/components/chart/area-chart.d.ts +69 -0
- package/dist/src/components/chart/area-chart.d.ts.map +1 -0
- package/dist/src/components/chart/bar-chart.d.ts +60 -0
- package/dist/src/components/chart/bar-chart.d.ts.map +1 -0
- package/dist/src/components/chart/color.d.ts +56 -0
- package/dist/src/components/chart/color.d.ts.map +1 -1
- package/dist/src/components/chart/echart.d.ts.map +1 -1
- package/dist/src/components/chart/index.d.ts +5 -0
- package/dist/src/components/chart/index.d.ts.map +1 -1
- package/dist/src/components/chart/pie-chart.d.ts +64 -0
- package/dist/src/components/chart/pie-chart.d.ts.map +1 -0
- package/dist/src/components/chart/scatter-chart.d.ts +57 -0
- package/dist/src/components/chart/scatter-chart.d.ts.map +1 -0
- package/dist/src/components/chart/stacked-bar-chart.d.ts +59 -0
- package/dist/src/components/chart/stacked-bar-chart.d.ts.map +1 -0
- package/dist/src/components/chart/timeseries-chart.d.ts.map +1 -1
- package/dist/src/components/code/code.d.ts +1 -1
- package/dist/src/components/command-palette/command-palette.d.ts +1 -1
- package/dist/src/components/data-grid/data-grid.d.ts.map +1 -1
- package/dist/src/components/data-grid/index.d.ts +1 -1
- package/dist/src/components/data-grid/index.d.ts.map +1 -1
- package/dist/src/components/data-grid/types.d.ts.map +1 -1
- package/dist/src/components/date-picker/date-picker.d.ts +2 -2
- package/dist/src/components/filters/filters.d.ts.map +1 -1
- package/dist/src/components/filters/helpers.d.ts.map +1 -1
- package/dist/src/components/filters/types.d.ts.map +1 -1
- package/dist/src/components/layer-card/layer-card.d.ts +1 -1
- package/dist/src/components/link/link.d.ts +2 -2
- package/dist/src/components/radio/radio.d.ts +1 -1
- package/dist/src/components/select/select.d.ts +1 -1
- package/dist/src/components/sidebar/sidebar.d.ts +2 -2
- package/dist/src/components/sparkline/index.d.ts +2 -0
- package/dist/src/components/sparkline/index.d.ts.map +1 -0
- package/dist/src/components/sparkline/sparkline.d.ts +52 -0
- package/dist/src/components/sparkline/sparkline.d.ts.map +1 -0
- package/dist/src/components/stat-card/index.d.ts +2 -0
- package/dist/src/components/{ai-loader → stat-card}/index.d.ts.map +1 -1
- package/dist/src/components/stat-card/stat-card.d.ts +80 -0
- package/dist/src/components/stat-card/stat-card.d.ts.map +1 -0
- package/dist/src/components/text-roll/index.d.ts +2 -0
- package/dist/src/components/text-roll/index.d.ts.map +1 -0
- package/dist/src/components/text-roll/text-roll.d.ts +49 -0
- package/dist/src/components/text-roll/text-roll.d.ts.map +1 -0
- package/dist/src/components/toast/toast.d.ts.map +1 -1
- package/dist/src/components/use-agent-harness/use-agent-harness.d.ts +2 -2
- package/dist/src/genui/genui.d.ts.map +1 -1
- package/dist/src/index.d.ts +5 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/primitives/index.d.ts +1 -0
- package/dist/src/primitives/index.d.ts.map +1 -1
- package/dist/src/primitives/otp-field.d.ts +13 -0
- package/dist/src/primitives/otp-field.d.ts.map +1 -0
- package/dist/src/registry/index.d.ts +1 -1
- package/dist/src/registry/types.d.ts +1 -1
- package/dist/stat-card-CEZscNh8.js +103 -0
- package/dist/stat-card-CEZscNh8.js.map +1 -0
- package/dist/styles/sf-binding.css +20 -62
- package/dist/styles/sf-standalone.css +2 -2
- package/dist/styles/shadcn.css +120 -0
- package/dist/styles/theme-blue-tint.css +98 -0
- package/dist/styles/theme-fedramp.css +3 -12
- package/dist/styles/theme-minimal.css +26 -104
- package/dist/styles/theme-sf.css +96 -114
- package/dist/{table-CIMx0Oq0.js → table-Rv4JMy0B.js} +2 -2
- package/dist/{table-CIMx0Oq0.js.map → table-Rv4JMy0B.js.map} +1 -1
- package/dist/text-roll-BZ3I1umc.js +79 -0
- package/dist/text-roll-BZ3I1umc.js.map +1 -0
- package/dist/{theme-toggle-Dpgnoj_Q.js → theme-toggle-Bhu681D7.js} +1 -1
- package/dist/{theme-toggle-Dpgnoj_Q.js.map → theme-toggle-Bhu681D7.js.map} +1 -1
- package/dist/{use-agent-harness-DZzcn96L.js → use-agent-harness-BMyF8pTq.js} +5 -5
- package/dist/use-agent-harness-BMyF8pTq.js.map +1 -0
- package/package.json +48 -19
- package/scripts/component-registry/discovery.ts +2 -2
- package/scripts/component-registry/index.ts +1 -1
- package/scripts/component-registry/props-filter.ts +1 -1
- package/scripts/component-registry/utils.ts +5 -5
- package/scripts/component-registry/variant-parser.ts +124 -19
- package/scripts/convert-demos-to-stories.ts +253 -0
- package/scripts/css-build.ts +4 -3
- package/scripts/generate-primitives.ts +11 -3
- package/scripts/theme-generator/config.ts +339 -71
- package/scripts/theme-generator/generate-css.ts +17 -3
- package/scripts/theme-generator/index.ts +3 -3
- package/scripts/theme-generator/migrate.ts +1 -1
- package/dist/ai-loader-Cr3eQkNS.js +0 -134
- package/dist/ai-loader-Cr3eQkNS.js.map +0 -1
- package/dist/ai-prompt-input-Bo1YuJly.js +0 -769
- package/dist/ai-prompt-input-Bo1YuJly.js.map +0 -1
- package/dist/ai-reasoning-UAmNx_LD.js.map +0 -1
- package/dist/ai-response-BWoVsNQG.js.map +0 -1
- package/dist/ai-task-list-B9CpMDYN.js.map +0 -1
- package/dist/ai-timeline-Bb5ntsr3.js.map +0 -1
- package/dist/ai-tool-BGH8nQ_D.js.map +0 -1
- package/dist/chart-Bes4MN3C.js.map +0 -1
- package/dist/checkbox-CPX7lBaU.js.map +0 -1
- package/dist/command-palette-CBTY8EiF.js.map +0 -1
- package/dist/components/ai-loader.js +0 -3
- package/dist/data-grid-UJ9ja5cu.js.map +0 -1
- package/dist/dist-BNlyONdD.js.map +0 -1
- package/dist/filters-BdBogf7D.js.map +0 -1
- package/dist/radio-B7zg1wUI.js.map +0 -1
- package/dist/select-9p721G00.js.map +0 -1
- package/dist/sidebar-DOwBrq57.js.map +0 -1
- package/dist/src/components/ai-loader/ai-loader.d.ts +0 -44
- package/dist/src/components/ai-loader/ai-loader.d.ts.map +0 -1
- package/dist/src/components/ai-loader/index.d.ts +0 -2
- package/dist/styles/theme-navigator.css +0 -137
- package/dist/use-agent-harness-DZzcn96L.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../../../src/command-line/commands/blocks.ts"],"names":[],"mappings":";AACA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../../../src/command-line/commands/blocks.ts"],"names":[],"mappings":";AACA;;;GAGG;AAqCH;;GAEG;AACH,wBAAgB,MAAM,IAAI,IAAI,CAmD7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doc.d.ts","sourceRoot":"","sources":["../../../../src/command-line/commands/doc.ts"],"names":[],"mappings":";AACA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"doc.d.ts","sourceRoot":"","sources":["../../../../src/command-line/commands/doc.ts"],"names":[],"mappings":";AACA;;;GAGG;AAmMH;;GAEG;AACH,wBAAgB,IAAI,IAAI,IAAI,CAsB3B;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CA+BhD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ls.d.ts","sourceRoot":"","sources":["../../../../src/command-line/commands/ls.ts"],"names":[],"mappings":";AACA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"ls.d.ts","sourceRoot":"","sources":["../../../../src/command-line/commands/ls.ts"],"names":[],"mappings":";AACA;;;GAGG;AAmCH;;GAEG;AACH,wBAAgB,EAAE,IAAI,IAAI,CAwCzB"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* SignalFlare CLI migrate command
|
|
3
3
|
*
|
|
4
|
-
* For CONSUMERS: Exports the token rename map when
|
|
4
|
+
* For CONSUMERS: Exports the token rename map when SignalFlare releases breaking changes.
|
|
5
5
|
* The actual rename map is embedded at build time from the theme-generator config.
|
|
6
6
|
*
|
|
7
|
-
* For
|
|
7
|
+
* For SIGNALFLARE MAINTAINERS: Use `bun run migrate:tokens` for the full migration workflow.
|
|
8
8
|
*/
|
|
9
9
|
export declare function migrate(args: string[]): void;
|
|
10
10
|
//# sourceMappingURL=migrate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../../src/command-line/commands/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA6GH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../../src/command-line/commands/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA6GH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CA6C5C"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { ComponentProps, ReactNode } from 'react';
|
|
2
|
+
type FrozenStep = {
|
|
3
|
+
kind: "tool" | "reasoning";
|
|
4
|
+
name: string;
|
|
5
|
+
ok: boolean;
|
|
6
|
+
duration?: number;
|
|
7
|
+
};
|
|
8
|
+
type FrozenSnapshot = {
|
|
9
|
+
title: string;
|
|
10
|
+
steps: FrozenStep[];
|
|
11
|
+
errorCount: number;
|
|
12
|
+
totalDuration: number;
|
|
13
|
+
};
|
|
14
|
+
/** Test-only escape hatch for clearing the snapshot cache. */
|
|
15
|
+
export declare function _clearAiPartGroupCache(): void;
|
|
16
|
+
/**
|
|
17
|
+
* Reads the frozen snapshot for a group, or `undefined` if it hasn't completed
|
|
18
|
+
* yet. Useful for consumers driving custom layouts.
|
|
19
|
+
*/
|
|
20
|
+
export declare function getAiPartGroupSnapshot(groupKey: string): FrozenSnapshot | undefined;
|
|
21
|
+
export type AiPartGroupProps = Omit<ComponentProps<"div">, "title"> & {
|
|
22
|
+
/**
|
|
23
|
+
* Stable identifier — usually the parent message id. Required so the group
|
|
24
|
+
* can persist its frozen snapshot across re-mounts (scroll-back into a
|
|
25
|
+
* virtualized list re-renders without restarting animations).
|
|
26
|
+
*/
|
|
27
|
+
groupKey: string;
|
|
28
|
+
/**
|
|
29
|
+
* Set to `true` once the parent stream has finished. Triggers the group to
|
|
30
|
+
* snapshot its current children and from then on render only the static
|
|
31
|
+
* collapsed summary — ephemeral children never re-mount.
|
|
32
|
+
*/
|
|
33
|
+
complete?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Max number of live ephemeral rows visible at once during streaming.
|
|
36
|
+
* Older rows fall off the top. Pinned rows (errors / user-expanded) render
|
|
37
|
+
* above the live window and do not count toward this cap.
|
|
38
|
+
* @default 3
|
|
39
|
+
*/
|
|
40
|
+
max?: number;
|
|
41
|
+
/**
|
|
42
|
+
* Title shown in the collapsed summary line. Falls back to the first
|
|
43
|
+
* reasoning text snippet, then to a step count.
|
|
44
|
+
*/
|
|
45
|
+
title?: string;
|
|
46
|
+
/** Child ephemeral rows (`AiToolCall variant="ephemeral"`, `AiReasoning variant="ephemeral"`). */
|
|
47
|
+
children?: ReactNode;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Groups streaming ephemeral activity (tool calls + reasoning) into a single
|
|
51
|
+
* rolling window during streaming, then collapses to a frozen summary line
|
|
52
|
+
* once the parent message completes.
|
|
53
|
+
*
|
|
54
|
+
* Behavior:
|
|
55
|
+
* - **Streaming:** shows the most recent `max` (default 3) ephemeral children.
|
|
56
|
+
* Pinned rows (errors / user-expanded) sit above the live window.
|
|
57
|
+
* - **Completed:** writes a snapshot keyed by `groupKey`, unmounts ephemeral
|
|
58
|
+
* children entirely, and renders a static `▸ {title} · N steps` line.
|
|
59
|
+
* - **Re-mount after completion:** always renders the cached snapshot — no
|
|
60
|
+
* animations, no `useEffect` re-runs, no tool re-execution risk.
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```tsx
|
|
64
|
+
* <AiPartGroup
|
|
65
|
+
* groupKey={message.id}
|
|
66
|
+
* complete={message.status === "complete"}
|
|
67
|
+
* title={message.reasoningSummary}
|
|
68
|
+
* max={3}
|
|
69
|
+
* >
|
|
70
|
+
* {message.parts.map((p) =>
|
|
71
|
+
* p.type === "reasoning"
|
|
72
|
+
* ? <AiReasoning key={p.id} variant="ephemeral" part={p} />
|
|
73
|
+
* : <AiToolCall key={p.toolCallId} variant="ephemeral" part={p} />
|
|
74
|
+
* )}
|
|
75
|
+
* </AiPartGroup>
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
export declare function AiPartGroup({ groupKey, complete, max, title, children, className, ...props }: AiPartGroupProps): import("react/jsx-runtime").JSX.Element;
|
|
79
|
+
export declare namespace AiPartGroup {
|
|
80
|
+
var displayName: string;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* A message part that is either narrative text or an "activity" (reasoning or
|
|
84
|
+
* tool call). Consumers pass parts shaped like this — the helper does not read
|
|
85
|
+
* any field other than `type`.
|
|
86
|
+
*/
|
|
87
|
+
export type GroupablePart = {
|
|
88
|
+
type: "text";
|
|
89
|
+
[key: string]: unknown;
|
|
90
|
+
} | {
|
|
91
|
+
type: "reasoning";
|
|
92
|
+
[key: string]: unknown;
|
|
93
|
+
} | {
|
|
94
|
+
type: "tool-call" | "tool-result" | string;
|
|
95
|
+
[key: string]: unknown;
|
|
96
|
+
};
|
|
97
|
+
/** Emitted by {@link groupParts}. */
|
|
98
|
+
export type PartChunk<TPart = GroupablePart> = {
|
|
99
|
+
kind: "text";
|
|
100
|
+
parts: TPart[];
|
|
101
|
+
} | {
|
|
102
|
+
kind: "activity";
|
|
103
|
+
parts: TPart[];
|
|
104
|
+
};
|
|
105
|
+
/**
|
|
106
|
+
* Split a message's parts into alternating `text` and `activity` chunks so each
|
|
107
|
+
* contiguous run of reasoning/tool parts can be rendered inside its own
|
|
108
|
+
* {@link AiPartGroup}, with narrative text rendered between them.
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* ```tsx
|
|
112
|
+
* {groupParts(message.parts).map((chunk, i) =>
|
|
113
|
+
* chunk.kind === "text" ? (
|
|
114
|
+
* <AiMessageContent key={i}>{joinText(chunk.parts)}</AiMessageContent>
|
|
115
|
+
* ) : (
|
|
116
|
+
* <AiPartGroup
|
|
117
|
+
* key={i}
|
|
118
|
+
* groupKey={`${message.id}:activity:${i}`}
|
|
119
|
+
* complete={!message.isStreaming}
|
|
120
|
+
* >
|
|
121
|
+
* {chunk.parts.map(renderActivityPart)}
|
|
122
|
+
* </AiPartGroup>
|
|
123
|
+
* )
|
|
124
|
+
* )}
|
|
125
|
+
* ```
|
|
126
|
+
*/
|
|
127
|
+
export declare function groupParts<TPart extends {
|
|
128
|
+
type: string;
|
|
129
|
+
}>(parts: readonly TPart[], options?: {
|
|
130
|
+
/** Which `type` values count as "activity". Defaults to reasoning + tool parts. */
|
|
131
|
+
isActivity?: (part: TPart) => boolean;
|
|
132
|
+
}): PartChunk<TPart>[];
|
|
133
|
+
export {};
|
|
134
|
+
//# sourceMappingURL=ai-part-group.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-part-group.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-part-group/ai-part-group.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAgB,SAAS,EAAE,MAAM,OAAO,CAAC;AASrE,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAMF,8DAA8D;AAC9D,wBAAgB,sBAAsB,SAErC;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,GACf,cAAc,GAAG,SAAS,CAE5B;AAID,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,GAAG;IACpE;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kGAAkG;IAClG,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,QAAgB,EAChB,GAAO,EACP,KAAK,EACL,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,gBAAgB,2CA8ClB;yBAtDe,WAAW;;;AAsS3B;;;;GAIG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,WAAW,GAAG,aAAa,GAAG,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAE3E,qCAAqC;AACrC,MAAM,MAAM,SAAS,CAAC,KAAK,GAAG,aAAa,IACvC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,EAAE,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,KAAK,EAAE,CAAA;CAAE,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,UAAU,CAAC,KAAK,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EACvD,KAAK,EAAE,SAAS,KAAK,EAAE,EACvB,OAAO,GAAE;IACP,mFAAmF;IACnF,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC;CAClC,GACL,SAAS,CAAC,KAAK,CAAC,EAAE,CA0BpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-part-group/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,sBAAsB,EACtB,UAAU,EACV,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Menu as DropdownMenuPrimitive } from '@base-ui/react/menu';
|
|
2
2
|
import { ComponentProps, FormEvent, HTMLAttributes, PropsWithChildren, ReactNode, RefObject } from 'react';
|
|
3
3
|
import { Button } from '../button';
|
|
4
|
+
import { ModeOption } from './types';
|
|
4
5
|
export declare const SF_AI_PROMPT_INPUT_VARIANTS: {
|
|
5
6
|
readonly status: {
|
|
6
7
|
readonly idle: {
|
|
@@ -201,15 +202,203 @@ export type PromptInputActionAddAttachmentsProps = PromptInputActionMenuItemProp
|
|
|
201
202
|
label?: string;
|
|
202
203
|
};
|
|
203
204
|
export declare const PromptInputActionAddAttachments: ({ label, ...props }: PromptInputActionAddAttachmentsProps) => import("react/jsx-runtime").JSX.Element;
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
205
|
+
/**
|
|
206
|
+
* Pill-style mode selector.
|
|
207
|
+
*
|
|
208
|
+
* Two wiring modes:
|
|
209
|
+
* 1. **Controller-driven (preferred)** — omit `value`/`onChange`; the selector
|
|
210
|
+
* reads/writes `requestContext.mode` via `usePromptInputController()`.
|
|
211
|
+
* 2. **Explicit props** — pass `value` + `onChange` for controlled usage
|
|
212
|
+
* outside a controller (e.g. standalone demos or legacy harnesses).
|
|
213
|
+
*
|
|
214
|
+
* Generic over `TValue` so consumers with a known id union get narrow types.
|
|
215
|
+
*
|
|
216
|
+
* @example Controller-driven
|
|
217
|
+
* ```tsx
|
|
218
|
+
* <PromptInput onSubmit={(ctx) => send(ctx)}>
|
|
219
|
+
* <PromptInputTextarea />
|
|
220
|
+
* <PromptInputToolbar>
|
|
221
|
+
* <PromptInputModeSelector<'build' | 'plan' | 'research'>
|
|
222
|
+
* options={[
|
|
223
|
+
* { value: 'build', label: 'Build' },
|
|
224
|
+
* { value: 'plan', label: 'Plan' },
|
|
225
|
+
* { value: 'research', label: 'Research' },
|
|
226
|
+
* ]}
|
|
227
|
+
* />
|
|
228
|
+
* <PromptInputSubmit />
|
|
229
|
+
* </PromptInputToolbar>
|
|
230
|
+
* </PromptInput>
|
|
231
|
+
* ```
|
|
232
|
+
*
|
|
233
|
+
* @example Explicit
|
|
234
|
+
* ```tsx
|
|
235
|
+
* <PromptInputModeSelector options={opts} value={mode} onChange={setMode} />
|
|
236
|
+
* ```
|
|
237
|
+
*/
|
|
238
|
+
export type PromptInputModeSelectorProps<TValue extends string = string> = {
|
|
239
|
+
/** Available options. Pass an empty array to hide the selector. */
|
|
240
|
+
options: ModeOption<TValue>[];
|
|
241
|
+
/** Controlled value. Omit to bind to `requestContext.mode` via controller. */
|
|
242
|
+
value?: TValue;
|
|
243
|
+
/** Controlled handler. Omit to write `requestContext.mode` via controller. */
|
|
244
|
+
onChange?: (value: TValue) => void;
|
|
245
|
+
/** Optional aria-label override. */
|
|
246
|
+
"aria-label"?: string;
|
|
247
|
+
className?: string;
|
|
248
|
+
};
|
|
249
|
+
export declare const PromptInputModeSelector: <TValue extends string = string>({ options, value: valueProp, onChange: onChangeProp, "aria-label": ariaLabel, className, }: PromptInputModeSelectorProps<TValue>) => import("react/jsx-runtime").JSX.Element | null;
|
|
250
|
+
export type CompactSelectOption = {
|
|
251
|
+
/** Stable value identifier. */
|
|
252
|
+
value: string;
|
|
253
|
+
/** Display label. Falls back to `value` when omitted. */
|
|
254
|
+
label?: string;
|
|
255
|
+
/** Disable selection. */
|
|
256
|
+
disabled?: boolean;
|
|
257
|
+
};
|
|
258
|
+
export type PromptInputCompactSelectProps = {
|
|
259
|
+
/** Available options. Pass an empty array to render nothing. */
|
|
260
|
+
options: CompactSelectOption[];
|
|
261
|
+
/** Controlled value. */
|
|
209
262
|
value?: string;
|
|
210
|
-
|
|
263
|
+
/** Fires when the user picks a new option. */
|
|
264
|
+
onChange?: (value: string) => void;
|
|
265
|
+
/** Trigger text when `value` is empty or doesn't match any option. */
|
|
266
|
+
placeholder?: string;
|
|
267
|
+
/** aria-label for the trigger. */
|
|
268
|
+
"aria-label"?: string;
|
|
269
|
+
/** Max width of the trigger label (with truncation). Default `160px`. */
|
|
270
|
+
maxWidth?: number | string;
|
|
271
|
+
className?: string;
|
|
211
272
|
};
|
|
212
|
-
|
|
273
|
+
/**
|
|
274
|
+
* Compact Select primitive sized for the PromptInput toolbar.
|
|
275
|
+
*
|
|
276
|
+
* - 24px-tall trigger with `text-[11px]` label and truncating value
|
|
277
|
+
* - Matching compact popup with the same text scale
|
|
278
|
+
*
|
|
279
|
+
* Build toolbar-specific selectors (mode, model, voice, tone, ...) by
|
|
280
|
+
* wrapping this and wiring `value`/`onChange` to your state source.
|
|
281
|
+
*/
|
|
282
|
+
export declare const PromptInputCompactSelect: ({ options, value, onChange, placeholder, "aria-label": ariaLabel, maxWidth, className, }: PromptInputCompactSelectProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
283
|
+
export type ModelOption = {
|
|
284
|
+
/** Stable model identifier (e.g. `"anthropic/claude-sonnet-4"`). */
|
|
285
|
+
value: string;
|
|
286
|
+
/** Display label. Falls back to the last path segment of `value`. */
|
|
287
|
+
label?: string;
|
|
288
|
+
/** Optional group/provider label. */
|
|
289
|
+
group?: string;
|
|
290
|
+
/** Disable selection. */
|
|
291
|
+
disabled?: boolean;
|
|
292
|
+
};
|
|
293
|
+
export type PromptInputModelSelectProps = {
|
|
294
|
+
/** Available model options. Pass an empty array to hide the selector. */
|
|
295
|
+
options: ModelOption[];
|
|
296
|
+
/** Controlled value. Omit to bind to `requestContext.model` via controller. */
|
|
297
|
+
value?: string;
|
|
298
|
+
/** Controlled handler. Omit to write `requestContext.model` via controller. */
|
|
299
|
+
onChange?: (value: string) => void;
|
|
300
|
+
/** Optional aria-label override. */
|
|
301
|
+
"aria-label"?: string;
|
|
302
|
+
className?: string;
|
|
303
|
+
};
|
|
304
|
+
/**
|
|
305
|
+
* Compact model selector for the PromptInput toolbar.
|
|
306
|
+
*
|
|
307
|
+
* - Controlled: pass `value` + `onChange`.
|
|
308
|
+
* - Controller-bound: omit both and wrap in `PromptInputRequestControllerProvider`
|
|
309
|
+
* — the selector reads/writes `requestContext.model` automatically.
|
|
310
|
+
*/
|
|
311
|
+
export declare const PromptInputModelSelect: ({ options, value: valueProp, onChange: onChangeProp, "aria-label": ariaLabel, className, }: PromptInputModelSelectProps) => import("react/jsx-runtime").JSX.Element;
|
|
312
|
+
export type PromptInputModeSelectProps = {
|
|
313
|
+
/** Available modes. */
|
|
314
|
+
options: ModeOption[];
|
|
315
|
+
/** Controlled value. Omit to bind to `requestContext.mode` via controller. */
|
|
316
|
+
value?: string;
|
|
317
|
+
/** Controlled handler. Omit to write `requestContext.mode` via controller. */
|
|
318
|
+
onChange?: (value: string) => void;
|
|
319
|
+
/** Optional aria-label override. */
|
|
320
|
+
"aria-label"?: string;
|
|
321
|
+
className?: string;
|
|
322
|
+
};
|
|
323
|
+
/**
|
|
324
|
+
* Compact mode selector for the PromptInput toolbar — matches
|
|
325
|
+
* `PromptInputModelSelect` visually. For a segmented button-group look
|
|
326
|
+
* (multi-mode headers, empty states), use `PromptInputModeSelector` instead.
|
|
327
|
+
*
|
|
328
|
+
* - Controlled: pass `value` + `onChange`.
|
|
329
|
+
* - Controller-bound: omit both and wrap in `PromptInputRequestControllerProvider`
|
|
330
|
+
* — the selector reads/writes `requestContext.mode` automatically.
|
|
331
|
+
*/
|
|
332
|
+
export declare const PromptInputModeSelect: ({ options, value: valueProp, onChange: onChangeProp, "aria-label": ariaLabel, className, }: PromptInputModeSelectProps) => import("react/jsx-runtime").JSX.Element;
|
|
333
|
+
export type PromptInputCompactCycleProps = {
|
|
334
|
+
/** Available options. Cycles through them in order, wrapping at end. */
|
|
335
|
+
options: CompactSelectOption[];
|
|
336
|
+
/** Current value. If unset (or no match), the first option is highlighted. */
|
|
337
|
+
value?: string;
|
|
338
|
+
/** Fires when the user clicks (advances to next non-disabled option). */
|
|
339
|
+
onChange?: (value: string) => void;
|
|
340
|
+
/** aria-label for the button. */
|
|
341
|
+
"aria-label"?: string;
|
|
342
|
+
/** Show the small cycle icon next to the label. @default true */
|
|
343
|
+
showIcon?: boolean;
|
|
344
|
+
/** Max width of the label (truncates). @default 160px */
|
|
345
|
+
maxWidth?: number | string;
|
|
346
|
+
className?: string;
|
|
347
|
+
};
|
|
348
|
+
/**
|
|
349
|
+
* Single compact button that cycles through `options` on click.
|
|
350
|
+
*
|
|
351
|
+
* - Click / Enter / Space → next option (wraps at end)
|
|
352
|
+
* - Shift+Click / Shift+Enter → previous option
|
|
353
|
+
* - Skips `disabled` options
|
|
354
|
+
*
|
|
355
|
+
* Useful for binary or 2–3 option toggles where a dropdown feels heavy.
|
|
356
|
+
*/
|
|
357
|
+
export declare const PromptInputCompactCycle: ({ options, value, onChange, "aria-label": ariaLabel, showIcon, maxWidth, className, }: PromptInputCompactCycleProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
358
|
+
export type PromptInputModeCycleProps = {
|
|
359
|
+
/** Available modes to cycle through. */
|
|
360
|
+
options: ModeOption[];
|
|
361
|
+
/** Controlled value. Omit to bind to `requestContext.mode` via controller. */
|
|
362
|
+
value?: string;
|
|
363
|
+
/** Controlled handler. Omit to write `requestContext.mode` via controller. */
|
|
364
|
+
onChange?: (value: string) => void;
|
|
365
|
+
/** Optional aria-label override. */
|
|
366
|
+
"aria-label"?: string;
|
|
367
|
+
/** Show the small cycle icon next to the label. @default true */
|
|
368
|
+
showIcon?: boolean;
|
|
369
|
+
className?: string;
|
|
370
|
+
};
|
|
371
|
+
/**
|
|
372
|
+
* Click-to-cycle mode picker. Single compact button that advances through
|
|
373
|
+
* `options` on each click. Best for 2–3 modes.
|
|
374
|
+
*
|
|
375
|
+
* - Controlled: pass `value` + `onChange`.
|
|
376
|
+
* - Controller-bound: omit both and wrap in `PromptInputRequestControllerProvider`
|
|
377
|
+
* — reads/writes `requestContext.mode` automatically.
|
|
378
|
+
*/
|
|
379
|
+
export declare const PromptInputModeCycle: ({ options, value: valueProp, onChange: onChangeProp, "aria-label": ariaLabel, showIcon, className, }: PromptInputModeCycleProps) => import("react/jsx-runtime").JSX.Element;
|
|
380
|
+
export type PromptInputModelCycleProps = {
|
|
381
|
+
/** Available models to cycle through. */
|
|
382
|
+
options: ModelOption[];
|
|
383
|
+
/** Controlled value. Omit to bind to `requestContext.model` via controller. */
|
|
384
|
+
value?: string;
|
|
385
|
+
/** Controlled handler. Omit to write `requestContext.model` via controller. */
|
|
386
|
+
onChange?: (value: string) => void;
|
|
387
|
+
/** Optional aria-label override. */
|
|
388
|
+
"aria-label"?: string;
|
|
389
|
+
/** Show the small cycle icon next to the label. @default true */
|
|
390
|
+
showIcon?: boolean;
|
|
391
|
+
className?: string;
|
|
392
|
+
};
|
|
393
|
+
/**
|
|
394
|
+
* Click-to-cycle model picker. Single compact button that advances through
|
|
395
|
+
* `options` on each click. Best for 2–3 models.
|
|
396
|
+
*
|
|
397
|
+
* - Controlled: pass `value` + `onChange`.
|
|
398
|
+
* - Controller-bound: omit both and wrap in `PromptInputRequestControllerProvider`
|
|
399
|
+
* — reads/writes `requestContext.model` automatically.
|
|
400
|
+
*/
|
|
401
|
+
export declare const PromptInputModelCycle: ({ options, value: valueProp, onChange: onChangeProp, "aria-label": ariaLabel, showIcon, className, }: PromptInputModelCycleProps) => import("react/jsx-runtime").JSX.Element;
|
|
213
402
|
export type PromptInputAttachmentProps = HTMLAttributes<HTMLDivElement> & {
|
|
214
403
|
data: AttachmentFile;
|
|
215
404
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-prompt-input.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-prompt-input/ai-prompt-input.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,IAAI,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-prompt-input.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-prompt-input/ai-prompt-input.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,IAAI,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAmBpE,OAAO,KAAK,EAIV,cAAc,EACd,SAAS,EAET,cAAc,EAEd,iBAAiB,EACjB,SAAS,EACT,SAAS,EACV,MAAM,OAAO,CAAC;AAcf,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAInC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAQ1C,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;CAU9B,CAAC;AAEX,eAAO,MAAM,mCAAmC;;CAEtC,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAC/B,MAAM,OAAO,2BAA2B,CAAC,MAAM,CAAC;AAIlD,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,GAAG,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,QAAQ,KAAK,IAAI,CAAC;IACxC,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,YAAY,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;CAClD,CAAC;AAIF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,EAAE,gBAAgB,CAAC;IAC5B,WAAW,EAAE,kBAAkB,CAAC;IAChC,gFAAgF;IAChF,mBAAmB,EAAE,CACnB,GAAG,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,EACvC,IAAI,EAAE,MAAM,IAAI,KACb,IAAI,CAAC;CACX,CAAC;AAOF,eAAO,MAAM,wBAAwB,6BAQpC,CAAC;AAIF,eAAO,MAAM,sBAAsB,0BAQlC,CAAC;AAOF,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;IACvD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC,CAAC;AAEH;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,YAAiB,EACjB,QAAQ,GACT,EAAE,wBAAwB,2CAkF1B;AAMD,eAAO,MAAM,yBAAyB,0BAUrC,CAAC;AA0BF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;CAC1B,CAAC;AAIF,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,cAAc,CAAC,eAAe,CAAC,EAC/B,UAAU,GAAG,SAAS,CACvB,GAAG;IACF,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mEAAmE;IACnE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QACd,IAAI,EAAE,WAAW,GAAG,eAAe,GAAG,QAAQ,CAAC;QAC/C,OAAO,EAAE,MAAM,CAAC;KACjB,KAAK,IAAI,CAAC;IACX,QAAQ,EAAE,CACR,OAAO,EAAE,kBAAkB,EAC3B,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,KAC9B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,wEAAwE;IACxE,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,GAAI,mMAgBzB,gBAAgB,4CA0RlB,CAAC;AAIF,MAAM,MAAM,oBAAoB,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AAElE,eAAO,MAAM,eAAe,GAAI,yBAG7B,oBAAoB,4CAEtB,CAAC;AAkCF,MAAM,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,QAAQ,EACR,SAAS,GACV,EAAE,yBAAyB,2CAW3B;AAiBD,MAAM,MAAM,wBAAwB,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,gDAKjC,wBAAwB,4CA6C1B,CAAC;AAIF,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AAErE,eAAO,MAAM,kBAAkB,GAAI,yBAGhC,uBAAuB,4CAQzB,CAAC;AAIF,MAAM,MAAM,qBAAqB,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AAEnE,eAAO,MAAM,gBAAgB,GAAI,yBAG9B,qBAAqB,4CAKvB,CAAC;AAIF,MAAM,MAAM,sBAAsB,GAAG,cAAc,CAAC,OAAO,MAAM,CAAC,GAAG;IACnE,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,wCAK/B,sBAAsB,4CAQxB,CAAC;AAIF,MAAM,MAAM,sBAAsB,GAAG,cAAc,CAAC,OAAO,MAAM,CAAC,GAAG;IACnE,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAChC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,0DAO/B,sBAAsB,4CAwBxB,CAAC;AAIF,QAAA,MAAM,YAAY,8BAAwB,CAAC;AAE3C,MAAM,MAAM,0BAA0B,GAAG,cAAc,CACrD,OAAO,YAAY,CAAC,IAAI,CACzB,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,OAAO,0BAA0B,4CAEtE,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG,IAAI,CAClD,sBAAsB,EACtB,YAAY,CACb,GAAG;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,4BAA4B,GAAI,4DAK1C,iCAAiC,4CAenC,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG,cAAc,CAC5D,OAAO,YAAY,CAAC,UAAU,CAC/B,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAEjD,eAAO,MAAM,4BAA4B,GAAI,mCAI1C,iCAAiC,4CAYnC,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG,cAAc,CACzD,OAAO,YAAY,CAAC,IAAI,CACzB,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,yBAGvC,8BAA8B,4CAShC,CAAC;AAIF,MAAM,MAAM,oCAAoC,GAC9C,8BAA8B,GAAG;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEJ,eAAO,MAAM,+BAA+B,GAAI,qBAG7C,oCAAoC,4CAWtC,CAAC;AAIF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,MAAM,4BAA4B,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,IAAI;IACzE,mEAAmE;IACnE,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;IAC9B,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,MAAM,SAAS,MAAM,GAAG,MAAM,EAAE,4FAMrE,4BAA4B,CAAC,MAAM,CAAC,mDA0DtC,CAAC;AAIF,MAAM,MAAM,mBAAmB,GAAG;IAChC,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,gEAAgE;IAChE,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,GAAI,0FAQtC,6BAA6B,mDA6D/B,CAAC;AAIF,MAAM,MAAM,WAAW,GAAG;IACxB,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,yEAAyE;IACzE,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAOF;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,GAAI,4FAMpC,2BAA2B,4CAqC7B,CAAC;AAIF,MAAM,MAAM,0BAA0B,GAAG;IACvC,uBAAuB;IACvB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,GAAI,4FAMnC,0BAA0B,4CAqC5B,CAAC;AAIF,MAAM,MAAM,4BAA4B,GAAG;IACzC,wEAAwE;IACxE,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yEAAyE;IACzE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,GAAI,uFAQrC,4BAA4B,mDAoD9B,CAAC;AAIF,MAAM,MAAM,yBAAyB,GAAG;IACtC,wCAAwC;IACxC,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,GAAI,sGAOlC,yBAAyB,4CAqC3B,CAAC;AAIF,MAAM,MAAM,0BAA0B,GAAG;IACvC,yCAAyC;IACzC,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,GAAI,sGAOnC,0BAA0B,4CAqC5B,CAAC;AAgBF,MAAM,MAAM,0BAA0B,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IACxE,IAAI,EAAE,cAAc,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,IAAI,EACJ,SAAS,EACT,GAAG,KAAK,EACT,EAAE,0BAA0B,2CAsE5B;AAID,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAC5C,cAAc,CAAC,cAAc,CAAC,EAC9B,UAAU,CACX,GAAG;IACF,QAAQ,EAAE,CAAC,UAAU,EAAE,cAAc,KAAK,SAAS,CAAC;CACrD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,2BAA2B,kDA0C7B;AAID,KAAK,yBAAyB,GAAG,WAAW,GAAG;IAC7C,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,IAAI,IAAI,CAAC;IACd,IAAI,IAAI,IAAI,CAAC;CACd,CAAC;AAaF,KAAK,4BAA4B,GAAG,UAAU,yBAAyB,CAAC;AAExE,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,iBAAiB,CAAC,EAAE,4BAA4B,CAAC;QACjD,uBAAuB,CAAC,EAAE,4BAA4B,CAAC;KACxD;CACF;AAID,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAC7C,sBAAsB,EACtB,YAAY,CACb,GAAG;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,SAAS,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IACpD,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAAI,sFAMrC,4BAA4B,mDAgG9B,CAAC;AAIF,MAAM,MAAM,4BAA4B,GAAG,IAAI,CAC7C,sBAAsB,EACtB,YAAY,CACb,GAAG;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAAI,kDAIrC,4BAA4B,4CAoB9B,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Store } from '@tanstack/store';
|
|
2
|
+
import { AttachmentFile, PromptInputDisplayContext, PromptInputRequestContext, PromptInputSubmitPayload } from './types';
|
|
3
|
+
export type PromptInputRequestController<TExt extends Record<string, unknown> = Record<string, unknown>> = {
|
|
4
|
+
/** Outbound stores (user-edited). */
|
|
5
|
+
request: Store<PromptInputRequestContext<TExt>>;
|
|
6
|
+
/** Inbound stores (harness-pushed). */
|
|
7
|
+
display: Store<PromptInputDisplayContext>;
|
|
8
|
+
/** Imperative helpers. */
|
|
9
|
+
setRequestField: <K extends keyof PromptInputRequestContext<TExt>>(key: K, value: PromptInputRequestContext<TExt>[K]) => void;
|
|
10
|
+
setDisplayField: <K extends keyof PromptInputDisplayContext>(key: K, value: PromptInputDisplayContext[K]) => void;
|
|
11
|
+
/** Attachment helpers (common enough to warrant first-class methods). */
|
|
12
|
+
addAttachments: (files: AttachmentFile[]) => void;
|
|
13
|
+
removeAttachment: (id: string) => void;
|
|
14
|
+
clearAttachments: () => void;
|
|
15
|
+
/** Reset request state (clears text + files; keeps mode/model). */
|
|
16
|
+
resetRequest: () => void;
|
|
17
|
+
/** Snapshot the current request context (for onSubmit). */
|
|
18
|
+
snapshot: () => PromptInputSubmitPayload<TExt>;
|
|
19
|
+
};
|
|
20
|
+
export type CreatePromptInputRequestControllerOptions<TExt extends Record<string, unknown> = Record<string, unknown>> = {
|
|
21
|
+
initialRequest?: Partial<PromptInputRequestContext<TExt>>;
|
|
22
|
+
initialDisplay?: Partial<PromptInputDisplayContext>;
|
|
23
|
+
};
|
|
24
|
+
export declare function createPromptInputRequestController<TExt extends Record<string, unknown> = Record<string, unknown>>(options?: CreatePromptInputRequestControllerOptions<TExt>): PromptInputRequestController<TExt>;
|
|
25
|
+
export declare const PromptInputRequestControllerProvider: import('react').Provider<PromptInputRequestController<any> | null>;
|
|
26
|
+
export declare function usePromptInputRequestController<TExt extends Record<string, unknown> = Record<string, unknown>>(): PromptInputRequestController<TExt>;
|
|
27
|
+
/** Optional variant — returns null if no controller is in context. */
|
|
28
|
+
export declare function useOptionalPromptInputRequestController<TExt extends Record<string, unknown> = Record<string, unknown>>(): PromptInputRequestController<TExt> | null;
|
|
29
|
+
/**
|
|
30
|
+
* Subscribe to one field of the request context. Component re-renders only
|
|
31
|
+
* when that field changes.
|
|
32
|
+
*/
|
|
33
|
+
export declare function useRequestField<K extends keyof PromptInputRequestContext<TExt>, TExt extends Record<string, unknown> = Record<string, unknown>>(key: K): PromptInputRequestContext<TExt>[K];
|
|
34
|
+
/** Returns a stable setter for one field of the request context. */
|
|
35
|
+
export declare function useSetRequestField<K extends keyof PromptInputRequestContext<TExt>, TExt extends Record<string, unknown> = Record<string, unknown>>(key: K): (value: PromptInputRequestContext<TExt>[K]) => void;
|
|
36
|
+
/**
|
|
37
|
+
* Subscribe to one field of the display context. Component re-renders only
|
|
38
|
+
* when that field changes.
|
|
39
|
+
*/
|
|
40
|
+
export declare function useDisplayField<K extends keyof PromptInputDisplayContext>(key: K): PromptInputDisplayContext[K];
|
|
41
|
+
//# sourceMappingURL=controller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-prompt-input/controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
export { PromptInput, PromptInputProvider, PromptInputBody, PromptInputBackLayer, PromptInputTextarea, PromptInputToolbar, PromptInputTools, PromptInputButton, PromptInputSubmit, PromptInputActionMenu, PromptInputActionMenuTrigger, PromptInputActionMenuContent, PromptInputActionMenuItem, PromptInputActionAddAttachments, PromptInputModeSelector, PromptInputAttachment, PromptInputAttachments, PromptInputSpeechButton, PromptInputAttachButton, usePromptInputController, useProviderAttachments, usePromptInputAttachments, SF_AI_PROMPT_INPUT_VARIANTS, SF_AI_PROMPT_INPUT_DEFAULT_VARIANTS, type PromptInputProps, type PromptInputProviderProps, type PromptInputBodyProps, type PromptInputTextareaProps, type PromptInputToolbarProps, type PromptInputToolsProps, type PromptInputButtonProps, type PromptInputSubmitProps, type PromptInputActionMenuProps, type PromptInputActionMenuTriggerProps, type PromptInputActionMenuContentProps, type PromptInputActionMenuItemProps, type PromptInputActionAddAttachmentsProps, type PromptInputModeSelectorProps, type PromptInputAttachmentProps, type PromptInputAttachmentsProps, type PromptInputSpeechButtonProps, type PromptInputAttachButtonProps, type PromptInputMessage, type PromptInputController, type AttachmentFile, type AttachmentsContext, type TextInputContext, type SFAiPromptInputStatus, type PromptInputBackLayerProps, } from './ai-prompt-input';
|
|
1
|
+
export { PromptInput, PromptInputProvider, PromptInputBody, PromptInputBackLayer, PromptInputTextarea, PromptInputToolbar, PromptInputTools, PromptInputButton, PromptInputSubmit, PromptInputActionMenu, PromptInputActionMenuTrigger, PromptInputActionMenuContent, PromptInputActionMenuItem, PromptInputActionAddAttachments, PromptInputModeSelector, PromptInputModeSelect, PromptInputModelSelect, PromptInputCompactSelect, PromptInputModeCycle, PromptInputModelCycle, PromptInputCompactCycle, PromptInputAttachment, PromptInputAttachments, PromptInputSpeechButton, PromptInputAttachButton, usePromptInputController, useProviderAttachments, usePromptInputAttachments, SF_AI_PROMPT_INPUT_VARIANTS, SF_AI_PROMPT_INPUT_DEFAULT_VARIANTS, type PromptInputProps, type PromptInputProviderProps, type PromptInputBodyProps, type PromptInputTextareaProps, type PromptInputToolbarProps, type PromptInputToolsProps, type PromptInputButtonProps, type PromptInputSubmitProps, type PromptInputActionMenuProps, type PromptInputActionMenuTriggerProps, type PromptInputActionMenuContentProps, type PromptInputActionMenuItemProps, type PromptInputActionAddAttachmentsProps, type PromptInputModeSelectorProps, type PromptInputModeSelectProps, type PromptInputModelSelectProps, type PromptInputCompactSelectProps, type PromptInputModeCycleProps, type PromptInputModelCycleProps, type PromptInputCompactCycleProps, type CompactSelectOption, type ModelOption, type PromptInputAttachmentProps, type PromptInputAttachmentsProps, type PromptInputSpeechButtonProps, type PromptInputAttachButtonProps, type PromptInputMessage, type PromptInputController, type AttachmentFile, type AttachmentsContext, type TextInputContext, type SFAiPromptInputStatus, type PromptInputBackLayerProps, } from './ai-prompt-input';
|
|
2
|
+
export { createPromptInputRequestController, PromptInputRequestControllerProvider, usePromptInputRequestController, useOptionalPromptInputRequestController, useRequestField, useSetRequestField, useDisplayField, type PromptInputRequestController, type CreatePromptInputRequestControllerOptions, } from './controller';
|
|
3
|
+
export type { PromptInputRequestContext, PromptInputDisplayContext, ModeOption, } from './types';
|
|
2
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-prompt-input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,EAC5B,yBAAyB,EACzB,+BAA+B,EAC/B,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,EACzB,2BAA2B,EAC3B,mCAAmC,EACnC,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAC/B,KAAK,iCAAiC,EACtC,KAAK,iCAAiC,EACtC,KAAK,8BAA8B,EACnC,KAAK,oCAAoC,EACzC,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,GAC/B,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-prompt-input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,EAC5B,yBAAyB,EACzB,+BAA+B,EAC/B,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,EACzB,2BAA2B,EAC3B,mCAAmC,EACnC,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAC/B,KAAK,iCAAiC,EACtC,KAAK,iCAAiC,EACtC,KAAK,8BAA8B,EACnC,KAAK,oCAAoC,EACzC,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,6BAA6B,EAClC,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,GAC/B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,kCAAkC,EAClC,oCAAoC,EACpC,+BAA+B,EAC/B,uCAAuC,EACvC,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,KAAK,4BAA4B,EACjC,KAAK,yCAAyC,GAC/C,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,yBAAyB,EACzB,yBAAyB,EACzB,UAAU,GACX,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export type AttachmentFile = {
|
|
3
|
+
id: string;
|
|
4
|
+
url: string;
|
|
5
|
+
mediaType: string;
|
|
6
|
+
filename: string;
|
|
7
|
+
};
|
|
8
|
+
export type SendStatus = "idle" | "submitted" | "streaming" | "error";
|
|
9
|
+
/**
|
|
10
|
+
* A single option in a mode/model selector. `TValue` is usually a string
|
|
11
|
+
* literal union (e.g. `'build' | 'plan' | 'research'`) when the consumer
|
|
12
|
+
* knows their set of ids.
|
|
13
|
+
*/
|
|
14
|
+
export type SelectOption<TValue extends string = string> = {
|
|
15
|
+
value: TValue;
|
|
16
|
+
label: string;
|
|
17
|
+
description?: string;
|
|
18
|
+
icon?: ReactNode;
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
};
|
|
21
|
+
export type ModeOption<TValue extends string = string> = SelectOption<TValue>;
|
|
22
|
+
export type ModelOption<TValue extends string = string> = SelectOption<TValue>;
|
|
23
|
+
export type TaskStatus = "pending" | "in-progress" | "completed" | "failed";
|
|
24
|
+
export type TaskItem = {
|
|
25
|
+
id: string;
|
|
26
|
+
content: string;
|
|
27
|
+
status: TaskStatus;
|
|
28
|
+
};
|
|
29
|
+
export type QuestionChoice<TValue extends string = string> = {
|
|
30
|
+
value: TValue;
|
|
31
|
+
label: string;
|
|
32
|
+
description?: string;
|
|
33
|
+
};
|
|
34
|
+
export type HitlQuestion<TChoiceValue extends string = string> = {
|
|
35
|
+
id: string;
|
|
36
|
+
prompt: string;
|
|
37
|
+
choices?: QuestionChoice<TChoiceValue>[];
|
|
38
|
+
/** If true, caller expects free-text input rather than choice selection. */
|
|
39
|
+
allowFreeform?: boolean;
|
|
40
|
+
};
|
|
41
|
+
export type HitlPlan = {
|
|
42
|
+
id: string;
|
|
43
|
+
title?: string;
|
|
44
|
+
summary?: string;
|
|
45
|
+
/** Optional rich body (rendered by consumer, e.g. markdown). */
|
|
46
|
+
body?: ReactNode;
|
|
47
|
+
};
|
|
48
|
+
export type UsageInfo = {
|
|
49
|
+
inputTokens?: number;
|
|
50
|
+
outputTokens?: number;
|
|
51
|
+
totalTokens?: number;
|
|
52
|
+
/** Optional cost in USD. */
|
|
53
|
+
costUsd?: number;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* The outbound payload — fields the user is actively editing and that get
|
|
57
|
+
* sent on submit. `TExt` lets consumers extend with their own fields
|
|
58
|
+
* (e.g. temperature, tool selection) without patching this type.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* type MyCtx = PromptInputRequestContext<{ temperature: number }>;
|
|
62
|
+
*/
|
|
63
|
+
export type PromptInputRequestContext<TExt extends Record<string, unknown> = Record<string, unknown>> = {
|
|
64
|
+
text: string;
|
|
65
|
+
files: AttachmentFile[];
|
|
66
|
+
mode?: string;
|
|
67
|
+
model?: string;
|
|
68
|
+
} & TExt;
|
|
69
|
+
/**
|
|
70
|
+
* Inbound display state — fields the harness writes into the prompt input
|
|
71
|
+
* for sub-components to read (status badges, back-layer tasks, pending HITL).
|
|
72
|
+
*/
|
|
73
|
+
export type PromptInputDisplayContext = {
|
|
74
|
+
sendStatus: SendStatus;
|
|
75
|
+
tasks?: TaskItem[];
|
|
76
|
+
taskListTitle?: string;
|
|
77
|
+
pendingQuestion?: HitlQuestion;
|
|
78
|
+
pendingPlan?: HitlPlan;
|
|
79
|
+
usage?: UsageInfo;
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* What `onSubmit` receives — the full request context snapshot. Consumers
|
|
83
|
+
* pick what they need.
|
|
84
|
+
*/
|
|
85
|
+
export type PromptInputSubmitPayload<TExt extends Record<string, unknown> = Record<string, unknown>> = PromptInputRequestContext<TExt>;
|
|
86
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/ai-prompt-input/types.ts"],"names":[],"mappings":"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"}
|