@koda-sl/baker-cli 0.537.0 → 0.538.0-dev.fc2958a1d

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 (852) hide show
  1. package/README.md +1 -1
  2. package/dist/account-2RNYGT6E.js +82 -0
  3. package/dist/account-T26J6HSJ.js +82 -0
  4. package/dist/account-reads-P2WXB3NZ.js +219 -0
  5. package/dist/account-users-REWJY2TN.js +64 -0
  6. package/dist/account-writes-QEZQCU46.js +68 -0
  7. package/dist/accounts-MJ7AGPOW.js +701 -0
  8. package/dist/accounts-PGSNRUNV.js +80 -0
  9. package/dist/actions-NGBCTPNG.js +55 -0
  10. package/dist/activecampaign-ASE4IVTD.js +938 -0
  11. package/dist/ad-group-writes-MVQKICSC.js +172 -0
  12. package/dist/ad-groups-5OGD7PJ7.js +70 -0
  13. package/dist/ad-writes-OVD6EESQ.js +176 -0
  14. package/dist/add-QBEF2C7Z.js +107 -0
  15. package/dist/add-YJP43JWJ.js +305 -0
  16. package/dist/ads-GF7QLKBX.js +48 -0
  17. package/dist/ads-SCWCG2YI.js +79 -0
  18. package/dist/advertisers-SUZT4NRJ.js +123 -0
  19. package/dist/analytics-NJBF3U54.js +2437 -0
  20. package/dist/analytics-PI6SXDW4.js +447 -0
  21. package/dist/animate-HV2QJWVE.js +480 -0
  22. package/dist/assign-6YG56OCM.js +80 -0
  23. package/dist/audience-size-5X3BHQ6Q.js +76 -0
  24. package/dist/audiences-6N5B7CA2.js +280 -0
  25. package/dist/audit-PLXF2NAS.js +154 -0
  26. package/dist/autocomplete-YJSDRTMT.js +114 -0
  27. package/dist/avatars-BDQWTQKY.js +38 -0
  28. package/dist/bid-pricing-BUNOVWUB.js +103 -0
  29. package/dist/brand-MHFSUXWN.js +22 -0
  30. package/dist/brief-A5AEZBZL.js +543 -0
  31. package/dist/campaign-groups-UYNINWXX.js +99 -0
  32. package/dist/campaign-writes-RCA52SAP.js +168 -0
  33. package/dist/campaign-writes-TFRV62VN.js +176 -0
  34. package/dist/campaigns-CIQIZ46G.js +113 -0
  35. package/dist/campaigns-EETR5UJR.js +111 -0
  36. package/dist/campaigns-KPUA4GP2.js +78 -0
  37. package/dist/canvas-M3RXWJ2T.js +46 -0
  38. package/dist/capabilities-XFLST37G.js +147 -0
  39. package/dist/catalog-JVBRY2U6.js +66 -0
  40. package/dist/catalogs-QYAAPTMV.js +130 -0
  41. package/dist/changes-Y4NAQ2IV.js +135 -0
  42. package/dist/chatgpt-KJAUJBRK.js +47 -0
  43. package/dist/chats-5BNHZWO7.js +384 -0
  44. package/dist/check-ESD3QPIZ.js +107 -0
  45. package/dist/chunk-2EVHGBQY.js +319 -0
  46. package/dist/chunk-2JFCDUZO.js +156 -0
  47. package/dist/chunk-2MAQKELK.js +494 -0
  48. package/dist/chunk-2OCUXPWT.js +1919 -0
  49. package/dist/chunk-3ANPDWU7.js +438 -0
  50. package/dist/chunk-3C3IR2F6.js +2209 -0
  51. package/dist/chunk-3GMJEM4C.js +377 -0
  52. package/dist/chunk-4YWSFFOP.js +831 -0
  53. package/dist/chunk-5JG77PP3.js +57 -0
  54. package/dist/chunk-5TWI6FFY.js +344 -0
  55. package/dist/chunk-65HTWFKN.js +224 -0
  56. package/dist/chunk-6OIKNJ7G.js +26 -0
  57. package/dist/chunk-6RUHIXVA.js +455 -0
  58. package/dist/chunk-6X4XAANZ.js +191 -0
  59. package/dist/chunk-6Z32HS4D.js +91 -0
  60. package/dist/chunk-7MK4TND6.js +163 -0
  61. package/dist/chunk-AUO4QNMI.js +148 -0
  62. package/dist/chunk-B6WOWVAA.js +285 -0
  63. package/dist/chunk-BF32BRMX.js +98 -0
  64. package/dist/chunk-BIFK5OGB.js +249 -0
  65. package/dist/chunk-BNO3EFGR.js +4266 -0
  66. package/dist/chunk-BNO3EFGR.js.map +1 -0
  67. package/dist/chunk-BUXPBPAP.js +142 -0
  68. package/dist/chunk-CDRS2QAP.js +392 -0
  69. package/dist/chunk-CFVVZKSU.js +387 -0
  70. package/dist/chunk-D3KWV63D.js +19 -0
  71. package/dist/chunk-D5LV3ECR.js +23 -0
  72. package/dist/chunk-DBLOEIJ2.js +5368 -0
  73. package/dist/chunk-DQIPDAPH.js +274 -0
  74. package/dist/chunk-EFBJ35ZS.js +930 -0
  75. package/dist/chunk-EMXBMLQ4.js +91 -0
  76. package/dist/chunk-EZVRXFCC.js +169 -0
  77. package/dist/chunk-F3CZFUXZ.js +3187 -0
  78. package/dist/chunk-F3CZFUXZ.js.map +1 -0
  79. package/dist/chunk-GCFC2MNR.js +228 -0
  80. package/dist/chunk-GQ4D3BT6.js +207 -0
  81. package/dist/chunk-HMFIOE4P.js +63 -0
  82. package/dist/chunk-HXLCETLB.js +3510 -0
  83. package/dist/chunk-JZ6XRIXG.js +846 -0
  84. package/dist/chunk-KAUW3OFC.js +843 -0
  85. package/dist/chunk-KFHW5TCM.js +167 -0
  86. package/dist/chunk-MHRFRSQ6.js +676 -0
  87. package/dist/chunk-MQZXGTGI.js +479 -0
  88. package/dist/chunk-NNNMTRGI.js +547 -0
  89. package/dist/chunk-NQF5U6FX.js +150 -0
  90. package/dist/chunk-OROWRGRJ.js +170 -0
  91. package/dist/chunk-OWJGBIQ2.js +1646 -0
  92. package/dist/chunk-PAU4VS7H.js +103 -0
  93. package/dist/chunk-PTGC7CVG.js +429 -0
  94. package/dist/chunk-RAO7FTMY.js +64 -0
  95. package/dist/chunk-RM5T4MA6.js +783 -0
  96. package/dist/chunk-RP2PU3CA.js +275 -0
  97. package/dist/chunk-RSKU45CU.js +89 -0
  98. package/dist/chunk-SA6XZ3FP.js +1902 -0
  99. package/dist/chunk-SIKCVWM3.js +76 -0
  100. package/dist/chunk-SPQHISWX.js +8954 -0
  101. package/dist/chunk-SQVT243W.js +51 -0
  102. package/dist/chunk-T267DS5U.js +297 -0
  103. package/dist/chunk-UQKDP46G.js +197 -0
  104. package/dist/chunk-UVVOG5A7.js +61 -0
  105. package/dist/chunk-UZGZS35I.js +592 -0
  106. package/dist/chunk-W7BORINM.js +66 -0
  107. package/dist/chunk-WM6JHUPY.js +5471 -0
  108. package/dist/chunk-XBMZNFN7.js +203 -0
  109. package/dist/chunk-XHW24Q5Q.js +910 -0
  110. package/dist/chunk-XMHTLWWE.js +225 -0
  111. package/dist/chunk-XPXHJ6EP.js +24026 -0
  112. package/dist/chunk-XPXHJ6EP.js.map +1 -0
  113. package/dist/chunk-XXS6SUVM.js +7712 -0
  114. package/dist/chunk-Y3ESEQRI.js +46 -0
  115. package/dist/chunk-YAX5CGUY.js +638 -0
  116. package/dist/chunk-ZCN2XUPQ.js +604 -0
  117. package/dist/chunk-ZJOXRK2G.js +1518 -0
  118. package/dist/chunk-ZPHHJPDG.js +131 -0
  119. package/dist/claim-NM5T33W6.js +200 -0
  120. package/dist/cli.js +31 -31
  121. package/dist/companies-VBNBS6LR.js +198 -0
  122. package/dist/company-3KOV3TJT.js +308 -0
  123. package/dist/complete-TVY4F5YX.js +84 -0
  124. package/dist/connect-W6H3DT2C.js +45 -0
  125. package/dist/conversation-LCGWNPUG.js +96 -0
  126. package/dist/conversion-report-GK2FUT2R.js +127 -0
  127. package/dist/conversion-upload-command-Q7LZFFZL.js +439 -0
  128. package/dist/conversion-writes-STESFLTB.js +122 -0
  129. package/dist/conversions-D2RPIL3I.js +140 -0
  130. package/dist/conversions-JBRU7CGB.js +78 -0
  131. package/dist/create-DHIXUD4Q.js +135 -0
  132. package/dist/create-OW2BLTBE.js +239 -0
  133. package/dist/create-TYG5SAQE.js +210 -0
  134. package/dist/create-XGDJKMDB.js +62 -0
  135. package/dist/creatives-3ZPFUAKL.js +58 -0
  136. package/dist/creatives-PN6EQYVU.js +223 -0
  137. package/dist/credentials-AVRHDGM5.js +290 -0
  138. package/dist/critique-76EMERXI.js +1451 -0
  139. package/dist/critique-SZSKQYUL.js +232 -0
  140. package/dist/crm-4O65STFF.js +227 -0
  141. package/dist/crm-JMIIB55O.js +323 -0
  142. package/dist/currency-HQW6FJS5.js +88 -0
  143. package/dist/customers-GV3AD6B6.js +59 -0
  144. package/dist/delete-CJGW5MKC.js +69 -0
  145. package/dist/delete-ISAOQTI5.js +57 -0
  146. package/dist/delete-WFF5EVIL.js +67 -0
  147. package/dist/demographics-XSMD6KI4.js +141 -0
  148. package/dist/discard-B5QMX35Q.js +69 -0
  149. package/dist/discover-DLGO3VW6.js +172 -0
  150. package/dist/domain-WA4HAHCE.js +101 -0
  151. package/dist/download-67IB5DPC.js +172 -0
  152. package/dist/draft-4MKYX4VU.js +396 -0
  153. package/dist/draft-I7HIRQ6F.js +283 -0
  154. package/dist/draft-NXGJ3DD4.js +220 -0
  155. package/dist/draft-P73N5PT4.js +310 -0
  156. package/dist/draft-QAPMXYBR.js +335 -0
  157. package/dist/engine/index.js +8 -8
  158. package/dist/experiments-YEI3HSBU.js +236 -0
  159. package/dist/facets-EQLEOMDT.js +117 -0
  160. package/dist/feedback-JNSHN7DE.js +115 -0
  161. package/dist/feedback-record-JV43NSJI.js +269 -0
  162. package/dist/fetch-O4EYJVMN.js +179 -0
  163. package/dist/fit-7N7AHYQF.js +65 -0
  164. package/dist/flows-DTZGIGZS.js +250 -0
  165. package/dist/fonts-TYDQXRIU.js +39 -0
  166. package/dist/forecast-AODSMD7S.js +169 -0
  167. package/dist/forecast-VO7XY46L.js +121 -0
  168. package/dist/funnel-CV4DZXUS.js +397 -0
  169. package/dist/generate-HSDSCKDW.js +263 -0
  170. package/dist/get-4S4XRZ2J.js +82 -0
  171. package/dist/get-FDZZEB5R.js +59 -0
  172. package/dist/google-DPBZJ3TV.js +3267 -0
  173. package/dist/google-ads-EPFX2NA4.js +198 -0
  174. package/dist/history-7UJW5TRO.js +102 -0
  175. package/dist/history-JCLXT3AO.js +136 -0
  176. package/dist/history-SHQVK5I7.js +69 -0
  177. package/dist/hubspot-J6372OWH.js +782 -0
  178. package/dist/ideas-TKMMQ557.js +45 -0
  179. package/dist/images-J7LJETPR.js +92 -0
  180. package/dist/ingest-LVAH5OF5.js +123 -0
  181. package/dist/ingest-UBP7TEXU.js +27 -0
  182. package/dist/insights-UMPXHRKD.js +132 -0
  183. package/dist/inspect-22G3OPFK.js +192 -0
  184. package/dist/intent-NBP5IDND.js +95 -0
  185. package/dist/keyword-gap-67UJ2LDD.js +130 -0
  186. package/dist/keyword-metrics-QP5ZNOC6.js +200 -0
  187. package/dist/keywords-for-site-QTE332T7.js +131 -0
  188. package/dist/landing-TOYYCWFX.js +28 -0
  189. package/dist/languages-TM7SHGRO.js +40 -0
  190. package/dist/leads-FTWBDLBQ.js +115 -0
  191. package/dist/learn-3N7M3UHA.js +207 -0
  192. package/dist/line-item-writes-VFPXT4W6.js +211 -0
  193. package/dist/line-items-HB2N7RKO.js +107 -0
  194. package/dist/link-KAY6VYFH.js +67 -0
  195. package/dist/linkedin-CDSEMSCF.js +1328 -0
  196. package/dist/linkedin-person-HR6HKFUU.js +139 -0
  197. package/dist/list-INU27RQJ.js +306 -0
  198. package/dist/list-QWCU77C3.js +67 -0
  199. package/dist/list-VJ3CVEDW.js +154 -0
  200. package/dist/locations-HAXZUHJP.js +40 -0
  201. package/dist/locations-JFBM4XBL.js +69 -0
  202. package/dist/log-AUN4NOPP.js +95 -0
  203. package/dist/make-B5HDRFCX.js +1367 -0
  204. package/dist/map-CCBSITK7.js +436 -0
  205. package/dist/mcp-45YWYNYM.js +729 -0
  206. package/dist/media-sources-N7MBY3GE.js +35 -0
  207. package/dist/members-2P2QCBJO.js +47 -0
  208. package/dist/metrics-XWHE4LYQ.js +152 -0
  209. package/dist/models-3C6BWHEC.js +155 -0
  210. package/dist/normalize-MLRJ6IYU.js +144 -0
  211. package/dist/options-6QAJ67XB.js +125 -0
  212. package/dist/organization-P5LAMNMT.js +949 -0
  213. package/dist/performance-3PH7UYQN.js +27 -0
  214. package/dist/performance-6BMFU6IJ.js +5565 -0
  215. package/dist/pixels-PMPL63ON.js +62 -0
  216. package/dist/promoted-tweet-writes-EPXZFIUP.js +183 -0
  217. package/dist/promoted-tweets-Q46HUYN6.js +119 -0
  218. package/dist/publish-DHDRUTXM.js +344 -0
  219. package/dist/query-IR3LCFON.js +62 -0
  220. package/dist/reddit-2FQOS3B3.js +29 -0
  221. package/dist/refresh-VJPKAPJM.js +97 -0
  222. package/dist/release-O233BAQA.js +63 -0
  223. package/dist/relevant-pages-NPUSAV3K.js +99 -0
  224. package/dist/remove-HNSOYQVB.js +53 -0
  225. package/dist/reopen-B7KHVN5X.js +66 -0
  226. package/dist/rerun-KAB7AXTY.js +96 -0
  227. package/dist/research-I4ZQ4YQ3.js +72 -0
  228. package/dist/research-Z2SE775C.js +265 -0
  229. package/dist/reset-4T6XUNOO.js +57 -0
  230. package/dist/reset-YHEMD5N5.js +57 -0
  231. package/dist/resolve-5RJD2ELK.js +124 -0
  232. package/dist/retry-S3EC6FCA.js +65 -0
  233. package/dist/retry-WKYMY2KB.js +63 -0
  234. package/dist/revenue-C4E4PRLL.js +91 -0
  235. package/dist/rules-JGTKFXM3.js +99 -0
  236. package/dist/rules-add-3DTRLVGR.js +465 -0
  237. package/dist/run-2TKYHCN2.js +71 -0
  238. package/dist/run-TYJLOJW7.js +69 -0
  239. package/dist/scaffold-ad-RFRUPUKW.js +1513 -0
  240. package/dist/scaffold-static-ad-N5QCJFGP.js +1011 -0
  241. package/dist/scaffold-video-VAG3WN5W.js +885 -0
  242. package/dist/schedule-6UYJLE5K.js +64 -0
  243. package/dist/scheduled-agents-YEHJ4XIB.js +55 -0
  244. package/dist/schema-BCCCNVNO.js +135 -0
  245. package/dist/search-J43ZG7W3.js +177 -0
  246. package/dist/select-I2UPGGZ5.js +110 -0
  247. package/dist/sends-CEZAPEQN.js +349 -0
  248. package/dist/sends-CEZAPEQN.js.map +1 -0
  249. package/dist/set-prompt-SU7YM7FW.js +199 -0
  250. package/dist/setup-links-VWK4MBI3.js +144 -0
  251. package/dist/shopify-6KNHPC4R.js +3958 -0
  252. package/dist/site-PHTJ5VI3.js +180 -0
  253. package/dist/sources-255OGK6K.js +30 -0
  254. package/dist/sources-52N253A7.js +457 -0
  255. package/dist/sources-52N253A7.js.map +1 -0
  256. package/dist/stale-KN2ZOJ5T.js +90 -0
  257. package/dist/status-BJH7ODU4.js +65 -0
  258. package/dist/studio-C2UVCTDD.js +49 -0
  259. package/dist/sync-MIKA6IM6.js +57 -0
  260. package/dist/sync-definition-LO425HBD.js +70 -0
  261. package/dist/tags-DKSJ4E7E.js +227 -0
  262. package/dist/tags-JEGCEFMZ.js +23 -0
  263. package/dist/tags-MNHBZ7FH.js +23 -0
  264. package/dist/tags-S5XY63D3.js +23 -0
  265. package/dist/tags-VVO3BT66.js +26 -0
  266. package/dist/targeting-criteria-BIIGZTLQ.js +113 -0
  267. package/dist/targets-SX3NMYQ3.js +106 -0
  268. package/dist/testimonials-U3KBI3VU.js +32 -0
  269. package/dist/themes-32CUPT4M.js +95 -0
  270. package/dist/top-companies-DFM4F2SE.js +111 -0
  271. package/dist/transcript-4BSUSOQ4.js +165 -0
  272. package/dist/translate-JE7CZJ26.js +603 -0
  273. package/dist/triggers-SRI27OAP.js +144 -0
  274. package/dist/unlink-U7HZ4CYW.js +70 -0
  275. package/dist/unstage-JJGZJVHT.js +88 -0
  276. package/dist/update-JN75LN32.js +66 -0
  277. package/dist/update-PU5LSQ7W.js +192 -0
  278. package/dist/update-PUWD5HX4.js +101 -0
  279. package/dist/update-R4EEEWT4.js +155 -0
  280. package/dist/upload-4CUPZI3X.js +130 -0
  281. package/dist/url-options-P3UTLYUY.js +131 -0
  282. package/dist/url-params-V7KQMWK3.js +101 -0
  283. package/dist/validate-6GRMJKZI.js +125 -0
  284. package/dist/videos-6ZZ6LLTL.js +41 -0
  285. package/dist/viewer-check-B36TNSZI.js +83 -0
  286. package/dist/web-H5CWLHRA.js +143 -0
  287. package/dist/winning-ads-SHNXPIYB.js +86 -0
  288. package/dist/write-commands-RI6UP4YG.js +1525 -0
  289. package/dist/x-CI2XPNBR.js +47 -0
  290. package/package.json +1 -1
  291. package/dist/account-LO57QU6O.js +0 -82
  292. package/dist/account-V5XHQY2D.js +0 -82
  293. package/dist/account-reads-CPL3HLZ5.js +0 -219
  294. package/dist/account-users-RF3VN6VL.js +0 -64
  295. package/dist/account-writes-MFKCVMMV.js +0 -68
  296. package/dist/accounts-DTHZLL3R.js +0 -701
  297. package/dist/accounts-SJ5MKHKE.js +0 -80
  298. package/dist/actions-LRJRQXC3.js +0 -55
  299. package/dist/activecampaign-DMFUWRD6.js +0 -938
  300. package/dist/ad-group-writes-WFYPFO7R.js +0 -172
  301. package/dist/ad-groups-IPY3TJUX.js +0 -70
  302. package/dist/ad-writes-LDNNN72V.js +0 -176
  303. package/dist/add-HSF5S544.js +0 -107
  304. package/dist/add-IOIY44HY.js +0 -305
  305. package/dist/ads-CDA6DGGZ.js +0 -48
  306. package/dist/ads-NTDJRTEG.js +0 -79
  307. package/dist/advertisers-T4AGXFN4.js +0 -123
  308. package/dist/analytics-MDIE5CPL.js +0 -2437
  309. package/dist/analytics-TLEWXYXV.js +0 -447
  310. package/dist/animate-CQON6SZE.js +0 -480
  311. package/dist/assign-N5PNZWUW.js +0 -80
  312. package/dist/audience-size-GMANWKU5.js +0 -76
  313. package/dist/audiences-KRI7E7FY.js +0 -280
  314. package/dist/audit-EGLLMYFY.js +0 -154
  315. package/dist/autocomplete-6DUDQLRT.js +0 -114
  316. package/dist/avatars-UZN75NVZ.js +0 -38
  317. package/dist/bid-pricing-SQERHWYU.js +0 -103
  318. package/dist/brand-XY7EVNPW.js +0 -22
  319. package/dist/brief-NMACLLA2.js +0 -543
  320. package/dist/campaign-groups-VWSLBQKJ.js +0 -99
  321. package/dist/campaign-writes-DAL4EFIV.js +0 -176
  322. package/dist/campaign-writes-FBIQOLRS.js +0 -168
  323. package/dist/campaigns-64JH3U6Z.js +0 -113
  324. package/dist/campaigns-KYI6WAXT.js +0 -111
  325. package/dist/campaigns-TKQDXU5H.js +0 -78
  326. package/dist/canvas-DTJM2LTE.js +0 -46
  327. package/dist/capabilities-O5UVQ4KK.js +0 -147
  328. package/dist/catalog-6CXOEKBI.js +0 -66
  329. package/dist/catalogs-ETVY5OZ5.js +0 -130
  330. package/dist/changes-MHNRAC2E.js +0 -135
  331. package/dist/chatgpt-GINMQJBI.js +0 -47
  332. package/dist/chats-NUO3CA4N.js +0 -384
  333. package/dist/check-RRHOCY2U.js +0 -107
  334. package/dist/chunk-2AJ5UNOF.js +0 -131
  335. package/dist/chunk-2Y3VZILY.js +0 -98
  336. package/dist/chunk-3BOPIUO6.js +0 -163
  337. package/dist/chunk-3LH5ANM4.js +0 -7712
  338. package/dist/chunk-3RWSYI6N.js +0 -63
  339. package/dist/chunk-4PWC4KAK.js +0 -843
  340. package/dist/chunk-5MMAYAWR.js +0 -103
  341. package/dist/chunk-5VVXF3OS.js +0 -676
  342. package/dist/chunk-5Y3EEI52.js +0 -224
  343. package/dist/chunk-6EMVPPSQ.js +0 -89
  344. package/dist/chunk-77MDZIHK.js +0 -23
  345. package/dist/chunk-A5PQYKVO.js +0 -344
  346. package/dist/chunk-AA3WWPX2.js +0 -392
  347. package/dist/chunk-AL6373J7.js +0 -930
  348. package/dist/chunk-AMHVCMBW.js +0 -3510
  349. package/dist/chunk-BQYSBQZ3.js +0 -91
  350. package/dist/chunk-BYZQ43VI.js +0 -592
  351. package/dist/chunk-C54JXXV3.js +0 -24026
  352. package/dist/chunk-C54JXXV3.js.map +0 -1
  353. package/dist/chunk-C753PJBU.js +0 -91
  354. package/dist/chunk-CB7GZQVN.js +0 -249
  355. package/dist/chunk-CTBDVZ5E.js +0 -274
  356. package/dist/chunk-CV35AJYT.js +0 -57
  357. package/dist/chunk-EJBHZ7AQ.js +0 -387
  358. package/dist/chunk-EKQCHHZW.js +0 -319
  359. package/dist/chunk-FOD5VSHH.js +0 -51
  360. package/dist/chunk-FSLSISPI.js +0 -46
  361. package/dist/chunk-G523URK2.js +0 -438
  362. package/dist/chunk-G6KE737R.js +0 -377
  363. package/dist/chunk-GNZM7SWV.js +0 -156
  364. package/dist/chunk-GRXBD43G.js +0 -169
  365. package/dist/chunk-GT76FWES.js +0 -1919
  366. package/dist/chunk-GTIQUOYC.js +0 -148
  367. package/dist/chunk-GTV62WIS.js +0 -479
  368. package/dist/chunk-GY6N42PE.js +0 -142
  369. package/dist/chunk-H27R5IVQ.js +0 -64
  370. package/dist/chunk-HHQYP6RM.js +0 -783
  371. package/dist/chunk-HN7GK5UX.js +0 -910
  372. package/dist/chunk-I6W6FAUZ.js +0 -547
  373. package/dist/chunk-IJ5DWALA.js +0 -225
  374. package/dist/chunk-JAC6JVCI.js +0 -26
  375. package/dist/chunk-K5CEP7W4.js +0 -66
  376. package/dist/chunk-KJOEW2PI.js +0 -297
  377. package/dist/chunk-KVBNUGQ6.js +0 -197
  378. package/dist/chunk-MCJ5I5LR.js +0 -3187
  379. package/dist/chunk-MCJ5I5LR.js.map +0 -1
  380. package/dist/chunk-MLMQR24H.js +0 -1646
  381. package/dist/chunk-MZPS46OR.js +0 -76
  382. package/dist/chunk-N2MZLW6O.js +0 -170
  383. package/dist/chunk-NGXZQESA.js +0 -5471
  384. package/dist/chunk-NJIRVF2B.js +0 -8954
  385. package/dist/chunk-NNG4QCKJ.js +0 -207
  386. package/dist/chunk-NPF4KTRK.js +0 -191
  387. package/dist/chunk-NQ5O2NCJ.js +0 -5368
  388. package/dist/chunk-OU4TDC2P.js +0 -275
  389. package/dist/chunk-P7WISPGE.js +0 -61
  390. package/dist/chunk-R2VP7FK4.js +0 -831
  391. package/dist/chunk-RD63FPG6.js +0 -150
  392. package/dist/chunk-RFR7ZN3P.js +0 -604
  393. package/dist/chunk-RW32BYY3.js +0 -1518
  394. package/dist/chunk-SMDJW5W4.js +0 -19
  395. package/dist/chunk-THV7SMY6.js +0 -203
  396. package/dist/chunk-TI4UL56R.js +0 -4266
  397. package/dist/chunk-TI4UL56R.js.map +0 -1
  398. package/dist/chunk-TNQJDM2P.js +0 -1902
  399. package/dist/chunk-TQDZQT6U.js +0 -167
  400. package/dist/chunk-UC46M2KW.js +0 -494
  401. package/dist/chunk-UIPSSTMA.js +0 -228
  402. package/dist/chunk-VMUJ6JHR.js +0 -2209
  403. package/dist/chunk-VWKFQ4ZY.js +0 -285
  404. package/dist/chunk-WAE4G3Q6.js +0 -846
  405. package/dist/chunk-WTYKTPZP.js +0 -455
  406. package/dist/chunk-XFMFZAWL.js +0 -429
  407. package/dist/chunk-YFIWCMVC.js +0 -638
  408. package/dist/claim-ZKKC5472.js +0 -200
  409. package/dist/companies-CJFQ63MC.js +0 -198
  410. package/dist/company-7K4EDRIN.js +0 -308
  411. package/dist/complete-ODOQLGSO.js +0 -84
  412. package/dist/connect-APAK3WAY.js +0 -45
  413. package/dist/conversation-B6V3VCT5.js +0 -96
  414. package/dist/conversion-report-JNWBTLA5.js +0 -127
  415. package/dist/conversion-upload-command-6OKMSO2T.js +0 -439
  416. package/dist/conversion-writes-2VOWP4RD.js +0 -122
  417. package/dist/conversions-D32UTEPH.js +0 -140
  418. package/dist/conversions-JGIBYLK5.js +0 -78
  419. package/dist/create-ALMXIVHA.js +0 -239
  420. package/dist/create-EUQYK2SH.js +0 -135
  421. package/dist/create-TOCR7EFZ.js +0 -62
  422. package/dist/create-VAGPIZTU.js +0 -210
  423. package/dist/creatives-62PV7BIF.js +0 -223
  424. package/dist/creatives-HUDKBUDS.js +0 -58
  425. package/dist/credentials-WCD4F225.js +0 -290
  426. package/dist/critique-KJXHSKLT.js +0 -1451
  427. package/dist/critique-OO6SORTA.js +0 -232
  428. package/dist/crm-5CYCCV34.js +0 -323
  429. package/dist/crm-YVRIT2RL.js +0 -227
  430. package/dist/currency-SH4DDE3X.js +0 -88
  431. package/dist/customers-FSOXPMOU.js +0 -59
  432. package/dist/delete-EEU6WJ6M.js +0 -67
  433. package/dist/delete-H7IWZGUZ.js +0 -69
  434. package/dist/delete-QXZFJNUS.js +0 -57
  435. package/dist/demographics-RM5PA54R.js +0 -141
  436. package/dist/discard-6XOYXNZ6.js +0 -69
  437. package/dist/discover-VEHKBNCY.js +0 -172
  438. package/dist/domain-X7MT3XUG.js +0 -101
  439. package/dist/download-YQYR5GUP.js +0 -172
  440. package/dist/draft-DUAFRL2G.js +0 -283
  441. package/dist/draft-FXMGEY3E.js +0 -220
  442. package/dist/draft-V7VGPJK4.js +0 -396
  443. package/dist/draft-XWHU5C5Z.js +0 -335
  444. package/dist/draft-YXGASP7M.js +0 -310
  445. package/dist/experiments-2XOC77Y7.js +0 -236
  446. package/dist/facets-7Q36JF2D.js +0 -117
  447. package/dist/feedback-WPV2RKJS.js +0 -115
  448. package/dist/feedback-record-UEWS4FZJ.js +0 -269
  449. package/dist/fetch-AARAG6UL.js +0 -179
  450. package/dist/fit-T4ALNNXL.js +0 -65
  451. package/dist/flows-PYPA2FM3.js +0 -250
  452. package/dist/fonts-H2GG2JXA.js +0 -39
  453. package/dist/forecast-LMSPNY6X.js +0 -121
  454. package/dist/forecast-UYBYSH3Y.js +0 -169
  455. package/dist/funnel-KIYPFPIY.js +0 -397
  456. package/dist/generate-QG7GX6WO.js +0 -263
  457. package/dist/get-IN6UXQRX.js +0 -59
  458. package/dist/get-ROETYEYF.js +0 -82
  459. package/dist/google-ZT3J3G4Z.js +0 -3267
  460. package/dist/google-ads-CBJZKTXG.js +0 -198
  461. package/dist/history-GTT55ZP7.js +0 -102
  462. package/dist/history-UYG35MNJ.js +0 -136
  463. package/dist/history-XOB23MLX.js +0 -69
  464. package/dist/hubspot-B6Z77JY6.js +0 -782
  465. package/dist/ideas-RVK4RNKN.js +0 -45
  466. package/dist/images-RGJZ6FJL.js +0 -92
  467. package/dist/ingest-7FHCKRYR.js +0 -27
  468. package/dist/ingest-GBWY2ZEP.js +0 -123
  469. package/dist/insights-7CQJOBWX.js +0 -132
  470. package/dist/inspect-RC6GKLIF.js +0 -192
  471. package/dist/intent-P75BDP4H.js +0 -95
  472. package/dist/keyword-gap-54F6CZLM.js +0 -130
  473. package/dist/keyword-metrics-PL5IYZGN.js +0 -200
  474. package/dist/keywords-for-site-4FMJ5IGN.js +0 -131
  475. package/dist/landing-24TVKWTP.js +0 -28
  476. package/dist/languages-PEGOE365.js +0 -40
  477. package/dist/leads-6TFBPYMM.js +0 -115
  478. package/dist/learn-4LGNFGWH.js +0 -207
  479. package/dist/line-item-writes-AOTRDB4L.js +0 -211
  480. package/dist/line-items-ERV3F2EI.js +0 -107
  481. package/dist/link-QZXI5YJP.js +0 -67
  482. package/dist/linkedin-4BKZ5KUE.js +0 -1328
  483. package/dist/linkedin-person-ZLXMOG2U.js +0 -139
  484. package/dist/list-7FB6764Q.js +0 -67
  485. package/dist/list-QHAYR2IQ.js +0 -154
  486. package/dist/list-UCQEHPIR.js +0 -306
  487. package/dist/locations-MXWGZIGU.js +0 -69
  488. package/dist/locations-SHYN5J4Q.js +0 -40
  489. package/dist/log-WPZRUMZU.js +0 -95
  490. package/dist/make-VCAS2M2W.js +0 -1367
  491. package/dist/map-5EQO2VXB.js +0 -436
  492. package/dist/mcp-CKOYL4IU.js +0 -729
  493. package/dist/media-sources-EDZ2PBJY.js +0 -35
  494. package/dist/members-E2AGJIU6.js +0 -47
  495. package/dist/metrics-25LYUEB7.js +0 -152
  496. package/dist/models-EU3NO4IY.js +0 -155
  497. package/dist/normalize-PHJT5CAD.js +0 -144
  498. package/dist/options-KFABOCWK.js +0 -125
  499. package/dist/organization-BP5DTWL7.js +0 -949
  500. package/dist/performance-C4M3GJPC.js +0 -27
  501. package/dist/performance-H3SJD3SN.js +0 -5565
  502. package/dist/pixels-NLH2PN6Q.js +0 -62
  503. package/dist/promoted-tweet-writes-ATWAKV6N.js +0 -183
  504. package/dist/promoted-tweets-TWQP3MDP.js +0 -119
  505. package/dist/publish-Q4W7MI7P.js +0 -344
  506. package/dist/query-TP3L4W7Z.js +0 -62
  507. package/dist/reddit-JWZYSUAG.js +0 -29
  508. package/dist/refresh-VRBHP4AA.js +0 -97
  509. package/dist/release-OV4ZDCXG.js +0 -63
  510. package/dist/relevant-pages-VJHTUJMB.js +0 -99
  511. package/dist/remove-DBCSQSEP.js +0 -53
  512. package/dist/reopen-5ZOEKYQ5.js +0 -66
  513. package/dist/rerun-YMRW6BHM.js +0 -96
  514. package/dist/research-HUM6CF74.js +0 -265
  515. package/dist/research-M3QPWTYX.js +0 -72
  516. package/dist/reset-BPAFOW6M.js +0 -57
  517. package/dist/reset-WAY3BSZX.js +0 -57
  518. package/dist/resolve-AQ6UFEMN.js +0 -124
  519. package/dist/retry-3KYFTPXZ.js +0 -65
  520. package/dist/retry-XO54CIRK.js +0 -63
  521. package/dist/revenue-PPDMQO3H.js +0 -91
  522. package/dist/rules-4ENXG5XW.js +0 -99
  523. package/dist/rules-add-FTBOOE6L.js +0 -465
  524. package/dist/run-2ZRTKR7A.js +0 -69
  525. package/dist/run-UECCNQ63.js +0 -71
  526. package/dist/scaffold-ad-DFKFUOOZ.js +0 -1513
  527. package/dist/scaffold-static-ad-II3TUE5I.js +0 -1011
  528. package/dist/scaffold-video-IKVYICIY.js +0 -885
  529. package/dist/schedule-ERHKGQID.js +0 -64
  530. package/dist/scheduled-agents-ICXFV7NP.js +0 -55
  531. package/dist/schema-NUUZ3MG7.js +0 -135
  532. package/dist/search-B2APYHV6.js +0 -177
  533. package/dist/select-WVNPJDXP.js +0 -110
  534. package/dist/sends-H7WMLJ5H.js +0 -349
  535. package/dist/sends-H7WMLJ5H.js.map +0 -1
  536. package/dist/set-prompt-KHBDWDXA.js +0 -199
  537. package/dist/setup-links-R3FH7WK4.js +0 -144
  538. package/dist/shopify-34CFN6SG.js +0 -3958
  539. package/dist/site-H6AMVMIX.js +0 -180
  540. package/dist/sources-2VJMHUH7.js +0 -30
  541. package/dist/sources-S63224S7.js +0 -457
  542. package/dist/sources-S63224S7.js.map +0 -1
  543. package/dist/stale-6BEHWQZ7.js +0 -90
  544. package/dist/status-MCMOSDVX.js +0 -65
  545. package/dist/studio-4QOFG7MQ.js +0 -49
  546. package/dist/sync-WJCJHNET.js +0 -57
  547. package/dist/sync-definition-THVMBGJR.js +0 -70
  548. package/dist/tags-AGFUJ2BB.js +0 -227
  549. package/dist/tags-OPMPPJY2.js +0 -23
  550. package/dist/tags-VGJ76RJT.js +0 -26
  551. package/dist/tags-VOCMMZ75.js +0 -23
  552. package/dist/tags-WK6P5A4D.js +0 -23
  553. package/dist/targeting-criteria-KRIMZRVI.js +0 -113
  554. package/dist/targets-MCOEM4XQ.js +0 -106
  555. package/dist/testimonials-A2AFXSZV.js +0 -32
  556. package/dist/themes-JBX6W4SP.js +0 -95
  557. package/dist/top-companies-ESCRXLSK.js +0 -111
  558. package/dist/transcript-N2ZWN4CI.js +0 -165
  559. package/dist/translate-YGUYVOGA.js +0 -603
  560. package/dist/triggers-G4EW5XG6.js +0 -144
  561. package/dist/unlink-DRIVH2GT.js +0 -70
  562. package/dist/unstage-WUQV6QBV.js +0 -88
  563. package/dist/update-5GIAKABM.js +0 -66
  564. package/dist/update-COXCKREW.js +0 -101
  565. package/dist/update-NA4M4J5D.js +0 -155
  566. package/dist/update-T7PSOZES.js +0 -192
  567. package/dist/upload-IXVEJLZU.js +0 -130
  568. package/dist/url-options-LHEGWNAH.js +0 -131
  569. package/dist/url-params-IL2M2WZI.js +0 -101
  570. package/dist/validate-QAJJ7QCJ.js +0 -125
  571. package/dist/videos-I7PCC2EC.js +0 -41
  572. package/dist/viewer-check-PUAWVYWP.js +0 -83
  573. package/dist/web-O2MCPPB5.js +0 -143
  574. package/dist/winning-ads-FTMP4FUC.js +0 -86
  575. package/dist/write-commands-NKKNWQIM.js +0 -1525
  576. package/dist/x-FPRMRQLQ.js +0 -47
  577. /package/dist/{account-LO57QU6O.js.map → account-2RNYGT6E.js.map} +0 -0
  578. /package/dist/{account-V5XHQY2D.js.map → account-T26J6HSJ.js.map} +0 -0
  579. /package/dist/{account-reads-CPL3HLZ5.js.map → account-reads-P2WXB3NZ.js.map} +0 -0
  580. /package/dist/{account-users-RF3VN6VL.js.map → account-users-REWJY2TN.js.map} +0 -0
  581. /package/dist/{account-writes-MFKCVMMV.js.map → account-writes-QEZQCU46.js.map} +0 -0
  582. /package/dist/{accounts-DTHZLL3R.js.map → accounts-MJ7AGPOW.js.map} +0 -0
  583. /package/dist/{accounts-SJ5MKHKE.js.map → accounts-PGSNRUNV.js.map} +0 -0
  584. /package/dist/{actions-LRJRQXC3.js.map → actions-NGBCTPNG.js.map} +0 -0
  585. /package/dist/{activecampaign-DMFUWRD6.js.map → activecampaign-ASE4IVTD.js.map} +0 -0
  586. /package/dist/{ad-group-writes-WFYPFO7R.js.map → ad-group-writes-MVQKICSC.js.map} +0 -0
  587. /package/dist/{ad-groups-IPY3TJUX.js.map → ad-groups-5OGD7PJ7.js.map} +0 -0
  588. /package/dist/{ad-writes-LDNNN72V.js.map → ad-writes-OVD6EESQ.js.map} +0 -0
  589. /package/dist/{add-HSF5S544.js.map → add-QBEF2C7Z.js.map} +0 -0
  590. /package/dist/{add-IOIY44HY.js.map → add-YJP43JWJ.js.map} +0 -0
  591. /package/dist/{ads-CDA6DGGZ.js.map → ads-GF7QLKBX.js.map} +0 -0
  592. /package/dist/{ads-NTDJRTEG.js.map → ads-SCWCG2YI.js.map} +0 -0
  593. /package/dist/{advertisers-T4AGXFN4.js.map → advertisers-SUZT4NRJ.js.map} +0 -0
  594. /package/dist/{analytics-MDIE5CPL.js.map → analytics-NJBF3U54.js.map} +0 -0
  595. /package/dist/{analytics-TLEWXYXV.js.map → analytics-PI6SXDW4.js.map} +0 -0
  596. /package/dist/{animate-CQON6SZE.js.map → animate-HV2QJWVE.js.map} +0 -0
  597. /package/dist/{assign-N5PNZWUW.js.map → assign-6YG56OCM.js.map} +0 -0
  598. /package/dist/{audience-size-GMANWKU5.js.map → audience-size-5X3BHQ6Q.js.map} +0 -0
  599. /package/dist/{audiences-KRI7E7FY.js.map → audiences-6N5B7CA2.js.map} +0 -0
  600. /package/dist/{audit-EGLLMYFY.js.map → audit-PLXF2NAS.js.map} +0 -0
  601. /package/dist/{autocomplete-6DUDQLRT.js.map → autocomplete-YJSDRTMT.js.map} +0 -0
  602. /package/dist/{avatars-UZN75NVZ.js.map → avatars-BDQWTQKY.js.map} +0 -0
  603. /package/dist/{bid-pricing-SQERHWYU.js.map → bid-pricing-BUNOVWUB.js.map} +0 -0
  604. /package/dist/{brand-XY7EVNPW.js.map → brand-MHFSUXWN.js.map} +0 -0
  605. /package/dist/{brief-NMACLLA2.js.map → brief-A5AEZBZL.js.map} +0 -0
  606. /package/dist/{campaign-groups-VWSLBQKJ.js.map → campaign-groups-UYNINWXX.js.map} +0 -0
  607. /package/dist/{campaign-writes-FBIQOLRS.js.map → campaign-writes-RCA52SAP.js.map} +0 -0
  608. /package/dist/{campaign-writes-DAL4EFIV.js.map → campaign-writes-TFRV62VN.js.map} +0 -0
  609. /package/dist/{campaigns-64JH3U6Z.js.map → campaigns-CIQIZ46G.js.map} +0 -0
  610. /package/dist/{campaigns-KYI6WAXT.js.map → campaigns-EETR5UJR.js.map} +0 -0
  611. /package/dist/{campaigns-TKQDXU5H.js.map → campaigns-KPUA4GP2.js.map} +0 -0
  612. /package/dist/{canvas-DTJM2LTE.js.map → canvas-M3RXWJ2T.js.map} +0 -0
  613. /package/dist/{capabilities-O5UVQ4KK.js.map → capabilities-XFLST37G.js.map} +0 -0
  614. /package/dist/{catalog-6CXOEKBI.js.map → catalog-JVBRY2U6.js.map} +0 -0
  615. /package/dist/{catalogs-ETVY5OZ5.js.map → catalogs-QYAAPTMV.js.map} +0 -0
  616. /package/dist/{changes-MHNRAC2E.js.map → changes-Y4NAQ2IV.js.map} +0 -0
  617. /package/dist/{chatgpt-GINMQJBI.js.map → chatgpt-KJAUJBRK.js.map} +0 -0
  618. /package/dist/{chats-NUO3CA4N.js.map → chats-5BNHZWO7.js.map} +0 -0
  619. /package/dist/{check-RRHOCY2U.js.map → check-ESD3QPIZ.js.map} +0 -0
  620. /package/dist/{chunk-EKQCHHZW.js.map → chunk-2EVHGBQY.js.map} +0 -0
  621. /package/dist/{chunk-GNZM7SWV.js.map → chunk-2JFCDUZO.js.map} +0 -0
  622. /package/dist/{chunk-UC46M2KW.js.map → chunk-2MAQKELK.js.map} +0 -0
  623. /package/dist/{chunk-GT76FWES.js.map → chunk-2OCUXPWT.js.map} +0 -0
  624. /package/dist/{chunk-G523URK2.js.map → chunk-3ANPDWU7.js.map} +0 -0
  625. /package/dist/{chunk-VMUJ6JHR.js.map → chunk-3C3IR2F6.js.map} +0 -0
  626. /package/dist/{chunk-G6KE737R.js.map → chunk-3GMJEM4C.js.map} +0 -0
  627. /package/dist/{chunk-R2VP7FK4.js.map → chunk-4YWSFFOP.js.map} +0 -0
  628. /package/dist/{chunk-CV35AJYT.js.map → chunk-5JG77PP3.js.map} +0 -0
  629. /package/dist/{chunk-A5PQYKVO.js.map → chunk-5TWI6FFY.js.map} +0 -0
  630. /package/dist/{chunk-5Y3EEI52.js.map → chunk-65HTWFKN.js.map} +0 -0
  631. /package/dist/{chunk-JAC6JVCI.js.map → chunk-6OIKNJ7G.js.map} +0 -0
  632. /package/dist/{chunk-WTYKTPZP.js.map → chunk-6RUHIXVA.js.map} +0 -0
  633. /package/dist/{chunk-NPF4KTRK.js.map → chunk-6X4XAANZ.js.map} +0 -0
  634. /package/dist/{chunk-C753PJBU.js.map → chunk-6Z32HS4D.js.map} +0 -0
  635. /package/dist/{chunk-3BOPIUO6.js.map → chunk-7MK4TND6.js.map} +0 -0
  636. /package/dist/{chunk-GTIQUOYC.js.map → chunk-AUO4QNMI.js.map} +0 -0
  637. /package/dist/{chunk-VWKFQ4ZY.js.map → chunk-B6WOWVAA.js.map} +0 -0
  638. /package/dist/{chunk-2Y3VZILY.js.map → chunk-BF32BRMX.js.map} +0 -0
  639. /package/dist/{chunk-CB7GZQVN.js.map → chunk-BIFK5OGB.js.map} +0 -0
  640. /package/dist/{chunk-GY6N42PE.js.map → chunk-BUXPBPAP.js.map} +0 -0
  641. /package/dist/{chunk-AA3WWPX2.js.map → chunk-CDRS2QAP.js.map} +0 -0
  642. /package/dist/{chunk-EJBHZ7AQ.js.map → chunk-CFVVZKSU.js.map} +0 -0
  643. /package/dist/{chunk-SMDJW5W4.js.map → chunk-D3KWV63D.js.map} +0 -0
  644. /package/dist/{chunk-77MDZIHK.js.map → chunk-D5LV3ECR.js.map} +0 -0
  645. /package/dist/{chunk-NQ5O2NCJ.js.map → chunk-DBLOEIJ2.js.map} +0 -0
  646. /package/dist/{chunk-CTBDVZ5E.js.map → chunk-DQIPDAPH.js.map} +0 -0
  647. /package/dist/{chunk-AL6373J7.js.map → chunk-EFBJ35ZS.js.map} +0 -0
  648. /package/dist/{chunk-BQYSBQZ3.js.map → chunk-EMXBMLQ4.js.map} +0 -0
  649. /package/dist/{chunk-GRXBD43G.js.map → chunk-EZVRXFCC.js.map} +0 -0
  650. /package/dist/{chunk-UIPSSTMA.js.map → chunk-GCFC2MNR.js.map} +0 -0
  651. /package/dist/{chunk-NNG4QCKJ.js.map → chunk-GQ4D3BT6.js.map} +0 -0
  652. /package/dist/{chunk-3RWSYI6N.js.map → chunk-HMFIOE4P.js.map} +0 -0
  653. /package/dist/{chunk-AMHVCMBW.js.map → chunk-HXLCETLB.js.map} +0 -0
  654. /package/dist/{chunk-WAE4G3Q6.js.map → chunk-JZ6XRIXG.js.map} +0 -0
  655. /package/dist/{chunk-4PWC4KAK.js.map → chunk-KAUW3OFC.js.map} +0 -0
  656. /package/dist/{chunk-TQDZQT6U.js.map → chunk-KFHW5TCM.js.map} +0 -0
  657. /package/dist/{chunk-5VVXF3OS.js.map → chunk-MHRFRSQ6.js.map} +0 -0
  658. /package/dist/{chunk-GTV62WIS.js.map → chunk-MQZXGTGI.js.map} +0 -0
  659. /package/dist/{chunk-I6W6FAUZ.js.map → chunk-NNNMTRGI.js.map} +0 -0
  660. /package/dist/{chunk-RD63FPG6.js.map → chunk-NQF5U6FX.js.map} +0 -0
  661. /package/dist/{chunk-N2MZLW6O.js.map → chunk-OROWRGRJ.js.map} +0 -0
  662. /package/dist/{chunk-MLMQR24H.js.map → chunk-OWJGBIQ2.js.map} +0 -0
  663. /package/dist/{chunk-5MMAYAWR.js.map → chunk-PAU4VS7H.js.map} +0 -0
  664. /package/dist/{chunk-XFMFZAWL.js.map → chunk-PTGC7CVG.js.map} +0 -0
  665. /package/dist/{chunk-H27R5IVQ.js.map → chunk-RAO7FTMY.js.map} +0 -0
  666. /package/dist/{chunk-HHQYP6RM.js.map → chunk-RM5T4MA6.js.map} +0 -0
  667. /package/dist/{chunk-OU4TDC2P.js.map → chunk-RP2PU3CA.js.map} +0 -0
  668. /package/dist/{chunk-6EMVPPSQ.js.map → chunk-RSKU45CU.js.map} +0 -0
  669. /package/dist/{chunk-TNQJDM2P.js.map → chunk-SA6XZ3FP.js.map} +0 -0
  670. /package/dist/{chunk-MZPS46OR.js.map → chunk-SIKCVWM3.js.map} +0 -0
  671. /package/dist/{chunk-NJIRVF2B.js.map → chunk-SPQHISWX.js.map} +0 -0
  672. /package/dist/{chunk-FOD5VSHH.js.map → chunk-SQVT243W.js.map} +0 -0
  673. /package/dist/{chunk-KJOEW2PI.js.map → chunk-T267DS5U.js.map} +0 -0
  674. /package/dist/{chunk-KVBNUGQ6.js.map → chunk-UQKDP46G.js.map} +0 -0
  675. /package/dist/{chunk-P7WISPGE.js.map → chunk-UVVOG5A7.js.map} +0 -0
  676. /package/dist/{chunk-BYZQ43VI.js.map → chunk-UZGZS35I.js.map} +0 -0
  677. /package/dist/{chunk-K5CEP7W4.js.map → chunk-W7BORINM.js.map} +0 -0
  678. /package/dist/{chunk-NGXZQESA.js.map → chunk-WM6JHUPY.js.map} +0 -0
  679. /package/dist/{chunk-THV7SMY6.js.map → chunk-XBMZNFN7.js.map} +0 -0
  680. /package/dist/{chunk-HN7GK5UX.js.map → chunk-XHW24Q5Q.js.map} +0 -0
  681. /package/dist/{chunk-IJ5DWALA.js.map → chunk-XMHTLWWE.js.map} +0 -0
  682. /package/dist/{chunk-3LH5ANM4.js.map → chunk-XXS6SUVM.js.map} +0 -0
  683. /package/dist/{chunk-FSLSISPI.js.map → chunk-Y3ESEQRI.js.map} +0 -0
  684. /package/dist/{chunk-YFIWCMVC.js.map → chunk-YAX5CGUY.js.map} +0 -0
  685. /package/dist/{chunk-RFR7ZN3P.js.map → chunk-ZCN2XUPQ.js.map} +0 -0
  686. /package/dist/{chunk-RW32BYY3.js.map → chunk-ZJOXRK2G.js.map} +0 -0
  687. /package/dist/{chunk-2AJ5UNOF.js.map → chunk-ZPHHJPDG.js.map} +0 -0
  688. /package/dist/{claim-ZKKC5472.js.map → claim-NM5T33W6.js.map} +0 -0
  689. /package/dist/{companies-CJFQ63MC.js.map → companies-VBNBS6LR.js.map} +0 -0
  690. /package/dist/{company-7K4EDRIN.js.map → company-3KOV3TJT.js.map} +0 -0
  691. /package/dist/{complete-ODOQLGSO.js.map → complete-TVY4F5YX.js.map} +0 -0
  692. /package/dist/{connect-APAK3WAY.js.map → connect-W6H3DT2C.js.map} +0 -0
  693. /package/dist/{conversation-B6V3VCT5.js.map → conversation-LCGWNPUG.js.map} +0 -0
  694. /package/dist/{conversion-report-JNWBTLA5.js.map → conversion-report-GK2FUT2R.js.map} +0 -0
  695. /package/dist/{conversion-upload-command-6OKMSO2T.js.map → conversion-upload-command-Q7LZFFZL.js.map} +0 -0
  696. /package/dist/{conversion-writes-2VOWP4RD.js.map → conversion-writes-STESFLTB.js.map} +0 -0
  697. /package/dist/{conversions-D32UTEPH.js.map → conversions-D2RPIL3I.js.map} +0 -0
  698. /package/dist/{conversions-JGIBYLK5.js.map → conversions-JBRU7CGB.js.map} +0 -0
  699. /package/dist/{create-EUQYK2SH.js.map → create-DHIXUD4Q.js.map} +0 -0
  700. /package/dist/{create-ALMXIVHA.js.map → create-OW2BLTBE.js.map} +0 -0
  701. /package/dist/{create-VAGPIZTU.js.map → create-TYG5SAQE.js.map} +0 -0
  702. /package/dist/{create-TOCR7EFZ.js.map → create-XGDJKMDB.js.map} +0 -0
  703. /package/dist/{creatives-HUDKBUDS.js.map → creatives-3ZPFUAKL.js.map} +0 -0
  704. /package/dist/{creatives-62PV7BIF.js.map → creatives-PN6EQYVU.js.map} +0 -0
  705. /package/dist/{credentials-WCD4F225.js.map → credentials-AVRHDGM5.js.map} +0 -0
  706. /package/dist/{critique-KJXHSKLT.js.map → critique-76EMERXI.js.map} +0 -0
  707. /package/dist/{critique-OO6SORTA.js.map → critique-SZSKQYUL.js.map} +0 -0
  708. /package/dist/{crm-YVRIT2RL.js.map → crm-4O65STFF.js.map} +0 -0
  709. /package/dist/{crm-5CYCCV34.js.map → crm-JMIIB55O.js.map} +0 -0
  710. /package/dist/{currency-SH4DDE3X.js.map → currency-HQW6FJS5.js.map} +0 -0
  711. /package/dist/{customers-FSOXPMOU.js.map → customers-GV3AD6B6.js.map} +0 -0
  712. /package/dist/{delete-H7IWZGUZ.js.map → delete-CJGW5MKC.js.map} +0 -0
  713. /package/dist/{delete-QXZFJNUS.js.map → delete-ISAOQTI5.js.map} +0 -0
  714. /package/dist/{delete-EEU6WJ6M.js.map → delete-WFF5EVIL.js.map} +0 -0
  715. /package/dist/{demographics-RM5PA54R.js.map → demographics-XSMD6KI4.js.map} +0 -0
  716. /package/dist/{discard-6XOYXNZ6.js.map → discard-B5QMX35Q.js.map} +0 -0
  717. /package/dist/{discover-VEHKBNCY.js.map → discover-DLGO3VW6.js.map} +0 -0
  718. /package/dist/{domain-X7MT3XUG.js.map → domain-WA4HAHCE.js.map} +0 -0
  719. /package/dist/{download-YQYR5GUP.js.map → download-67IB5DPC.js.map} +0 -0
  720. /package/dist/{draft-V7VGPJK4.js.map → draft-4MKYX4VU.js.map} +0 -0
  721. /package/dist/{draft-DUAFRL2G.js.map → draft-I7HIRQ6F.js.map} +0 -0
  722. /package/dist/{draft-FXMGEY3E.js.map → draft-NXGJ3DD4.js.map} +0 -0
  723. /package/dist/{draft-YXGASP7M.js.map → draft-P73N5PT4.js.map} +0 -0
  724. /package/dist/{draft-XWHU5C5Z.js.map → draft-QAPMXYBR.js.map} +0 -0
  725. /package/dist/{experiments-2XOC77Y7.js.map → experiments-YEI3HSBU.js.map} +0 -0
  726. /package/dist/{facets-7Q36JF2D.js.map → facets-EQLEOMDT.js.map} +0 -0
  727. /package/dist/{feedback-WPV2RKJS.js.map → feedback-JNSHN7DE.js.map} +0 -0
  728. /package/dist/{feedback-record-UEWS4FZJ.js.map → feedback-record-JV43NSJI.js.map} +0 -0
  729. /package/dist/{fetch-AARAG6UL.js.map → fetch-O4EYJVMN.js.map} +0 -0
  730. /package/dist/{fit-T4ALNNXL.js.map → fit-7N7AHYQF.js.map} +0 -0
  731. /package/dist/{flows-PYPA2FM3.js.map → flows-DTZGIGZS.js.map} +0 -0
  732. /package/dist/{fonts-H2GG2JXA.js.map → fonts-TYDQXRIU.js.map} +0 -0
  733. /package/dist/{forecast-UYBYSH3Y.js.map → forecast-AODSMD7S.js.map} +0 -0
  734. /package/dist/{forecast-LMSPNY6X.js.map → forecast-VO7XY46L.js.map} +0 -0
  735. /package/dist/{funnel-KIYPFPIY.js.map → funnel-CV4DZXUS.js.map} +0 -0
  736. /package/dist/{generate-QG7GX6WO.js.map → generate-HSDSCKDW.js.map} +0 -0
  737. /package/dist/{get-ROETYEYF.js.map → get-4S4XRZ2J.js.map} +0 -0
  738. /package/dist/{get-IN6UXQRX.js.map → get-FDZZEB5R.js.map} +0 -0
  739. /package/dist/{google-ZT3J3G4Z.js.map → google-DPBZJ3TV.js.map} +0 -0
  740. /package/dist/{google-ads-CBJZKTXG.js.map → google-ads-EPFX2NA4.js.map} +0 -0
  741. /package/dist/{history-GTT55ZP7.js.map → history-7UJW5TRO.js.map} +0 -0
  742. /package/dist/{history-UYG35MNJ.js.map → history-JCLXT3AO.js.map} +0 -0
  743. /package/dist/{history-XOB23MLX.js.map → history-SHQVK5I7.js.map} +0 -0
  744. /package/dist/{hubspot-B6Z77JY6.js.map → hubspot-J6372OWH.js.map} +0 -0
  745. /package/dist/{ideas-RVK4RNKN.js.map → ideas-TKMMQ557.js.map} +0 -0
  746. /package/dist/{images-RGJZ6FJL.js.map → images-J7LJETPR.js.map} +0 -0
  747. /package/dist/{ingest-GBWY2ZEP.js.map → ingest-LVAH5OF5.js.map} +0 -0
  748. /package/dist/{ingest-7FHCKRYR.js.map → ingest-UBP7TEXU.js.map} +0 -0
  749. /package/dist/{insights-7CQJOBWX.js.map → insights-UMPXHRKD.js.map} +0 -0
  750. /package/dist/{inspect-RC6GKLIF.js.map → inspect-22G3OPFK.js.map} +0 -0
  751. /package/dist/{intent-P75BDP4H.js.map → intent-NBP5IDND.js.map} +0 -0
  752. /package/dist/{keyword-gap-54F6CZLM.js.map → keyword-gap-67UJ2LDD.js.map} +0 -0
  753. /package/dist/{keyword-metrics-PL5IYZGN.js.map → keyword-metrics-QP5ZNOC6.js.map} +0 -0
  754. /package/dist/{keywords-for-site-4FMJ5IGN.js.map → keywords-for-site-QTE332T7.js.map} +0 -0
  755. /package/dist/{landing-24TVKWTP.js.map → landing-TOYYCWFX.js.map} +0 -0
  756. /package/dist/{languages-PEGOE365.js.map → languages-TM7SHGRO.js.map} +0 -0
  757. /package/dist/{leads-6TFBPYMM.js.map → leads-FTWBDLBQ.js.map} +0 -0
  758. /package/dist/{learn-4LGNFGWH.js.map → learn-3N7M3UHA.js.map} +0 -0
  759. /package/dist/{line-item-writes-AOTRDB4L.js.map → line-item-writes-VFPXT4W6.js.map} +0 -0
  760. /package/dist/{line-items-ERV3F2EI.js.map → line-items-HB2N7RKO.js.map} +0 -0
  761. /package/dist/{link-QZXI5YJP.js.map → link-KAY6VYFH.js.map} +0 -0
  762. /package/dist/{linkedin-4BKZ5KUE.js.map → linkedin-CDSEMSCF.js.map} +0 -0
  763. /package/dist/{linkedin-person-ZLXMOG2U.js.map → linkedin-person-HR6HKFUU.js.map} +0 -0
  764. /package/dist/{list-UCQEHPIR.js.map → list-INU27RQJ.js.map} +0 -0
  765. /package/dist/{list-7FB6764Q.js.map → list-QWCU77C3.js.map} +0 -0
  766. /package/dist/{list-QHAYR2IQ.js.map → list-VJ3CVEDW.js.map} +0 -0
  767. /package/dist/{locations-SHYN5J4Q.js.map → locations-HAXZUHJP.js.map} +0 -0
  768. /package/dist/{locations-MXWGZIGU.js.map → locations-JFBM4XBL.js.map} +0 -0
  769. /package/dist/{log-WPZRUMZU.js.map → log-AUN4NOPP.js.map} +0 -0
  770. /package/dist/{make-VCAS2M2W.js.map → make-B5HDRFCX.js.map} +0 -0
  771. /package/dist/{map-5EQO2VXB.js.map → map-CCBSITK7.js.map} +0 -0
  772. /package/dist/{mcp-CKOYL4IU.js.map → mcp-45YWYNYM.js.map} +0 -0
  773. /package/dist/{media-sources-EDZ2PBJY.js.map → media-sources-N7MBY3GE.js.map} +0 -0
  774. /package/dist/{members-E2AGJIU6.js.map → members-2P2QCBJO.js.map} +0 -0
  775. /package/dist/{metrics-25LYUEB7.js.map → metrics-XWHE4LYQ.js.map} +0 -0
  776. /package/dist/{models-EU3NO4IY.js.map → models-3C6BWHEC.js.map} +0 -0
  777. /package/dist/{normalize-PHJT5CAD.js.map → normalize-MLRJ6IYU.js.map} +0 -0
  778. /package/dist/{options-KFABOCWK.js.map → options-6QAJ67XB.js.map} +0 -0
  779. /package/dist/{organization-BP5DTWL7.js.map → organization-P5LAMNMT.js.map} +0 -0
  780. /package/dist/{performance-C4M3GJPC.js.map → performance-3PH7UYQN.js.map} +0 -0
  781. /package/dist/{performance-H3SJD3SN.js.map → performance-6BMFU6IJ.js.map} +0 -0
  782. /package/dist/{pixels-NLH2PN6Q.js.map → pixels-PMPL63ON.js.map} +0 -0
  783. /package/dist/{promoted-tweet-writes-ATWAKV6N.js.map → promoted-tweet-writes-EPXZFIUP.js.map} +0 -0
  784. /package/dist/{promoted-tweets-TWQP3MDP.js.map → promoted-tweets-Q46HUYN6.js.map} +0 -0
  785. /package/dist/{publish-Q4W7MI7P.js.map → publish-DHDRUTXM.js.map} +0 -0
  786. /package/dist/{query-TP3L4W7Z.js.map → query-IR3LCFON.js.map} +0 -0
  787. /package/dist/{reddit-JWZYSUAG.js.map → reddit-2FQOS3B3.js.map} +0 -0
  788. /package/dist/{refresh-VRBHP4AA.js.map → refresh-VJPKAPJM.js.map} +0 -0
  789. /package/dist/{release-OV4ZDCXG.js.map → release-O233BAQA.js.map} +0 -0
  790. /package/dist/{relevant-pages-VJHTUJMB.js.map → relevant-pages-NPUSAV3K.js.map} +0 -0
  791. /package/dist/{remove-DBCSQSEP.js.map → remove-HNSOYQVB.js.map} +0 -0
  792. /package/dist/{reopen-5ZOEKYQ5.js.map → reopen-B7KHVN5X.js.map} +0 -0
  793. /package/dist/{rerun-YMRW6BHM.js.map → rerun-KAB7AXTY.js.map} +0 -0
  794. /package/dist/{research-M3QPWTYX.js.map → research-I4ZQ4YQ3.js.map} +0 -0
  795. /package/dist/{research-HUM6CF74.js.map → research-Z2SE775C.js.map} +0 -0
  796. /package/dist/{reset-BPAFOW6M.js.map → reset-4T6XUNOO.js.map} +0 -0
  797. /package/dist/{reset-WAY3BSZX.js.map → reset-YHEMD5N5.js.map} +0 -0
  798. /package/dist/{resolve-AQ6UFEMN.js.map → resolve-5RJD2ELK.js.map} +0 -0
  799. /package/dist/{retry-3KYFTPXZ.js.map → retry-S3EC6FCA.js.map} +0 -0
  800. /package/dist/{retry-XO54CIRK.js.map → retry-WKYMY2KB.js.map} +0 -0
  801. /package/dist/{revenue-PPDMQO3H.js.map → revenue-C4E4PRLL.js.map} +0 -0
  802. /package/dist/{rules-4ENXG5XW.js.map → rules-JGTKFXM3.js.map} +0 -0
  803. /package/dist/{rules-add-FTBOOE6L.js.map → rules-add-3DTRLVGR.js.map} +0 -0
  804. /package/dist/{run-UECCNQ63.js.map → run-2TKYHCN2.js.map} +0 -0
  805. /package/dist/{run-2ZRTKR7A.js.map → run-TYJLOJW7.js.map} +0 -0
  806. /package/dist/{scaffold-ad-DFKFUOOZ.js.map → scaffold-ad-RFRUPUKW.js.map} +0 -0
  807. /package/dist/{scaffold-static-ad-II3TUE5I.js.map → scaffold-static-ad-N5QCJFGP.js.map} +0 -0
  808. /package/dist/{scaffold-video-IKVYICIY.js.map → scaffold-video-VAG3WN5W.js.map} +0 -0
  809. /package/dist/{schedule-ERHKGQID.js.map → schedule-6UYJLE5K.js.map} +0 -0
  810. /package/dist/{scheduled-agents-ICXFV7NP.js.map → scheduled-agents-YEHJ4XIB.js.map} +0 -0
  811. /package/dist/{schema-NUUZ3MG7.js.map → schema-BCCCNVNO.js.map} +0 -0
  812. /package/dist/{search-B2APYHV6.js.map → search-J43ZG7W3.js.map} +0 -0
  813. /package/dist/{select-WVNPJDXP.js.map → select-I2UPGGZ5.js.map} +0 -0
  814. /package/dist/{set-prompt-KHBDWDXA.js.map → set-prompt-SU7YM7FW.js.map} +0 -0
  815. /package/dist/{setup-links-R3FH7WK4.js.map → setup-links-VWK4MBI3.js.map} +0 -0
  816. /package/dist/{shopify-34CFN6SG.js.map → shopify-6KNHPC4R.js.map} +0 -0
  817. /package/dist/{site-H6AMVMIX.js.map → site-PHTJ5VI3.js.map} +0 -0
  818. /package/dist/{sources-2VJMHUH7.js.map → sources-255OGK6K.js.map} +0 -0
  819. /package/dist/{stale-6BEHWQZ7.js.map → stale-KN2ZOJ5T.js.map} +0 -0
  820. /package/dist/{status-MCMOSDVX.js.map → status-BJH7ODU4.js.map} +0 -0
  821. /package/dist/{studio-4QOFG7MQ.js.map → studio-C2UVCTDD.js.map} +0 -0
  822. /package/dist/{sync-WJCJHNET.js.map → sync-MIKA6IM6.js.map} +0 -0
  823. /package/dist/{sync-definition-THVMBGJR.js.map → sync-definition-LO425HBD.js.map} +0 -0
  824. /package/dist/{tags-AGFUJ2BB.js.map → tags-DKSJ4E7E.js.map} +0 -0
  825. /package/dist/{tags-OPMPPJY2.js.map → tags-JEGCEFMZ.js.map} +0 -0
  826. /package/dist/{tags-VOCMMZ75.js.map → tags-MNHBZ7FH.js.map} +0 -0
  827. /package/dist/{tags-WK6P5A4D.js.map → tags-S5XY63D3.js.map} +0 -0
  828. /package/dist/{tags-VGJ76RJT.js.map → tags-VVO3BT66.js.map} +0 -0
  829. /package/dist/{targeting-criteria-KRIMZRVI.js.map → targeting-criteria-BIIGZTLQ.js.map} +0 -0
  830. /package/dist/{targets-MCOEM4XQ.js.map → targets-SX3NMYQ3.js.map} +0 -0
  831. /package/dist/{testimonials-A2AFXSZV.js.map → testimonials-U3KBI3VU.js.map} +0 -0
  832. /package/dist/{themes-JBX6W4SP.js.map → themes-32CUPT4M.js.map} +0 -0
  833. /package/dist/{top-companies-ESCRXLSK.js.map → top-companies-DFM4F2SE.js.map} +0 -0
  834. /package/dist/{transcript-N2ZWN4CI.js.map → transcript-4BSUSOQ4.js.map} +0 -0
  835. /package/dist/{translate-YGUYVOGA.js.map → translate-JE7CZJ26.js.map} +0 -0
  836. /package/dist/{triggers-G4EW5XG6.js.map → triggers-SRI27OAP.js.map} +0 -0
  837. /package/dist/{unlink-DRIVH2GT.js.map → unlink-U7HZ4CYW.js.map} +0 -0
  838. /package/dist/{unstage-WUQV6QBV.js.map → unstage-JJGZJVHT.js.map} +0 -0
  839. /package/dist/{update-5GIAKABM.js.map → update-JN75LN32.js.map} +0 -0
  840. /package/dist/{update-T7PSOZES.js.map → update-PU5LSQ7W.js.map} +0 -0
  841. /package/dist/{update-COXCKREW.js.map → update-PUWD5HX4.js.map} +0 -0
  842. /package/dist/{update-NA4M4J5D.js.map → update-R4EEEWT4.js.map} +0 -0
  843. /package/dist/{upload-IXVEJLZU.js.map → upload-4CUPZI3X.js.map} +0 -0
  844. /package/dist/{url-options-LHEGWNAH.js.map → url-options-P3UTLYUY.js.map} +0 -0
  845. /package/dist/{url-params-IL2M2WZI.js.map → url-params-V7KQMWK3.js.map} +0 -0
  846. /package/dist/{validate-QAJJ7QCJ.js.map → validate-6GRMJKZI.js.map} +0 -0
  847. /package/dist/{videos-I7PCC2EC.js.map → videos-6ZZ6LLTL.js.map} +0 -0
  848. /package/dist/{viewer-check-PUAWVYWP.js.map → viewer-check-B36TNSZI.js.map} +0 -0
  849. /package/dist/{web-O2MCPPB5.js.map → web-H5CWLHRA.js.map} +0 -0
  850. /package/dist/{winning-ads-FTMP4FUC.js.map → winning-ads-SHNXPIYB.js.map} +0 -0
  851. /package/dist/{write-commands-NKKNWQIM.js.map → write-commands-RI6UP4YG.js.map} +0 -0
  852. /package/dist/{x-FPRMRQLQ.js.map → x-CI2XPNBR.js.map} +0 -0
@@ -0,0 +1,46 @@
1
+ import {
2
+ RENDER_REVIEW_MODEL,
3
+ askAboutImages,
4
+ buildRulesReviewPrompt,
5
+ classifyRuleFindings,
6
+ reviewedRules,
7
+ rulesSystem
8
+ } from "./chunk-KAUW3OFC.js";
9
+
10
+ // src/engine/nodes/local/lib/confirm-blocking.ts
11
+ var cutByFrame = (f) => f.kind?.defect === "cut";
12
+ async function confirmBlocking(findings, stills, formats, ask) {
13
+ const claims = findings.filter((f) => f.severity === "blocking" && !cutByFrame(f));
14
+ if (claims.length === 0 || stills.length === 0) return [...findings];
15
+ const prompt = [
16
+ `These are the finished sizes of one ad, in order: ${formats.map((f, i) => `Image ${i + 1} is the ${f}`).join("; ")}.`,
17
+ "A reviewer reported each claim below. Look again at the size each one names (and, for a claim comparing sizes, at the others) and answer true only when the defect is plainly there for someone looking at it on a phone.",
18
+ "Answer false when the thing is not there, when it is an ordinary part of the scene (a second house, a neighbour's roof, a reflection), or when the sizes it compares show the same thing.",
19
+ ...claims.map((c, i) => `${i + 1}. ${c.what}`),
20
+ `Reply with only this JSON: {"answers":[true|false, ...]}, one answer per claim, in order.`
21
+ ].join("\n");
22
+ const answer = await ask([...stills], prompt).catch(() => null);
23
+ const answers = answer?.answers;
24
+ if (!Array.isArray(answers) || answers.length !== claims.length) return [...findings];
25
+ const unconfirmed = new Set(claims.filter((_, i) => answers[i] === false));
26
+ return findings.map((f) => unconfirmed.has(f) ? { ...f, severity: "warning" } : f);
27
+ }
28
+
29
+ // src/engine/nodes/local/lib/rules-review.ts
30
+ var RULES_REVIEW_TIMEOUT_MS = 12e4;
31
+ async function reviewAgainstRules(opts) {
32
+ const rules = reviewedRules(opts.rules);
33
+ if (rules.length === 0 || opts.stills.length === 0) return [];
34
+ const system = rulesSystem(rules);
35
+ const ask = (images, prompt) => askAboutImages(RENDER_REVIEW_MODEL, images, prompt, opts.onSpend, RULES_REVIEW_TIMEOUT_MS, void 0, system);
36
+ const answer = await ask([...opts.stills], buildRulesReviewPrompt({ formats: opts.formats, rules }));
37
+ if (answer === null) return null;
38
+ return await confirmBlocking(classifyRuleFindings(answer, rules), opts.stills, opts.formats, ask);
39
+ }
40
+
41
+ export {
42
+ cutByFrame,
43
+ confirmBlocking,
44
+ reviewAgainstRules
45
+ };
46
+ //# sourceMappingURL=chunk-Y3ESEQRI.js.map
@@ -0,0 +1,638 @@
1
+ import {
2
+ AD_PLATFORMS
3
+ } from "./chunk-F3CZFUXZ.js";
4
+ import {
5
+ staticFormatPatternSchema
6
+ } from "./chunk-TRXGJZDL.js";
7
+
8
+ // src/engine/creative-rules/schema.ts
9
+ import { z } from "zod";
10
+ var RULE_STRENGTHS = ["never", "must", "prefer"];
11
+ var RULE_APPLIES = ["copy", "picture", "cast", "logo", "voice", "sound", "subtitles", "any"];
12
+ var RULE_KINDS = ["static", "video"];
13
+ var RULE_SOURCE_KINDS = ["feedback", "user", "brand-import", "brand"];
14
+ var phrase = z.string().trim().min(1).max(120);
15
+ var Phrases = z.array(z.unknown()).transform((list) => list.flatMap((p) => phrase.safeParse(p).success ? [String(p).trim()] : []));
16
+
17
+ // src/engine/copy-tells/rule-tells.ts
18
+ var SOFT = /* @__PURE__ */ new Set([
19
+ ".",
20
+ ",",
21
+ ";",
22
+ ":",
23
+ "!",
24
+ "?",
25
+ "\xA1",
26
+ "\xBF",
27
+ '"',
28
+ "'",
29
+ "\u201C",
30
+ "\u201D",
31
+ "\u2018",
32
+ "\u2019",
33
+ "\xAB",
34
+ "\xBB",
35
+ "(",
36
+ ")",
37
+ "[",
38
+ "]",
39
+ "{",
40
+ "}",
41
+ "\u2026",
42
+ "-",
43
+ "/",
44
+ "*",
45
+ "_"
46
+ ]);
47
+ function fold(text2, keepCase) {
48
+ const plain = text2.normalize("NFKD").replace(new RegExp("\\p{M}", "gu"), "").replace(/ß/g, "ss").replace(/ẞ/g, "SS");
49
+ return keepCase ? plain : plain.toLowerCase();
50
+ }
51
+ function tokens(text2, keepCase, marks = false) {
52
+ const all = fold(text2, keepCase).match(/[\p{L}\p{N}]+|[^\s\p{L}\p{N}]/gu) ?? [];
53
+ return marks ? all : all.filter((t) => !SOFT.has(t));
54
+ }
55
+ function onlyMarks(phrase2, keepCase) {
56
+ return tokens(phrase2, keepCase).length === 0 && tokens(phrase2, keepCase, true).length > 0;
57
+ }
58
+ function positions(words, phrase2) {
59
+ if (phrase2.length === 0) return [];
60
+ const at = [];
61
+ for (let i = 0; i + phrase2.length <= words.length; i++) {
62
+ if (phrase2.every((w, j) => words[i + j] === w)) at.push(i);
63
+ }
64
+ return at;
65
+ }
66
+ function aboutCase(check) {
67
+ const phrases = [...check.forbid ?? [], ...check.allow ?? [], ...check.require ?? []];
68
+ return phrases.some(
69
+ (a, i) => phrases.some((b, j) => i !== j && a !== b && fold(a, false) === fold(b, false) && fold(a, true) !== fold(b, true))
70
+ );
71
+ }
72
+ function sameLanguage(rule, language) {
73
+ const ruleLanguage = rule.scope.language;
74
+ if (!ruleLanguage) return true;
75
+ if (!language) return false;
76
+ const primary = (tag) => tag.toLowerCase().split(/[-_]/)[0];
77
+ return primary(ruleLanguage) === primary(language);
78
+ }
79
+ function forbiddenIn(line, check, keepCase) {
80
+ for (const banned of check.forbid ?? []) {
81
+ const marks = onlyMarks(banned, keepCase);
82
+ const words = tokens(line, keepCase, marks);
83
+ const allowed = (check.allow ?? []).flatMap((a) => {
84
+ const allow = tokens(a, keepCase, marks);
85
+ return positions(words, allow).map((start) => [start, start + allow.length]);
86
+ });
87
+ const phrase2 = tokens(banned, keepCase, marks);
88
+ const free = positions(words, phrase2).some(
89
+ (start) => !allowed.some(([from, to]) => start >= from && start + phrase2.length <= to)
90
+ );
91
+ if (free) return banned;
92
+ }
93
+ return null;
94
+ }
95
+ function tellsOf(rule, lines) {
96
+ const check = rule.check;
97
+ if (!check) return [];
98
+ const keepCase = aboutCase(check);
99
+ const base = {
100
+ rule: rule.id,
101
+ strength: rule.strength,
102
+ text: rule.text,
103
+ ...rule.source.quote ? { quote: rule.source.quote } : {}
104
+ };
105
+ const forbidden = lines.flatMap((line) => {
106
+ const phrase2 = forbiddenIn(line, check, keepCase);
107
+ return phrase2 ? [{ ...base, kind: "forbidden", phrase: phrase2, line }] : [];
108
+ });
109
+ const missing = (check.require ?? []).flatMap((required) => {
110
+ const marks = onlyMarks(required, keepCase);
111
+ const phrase2 = tokens(required, keepCase, marks);
112
+ const said = lines.some((line) => positions(tokens(line, keepCase, marks), phrase2).length > 0);
113
+ return said ? [] : [{ ...base, kind: "missing", phrase: required }];
114
+ });
115
+ return [...forbidden, ...missing];
116
+ }
117
+ function ruleTells(lines, rules, language) {
118
+ return rules.filter((rule) => rule.strength !== "prefer" && sameLanguage(rule, language)).flatMap((rule) => tellsOf(rule, lines));
119
+ }
120
+
121
+ // src/commands/creatives/ideas-model.ts
122
+ import { parse as parseYaml, YAMLParseError } from "yaml";
123
+ var IDEA_ANGLES = [
124
+ "pain_relief",
125
+ "aspiration",
126
+ "status",
127
+ "fear",
128
+ "FOMO",
129
+ "identity",
130
+ "contrarian",
131
+ "education",
132
+ "novelty",
133
+ "authority",
134
+ "community",
135
+ "transformation",
136
+ "convenience",
137
+ "save_money",
138
+ "save_time",
139
+ "save_effort",
140
+ "named_enemy",
141
+ "objection_crusher",
142
+ "villain_democratization",
143
+ "commiseration",
144
+ "recognition_mirror",
145
+ "flipped_idiom"
146
+ ];
147
+ var IDEA_VIDEO_FORMATS = [
148
+ "video_ugc",
149
+ "video_founder",
150
+ "video_testimonial",
151
+ "video_demo",
152
+ "video_screen_recording",
153
+ "video_explainer",
154
+ "video_motion_graphics"
155
+ ];
156
+ var IDEA_FORMATS = [...staticFormatPatternSchema.options, ...IDEA_VIDEO_FORMATS];
157
+ var AWARENESS_STAGES = ["unaware", "problem_aware", "solution_aware", "product_aware", "most_aware"];
158
+ var EVIDENCE_LEVELS = ["observed", "interpreted", "hypothesized", "generated"];
159
+ var IDEA_STATUSES = ["idea", "built", "testing", "winner", "failed", "inconclusive", "retired"];
160
+ var FRONTMATTER = /^---\r?\n([\s\S]*?)\r?\n---/;
161
+ function frontmatterOf(markdown) {
162
+ const block = FRONTMATTER.exec(markdown)?.[1];
163
+ if (block === void 0) return null;
164
+ try {
165
+ const parsed = parseYaml(block);
166
+ return parsed !== null && typeof parsed === "object" && !Array.isArray(parsed) ? parsed : null;
167
+ } catch {
168
+ return null;
169
+ }
170
+ }
171
+ function frontmatterError(markdown) {
172
+ const block = FRONTMATTER.exec(markdown)?.[1];
173
+ if (block === void 0) return null;
174
+ try {
175
+ parseYaml(block);
176
+ return null;
177
+ } catch (e) {
178
+ const line = e instanceof YAMLParseError ? e.linePos?.[0]?.line : void 0;
179
+ const at = line ? ` at line ${line} (\`${block.split(/\r?\n/)[line - 1]?.trim() ?? ""}\`)` : "";
180
+ return `the frontmatter is not valid YAML${at}: put each text value wholly in double quotes, with any quote inside it as \\" or as single quotes`;
181
+ }
182
+ }
183
+ function text(value) {
184
+ if (typeof value === "string") return value.trim() || void 0;
185
+ if (typeof value === "number") return String(value);
186
+ return void 0;
187
+ }
188
+ function oneOf(values, value) {
189
+ return typeof value === "string" && values.includes(value) ? value : void 0;
190
+ }
191
+ var CHECKABLE_SOURCE = /^(?:https?:\/\/\S+|[a-z_]+:[\w-]+)$/i;
192
+ function evidenceStatus(stated, source) {
193
+ if (stated !== "observed") return stated;
194
+ return CHECKABLE_SOURCE.test(source) ? "observed" : "interpreted";
195
+ }
196
+ function parseInsight(id, markdown) {
197
+ const fm = frontmatterOf(markdown);
198
+ const quote = text(fm?.quote);
199
+ const source = text(fm?.source);
200
+ if (!fm || !quote || !source) return null;
201
+ const force = text(fm.force);
202
+ const persona = text(fm.persona);
203
+ const sourceKind = text(fm.sourceKind);
204
+ const author = markdown.replace(/^---[\s\S]*?\n---/, "").match(/\bby ([\p{Lu}][\p{L}'’-]*\.?(?: [\p{Lu}][\p{L}'’-]*\.?)?)/u)?.[1]?.replace(new RegExp("(\\p{L}{2,})\\.$", "u"), "$1");
205
+ return {
206
+ id,
207
+ type: text(fm.type) ?? "other",
208
+ quote,
209
+ source,
210
+ status: evidenceStatus(oneOf(EVIDENCE_LEVELS, fm.status) ?? "observed", source),
211
+ ...sourceKind ? { sourceKind } : {},
212
+ ...force ? { force } : {},
213
+ ...persona ? { persona } : {},
214
+ ...author ? { author } : {}
215
+ };
216
+ }
217
+ function evidenceList(value) {
218
+ if (Array.isArray(value)) return value.flatMap((e) => text(e) ? [String(text(e))] : []);
219
+ const single = text(value);
220
+ return single ? [single] : [];
221
+ }
222
+ function fieldProblems(f) {
223
+ const problems = [];
224
+ if (!f.who) problems.push("who is missing: the persona it is for");
225
+ if (!f.message)
226
+ problems.push(
227
+ "message is missing: the one promise a stranger should get, what is offered and what changes for them"
228
+ );
229
+ if (!f.why) problems.push("why is missing: the brief finding it answers");
230
+ if (!f.awareness) {
231
+ const written = f.awarenessWritten ? `"${f.awarenessWritten}" ` : "";
232
+ problems.push(`awareness ${written}must be one of ${AWARENESS_STAGES.join(", ")}`);
233
+ }
234
+ if (!(f.angle && IDEA_ANGLES.includes(f.angle)))
235
+ problems.push(`angle ${f.angle ? `"${f.angle}" ` : ""}must be one of ${IDEA_ANGLES.join(", ")}`);
236
+ if (f.format && !IDEA_FORMATS.includes(f.format))
237
+ problems.push(`format "${f.format}" must be one of ${IDEA_FORMATS.join(", ")}`);
238
+ if (!f.format && !f.shows)
239
+ problems.push(
240
+ "shows is missing: what the scroller sees in the first second that makes the message land (a before/after, a reaction, the product doing it, a real review, the pain itself); the proven ad is searched by it"
241
+ );
242
+ return [...problems, ...platformProblems(f.platforms)];
243
+ }
244
+ function platformProblems(platforms) {
245
+ const unknown = (platforms ?? []).filter((p) => !AD_PLATFORMS.includes(p));
246
+ return unknown.length > 0 ? [`platforms ${unknown.map((p) => `"${p}"`).join(", ")} must be among ${AD_PLATFORMS.join(", ")}`] : [];
247
+ }
248
+ function platformList(value) {
249
+ const list = (Array.isArray(value) ? value : value === void 0 || value === null ? [] : [value]).map((v) => text(v)).filter((v) => v !== void 0);
250
+ return list.length > 0 ? list : void 0;
251
+ }
252
+ function parseIdea(id, markdown) {
253
+ const unparsable = frontmatterError(markdown);
254
+ if (unparsable) return { problems: [unparsable] };
255
+ const fm = frontmatterOf(markdown) ?? {};
256
+ const f = {
257
+ who: text(fm.who),
258
+ message: text(fm.message),
259
+ why: text(fm.why),
260
+ angle: text(fm.angle),
261
+ shows: text(fm.shows),
262
+ format: text(fm.format),
263
+ awareness: oneOf(AWARENESS_STAGES, fm.awareness),
264
+ awarenessWritten: text(fm.awareness),
265
+ platforms: platformList(fm.platforms)
266
+ };
267
+ const problems = fieldProblems(f);
268
+ const { who, message, why, angle, shows, format, awareness } = f;
269
+ if (problems.length > 0 || !who || !message || !why || !awareness || !angle) return { problems };
270
+ const product = text(fm.product);
271
+ return {
272
+ idea: {
273
+ id,
274
+ who,
275
+ message,
276
+ evidence: evidenceList(fm.evidence),
277
+ awareness,
278
+ angle,
279
+ ...shows ? { shows } : {},
280
+ ...format ? { format } : {},
281
+ job: fm.job === "closer" ? "closer" : "opener",
282
+ why,
283
+ status: oneOf(IDEA_STATUSES, fm.status) ?? "idea",
284
+ ...product ? { product } : {},
285
+ ...f.platforms ? { platforms: f.platforms } : {}
286
+ },
287
+ problems
288
+ };
289
+ }
290
+ var EVIDENCE_WEIGHT = {
291
+ observed: 3,
292
+ interpreted: 2,
293
+ hypothesized: 1,
294
+ generated: 0,
295
+ explore: 0
296
+ };
297
+ var LIVE_STATUSES = ["built", "testing", "winner"];
298
+ function claimsOf(message) {
299
+ return [...message.matchAll(/\d[\d.,]*\s?(?:%|€|\$|£|x\b|k\b)?/gi)].map((m) => m[0].trim());
300
+ }
301
+ function figureOf(claim) {
302
+ return claim.replace(/[^\d]/g, "");
303
+ }
304
+ function figuresIn(text2) {
305
+ return new Set([...text2.matchAll(/\d(?:[\d.,]*\d)?/g)].map((m) => figureOf(m[0])));
306
+ }
307
+ function normalize(value) {
308
+ return value.toLowerCase().replace(/\s+/g, " ").trim();
309
+ }
310
+ function pictureOf(idea) {
311
+ return idea.format ?? normalize(idea.shows ?? "");
312
+ }
313
+ function sentencesOf(message) {
314
+ return message.split(/[.!?]+(?:\s|$)/).filter((s) => s.trim().length > 0).length;
315
+ }
316
+ var SAME_WORDS = (a, b) => normalize(a) === normalize(b);
317
+ function repeatedFailure(idea, failed, sameMessage) {
318
+ const lost = failed.find(
319
+ (f) => f.id !== idea.id && (sameMessage(f.message, idea.message) || f.angle === idea.angle && pictureOf(f) === pictureOf(idea))
320
+ );
321
+ return lost ? [`says what "${lost.id}" said, and that idea failed in the account: change the message, not just the picture`] : [];
322
+ }
323
+ function likelyMeant(id, insights) {
324
+ const words = (text2) => new Set(
325
+ text2.toLowerCase().split(/[^\p{L}\p{N}]+/u).filter((w) => w.length >= 3)
326
+ );
327
+ const wanted = words(id);
328
+ let best;
329
+ for (const insight of insights.values()) {
330
+ const said = words(`${insight.id} ${insight.quote}`);
331
+ const shared = [...wanted].filter((w) => said.has(w)).length;
332
+ if (shared > 0 && shared > (best?.shared ?? 0)) best = { id: insight.id, shared };
333
+ }
334
+ return best?.id;
335
+ }
336
+ function backingOf(idea, insights, problems) {
337
+ const backing = idea.evidence.flatMap((id) => {
338
+ const insight = insights.get(id);
339
+ if (!insight) {
340
+ const meant = likelyMeant(id, insights);
341
+ problems.push(
342
+ `evidence "${id}" is not in src/content/insights/: ${meant ? `did you mean "${meant}"? ` : ""}name an insight on file by its id, or leave it out`
343
+ );
344
+ }
345
+ return insight ? [insight] : [];
346
+ });
347
+ return [...backing].sort((a, b) => EVIDENCE_WEIGHT[b.status] - EVIDENCE_WEIGHT[a.status])[0];
348
+ }
349
+ function unsourcedClaims(text2, corpusFigures) {
350
+ return claimsOf(text2).filter((claim) => {
351
+ const figure = figureOf(claim);
352
+ return figure !== "" && !corpusFigures.has(figure);
353
+ });
354
+ }
355
+ function productProblems(idea, ctx) {
356
+ const read = idea.product ? ctx.products.get(idea.product) : void 0;
357
+ const unread = idea.product && (!read || "error" in read) ? [
358
+ `product "${idea.product}" is not a product of the connected store${read && "error" in read ? ` (${read.error})` : ""}: name it by the handle \`baker shopify products --search\` gives, or remove product`
359
+ ] : [];
360
+ const figures = read && "record" in read ? /* @__PURE__ */ new Set([...ctx.corpusFigures, ...figuresIn(read.record)]) : ctx.corpusFigures;
361
+ return [...unread, ...claimProblems(idea.message, { ...ctx, corpusFigures: figures })];
362
+ }
363
+ function whyNotBacking(insight) {
364
+ const named = `the insight "${insight.id}"`;
365
+ if (fromMarket(insight))
366
+ return `${named}, what someone in the market said, not our customer: it is never our claim; drop it`;
367
+ if (insight.status === "hypothesized" || insight.status === "generated")
368
+ return `${named}, a ${insight.status} reading, not a customer's words: source it or drop it`;
369
+ if (!CHECKABLE_SOURCE.test(insight.source))
370
+ return `${named}, which cites no link a reader can open (its source: "${insight.source}"): give it its link, or drop the figure`;
371
+ return `${named}, a statistic about people rather than a customer's words: it cannot stand behind our claim; drop it`;
372
+ }
373
+ function claimProblems(message, ctx) {
374
+ return unsourcedClaims(message, ctx.corpusFigures).map((claim) => {
375
+ const figure = figureOf(claim);
376
+ const holder = [...ctx.insights.values()].find((insight) => figuresIn(insight.quote).has(figure));
377
+ return holder ? `"${claim}" is in ${whyNotBacking(holder)}` : `"${claim}" is in no customer quote, COMPANY.md, Knowledge entry or store product the idea names: if it is a store product's price, name the product in the idea's \`product\` (its handle); otherwise drop it, or ask the user and record it in the Knowledge once they confirm it, citing them; never write it into the Knowledge or COMPANY.md yourself to pass this check`;
378
+ });
379
+ }
380
+ var MARKET_SOURCES = ["reddit", "forum", "web"];
381
+ var TESTIMONIAL_FORMATS = ["review_screenshot", "testimonial_quote", "video_testimonial"];
382
+ function fromMarket(insight) {
383
+ return insight?.sourceKind !== void 0 && MARKET_SOURCES.includes(insight.sourceKind);
384
+ }
385
+ function sourcesClaims(insight) {
386
+ return insight.status === "observed" && !fromMarket(insight);
387
+ }
388
+ function borrowedProof(idea, insights) {
389
+ return idea.evidence.find((id) => {
390
+ const insight = insights.get(id);
391
+ return fromMarket(insight) && insight?.type === "proof";
392
+ });
393
+ }
394
+ function fakeReviewProblem(idea, insights) {
395
+ if (!idea.format || !TESTIMONIAL_FORMATS.includes(idea.format)) return [];
396
+ const cited = idea.evidence.flatMap((id) => insights.get(id) ?? []);
397
+ if (cited.length === 0 || !cited.every(fromMarket)) return [];
398
+ return [
399
+ `${idea.format} needs a quote from our own customer (a review, testimonial, call or survey); every one cited was said by someone in the market. Pick another format, or cite our own customer`
400
+ ];
401
+ }
402
+ function warningsOf(idea, evidence, personas, insights) {
403
+ const warnings = [];
404
+ const video = IDEA_VIDEO_FORMATS.includes(idea.format ?? "");
405
+ if (idea.status === "idea" && !video && !idea.shows)
406
+ warnings.push(
407
+ "say what it shows (`shows`): what the scroller sees in the first second that lands the message; the proven ad is searched by it, and without it by what the company sells"
408
+ );
409
+ const borrowed = borrowedProof(idea, insights);
410
+ if (borrowed) {
411
+ warnings.push(
412
+ `"${borrowed}" was said by someone in the market, not a customer of ours: use their words for the problem, never show it as our review, testimonial or result`
413
+ );
414
+ }
415
+ if (sentencesOf(idea.message) > 1 || idea.message.split(/\s+/).length > 25) {
416
+ warnings.push(
417
+ 'the message says more than one thing: keep one promise that still names what is offered ("a free roof survey that shows your real saving", never a slogan like "the numbers, explained"), the rest goes to the ad text'
418
+ );
419
+ }
420
+ if (personas.length > 0 && !personas.includes(idea.who)) {
421
+ warnings.push(`who "${idea.who}" is not a persona in the Knowledge (${personas.join(", ")})`);
422
+ }
423
+ if (evidence === "explore") {
424
+ warnings.push("no customer evidence: an explore bet. `baker research customers` may find some");
425
+ }
426
+ return warnings;
427
+ }
428
+ function checkOne(idea, ctx) {
429
+ const problems = [];
430
+ const best = backingOf(idea, ctx.insights, problems);
431
+ const evidence = best?.status ?? "explore";
432
+ problems.push(
433
+ ...productProblems(idea, ctx),
434
+ ...fakeReviewProblem(idea, ctx.insights),
435
+ ...ruleTells([idea.message], ctx.rules, ctx.language).filter((t) => t.kind === "forbidden").map((t) => `The message says "${t.phrase}": ${t.rule} (${t.strength}) \u2014 ${t.text}`)
436
+ );
437
+ const duplicate = ctx.duplicateOf.get(idea.id);
438
+ if (duplicate) {
439
+ problems.push(
440
+ `same angle and the same picture (format or what it shows), or the same message, as "${duplicate}": to the platform it is the same ad. Change the angle or what it shows`
441
+ );
442
+ }
443
+ const gaps = [];
444
+ if (!ctx.covered.has(idea.awareness)) gaps.push(`no live ad speaks to ${idea.awareness} people`);
445
+ if (idea.job === "closer" && ctx.closersLive === 0) gaps.push("no live ad closes warm people");
446
+ return {
447
+ id: idea.id,
448
+ status: idea.status,
449
+ message: idea.message,
450
+ evidence,
451
+ ...best ? { quote: best.quote } : {},
452
+ awareness: idea.awareness,
453
+ angle: idea.angle,
454
+ ...idea.shows ? { shows: idea.shows } : {},
455
+ ...idea.format ? { format: idea.format } : {},
456
+ ...idea.platforms ? { platforms: idea.platforms } : {},
457
+ problems,
458
+ warnings: [
459
+ ...warningsOf(idea, evidence, ctx.personas, ctx.insights),
460
+ ...repeatedFailure(idea, ctx.failed, ctx.sameMessage)
461
+ ],
462
+ gaps,
463
+ score: EVIDENCE_WEIGHT[evidence] + gaps.length - (problems.length > 0 ? 10 : 0)
464
+ };
465
+ }
466
+ function duplicatesOf(ideas, insights) {
467
+ const active = ideas.filter((i) => i.status !== "retired" && i.status !== "failed");
468
+ const strength = (idea) => Math.max(0, ...idea.evidence.map((id) => EVIDENCE_WEIGHT[insights.get(id)?.status ?? "explore"]));
469
+ const position = new Map(ideas.map((idea, index) => [idea.id, index]));
470
+ const order = [...active].sort(
471
+ (a, b) => Number(LIVE_STATUSES.includes(b.status)) - Number(LIVE_STATUSES.includes(a.status)) || strength(b) - strength(a) || (position.get(a.id) ?? 0) - (position.get(b.id) ?? 0)
472
+ );
473
+ const seenPairs = /* @__PURE__ */ new Map();
474
+ const seenMessages = /* @__PURE__ */ new Map();
475
+ const duplicateOf = /* @__PURE__ */ new Map();
476
+ for (const idea of order) {
477
+ const pair = `${idea.angle}\xD7${pictureOf(idea)}`;
478
+ const message = normalize(idea.message);
479
+ const earlier = seenPairs.get(pair) ?? seenMessages.get(message);
480
+ if (earlier) duplicateOf.set(idea.id, earlier);
481
+ if (!seenPairs.has(pair)) seenPairs.set(pair, idea.id);
482
+ if (!seenMessages.has(message)) seenMessages.set(message, idea.id);
483
+ }
484
+ return duplicateOf;
485
+ }
486
+ function checkIdeas(input) {
487
+ const insights = new Map(input.insights.map((insight) => [insight.id, insight]));
488
+ const ownQuotes = input.insights.filter(sourcesClaims).map((i) => i.quote);
489
+ const corpusFigures = figuresIn(`${input.knowledge}
490
+ ${ownQuotes.join("\n")}`);
491
+ const covered = new Set(input.coveredAwareness);
492
+ const duplicateOf = duplicatesOf(input.ideas, insights);
493
+ const checks = input.ideas.map(
494
+ (idea) => checkOne(idea, {
495
+ insights,
496
+ corpusFigures,
497
+ covered,
498
+ duplicateOf,
499
+ personas: input.personas,
500
+ closersLive: input.closersLive,
501
+ failed: input.ideas.filter((i) => i.status === "failed"),
502
+ sameMessage: input.sameMessage ?? SAME_WORDS,
503
+ products: input.products ?? /* @__PURE__ */ new Map(),
504
+ rules: input.rules ?? [],
505
+ language: input.language
506
+ })
507
+ );
508
+ const toBuild = (c) => c.status === "idea";
509
+ return checks.sort(
510
+ (a, b) => Number(toBuild(b)) - Number(toBuild(a)) || b.score - a.score || a.id.localeCompare(b.id)
511
+ );
512
+ }
513
+
514
+ // src/engine/creative-rules/read.ts
515
+ import { createHash } from "crypto";
516
+ import { readdir, readFile } from "fs/promises";
517
+ import path from "path";
518
+ import { z as z2 } from "zod";
519
+ var RULES_DIR = path.join("src", "content", "creative-rules");
520
+ var optionalText = z2.string().trim().min(1).max(2e3).optional().catch(void 0);
521
+ var optionalPhrases = Phrases.optional().catch(void 0);
522
+ var dateText = z2.union([z2.string(), z2.date().transform((d) => d.toISOString().slice(0, 10))]).pipe(z2.string().trim().min(1)).optional().catch(void 0);
523
+ var Frontmatter = z2.object({
524
+ strength: z2.enum(RULE_STRENGTHS).catch("must"),
525
+ applies: z2.enum(RULE_APPLIES).catch("any"),
526
+ scope: z2.object({
527
+ kinds: z2.array(z2.enum(RULE_KINDS)).optional().catch(void 0),
528
+ products: optionalPhrases,
529
+ platforms: optionalPhrases,
530
+ language: z2.string().trim().min(2).max(10).optional().catch(void 0)
531
+ }).catch({}),
532
+ check: z2.object({
533
+ forbid: optionalPhrases,
534
+ require: optionalPhrases,
535
+ allow: optionalPhrases,
536
+ people: z2.literal("real").optional().catch(void 0)
537
+ }).optional().catch(void 0),
538
+ source: z2.object({
539
+ kind: z2.enum(RULE_SOURCE_KINDS).catch("user"),
540
+ feedbackId: optionalText,
541
+ runId: optionalText,
542
+ slug: optionalText,
543
+ quote: optionalText,
544
+ date: dateText
545
+ }).catch({ kind: "user" }),
546
+ status: z2.enum(["active", "retired"]).catch("active"),
547
+ retiredBy: optionalText
548
+ });
549
+ function defined(value) {
550
+ return Object.fromEntries(
551
+ Object.entries(value).filter(([, v]) => v !== void 0 && !(Array.isArray(v) && v.length === 0))
552
+ );
553
+ }
554
+ function bodyOf(markdown) {
555
+ const body = markdown.replace(/^---\r?\n[\s\S]*?\r?\n---\r?\n?/, "").trim();
556
+ const paragraphs = body.split(/\r?\n\s*\r?\n/).map((p) => p.trim()).filter(Boolean);
557
+ const why = paragraphs.find((p) => /^(?:why|por qué|porque)\s*:/i.test(p));
558
+ const text2 = paragraphs.find((p) => p !== why && !p.startsWith("#"));
559
+ return { ...text2 ? { text: text2 } : {}, ...why ? { why: why.replace(/^[^:]+:\s*/, "") } : {} };
560
+ }
561
+ function parseRuleFile(id, markdown) {
562
+ const { text: text2, why } = bodyOf(markdown);
563
+ if (!text2) return null;
564
+ const fm = Frontmatter.parse(frontmatterOf(markdown) ?? {});
565
+ const check = fm.check ? defined(fm.check) : void 0;
566
+ return {
567
+ id,
568
+ origin: "learned",
569
+ strength: fm.strength,
570
+ applies: fm.applies,
571
+ scope: defined(fm.scope),
572
+ ...check && Object.keys(check).length > 0 ? { check } : {},
573
+ text: text2,
574
+ ...why ? { why } : {},
575
+ source: defined(fm.source),
576
+ status: fm.status,
577
+ ...fm.retiredBy ? { retiredBy: fm.retiredBy } : {}
578
+ };
579
+ }
580
+ async function readLearnedRules(root) {
581
+ const dir = path.join(root, RULES_DIR);
582
+ const files = (await readdir(dir).catch(() => [])).filter((f) => f.endsWith(".md")).sort();
583
+ const rules = await Promise.all(
584
+ files.map(
585
+ async (file) => parseRuleFile(file.replace(/\.md$/, ""), await readFile(path.join(dir, file), "utf8").catch(() => ""))
586
+ )
587
+ );
588
+ return rules.filter((r) => r !== null);
589
+ }
590
+ var declaredId = (text2) => `brand-${createHash("sha256").update(text2.trim()).digest("hex").slice(0, 8)}`;
591
+ function shownBothWays(text2, phrase2, allow) {
592
+ const fold2 = (s) => s.normalize("NFKD").replace(new RegExp("\\p{M}", "gu"), "").toLowerCase();
593
+ const said = fold2(text2).split(fold2(phrase2)).length - 1;
594
+ return said > 1 && !(allow ?? []).some((a) => fold2(a).includes(fold2(phrase2)));
595
+ }
596
+ var BARE_SHORT_WORD = new RegExp("^\\p{L}{1,2}$", "u");
597
+ function declaredRules(rules) {
598
+ return rules.map(({ text: text2, strength, applies, forbid, allow }) => {
599
+ const checked = forbid?.filter((p) => !BARE_SHORT_WORD.test(p.trim()) && !shownBothWays(text2, p, allow));
600
+ const check = defined({ forbid: checked, ...checked?.length ? { allow } : {} });
601
+ return {
602
+ id: declaredId(text2),
603
+ origin: "declared",
604
+ strength,
605
+ applies,
606
+ scope: {},
607
+ ...Object.keys(check).length > 0 ? { check } : {},
608
+ text: text2,
609
+ source: { kind: "brand" },
610
+ status: "active"
611
+ };
612
+ });
613
+ }
614
+
615
+ export {
616
+ RULE_STRENGTHS,
617
+ RULE_APPLIES,
618
+ RULE_KINDS,
619
+ Phrases,
620
+ ruleTells,
621
+ IDEA_ANGLES,
622
+ IDEA_VIDEO_FORMATS,
623
+ IDEA_FORMATS,
624
+ AWARENESS_STAGES,
625
+ frontmatterOf,
626
+ parseInsight,
627
+ parseIdea,
628
+ figuresIn,
629
+ SAME_WORDS,
630
+ unsourcedClaims,
631
+ sourcesClaims,
632
+ checkIdeas,
633
+ RULES_DIR,
634
+ parseRuleFile,
635
+ readLearnedRules,
636
+ declaredRules
637
+ };
638
+ //# sourceMappingURL=chunk-YAX5CGUY.js.map