opendevbrowser 0.0.33 → 0.0.34

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 (216) hide show
  1. package/README.md +1 -1
  2. package/dist/{accessibility-snapshot-JSPFVWZ6.js → accessibility-snapshot-VCBXK47S.js} +7 -7
  3. package/dist/{active-window-2OB2MSCR.js → active-window-7EUN36LZ.js} +7 -7
  4. package/dist/{annotate-VDZBZBKZ.js → annotate-VLBK7YB6.js} +6 -6
  5. package/dist/{attr-7XIO4MCH.js → attr-JNANQKM6.js} +6 -6
  6. package/dist/browser/browser-manager.d.ts.map +1 -1
  7. package/dist/browser/manager-types.d.ts +3 -0
  8. package/dist/browser/manager-types.d.ts.map +1 -1
  9. package/dist/browser/ops-browser-manager.d.ts.map +1 -1
  10. package/dist/browser/screencast-recorder.d.ts +1 -0
  11. package/dist/browser/screencast-recorder.d.ts.map +1 -1
  12. package/dist/{canvas-N4PAA274.js → canvas-V5LO4JVL.js} +6 -6
  13. package/dist/{capture-desktop-T5YO3EBI.js → capture-desktop-FKVDWTVG.js} +7 -7
  14. package/dist/{capture-window-UKEUBWKH.js → capture-window-QVPM2DN2.js} +7 -7
  15. package/dist/{check-PQB6KKMN.js → check-V3CWZ56S.js} +6 -6
  16. package/dist/{checked-RNZIMCU6.js → checked-Q27Q6YZN.js} +6 -6
  17. package/dist/{chunk-FBKPDILE.js → chunk-5FDXH4CS.js} +315 -37
  18. package/dist/chunk-5FDXH4CS.js.map +1 -0
  19. package/dist/{chunk-J3KYGJRQ.js → chunk-G6NQ7WYD.js} +2 -2
  20. package/dist/{chunk-27W46IKI.js → chunk-GC2FWISX.js} +22 -11
  21. package/dist/chunk-GC2FWISX.js.map +1 -0
  22. package/dist/{chunk-MJF67OTH.js → chunk-NX2XYJP5.js} +2 -2
  23. package/dist/{chunk-FDBUB7BM.js → chunk-OJAUKABV.js} +2 -2
  24. package/dist/{chunk-HMRANSDX.js → chunk-QXJDJDSZ.js} +34 -13
  25. package/dist/chunk-QXJDJDSZ.js.map +1 -0
  26. package/dist/{chunk-SKFB5ICF.js → chunk-TI5I6UWY.js} +8 -3
  27. package/dist/chunk-TI5I6UWY.js.map +1 -0
  28. package/dist/{chunk-W6YPVNDX.js → chunk-VTGG5ZU2.js} +2 -2
  29. package/dist/{chunk-YRRRUGSQ.js → chunk-VX47SJZM.js} +2 -2
  30. package/dist/{chunk-JROW6ZNN.js → chunk-VY47VKXU.js} +3 -3
  31. package/dist/{chunk-NURQB55J.js → chunk-WY72GYAH.js} +2 -2
  32. package/dist/{chunk-EOX6U6Q4.js → chunk-XRDCSHKZ.js} +158 -110
  33. package/dist/chunk-XRDCSHKZ.js.map +1 -0
  34. package/dist/{chunk-52ZIOWVU.js → chunk-Z3HIX2SE.js} +3 -3
  35. package/dist/cli/commands/inspiredesign.d.ts.map +1 -1
  36. package/dist/cli/daemon-commands.d.ts.map +1 -1
  37. package/dist/cli/index.js +75 -75
  38. package/dist/cli/index.js.map +1 -1
  39. package/dist/cli/utils/parse.d.ts +1 -0
  40. package/dist/cli/utils/parse.d.ts.map +1 -1
  41. package/dist/{click-U7ZFKSB4.js → click-EQDRSLR3.js} +6 -6
  42. package/dist/{clone-component-SWYAORTU.js → clone-component-SISUXTJS.js} +5 -5
  43. package/dist/{clone-page-WJ6UJOJG.js → clone-page-MLDPCBOY.js} +5 -5
  44. package/dist/{close-VKIGIKVT.js → close-2LQMJVOA.js} +5 -5
  45. package/dist/{close-NAVIHZ2T.js → close-7J7EV237.js} +5 -5
  46. package/dist/{connect-XVG2MOZL.js → connect-JFRSIW5M.js} +6 -6
  47. package/dist/{console-poll-XI5BZPL7.js → console-poll-NSVVUNEC.js} +6 -6
  48. package/dist/{cookie-import-QELKE7TK.js → cookie-import-B7IQTGTN.js} +5 -5
  49. package/dist/{cookie-list-QDA6KWIY.js → cookie-list-YHG7JCZZ.js} +5 -5
  50. package/dist/{daemon-CA4UIIZQ.js → daemon-ENU4FOV4.js} +4 -4
  51. package/dist/daemon-fingerprint.json +1 -1
  52. package/dist/{debug-trace-snapshot-AT4GAO57.js → debug-trace-snapshot-KLGU2AWY.js} +6 -6
  53. package/dist/{dialog-O3V2IBFH.js → dialog-MUVQIERS.js} +6 -6
  54. package/dist/{disconnect-NAX5TPTG.js → disconnect-KELQJ45J.js} +5 -5
  55. package/dist/{enabled-VT4FJXDX.js → enabled-SF6UU5HG.js} +6 -6
  56. package/dist/{goto-GBJG5NC4.js → goto-AZQWXYPG.js} +6 -6
  57. package/dist/guidance/context.d.ts.map +1 -1
  58. package/dist/guidance/recipes/generic.d.ts.map +1 -1
  59. package/dist/guidance/recipes/pinterest.d.ts.map +1 -1
  60. package/dist/guidance/recipes/site-recipe-validation.d.ts +27 -0
  61. package/dist/guidance/recipes/site-recipe-validation.d.ts.map +1 -0
  62. package/dist/guidance/types.d.ts +1 -0
  63. package/dist/guidance/types.d.ts.map +1 -1
  64. package/dist/{help-SUI4H77K.js → help-B44IBHXL.js} +3 -3
  65. package/dist/{hover-476ZNQZE.js → hover-MQRAKKVU.js} +6 -6
  66. package/dist/{html-5C4TXOV3.js → html-PLRTU2WS.js} +6 -6
  67. package/dist/index.js +49 -14
  68. package/dist/index.js.map +1 -1
  69. package/dist/{inspector-73ARPCIV.js → inspector-IY4GBIT6.js} +7 -7
  70. package/dist/{inspector-audit-QT6QY7KS.js → inspector-audit-7MQCRJHD.js} +9 -9
  71. package/dist/{inspector-plan-JRNSGN2Z.js → inspector-plan-ZAUDHBET.js} +7 -7
  72. package/dist/inspiredesign/contract.d.ts +1 -0
  73. package/dist/inspiredesign/contract.d.ts.map +1 -1
  74. package/dist/inspiredesign/reference-pattern-board.d.ts +5 -0
  75. package/dist/inspiredesign/reference-pattern-board.d.ts.map +1 -1
  76. package/dist/{inspiredesign-IPVZDLSQ.js → inspiredesign-VHPEO3UK.js} +80 -27
  77. package/dist/inspiredesign-VHPEO3UK.js.map +1 -0
  78. package/dist/{launch-B35YDRQC.js → launch-OCTWPTV5.js} +6 -6
  79. package/dist/{list-YETWKTKY.js → list-HUSYADUS.js} +5 -5
  80. package/dist/{list-JV55JVGB.js → list-JWKAMAUA.js} +5 -5
  81. package/dist/{macro-resolve-DQK4B3W3.js → macro-resolve-WOXMPZDQ.js} +6 -6
  82. package/dist/{network-poll-4GWHCJXI.js → network-poll-WHB62OEF.js} +6 -6
  83. package/dist/{new-XDCQPIEG.js → new-IKZBYBNK.js} +5 -5
  84. package/dist/{open-GIM3ZCSV.js → open-UA2VI6ZP.js} +5 -5
  85. package/dist/opendevbrowser.js +49 -14
  86. package/dist/opendevbrowser.js.map +1 -1
  87. package/dist/{perf-26VBXDPI.js → perf-DICS3VKH.js} +6 -6
  88. package/dist/{pointer-down-O3VSNAXW.js → pointer-down-2XPRZFJC.js} +7 -7
  89. package/dist/{pointer-drag-WQ5QGE6J.js → pointer-drag-7NY4BOLH.js} +7 -7
  90. package/dist/{pointer-move-4N4D7JY2.js → pointer-move-FWEXMH37.js} +7 -7
  91. package/dist/{pointer-up-CQC4NPDX.js → pointer-up-VU2OHK5D.js} +7 -7
  92. package/dist/{press-XGJD45CU.js → press-W7IZ3FCX.js} +6 -6
  93. package/dist/{product-video-HD4ZOUI7.js → product-video-XCZ6CHR5.js} +7 -7
  94. package/dist/providers/browser-output-artifacts.d.ts +13 -0
  95. package/dist/providers/browser-output-artifacts.d.ts.map +1 -0
  96. package/dist/providers/renderer.d.ts.map +1 -1
  97. package/dist/providers/workflows.d.ts.map +1 -1
  98. package/dist/{providers-KKNPJSQK.js → providers-XCNSU3T6.js} +2 -2
  99. package/dist/public-surface/generated-manifest.d.ts +3 -3
  100. package/dist/public-surface/generated-manifest.d.ts.map +1 -1
  101. package/dist/public-surface/source.d.ts.map +1 -1
  102. package/dist/{research-VUWWEQ4R.js → research-AYCKHOWK.js} +7 -7
  103. package/dist/{review-LZ3TA7U7.js → review-PP2UNSMJ.js} +7 -7
  104. package/dist/{review-desktop-LAO7U7T3.js → review-desktop-3JOJFUEJ.js} +7 -7
  105. package/dist/{rpc-HKNIVFGC.js → rpc-7EPTJQQ6.js} +6 -6
  106. package/dist/{run-SHCF53FO.js → run-P6UJS3D4.js} +4 -4
  107. package/dist/{screencast-start-JHMQZVWJ.js → screencast-start-ZZYNH2HT.js} +6 -6
  108. package/dist/{screencast-stop-RWQTWWQS.js → screencast-stop-Y6ADFOFA.js} +6 -6
  109. package/dist/{screenshot-QHFYO6PB.js → screenshot-CJB7PMAF.js} +6 -6
  110. package/dist/{scroll-L3FTMAV4.js → scroll-BP5MA4ZT.js} +6 -6
  111. package/dist/{scroll-into-view-JVDHX4WU.js → scroll-into-view-O3RDWLM2.js} +6 -6
  112. package/dist/{select-X4BO7GTB.js → select-QLCNRI36.js} +6 -6
  113. package/dist/{serve-JIMIBCNO.js → serve-OO2MQWGL.js} +5 -5
  114. package/dist/{shopping-EGSDP2GL.js → shopping-UYHCYPAH.js} +7 -7
  115. package/dist/{snapshot-QGJ7RDNV.js → snapshot-SXYZ3CMC.js} +6 -6
  116. package/dist/{status-CKGPNYIH.js → status-AL2AHVA5.js} +5 -5
  117. package/dist/{status-LEBY2X7N.js → status-QQW7REK4.js} +7 -7
  118. package/dist/{status-capabilities-6QTWNGKM.js → status-capabilities-AVHJYQQQ.js} +7 -7
  119. package/dist/{text-VUZU7D3L.js → text-B6Z47EOA.js} +6 -6
  120. package/dist/tools/inspiredesign_run.d.ts.map +1 -1
  121. package/dist/tools/product_video_run.d.ts.map +1 -1
  122. package/dist/{type-N5SURP74.js → type-LR3F3SQY.js} +6 -6
  123. package/dist/{uncheck-JFMK3SSY.js → uncheck-5PJEHR7J.js} +6 -6
  124. package/dist/{upload-KFUYLL7M.js → upload-HQ3QN2OW.js} +6 -6
  125. package/dist/{use-CNMPP2ED.js → use-KFZLMRUH.js} +5 -5
  126. package/dist/{value-J335MPZE.js → value-TKUFUK5I.js} +6 -6
  127. package/dist/{visible-YQZWWPBZ.js → visible-P5Z2N2QR.js} +6 -6
  128. package/dist/{wait-IC7YJJPJ.js → wait-BYSHJPSC.js} +6 -6
  129. package/dist/{windows-AGVQ3KX3.js → windows-6GTD25EU.js} +7 -7
  130. package/extension/manifest.json +1 -1
  131. package/package.json +1 -1
  132. package/dist/chunk-27W46IKI.js.map +0 -1
  133. package/dist/chunk-EOX6U6Q4.js.map +0 -1
  134. package/dist/chunk-FBKPDILE.js.map +0 -1
  135. package/dist/chunk-HMRANSDX.js.map +0 -1
  136. package/dist/chunk-SKFB5ICF.js.map +0 -1
  137. package/dist/inspiredesign-IPVZDLSQ.js.map +0 -1
  138. /package/dist/{accessibility-snapshot-JSPFVWZ6.js.map → accessibility-snapshot-VCBXK47S.js.map} +0 -0
  139. /package/dist/{active-window-2OB2MSCR.js.map → active-window-7EUN36LZ.js.map} +0 -0
  140. /package/dist/{annotate-VDZBZBKZ.js.map → annotate-VLBK7YB6.js.map} +0 -0
  141. /package/dist/{attr-7XIO4MCH.js.map → attr-JNANQKM6.js.map} +0 -0
  142. /package/dist/{canvas-N4PAA274.js.map → canvas-V5LO4JVL.js.map} +0 -0
  143. /package/dist/{capture-desktop-T5YO3EBI.js.map → capture-desktop-FKVDWTVG.js.map} +0 -0
  144. /package/dist/{capture-window-UKEUBWKH.js.map → capture-window-QVPM2DN2.js.map} +0 -0
  145. /package/dist/{check-PQB6KKMN.js.map → check-V3CWZ56S.js.map} +0 -0
  146. /package/dist/{checked-RNZIMCU6.js.map → checked-Q27Q6YZN.js.map} +0 -0
  147. /package/dist/{chunk-J3KYGJRQ.js.map → chunk-G6NQ7WYD.js.map} +0 -0
  148. /package/dist/{chunk-MJF67OTH.js.map → chunk-NX2XYJP5.js.map} +0 -0
  149. /package/dist/{chunk-FDBUB7BM.js.map → chunk-OJAUKABV.js.map} +0 -0
  150. /package/dist/{chunk-W6YPVNDX.js.map → chunk-VTGG5ZU2.js.map} +0 -0
  151. /package/dist/{chunk-YRRRUGSQ.js.map → chunk-VX47SJZM.js.map} +0 -0
  152. /package/dist/{chunk-JROW6ZNN.js.map → chunk-VY47VKXU.js.map} +0 -0
  153. /package/dist/{chunk-NURQB55J.js.map → chunk-WY72GYAH.js.map} +0 -0
  154. /package/dist/{chunk-52ZIOWVU.js.map → chunk-Z3HIX2SE.js.map} +0 -0
  155. /package/dist/{click-U7ZFKSB4.js.map → click-EQDRSLR3.js.map} +0 -0
  156. /package/dist/{clone-component-SWYAORTU.js.map → clone-component-SISUXTJS.js.map} +0 -0
  157. /package/dist/{clone-page-WJ6UJOJG.js.map → clone-page-MLDPCBOY.js.map} +0 -0
  158. /package/dist/{close-VKIGIKVT.js.map → close-2LQMJVOA.js.map} +0 -0
  159. /package/dist/{close-NAVIHZ2T.js.map → close-7J7EV237.js.map} +0 -0
  160. /package/dist/{connect-XVG2MOZL.js.map → connect-JFRSIW5M.js.map} +0 -0
  161. /package/dist/{console-poll-XI5BZPL7.js.map → console-poll-NSVVUNEC.js.map} +0 -0
  162. /package/dist/{cookie-import-QELKE7TK.js.map → cookie-import-B7IQTGTN.js.map} +0 -0
  163. /package/dist/{cookie-list-QDA6KWIY.js.map → cookie-list-YHG7JCZZ.js.map} +0 -0
  164. /package/dist/{daemon-CA4UIIZQ.js.map → daemon-ENU4FOV4.js.map} +0 -0
  165. /package/dist/{debug-trace-snapshot-AT4GAO57.js.map → debug-trace-snapshot-KLGU2AWY.js.map} +0 -0
  166. /package/dist/{dialog-O3V2IBFH.js.map → dialog-MUVQIERS.js.map} +0 -0
  167. /package/dist/{disconnect-NAX5TPTG.js.map → disconnect-KELQJ45J.js.map} +0 -0
  168. /package/dist/{enabled-VT4FJXDX.js.map → enabled-SF6UU5HG.js.map} +0 -0
  169. /package/dist/{goto-GBJG5NC4.js.map → goto-AZQWXYPG.js.map} +0 -0
  170. /package/dist/{help-SUI4H77K.js.map → help-B44IBHXL.js.map} +0 -0
  171. /package/dist/{hover-476ZNQZE.js.map → hover-MQRAKKVU.js.map} +0 -0
  172. /package/dist/{html-5C4TXOV3.js.map → html-PLRTU2WS.js.map} +0 -0
  173. /package/dist/{inspector-73ARPCIV.js.map → inspector-IY4GBIT6.js.map} +0 -0
  174. /package/dist/{inspector-audit-QT6QY7KS.js.map → inspector-audit-7MQCRJHD.js.map} +0 -0
  175. /package/dist/{inspector-plan-JRNSGN2Z.js.map → inspector-plan-ZAUDHBET.js.map} +0 -0
  176. /package/dist/{launch-B35YDRQC.js.map → launch-OCTWPTV5.js.map} +0 -0
  177. /package/dist/{list-YETWKTKY.js.map → list-HUSYADUS.js.map} +0 -0
  178. /package/dist/{list-JV55JVGB.js.map → list-JWKAMAUA.js.map} +0 -0
  179. /package/dist/{macro-resolve-DQK4B3W3.js.map → macro-resolve-WOXMPZDQ.js.map} +0 -0
  180. /package/dist/{network-poll-4GWHCJXI.js.map → network-poll-WHB62OEF.js.map} +0 -0
  181. /package/dist/{new-XDCQPIEG.js.map → new-IKZBYBNK.js.map} +0 -0
  182. /package/dist/{open-GIM3ZCSV.js.map → open-UA2VI6ZP.js.map} +0 -0
  183. /package/dist/{perf-26VBXDPI.js.map → perf-DICS3VKH.js.map} +0 -0
  184. /package/dist/{pointer-down-O3VSNAXW.js.map → pointer-down-2XPRZFJC.js.map} +0 -0
  185. /package/dist/{pointer-drag-WQ5QGE6J.js.map → pointer-drag-7NY4BOLH.js.map} +0 -0
  186. /package/dist/{pointer-move-4N4D7JY2.js.map → pointer-move-FWEXMH37.js.map} +0 -0
  187. /package/dist/{pointer-up-CQC4NPDX.js.map → pointer-up-VU2OHK5D.js.map} +0 -0
  188. /package/dist/{press-XGJD45CU.js.map → press-W7IZ3FCX.js.map} +0 -0
  189. /package/dist/{product-video-HD4ZOUI7.js.map → product-video-XCZ6CHR5.js.map} +0 -0
  190. /package/dist/{providers-KKNPJSQK.js.map → providers-XCNSU3T6.js.map} +0 -0
  191. /package/dist/{research-VUWWEQ4R.js.map → research-AYCKHOWK.js.map} +0 -0
  192. /package/dist/{review-LZ3TA7U7.js.map → review-PP2UNSMJ.js.map} +0 -0
  193. /package/dist/{review-desktop-LAO7U7T3.js.map → review-desktop-3JOJFUEJ.js.map} +0 -0
  194. /package/dist/{rpc-HKNIVFGC.js.map → rpc-7EPTJQQ6.js.map} +0 -0
  195. /package/dist/{run-SHCF53FO.js.map → run-P6UJS3D4.js.map} +0 -0
  196. /package/dist/{screencast-start-JHMQZVWJ.js.map → screencast-start-ZZYNH2HT.js.map} +0 -0
  197. /package/dist/{screencast-stop-RWQTWWQS.js.map → screencast-stop-Y6ADFOFA.js.map} +0 -0
  198. /package/dist/{screenshot-QHFYO6PB.js.map → screenshot-CJB7PMAF.js.map} +0 -0
  199. /package/dist/{scroll-L3FTMAV4.js.map → scroll-BP5MA4ZT.js.map} +0 -0
  200. /package/dist/{scroll-into-view-JVDHX4WU.js.map → scroll-into-view-O3RDWLM2.js.map} +0 -0
  201. /package/dist/{select-X4BO7GTB.js.map → select-QLCNRI36.js.map} +0 -0
  202. /package/dist/{serve-JIMIBCNO.js.map → serve-OO2MQWGL.js.map} +0 -0
  203. /package/dist/{shopping-EGSDP2GL.js.map → shopping-UYHCYPAH.js.map} +0 -0
  204. /package/dist/{snapshot-QGJ7RDNV.js.map → snapshot-SXYZ3CMC.js.map} +0 -0
  205. /package/dist/{status-CKGPNYIH.js.map → status-AL2AHVA5.js.map} +0 -0
  206. /package/dist/{status-LEBY2X7N.js.map → status-QQW7REK4.js.map} +0 -0
  207. /package/dist/{status-capabilities-6QTWNGKM.js.map → status-capabilities-AVHJYQQQ.js.map} +0 -0
  208. /package/dist/{text-VUZU7D3L.js.map → text-B6Z47EOA.js.map} +0 -0
  209. /package/dist/{type-N5SURP74.js.map → type-LR3F3SQY.js.map} +0 -0
  210. /package/dist/{uncheck-JFMK3SSY.js.map → uncheck-5PJEHR7J.js.map} +0 -0
  211. /package/dist/{upload-KFUYLL7M.js.map → upload-HQ3QN2OW.js.map} +0 -0
  212. /package/dist/{use-CNMPP2ED.js.map → use-KFZLMRUH.js.map} +0 -0
  213. /package/dist/{value-J335MPZE.js.map → value-TKUFUK5I.js.map} +0 -0
  214. /package/dist/{visible-YQZWWPBZ.js.map → visible-P5Z2N2QR.js.map} +0 -0
  215. /package/dist/{wait-IC7YJJPJ.js.map → wait-BYSHJPSC.js.map} +0 -0
  216. /package/dist/{windows-AGVQ3KX3.js.map → windows-6GTD25EU.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/cli/utils/parse.ts"],"sourcesContent":["import { createUsageError } from \"../errors\";\n\ntype NumberFlagOptions = {\n min?: number;\n max?: number;\n integer?: boolean;\n};\n\nconst SIGNED_INTEGER_PATTERN = /^-?\\d+$/;\nconst UNSIGNED_INTEGER_PATTERN = /^\\d+$/;\nconst SIGNED_DECIMAL_PATTERN = /^-?(?:\\d+|\\d+\\.\\d+|\\.\\d+)$/;\nconst UNSIGNED_DECIMAL_PATTERN = /^(?:\\d+|\\d+\\.\\d+|\\.\\d+)$/;\n\nfunction allowsNegative(options: NumberFlagOptions): boolean {\n return typeof options.min !== \"number\" || options.min < 0;\n}\n\nfunction decimalPattern(options: NumberFlagOptions): RegExp {\n const signed = allowsNegative(options);\n if (options.integer ?? true) {\n return signed ? SIGNED_INTEGER_PATTERN : UNSIGNED_INTEGER_PATTERN;\n }\n return signed ? SIGNED_DECIMAL_PATTERN : UNSIGNED_DECIMAL_PATTERN;\n}\n\nexport function parseNumberFlag(value: string, flag: string, options: NumberFlagOptions = {}): number {\n if (value.trim() === \"\" || value !== value.trim() || !decimalPattern(options).test(value)) {\n throw createUsageError(`Invalid ${flag}: ${value}`);\n }\n const parsed = Number(value);\n if (!Number.isFinite(parsed)) {\n throw createUsageError(`Invalid ${flag}: ${value}`);\n }\n const requireInteger = options.integer ?? true;\n if (requireInteger && !Number.isInteger(parsed)) {\n throw createUsageError(`Invalid ${flag}: ${value}`);\n }\n if (typeof options.min === \"number\" && parsed < options.min) {\n throw createUsageError(`Invalid ${flag}: ${value}`);\n }\n if (typeof options.max === \"number\" && parsed > options.max) {\n throw createUsageError(`Invalid ${flag}: ${value}`);\n }\n return parsed;\n}\n\nexport function parseBooleanFlag(value: string, flag: string): boolean {\n const normalized = value.trim().toLowerCase();\n if (normalized === \"true\" || normalized === \"1\") {\n return true;\n }\n if (normalized === \"false\" || normalized === \"0\") {\n return false;\n }\n throw createUsageError(`Invalid ${flag}: ${value}`);\n}\n\nexport function parseOptionalStringFlag(rawArgs: string[], flag: string): string | undefined {\n for (let i = 0; i < rawArgs.length; i += 1) {\n const arg = rawArgs[i];\n if (arg === flag) {\n const value = rawArgs[i + 1];\n if (!value) {\n throw createUsageError(`Missing value for ${flag}`);\n }\n return value;\n }\n if (arg?.startsWith(`${flag}=`)) {\n const value = arg.split(\"=\", 2)[1];\n if (!value) {\n throw createUsageError(`Missing value for ${flag}`);\n }\n return value;\n }\n }\n return undefined;\n}\n\nexport function parseStringArrayFlag(rawArgs: string[], flag: string): string[] | undefined {\n const value = parseOptionalStringFlag(rawArgs, flag);\n if (typeof value !== \"string\") {\n return undefined;\n }\n const items = value.split(\",\").map((item) => item.trim()).filter((item) => item.length > 0);\n if (items.length === 0) {\n throw createUsageError(`Missing value for ${flag}`);\n }\n return items;\n}\n\nexport function parseRepeatedStringFlag(rawArgs: string[], flag: string): string[] | undefined {\n const values: string[] = [];\n for (let index = 0; index < rawArgs.length; index += 1) {\n const arg = rawArgs[index];\n if (arg === flag) {\n const value = rawArgs[index + 1];\n if (!value) {\n throw createUsageError(`Missing value for ${flag}`);\n }\n values.push(value);\n index += 1;\n continue;\n }\n if (arg?.startsWith(`${flag}=`)) {\n const value = arg.split(\"=\", 2)[1];\n if (!value) {\n throw createUsageError(`Missing value for ${flag}`);\n }\n values.push(value);\n }\n }\n return values.length > 0 ? values : undefined;\n}\n"],"mappings":"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","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/cli/commands/inspiredesign.ts"],"sourcesContent":["import type { ParsedArgs } from \"../args\";\nimport { callDaemon } from \"../client\";\nimport { createUsageError } from \"../errors\";\nimport { DEFAULT_WORKFLOW_TRANSPORT_TIMEOUT_MS } from \"../transport-timeouts\";\nimport {\n parseBooleanFlag,\n parseNumberFlag,\n parseOptionalStringFlag,\n parseRepeatedStringFlag\n} from \"../utils/parse\";\nimport { buildWorkflowCompletionMessage } from \"../utils/workflow-message\";\nimport { isChallengeAutomationMode, type ChallengeAutomationMode } from \"../../challenges/types\";\nimport { resolveInspiredesignCaptureMode } from \"../../inspiredesign/capture-mode\";\nimport type { InspiredesignVisualEvidenceMode } from \"../../inspiredesign/visual-evidence\";\nimport type { WorkflowBrowserMode } from \"../../providers/types\";\nimport { resolveWorkflowOutputDirFlag } from \"./workflow-output\";\n\ntype InspiredesignCommandArgs = {\n brief?: string;\n query?: string;\n providers?: string[];\n maxReferences?: number;\n visualEvidence?: InspiredesignVisualEvidenceMode;\n urls?: string[];\n captureMode?: \"off\" | \"deep\";\n includePrototypeGuidance?: boolean;\n mode?: \"compact\" | \"json\" | \"md\" | \"context\" | \"path\";\n timeoutMs?: number;\n outputDir?: string;\n ttlHours?: number;\n browserMode?: WorkflowBrowserMode;\n useCookies?: boolean;\n challengeAutomationMode?: ChallengeAutomationMode;\n cookiePolicyOverride?: \"off\" | \"auto\" | \"required\";\n};\n\nconst MODE_VALUES = new Set([\"compact\", \"json\", \"md\", \"context\", \"path\"]);\nconst CAPTURE_MODE_VALUES = new Set([\"off\", \"deep\"]);\nconst COOKIE_POLICY_VALUES = new Set([\"off\", \"auto\", \"required\"]);\nconst BROWSER_MODE_VALUES = new Set([\"auto\", \"extension\", \"managed\"]);\nconst VISUAL_EVIDENCE_VALUES = new Set([\"off\", \"auto\", \"required\"]);\nconst HARVEST_DEFAULT_MAX_REFERENCES = 5;\nconst MAX_REFERENCES_LIMIT = 10;\n\nconst requireValue = (rawArgs: string[], index: number, flag: string): string => {\n const value = rawArgs[index + 1];\n if (!value) {\n throw createUsageError(`Missing value for ${flag}`);\n }\n return value;\n};\n\nconst parseInspiredesignArgs = (rawArgs: string[]): InspiredesignCommandArgs => {\n const parsed: InspiredesignCommandArgs = {\n brief: parseOptionalStringFlag(rawArgs, \"--brief\"),\n query: parseOptionalStringFlag(rawArgs, \"--query\"),\n providers: parseRepeatedStringFlag(rawArgs, \"--provider\"),\n urls: parseRepeatedStringFlag(rawArgs, \"--url\")\n };\n\n for (let index = 0; index < rawArgs.length; index += 1) {\n const arg = rawArgs[index];\n\n if (arg === \"--brief\" || arg === \"--query\" || arg === \"--provider\" || arg === \"--url\") {\n index += 1;\n continue;\n }\n if (\n arg?.startsWith(\"--brief=\")\n || arg?.startsWith(\"--query=\")\n || arg?.startsWith(\"--provider=\")\n || arg?.startsWith(\"--url=\")\n ) {\n continue;\n }\n\n if (arg === \"--capture-mode\") {\n const value = requireValue(rawArgs, index, \"--capture-mode\").toLowerCase();\n if (!CAPTURE_MODE_VALUES.has(value)) {\n throw createUsageError(`Invalid --capture-mode: ${value}`);\n }\n parsed.captureMode = value as InspiredesignCommandArgs[\"captureMode\"];\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--capture-mode=\")) {\n const value = (arg.split(\"=\", 2)[1] ?? \"\").toLowerCase();\n if (!CAPTURE_MODE_VALUES.has(value)) {\n throw createUsageError(`Invalid --capture-mode: ${value}`);\n }\n parsed.captureMode = value as InspiredesignCommandArgs[\"captureMode\"];\n continue;\n }\n\n if (arg === \"--include-prototype-guidance\") {\n parsed.includePrototypeGuidance = true;\n continue;\n }\n if (arg?.startsWith(\"--include-prototype-guidance=\")) {\n parsed.includePrototypeGuidance = parseBooleanFlag(arg.split(\"=\", 2)[1] ?? \"\", \"--include-prototype-guidance\");\n continue;\n }\n\n if (arg === \"--mode\") {\n const value = requireValue(rawArgs, index, \"--mode\").toLowerCase();\n if (!MODE_VALUES.has(value)) {\n throw createUsageError(`Invalid --mode: ${value}`);\n }\n parsed.mode = value as InspiredesignCommandArgs[\"mode\"];\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--mode=\")) {\n const value = (arg.split(\"=\", 2)[1] ?? \"\").toLowerCase();\n if (!MODE_VALUES.has(value)) {\n throw createUsageError(`Invalid --mode: ${value}`);\n }\n parsed.mode = value as InspiredesignCommandArgs[\"mode\"];\n continue;\n }\n\n if (arg === \"--max-references\") {\n parsed.maxReferences = parseNumberFlag(requireValue(rawArgs, index, \"--max-references\"), \"--max-references\", {\n min: 1,\n max: MAX_REFERENCES_LIMIT\n });\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--max-references=\")) {\n parsed.maxReferences = parseNumberFlag(arg.split(\"=\", 2)[1] ?? \"\", \"--max-references\", {\n min: 1,\n max: MAX_REFERENCES_LIMIT\n });\n continue;\n }\n\n if (arg === \"--visual-evidence\") {\n const value = requireValue(rawArgs, index, \"--visual-evidence\").toLowerCase();\n if (!VISUAL_EVIDENCE_VALUES.has(value)) {\n throw createUsageError(`Invalid --visual-evidence: ${value}`);\n }\n parsed.visualEvidence = value as InspiredesignVisualEvidenceMode;\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--visual-evidence=\")) {\n const value = (arg.split(\"=\", 2)[1] ?? \"\").toLowerCase();\n if (!VISUAL_EVIDENCE_VALUES.has(value)) {\n throw createUsageError(`Invalid --visual-evidence: ${value}`);\n }\n parsed.visualEvidence = value as InspiredesignVisualEvidenceMode;\n continue;\n }\n\n if (arg === \"--timeout-ms\") {\n parsed.timeoutMs = parseNumberFlag(requireValue(rawArgs, index, \"--timeout-ms\"), \"--timeout-ms\", { min: 1 });\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--timeout-ms=\")) {\n parsed.timeoutMs = parseNumberFlag(arg.split(\"=\", 2)[1] ?? \"\", \"--timeout-ms\", { min: 1 });\n continue;\n }\n\n if (arg === \"--output-dir\") {\n parsed.outputDir = resolveWorkflowOutputDirFlag(requireValue(rawArgs, index, \"--output-dir\"));\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--output-dir=\")) {\n parsed.outputDir = resolveWorkflowOutputDirFlag(arg.split(\"=\", 2)[1]);\n continue;\n }\n\n if (arg === \"--ttl-hours\") {\n parsed.ttlHours = parseNumberFlag(requireValue(rawArgs, index, \"--ttl-hours\"), \"--ttl-hours\", { min: 1, max: 168 });\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--ttl-hours=\")) {\n parsed.ttlHours = parseNumberFlag(arg.split(\"=\", 2)[1] ?? \"\", \"--ttl-hours\", { min: 1, max: 168 });\n continue;\n }\n\n if (arg === \"--browser-mode\") {\n const value = requireValue(rawArgs, index, \"--browser-mode\").toLowerCase();\n if (!BROWSER_MODE_VALUES.has(value)) {\n throw createUsageError(`Invalid --browser-mode: ${value}`);\n }\n parsed.browserMode = value as WorkflowBrowserMode;\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--browser-mode=\")) {\n const value = (arg.split(\"=\", 2)[1] ?? \"\").toLowerCase();\n if (!BROWSER_MODE_VALUES.has(value)) {\n throw createUsageError(`Invalid --browser-mode: ${value}`);\n }\n parsed.browserMode = value as WorkflowBrowserMode;\n continue;\n }\n\n if (arg === \"--use-cookies\") {\n parsed.useCookies = true;\n continue;\n }\n if (arg?.startsWith(\"--use-cookies=\")) {\n parsed.useCookies = parseBooleanFlag(arg.split(\"=\", 2)[1] ?? \"\", \"--use-cookies\");\n continue;\n }\n\n if (arg === \"--challenge-automation-mode\") {\n const value = requireValue(rawArgs, index, \"--challenge-automation-mode\");\n if (!isChallengeAutomationMode(value)) {\n throw createUsageError(`Invalid --challenge-automation-mode: ${value}`);\n }\n parsed.challengeAutomationMode = value;\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--challenge-automation-mode=\")) {\n const value = arg.split(\"=\", 2)[1] ?? \"\";\n if (!isChallengeAutomationMode(value)) {\n throw createUsageError(`Invalid --challenge-automation-mode: ${value}`);\n }\n parsed.challengeAutomationMode = value;\n continue;\n }\n\n if (arg === \"--cookie-policy-override\" || arg === \"--cookie-policy\") {\n const value = requireValue(rawArgs, index, arg).toLowerCase();\n if (!COOKIE_POLICY_VALUES.has(value)) {\n throw createUsageError(`Invalid ${arg}: ${value}`);\n }\n parsed.cookiePolicyOverride = value as InspiredesignCommandArgs[\"cookiePolicyOverride\"];\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--cookie-policy-override=\") || arg?.startsWith(\"--cookie-policy=\")) {\n const value = (arg.split(\"=\", 2)[1] ?? \"\").toLowerCase();\n if (!COOKIE_POLICY_VALUES.has(value)) {\n throw createUsageError(`Invalid --cookie-policy-override: ${value}`);\n }\n parsed.cookiePolicyOverride = value as InspiredesignCommandArgs[\"cookiePolicyOverride\"];\n }\n }\n\n return parsed;\n};\n\nexport async function runInspiredesignCommand(args: ParsedArgs) {\n const [subcommand, ...rest] = args.rawArgs;\n if (subcommand !== \"run\" && subcommand !== \"harvest\") {\n throw createUsageError(\"Usage: opendevbrowser inspiredesign <run|harvest> --brief <value> [--url <url>] [options]\");\n }\n\n const parsed = parseInspiredesignArgs(rest);\n if (!parsed.brief?.trim()) {\n throw createUsageError(\"Missing --brief\");\n }\n if (subcommand === \"run\" && parsed.query) {\n throw createUsageError(\"--query is only supported by inspiredesign harvest\");\n }\n const isHarvest = subcommand === \"harvest\";\n if (parsed.providers && parsed.providers.length > 0 && !parsed.query) {\n throw createUsageError(\"--provider requires --query\");\n }\n if (isHarvest && !parsed.query && (!parsed.urls || parsed.urls.length === 0)) {\n throw createUsageError(\"inspiredesign harvest requires --query or --url\");\n }\n const captureMode = resolveInspiredesignCaptureMode(parsed.captureMode, parsed.urls);\n\n const data = await callDaemon(\"inspiredesign.run\", {\n brief: parsed.brief,\n harvest: isHarvest,\n query: parsed.query,\n providers: parsed.providers,\n maxReferences: parsed.maxReferences ?? (isHarvest ? HARVEST_DEFAULT_MAX_REFERENCES : undefined),\n visualEvidence: parsed.visualEvidence ?? (isHarvest ? \"required\" : \"off\"),\n urls: parsed.urls,\n captureMode,\n includePrototypeGuidance: parsed.includePrototypeGuidance,\n mode: parsed.mode ?? (isHarvest ? \"path\" : \"compact\"),\n timeoutMs: parsed.timeoutMs ?? DEFAULT_WORKFLOW_TRANSPORT_TIMEOUT_MS,\n outputDir: resolveWorkflowOutputDirFlag(parsed.outputDir),\n ttlHours: parsed.ttlHours,\n browserMode: parsed.browserMode,\n useCookies: parsed.useCookies,\n challengeAutomationMode: parsed.challengeAutomationMode,\n cookiePolicyOverride: parsed.cookiePolicyOverride\n });\n\n return {\n success: true,\n message: buildWorkflowCompletionMessage(\"Inspiredesign workflow\", data),\n data\n };\n}\n\nexport const __test__ = {\n parseInspiredesignArgs\n};\n"],"mappings":"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","names":[]}