@buoy-gg/ask-buoy 7.0.34 → 7.0.35

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.
Files changed (239) hide show
  1. package/README.md +1 -1
  2. package/lib/commonjs/blocks/AskBlocks.js +338 -1
  3. package/lib/commonjs/blocks/AskBlocks.js.map +1 -0
  4. package/lib/commonjs/blocks/BlockRenderer.js +250 -1
  5. package/lib/commonjs/blocks/BlockRenderer.js.map +1 -0
  6. package/lib/commonjs/blocks/ChromePrototypes.js +514 -1
  7. package/lib/commonjs/blocks/ChromePrototypes.js.map +1 -0
  8. package/lib/commonjs/blocks/DataBlocks.js +688 -1
  9. package/lib/commonjs/blocks/DataBlocks.js.map +1 -0
  10. package/lib/commonjs/blocks/ExtraBlocks.js +1854 -1
  11. package/lib/commonjs/blocks/ExtraBlocks.js.map +1 -0
  12. package/lib/commonjs/blocks/MediaBlocks.js +140 -1
  13. package/lib/commonjs/blocks/MediaBlocks.js.map +1 -0
  14. package/lib/commonjs/blocks/ReceiptBlocks.js +586 -1
  15. package/lib/commonjs/blocks/ReceiptBlocks.js.map +1 -0
  16. package/lib/commonjs/blocks/context.js +42 -1
  17. package/lib/commonjs/blocks/context.js.map +1 -0
  18. package/lib/commonjs/blocks/icons.js +96 -1
  19. package/lib/commonjs/blocks/icons.js.map +1 -0
  20. package/lib/commonjs/blocks/index.js +95 -1
  21. package/lib/commonjs/blocks/index.js.map +1 -0
  22. package/lib/commonjs/blocks/listRow.test.js +55 -0
  23. package/lib/commonjs/blocks/listRow.test.js.map +1 -0
  24. package/lib/commonjs/blocks/pageState.js +34 -0
  25. package/lib/commonjs/blocks/pageState.js.map +1 -0
  26. package/lib/commonjs/blocks/pageState.test.js +57 -0
  27. package/lib/commonjs/blocks/pageState.test.js.map +1 -0
  28. package/lib/commonjs/blocks/primitives.js +401 -1
  29. package/lib/commonjs/blocks/primitives.js.map +1 -0
  30. package/lib/commonjs/blocks/primitivesIndex.js +62 -1
  31. package/lib/commonjs/blocks/primitivesIndex.js.map +1 -0
  32. package/lib/commonjs/components/ApprovalCard.js +140 -1
  33. package/lib/commonjs/components/ApprovalCard.js.map +1 -0
  34. package/lib/commonjs/components/AskBuoyHeader.js +164 -1
  35. package/lib/commonjs/components/AskBuoyHeader.js.map +1 -0
  36. package/lib/commonjs/components/AskBuoyIcon.js +19 -1
  37. package/lib/commonjs/components/AskBuoyIcon.js.map +1 -0
  38. package/lib/commonjs/components/AskBuoyModal.js +353 -1
  39. package/lib/commonjs/components/AskBuoyModal.js.map +1 -0
  40. package/lib/commonjs/components/AskBuoySettings.js +69 -0
  41. package/lib/commonjs/components/AskBuoySettings.js.map +1 -0
  42. package/lib/commonjs/components/ChangesBar.js +211 -1
  43. package/lib/commonjs/components/ChangesBar.js.map +1 -0
  44. package/lib/commonjs/components/Composer.js +175 -1
  45. package/lib/commonjs/components/Composer.js.map +1 -0
  46. package/lib/commonjs/components/EmptyState.js +154 -1
  47. package/lib/commonjs/components/EmptyState.js.map +1 -0
  48. package/lib/commonjs/components/Markdown.js +252 -1
  49. package/lib/commonjs/components/Markdown.js.map +1 -0
  50. package/lib/commonjs/components/MessageList.js +683 -1
  51. package/lib/commonjs/components/MessageList.js.map +1 -0
  52. package/lib/commonjs/components/ThinkingStrip.js +223 -0
  53. package/lib/commonjs/components/ThinkingStrip.js.map +1 -0
  54. package/lib/commonjs/components/TypingDots.js +63 -1
  55. package/lib/commonjs/components/TypingDots.js.map +1 -0
  56. package/lib/commonjs/components/useCopyAction.js +50 -0
  57. package/lib/commonjs/components/useCopyAction.js.map +1 -0
  58. package/lib/commonjs/index.js +252 -1
  59. package/lib/commonjs/index.js.map +1 -0
  60. package/lib/commonjs/preset.js +90 -1
  61. package/lib/commonjs/preset.js.map +1 -0
  62. package/lib/commonjs/store/askBuoySettings.js +67 -0
  63. package/lib/commonjs/store/askBuoySettings.js.map +1 -0
  64. package/lib/commonjs/store/askBuoyStore.js +365 -1
  65. package/lib/commonjs/store/askBuoyStore.js.map +1 -0
  66. package/lib/commonjs/store/restoredIds.test.js +47 -0
  67. package/lib/commonjs/store/restoredIds.test.js.map +1 -0
  68. package/lib/commonjs/store/traceText.js +81 -0
  69. package/lib/commonjs/store/traceText.js.map +1 -0
  70. package/lib/commonjs/store/traceText.test.js +112 -0
  71. package/lib/commonjs/store/traceText.test.js.map +1 -0
  72. package/lib/commonjs/store/transcriptPersistence.js +208 -0
  73. package/lib/commonjs/store/transcriptPersistence.js.map +1 -0
  74. package/lib/commonjs/store/transcriptPersistence.test.js +185 -0
  75. package/lib/commonjs/store/transcriptPersistence.test.js.map +1 -0
  76. package/lib/commonjs/store/useAskBuoy.js +400 -1
  77. package/lib/commonjs/store/useAskBuoy.js.map +1 -0
  78. package/lib/commonjs/store/useAskBuoySettings.js +14 -0
  79. package/lib/commonjs/store/useAskBuoySettings.js.map +1 -0
  80. package/lib/commonjs/sync/askBuoySyncAdapter.js +119 -1
  81. package/lib/commonjs/sync/askBuoySyncAdapter.js.map +1 -0
  82. package/lib/commonjs/sync/askBuoySyncAdapter.test.js +141 -1
  83. package/lib/commonjs/sync/askBuoySyncAdapter.test.js.map +1 -0
  84. package/lib/commonjs/sync/wire.js +58 -1
  85. package/lib/commonjs/sync/wire.js.map +1 -0
  86. package/lib/commonjs/types.js +6 -1
  87. package/lib/commonjs/types.js.map +1 -0
  88. package/lib/module/blocks/AskBlocks.js +331 -1
  89. package/lib/module/blocks/AskBlocks.js.map +1 -0
  90. package/lib/module/blocks/BlockRenderer.js +245 -1
  91. package/lib/module/blocks/BlockRenderer.js.map +1 -0
  92. package/lib/module/blocks/ChromePrototypes.js +503 -1
  93. package/lib/module/blocks/ChromePrototypes.js.map +1 -0
  94. package/lib/module/blocks/DataBlocks.js +674 -1
  95. package/lib/module/blocks/DataBlocks.js.map +1 -0
  96. package/lib/module/blocks/ExtraBlocks.js +1827 -1
  97. package/lib/module/blocks/ExtraBlocks.js.map +1 -0
  98. package/lib/module/blocks/MediaBlocks.js +135 -1
  99. package/lib/module/blocks/MediaBlocks.js.map +1 -0
  100. package/lib/module/blocks/ReceiptBlocks.js +574 -1
  101. package/lib/module/blocks/ReceiptBlocks.js.map +1 -0
  102. package/lib/module/blocks/context.js +35 -1
  103. package/lib/module/blocks/context.js.map +1 -0
  104. package/lib/module/blocks/icons.js +91 -1
  105. package/lib/module/blocks/icons.js.map +1 -0
  106. package/lib/module/blocks/index.js +8 -1
  107. package/lib/module/blocks/index.js.map +1 -0
  108. package/lib/module/blocks/listRow.test.js +56 -0
  109. package/lib/module/blocks/listRow.test.js.map +1 -0
  110. package/lib/module/blocks/pageState.js +30 -0
  111. package/lib/module/blocks/pageState.js.map +1 -0
  112. package/lib/module/blocks/pageState.test.js +56 -0
  113. package/lib/module/blocks/pageState.test.js.map +1 -0
  114. package/lib/module/blocks/primitives.js +389 -1
  115. package/lib/module/blocks/primitives.js.map +1 -0
  116. package/lib/module/blocks/primitivesIndex.js +5 -1
  117. package/lib/module/blocks/primitivesIndex.js.map +1 -0
  118. package/lib/module/components/ApprovalCard.js +135 -1
  119. package/lib/module/components/ApprovalCard.js.map +1 -0
  120. package/lib/module/components/AskBuoyHeader.js +161 -1
  121. package/lib/module/components/AskBuoyHeader.js.map +1 -0
  122. package/lib/module/components/AskBuoyIcon.js +8 -1
  123. package/lib/module/components/AskBuoyIcon.js.map +1 -0
  124. package/lib/module/components/AskBuoyModal.js +348 -1
  125. package/lib/module/components/AskBuoyModal.js.map +1 -0
  126. package/lib/module/components/AskBuoySettings.js +64 -0
  127. package/lib/module/components/AskBuoySettings.js.map +1 -0
  128. package/lib/module/components/ChangesBar.js +206 -1
  129. package/lib/module/components/ChangesBar.js.map +1 -0
  130. package/lib/module/components/Composer.js +170 -1
  131. package/lib/module/components/Composer.js.map +1 -0
  132. package/lib/module/components/EmptyState.js +149 -1
  133. package/lib/module/components/EmptyState.js.map +1 -0
  134. package/lib/module/components/Markdown.js +246 -1
  135. package/lib/module/components/Markdown.js.map +1 -0
  136. package/lib/module/components/MessageList.js +677 -1
  137. package/lib/module/components/MessageList.js.map +1 -0
  138. package/lib/module/components/ThinkingStrip.js +218 -0
  139. package/lib/module/components/ThinkingStrip.js.map +1 -0
  140. package/lib/module/components/TypingDots.js +58 -1
  141. package/lib/module/components/TypingDots.js.map +1 -0
  142. package/lib/module/components/useCopyAction.js +46 -0
  143. package/lib/module/components/useCopyAction.js.map +1 -0
  144. package/lib/module/index.js +34 -1
  145. package/lib/module/index.js.map +1 -0
  146. package/lib/module/preset.js +73 -1
  147. package/lib/module/preset.js.map +1 -0
  148. package/lib/module/store/askBuoySettings.js +62 -0
  149. package/lib/module/store/askBuoySettings.js.map +1 -0
  150. package/lib/module/store/askBuoyStore.js +361 -1
  151. package/lib/module/store/askBuoyStore.js.map +1 -0
  152. package/lib/module/store/restoredIds.test.js +46 -0
  153. package/lib/module/store/restoredIds.test.js.map +1 -0
  154. package/lib/module/store/traceText.js +75 -0
  155. package/lib/module/store/traceText.js.map +1 -0
  156. package/lib/module/store/traceText.test.js +111 -0
  157. package/lib/module/store/traceText.test.js.map +1 -0
  158. package/lib/module/store/transcriptPersistence.js +198 -0
  159. package/lib/module/store/transcriptPersistence.js.map +1 -0
  160. package/lib/module/store/transcriptPersistence.test.js +184 -0
  161. package/lib/module/store/transcriptPersistence.test.js.map +1 -0
  162. package/lib/module/store/useAskBuoy.js +394 -1
  163. package/lib/module/store/useAskBuoy.js.map +1 -0
  164. package/lib/module/store/useAskBuoySettings.js +9 -0
  165. package/lib/module/store/useAskBuoySettings.js.map +1 -0
  166. package/lib/module/sync/askBuoySyncAdapter.js +114 -1
  167. package/lib/module/sync/askBuoySyncAdapter.js.map +1 -0
  168. package/lib/module/sync/askBuoySyncAdapter.test.js +140 -1
  169. package/lib/module/sync/askBuoySyncAdapter.test.js.map +1 -0
  170. package/lib/module/sync/wire.js +47 -1
  171. package/lib/module/sync/wire.js.map +1 -0
  172. package/lib/module/types.js +4 -1
  173. package/lib/module/types.js.map +1 -0
  174. package/lib/typescript/blocks/AskBlocks.d.ts.map +1 -0
  175. package/lib/typescript/blocks/BlockRenderer.d.ts.map +1 -0
  176. package/lib/typescript/blocks/ChromePrototypes.d.ts.map +1 -0
  177. package/lib/typescript/blocks/DataBlocks.d.ts +31 -0
  178. package/lib/typescript/blocks/DataBlocks.d.ts.map +1 -0
  179. package/lib/typescript/blocks/ExtraBlocks.d.ts +11 -0
  180. package/lib/typescript/blocks/ExtraBlocks.d.ts.map +1 -0
  181. package/lib/typescript/blocks/MediaBlocks.d.ts.map +1 -0
  182. package/lib/typescript/blocks/ReceiptBlocks.d.ts.map +1 -0
  183. package/lib/typescript/blocks/context.d.ts.map +1 -0
  184. package/lib/typescript/blocks/icons.d.ts.map +1 -0
  185. package/lib/typescript/blocks/index.d.ts.map +1 -0
  186. package/lib/typescript/blocks/listRow.test.d.ts +2 -0
  187. package/lib/typescript/blocks/listRow.test.d.ts.map +1 -0
  188. package/lib/typescript/blocks/pageState.d.ts +23 -0
  189. package/lib/typescript/blocks/pageState.d.ts.map +1 -0
  190. package/lib/typescript/blocks/pageState.test.d.ts +2 -0
  191. package/lib/typescript/blocks/pageState.test.d.ts.map +1 -0
  192. package/lib/typescript/blocks/primitives.d.ts +39 -9
  193. package/lib/typescript/blocks/primitives.d.ts.map +1 -0
  194. package/lib/typescript/blocks/primitivesIndex.d.ts +2 -1
  195. package/lib/typescript/blocks/primitivesIndex.d.ts.map +1 -0
  196. package/lib/typescript/components/ApprovalCard.d.ts.map +1 -0
  197. package/lib/typescript/components/AskBuoyHeader.d.ts +11 -1
  198. package/lib/typescript/components/AskBuoyHeader.d.ts.map +1 -0
  199. package/lib/typescript/components/AskBuoyIcon.d.ts.map +1 -0
  200. package/lib/typescript/components/AskBuoyModal.d.ts.map +1 -0
  201. package/lib/typescript/components/AskBuoySettings.d.ts +2 -0
  202. package/lib/typescript/components/AskBuoySettings.d.ts.map +1 -0
  203. package/lib/typescript/components/ChangesBar.d.ts.map +1 -0
  204. package/lib/typescript/components/Composer.d.ts.map +1 -0
  205. package/lib/typescript/components/EmptyState.d.ts.map +1 -0
  206. package/lib/typescript/components/Markdown.d.ts.map +1 -0
  207. package/lib/typescript/components/MessageList.d.ts +12 -5
  208. package/lib/typescript/components/MessageList.d.ts.map +1 -0
  209. package/lib/typescript/components/ThinkingStrip.d.ts +5 -0
  210. package/lib/typescript/components/ThinkingStrip.d.ts.map +1 -0
  211. package/lib/typescript/components/TypingDots.d.ts.map +1 -0
  212. package/lib/typescript/components/useCopyAction.d.ts +5 -0
  213. package/lib/typescript/components/useCopyAction.d.ts.map +1 -0
  214. package/lib/typescript/index.d.ts +5 -0
  215. package/lib/typescript/index.d.ts.map +1 -0
  216. package/lib/typescript/preset.d.ts.map +1 -0
  217. package/lib/typescript/store/askBuoySettings.d.ts +22 -0
  218. package/lib/typescript/store/askBuoySettings.d.ts.map +1 -0
  219. package/lib/typescript/store/askBuoyStore.d.ts +74 -13
  220. package/lib/typescript/store/askBuoyStore.d.ts.map +1 -0
  221. package/lib/typescript/store/restoredIds.test.d.ts +2 -0
  222. package/lib/typescript/store/restoredIds.test.d.ts.map +1 -0
  223. package/lib/typescript/store/traceText.d.ts +33 -0
  224. package/lib/typescript/store/traceText.d.ts.map +1 -0
  225. package/lib/typescript/store/traceText.test.d.ts +2 -0
  226. package/lib/typescript/store/traceText.test.d.ts.map +1 -0
  227. package/lib/typescript/store/transcriptPersistence.d.ts +40 -0
  228. package/lib/typescript/store/transcriptPersistence.d.ts.map +1 -0
  229. package/lib/typescript/store/transcriptPersistence.test.d.ts +2 -0
  230. package/lib/typescript/store/transcriptPersistence.test.d.ts.map +1 -0
  231. package/lib/typescript/store/useAskBuoy.d.ts.map +1 -0
  232. package/lib/typescript/store/useAskBuoySettings.d.ts +3 -0
  233. package/lib/typescript/store/useAskBuoySettings.d.ts.map +1 -0
  234. package/lib/typescript/sync/askBuoySyncAdapter.d.ts.map +1 -0
  235. package/lib/typescript/sync/askBuoySyncAdapter.test.d.ts.map +1 -0
  236. package/lib/typescript/sync/wire.d.ts.map +1 -0
  237. package/lib/typescript/types.d.ts +24 -1
  238. package/lib/typescript/types.d.ts.map +1 -0
  239. package/package.json +8 -8
@@ -1 +1,586 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Crash=Crash,exports.LogList=LogList,exports.Peek=Peek,exports.RequestCard=RequestCard,exports.RequestList=RequestList,exports.RouteChips=RouteChips,exports.RuleCard=RuleCard,exports.ScreenElements=ScreenElements;var _react=require("react"),_reactNative=require("react-native"),_sharedUi=require("@buoy-gg/shared-ui"),_agentCore=require("@buoy-gg/agent-core"),_context=require("./context"),_primitives=require("./primitives"),_jsxRuntime=require("react/jsx-runtime");function statusColor(e){return void 0===e?_sharedUi.night.color.textTertiary:e>=500?_sharedUi.night.color.danger:e>=400?_sharedUi.night.color.warning:e>=300?_sharedUi.night.color.info:_sharedUi.night.color.accent}function pathOf(e){try{const t=new URL(e);return t.pathname+(t.search?"?…":"")}catch{return e}}function StatusPill({status:e}){return(0,_jsxRuntime.jsx)(_reactNative.View,{style:[_primitives.blockStyles.pill,{backgroundColor:`${statusColor(e)}22`}],children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[_primitives.blockStyles.pillText,{color:statusColor(e)}],children:e??"…"})})}function RequestList({block:e}){const t=(0,_context.useBlockHandlers)(),i=!1!==t.supports?.openTool,{visible:s,expanded:r,toggle:o}=(0,_primitives.useExpand)(e.requests,_agentCore.CAPS.listItems);return(0,_jsxRuntime.jsxs)(_primitives.Card,{title:e.title??"Network requests",source:e.source,testID:`buoy-block-requests-${e.id}`,children:[s.map((s,r)=>(0,_jsxRuntime.jsxs)(_reactNative.Pressable,{disabled:!i,onPress:()=>{t.runAction({label:"Open in Network",openTool:{toolId:"network",select:s.id}},e.id)},style:[_primitives.blockStyles.row,r>0&&_primitives.blockStyles.rowDivider],accessibilityRole:i?"button":void 0,children:[(0,_jsxRuntime.jsx)(_reactNative.Text,{style:styles.method,children:s.method}),(0,_jsxRuntime.jsx)(_reactNative.Text,{style:_primitives.blockStyles.rowTitle,numberOfLines:1,children:pathOf(s.url)}),s.mocked?(0,_jsxRuntime.jsx)(_reactNative.Text,{style:styles.mockedChip,children:"MOCKED"}):null,void 0!==s.durationMs?(0,_jsxRuntime.jsxs)(_reactNative.Text,{style:_primitives.blockStyles.rowTrailing,children:[s.durationMs," ms"]}):null,(0,_jsxRuntime.jsx)(StatusPill,{status:s.status}),i?(0,_jsxRuntime.jsx)(_sharedUi.ChevronRight,{size:12,color:_sharedUi.night.color.textTertiary}):null]},s.id)),(0,_jsxRuntime.jsx)(_primitives.More,{shown:s.length,total:e.total??e.requests.length,onExpand:e.requests.length>s.length||r?o:void 0,expanded:r})]})}function RequestCard({block:e}){const[t,i]=(0,_react.useState)("response"),s="response"===t?e.responseBody:e.requestBody,r=void 0===s?"(none)":"string"==typeof s?s:JSON.stringify(s,null,2),o=(0,_context.useBlockHandlers)();return(0,_jsxRuntime.jsxs)(_primitives.Card,{source:e.source,testID:`buoy-block-request-${e.id}`,children:[(0,_jsxRuntime.jsxs)(_reactNative.View,{style:[_primitives.blockStyles.row,styles.reqHead],children:[(0,_jsxRuntime.jsx)(_reactNative.Text,{style:styles.method,children:e.request.method}),(0,_jsxRuntime.jsx)(_reactNative.Text,{style:_primitives.blockStyles.rowTitle,numberOfLines:2,children:pathOf(e.request.url)}),e.request.mocked?(0,_jsxRuntime.jsx)(_reactNative.Text,{style:styles.mockedChip,children:"MOCKED"}):null,(0,_jsxRuntime.jsx)(StatusPill,{status:e.request.status})]}),(0,_jsxRuntime.jsx)(_reactNative.View,{style:styles.tabs,children:["response","request"].map(e=>(0,_jsxRuntime.jsx)(_reactNative.Pressable,{onPress:()=>i(e),style:[styles.tab,t===e&&styles.tabOn],accessibilityRole:"tab",children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[styles.tabText,t===e&&styles.tabTextOn],children:"response"===e?"Response":"Request"})},e))}),(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[_primitives.blockStyles.mono,styles.body],numberOfLines:14,selectable:!0,children:r.length>1600?`${r.slice(0,1600)}\n…`:r}),(0,_jsxRuntime.jsx)(_primitives.ActionRow,{blockId:e.id,actions:[{label:"Open in Network",openTool:{toolId:"network",select:e.request.id}}]}),(o.supports,null)]})}function RuleCard({block:e}){const t=e.rule,i="fail"===t.kind?"fails (no network)":"delay"===t.kind?`delayed ${t.delayMs??0} ms`:`returns ${t.status??200}`;return(0,_jsxRuntime.jsxs)(_primitives.Card,{title:t.name??"Network override",source:e.source,testID:`buoy-block-rule-${e.id}`,tone:t.enabled?"warning":void 0,children:[(0,_jsxRuntime.jsxs)(_reactNative.View,{style:styles.ruleBody,children:[(0,_jsxRuntime.jsxs)(_reactNative.Text,{style:styles.ruleLine,children:[(0,_jsxRuntime.jsxs)(_reactNative.Text,{style:styles.ruleKey,children:[t.methods?.length?t.methods.join("/"):"ANY"," "]}),(0,_jsxRuntime.jsx)(_reactNative.Text,{style:_primitives.blockStyles.mono,children:t.urlPattern})]}),(0,_jsxRuntime.jsxs)(_reactNative.Text,{style:styles.ruleLine,children:[(0,_jsxRuntime.jsx)(_reactNative.Text,{style:styles.ruleKey,children:"→ "}),i,t.times?" · "+(1===t.times?"once":`${t.times} times`):" · every time",void 0!==t.hits?` · ${t.hits} hit${1===t.hits?"":"s"}`:""]}),(0,_jsxRuntime.jsx)(_reactNative.View,{style:[_primitives.blockStyles.pill,t.enabled?styles.on:styles.off],children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[_primitives.blockStyles.pillText,{color:t.enabled?_sharedUi.night.color.onAccent:_sharedUi.night.color.textSecondary}],children:t.enabled?"ON":"OFF"})})]}),(0,_jsxRuntime.jsx)(_primitives.ActionRow,{blockId:e.id,actions:[t.enabled?{label:"Turn off",dispatch:{toolId:"network",action:"setOverrideRuleEnabled",params:{id:t.id,enabled:!1}}}:{label:"Turn on",primary:!0,dispatch:{toolId:"network",action:"setOverrideRuleEnabled",params:{id:t.id,enabled:!0}}},{label:"Delete",dispatch:{toolId:"network",action:"deleteOverrideRule",params:{id:t.id}}}]})]})}function ScreenElements({block:e}){const t=(0,_context.useBlockHandlers)(),{visible:i,expanded:s,toggle:r}=(0,_primitives.useExpand)(e.elements,_agentCore.CAPS.chips);return(0,_jsxRuntime.jsxs)(_primitives.Card,{title:e.title??"On screen right now",source:e.source,testID:`buoy-block-screen-${e.id}`,children:[i.map((i,s)=>(0,_jsxRuntime.jsxs)(_reactNative.Pressable,{onPress:()=>{t.runAction({label:"Highlight",dispatch:{toolId:"highlight-updates",action:"setSpotlight",params:{nativeTag:i.nativeTag}}},e.id)},disabled:!1===t.supports?.dispatch,style:[_primitives.blockStyles.row,s>0&&_primitives.blockStyles.rowDivider],accessibilityRole:"button",children:[(0,_jsxRuntime.jsx)(_sharedUi.Eye,{size:12,color:_sharedUi.night.color.textTertiary}),(0,_jsxRuntime.jsx)(_reactNative.Text,{style:_primitives.blockStyles.rowTitle,numberOfLines:1,children:i.label??i.testID??i.name}),(0,_jsxRuntime.jsx)(_reactNative.Text,{style:_primitives.blockStyles.rowTrailing,numberOfLines:1,children:i.name})]},i.nativeTag)),(0,_jsxRuntime.jsx)(_primitives.More,{shown:i.length,total:e.total,onExpand:e.elements.length>i.length||s?r:void 0,expanded:s})]})}function RouteChips({block:e}){const t=(0,_context.useBlockHandlers)(),[i,s]=(0,_react.useState)(!1),r=i?e.routes:e.routes.slice(0,_agentCore.CAPS.chips);return(0,_jsxRuntime.jsxs)(_primitives.Card,{title:e.current?`Routes · you're on ${e.current}`:"Routes",source:e.source,testID:`buoy-block-routes-${e.id}`,children:[(0,_jsxRuntime.jsx)(_reactNative.View,{style:styles.chips,children:r.map(i=>(0,_jsxRuntime.jsx)(_reactNative.Pressable,{disabled:!1===t.supports?.dispatch,onPress:()=>i.dynamic?t.answer({blockId:e.id,kind:"input",value:`Open ${i.path} — which id?`}):void t.runAction({label:`Open ${i.path}`,dispatch:{toolId:"route-events",action:"navigate",params:{path:i.path}}},e.id),style:[styles.chip,i.path===e.current&&styles.chipCurrent],accessibilityRole:"button",children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[styles.chipText,i.dynamic&&styles.chipDynamic],children:i.path})},i.path))}),(0,_jsxRuntime.jsx)(_primitives.More,{shown:r.length,total:e.total??e.routes.length,onExpand:()=>s(e=>!e),expanded:i})]})}const LEVEL_COLOR={error:_sharedUi.night.color.danger,warn:_sharedUi.night.color.warning,warning:_sharedUi.night.color.warning,info:_sharedUi.night.color.info};function LogList({block:e}){const{visible:t,expanded:i,toggle:s}=(0,_primitives.useExpand)(e.entries,_agentCore.CAPS.listItems);return(0,_jsxRuntime.jsxs)(_primitives.Card,{title:"Console",source:e.source,testID:`buoy-block-logs-${e.id}`,children:[t.map((e,t)=>(0,_jsxRuntime.jsxs)(_reactNative.View,{style:[_primitives.blockStyles.row,t>0&&_primitives.blockStyles.rowDivider,styles.logRow],children:[(0,_jsxRuntime.jsx)(_reactNative.View,{style:[_primitives.blockStyles.pill,{backgroundColor:`${LEVEL_COLOR[e.level]??_sharedUi.night.color.textTertiary}22`}],children:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[_primitives.blockStyles.pillText,{color:LEVEL_COLOR[e.level]??_sharedUi.night.color.textSecondary}],children:e.level.toUpperCase()})}),(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[_primitives.blockStyles.rowTitle,_primitives.blockStyles.mono],numberOfLines:3,children:e.message}),e.count>1?(0,_jsxRuntime.jsxs)(_reactNative.Text,{style:_primitives.blockStyles.rowTrailing,children:["×",e.count]}):null]},`${e.level}-${e.message}-${t}`)),(0,_jsxRuntime.jsx)(_primitives.More,{shown:t.length,total:e.total,onExpand:e.entries.length>t.length||i?s:void 0,expanded:i})]})}function Crash({block:e}){return(0,_jsxRuntime.jsxs)(_primitives.Card,{tone:"danger",testID:`buoy-block-crash-${e.id}`,children:[(0,_jsxRuntime.jsxs)(_reactNative.View,{style:styles.crashHead,children:[(0,_jsxRuntime.jsx)(_sharedUi.AlertTriangle,{size:14,color:_sharedUi.night.color.danger}),(0,_jsxRuntime.jsxs)(_reactNative.Text,{style:styles.crashTitle,children:["The app crashed",e.route?` on ${e.route}`:""]})]}),(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[_primitives.blockStyles.mono,styles.crashMsg],numberOfLines:4,selectable:!0,children:e.message}),e.suspect?(0,_jsxRuntime.jsxs)(_reactNative.Text,{style:styles.suspect,children:["Most likely cause: ",e.suspect.label]}):null,(0,_jsxRuntime.jsx)(_primitives.ActionRow,{blockId:e.id,actions:[...e.suspect?.action?[{...e.suspect.action,primary:!0}]:[],...e.actions??[]].slice(0,2)})]})}function Peek({block:e}){const t=(0,_context.useBlockHandlers)(),i=!1!==t.supports?.minimize;return(0,_jsxRuntime.jsxs)(_reactNative.Pressable,{testID:`buoy-block-peek-${e.id}`,disabled:!i,onPress:()=>{t.runAction({label:"Look",minimize:!0},e.id)},style:({pressed:e})=>[styles.peek,e&&{opacity:.7}],accessibilityRole:"button",accessibilityLabel:`${e.label}. Look at the app`,children:[(0,_jsxRuntime.jsx)(_reactNative.Text,{style:styles.peekText,children:e.label}),i?(0,_jsxRuntime.jsxs)(_reactNative.View,{style:styles.peekLook,children:[(0,_jsxRuntime.jsx)(_sharedUi.Eye,{size:12,color:_sharedUi.night.color.accent}),(0,_jsxRuntime.jsx)(_reactNative.Text,{style:styles.peekLookText,children:"Look"})]}):null]})}const styles=_reactNative.StyleSheet.create({method:{color:_sharedUi.night.color.textSecondary,fontSize:_sharedUi.night.font.micro,fontWeight:"700",letterSpacing:.4,width:44},mockedChip:{color:_sharedUi.night.color.warning,backgroundColor:_sharedUi.night.color.warningSoft,fontSize:9,fontWeight:"700",letterSpacing:.6,paddingHorizontal:5,paddingVertical:1,borderRadius:_sharedUi.night.radius.badge,overflow:"hidden"},reqHead:{paddingTop:12},tabs:{flexDirection:"row",gap:6,paddingHorizontal:12,paddingTop:4,paddingBottom:8},tab:{paddingHorizontal:10,paddingVertical:5,borderRadius:_sharedUi.night.radius.badge,backgroundColor:_sharedUi.night.color.fill},tabOn:{backgroundColor:_sharedUi.night.color.accentSoft},tabText:{color:_sharedUi.night.color.textSecondary,fontSize:_sharedUi.night.font.micro,fontWeight:"600"},tabTextOn:{color:_sharedUi.night.color.accent},body:{paddingHorizontal:12,paddingBottom:4,lineHeight:16,color:_sharedUi.night.color.textSecondary},ruleBody:{paddingHorizontal:12,paddingTop:4,paddingBottom:4,gap:4},ruleLine:{color:_sharedUi.night.color.text,fontSize:_sharedUi.night.font.caption,lineHeight:18},ruleKey:{color:_sharedUi.night.color.textSecondary,fontWeight:"700"},on:{alignSelf:"flex-start",backgroundColor:_sharedUi.night.color.accent,marginTop:4},off:{alignSelf:"flex-start",backgroundColor:_sharedUi.night.color.fillTertiary,marginTop:4},chips:{flexDirection:"row",flexWrap:"wrap",gap:6,padding:12},chip:{paddingHorizontal:10,paddingVertical:6,borderRadius:_sharedUi.night.radius.chip,backgroundColor:_sharedUi.night.color.fill,borderWidth:_reactNative.StyleSheet.hairlineWidth,borderColor:_sharedUi.night.color.border},chipCurrent:{backgroundColor:_sharedUi.night.color.accentSoft,borderColor:_sharedUi.night.color.accentBorderStrong},chipText:{color:_sharedUi.night.color.text,fontSize:_sharedUi.night.font.caption,fontFamily:"Menlo"},chipDynamic:{color:_sharedUi.night.color.textSecondary},logRow:{alignItems:"flex-start"},crashHead:{flexDirection:"row",alignItems:"center",gap:8,paddingHorizontal:12,paddingTop:12},crashTitle:{color:_sharedUi.night.color.danger,fontSize:_sharedUi.night.font.row,fontWeight:"600"},crashMsg:{paddingHorizontal:12,paddingTop:6,color:_sharedUi.night.color.text},suspect:{color:_sharedUi.night.color.textSecondary,fontSize:_sharedUi.night.font.caption,paddingHorizontal:12,paddingTop:6},peek:{alignSelf:"flex-start",flexDirection:"row",alignItems:"center",gap:10,paddingLeft:12,paddingRight:10,paddingVertical:7,borderRadius:_sharedUi.night.radius.chip,backgroundColor:_sharedUi.night.color.fill},peekText:{color:_sharedUi.night.color.textSecondary,fontSize:_sharedUi.night.font.caption},peekLook:{flexDirection:"row",alignItems:"center",gap:4},peekLookText:{color:_sharedUi.night.color.accent,fontSize:_sharedUi.night.font.caption,fontWeight:"600"}});
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Crash = Crash;
7
+ exports.LogList = LogList;
8
+ exports.Peek = Peek;
9
+ exports.RequestCard = RequestCard;
10
+ exports.RequestList = RequestList;
11
+ exports.RouteChips = RouteChips;
12
+ exports.RuleCard = RuleCard;
13
+ exports.ScreenElements = ScreenElements;
14
+ var _react = require("react");
15
+ var _reactNative = require("react-native");
16
+ var _sharedUi = require("@buoy-gg/shared-ui");
17
+ var _agentCore = require("@buoy-gg/agent-core");
18
+ var _context = require("./context");
19
+ var _primitives = require("./primitives");
20
+ var _jsxRuntime = require("react/jsx-runtime");
21
+ /**
22
+ * Receipts — engine-made blocks for the tools people ask about most.
23
+ * Each one is a card the matching Buoy tool could have drawn, with one tap
24
+ * into that tool where the host supports it.
25
+ */
26
+
27
+ function statusColor(status) {
28
+ if (status === undefined) return _sharedUi.night.color.textTertiary;
29
+ if (status >= 500) return _sharedUi.night.color.danger;
30
+ if (status >= 400) return _sharedUi.night.color.warning;
31
+ if (status >= 300) return _sharedUi.night.color.info;
32
+ return _sharedUi.night.color.accent;
33
+ }
34
+ function pathOf(url) {
35
+ try {
36
+ const u = new URL(url);
37
+ return u.pathname + (u.search ? "?…" : "");
38
+ } catch {
39
+ return url;
40
+ }
41
+ }
42
+ function StatusPill({
43
+ status
44
+ }) {
45
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
46
+ style: [_primitives.blockStyles.pill, {
47
+ backgroundColor: `${statusColor(status)}22`
48
+ }],
49
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
50
+ style: [_primitives.blockStyles.pillText, {
51
+ color: statusColor(status)
52
+ }],
53
+ children: status ?? "…"
54
+ })
55
+ });
56
+ }
57
+ function RequestList({
58
+ block
59
+ }) {
60
+ const h = (0, _context.useBlockHandlers)();
61
+ const canOpen = h.supports?.openTool !== false;
62
+ const paged = (0, _primitives.usePaged)(block.requests, _agentCore.CAPS.listItems);
63
+ const {
64
+ visible
65
+ } = paged;
66
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_primitives.Card, {
67
+ title: block.title ?? "Network requests",
68
+ source: block.source,
69
+ testID: `buoy-block-requests-${block.id}`,
70
+ children: [visible.map((r, i) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
71
+ disabled: !canOpen,
72
+ onPress: () => void h.runAction({
73
+ label: "Open in Network",
74
+ openTool: {
75
+ toolId: "network",
76
+ select: r.id
77
+ }
78
+ }, block.id),
79
+ style: [_primitives.blockStyles.row, i > 0 && _primitives.blockStyles.rowDivider],
80
+ accessibilityRole: canOpen ? "button" : undefined,
81
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
82
+ style: styles.method,
83
+ children: r.method
84
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
85
+ style: _primitives.blockStyles.rowTitle,
86
+ numberOfLines: 1,
87
+ children: pathOf(r.url)
88
+ }), r.mocked ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
89
+ style: styles.mockedChip,
90
+ children: "MOCKED"
91
+ }) : null, r.durationMs !== undefined ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
92
+ style: _primitives.blockStyles.rowTrailing,
93
+ children: [r.durationMs, " ms"]
94
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(StatusPill, {
95
+ status: r.status
96
+ }), canOpen ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.ChevronRight, {
97
+ size: 12,
98
+ color: _sharedUi.night.color.textTertiary
99
+ }) : null]
100
+ }, `${r.id}-${i}`)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.More, {
101
+ paged: paged
102
+ })]
103
+ });
104
+ }
105
+
106
+ /** Module scope — a fresh array per render is a new prop identity for nothing. */
107
+ const REQUEST_TABS = [{
108
+ key: "response",
109
+ label: "Response"
110
+ }, {
111
+ key: "request",
112
+ label: "Request"
113
+ }];
114
+ function RequestCard({
115
+ block
116
+ }) {
117
+ const [tab, setTab] = (0, _react.useState)("response");
118
+ const body = tab === "response" ? block.responseBody : block.requestBody;
119
+ const text = body === undefined ? "(none)" : typeof body === "string" ? body : JSON.stringify(body, null, 2);
120
+ const h = (0, _context.useBlockHandlers)();
121
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_primitives.Card, {
122
+ source: block.source,
123
+ testID: `buoy-block-request-${block.id}`,
124
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
125
+ style: [_primitives.blockStyles.row, styles.reqHead],
126
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
127
+ style: styles.method,
128
+ children: block.request.method
129
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
130
+ style: _primitives.blockStyles.rowTitle,
131
+ numberOfLines: 2,
132
+ children: pathOf(block.request.url)
133
+ }), block.request.mocked ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
134
+ style: styles.mockedChip,
135
+ children: "MOCKED"
136
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(StatusPill, {
137
+ status: block.request.status
138
+ })]
139
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
140
+ style: styles.tabs,
141
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.NightSegmented, {
142
+ tabs: REQUEST_TABS,
143
+ activeKey: tab,
144
+ onChange: key => setTab(key),
145
+ size: "sm"
146
+ })
147
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
148
+ style: [_primitives.blockStyles.mono, styles.body],
149
+ numberOfLines: 14,
150
+ selectable: true,
151
+ children: text.length > 1600 ? `${text.slice(0, 1600)}\n…` : text
152
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.ActionRow, {
153
+ blockId: block.id,
154
+ actions: [{
155
+ label: "Open in Network",
156
+ openTool: {
157
+ toolId: "network",
158
+ select: block.request.id
159
+ }
160
+ }]
161
+ }), h.supports?.openTool === false ? null : null]
162
+ });
163
+ }
164
+ function RuleCard({
165
+ block
166
+ }) {
167
+ const r = block.rule;
168
+ const outcome = r.kind === "fail" ? "fails (no network)" : r.kind === "delay" ? `delayed ${r.delayMs ?? 0} ms` : `returns ${r.status ?? 200}`;
169
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_primitives.Card, {
170
+ title: r.name ?? "Network override",
171
+ source: block.source,
172
+ testID: `buoy-block-rule-${block.id}`,
173
+ tone: r.enabled ? "warning" : undefined,
174
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
175
+ style: styles.ruleBody,
176
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
177
+ style: styles.ruleLine,
178
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
179
+ style: styles.ruleKey,
180
+ children: [r.methods?.length ? r.methods.join("/") : "ANY", " "]
181
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
182
+ style: _primitives.blockStyles.mono,
183
+ children: r.urlPattern
184
+ })]
185
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
186
+ style: styles.ruleLine,
187
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
188
+ style: styles.ruleKey,
189
+ children: "\u2192 "
190
+ }), outcome, r.times ? ` · ${r.times === 1 ? "once" : `${r.times} times`}` : " · every time", r.hits !== undefined ? ` · ${r.hits} hit${r.hits === 1 ? "" : "s"}` : ""]
191
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
192
+ style: [_primitives.blockStyles.pill, r.enabled ? styles.on : styles.off],
193
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
194
+ style: [_primitives.blockStyles.pillText, {
195
+ color: r.enabled ? _sharedUi.night.color.onAccent : _sharedUi.night.color.textSecondary
196
+ }],
197
+ children: r.enabled ? "ON" : "OFF"
198
+ })
199
+ })]
200
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.ActionRow, {
201
+ blockId: block.id,
202
+ actions: [r.enabled ? {
203
+ label: "Turn off",
204
+ dispatch: {
205
+ toolId: "network",
206
+ action: "setOverrideRuleEnabled",
207
+ params: {
208
+ id: r.id,
209
+ enabled: false
210
+ }
211
+ }
212
+ } : {
213
+ label: "Turn on",
214
+ primary: true,
215
+ dispatch: {
216
+ toolId: "network",
217
+ action: "setOverrideRuleEnabled",
218
+ params: {
219
+ id: r.id,
220
+ enabled: true
221
+ }
222
+ }
223
+ }, {
224
+ label: "Delete",
225
+ dispatch: {
226
+ toolId: "network",
227
+ action: "deleteOverrideRule",
228
+ params: {
229
+ id: r.id
230
+ }
231
+ }
232
+ }]
233
+ })]
234
+ });
235
+ }
236
+ function ScreenElements({
237
+ block
238
+ }) {
239
+ const h = (0, _context.useBlockHandlers)();
240
+ const paged = (0, _primitives.usePaged)(block.elements, _agentCore.CAPS.chips);
241
+ const {
242
+ visible
243
+ } = paged;
244
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_primitives.Card, {
245
+ title: block.title ?? "On screen right now",
246
+ source: block.source,
247
+ testID: `buoy-block-screen-${block.id}`,
248
+ children: [visible.map((e, i) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
249
+ onPress: () => void h.runAction({
250
+ label: "Highlight",
251
+ dispatch: {
252
+ toolId: "highlight-updates",
253
+ action: "setSpotlight",
254
+ params: {
255
+ nativeTag: e.nativeTag
256
+ }
257
+ }
258
+ }, block.id),
259
+ disabled: h.supports?.dispatch === false,
260
+ style: [_primitives.blockStyles.row, i > 0 && _primitives.blockStyles.rowDivider],
261
+ accessibilityRole: "button",
262
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Eye, {
263
+ size: 12,
264
+ color: _sharedUi.night.color.textTertiary
265
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
266
+ style: _primitives.blockStyles.rowTitle,
267
+ numberOfLines: 1,
268
+ children: e.label ?? e.testID ?? e.name
269
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
270
+ style: _primitives.blockStyles.rowTrailing,
271
+ numberOfLines: 1,
272
+ children: e.name
273
+ })]
274
+ }, `${e.nativeTag}-${i}`)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.More, {
275
+ paged: paged
276
+ })]
277
+ });
278
+ }
279
+ function RouteChips({
280
+ block
281
+ }) {
282
+ const h = (0, _context.useBlockHandlers)();
283
+ const paged = (0, _primitives.usePaged)(block.routes, _agentCore.CAPS.chips);
284
+ const routes = paged.visible;
285
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_primitives.Card, {
286
+ title: block.current ? `Routes · you're on ${block.current}` : "Routes",
287
+ source: block.source,
288
+ testID: `buoy-block-routes-${block.id}`,
289
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
290
+ style: styles.chips,
291
+ children: routes.map((r, i) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
292
+ disabled: h.supports?.dispatch === false,
293
+ onPress: () => r.dynamic ? h.answer({
294
+ blockId: block.id,
295
+ kind: "input",
296
+ value: `Open ${r.path} — which id?`
297
+ }) : void h.runAction({
298
+ label: `Open ${r.path}`,
299
+ dispatch: {
300
+ toolId: "route-events",
301
+ action: "navigate",
302
+ params: {
303
+ path: r.path
304
+ }
305
+ }
306
+ }, block.id),
307
+ style: [styles.chip, r.path === block.current && styles.chipCurrent],
308
+ accessibilityRole: "button",
309
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
310
+ style: [styles.chipText, r.dynamic && styles.chipDynamic],
311
+ children: r.path
312
+ })
313
+ }, `${r.path}-${i}`))
314
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.More, {
315
+ paged: paged
316
+ })]
317
+ });
318
+ }
319
+ const LEVEL_COLOR = {
320
+ error: _sharedUi.night.color.danger,
321
+ warn: _sharedUi.night.color.warning,
322
+ warning: _sharedUi.night.color.warning,
323
+ info: _sharedUi.night.color.info
324
+ };
325
+ function LogList({
326
+ block
327
+ }) {
328
+ const paged = (0, _primitives.usePaged)(block.entries, _agentCore.CAPS.listItems);
329
+ const {
330
+ visible
331
+ } = paged;
332
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_primitives.Card, {
333
+ title: "Console",
334
+ source: block.source,
335
+ testID: `buoy-block-logs-${block.id}`,
336
+ children: [visible.map((e, i) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
337
+ style: [_primitives.blockStyles.row, i > 0 && _primitives.blockStyles.rowDivider, styles.logRow],
338
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
339
+ style: [_primitives.blockStyles.pill, {
340
+ backgroundColor: `${LEVEL_COLOR[e.level] ?? _sharedUi.night.color.textTertiary}22`
341
+ }],
342
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
343
+ style: [_primitives.blockStyles.pillText, {
344
+ color: LEVEL_COLOR[e.level] ?? _sharedUi.night.color.textSecondary
345
+ }],
346
+ children: e.level.toUpperCase()
347
+ })
348
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
349
+ style: [_primitives.blockStyles.rowTitle, _primitives.blockStyles.mono],
350
+ numberOfLines: 3,
351
+ children: e.message
352
+ }), e.count > 1 ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
353
+ style: _primitives.blockStyles.rowTrailing,
354
+ children: ["\xD7", e.count]
355
+ }) : null]
356
+ }, `${e.level}-${e.message}-${i}`)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.More, {
357
+ paged: paged
358
+ })]
359
+ });
360
+ }
361
+ function Crash({
362
+ block
363
+ }) {
364
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_primitives.Card, {
365
+ tone: "danger",
366
+ testID: `buoy-block-crash-${block.id}`,
367
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
368
+ style: styles.crashHead,
369
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.AlertTriangle, {
370
+ size: 14,
371
+ color: _sharedUi.night.color.danger
372
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
373
+ style: styles.crashTitle,
374
+ children: ["The app crashed", block.route ? ` on ${block.route}` : ""]
375
+ })]
376
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
377
+ style: [_primitives.blockStyles.mono, styles.crashMsg],
378
+ numberOfLines: 4,
379
+ selectable: true,
380
+ children: block.message
381
+ }), block.suspect ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
382
+ style: styles.suspect,
383
+ children: ["Most likely cause: ", block.suspect.label]
384
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.ActionRow, {
385
+ blockId: block.id,
386
+ actions: [...(block.suspect?.action ? [{
387
+ ...block.suspect.action,
388
+ primary: true
389
+ }] : []), ...(block.actions ?? [])].slice(0, 2)
390
+ })]
391
+ });
392
+ }
393
+
394
+ /** A chip, not a card: the agent moved the app; let the user look. */
395
+ function Peek({
396
+ block
397
+ }) {
398
+ const h = (0, _context.useBlockHandlers)();
399
+ const can = h.supports?.minimize !== false;
400
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
401
+ testID: `buoy-block-peek-${block.id}`,
402
+ disabled: !can,
403
+ onPress: () => void h.runAction({
404
+ label: "Look",
405
+ minimize: true
406
+ }, block.id),
407
+ style: ({
408
+ pressed
409
+ }) => [styles.peek, pressed && {
410
+ opacity: 0.7
411
+ }],
412
+ accessibilityRole: "button",
413
+ accessibilityLabel: `${block.label}. Look at the app`,
414
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
415
+ style: styles.peekText,
416
+ children: block.label
417
+ }), can ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
418
+ style: styles.peekLook,
419
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Eye, {
420
+ size: 12,
421
+ color: _sharedUi.night.color.accent
422
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
423
+ style: styles.peekLookText,
424
+ children: "Look"
425
+ })]
426
+ }) : null]
427
+ });
428
+ }
429
+ const styles = _reactNative.StyleSheet.create({
430
+ method: {
431
+ color: _sharedUi.night.color.textSecondary,
432
+ fontSize: _sharedUi.night.font.micro,
433
+ fontWeight: "700",
434
+ letterSpacing: 0.4,
435
+ width: 44
436
+ },
437
+ // The provenance chip for a response an override rule synthesized. Loud on
438
+ // purpose: mocked data rendered like live data is how testers file bugs
439
+ // against reality that never existed.
440
+ mockedChip: {
441
+ color: _sharedUi.night.color.warning,
442
+ backgroundColor: _sharedUi.night.color.warningSoft,
443
+ fontSize: 9,
444
+ fontWeight: "700",
445
+ letterSpacing: 0.6,
446
+ paddingHorizontal: 5,
447
+ paddingVertical: 1,
448
+ borderRadius: _sharedUi.night.radius.badge,
449
+ overflow: "hidden"
450
+ },
451
+ reqHead: {
452
+ paddingTop: 12
453
+ },
454
+ // The segmented control draws its own track; this is only its gutter.
455
+ tabs: {
456
+ paddingHorizontal: 12,
457
+ paddingTop: 4,
458
+ paddingBottom: 8
459
+ },
460
+ tab: {
461
+ paddingHorizontal: 10,
462
+ paddingVertical: 5,
463
+ borderRadius: _sharedUi.night.radius.badge,
464
+ backgroundColor: _sharedUi.night.color.fill
465
+ },
466
+ tabOn: {
467
+ backgroundColor: _sharedUi.night.color.accentSoft
468
+ },
469
+ tabText: {
470
+ color: _sharedUi.night.color.textSecondary,
471
+ fontSize: _sharedUi.night.font.micro,
472
+ fontWeight: "600"
473
+ },
474
+ tabTextOn: {
475
+ color: _sharedUi.night.color.accent
476
+ },
477
+ body: {
478
+ paddingHorizontal: 12,
479
+ paddingBottom: 4,
480
+ lineHeight: 16,
481
+ color: _sharedUi.night.color.textSecondary
482
+ },
483
+ ruleBody: {
484
+ paddingHorizontal: 12,
485
+ paddingTop: 4,
486
+ paddingBottom: 4,
487
+ gap: 4
488
+ },
489
+ ruleLine: {
490
+ color: _sharedUi.night.color.text,
491
+ fontSize: _sharedUi.night.font.caption,
492
+ lineHeight: 18
493
+ },
494
+ ruleKey: {
495
+ color: _sharedUi.night.color.textSecondary,
496
+ fontWeight: "700"
497
+ },
498
+ on: {
499
+ alignSelf: "flex-start",
500
+ backgroundColor: _sharedUi.night.color.accent,
501
+ marginTop: 4
502
+ },
503
+ off: {
504
+ alignSelf: "flex-start",
505
+ backgroundColor: _sharedUi.night.color.fillTertiary,
506
+ marginTop: 4
507
+ },
508
+ chips: {
509
+ flexDirection: "row",
510
+ flexWrap: "wrap",
511
+ gap: 6,
512
+ padding: 12
513
+ },
514
+ chip: {
515
+ paddingHorizontal: 10,
516
+ paddingVertical: 6,
517
+ borderRadius: _sharedUi.night.radius.chip,
518
+ backgroundColor: _sharedUi.night.color.fill,
519
+ borderWidth: _reactNative.StyleSheet.hairlineWidth,
520
+ borderColor: _sharedUi.night.color.border
521
+ },
522
+ chipCurrent: {
523
+ backgroundColor: _sharedUi.night.color.accentSoft,
524
+ borderColor: _sharedUi.night.color.accentBorderStrong
525
+ },
526
+ chipText: {
527
+ color: _sharedUi.night.color.text,
528
+ fontSize: _sharedUi.night.font.caption,
529
+ fontFamily: "Menlo"
530
+ },
531
+ chipDynamic: {
532
+ color: _sharedUi.night.color.textSecondary
533
+ },
534
+ logRow: {
535
+ alignItems: "flex-start"
536
+ },
537
+ crashHead: {
538
+ flexDirection: "row",
539
+ alignItems: "center",
540
+ gap: 8,
541
+ paddingHorizontal: 12,
542
+ paddingTop: 12
543
+ },
544
+ crashTitle: {
545
+ color: _sharedUi.night.color.danger,
546
+ fontSize: _sharedUi.night.font.row,
547
+ fontWeight: "600"
548
+ },
549
+ crashMsg: {
550
+ paddingHorizontal: 12,
551
+ paddingTop: 6,
552
+ color: _sharedUi.night.color.text
553
+ },
554
+ suspect: {
555
+ color: _sharedUi.night.color.textSecondary,
556
+ fontSize: _sharedUi.night.font.caption,
557
+ paddingHorizontal: 12,
558
+ paddingTop: 6
559
+ },
560
+ peek: {
561
+ alignSelf: "flex-start",
562
+ flexDirection: "row",
563
+ alignItems: "center",
564
+ gap: 10,
565
+ paddingLeft: 12,
566
+ paddingRight: 10,
567
+ paddingVertical: 7,
568
+ borderRadius: _sharedUi.night.radius.chip,
569
+ backgroundColor: _sharedUi.night.color.fill
570
+ },
571
+ peekText: {
572
+ color: _sharedUi.night.color.textSecondary,
573
+ fontSize: _sharedUi.night.font.caption
574
+ },
575
+ peekLook: {
576
+ flexDirection: "row",
577
+ alignItems: "center",
578
+ gap: 4
579
+ },
580
+ peekLookText: {
581
+ color: _sharedUi.night.color.accent,
582
+ fontSize: _sharedUi.night.font.caption,
583
+ fontWeight: "600"
584
+ }
585
+ });
586
+ //# sourceMappingURL=ReceiptBlocks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_sharedUi","_agentCore","_context","_primitives","_jsxRuntime","statusColor","status","undefined","night","color","textTertiary","danger","warning","info","accent","pathOf","url","u","URL","pathname","search","StatusPill","jsx","View","style","b","pill","backgroundColor","children","Text","pillText","RequestList","block","h","useBlockHandlers","canOpen","supports","openTool","paged","usePaged","requests","CAPS","listItems","visible","jsxs","Card","title","source","testID","id","map","r","i","Pressable","disabled","onPress","runAction","label","toolId","select","row","rowDivider","accessibilityRole","styles","method","rowTitle","numberOfLines","mocked","mockedChip","durationMs","rowTrailing","ChevronRight","size","More","REQUEST_TABS","key","RequestCard","tab","setTab","useState","body","responseBody","requestBody","text","JSON","stringify","reqHead","request","tabs","NightSegmented","activeKey","onChange","mono","selectable","length","slice","ActionRow","blockId","actions","RuleCard","rule","outcome","kind","delayMs","name","tone","enabled","ruleBody","ruleLine","ruleKey","methods","join","urlPattern","times","hits","on","off","onAccent","textSecondary","dispatch","action","params","primary","ScreenElements","elements","chips","e","nativeTag","Eye","RouteChips","routes","current","dynamic","answer","value","path","chip","chipCurrent","chipText","chipDynamic","LEVEL_COLOR","error","warn","LogList","entries","logRow","level","toUpperCase","message","count","Crash","crashHead","AlertTriangle","crashTitle","route","crashMsg","suspect","Peek","can","minimize","pressed","peek","opacity","accessibilityLabel","peekText","peekLook","peekLookText","StyleSheet","create","fontSize","font","micro","fontWeight","letterSpacing","width","warningSoft","paddingHorizontal","paddingVertical","borderRadius","radius","badge","overflow","paddingTop","paddingBottom","fill","tabOn","accentSoft","tabText","tabTextOn","lineHeight","gap","caption","alignSelf","marginTop","fillTertiary","flexDirection","flexWrap","padding","borderWidth","hairlineWidth","borderColor","border","accentBorderStrong","fontFamily","alignItems","paddingLeft","paddingRight"],"sourceRoot":"../../../src","sources":["blocks/ReceiptBlocks.tsx"],"mappings":"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","ignoreList":[]}