@flanksource/clicky-ui 0.3.41 → 0.3.43
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/ai.cjs +4 -0
- package/dist/ai.cjs.map +1 -1
- package/dist/ai.js +4 -0
- package/dist/ai.js.map +1 -1
- package/dist/comments/CommentCard.cjs +3 -1
- package/dist/comments/CommentCard.cjs.map +1 -1
- package/dist/comments/CommentCard.d.ts.map +1 -1
- package/dist/comments/CommentCard.js +4 -2
- package/dist/comments/CommentCard.js.map +1 -1
- package/dist/comments/CommentCardParts.cjs +16 -0
- package/dist/comments/CommentCardParts.cjs.map +1 -1
- package/dist/comments/CommentCardParts.d.ts +4 -1
- package/dist/comments/CommentCardParts.d.ts.map +1 -1
- package/dist/comments/CommentCardParts.js +16 -0
- package/dist/comments/CommentCardParts.js.map +1 -1
- package/dist/comments/comment-types.cjs.map +1 -1
- package/dist/comments/comment-types.d.ts +4 -0
- package/dist/comments/comment-types.d.ts.map +1 -1
- package/dist/comments/comment-types.js.map +1 -1
- package/dist/components/Combobox.cjs +54 -8
- package/dist/components/Combobox.cjs.map +1 -1
- package/dist/components/Combobox.d.ts.map +1 -1
- package/dist/components/Combobox.js +56 -10
- package/dist/components/Combobox.js.map +1 -1
- package/dist/components/ComboboxMenu.cjs +139 -113
- package/dist/components/ComboboxMenu.cjs.map +1 -1
- package/dist/components/ComboboxMenu.d.ts +3 -1
- package/dist/components/ComboboxMenu.d.ts.map +1 -1
- package/dist/components/ComboboxMenu.js +139 -113
- package/dist/components/ComboboxMenu.js.map +1 -1
- package/dist/components/ComboboxMenuTrigger.cjs +87 -0
- package/dist/components/ComboboxMenuTrigger.cjs.map +1 -0
- package/dist/components/ComboboxMenuTrigger.d.ts +23 -0
- package/dist/components/ComboboxMenuTrigger.d.ts.map +1 -0
- package/dist/components/ComboboxMenuTrigger.js +87 -0
- package/dist/components/ComboboxMenuTrigger.js.map +1 -0
- package/dist/components/JsonSchemaForm.cjs +30 -7
- package/dist/components/JsonSchemaForm.cjs.map +1 -1
- package/dist/components/JsonSchemaForm.d.ts.map +1 -1
- package/dist/components/JsonSchemaForm.js +30 -7
- package/dist/components/JsonSchemaForm.js.map +1 -1
- package/dist/components/SegmentedControl.cjs +20 -3
- package/dist/components/SegmentedControl.cjs.map +1 -1
- package/dist/components/SegmentedControl.d.ts +11 -0
- package/dist/components/SegmentedControl.d.ts.map +1 -1
- package/dist/components/SegmentedControl.js +21 -4
- package/dist/components/SegmentedControl.js.map +1 -1
- package/dist/components/combobox-types.d.ts +8 -0
- package/dist/components/combobox-types.d.ts.map +1 -1
- package/dist/components/json-schema-form-debug-badge.cjs +108 -0
- package/dist/components/json-schema-form-debug-badge.cjs.map +1 -0
- package/dist/components/json-schema-form-debug-badge.d.ts +10 -0
- package/dist/components/json-schema-form-debug-badge.d.ts.map +1 -0
- package/dist/components/json-schema-form-debug-badge.js +108 -0
- package/dist/components/json-schema-form-debug-badge.js.map +1 -0
- package/dist/components/json-schema-form-debug-glyph-map.cjs +129 -0
- package/dist/components/json-schema-form-debug-glyph-map.cjs.map +1 -0
- package/dist/components/json-schema-form-debug-glyph-map.d.ts +20 -0
- package/dist/components/json-schema-form-debug-glyph-map.d.ts.map +1 -0
- package/dist/components/json-schema-form-debug-glyph-map.js +129 -0
- package/dist/components/json-schema-form-debug-glyph-map.js.map +1 -0
- package/dist/components/json-schema-form-debug-glyph.cjs +13 -0
- package/dist/components/json-schema-form-debug-glyph.cjs.map +1 -0
- package/dist/components/json-schema-form-debug-glyph.d.ts +6 -0
- package/dist/components/json-schema-form-debug-glyph.d.ts.map +1 -0
- package/dist/components/json-schema-form-debug-glyph.js +13 -0
- package/dist/components/json-schema-form-debug-glyph.js.map +1 -0
- package/dist/components/json-schema-form-debug-groups.cjs +56 -0
- package/dist/components/json-schema-form-debug-groups.cjs.map +1 -0
- package/dist/components/json-schema-form-debug-groups.d.ts +8 -0
- package/dist/components/json-schema-form-debug-groups.d.ts.map +1 -0
- package/dist/components/json-schema-form-debug-groups.js +56 -0
- package/dist/components/json-schema-form-debug-groups.js.map +1 -0
- package/dist/components/json-schema-form-debug-keywords.cjs +159 -0
- package/dist/components/json-schema-form-debug-keywords.cjs.map +1 -0
- package/dist/components/json-schema-form-debug-keywords.d.ts +6 -0
- package/dist/components/json-schema-form-debug-keywords.d.ts.map +1 -0
- package/dist/components/json-schema-form-debug-keywords.js +159 -0
- package/dist/components/json-schema-form-debug-keywords.js.map +1 -0
- package/dist/components/json-schema-form-debug-listeners.cjs +102 -0
- package/dist/components/json-schema-form-debug-listeners.cjs.map +1 -0
- package/dist/components/json-schema-form-debug-listeners.d.ts +6 -0
- package/dist/components/json-schema-form-debug-listeners.d.ts.map +1 -0
- package/dist/components/json-schema-form-debug-listeners.js +102 -0
- package/dist/components/json-schema-form-debug-listeners.js.map +1 -0
- package/dist/components/json-schema-form-debug.cjs +31 -0
- package/dist/components/json-schema-form-debug.cjs.map +1 -0
- package/dist/components/json-schema-form-debug.d.ts +11 -0
- package/dist/components/json-schema-form-debug.d.ts.map +1 -0
- package/dist/components/json-schema-form-debug.js +31 -0
- package/dist/components/json-schema-form-debug.js.map +1 -0
- package/dist/components/json-schema-form-enum-choice.cjs +114 -0
- package/dist/components/json-schema-form-enum-choice.cjs.map +1 -0
- package/dist/components/json-schema-form-enum-choice.d.ts +14 -0
- package/dist/components/json-schema-form-enum-choice.d.ts.map +1 -0
- package/dist/components/json-schema-form-enum-choice.js +114 -0
- package/dist/components/json-schema-form-enum-choice.js.map +1 -0
- package/dist/components/json-schema-form-fields.cjs +3 -93
- package/dist/components/json-schema-form-fields.cjs.map +1 -1
- package/dist/components/json-schema-form-fields.d.ts.map +1 -1
- package/dist/components/json-schema-form-fields.js +1 -91
- package/dist/components/json-schema-form-fields.js.map +1 -1
- package/dist/components/json-schema-form-listeners.cjs +7 -1
- package/dist/components/json-schema-form-listeners.cjs.map +1 -1
- package/dist/components/json-schema-form-listeners.d.ts.map +1 -1
- package/dist/components/json-schema-form-listeners.js +7 -1
- package/dist/components/json-schema-form-listeners.js.map +1 -1
- package/dist/components/json-schema-form-preferences.cjs +1 -0
- package/dist/components/json-schema-form-preferences.cjs.map +1 -1
- package/dist/components/json-schema-form-preferences.d.ts +1 -0
- package/dist/components/json-schema-form-preferences.d.ts.map +1 -1
- package/dist/components/json-schema-form-preferences.js +1 -0
- package/dist/components/json-schema-form-preferences.js.map +1 -1
- package/dist/components/json-schema-form-render.cjs +21 -5
- package/dist/components/json-schema-form-render.cjs.map +1 -1
- package/dist/components/json-schema-form-render.d.ts.map +1 -1
- package/dist/components/json-schema-form-render.js +21 -5
- package/dist/components/json-schema-form-render.js.map +1 -1
- package/dist/components/json-schema-form-runtime-types.d.ts +1 -0
- package/dist/components/json-schema-form-runtime-types.d.ts.map +1 -1
- package/dist/components/json-schema-form-tone.cjs +12 -0
- package/dist/components/json-schema-form-tone.cjs.map +1 -1
- package/dist/components/json-schema-form-tone.js +12 -0
- package/dist/components/json-schema-form-tone.js.map +1 -1
- package/dist/components/json-schema-form-types.d.ts +1 -0
- package/dist/components/json-schema-form-types.d.ts.map +1 -1
- package/dist/data/GraphDiagram.cjs +125 -138
- package/dist/data/GraphDiagram.cjs.map +1 -1
- package/dist/data/GraphDiagram.d.ts +30 -23
- package/dist/data/GraphDiagram.d.ts.map +1 -1
- package/dist/data/GraphDiagram.js +128 -141
- package/dist/data/GraphDiagram.js.map +1 -1
- package/dist/data/GraphDiagramEdges.cjs +208 -0
- package/dist/data/GraphDiagramEdges.cjs.map +1 -0
- package/dist/data/GraphDiagramEdges.d.ts +40 -0
- package/dist/data/GraphDiagramEdges.d.ts.map +1 -0
- package/dist/data/GraphDiagramEdges.js +208 -0
- package/dist/data/GraphDiagramEdges.js.map +1 -0
- package/dist/data/GraphDiagramNodes.cjs +142 -0
- package/dist/data/GraphDiagramNodes.cjs.map +1 -0
- package/dist/data/GraphDiagramNodes.d.ts +22 -0
- package/dist/data/GraphDiagramNodes.d.ts.map +1 -0
- package/dist/data/GraphDiagramNodes.js +142 -0
- package/dist/data/GraphDiagramNodes.js.map +1 -0
- package/dist/data/ai/PromptRunEditor/RuntimeRows.cjs +8 -3
- package/dist/data/ai/PromptRunEditor/RuntimeRows.cjs.map +1 -1
- package/dist/data/ai/PromptRunEditor/RuntimeRows.d.ts.map +1 -1
- package/dist/data/ai/PromptRunEditor/RuntimeRows.js +8 -3
- package/dist/data/ai/PromptRunEditor/RuntimeRows.js.map +1 -1
- package/dist/data/ai/PromptRunEditor/index.cjs +37 -43
- package/dist/data/ai/PromptRunEditor/index.cjs.map +1 -1
- package/dist/data/ai/PromptRunEditor/index.d.ts +3 -1
- package/dist/data/ai/PromptRunEditor/index.d.ts.map +1 -1
- package/dist/data/ai/PromptRunEditor/index.js +38 -44
- package/dist/data/ai/PromptRunEditor/index.js.map +1 -1
- package/dist/data/ai/PromptRunEditor/runtimeActions.cjs +16 -5
- package/dist/data/ai/PromptRunEditor/runtimeActions.cjs.map +1 -1
- package/dist/data/ai/PromptRunEditor/runtimeActions.d.ts +4 -1
- package/dist/data/ai/PromptRunEditor/runtimeActions.d.ts.map +1 -1
- package/dist/data/ai/PromptRunEditor/runtimeActions.js +17 -6
- package/dist/data/ai/PromptRunEditor/runtimeActions.js.map +1 -1
- package/dist/data/ai/SessionInspector.approvals-model.cjs +12 -0
- package/dist/data/ai/SessionInspector.approvals-model.cjs.map +1 -1
- package/dist/data/ai/SessionInspector.approvals-model.d.ts +11 -2
- package/dist/data/ai/SessionInspector.approvals-model.d.ts.map +1 -1
- package/dist/data/ai/SessionInspector.approvals-model.js +12 -0
- package/dist/data/ai/SessionInspector.approvals-model.js.map +1 -1
- package/dist/data/ai/SessionInspector.approvals.cjs +25 -1
- package/dist/data/ai/SessionInspector.approvals.cjs.map +1 -1
- package/dist/data/ai/SessionInspector.approvals.d.ts.map +1 -1
- package/dist/data/ai/SessionInspector.approvals.js +26 -2
- package/dist/data/ai/SessionInspector.approvals.js.map +1 -1
- package/dist/data/ai/SessionInspector.summary.cjs +9 -3
- package/dist/data/ai/SessionInspector.summary.cjs.map +1 -1
- package/dist/data/ai/SessionInspector.summary.d.ts.map +1 -1
- package/dist/data/ai/SessionInspector.summary.js +9 -3
- package/dist/data/ai/SessionInspector.summary.js.map +1 -1
- package/dist/data/ai/SessionInspector.transcript.cjs +4 -0
- package/dist/data/ai/SessionInspector.transcript.cjs.map +1 -1
- package/dist/data/ai/SessionInspector.transcript.d.ts.map +1 -1
- package/dist/data/ai/SessionInspector.transcript.js +4 -0
- package/dist/data/ai/SessionInspector.transcript.js.map +1 -1
- package/dist/data/ai/SessionViewer.approval-body.cjs +146 -0
- package/dist/data/ai/SessionViewer.approval-body.cjs.map +1 -0
- package/dist/data/ai/SessionViewer.approval-body.d.ts +11 -0
- package/dist/data/ai/SessionViewer.approval-body.d.ts.map +1 -0
- package/dist/data/ai/SessionViewer.approval-body.js +146 -0
- package/dist/data/ai/SessionViewer.approval-body.js.map +1 -0
- package/dist/data/ai/SessionViewer.approval-forms.cjs +150 -0
- package/dist/data/ai/SessionViewer.approval-forms.cjs.map +1 -0
- package/dist/data/ai/SessionViewer.approval-forms.d.ts +23 -0
- package/dist/data/ai/SessionViewer.approval-forms.d.ts.map +1 -0
- package/dist/data/ai/SessionViewer.approval-forms.js +150 -0
- package/dist/data/ai/SessionViewer.approval-forms.js.map +1 -0
- package/dist/data/ai/SessionViewer.cjs +57 -20
- package/dist/data/ai/SessionViewer.cjs.map +1 -1
- package/dist/data/ai/SessionViewer.d.ts +13 -3
- package/dist/data/ai/SessionViewer.d.ts.map +1 -1
- package/dist/data/ai/SessionViewer.decision-controls.cjs +313 -0
- package/dist/data/ai/SessionViewer.decision-controls.cjs.map +1 -0
- package/dist/data/ai/SessionViewer.decision-controls.d.ts +43 -0
- package/dist/data/ai/SessionViewer.decision-controls.d.ts.map +1 -0
- package/dist/data/ai/SessionViewer.decision-controls.js +313 -0
- package/dist/data/ai/SessionViewer.decision-controls.js.map +1 -0
- package/dist/data/ai/SessionViewer.decision.cjs +21 -0
- package/dist/data/ai/SessionViewer.decision.cjs.map +1 -0
- package/dist/data/ai/SessionViewer.decision.d.ts +12 -0
- package/dist/data/ai/SessionViewer.decision.d.ts.map +1 -0
- package/dist/data/ai/SessionViewer.decision.js +21 -0
- package/dist/data/ai/SessionViewer.decision.js.map +1 -0
- package/dist/data/ai/SessionViewer.input.cjs +14 -0
- package/dist/data/ai/SessionViewer.input.cjs.map +1 -1
- package/dist/data/ai/SessionViewer.input.d.ts +5 -0
- package/dist/data/ai/SessionViewer.input.d.ts.map +1 -1
- package/dist/data/ai/SessionViewer.input.js +14 -0
- package/dist/data/ai/SessionViewer.input.js.map +1 -1
- package/dist/data/ai/SessionViewer.js +58 -21
- package/dist/data/ai/SessionViewer.js.map +1 -1
- package/dist/data/ai/SessionViewer.model.cjs.map +1 -1
- package/dist/data/ai/SessionViewer.model.d.ts +4 -0
- package/dist/data/ai/SessionViewer.model.d.ts.map +1 -1
- package/dist/data/ai/SessionViewer.model.js.map +1 -1
- package/dist/data/ai/SessionViewer.rows.cjs +6 -3
- package/dist/data/ai/SessionViewer.rows.cjs.map +1 -1
- package/dist/data/ai/SessionViewer.rows.d.ts +2 -1
- package/dist/data/ai/SessionViewer.rows.d.ts.map +1 -1
- package/dist/data/ai/SessionViewer.rows.js +6 -3
- package/dist/data/ai/SessionViewer.rows.js.map +1 -1
- package/dist/data/ai/SessionViewer.tool-row.cjs +29 -237
- package/dist/data/ai/SessionViewer.tool-row.cjs.map +1 -1
- package/dist/data/ai/SessionViewer.tool-row.d.ts.map +1 -1
- package/dist/data/ai/SessionViewer.tool-row.js +27 -235
- package/dist/data/ai/SessionViewer.tool-row.js.map +1 -1
- package/dist/data/ai/SessionViewer.unified.d.ts +4 -0
- package/dist/data/ai/SessionViewer.unified.d.ts.map +1 -1
- package/dist/data/ai/SessionViewerMenu.cjs +8 -2
- package/dist/data/ai/SessionViewerMenu.cjs.map +1 -1
- package/dist/data/ai/SessionViewerMenu.d.ts +4 -1
- package/dist/data/ai/SessionViewerMenu.d.ts.map +1 -1
- package/dist/data/ai/SessionViewerMenu.js +8 -2
- package/dist/data/ai/SessionViewerMenu.js.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.cjs +28 -17
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.d.ts +10 -2
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.d.ts.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.js +29 -18
- package/dist/data/ai/SpecRuntimeEditor/CommitSection.js.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/index.cjs +9 -1
- package/dist/data/ai/SpecRuntimeEditor/index.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/index.d.ts +9 -2
- package/dist/data/ai/SpecRuntimeEditor/index.d.ts.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/index.js +9 -1
- package/dist/data/ai/SpecRuntimeEditor/index.js.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/permission-mode-visuals.cjs +1 -1
- package/dist/data/ai/SpecRuntimeEditor/permission-mode-visuals.js +1 -1
- package/dist/data/ai/SpecRuntimeEditor/summaries.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/summaries.d.ts +8 -2
- package/dist/data/ai/SpecRuntimeEditor/summaries.d.ts.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/summaries.js.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/update.cjs +14 -6
- package/dist/data/ai/SpecRuntimeEditor/update.cjs.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/update.d.ts +1 -0
- package/dist/data/ai/SpecRuntimeEditor/update.d.ts.map +1 -1
- package/dist/data/ai/SpecRuntimeEditor/update.js +14 -6
- package/dist/data/ai/SpecRuntimeEditor/update.js.map +1 -1
- package/dist/data/ai/approval-request.cjs +75 -0
- package/dist/data/ai/approval-request.cjs.map +1 -0
- package/dist/data/ai/approval-request.d.ts +155 -0
- package/dist/data/ai/approval-request.d.ts.map +1 -0
- package/dist/data/ai/approval-request.js +75 -0
- package/dist/data/ai/approval-request.js.map +1 -0
- package/dist/data/ai/index.d.ts +3 -0
- package/dist/data/ai/index.d.ts.map +1 -1
- package/dist/data/ai/runtime-preset-menu/SavePresetDialog.cjs +125 -0
- package/dist/data/ai/runtime-preset-menu/SavePresetDialog.cjs.map +1 -0
- package/dist/data/ai/runtime-preset-menu/SavePresetDialog.d.ts +11 -0
- package/dist/data/ai/runtime-preset-menu/SavePresetDialog.d.ts.map +1 -0
- package/dist/data/ai/runtime-preset-menu/SavePresetDialog.js +125 -0
- package/dist/data/ai/runtime-preset-menu/SavePresetDialog.js.map +1 -0
- package/dist/data/ai/runtime-preset-menu/index.d.ts +3 -0
- package/dist/data/ai/runtime-preset-menu/index.d.ts.map +1 -0
- package/dist/data/ai/runtime-preset-menu/model.cjs +73 -0
- package/dist/data/ai/runtime-preset-menu/model.cjs.map +1 -0
- package/dist/data/ai/runtime-preset-menu/model.d.ts +13 -0
- package/dist/data/ai/runtime-preset-menu/model.d.ts.map +1 -0
- package/dist/data/ai/runtime-preset-menu/model.js +73 -0
- package/dist/data/ai/runtime-preset-menu/model.js.map +1 -0
- package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.cjs +149 -0
- package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.cjs.map +1 -0
- package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.d.ts +15 -0
- package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.d.ts.map +1 -0
- package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.js +149 -0
- package/dist/data/ai/runtime-preset-menu/use-runtime-preset-menu.js.map +1 -0
- package/dist/data/ai/runtime-spec-fields.cjs +166 -0
- package/dist/data/ai/runtime-spec-fields.cjs.map +1 -0
- package/dist/data/ai/runtime-spec-fields.d.ts +13 -0
- package/dist/data/ai/runtime-spec-fields.d.ts.map +1 -0
- package/dist/data/ai/runtime-spec-fields.js +166 -0
- package/dist/data/ai/runtime-spec-fields.js.map +1 -0
- package/dist/data/ai/session-categories.cjs +4 -0
- package/dist/data/ai/session-categories.cjs.map +1 -1
- package/dist/data/ai/session-categories.d.ts +1 -0
- package/dist/data/ai/session-categories.d.ts.map +1 -1
- package/dist/data/ai/session-categories.js +4 -0
- package/dist/data/ai/session-categories.js.map +1 -1
- package/dist/data/ai/use-session-scroll.cjs +49 -21
- package/dist/data/ai/use-session-scroll.cjs.map +1 -1
- package/dist/data/ai/use-session-scroll.d.ts +2 -0
- package/dist/data/ai/use-session-scroll.d.ts.map +1 -1
- package/dist/data/ai/use-session-scroll.js +49 -21
- package/dist/data/ai/use-session-scroll.js.map +1 -1
- package/dist/data/chat/Chat.runtime.cjs +1 -1
- package/dist/data/chat/Chat.runtime.cjs.map +1 -1
- package/dist/data/chat/Chat.runtime.d.ts.map +1 -1
- package/dist/data/chat/Chat.runtime.js +1 -1
- package/dist/data/chat/Chat.runtime.js.map +1 -1
- package/dist/data/graph-columns-layout.cjs +216 -0
- package/dist/data/graph-columns-layout.cjs.map +1 -0
- package/dist/data/graph-columns-layout.d.ts +56 -0
- package/dist/data/graph-columns-layout.d.ts.map +1 -0
- package/dist/data/graph-columns-layout.js +216 -0
- package/dist/data/graph-columns-layout.js.map +1 -0
- package/dist/data/graph-diagram-model.cjs +73 -0
- package/dist/data/graph-diagram-model.cjs.map +1 -0
- package/dist/data/graph-diagram-model.d.ts +90 -0
- package/dist/data/graph-diagram-model.d.ts.map +1 -0
- package/dist/data/graph-diagram-model.js +73 -0
- package/dist/data/graph-diagram-model.js.map +1 -0
- package/dist/data/graph-edge-routing.cjs +235 -0
- package/dist/data/graph-edge-routing.cjs.map +1 -0
- package/dist/data/graph-edge-routing.d.ts +73 -0
- package/dist/data/graph-edge-routing.d.ts.map +1 -0
- package/dist/data/graph-edge-routing.js +235 -0
- package/dist/data/graph-edge-routing.js.map +1 -0
- package/dist/data/graph-layout.cjs +0 -82
- package/dist/data/graph-layout.cjs.map +1 -1
- package/dist/data/graph-layout.d.ts +1 -28
- package/dist/data/graph-layout.d.ts.map +1 -1
- package/dist/data/graph-layout.js +1 -83
- package/dist/data/graph-layout.js.map +1 -1
- package/dist/data/har/HarPanel.cjs +129 -33
- package/dist/data/har/HarPanel.cjs.map +1 -1
- package/dist/data/har/HarPanel.d.ts +13 -1
- package/dist/data/har/HarPanel.d.ts.map +1 -1
- package/dist/data/har/HarPanel.js +130 -34
- package/dist/data/har/HarPanel.js.map +1 -1
- package/dist/data/har/fixtures.d.ts +12 -0
- package/dist/data/har/fixtures.d.ts.map +1 -1
- package/dist/data/har/types.d.ts +12 -0
- package/dist/data/har/types.d.ts.map +1 -1
- package/dist/data/runtime/RuntimeBar.cjs +67 -84
- package/dist/data/runtime/RuntimeBar.cjs.map +1 -1
- package/dist/data/runtime/RuntimeBar.d.ts +4 -5
- package/dist/data/runtime/RuntimeBar.d.ts.map +1 -1
- package/dist/data/runtime/RuntimeBar.fields.cjs +170 -0
- package/dist/data/runtime/RuntimeBar.fields.cjs.map +1 -0
- package/dist/data/runtime/RuntimeBar.fields.d.ts +16 -0
- package/dist/data/runtime/RuntimeBar.fields.d.ts.map +1 -0
- package/dist/data/runtime/RuntimeBar.fields.js +170 -0
- package/dist/data/runtime/RuntimeBar.fields.js.map +1 -0
- package/dist/data/runtime/RuntimeBar.js +70 -87
- package/dist/data/runtime/RuntimeBar.js.map +1 -1
- package/dist/data/runtime/RuntimeBar.selection.cjs +56 -0
- package/dist/data/runtime/RuntimeBar.selection.cjs.map +1 -0
- package/dist/data/runtime/RuntimeBar.selection.d.ts +20 -0
- package/dist/data/runtime/RuntimeBar.selection.d.ts.map +1 -0
- package/dist/data/runtime/RuntimeBar.selection.js +56 -0
- package/dist/data/runtime/RuntimeBar.selection.js.map +1 -0
- package/dist/data/runtime/RuntimeBarActions.cjs +10 -6
- package/dist/data/runtime/RuntimeBarActions.cjs.map +1 -1
- package/dist/data/runtime/RuntimeBarActions.d.ts +8 -1
- package/dist/data/runtime/RuntimeBarActions.d.ts.map +1 -1
- package/dist/data/runtime/RuntimeBarActions.js +10 -6
- package/dist/data/runtime/RuntimeBarActions.js.map +1 -1
- package/dist/data/runtime/RuntimeBarIdentity.cjs +166 -0
- package/dist/data/runtime/RuntimeBarIdentity.cjs.map +1 -0
- package/dist/data/runtime/RuntimeBarIdentity.d.ts +25 -0
- package/dist/data/runtime/RuntimeBarIdentity.d.ts.map +1 -0
- package/dist/data/runtime/RuntimeBarIdentity.js +166 -0
- package/dist/data/runtime/RuntimeBarIdentity.js.map +1 -0
- package/dist/data/runtime/RuntimeBarLayout.cjs +95 -0
- package/dist/data/runtime/RuntimeBarLayout.cjs.map +1 -0
- package/dist/data/runtime/RuntimeBarLayout.d.ts +9 -0
- package/dist/data/runtime/RuntimeBarLayout.d.ts.map +1 -0
- package/dist/data/runtime/RuntimeBarLayout.js +95 -0
- package/dist/data/runtime/RuntimeBarLayout.js.map +1 -0
- package/dist/data/runtime/RuntimeBarSegment.cjs +25 -14
- package/dist/data/runtime/RuntimeBarSegment.cjs.map +1 -1
- package/dist/data/runtime/RuntimeBarSegment.d.ts +4 -0
- package/dist/data/runtime/RuntimeBarSegment.d.ts.map +1 -1
- package/dist/data/runtime/RuntimeBarSegment.js +25 -14
- package/dist/data/runtime/RuntimeBarSegment.js.map +1 -1
- package/dist/data/runtime/RuntimeLimitInput.cjs +41 -0
- package/dist/data/runtime/RuntimeLimitInput.cjs.map +1 -0
- package/dist/data/runtime/RuntimeLimitInput.d.ts +9 -0
- package/dist/data/runtime/RuntimeLimitInput.d.ts.map +1 -0
- package/dist/data/runtime/RuntimeLimitInput.js +41 -0
- package/dist/data/runtime/RuntimeLimitInput.js.map +1 -0
- package/dist/data/runtime/use-runtime-bar-overflow.cjs +70 -0
- package/dist/data/runtime/use-runtime-bar-overflow.cjs.map +1 -0
- package/dist/data/runtime/use-runtime-bar-overflow.d.ts +13 -0
- package/dist/data/runtime/use-runtime-bar-overflow.d.ts.map +1 -0
- package/dist/data/runtime/use-runtime-bar-overflow.js +70 -0
- package/dist/data/runtime/use-runtime-bar-overflow.js.map +1 -0
- package/dist/data/use-edge-focus.cjs +20 -0
- package/dist/data/use-edge-focus.cjs.map +1 -0
- package/dist/data/use-edge-focus.d.ts +23 -0
- package/dist/data/use-edge-focus.d.ts.map +1 -0
- package/dist/data/use-edge-focus.js +20 -0
- package/dist/data/use-edge-focus.js.map +1 -0
- package/dist/data/use-pan-zoom.cjs +159 -0
- package/dist/data/use-pan-zoom.cjs.map +1 -0
- package/dist/data/use-pan-zoom.d.ts +79 -0
- package/dist/data/use-pan-zoom.d.ts.map +1 -0
- package/dist/data/use-pan-zoom.js +159 -0
- package/dist/data/use-pan-zoom.js.map +1 -0
- package/dist/data/version-info.cjs +3 -3
- package/dist/data/version-info.js +3 -3
- package/dist/data.cjs +5 -1
- package/dist/data.cjs.map +1 -1
- package/dist/data.d.ts +4 -3
- package/dist/data.d.ts.map +1 -1
- package/dist/data.js +6 -2
- package/dist/data.js.map +1 -1
- package/dist/index.cjs +5 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/overlay/DropdownMenu.cjs +1 -0
- package/dist/overlay/DropdownMenu.cjs.map +1 -1
- package/dist/overlay/DropdownMenu.d.ts +4 -0
- package/dist/overlay/DropdownMenu.d.ts.map +1 -1
- package/dist/overlay/DropdownMenu.js +1 -0
- package/dist/overlay/DropdownMenu.js.map +1 -1
- package/dist/overlay/DropdownMenuSubmenu.cjs +31 -15
- package/dist/overlay/DropdownMenuSubmenu.cjs.map +1 -1
- package/dist/overlay/DropdownMenuSubmenu.d.ts.map +1 -1
- package/dist/overlay/DropdownMenuSubmenu.js +31 -15
- package/dist/overlay/DropdownMenuSubmenu.js.map +1 -1
- package/dist/profiles/fields/profileFieldFilterEditor.cjs +5 -2
- package/dist/profiles/fields/profileFieldFilterEditor.cjs.map +1 -1
- package/dist/profiles/fields/profileFieldFilterEditor.js +5 -2
- package/dist/profiles/fields/profileFieldFilterEditor.js.map +1 -1
- package/dist/profiles/fields/profileFieldIcons.cjs +2 -0
- package/dist/profiles/fields/profileFieldIcons.cjs.map +1 -1
- package/dist/profiles/fields/profileFieldIcons.d.ts.map +1 -1
- package/dist/profiles/fields/profileFieldIcons.js +2 -0
- package/dist/profiles/fields/profileFieldIcons.js.map +1 -1
- package/dist/profiles/wizard/profileWizardModel.cjs +1 -0
- package/dist/profiles/wizard/profileWizardModel.cjs.map +1 -1
- package/dist/profiles/wizard/profileWizardModel.d.ts +3 -0
- package/dist/profiles/wizard/profileWizardModel.d.ts.map +1 -1
- package/dist/profiles/wizard/profileWizardModel.js +1 -0
- package/dist/profiles/wizard/profileWizardModel.js.map +1 -1
- package/dist/rpc/OperationCatalog.cjs +3 -1
- package/dist/rpc/OperationCatalog.cjs.map +1 -1
- package/dist/rpc/OperationCatalog.d.ts +3 -1
- package/dist/rpc/OperationCatalog.d.ts.map +1 -1
- package/dist/rpc/OperationCatalog.js +3 -1
- package/dist/rpc/OperationCatalog.js.map +1 -1
- package/dist/rpc/useOperationPages.cjs +6 -1
- package/dist/rpc/useOperationPages.cjs.map +1 -1
- package/dist/rpc/useOperationPages.d.ts +3 -1
- package/dist/rpc/useOperationPages.d.ts.map +1 -1
- package/dist/rpc/useOperationPages.js +6 -1
- package/dist/rpc/useOperationPages.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +1 -1
- package/schemas/json-schema-form.schema.json +5 -0
- package/dist/data/runtime/RuntimeBarCombo.cjs +0 -423
- package/dist/data/runtime/RuntimeBarCombo.cjs.map +0 -1
- package/dist/data/runtime/RuntimeBarCombo.d.ts +0 -33
- package/dist/data/runtime/RuntimeBarCombo.d.ts.map +0 -1
- package/dist/data/runtime/RuntimeBarCombo.js +0 -423
- package/dist/data/runtime/RuntimeBarCombo.js.map +0 -1
- package/dist/data/runtime/RuntimeBarLimits.cjs +0 -262
- package/dist/data/runtime/RuntimeBarLimits.cjs.map +0 -1
- package/dist/data/runtime/RuntimeBarLimits.d.ts +0 -17
- package/dist/data/runtime/RuntimeBarLimits.d.ts.map +0 -1
- package/dist/data/runtime/RuntimeBarLimits.js +0 -262
- package/dist/data/runtime/RuntimeBarLimits.js.map +0 -1
- package/dist/data/runtime/RuntimeBarSegments.cjs +0 -346
- package/dist/data/runtime/RuntimeBarSegments.cjs.map +0 -1
- package/dist/data/runtime/RuntimeBarSegments.d.ts +0 -37
- package/dist/data/runtime/RuntimeBarSegments.d.ts.map +0 -1
- package/dist/data/runtime/RuntimeBarSegments.js +0 -346
- package/dist/data/runtime/RuntimeBarSegments.js.map +0 -1
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useState, useRef } from "react";
|
|
3
|
+
import { newPresetRecord, presetForRef } from "../../../lib/runtime-profile-model.js";
|
|
4
|
+
import { Modal } from "../../../overlay/Modal.js";
|
|
5
|
+
import { assertRuntimePresetSpec } from "../runtime-profile.js";
|
|
6
|
+
import { presetsField } from "../PromptRunEditor/runtimeActions.js";
|
|
7
|
+
import { OrderedPresetSelect } from "../runtime-profiles/OrderedPresetSelect.js";
|
|
8
|
+
import { runtimeBarPresetSpec, withRuntimePresetSelection } from "./model.js";
|
|
9
|
+
import { SavePresetDialog } from "./SavePresetDialog.js";
|
|
10
|
+
import { UiLayers } from "../../../icons/components/UiLayers.js";
|
|
11
|
+
import { UiSave } from "../../../icons/components/UiSave.js";
|
|
12
|
+
function useRuntimePresetMenu(options) {
|
|
13
|
+
const [ordering, setOrdering] = useState(false);
|
|
14
|
+
const [draft, setDraft] = useState();
|
|
15
|
+
const [created, setCreated] = useState([]);
|
|
16
|
+
const [saving, setSaving] = useState(false);
|
|
17
|
+
const [error, setError] = useState();
|
|
18
|
+
const pending = useRef(false);
|
|
19
|
+
const latest = useRef(options);
|
|
20
|
+
latest.current = options;
|
|
21
|
+
const catalog = [
|
|
22
|
+
...options.presets,
|
|
23
|
+
...created.filter(
|
|
24
|
+
(preset) => !options.presets.some((entry) => entry.id === preset.id)
|
|
25
|
+
)
|
|
26
|
+
];
|
|
27
|
+
const select = (selected) => options.onChange(
|
|
28
|
+
withRuntimePresetSelection({
|
|
29
|
+
value: options.value,
|
|
30
|
+
selected,
|
|
31
|
+
catalog
|
|
32
|
+
})
|
|
33
|
+
);
|
|
34
|
+
const field = presetsField({
|
|
35
|
+
presets: catalog,
|
|
36
|
+
value: options.value.presets,
|
|
37
|
+
onChange: select,
|
|
38
|
+
onReorder: () => setOrdering(true)
|
|
39
|
+
});
|
|
40
|
+
const save = async (next) => {
|
|
41
|
+
if (pending.current) return;
|
|
42
|
+
pending.current = true;
|
|
43
|
+
setSaving(true);
|
|
44
|
+
setError(void 0);
|
|
45
|
+
try {
|
|
46
|
+
if (!options.onCreatePreset)
|
|
47
|
+
throw new Error("Saving presets is unavailable");
|
|
48
|
+
const saved = await options.onCreatePreset(next);
|
|
49
|
+
if (!saved.id.trim() || !saved.name.trim())
|
|
50
|
+
throw new Error("Saved preset must have an id and name");
|
|
51
|
+
assertRuntimePresetSpec(saved.spec, "saved preset spec");
|
|
52
|
+
setCreated((records) => [
|
|
53
|
+
...records.filter((preset) => preset.id !== saved.id),
|
|
54
|
+
saved
|
|
55
|
+
]);
|
|
56
|
+
const current = latest.current.value;
|
|
57
|
+
const alreadySelected = current.presets.some(
|
|
58
|
+
(ref) => {
|
|
59
|
+
var _a;
|
|
60
|
+
return ref === saved.id || ((_a = presetForRef(ref, [...catalog, saved])) == null ? void 0 : _a.id) === saved.id;
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
latest.current.onChange({
|
|
64
|
+
...current,
|
|
65
|
+
presets: alreadySelected ? current.presets : [...current.presets, saved.id]
|
|
66
|
+
});
|
|
67
|
+
setDraft(void 0);
|
|
68
|
+
} catch (cause) {
|
|
69
|
+
setError(cause instanceof Error ? cause.message : String(cause));
|
|
70
|
+
} finally {
|
|
71
|
+
pending.current = false;
|
|
72
|
+
setSaving(false);
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
const menu = [
|
|
76
|
+
{
|
|
77
|
+
label: "Presets",
|
|
78
|
+
icon: UiLayers,
|
|
79
|
+
iconClassName: "text-muted-foreground",
|
|
80
|
+
children: field.items.length > 0 ? field.items : [
|
|
81
|
+
{
|
|
82
|
+
label: "No presets yet",
|
|
83
|
+
disabled: true,
|
|
84
|
+
onSelect: () => {
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
],
|
|
88
|
+
onSelect: () => {
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
];
|
|
92
|
+
if (options.onCreatePreset)
|
|
93
|
+
menu.push({
|
|
94
|
+
label: "Save as preset…",
|
|
95
|
+
icon: UiSave,
|
|
96
|
+
iconClassName: "text-muted-foreground",
|
|
97
|
+
onSelect: () => {
|
|
98
|
+
setError(void 0);
|
|
99
|
+
setDraft({
|
|
100
|
+
...newPresetRecord(catalog, crypto.randomUUID()),
|
|
101
|
+
spec: runtimeBarPresetSpec(options.value.spec)
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
return {
|
|
106
|
+
menu,
|
|
107
|
+
dialogs: /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
108
|
+
/* @__PURE__ */ jsx(
|
|
109
|
+
Modal,
|
|
110
|
+
{
|
|
111
|
+
open: ordering,
|
|
112
|
+
onClose: () => setOrdering(false),
|
|
113
|
+
title: "Presets",
|
|
114
|
+
size: "lg",
|
|
115
|
+
closeOnEsc: true,
|
|
116
|
+
children: /* @__PURE__ */ jsx(
|
|
117
|
+
OrderedPresetSelect,
|
|
118
|
+
{
|
|
119
|
+
presets: catalog,
|
|
120
|
+
value: options.value.presets,
|
|
121
|
+
onChange: select
|
|
122
|
+
}
|
|
123
|
+
)
|
|
124
|
+
}
|
|
125
|
+
),
|
|
126
|
+
draft && /* @__PURE__ */ jsx(
|
|
127
|
+
SavePresetDialog,
|
|
128
|
+
{
|
|
129
|
+
draft,
|
|
130
|
+
catalog,
|
|
131
|
+
saving,
|
|
132
|
+
error,
|
|
133
|
+
onChange: (next) => {
|
|
134
|
+
setDraft(next);
|
|
135
|
+
setError(void 0);
|
|
136
|
+
},
|
|
137
|
+
onSave: (next) => void save(next),
|
|
138
|
+
onClose: () => {
|
|
139
|
+
if (!pending.current) setDraft(void 0);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
)
|
|
143
|
+
] })
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
export {
|
|
147
|
+
useRuntimePresetMenu
|
|
148
|
+
};
|
|
149
|
+
//# sourceMappingURL=use-runtime-preset-menu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-runtime-preset-menu.js","sources":["../../../../src/data/ai/runtime-preset-menu/use-runtime-preset-menu.tsx"],"sourcesContent":["import { useRef, useState, type ReactNode } from \"react\";\nimport { UiLayers, UiSave } from \"../../../icons\";\nimport {\n newPresetRecord,\n presetForRef,\n} from \"../../../lib/runtime-profile-model\";\nimport { Modal } from \"../../../overlay/Modal\";\nimport type { DropdownMenuItem } from \"../../../overlay/DropdownMenu\";\nimport {\n assertRuntimePresetSpec,\n type RuntimePreset,\n} from \"../runtime-profile\";\nimport { presetsField } from \"../PromptRunEditor/runtimeActions\";\nimport { OrderedPresetSelect } from \"../runtime-profiles/OrderedPresetSelect\";\nimport {\n runtimeBarPresetSpec,\n withRuntimePresetSelection,\n type RuntimePresetMenuValue,\n} from \"./model\";\nimport { SavePresetDialog } from \"./SavePresetDialog\";\n\nexport type RuntimePresetMenuOptions = {\n value: RuntimePresetMenuValue;\n onChange: (next: RuntimePresetMenuValue) => void;\n presets: RuntimePreset[];\n onCreatePreset?:\n | ((draft: RuntimePreset) => Promise<RuntimePreset>)\n | undefined;\n};\n\nexport function useRuntimePresetMenu(options: RuntimePresetMenuOptions): {\n menu: DropdownMenuItem[];\n dialogs: ReactNode;\n} {\n const [ordering, setOrdering] = useState(false);\n const [draft, setDraft] = useState<RuntimePreset>();\n const [created, setCreated] = useState<RuntimePreset[]>([]);\n const [saving, setSaving] = useState(false);\n const [error, setError] = useState<string>();\n const pending = useRef(false);\n const latest = useRef(options);\n latest.current = options;\n const catalog = [\n ...options.presets,\n ...created.filter(\n (preset) => !options.presets.some((entry) => entry.id === preset.id),\n ),\n ];\n const select = (selected: string[]) =>\n options.onChange(\n withRuntimePresetSelection({\n value: options.value,\n selected,\n catalog,\n }),\n );\n const field = presetsField({\n presets: catalog,\n value: options.value.presets,\n onChange: select,\n onReorder: () => setOrdering(true),\n });\n const save = async (next: RuntimePreset) => {\n if (pending.current) return;\n pending.current = true;\n setSaving(true);\n setError(undefined);\n try {\n if (!options.onCreatePreset)\n throw new Error(\"Saving presets is unavailable\");\n const saved = await options.onCreatePreset(next);\n if (!saved.id.trim() || !saved.name.trim())\n throw new Error(\"Saved preset must have an id and name\");\n assertRuntimePresetSpec(saved.spec, \"saved preset spec\");\n setCreated((records) => [\n ...records.filter((preset) => preset.id !== saved.id),\n saved,\n ]);\n const current = latest.current.value;\n const alreadySelected = current.presets.some(\n (ref) =>\n ref === saved.id ||\n presetForRef(ref, [...catalog, saved])?.id === saved.id,\n );\n latest.current.onChange({\n ...current,\n presets: alreadySelected\n ? current.presets\n : [...current.presets, saved.id],\n });\n setDraft(undefined);\n } catch (cause) {\n setError(cause instanceof Error ? cause.message : String(cause));\n } finally {\n pending.current = false;\n setSaving(false);\n }\n };\n const menu: DropdownMenuItem[] = [\n {\n label: \"Presets\",\n icon: UiLayers,\n iconClassName: \"text-muted-foreground\",\n children:\n field.items.length > 0\n ? field.items\n : [\n {\n label: \"No presets yet\",\n disabled: true,\n onSelect: () => {},\n },\n ],\n onSelect: () => {},\n },\n ];\n if (options.onCreatePreset)\n menu.push({\n label: \"Save as preset…\",\n icon: UiSave,\n iconClassName: \"text-muted-foreground\",\n onSelect: () => {\n setError(undefined);\n setDraft({\n ...newPresetRecord(catalog, crypto.randomUUID()),\n spec: runtimeBarPresetSpec(options.value.spec),\n });\n },\n });\n return {\n menu,\n dialogs: (\n <>\n <Modal\n open={ordering}\n onClose={() => setOrdering(false)}\n title=\"Presets\"\n size=\"lg\"\n closeOnEsc\n >\n <OrderedPresetSelect\n presets={catalog}\n value={options.value.presets}\n onChange={select}\n />\n </Modal>\n {draft && (\n <SavePresetDialog\n draft={draft}\n catalog={catalog}\n saving={saving}\n error={error}\n onChange={(next) => {\n setDraft(next);\n setError(undefined);\n }}\n onSave={(next) => void save(next)}\n onClose={() => {\n if (!pending.current) setDraft(undefined);\n }}\n />\n )}\n </>\n ),\n };\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const InputField = require("../../components/InputField.cjs");
|
|
5
|
+
const Icon = require("../Icon.cjs");
|
|
6
|
+
const RuntimeBarSegment = require("../runtime/RuntimeBarSegment.cjs");
|
|
7
|
+
const unspecified = require("../runtime/unspecified.cjs");
|
|
8
|
+
const runtimeActions = require("./PromptRunEditor/runtimeActions.cjs");
|
|
9
|
+
const update = require("./SpecRuntimeEditor/update.cjs");
|
|
10
|
+
const UiGitBranch = require("../../icons/components/UiGitBranch.cjs");
|
|
11
|
+
const UiGitCommit = require("../../icons/components/UiGitCommit.cjs");
|
|
12
|
+
const SOURCE_OPTIONS = [
|
|
13
|
+
{ value: "new", label: "New worktree" },
|
|
14
|
+
{ value: "existing", label: "Existing worktree" },
|
|
15
|
+
{ value: "none", label: "HEAD" }
|
|
16
|
+
];
|
|
17
|
+
const COMMIT_OPTIONS = [
|
|
18
|
+
{ value: "none", label: "Never" },
|
|
19
|
+
{ value: "turn", label: "Every turn" },
|
|
20
|
+
{ value: "agent", label: "After the loop" },
|
|
21
|
+
{ value: "run", label: "End of run" }
|
|
22
|
+
];
|
|
23
|
+
function runtimeSpecFields({
|
|
24
|
+
value,
|
|
25
|
+
onChange,
|
|
26
|
+
families,
|
|
27
|
+
models = [],
|
|
28
|
+
effectiveMode,
|
|
29
|
+
effectiveModel
|
|
30
|
+
}) {
|
|
31
|
+
const permission = runtimeActions.permissionField({
|
|
32
|
+
spec: value,
|
|
33
|
+
families,
|
|
34
|
+
models,
|
|
35
|
+
effectiveMode,
|
|
36
|
+
effectiveModel,
|
|
37
|
+
onChange
|
|
38
|
+
});
|
|
39
|
+
return [
|
|
40
|
+
...permission ? [{ ...permission, label: "Permission mode" }] : [],
|
|
41
|
+
sourceField({ value, onChange }),
|
|
42
|
+
commitField({ value, onChange })
|
|
43
|
+
];
|
|
44
|
+
}
|
|
45
|
+
function sourceField({
|
|
46
|
+
value,
|
|
47
|
+
onChange
|
|
48
|
+
}) {
|
|
49
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
|
|
50
|
+
const mode = (_c = (_b = (_a = value.setup) == null ? void 0 : _a.checkout) == null ? void 0 : _b.worktree) == null ? void 0 : _c.mode;
|
|
51
|
+
const label = ((_d = SOURCE_OPTIONS.find((option) => option.value === mode)) == null ? void 0 : _d.label) ?? unspecified.UNSPECIFIED_LABEL;
|
|
52
|
+
return {
|
|
53
|
+
id: "setup.checkout.worktree.mode",
|
|
54
|
+
label: "Source",
|
|
55
|
+
title: `Source — ${label}`,
|
|
56
|
+
icon: UiGitBranch.UiGitBranch,
|
|
57
|
+
isSet: Boolean(mode),
|
|
58
|
+
caption: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
59
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: RuntimeBarSegment.SEGMENT_KEY_CLASS, children: "Source" }),
|
|
60
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61
|
+
Icon.Icon,
|
|
62
|
+
{
|
|
63
|
+
icon: UiGitBranch.UiGitBranch,
|
|
64
|
+
className: "size-4 shrink-0 text-muted-foreground"
|
|
65
|
+
}
|
|
66
|
+
),
|
|
67
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: RuntimeBarSegment.SEGMENT_CAPTION_CLASS, children: label })
|
|
68
|
+
] }),
|
|
69
|
+
...mode === "existing" || mode === "new" ? {
|
|
70
|
+
header: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid gap-1", children: [
|
|
71
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: RuntimeBarSegment.SEGMENT_KEY_CLASS, children: "Worktree path" }),
|
|
72
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
73
|
+
InputField.InputField,
|
|
74
|
+
{
|
|
75
|
+
"aria-label": "Worktree path",
|
|
76
|
+
value: ((_g = (_f = (_e = value.setup) == null ? void 0 : _e.checkout) == null ? void 0 : _f.worktree) == null ? void 0 : _g.path) ?? "",
|
|
77
|
+
invalid: mode === "existing" && !((_k = (_j = (_i = (_h = value.setup) == null ? void 0 : _h.checkout) == null ? void 0 : _i.worktree) == null ? void 0 : _j.path) == null ? void 0 : _k.trim()),
|
|
78
|
+
onChange: (path) => onChange(update.withWorktree(value, { path })),
|
|
79
|
+
inputClassName: "font-mono text-xs"
|
|
80
|
+
}
|
|
81
|
+
)
|
|
82
|
+
] })
|
|
83
|
+
} : {},
|
|
84
|
+
items: [
|
|
85
|
+
{
|
|
86
|
+
label: /* @__PURE__ */ jsxRuntime.jsx(
|
|
87
|
+
RuntimeBarSegment.SegmentItemLabel,
|
|
88
|
+
{
|
|
89
|
+
text: unspecified.UNSPECIFIED_LABEL,
|
|
90
|
+
hint: unspecified.unspecifiedHint(),
|
|
91
|
+
selected: !mode
|
|
92
|
+
}
|
|
93
|
+
),
|
|
94
|
+
onSelect: () => onChange(update.withWorktree(value, { mode: "" }))
|
|
95
|
+
},
|
|
96
|
+
...SOURCE_OPTIONS.map((option) => ({
|
|
97
|
+
label: /* @__PURE__ */ jsxRuntime.jsx(
|
|
98
|
+
RuntimeBarSegment.SegmentItemLabel,
|
|
99
|
+
{
|
|
100
|
+
text: option.label,
|
|
101
|
+
selected: mode === option.value
|
|
102
|
+
}
|
|
103
|
+
),
|
|
104
|
+
onSelect: () => onChange(update.withWorktreeMode(value, option.value))
|
|
105
|
+
}))
|
|
106
|
+
]
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
function commitField({
|
|
110
|
+
value,
|
|
111
|
+
onChange
|
|
112
|
+
}) {
|
|
113
|
+
var _a;
|
|
114
|
+
const isSet = ((_a = value.workflow) == null ? void 0 : _a.commits) !== void 0;
|
|
115
|
+
const phase = update.commitPhase(value);
|
|
116
|
+
const label = isSet ? COMMIT_OPTIONS.find((option) => option.value === phase).label : unspecified.UNSPECIFIED_LABEL;
|
|
117
|
+
return {
|
|
118
|
+
id: "workflow.commits",
|
|
119
|
+
label: "Commit",
|
|
120
|
+
title: `Commit — ${label}`,
|
|
121
|
+
icon: UiGitCommit.UiGitCommit,
|
|
122
|
+
isSet,
|
|
123
|
+
caption: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
124
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: RuntimeBarSegment.SEGMENT_KEY_CLASS, children: "Commit" }),
|
|
125
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
126
|
+
Icon.Icon,
|
|
127
|
+
{
|
|
128
|
+
icon: UiGitCommit.UiGitCommit,
|
|
129
|
+
className: "size-4 shrink-0 text-muted-foreground"
|
|
130
|
+
}
|
|
131
|
+
),
|
|
132
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: RuntimeBarSegment.SEGMENT_CAPTION_CLASS, children: label })
|
|
133
|
+
] }),
|
|
134
|
+
items: [
|
|
135
|
+
{
|
|
136
|
+
label: /* @__PURE__ */ jsxRuntime.jsx(
|
|
137
|
+
RuntimeBarSegment.SegmentItemLabel,
|
|
138
|
+
{
|
|
139
|
+
text: unspecified.UNSPECIFIED_LABEL,
|
|
140
|
+
hint: unspecified.unspecifiedHint(),
|
|
141
|
+
selected: !isSet
|
|
142
|
+
}
|
|
143
|
+
),
|
|
144
|
+
onSelect: () => {
|
|
145
|
+
const workflow = { ...value.workflow };
|
|
146
|
+
delete workflow.commits;
|
|
147
|
+
const next = { ...value, workflow };
|
|
148
|
+
if (Object.keys(workflow).length === 0) delete next.workflow;
|
|
149
|
+
onChange(next);
|
|
150
|
+
}
|
|
151
|
+
},
|
|
152
|
+
...COMMIT_OPTIONS.map((option) => ({
|
|
153
|
+
label: /* @__PURE__ */ jsxRuntime.jsx(
|
|
154
|
+
RuntimeBarSegment.SegmentItemLabel,
|
|
155
|
+
{
|
|
156
|
+
text: option.label,
|
|
157
|
+
selected: isSet && phase === option.value
|
|
158
|
+
}
|
|
159
|
+
),
|
|
160
|
+
onSelect: () => onChange(update.withCommitPhase(value, option.value))
|
|
161
|
+
}))
|
|
162
|
+
]
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
exports.runtimeSpecFields = runtimeSpecFields;
|
|
166
|
+
//# sourceMappingURL=runtime-spec-fields.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-spec-fields.cjs","sources":["../../../src/data/ai/runtime-spec-fields.tsx"],"sourcesContent":["import { InputField } from \"../../components/InputField\";\nimport { UiGitBranch, UiGitCommit } from \"../../icons\";\nimport { Icon } from \"../Icon\";\nimport type { ChatModel } from \"../chat/types\";\nimport type { RuntimeBarAction } from \"../runtime/RuntimeBarActions\";\nimport {\n SEGMENT_CAPTION_CLASS,\n SEGMENT_KEY_CLASS,\n SegmentItemLabel,\n} from \"../runtime/RuntimeBarSegment\";\nimport type { SpecRuntimeFamily } from \"../runtime/runtime-mode\";\nimport { UNSPECIFIED_LABEL, unspecifiedHint } from \"../runtime/unspecified\";\nimport { permissionField } from \"./PromptRunEditor/runtimeActions\";\nimport type {\n AISpecRuntimeValue,\n SpecCommitPhase,\n SpecWorktreeMode,\n} from \"./SpecRuntimeEditor.model\";\nimport {\n commitPhase,\n withCommitPhase,\n withWorktree,\n withWorktreeMode,\n} from \"./SpecRuntimeEditor/update\";\n\nconst SOURCE_OPTIONS: { value: SpecWorktreeMode; label: string }[] = [\n { value: \"new\", label: \"New worktree\" },\n { value: \"existing\", label: \"Existing worktree\" },\n { value: \"none\", label: \"HEAD\" },\n];\nconst COMMIT_OPTIONS: { value: SpecCommitPhase | \"none\"; label: string }[] = [\n { value: \"none\", label: \"Never\" },\n { value: \"turn\", label: \"Every turn\" },\n { value: \"agent\", label: \"After the loop\" },\n { value: \"run\", label: \"End of run\" },\n];\n\nexport function runtimeSpecFields({\n value,\n onChange,\n families,\n models = [],\n effectiveMode,\n effectiveModel,\n}: {\n value: AISpecRuntimeValue;\n onChange: (next: AISpecRuntimeValue) => void;\n families: SpecRuntimeFamily[];\n models?: ChatModel[];\n effectiveMode?: string | undefined;\n effectiveModel?: string | undefined;\n}): RuntimeBarAction[] {\n const permission = permissionField({\n spec: value,\n families,\n models,\n effectiveMode,\n effectiveModel,\n onChange,\n });\n return [\n ...(permission ? [{ ...permission, label: \"Permission mode\" }] : []),\n sourceField({ value, onChange }),\n commitField({ value, onChange }),\n ];\n}\n\nfunction sourceField({\n value,\n onChange,\n}: {\n value: AISpecRuntimeValue;\n onChange: (next: AISpecRuntimeValue) => void;\n}): RuntimeBarAction {\n const mode = value.setup?.checkout?.worktree?.mode;\n const label =\n SOURCE_OPTIONS.find((option) => option.value === mode)?.label ??\n UNSPECIFIED_LABEL;\n return {\n id: \"setup.checkout.worktree.mode\",\n label: \"Source\",\n title: `Source — ${label}`,\n icon: UiGitBranch,\n isSet: Boolean(mode),\n caption: (\n <>\n <span className={SEGMENT_KEY_CLASS}>Source</span>\n <Icon\n icon={UiGitBranch}\n className=\"size-4 shrink-0 text-muted-foreground\"\n />\n <span className={SEGMENT_CAPTION_CLASS}>{label}</span>\n </>\n ),\n ...(mode === \"existing\" || mode === \"new\"\n ? {\n header: (\n <div className=\"grid gap-1\">\n <span className={SEGMENT_KEY_CLASS}>Worktree path</span>\n <InputField\n aria-label=\"Worktree path\"\n value={value.setup?.checkout?.worktree?.path ?? \"\"}\n invalid={\n mode === \"existing\" &&\n !value.setup?.checkout?.worktree?.path?.trim()\n }\n onChange={(path) => onChange(withWorktree(value, { path }))}\n inputClassName=\"font-mono text-xs\"\n />\n </div>\n ),\n }\n : {}),\n items: [\n {\n label: (\n <SegmentItemLabel\n text={UNSPECIFIED_LABEL}\n hint={unspecifiedHint()}\n selected={!mode}\n />\n ),\n onSelect: () => onChange(withWorktree(value, { mode: \"\" })),\n },\n ...SOURCE_OPTIONS.map((option) => ({\n label: (\n <SegmentItemLabel\n text={option.label}\n selected={mode === option.value}\n />\n ),\n onSelect: () => onChange(withWorktreeMode(value, option.value)),\n })),\n ],\n };\n}\n\nfunction commitField({\n value,\n onChange,\n}: {\n value: AISpecRuntimeValue;\n onChange: (next: AISpecRuntimeValue) => void;\n}): RuntimeBarAction {\n const isSet = value.workflow?.commits !== undefined;\n const phase = commitPhase(value);\n const label = isSet\n ? COMMIT_OPTIONS.find((option) => option.value === phase)!.label\n : UNSPECIFIED_LABEL;\n return {\n id: \"workflow.commits\",\n label: \"Commit\",\n title: `Commit — ${label}`,\n icon: UiGitCommit,\n isSet,\n caption: (\n <>\n <span className={SEGMENT_KEY_CLASS}>Commit</span>\n <Icon\n icon={UiGitCommit}\n className=\"size-4 shrink-0 text-muted-foreground\"\n />\n <span className={SEGMENT_CAPTION_CLASS}>{label}</span>\n </>\n ),\n items: [\n {\n label: (\n <SegmentItemLabel\n text={UNSPECIFIED_LABEL}\n hint={unspecifiedHint()}\n selected={!isSet}\n />\n ),\n onSelect: () => {\n const workflow = { ...value.workflow };\n delete workflow.commits;\n const next: AISpecRuntimeValue = { ...value, workflow };\n if (Object.keys(workflow).length === 0) delete next.workflow;\n onChange(next);\n },\n },\n ...COMMIT_OPTIONS.map((option) => ({\n label: (\n <SegmentItemLabel\n text={option.label}\n selected={isSet && phase === option.value}\n />\n ),\n onSelect: () => onChange(withCommitPhase(value, option.value)),\n })),\n ],\n };\n}\n"],"names":["permissionField","UNSPECIFIED_LABEL","UiGitBranch","jsxs","Fragment","jsx","SEGMENT_KEY_CLASS","Icon","SEGMENT_CAPTION_CLASS","InputField","withWorktree","SegmentItemLabel","unspecifiedHint","withWorktreeMode","commitPhase","UiGitCommit","withCommitPhase"],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ChatModel } from '../chat/types.js';
|
|
2
|
+
import { RuntimeBarAction } from '../runtime/RuntimeBarActions.js';
|
|
3
|
+
import { SpecRuntimeFamily } from '../runtime/runtime-mode.js';
|
|
4
|
+
import { AISpecRuntimeValue } from './SpecRuntimeEditor.model.js';
|
|
5
|
+
export declare function runtimeSpecFields({ value, onChange, families, models, effectiveMode, effectiveModel, }: {
|
|
6
|
+
value: AISpecRuntimeValue;
|
|
7
|
+
onChange: (next: AISpecRuntimeValue) => void;
|
|
8
|
+
families: SpecRuntimeFamily[];
|
|
9
|
+
models?: ChatModel[];
|
|
10
|
+
effectiveMode?: string | undefined;
|
|
11
|
+
effectiveModel?: string | undefined;
|
|
12
|
+
}): RuntimeBarAction[];
|
|
13
|
+
//# sourceMappingURL=runtime-spec-fields.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-spec-fields.d.ts","sourceRoot":"","sources":["../../../src/data/ai/runtime-spec-fields.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAMrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,OAAO,KAAK,EACV,kBAAkB,EAGnB,MAAM,2BAA2B,CAAC;AAoBnC,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,MAAW,EACX,aAAa,EACb,cAAc,GACf,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC7C,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC,GAAG,gBAAgB,EAAE,CAcrB"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { InputField } from "../../components/InputField.js";
|
|
3
|
+
import { Icon } from "../Icon.js";
|
|
4
|
+
import { SegmentItemLabel, SEGMENT_KEY_CLASS, SEGMENT_CAPTION_CLASS } from "../runtime/RuntimeBarSegment.js";
|
|
5
|
+
import { UNSPECIFIED_LABEL, unspecifiedHint } from "../runtime/unspecified.js";
|
|
6
|
+
import { permissionField } from "./PromptRunEditor/runtimeActions.js";
|
|
7
|
+
import { withWorktree, withWorktreeMode, commitPhase, withCommitPhase } from "./SpecRuntimeEditor/update.js";
|
|
8
|
+
import { UiGitBranch } from "../../icons/components/UiGitBranch.js";
|
|
9
|
+
import { UiGitCommit } from "../../icons/components/UiGitCommit.js";
|
|
10
|
+
const SOURCE_OPTIONS = [
|
|
11
|
+
{ value: "new", label: "New worktree" },
|
|
12
|
+
{ value: "existing", label: "Existing worktree" },
|
|
13
|
+
{ value: "none", label: "HEAD" }
|
|
14
|
+
];
|
|
15
|
+
const COMMIT_OPTIONS = [
|
|
16
|
+
{ value: "none", label: "Never" },
|
|
17
|
+
{ value: "turn", label: "Every turn" },
|
|
18
|
+
{ value: "agent", label: "After the loop" },
|
|
19
|
+
{ value: "run", label: "End of run" }
|
|
20
|
+
];
|
|
21
|
+
function runtimeSpecFields({
|
|
22
|
+
value,
|
|
23
|
+
onChange,
|
|
24
|
+
families,
|
|
25
|
+
models = [],
|
|
26
|
+
effectiveMode,
|
|
27
|
+
effectiveModel
|
|
28
|
+
}) {
|
|
29
|
+
const permission = permissionField({
|
|
30
|
+
spec: value,
|
|
31
|
+
families,
|
|
32
|
+
models,
|
|
33
|
+
effectiveMode,
|
|
34
|
+
effectiveModel,
|
|
35
|
+
onChange
|
|
36
|
+
});
|
|
37
|
+
return [
|
|
38
|
+
...permission ? [{ ...permission, label: "Permission mode" }] : [],
|
|
39
|
+
sourceField({ value, onChange }),
|
|
40
|
+
commitField({ value, onChange })
|
|
41
|
+
];
|
|
42
|
+
}
|
|
43
|
+
function sourceField({
|
|
44
|
+
value,
|
|
45
|
+
onChange
|
|
46
|
+
}) {
|
|
47
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
|
|
48
|
+
const mode = (_c = (_b = (_a = value.setup) == null ? void 0 : _a.checkout) == null ? void 0 : _b.worktree) == null ? void 0 : _c.mode;
|
|
49
|
+
const label = ((_d = SOURCE_OPTIONS.find((option) => option.value === mode)) == null ? void 0 : _d.label) ?? UNSPECIFIED_LABEL;
|
|
50
|
+
return {
|
|
51
|
+
id: "setup.checkout.worktree.mode",
|
|
52
|
+
label: "Source",
|
|
53
|
+
title: `Source — ${label}`,
|
|
54
|
+
icon: UiGitBranch,
|
|
55
|
+
isSet: Boolean(mode),
|
|
56
|
+
caption: /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
57
|
+
/* @__PURE__ */ jsx("span", { className: SEGMENT_KEY_CLASS, children: "Source" }),
|
|
58
|
+
/* @__PURE__ */ jsx(
|
|
59
|
+
Icon,
|
|
60
|
+
{
|
|
61
|
+
icon: UiGitBranch,
|
|
62
|
+
className: "size-4 shrink-0 text-muted-foreground"
|
|
63
|
+
}
|
|
64
|
+
),
|
|
65
|
+
/* @__PURE__ */ jsx("span", { className: SEGMENT_CAPTION_CLASS, children: label })
|
|
66
|
+
] }),
|
|
67
|
+
...mode === "existing" || mode === "new" ? {
|
|
68
|
+
header: /* @__PURE__ */ jsxs("div", { className: "grid gap-1", children: [
|
|
69
|
+
/* @__PURE__ */ jsx("span", { className: SEGMENT_KEY_CLASS, children: "Worktree path" }),
|
|
70
|
+
/* @__PURE__ */ jsx(
|
|
71
|
+
InputField,
|
|
72
|
+
{
|
|
73
|
+
"aria-label": "Worktree path",
|
|
74
|
+
value: ((_g = (_f = (_e = value.setup) == null ? void 0 : _e.checkout) == null ? void 0 : _f.worktree) == null ? void 0 : _g.path) ?? "",
|
|
75
|
+
invalid: mode === "existing" && !((_k = (_j = (_i = (_h = value.setup) == null ? void 0 : _h.checkout) == null ? void 0 : _i.worktree) == null ? void 0 : _j.path) == null ? void 0 : _k.trim()),
|
|
76
|
+
onChange: (path) => onChange(withWorktree(value, { path })),
|
|
77
|
+
inputClassName: "font-mono text-xs"
|
|
78
|
+
}
|
|
79
|
+
)
|
|
80
|
+
] })
|
|
81
|
+
} : {},
|
|
82
|
+
items: [
|
|
83
|
+
{
|
|
84
|
+
label: /* @__PURE__ */ jsx(
|
|
85
|
+
SegmentItemLabel,
|
|
86
|
+
{
|
|
87
|
+
text: UNSPECIFIED_LABEL,
|
|
88
|
+
hint: unspecifiedHint(),
|
|
89
|
+
selected: !mode
|
|
90
|
+
}
|
|
91
|
+
),
|
|
92
|
+
onSelect: () => onChange(withWorktree(value, { mode: "" }))
|
|
93
|
+
},
|
|
94
|
+
...SOURCE_OPTIONS.map((option) => ({
|
|
95
|
+
label: /* @__PURE__ */ jsx(
|
|
96
|
+
SegmentItemLabel,
|
|
97
|
+
{
|
|
98
|
+
text: option.label,
|
|
99
|
+
selected: mode === option.value
|
|
100
|
+
}
|
|
101
|
+
),
|
|
102
|
+
onSelect: () => onChange(withWorktreeMode(value, option.value))
|
|
103
|
+
}))
|
|
104
|
+
]
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
function commitField({
|
|
108
|
+
value,
|
|
109
|
+
onChange
|
|
110
|
+
}) {
|
|
111
|
+
var _a;
|
|
112
|
+
const isSet = ((_a = value.workflow) == null ? void 0 : _a.commits) !== void 0;
|
|
113
|
+
const phase = commitPhase(value);
|
|
114
|
+
const label = isSet ? COMMIT_OPTIONS.find((option) => option.value === phase).label : UNSPECIFIED_LABEL;
|
|
115
|
+
return {
|
|
116
|
+
id: "workflow.commits",
|
|
117
|
+
label: "Commit",
|
|
118
|
+
title: `Commit — ${label}`,
|
|
119
|
+
icon: UiGitCommit,
|
|
120
|
+
isSet,
|
|
121
|
+
caption: /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
122
|
+
/* @__PURE__ */ jsx("span", { className: SEGMENT_KEY_CLASS, children: "Commit" }),
|
|
123
|
+
/* @__PURE__ */ jsx(
|
|
124
|
+
Icon,
|
|
125
|
+
{
|
|
126
|
+
icon: UiGitCommit,
|
|
127
|
+
className: "size-4 shrink-0 text-muted-foreground"
|
|
128
|
+
}
|
|
129
|
+
),
|
|
130
|
+
/* @__PURE__ */ jsx("span", { className: SEGMENT_CAPTION_CLASS, children: label })
|
|
131
|
+
] }),
|
|
132
|
+
items: [
|
|
133
|
+
{
|
|
134
|
+
label: /* @__PURE__ */ jsx(
|
|
135
|
+
SegmentItemLabel,
|
|
136
|
+
{
|
|
137
|
+
text: UNSPECIFIED_LABEL,
|
|
138
|
+
hint: unspecifiedHint(),
|
|
139
|
+
selected: !isSet
|
|
140
|
+
}
|
|
141
|
+
),
|
|
142
|
+
onSelect: () => {
|
|
143
|
+
const workflow = { ...value.workflow };
|
|
144
|
+
delete workflow.commits;
|
|
145
|
+
const next = { ...value, workflow };
|
|
146
|
+
if (Object.keys(workflow).length === 0) delete next.workflow;
|
|
147
|
+
onChange(next);
|
|
148
|
+
}
|
|
149
|
+
},
|
|
150
|
+
...COMMIT_OPTIONS.map((option) => ({
|
|
151
|
+
label: /* @__PURE__ */ jsx(
|
|
152
|
+
SegmentItemLabel,
|
|
153
|
+
{
|
|
154
|
+
text: option.label,
|
|
155
|
+
selected: isSet && phase === option.value
|
|
156
|
+
}
|
|
157
|
+
),
|
|
158
|
+
onSelect: () => onChange(withCommitPhase(value, option.value))
|
|
159
|
+
}))
|
|
160
|
+
]
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
export {
|
|
164
|
+
runtimeSpecFields
|
|
165
|
+
};
|
|
166
|
+
//# sourceMappingURL=runtime-spec-fields.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-spec-fields.js","sources":["../../../src/data/ai/runtime-spec-fields.tsx"],"sourcesContent":["import { InputField } from \"../../components/InputField\";\nimport { UiGitBranch, UiGitCommit } from \"../../icons\";\nimport { Icon } from \"../Icon\";\nimport type { ChatModel } from \"../chat/types\";\nimport type { RuntimeBarAction } from \"../runtime/RuntimeBarActions\";\nimport {\n SEGMENT_CAPTION_CLASS,\n SEGMENT_KEY_CLASS,\n SegmentItemLabel,\n} from \"../runtime/RuntimeBarSegment\";\nimport type { SpecRuntimeFamily } from \"../runtime/runtime-mode\";\nimport { UNSPECIFIED_LABEL, unspecifiedHint } from \"../runtime/unspecified\";\nimport { permissionField } from \"./PromptRunEditor/runtimeActions\";\nimport type {\n AISpecRuntimeValue,\n SpecCommitPhase,\n SpecWorktreeMode,\n} from \"./SpecRuntimeEditor.model\";\nimport {\n commitPhase,\n withCommitPhase,\n withWorktree,\n withWorktreeMode,\n} from \"./SpecRuntimeEditor/update\";\n\nconst SOURCE_OPTIONS: { value: SpecWorktreeMode; label: string }[] = [\n { value: \"new\", label: \"New worktree\" },\n { value: \"existing\", label: \"Existing worktree\" },\n { value: \"none\", label: \"HEAD\" },\n];\nconst COMMIT_OPTIONS: { value: SpecCommitPhase | \"none\"; label: string }[] = [\n { value: \"none\", label: \"Never\" },\n { value: \"turn\", label: \"Every turn\" },\n { value: \"agent\", label: \"After the loop\" },\n { value: \"run\", label: \"End of run\" },\n];\n\nexport function runtimeSpecFields({\n value,\n onChange,\n families,\n models = [],\n effectiveMode,\n effectiveModel,\n}: {\n value: AISpecRuntimeValue;\n onChange: (next: AISpecRuntimeValue) => void;\n families: SpecRuntimeFamily[];\n models?: ChatModel[];\n effectiveMode?: string | undefined;\n effectiveModel?: string | undefined;\n}): RuntimeBarAction[] {\n const permission = permissionField({\n spec: value,\n families,\n models,\n effectiveMode,\n effectiveModel,\n onChange,\n });\n return [\n ...(permission ? [{ ...permission, label: \"Permission mode\" }] : []),\n sourceField({ value, onChange }),\n commitField({ value, onChange }),\n ];\n}\n\nfunction sourceField({\n value,\n onChange,\n}: {\n value: AISpecRuntimeValue;\n onChange: (next: AISpecRuntimeValue) => void;\n}): RuntimeBarAction {\n const mode = value.setup?.checkout?.worktree?.mode;\n const label =\n SOURCE_OPTIONS.find((option) => option.value === mode)?.label ??\n UNSPECIFIED_LABEL;\n return {\n id: \"setup.checkout.worktree.mode\",\n label: \"Source\",\n title: `Source — ${label}`,\n icon: UiGitBranch,\n isSet: Boolean(mode),\n caption: (\n <>\n <span className={SEGMENT_KEY_CLASS}>Source</span>\n <Icon\n icon={UiGitBranch}\n className=\"size-4 shrink-0 text-muted-foreground\"\n />\n <span className={SEGMENT_CAPTION_CLASS}>{label}</span>\n </>\n ),\n ...(mode === \"existing\" || mode === \"new\"\n ? {\n header: (\n <div className=\"grid gap-1\">\n <span className={SEGMENT_KEY_CLASS}>Worktree path</span>\n <InputField\n aria-label=\"Worktree path\"\n value={value.setup?.checkout?.worktree?.path ?? \"\"}\n invalid={\n mode === \"existing\" &&\n !value.setup?.checkout?.worktree?.path?.trim()\n }\n onChange={(path) => onChange(withWorktree(value, { path }))}\n inputClassName=\"font-mono text-xs\"\n />\n </div>\n ),\n }\n : {}),\n items: [\n {\n label: (\n <SegmentItemLabel\n text={UNSPECIFIED_LABEL}\n hint={unspecifiedHint()}\n selected={!mode}\n />\n ),\n onSelect: () => onChange(withWorktree(value, { mode: \"\" })),\n },\n ...SOURCE_OPTIONS.map((option) => ({\n label: (\n <SegmentItemLabel\n text={option.label}\n selected={mode === option.value}\n />\n ),\n onSelect: () => onChange(withWorktreeMode(value, option.value)),\n })),\n ],\n };\n}\n\nfunction commitField({\n value,\n onChange,\n}: {\n value: AISpecRuntimeValue;\n onChange: (next: AISpecRuntimeValue) => void;\n}): RuntimeBarAction {\n const isSet = value.workflow?.commits !== undefined;\n const phase = commitPhase(value);\n const label = isSet\n ? COMMIT_OPTIONS.find((option) => option.value === phase)!.label\n : UNSPECIFIED_LABEL;\n return {\n id: \"workflow.commits\",\n label: \"Commit\",\n title: `Commit — ${label}`,\n icon: UiGitCommit,\n isSet,\n caption: (\n <>\n <span className={SEGMENT_KEY_CLASS}>Commit</span>\n <Icon\n icon={UiGitCommit}\n className=\"size-4 shrink-0 text-muted-foreground\"\n />\n <span className={SEGMENT_CAPTION_CLASS}>{label}</span>\n </>\n ),\n items: [\n {\n label: (\n <SegmentItemLabel\n text={UNSPECIFIED_LABEL}\n hint={unspecifiedHint()}\n selected={!isSet}\n />\n ),\n onSelect: () => {\n const workflow = { ...value.workflow };\n delete workflow.commits;\n const next: AISpecRuntimeValue = { ...value, workflow };\n if (Object.keys(workflow).length === 0) delete next.workflow;\n onChange(next);\n },\n },\n ...COMMIT_OPTIONS.map((option) => ({\n label: (\n <SegmentItemLabel\n text={option.label}\n selected={isSet && phase === option.value}\n />\n ),\n onSelect: () => onChange(withCommitPhase(value, option.value)),\n })),\n ],\n };\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -214,6 +214,9 @@ function eventCategory(event) {
|
|
|
214
214
|
if (event.kind !== "tool") return null;
|
|
215
215
|
return classifyToolCategory(event.tool ?? "", event.toolInput);
|
|
216
216
|
}
|
|
217
|
+
function isEncryptedReasoning(event) {
|
|
218
|
+
return event.kind === "thinking" && /^\d+ encrypted reasoning records? (?:at|over) \S/.test(event.text ?? "");
|
|
219
|
+
}
|
|
217
220
|
function isEventVisible(event, v) {
|
|
218
221
|
if (event.pending) return true;
|
|
219
222
|
if (event.kind === "thinking") return v.showThinking;
|
|
@@ -249,5 +252,6 @@ exports.classifyCommand = classifyCommand;
|
|
|
249
252
|
exports.classifyToolCategory = classifyToolCategory;
|
|
250
253
|
exports.collectSessionFilters = collectSessionFilters;
|
|
251
254
|
exports.eventCategory = eventCategory;
|
|
255
|
+
exports.isEncryptedReasoning = isEncryptedReasoning;
|
|
252
256
|
exports.isEventVisible = isEventVisible;
|
|
253
257
|
//# sourceMappingURL=session-categories.cjs.map
|