@buoy-gg/ask-buoy 7.0.34 → 7.0.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -8
- package/lib/commonjs/blocks/AskBlocks.js +338 -1
- package/lib/commonjs/blocks/AskBlocks.js.map +1 -0
- package/lib/commonjs/blocks/BlockRenderer.js +262 -1
- package/lib/commonjs/blocks/BlockRenderer.js.map +1 -0
- package/lib/commonjs/blocks/ChromePrototypes.js +514 -1
- package/lib/commonjs/blocks/ChromePrototypes.js.map +1 -0
- package/lib/commonjs/blocks/DataBlocks.js +781 -1
- package/lib/commonjs/blocks/DataBlocks.js.map +1 -0
- package/lib/commonjs/blocks/ExtraBlocks.js +1860 -1
- package/lib/commonjs/blocks/ExtraBlocks.js.map +1 -0
- package/lib/commonjs/blocks/MediaBlocks.js +156 -1
- package/lib/commonjs/blocks/MediaBlocks.js.map +1 -0
- package/lib/commonjs/blocks/ReceiptBlocks.js +586 -1
- package/lib/commonjs/blocks/ReceiptBlocks.js.map +1 -0
- package/lib/commonjs/blocks/blockText.js +60 -0
- package/lib/commonjs/blocks/blockText.js.map +1 -0
- package/lib/commonjs/blocks/blockText.test.js +53 -0
- package/lib/commonjs/blocks/blockText.test.js.map +1 -0
- package/lib/commonjs/blocks/context.js +42 -1
- package/lib/commonjs/blocks/context.js.map +1 -0
- package/lib/commonjs/blocks/icons.js +96 -1
- package/lib/commonjs/blocks/icons.js.map +1 -0
- package/lib/commonjs/blocks/index.js +95 -1
- package/lib/commonjs/blocks/index.js.map +1 -0
- package/lib/commonjs/blocks/listRow.test.js +55 -0
- package/lib/commonjs/blocks/listRow.test.js.map +1 -0
- package/lib/commonjs/blocks/pageState.js +34 -0
- package/lib/commonjs/blocks/pageState.js.map +1 -0
- package/lib/commonjs/blocks/pageState.test.js +57 -0
- package/lib/commonjs/blocks/pageState.test.js.map +1 -0
- package/lib/commonjs/blocks/primitives.js +457 -1
- package/lib/commonjs/blocks/primitives.js.map +1 -0
- package/lib/commonjs/blocks/primitivesIndex.js +62 -1
- package/lib/commonjs/blocks/primitivesIndex.js.map +1 -0
- package/lib/commonjs/components/ApprovalCard.js +244 -1
- package/lib/commonjs/components/ApprovalCard.js.map +1 -0
- package/lib/commonjs/components/AskBuoyHeader.js +196 -1
- package/lib/commonjs/components/AskBuoyHeader.js.map +1 -0
- package/lib/commonjs/components/AskBuoyIcon.js +19 -1
- package/lib/commonjs/components/AskBuoyIcon.js.map +1 -0
- package/lib/commonjs/components/AskBuoyModal.js +479 -1
- package/lib/commonjs/components/AskBuoyModal.js.map +1 -0
- package/lib/commonjs/components/AskBuoySettings.js +119 -0
- package/lib/commonjs/components/AskBuoySettings.js.map +1 -0
- package/lib/commonjs/components/ChangesBar.js +211 -1
- package/lib/commonjs/components/ChangesBar.js.map +1 -0
- package/lib/commonjs/components/Composer.js +255 -1
- package/lib/commonjs/components/Composer.js.map +1 -0
- package/lib/commonjs/components/EmptyState.js +161 -1
- package/lib/commonjs/components/EmptyState.js.map +1 -0
- package/lib/commonjs/components/KeyboardPad.js +80 -0
- package/lib/commonjs/components/KeyboardPad.js.map +1 -0
- package/lib/commonjs/components/Markdown.js +310 -1
- package/lib/commonjs/components/Markdown.js.map +1 -0
- package/lib/commonjs/components/MessageList.js +930 -1
- package/lib/commonjs/components/MessageList.js.map +1 -0
- package/lib/commonjs/components/QueuedMessages.js +145 -0
- package/lib/commonjs/components/QueuedMessages.js.map +1 -0
- package/lib/commonjs/components/ThinkingStrip.js +223 -0
- package/lib/commonjs/components/ThinkingStrip.js.map +1 -0
- package/lib/commonjs/components/TypingDots.js +63 -1
- package/lib/commonjs/components/TypingDots.js.map +1 -0
- package/lib/commonjs/components/markdownParse.js +131 -0
- package/lib/commonjs/components/markdownParse.js.map +1 -0
- package/lib/commonjs/components/markdownParse.test.js +99 -0
- package/lib/commonjs/components/markdownParse.test.js.map +1 -0
- package/lib/commonjs/components/useCopyAction.js +50 -0
- package/lib/commonjs/components/useCopyAction.js.map +1 -0
- package/lib/commonjs/index.js +252 -1
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/preset.js +90 -1
- package/lib/commonjs/preset.js.map +1 -0
- package/lib/commonjs/store/activityGroups.js +110 -0
- package/lib/commonjs/store/activityGroups.js.map +1 -0
- package/lib/commonjs/store/activityGroups.test.js +78 -0
- package/lib/commonjs/store/activityGroups.test.js.map +1 -0
- package/lib/commonjs/store/askBuoySettings.js +72 -0
- package/lib/commonjs/store/askBuoySettings.js.map +1 -0
- package/lib/commonjs/store/askBuoyStore.js +547 -1
- package/lib/commonjs/store/askBuoyStore.js.map +1 -0
- package/lib/commonjs/store/blockPlacement.js +64 -0
- package/lib/commonjs/store/blockPlacement.js.map +1 -0
- package/lib/commonjs/store/blockPlacement.test.js +123 -0
- package/lib/commonjs/store/blockPlacement.test.js.map +1 -0
- package/lib/commonjs/store/queue.test.js +150 -0
- package/lib/commonjs/store/queue.test.js.map +1 -0
- package/lib/commonjs/store/resetConversation.js +77 -0
- package/lib/commonjs/store/resetConversation.js.map +1 -0
- package/lib/commonjs/store/restorePending.test.js +63 -0
- package/lib/commonjs/store/restorePending.test.js.map +1 -0
- package/lib/commonjs/store/restoredIds.test.js +47 -0
- package/lib/commonjs/store/restoredIds.test.js.map +1 -0
- package/lib/commonjs/store/suggestions.js +54 -0
- package/lib/commonjs/store/suggestions.js.map +1 -0
- package/lib/commonjs/store/suggestions.test.js +58 -0
- package/lib/commonjs/store/suggestions.test.js.map +1 -0
- package/lib/commonjs/store/systemLine.test.js +77 -0
- package/lib/commonjs/store/systemLine.test.js.map +1 -0
- package/lib/commonjs/store/ticketPrompt.js +17 -0
- package/lib/commonjs/store/ticketPrompt.js.map +1 -0
- package/lib/commonjs/store/traceText.js +81 -0
- package/lib/commonjs/store/traceText.js.map +1 -0
- package/lib/commonjs/store/traceText.test.js +112 -0
- package/lib/commonjs/store/traceText.test.js.map +1 -0
- package/lib/commonjs/store/transcriptPersistence.js +297 -0
- package/lib/commonjs/store/transcriptPersistence.js.map +1 -0
- package/lib/commonjs/store/transcriptPersistence.test.js +333 -0
- package/lib/commonjs/store/transcriptPersistence.test.js.map +1 -0
- package/lib/commonjs/store/turnRendering.test.js +151 -0
- package/lib/commonjs/store/turnRendering.test.js.map +1 -0
- package/lib/commonjs/store/useAskBuoy.js +622 -1
- package/lib/commonjs/store/useAskBuoy.js.map +1 -0
- package/lib/commonjs/store/useAskBuoySettings.js +14 -0
- package/lib/commonjs/store/useAskBuoySettings.js.map +1 -0
- package/lib/commonjs/sync/askBuoySyncAdapter.js +140 -1
- package/lib/commonjs/sync/askBuoySyncAdapter.js.map +1 -0
- package/lib/commonjs/sync/askBuoySyncAdapter.test.js +141 -1
- package/lib/commonjs/sync/askBuoySyncAdapter.test.js.map +1 -0
- package/lib/commonjs/sync/wire.js +58 -1
- package/lib/commonjs/sync/wire.js.map +1 -0
- package/lib/commonjs/types.js +6 -1
- package/lib/commonjs/types.js.map +1 -0
- package/lib/module/blocks/AskBlocks.js +331 -1
- package/lib/module/blocks/AskBlocks.js.map +1 -0
- package/lib/module/blocks/BlockRenderer.js +257 -1
- package/lib/module/blocks/BlockRenderer.js.map +1 -0
- package/lib/module/blocks/ChromePrototypes.js +503 -1
- package/lib/module/blocks/ChromePrototypes.js.map +1 -0
- package/lib/module/blocks/DataBlocks.js +767 -1
- package/lib/module/blocks/DataBlocks.js.map +1 -0
- package/lib/module/blocks/ExtraBlocks.js +1833 -1
- package/lib/module/blocks/ExtraBlocks.js.map +1 -0
- package/lib/module/blocks/MediaBlocks.js +151 -1
- package/lib/module/blocks/MediaBlocks.js.map +1 -0
- package/lib/module/blocks/ReceiptBlocks.js +574 -1
- package/lib/module/blocks/ReceiptBlocks.js.map +1 -0
- package/lib/module/blocks/blockText.js +55 -0
- package/lib/module/blocks/blockText.js.map +1 -0
- package/lib/module/blocks/blockText.test.js +53 -0
- package/lib/module/blocks/blockText.test.js.map +1 -0
- package/lib/module/blocks/context.js +35 -1
- package/lib/module/blocks/context.js.map +1 -0
- package/lib/module/blocks/icons.js +91 -1
- package/lib/module/blocks/icons.js.map +1 -0
- package/lib/module/blocks/index.js +8 -1
- package/lib/module/blocks/index.js.map +1 -0
- package/lib/module/blocks/listRow.test.js +56 -0
- package/lib/module/blocks/listRow.test.js.map +1 -0
- package/lib/module/blocks/pageState.js +30 -0
- package/lib/module/blocks/pageState.js.map +1 -0
- package/lib/module/blocks/pageState.test.js +56 -0
- package/lib/module/blocks/pageState.test.js.map +1 -0
- package/lib/module/blocks/primitives.js +445 -1
- package/lib/module/blocks/primitives.js.map +1 -0
- package/lib/module/blocks/primitivesIndex.js +5 -1
- package/lib/module/blocks/primitivesIndex.js.map +1 -0
- package/lib/module/components/ApprovalCard.js +239 -1
- package/lib/module/components/ApprovalCard.js.map +1 -0
- package/lib/module/components/AskBuoyHeader.js +193 -1
- package/lib/module/components/AskBuoyHeader.js.map +1 -0
- package/lib/module/components/AskBuoyIcon.js +8 -1
- package/lib/module/components/AskBuoyIcon.js.map +1 -0
- package/lib/module/components/AskBuoyModal.js +474 -1
- package/lib/module/components/AskBuoyModal.js.map +1 -0
- package/lib/module/components/AskBuoySettings.js +114 -0
- package/lib/module/components/AskBuoySettings.js.map +1 -0
- package/lib/module/components/ChangesBar.js +206 -1
- package/lib/module/components/ChangesBar.js.map +1 -0
- package/lib/module/components/Composer.js +250 -1
- package/lib/module/components/Composer.js.map +1 -0
- package/lib/module/components/EmptyState.js +156 -1
- package/lib/module/components/EmptyState.js.map +1 -0
- package/lib/module/components/KeyboardPad.js +75 -0
- package/lib/module/components/KeyboardPad.js.map +1 -0
- package/lib/module/components/Markdown.js +305 -1
- package/lib/module/components/Markdown.js.map +1 -0
- package/lib/module/components/MessageList.js +924 -1
- package/lib/module/components/MessageList.js.map +1 -0
- package/lib/module/components/QueuedMessages.js +140 -0
- package/lib/module/components/QueuedMessages.js.map +1 -0
- package/lib/module/components/ThinkingStrip.js +218 -0
- package/lib/module/components/ThinkingStrip.js.map +1 -0
- package/lib/module/components/TypingDots.js +58 -1
- package/lib/module/components/TypingDots.js.map +1 -0
- package/lib/module/components/markdownParse.js +125 -0
- package/lib/module/components/markdownParse.js.map +1 -0
- package/lib/module/components/markdownParse.test.js +98 -0
- package/lib/module/components/markdownParse.test.js.map +1 -0
- package/lib/module/components/useCopyAction.js +46 -0
- package/lib/module/components/useCopyAction.js.map +1 -0
- package/lib/module/index.js +34 -1
- package/lib/module/index.js.map +1 -0
- package/lib/module/preset.js +73 -1
- package/lib/module/preset.js.map +1 -0
- package/lib/module/store/activityGroups.js +103 -0
- package/lib/module/store/activityGroups.js.map +1 -0
- package/lib/module/store/activityGroups.test.js +77 -0
- package/lib/module/store/activityGroups.test.js.map +1 -0
- package/lib/module/store/askBuoySettings.js +67 -0
- package/lib/module/store/askBuoySettings.js.map +1 -0
- package/lib/module/store/askBuoyStore.js +541 -1
- package/lib/module/store/askBuoyStore.js.map +1 -0
- package/lib/module/store/blockPlacement.js +59 -0
- package/lib/module/store/blockPlacement.js.map +1 -0
- package/lib/module/store/blockPlacement.test.js +122 -0
- package/lib/module/store/blockPlacement.test.js.map +1 -0
- package/lib/module/store/queue.test.js +149 -0
- package/lib/module/store/queue.test.js.map +1 -0
- package/lib/module/store/resetConversation.js +72 -0
- package/lib/module/store/resetConversation.js.map +1 -0
- package/lib/module/store/restorePending.test.js +62 -0
- package/lib/module/store/restorePending.test.js.map +1 -0
- package/lib/module/store/restoredIds.test.js +46 -0
- package/lib/module/store/restoredIds.test.js.map +1 -0
- package/lib/module/store/suggestions.js +49 -0
- package/lib/module/store/suggestions.js.map +1 -0
- package/lib/module/store/suggestions.test.js +57 -0
- package/lib/module/store/suggestions.test.js.map +1 -0
- package/lib/module/store/systemLine.test.js +76 -0
- package/lib/module/store/systemLine.test.js.map +1 -0
- package/lib/module/store/ticketPrompt.js +13 -0
- package/lib/module/store/ticketPrompt.js.map +1 -0
- package/lib/module/store/traceText.js +75 -0
- package/lib/module/store/traceText.js.map +1 -0
- package/lib/module/store/traceText.test.js +111 -0
- package/lib/module/store/traceText.test.js.map +1 -0
- package/lib/module/store/transcriptPersistence.js +287 -0
- package/lib/module/store/transcriptPersistence.js.map +1 -0
- package/lib/module/store/transcriptPersistence.test.js +332 -0
- package/lib/module/store/transcriptPersistence.test.js.map +1 -0
- package/lib/module/store/turnRendering.test.js +150 -0
- package/lib/module/store/turnRendering.test.js.map +1 -0
- package/lib/module/store/useAskBuoy.js +616 -1
- package/lib/module/store/useAskBuoy.js.map +1 -0
- package/lib/module/store/useAskBuoySettings.js +9 -0
- package/lib/module/store/useAskBuoySettings.js.map +1 -0
- package/lib/module/sync/askBuoySyncAdapter.js +135 -1
- package/lib/module/sync/askBuoySyncAdapter.js.map +1 -0
- package/lib/module/sync/askBuoySyncAdapter.test.js +140 -1
- package/lib/module/sync/askBuoySyncAdapter.test.js.map +1 -0
- package/lib/module/sync/wire.js +47 -1
- package/lib/module/sync/wire.js.map +1 -0
- package/lib/module/types.js +4 -1
- package/lib/module/types.js.map +1 -0
- package/lib/typescript/blocks/AskBlocks.d.ts.map +1 -0
- package/lib/typescript/blocks/BlockRenderer.d.ts.map +1 -0
- package/lib/typescript/blocks/ChromePrototypes.d.ts.map +1 -0
- package/lib/typescript/blocks/DataBlocks.d.ts +42 -0
- package/lib/typescript/blocks/DataBlocks.d.ts.map +1 -0
- package/lib/typescript/blocks/ExtraBlocks.d.ts +29 -2
- package/lib/typescript/blocks/ExtraBlocks.d.ts.map +1 -0
- package/lib/typescript/blocks/MediaBlocks.d.ts.map +1 -0
- package/lib/typescript/blocks/ReceiptBlocks.d.ts.map +1 -0
- package/lib/typescript/blocks/blockText.d.ts +14 -0
- package/lib/typescript/blocks/blockText.d.ts.map +1 -0
- package/lib/typescript/blocks/blockText.test.d.ts +2 -0
- package/lib/typescript/blocks/blockText.test.d.ts.map +1 -0
- package/lib/typescript/blocks/context.d.ts.map +1 -0
- package/lib/typescript/blocks/icons.d.ts.map +1 -0
- package/lib/typescript/blocks/index.d.ts.map +1 -0
- package/lib/typescript/blocks/listRow.test.d.ts +2 -0
- package/lib/typescript/blocks/listRow.test.d.ts.map +1 -0
- package/lib/typescript/blocks/pageState.d.ts +23 -0
- package/lib/typescript/blocks/pageState.d.ts.map +1 -0
- package/lib/typescript/blocks/pageState.test.d.ts +2 -0
- package/lib/typescript/blocks/pageState.test.d.ts.map +1 -0
- package/lib/typescript/blocks/primitives.d.ts +55 -10
- package/lib/typescript/blocks/primitives.d.ts.map +1 -0
- package/lib/typescript/blocks/primitivesIndex.d.ts +2 -1
- package/lib/typescript/blocks/primitivesIndex.d.ts.map +1 -0
- package/lib/typescript/components/ApprovalCard.d.ts.map +1 -0
- package/lib/typescript/components/AskBuoyHeader.d.ts +41 -1
- package/lib/typescript/components/AskBuoyHeader.d.ts.map +1 -0
- package/lib/typescript/components/AskBuoyIcon.d.ts.map +1 -0
- package/lib/typescript/components/AskBuoyModal.d.ts.map +1 -0
- package/lib/typescript/components/AskBuoySettings.d.ts +2 -0
- package/lib/typescript/components/AskBuoySettings.d.ts.map +1 -0
- package/lib/typescript/components/ChangesBar.d.ts.map +1 -0
- package/lib/typescript/components/Composer.d.ts +16 -1
- package/lib/typescript/components/Composer.d.ts.map +1 -0
- package/lib/typescript/components/EmptyState.d.ts +5 -1
- package/lib/typescript/components/EmptyState.d.ts.map +1 -0
- package/lib/typescript/components/KeyboardPad.d.ts +33 -0
- package/lib/typescript/components/KeyboardPad.d.ts.map +1 -0
- package/lib/typescript/components/Markdown.d.ts +0 -10
- package/lib/typescript/components/Markdown.d.ts.map +1 -0
- package/lib/typescript/components/MessageList.d.ts +19 -7
- package/lib/typescript/components/MessageList.d.ts.map +1 -0
- package/lib/typescript/components/QueuedMessages.d.ts +10 -0
- package/lib/typescript/components/QueuedMessages.d.ts.map +1 -0
- package/lib/typescript/components/ThinkingStrip.d.ts +5 -0
- package/lib/typescript/components/ThinkingStrip.d.ts.map +1 -0
- package/lib/typescript/components/TypingDots.d.ts.map +1 -0
- package/lib/typescript/components/markdownParse.d.ts +49 -0
- package/lib/typescript/components/markdownParse.d.ts.map +1 -0
- package/lib/typescript/components/markdownParse.test.d.ts +2 -0
- package/lib/typescript/components/markdownParse.test.d.ts.map +1 -0
- package/lib/typescript/components/useCopyAction.d.ts +5 -0
- package/lib/typescript/components/useCopyAction.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +5 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/preset.d.ts.map +1 -0
- package/lib/typescript/store/activityGroups.d.ts +29 -0
- package/lib/typescript/store/activityGroups.d.ts.map +1 -0
- package/lib/typescript/store/activityGroups.test.d.ts +2 -0
- package/lib/typescript/store/activityGroups.test.d.ts.map +1 -0
- package/lib/typescript/store/askBuoySettings.d.ts +44 -0
- package/lib/typescript/store/askBuoySettings.d.ts.map +1 -0
- package/lib/typescript/store/askBuoyStore.d.ts +216 -18
- package/lib/typescript/store/askBuoyStore.d.ts.map +1 -0
- package/lib/typescript/store/blockPlacement.d.ts +30 -0
- package/lib/typescript/store/blockPlacement.d.ts.map +1 -0
- package/lib/typescript/store/blockPlacement.test.d.ts +2 -0
- package/lib/typescript/store/blockPlacement.test.d.ts.map +1 -0
- package/lib/typescript/store/queue.test.d.ts +2 -0
- package/lib/typescript/store/queue.test.d.ts.map +1 -0
- package/lib/typescript/store/resetConversation.d.ts +38 -0
- package/lib/typescript/store/resetConversation.d.ts.map +1 -0
- package/lib/typescript/store/restorePending.test.d.ts +2 -0
- package/lib/typescript/store/restorePending.test.d.ts.map +1 -0
- package/lib/typescript/store/restoredIds.test.d.ts +2 -0
- package/lib/typescript/store/restoredIds.test.d.ts.map +1 -0
- package/lib/typescript/store/suggestions.d.ts +32 -0
- package/lib/typescript/store/suggestions.d.ts.map +1 -0
- package/lib/typescript/store/suggestions.test.d.ts +2 -0
- package/lib/typescript/store/suggestions.test.d.ts.map +1 -0
- package/lib/typescript/store/systemLine.test.d.ts +2 -0
- package/lib/typescript/store/systemLine.test.d.ts.map +1 -0
- package/lib/typescript/store/ticketPrompt.d.ts +11 -0
- package/lib/typescript/store/ticketPrompt.d.ts.map +1 -0
- package/lib/typescript/store/traceText.d.ts +33 -0
- package/lib/typescript/store/traceText.d.ts.map +1 -0
- package/lib/typescript/store/traceText.test.d.ts +2 -0
- package/lib/typescript/store/traceText.test.d.ts.map +1 -0
- package/lib/typescript/store/transcriptPersistence.d.ts +79 -0
- package/lib/typescript/store/transcriptPersistence.d.ts.map +1 -0
- package/lib/typescript/store/transcriptPersistence.test.d.ts +2 -0
- package/lib/typescript/store/transcriptPersistence.test.d.ts.map +1 -0
- package/lib/typescript/store/turnRendering.test.d.ts +2 -0
- package/lib/typescript/store/turnRendering.test.d.ts.map +1 -0
- package/lib/typescript/store/useAskBuoy.d.ts +23 -1
- package/lib/typescript/store/useAskBuoy.d.ts.map +1 -0
- package/lib/typescript/store/useAskBuoySettings.d.ts +3 -0
- package/lib/typescript/store/useAskBuoySettings.d.ts.map +1 -0
- package/lib/typescript/sync/askBuoySyncAdapter.d.ts +26 -6
- package/lib/typescript/sync/askBuoySyncAdapter.d.ts.map +1 -0
- package/lib/typescript/sync/askBuoySyncAdapter.test.d.ts.map +1 -0
- package/lib/typescript/sync/wire.d.ts.map +1 -0
- package/lib/typescript/types.d.ts +24 -1
- package/lib/typescript/types.d.ts.map +1 -0
- package/package.json +9 -9
|
@@ -1 +1,239 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The approval prompt, shown only when the policy asks for a tap.
|
|
5
|
+
*
|
|
6
|
+
* It renders the EFFECT, not the payload. That is the whole design constraint:
|
|
7
|
+
* every other agent product assumes a developer is reading the proposed
|
|
8
|
+
* command before approving it, and the people this tool is for cannot evaluate
|
|
9
|
+
* `redux_dispatch({type:'SET_ENTITLEMENTS', payload:{…}})`. An approval prompt
|
|
10
|
+
* nobody can read is not oversight — it is a rubber stamp that looks like
|
|
11
|
+
* oversight, which is worse than having no prompt at all.
|
|
12
|
+
*
|
|
13
|
+
* WHICH IS WHY THE DETAIL IS COLLAPSED. The card sits between the message list
|
|
14
|
+
* and the composer, so its height is taken out of the transcript rather than
|
|
15
|
+
* scrolled: a card taller than the sheet pushes its own buttons off the bottom
|
|
16
|
+
* with nothing to scroll them back. That is what happened — `description` is
|
|
17
|
+
* the catalog summary, written for the MODEL, and zustand's runs to a
|
|
18
|
+
* twenty-line paragraph about merge semantics. A prompt you physically cannot
|
|
19
|
+
* answer is the worst failure mode this component has.
|
|
20
|
+
*
|
|
21
|
+
* So the visible card is fixed-height by construction — the title, the effect
|
|
22
|
+
* in one line, the consequence in one line, a disclosure, and the buttons —
|
|
23
|
+
* and the long text lives behind the disclosure inside a capped scroll box, so
|
|
24
|
+
* expanding it can never push the buttons away again either.
|
|
25
|
+
*/
|
|
26
|
+
import { useState } from "react";
|
|
27
|
+
import { Pressable, ScrollView, StyleSheet, Text, View } from "react-native";
|
|
28
|
+
import { AlertTriangle, ChevronDown, night } from "@buoy-gg/shared-ui";
|
|
29
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
30
|
+
export function ApprovalCard({
|
|
31
|
+
pending,
|
|
32
|
+
onAnswer
|
|
33
|
+
}) {
|
|
34
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
35
|
+
style: styles.card,
|
|
36
|
+
testID: "buoy-ask-buoy-approval",
|
|
37
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
38
|
+
style: styles.titleRow,
|
|
39
|
+
children: [/*#__PURE__*/_jsx(AlertTriangle, {
|
|
40
|
+
size: 14,
|
|
41
|
+
color: night.color.warning
|
|
42
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
43
|
+
style: styles.title,
|
|
44
|
+
children: "Allow this change?"
|
|
45
|
+
})]
|
|
46
|
+
}), pending.restored ? /*#__PURE__*/_jsx(Text, {
|
|
47
|
+
style: styles.restored,
|
|
48
|
+
testID: "buoy-ask-buoy-approval-restored",
|
|
49
|
+
children: "Asked before the app restarted \u2014 check it still applies."
|
|
50
|
+
}) : null, /*#__PURE__*/_jsx(Text, {
|
|
51
|
+
style: styles.label,
|
|
52
|
+
children: pending.label
|
|
53
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
54
|
+
style: styles.reason,
|
|
55
|
+
children: pending.reason
|
|
56
|
+
}), pending.description ? /*#__PURE__*/_jsx(ApprovalDetails, {
|
|
57
|
+
text: pending.description
|
|
58
|
+
}) : null, /*#__PURE__*/_jsxs(View, {
|
|
59
|
+
style: styles.actions,
|
|
60
|
+
children: [/*#__PURE__*/_jsx(Pressable, {
|
|
61
|
+
testID: "buoy-ask-buoy-approve",
|
|
62
|
+
accessibilityRole: "button",
|
|
63
|
+
onPress: () => onAnswer(true),
|
|
64
|
+
style: ({
|
|
65
|
+
pressed
|
|
66
|
+
}) => [styles.button, styles.approve, pressed && styles.pressed],
|
|
67
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
68
|
+
style: styles.approveText,
|
|
69
|
+
children: "Allow"
|
|
70
|
+
})
|
|
71
|
+
}), /*#__PURE__*/_jsx(Pressable, {
|
|
72
|
+
testID: "buoy-ask-buoy-reject",
|
|
73
|
+
accessibilityRole: "button",
|
|
74
|
+
onPress: () => onAnswer(false),
|
|
75
|
+
style: ({
|
|
76
|
+
pressed
|
|
77
|
+
}) => [styles.button, styles.reject, pressed && styles.pressed],
|
|
78
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
79
|
+
style: styles.rejectText,
|
|
80
|
+
children: "Not now"
|
|
81
|
+
})
|
|
82
|
+
})]
|
|
83
|
+
})]
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* The catalog's own description, behind a disclosure, closed by default.
|
|
89
|
+
*
|
|
90
|
+
* Owns its open state rather than taking it as a prop: nothing above the card
|
|
91
|
+
* needs to know, and answering the prompt unmounts the whole thing anyway.
|
|
92
|
+
* One ChevronDown rotated in place, not a swap between two icon components —
|
|
93
|
+
* the tree keeps its shape whichever way it is pointing.
|
|
94
|
+
*/
|
|
95
|
+
function ApprovalDetails({
|
|
96
|
+
text
|
|
97
|
+
}) {
|
|
98
|
+
const [open, setOpen] = useState(false);
|
|
99
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
100
|
+
children: [/*#__PURE__*/_jsxs(Pressable, {
|
|
101
|
+
testID: "buoy-ask-buoy-approval-details",
|
|
102
|
+
accessibilityRole: "button",
|
|
103
|
+
accessibilityState: {
|
|
104
|
+
expanded: open
|
|
105
|
+
},
|
|
106
|
+
onPress: () => setOpen(prev => !prev),
|
|
107
|
+
style: ({
|
|
108
|
+
pressed
|
|
109
|
+
}) => [styles.disclosure, pressed && styles.pressed],
|
|
110
|
+
hitSlop: 6,
|
|
111
|
+
children: [/*#__PURE__*/_jsx(View, {
|
|
112
|
+
style: open ? styles.chevronOpen : styles.chevronClosed,
|
|
113
|
+
children: /*#__PURE__*/_jsx(ChevronDown, {
|
|
114
|
+
size: 12,
|
|
115
|
+
color: night.color.textTertiary
|
|
116
|
+
})
|
|
117
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
118
|
+
style: styles.disclosureText,
|
|
119
|
+
children: open ? "Hide details" : "Details"
|
|
120
|
+
})]
|
|
121
|
+
}), open ?
|
|
122
|
+
/*#__PURE__*/
|
|
123
|
+
// Capped and scrollable: the text behind this is unbounded, and the
|
|
124
|
+
// buttons below must stay on screen whatever it says.
|
|
125
|
+
_jsx(ScrollView, {
|
|
126
|
+
style: styles.detail,
|
|
127
|
+
contentContainerStyle: styles.detailContent,
|
|
128
|
+
nestedScrollEnabled: true,
|
|
129
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
130
|
+
style: styles.description,
|
|
131
|
+
children: text
|
|
132
|
+
})
|
|
133
|
+
}) : null]
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
const styles = StyleSheet.create({
|
|
137
|
+
card: {
|
|
138
|
+
marginHorizontal: night.gutter,
|
|
139
|
+
marginBottom: 10,
|
|
140
|
+
padding: night.cardPad,
|
|
141
|
+
borderRadius: night.radius.card,
|
|
142
|
+
borderWidth: StyleSheet.hairlineWidth,
|
|
143
|
+
borderColor: night.color.accentBorderStrong,
|
|
144
|
+
backgroundColor: night.color.surface,
|
|
145
|
+
gap: 6
|
|
146
|
+
},
|
|
147
|
+
titleRow: {
|
|
148
|
+
flexDirection: "row",
|
|
149
|
+
alignItems: "center",
|
|
150
|
+
gap: 6
|
|
151
|
+
},
|
|
152
|
+
title: {
|
|
153
|
+
color: night.color.text,
|
|
154
|
+
fontSize: night.font.caption,
|
|
155
|
+
fontWeight: "600"
|
|
156
|
+
},
|
|
157
|
+
label: {
|
|
158
|
+
color: night.color.text,
|
|
159
|
+
fontSize: night.font.row,
|
|
160
|
+
fontWeight: "600",
|
|
161
|
+
lineHeight: 20
|
|
162
|
+
},
|
|
163
|
+
description: {
|
|
164
|
+
color: night.color.textSecondary,
|
|
165
|
+
fontSize: night.font.caption,
|
|
166
|
+
lineHeight: 18
|
|
167
|
+
},
|
|
168
|
+
reason: {
|
|
169
|
+
color: night.color.warning,
|
|
170
|
+
fontSize: night.font.caption,
|
|
171
|
+
lineHeight: 18
|
|
172
|
+
},
|
|
173
|
+
restored: {
|
|
174
|
+
color: night.color.info,
|
|
175
|
+
backgroundColor: night.color.infoSoft,
|
|
176
|
+
fontSize: night.font.micro,
|
|
177
|
+
lineHeight: 16,
|
|
178
|
+
paddingHorizontal: 8,
|
|
179
|
+
paddingVertical: 5,
|
|
180
|
+
borderRadius: 8
|
|
181
|
+
},
|
|
182
|
+
disclosure: {
|
|
183
|
+
flexDirection: "row",
|
|
184
|
+
alignItems: "center",
|
|
185
|
+
gap: 4,
|
|
186
|
+
paddingVertical: 4
|
|
187
|
+
},
|
|
188
|
+
disclosureText: {
|
|
189
|
+
color: night.color.textTertiary,
|
|
190
|
+
fontSize: night.font.micro,
|
|
191
|
+
fontWeight: "600"
|
|
192
|
+
},
|
|
193
|
+
chevronOpen: {
|
|
194
|
+
transform: [{
|
|
195
|
+
rotate: "0deg"
|
|
196
|
+
}]
|
|
197
|
+
},
|
|
198
|
+
chevronClosed: {
|
|
199
|
+
transform: [{
|
|
200
|
+
rotate: "-90deg"
|
|
201
|
+
}]
|
|
202
|
+
},
|
|
203
|
+
detail: {
|
|
204
|
+
maxHeight: 150,
|
|
205
|
+
marginTop: 2
|
|
206
|
+
},
|
|
207
|
+
detailContent: {
|
|
208
|
+
paddingBottom: 2
|
|
209
|
+
},
|
|
210
|
+
actions: {
|
|
211
|
+
flexDirection: "row",
|
|
212
|
+
gap: 8,
|
|
213
|
+
marginTop: 6
|
|
214
|
+
},
|
|
215
|
+
button: {
|
|
216
|
+
paddingHorizontal: 16,
|
|
217
|
+
paddingVertical: 9,
|
|
218
|
+
borderRadius: night.radius.row
|
|
219
|
+
},
|
|
220
|
+
approve: {
|
|
221
|
+
backgroundColor: night.color.accent
|
|
222
|
+
},
|
|
223
|
+
approveText: {
|
|
224
|
+
color: night.color.onAccent,
|
|
225
|
+
fontWeight: "600",
|
|
226
|
+
fontSize: night.font.caption
|
|
227
|
+
},
|
|
228
|
+
reject: {
|
|
229
|
+
backgroundColor: night.color.button
|
|
230
|
+
},
|
|
231
|
+
rejectText: {
|
|
232
|
+
color: night.color.text,
|
|
233
|
+
fontSize: night.font.caption
|
|
234
|
+
},
|
|
235
|
+
pressed: {
|
|
236
|
+
opacity: 0.7
|
|
237
|
+
}
|
|
238
|
+
});
|
|
239
|
+
//# sourceMappingURL=ApprovalCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useState","Pressable","ScrollView","StyleSheet","Text","View","AlertTriangle","ChevronDown","night","jsx","_jsx","jsxs","_jsxs","ApprovalCard","pending","onAnswer","style","styles","card","testID","children","titleRow","size","color","warning","title","restored","label","reason","description","ApprovalDetails","text","actions","accessibilityRole","onPress","pressed","button","approve","approveText","reject","rejectText","open","setOpen","accessibilityState","expanded","prev","disclosure","hitSlop","chevronOpen","chevronClosed","textTertiary","disclosureText","detail","contentContainerStyle","detailContent","nestedScrollEnabled","create","marginHorizontal","gutter","marginBottom","padding","cardPad","borderRadius","radius","borderWidth","hairlineWidth","borderColor","accentBorderStrong","backgroundColor","surface","gap","flexDirection","alignItems","fontSize","font","caption","fontWeight","row","lineHeight","textSecondary","info","infoSoft","micro","paddingHorizontal","paddingVertical","transform","rotate","maxHeight","marginTop","paddingBottom","accent","onAccent","opacity"],"sourceRoot":"../../../src","sources":["components/ApprovalCard.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1,193 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The sheet header.
|
|
5
|
+
*
|
|
6
|
+
* Built on the shared `ModalHeader` so it matches Console, Network and Events
|
|
7
|
+
* 1:1 — the stock JsModal header was designed for a single centred title and
|
|
8
|
+
* paints its "Double tap: Toggle • Triple tap: Close" hint through the middle
|
|
9
|
+
* of it, which is how "Ask Buoy" ended up overprinted by grey italics.
|
|
10
|
+
*
|
|
11
|
+
* The subtitle is the one piece of live status the sheet has: what the agent
|
|
12
|
+
* is doing right now, in words a tester can act on. "Thinking…" while a
|
|
13
|
+
* response is streaming with no tool in flight, the current tool's title
|
|
14
|
+
* while one runs, and the reachable tool count at rest so a "why can't it
|
|
15
|
+
* see my network calls" question has an answer in the header.
|
|
16
|
+
*
|
|
17
|
+
* "New conversation" moved up here from a 11pt text link under the composer.
|
|
18
|
+
* A reset that lives under the keyboard is a reset nobody finds. Copy sits
|
|
19
|
+
* beside it for the same reason: the transcript actions under the newest
|
|
20
|
+
* answer are only reachable once you have scrolled back down to it.
|
|
21
|
+
*/
|
|
22
|
+
import { useEffect, useState } from "react";
|
|
23
|
+
import { StyleSheet, TouchableOpacity, View } from "react-native";
|
|
24
|
+
import { Check, Copy, FileText, ModalHeader, night, Otto, Plus, SettingsSolid } from "@buoy-gg/shared-ui";
|
|
25
|
+
import { useCopyAction } from "./useCopyAction";
|
|
26
|
+
import { formatElapsed } from "../store/activityGroups";
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Slower than the sprite's default 140ms.
|
|
30
|
+
*
|
|
31
|
+
* This mascot is ambient status a user stares at for the length of a turn,
|
|
32
|
+
* not a moment of delight they glance at once — at the stock tick it read as
|
|
33
|
+
* fidgeting in the corner of the eye while you were trying to read the
|
|
34
|
+
* answer next to it. Every other placement keeps the default.
|
|
35
|
+
*/
|
|
36
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
37
|
+
const HEADER_TICK_MS = 200;
|
|
38
|
+
|
|
39
|
+
/** No conversation to copy — the button is left out rather than left dead. */
|
|
40
|
+
const NO_TRANSCRIPT = () => "";
|
|
41
|
+
export function AskBuoyHeader({
|
|
42
|
+
configured,
|
|
43
|
+
busy,
|
|
44
|
+
failed = false,
|
|
45
|
+
activeLabel,
|
|
46
|
+
awaitingApproval = false,
|
|
47
|
+
startedAt = null,
|
|
48
|
+
stopping = false,
|
|
49
|
+
readOnly = false,
|
|
50
|
+
toolCount,
|
|
51
|
+
hasMessages,
|
|
52
|
+
onBack,
|
|
53
|
+
onReset,
|
|
54
|
+
getTranscript,
|
|
55
|
+
onOpenSettings,
|
|
56
|
+
onTicket
|
|
57
|
+
}) {
|
|
58
|
+
const {
|
|
59
|
+
copied,
|
|
60
|
+
copy
|
|
61
|
+
} = useCopyAction(getTranscript ?? NO_TRANSCRIPT);
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* ONE mascot state per turn, held to the end of it.
|
|
65
|
+
*
|
|
66
|
+
* `activeLabel` drops to null in the gap between two tool calls, so deriving
|
|
67
|
+
* the state from it directly flipped robot → thinking → robot on every
|
|
68
|
+
* boundary. A turn that runs four tools swapped the sprite eight times in
|
|
69
|
+
* about three seconds — a strobe that reads as a glitch, not as progress.
|
|
70
|
+
* So the robot latches: once this turn has driven a tool it stays `robot`
|
|
71
|
+
* until the turn ends, which is also the honest summary of that turn.
|
|
72
|
+
*
|
|
73
|
+
* The SUBTITLE still tracks each call, because updating a line of text is
|
|
74
|
+
* informative where restarting an animation is just noise.
|
|
75
|
+
*/
|
|
76
|
+
const [droveTool, setDroveTool] = useState(false);
|
|
77
|
+
useEffect(() => {
|
|
78
|
+
if (!busy) setDroveTool(false);else if (activeLabel) setDroveTool(true);
|
|
79
|
+
}, [busy, activeLabel]);
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* The elapsed clock. Ticks only while a turn is running and not parked on
|
|
83
|
+
* the user (nothing is elapsing while an approval card waits for a tap).
|
|
84
|
+
*/
|
|
85
|
+
const ticking = busy && !awaitingApproval && startedAt !== null;
|
|
86
|
+
const [now, setNow] = useState(() => Date.now());
|
|
87
|
+
useEffect(() => {
|
|
88
|
+
if (!ticking) return;
|
|
89
|
+
setNow(Date.now());
|
|
90
|
+
const timer = setInterval(() => setNow(Date.now()), 1000);
|
|
91
|
+
return () => clearInterval(timer);
|
|
92
|
+
}, [ticking]);
|
|
93
|
+
const elapsed = ticking && startedAt !== null ? formatElapsed(now - startedAt) : null;
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Otto mirrors the subtitle, never contradicts it. This is the one place in
|
|
97
|
+
* the product where a mascot earns continuous presence: the user is waiting
|
|
98
|
+
* on a machine and the header is the only thing reporting on it.
|
|
99
|
+
*
|
|
100
|
+
* `robot` while a tool runs is literal — the agent IS driving the tools.
|
|
101
|
+
*/
|
|
102
|
+
const otto = !configured ? "confused" : failed ? "error" : busy ? activeLabel || droveTool ? "robot" : "thinking" : "idle";
|
|
103
|
+
const working = stopping ? "Stopping" : activeLabel ?? "Thinking";
|
|
104
|
+
const subtitle = !configured ? "Not set up in this app" : awaitingApproval ? "Waiting for you" : busy ? elapsed ? `${working} · ${elapsed}` : `${working}…` : readOnly ? `Read only${toolCount > 0 ? ` · ${toolCount} tool${toolCount === 1 ? "" : "s"}` : ""}` : toolCount > 0 ? `Ready · ${toolCount} tool${toolCount === 1 ? "" : "s"} available` : "Ready";
|
|
105
|
+
return /*#__PURE__*/_jsxs(ModalHeader, {
|
|
106
|
+
children: [onBack ? /*#__PURE__*/_jsx(ModalHeader.Navigation, {
|
|
107
|
+
onBack: onBack
|
|
108
|
+
}) : null, /*#__PURE__*/_jsx(View, {
|
|
109
|
+
style: styles.otto,
|
|
110
|
+
testID: "buoy-ask-buoy-otto",
|
|
111
|
+
children: /*#__PURE__*/_jsx(Otto, {
|
|
112
|
+
state: otto,
|
|
113
|
+
pixelSize: 2,
|
|
114
|
+
tickMs: HEADER_TICK_MS,
|
|
115
|
+
water: false
|
|
116
|
+
})
|
|
117
|
+
}), /*#__PURE__*/_jsx(ModalHeader.Content, {
|
|
118
|
+
title: "Ask Buoy",
|
|
119
|
+
subtitle: subtitle,
|
|
120
|
+
testID: "buoy-ask-buoy-title"
|
|
121
|
+
}), /*#__PURE__*/_jsxs(ModalHeader.Actions, {
|
|
122
|
+
children: [onTicket ? /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
123
|
+
testID: "buoy-ask-buoy-ticket",
|
|
124
|
+
accessibilityRole: "button",
|
|
125
|
+
accessibilityLabel: "Summarize for a ticket",
|
|
126
|
+
disabled: !hasMessages || busy,
|
|
127
|
+
onPress: onTicket,
|
|
128
|
+
style: [styles.actionBtn, (!hasMessages || busy) && styles.actionBtnDisabled],
|
|
129
|
+
children: /*#__PURE__*/_jsx(FileText, {
|
|
130
|
+
size: 14,
|
|
131
|
+
color: hasMessages && !busy ? night.color.textSecondary : night.color.textTertiary
|
|
132
|
+
})
|
|
133
|
+
}) : null, getTranscript ? /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
134
|
+
testID: "buoy-ask-buoy-copy-chat",
|
|
135
|
+
accessibilityRole: "button",
|
|
136
|
+
accessibilityLabel: copied ? "Conversation copied" : "Copy conversation",
|
|
137
|
+
disabled: !hasMessages,
|
|
138
|
+
onPress: copy,
|
|
139
|
+
style: [styles.actionBtn, !hasMessages && styles.actionBtnDisabled],
|
|
140
|
+
children: copied ? /*#__PURE__*/_jsx(Check, {
|
|
141
|
+
size: 14,
|
|
142
|
+
color: night.color.accent
|
|
143
|
+
}) : /*#__PURE__*/_jsx(Copy, {
|
|
144
|
+
size: 14,
|
|
145
|
+
color: hasMessages ? night.color.textSecondary : night.color.textTertiary
|
|
146
|
+
})
|
|
147
|
+
}) : null, onOpenSettings ? /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
148
|
+
testID: "buoy-ask-buoy-settings",
|
|
149
|
+
accessibilityRole: "button",
|
|
150
|
+
accessibilityLabel: "Settings",
|
|
151
|
+
onPress: onOpenSettings,
|
|
152
|
+
style: styles.actionBtn,
|
|
153
|
+
children: /*#__PURE__*/_jsx(SettingsSolid, {
|
|
154
|
+
size: 14,
|
|
155
|
+
color: night.color.textSecondary
|
|
156
|
+
})
|
|
157
|
+
}) : null, /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
158
|
+
testID: "buoy-ask-buoy-reset",
|
|
159
|
+
accessibilityRole: "button",
|
|
160
|
+
accessibilityLabel: "New conversation",
|
|
161
|
+
disabled: !hasMessages,
|
|
162
|
+
onPress: onReset,
|
|
163
|
+
style: [styles.actionBtn, !hasMessages && styles.actionBtnDisabled],
|
|
164
|
+
children: /*#__PURE__*/_jsx(Plus, {
|
|
165
|
+
size: 14,
|
|
166
|
+
color: hasMessages ? night.color.textSecondary : night.color.textTertiary
|
|
167
|
+
})
|
|
168
|
+
})]
|
|
169
|
+
})]
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
const styles = StyleSheet.create({
|
|
173
|
+
// 32pt of Otto (16 grid × 2pt) reading as the header's status glyph.
|
|
174
|
+
otto: {
|
|
175
|
+
marginRight: 8,
|
|
176
|
+
justifyContent: "center"
|
|
177
|
+
},
|
|
178
|
+
// Same plate as the Console header's action buttons.
|
|
179
|
+
actionBtn: {
|
|
180
|
+
width: 32,
|
|
181
|
+
height: 32,
|
|
182
|
+
borderRadius: 8,
|
|
183
|
+
backgroundColor: night.color.buttonSurface,
|
|
184
|
+
borderWidth: 1,
|
|
185
|
+
borderColor: night.color.border,
|
|
186
|
+
alignItems: "center",
|
|
187
|
+
justifyContent: "center"
|
|
188
|
+
},
|
|
189
|
+
actionBtnDisabled: {
|
|
190
|
+
opacity: 0.55
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
//# sourceMappingURL=AskBuoyHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useState","StyleSheet","TouchableOpacity","View","Check","Copy","FileText","ModalHeader","night","Otto","Plus","SettingsSolid","useCopyAction","formatElapsed","jsx","_jsx","jsxs","_jsxs","HEADER_TICK_MS","NO_TRANSCRIPT","AskBuoyHeader","configured","busy","failed","activeLabel","awaitingApproval","startedAt","stopping","readOnly","toolCount","hasMessages","onBack","onReset","getTranscript","onOpenSettings","onTicket","copied","copy","droveTool","setDroveTool","ticking","now","setNow","Date","timer","setInterval","clearInterval","elapsed","otto","working","subtitle","children","Navigation","style","styles","testID","state","pixelSize","tickMs","water","Content","title","Actions","accessibilityRole","accessibilityLabel","disabled","onPress","actionBtn","actionBtnDisabled","size","color","textSecondary","textTertiary","accent","create","marginRight","justifyContent","width","height","borderRadius","backgroundColor","buttonSurface","borderWidth","borderColor","border","alignItems","opacity"],"sourceRoot":"../../../src","sources":["components/AskBuoyHeader.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Re-exported from floating-tools-core so the tool package has one import
|
|
5
|
+
* surface, matching how every other Buoy tool exposes its icon.
|
|
6
|
+
*/
|
|
7
|
+
export { AskBuoyIcon, ASK_BUOY_ICON_COLOR } from "@buoy-gg/floating-tools-core";
|
|
8
|
+
//# sourceMappingURL=AskBuoyIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AskBuoyIcon","ASK_BUOY_ICON_COLOR"],"sourceRoot":"../../../src","sources":["components/AskBuoyIcon.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,mBAAmB,QAAQ,8BAA8B","ignoreList":[]}
|