@treasuredata/tdx 2026.9.0 → 2026.9.2

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 (429) hide show
  1. package/README.md +3 -8
  2. package/dist/bin.js +1 -1
  3. package/dist/build-info.json +3 -3
  4. package/dist/cli-categories.d.ts +1 -1
  5. package/dist/cli-categories.js +1 -1
  6. package/dist/cli-categories.js.map +1 -1
  7. package/dist/cli.d.ts.map +1 -1
  8. package/dist/cli.js +1 -1
  9. package/dist/cli.js.map +1 -1
  10. package/dist/commands/activations.js +1 -1
  11. package/dist/commands/agent-command.js +1 -1
  12. package/dist/commands/agent-test-command.js +1 -1
  13. package/dist/commands/ai-usage-command-base.d.ts +26 -0
  14. package/dist/commands/ai-usage-command-base.d.ts.map +1 -0
  15. package/dist/commands/ai-usage-command-base.js +1 -0
  16. package/dist/commands/ai-usage-command-base.js.map +1 -0
  17. package/dist/commands/api-command.js +1 -1
  18. package/dist/commands/auth-command.js +1 -1
  19. package/dist/commands/cas-command.js +1 -1
  20. package/dist/commands/cas-segment-command.js +1 -1
  21. package/dist/commands/chat-command.js +1 -1
  22. package/dist/commands/claude-command.d.ts +60 -3
  23. package/dist/commands/claude-command.d.ts.map +1 -1
  24. package/dist/commands/claude-command.js +1 -1
  25. package/dist/commands/claude-command.js.map +1 -1
  26. package/dist/commands/claude-statusline-command.js +1 -1
  27. package/dist/commands/claude-usage-command.d.ts +4 -7
  28. package/dist/commands/claude-usage-command.d.ts.map +1 -1
  29. package/dist/commands/claude-usage-command.js +1 -1
  30. package/dist/commands/claude-usage-command.js.map +1 -1
  31. package/dist/commands/codex-command.js +1 -1
  32. package/dist/commands/command.js +1 -1
  33. package/dist/commands/connection-command.js +1 -1
  34. package/dist/commands/databases.js +1 -1
  35. package/dist/commands/delivery-command.js +1 -1
  36. package/dist/commands/describe.js +1 -1
  37. package/dist/commands/engage-always-on-campaign-pull-command.js +1 -1
  38. package/dist/commands/engage-always-on-campaign-push-command.js +1 -1
  39. package/dist/commands/engage-always-on-campaign-validate-command.js +1 -1
  40. package/dist/commands/engage-campaign-pull-command.js +1 -1
  41. package/dist/commands/engage-campaign-push-command.d.ts +1 -0
  42. package/dist/commands/engage-campaign-push-command.d.ts.map +1 -1
  43. package/dist/commands/engage-campaign-push-command.js +1 -1
  44. package/dist/commands/engage-campaign-push-command.js.map +1 -1
  45. package/dist/commands/engage-campaign-readiness-command.d.ts +8 -0
  46. package/dist/commands/engage-campaign-readiness-command.d.ts.map +1 -0
  47. package/dist/commands/engage-campaign-readiness-command.js +1 -0
  48. package/dist/commands/engage-campaign-readiness-command.js.map +1 -0
  49. package/dist/commands/engage-campaign-validate-command.d.ts +1 -0
  50. package/dist/commands/engage-campaign-validate-command.d.ts.map +1 -1
  51. package/dist/commands/engage-campaign-validate-command.js +1 -1
  52. package/dist/commands/engage-campaign-validate-command.js.map +1 -1
  53. package/dist/commands/engage-command.d.ts +1 -0
  54. package/dist/commands/engage-command.d.ts.map +1 -1
  55. package/dist/commands/engage-command.js +1 -1
  56. package/dist/commands/engage-command.js.map +1 -1
  57. package/dist/commands/engage-in-browser-message-command.d.ts +33 -0
  58. package/dist/commands/engage-in-browser-message-command.d.ts.map +1 -0
  59. package/dist/commands/engage-in-browser-message-command.js +1 -0
  60. package/dist/commands/engage-in-browser-message-command.js.map +1 -0
  61. package/dist/commands/engage-landing-page-command.js +1 -1
  62. package/dist/commands/engage-template-pull-command.js +1 -1
  63. package/dist/commands/engage-template-push-command.js +1 -1
  64. package/dist/commands/engage-template-validate-command.js +1 -1
  65. package/dist/commands/engage-workspace-assignment-command.d.ts +55 -0
  66. package/dist/commands/engage-workspace-assignment-command.d.ts.map +1 -0
  67. package/dist/commands/engage-workspace-assignment-command.js +1 -0
  68. package/dist/commands/engage-workspace-assignment-command.js.map +1 -0
  69. package/dist/commands/job-command.js +1 -1
  70. package/dist/commands/journey-command.d.ts.map +1 -1
  71. package/dist/commands/journey-command.js +1 -1
  72. package/dist/commands/journey-command.js.map +1 -1
  73. package/dist/commands/journey-validate-command.js +1 -1
  74. package/dist/commands/llm-command.js +1 -1
  75. package/dist/commands/mcp-command.js +1 -1
  76. package/dist/commands/opencode-command.d.ts +18 -0
  77. package/dist/commands/opencode-command.d.ts.map +1 -0
  78. package/dist/commands/opencode-command.js +1 -0
  79. package/dist/commands/opencode-command.js.map +1 -0
  80. package/dist/commands/opencode-usage-command.d.ts +19 -0
  81. package/dist/commands/opencode-usage-command.d.ts.map +1 -0
  82. package/dist/commands/opencode-usage-command.js +1 -0
  83. package/dist/commands/opencode-usage-command.js.map +1 -0
  84. package/dist/commands/p13n-command.d.ts +72 -0
  85. package/dist/commands/p13n-command.d.ts.map +1 -1
  86. package/dist/commands/p13n-command.js +1 -1
  87. package/dist/commands/p13n-command.js.map +1 -1
  88. package/dist/commands/parent-segment-command.d.ts.map +1 -1
  89. package/dist/commands/parent-segment-command.js +1 -1
  90. package/dist/commands/parent-segment-command.js.map +1 -1
  91. package/dist/commands/policy-command.js +1 -1
  92. package/dist/commands/profile-command.js +1 -1
  93. package/dist/commands/profiles-command.js +1 -1
  94. package/dist/commands/query-command.js +1 -1
  95. package/dist/commands/schedule-command.js +1 -1
  96. package/dist/commands/segment-command.js +1 -1
  97. package/dist/commands/segment-create-command.js +1 -1
  98. package/dist/commands/segment-fields-command.js +1 -1
  99. package/dist/commands/segment-move-command.js +1 -1
  100. package/dist/commands/segment-pull-command.js +1 -1
  101. package/dist/commands/segment-push-command.js +1 -1
  102. package/dist/commands/segment-update-command.js +1 -1
  103. package/dist/commands/segment-use-command.js +1 -1
  104. package/dist/commands/segment-validate-command.js +1 -1
  105. package/dist/commands/segments.js +1 -1
  106. package/dist/commands/show.js +1 -1
  107. package/dist/commands/status-command.js +1 -1
  108. package/dist/commands/table-deleted.js +1 -1
  109. package/dist/commands/tables.js +1 -1
  110. package/dist/commands/unset-command.js +1 -1
  111. package/dist/commands/upgrade-command.js +1 -1
  112. package/dist/commands/use-command.js +1 -1
  113. package/dist/commands/user-command.js +1 -1
  114. package/dist/commands/work-command.js +1 -1
  115. package/dist/commands/workflow-command.js +1 -1
  116. package/dist/core/auth.js +1 -1
  117. package/dist/core/command-output.js +1 -1
  118. package/dist/core/config.js +1 -1
  119. package/dist/core/connection-cache.js +1 -1
  120. package/dist/core/constants.js +1 -1
  121. package/dist/core/credential-cache.js +1 -1
  122. package/dist/core/global-context.js +1 -1
  123. package/dist/core/keychain.js +1 -1
  124. package/dist/core/oauth-keychain.js +1 -1
  125. package/dist/core/oauth.js +1 -1
  126. package/dist/core/profile.js +1 -1
  127. package/dist/core/project-config.js +1 -1
  128. package/dist/core/session.js +1 -1
  129. package/dist/core/site-mismatch.js +1 -1
  130. package/dist/core/user-cache.js +1 -1
  131. package/dist/core/version.js +1 -1
  132. package/dist/index.js +1 -1
  133. package/dist/mcp/server.js +1 -1
  134. package/dist/mcp/tools/index.js +1 -1
  135. package/dist/mcp/tools/tdx-run.js +1 -1
  136. package/dist/mcp/tools/tdx-search.js +1 -1
  137. package/dist/mcp/tools/work-create-item.js +1 -1
  138. package/dist/mcp/utils.js +1 -1
  139. package/dist/proxy/claude-usage-tracker.d.ts +1 -1
  140. package/dist/proxy/claude-usage-tracker.d.ts.map +1 -1
  141. package/dist/proxy/claude-usage-tracker.js +1 -1
  142. package/dist/proxy/passthrough-server.d.ts +33 -0
  143. package/dist/proxy/passthrough-server.d.ts.map +1 -1
  144. package/dist/proxy/passthrough-server.js +1 -1
  145. package/dist/proxy/passthrough-server.js.map +1 -1
  146. package/dist/proxy/sse-usage-parser.js +1 -1
  147. package/dist/sdk/agent/agent-config.js +1 -1
  148. package/dist/sdk/agent/agent-ref-parser.js +1 -1
  149. package/dist/sdk/agent/agent-yaml.js +1 -1
  150. package/dist/sdk/agent/test/evaluator.js +1 -1
  151. package/dist/sdk/agent/test/executor.js +1 -1
  152. package/dist/sdk/agent/test/index.js +1 -1
  153. package/dist/sdk/agent/test/output.js +1 -1
  154. package/dist/sdk/agent/test/parser.js +1 -1
  155. package/dist/sdk/agent/tool-target-registry.js +1 -1
  156. package/dist/sdk/api.js +1 -1
  157. package/dist/sdk/auth-token.js +1 -1
  158. package/dist/sdk/cas/cas-api-client.d.ts +27 -0
  159. package/dist/sdk/cas/cas-api-client.d.ts.map +1 -1
  160. package/dist/sdk/cas/cas-api-client.js +1 -1
  161. package/dist/sdk/cas/cas-api-client.js.map +1 -1
  162. package/dist/sdk/cas/cas-audience-schema.js +1 -1
  163. package/dist/sdk/cas/cas-audience-validator.js +1 -1
  164. package/dist/sdk/cas/cas-audience-yaml.js +1 -1
  165. package/dist/sdk/cas/cas-segment-schema.js +1 -1
  166. package/dist/sdk/cas/cas-segment-validator.js +1 -1
  167. package/dist/sdk/cas/cas-segment-yaml.js +1 -1
  168. package/dist/sdk/cas/index.d.ts +51 -1
  169. package/dist/sdk/cas/index.d.ts.map +1 -1
  170. package/dist/sdk/cas/index.js +1 -1
  171. package/dist/sdk/cas/index.js.map +1 -1
  172. package/dist/sdk/cas/pull-workflow.js +1 -1
  173. package/dist/sdk/cas/push-workflow.js +1 -1
  174. package/dist/sdk/cas/validate-files.js +1 -1
  175. package/dist/sdk/client/cdp-api-client.js +1 -1
  176. package/dist/sdk/client/delivery-api-client.d.ts +6 -5
  177. package/dist/sdk/client/delivery-api-client.d.ts.map +1 -1
  178. package/dist/sdk/client/delivery-api-client.js +1 -1
  179. package/dist/sdk/client/delivery-api-client.js.map +1 -1
  180. package/dist/sdk/client/endpoints.d.ts +9 -0
  181. package/dist/sdk/client/endpoints.d.ts.map +1 -1
  182. package/dist/sdk/client/endpoints.js +1 -1
  183. package/dist/sdk/client/endpoints.js.map +1 -1
  184. package/dist/sdk/client/engage-api-client.d.ts +28 -2
  185. package/dist/sdk/client/engage-api-client.d.ts.map +1 -1
  186. package/dist/sdk/client/engage-api-client.js +1 -1
  187. package/dist/sdk/client/engage-api-client.js.map +1 -1
  188. package/dist/sdk/client/http-client.d.ts +25 -1
  189. package/dist/sdk/client/http-client.d.ts.map +1 -1
  190. package/dist/sdk/client/http-client.js +1 -1
  191. package/dist/sdk/client/http-client.js.map +1 -1
  192. package/dist/sdk/client/llm-api-client.js +1 -1
  193. package/dist/sdk/client/oauth-refresh.js +1 -1
  194. package/dist/sdk/client/p13n-studio-api-client.d.ts +114 -7
  195. package/dist/sdk/client/p13n-studio-api-client.d.ts.map +1 -1
  196. package/dist/sdk/client/p13n-studio-api-client.js +1 -1
  197. package/dist/sdk/client/p13n-studio-api-client.js.map +1 -1
  198. package/dist/sdk/client/rate-limiter.js +1 -1
  199. package/dist/sdk/client/td-api-client.js +1 -1
  200. package/dist/sdk/client/trino-api-client.js +1 -1
  201. package/dist/sdk/client/workflow-client.js +1 -1
  202. package/dist/sdk/connection-validator.js +1 -1
  203. package/dist/sdk/connection.js +1 -1
  204. package/dist/sdk/delivery.d.ts +19 -22
  205. package/dist/sdk/delivery.d.ts.map +1 -1
  206. package/dist/sdk/delivery.js +1 -1
  207. package/dist/sdk/delivery.js.map +1 -1
  208. package/dist/sdk/engage/always-on-campaign-pull.js +1 -1
  209. package/dist/sdk/engage/always-on-campaign-push.js +1 -1
  210. package/dist/sdk/engage/always-on-campaign-validator.js +1 -1
  211. package/dist/sdk/engage/always-on-campaign-yaml.js +1 -1
  212. package/dist/sdk/engage/campaign-pull.js +1 -1
  213. package/dist/sdk/engage/campaign-push.js +1 -1
  214. package/dist/sdk/engage/campaign-readiness-workflow.d.ts +44 -0
  215. package/dist/sdk/engage/campaign-readiness-workflow.d.ts.map +1 -0
  216. package/dist/sdk/engage/campaign-readiness-workflow.js +1 -0
  217. package/dist/sdk/engage/campaign-readiness-workflow.js.map +1 -0
  218. package/dist/sdk/engage/campaign-readiness.d.ts +38 -0
  219. package/dist/sdk/engage/campaign-readiness.d.ts.map +1 -0
  220. package/dist/sdk/engage/campaign-readiness.js +1 -0
  221. package/dist/sdk/engage/campaign-readiness.js.map +1 -0
  222. package/dist/sdk/engage/campaign-validator.d.ts +8 -0
  223. package/dist/sdk/engage/campaign-validator.d.ts.map +1 -1
  224. package/dist/sdk/engage/campaign-validator.js +1 -1
  225. package/dist/sdk/engage/campaign-validator.js.map +1 -1
  226. package/dist/sdk/engage/campaign-yaml.js +1 -1
  227. package/dist/sdk/engage/in-browser-message-pull.d.ts +41 -0
  228. package/dist/sdk/engage/in-browser-message-pull.d.ts.map +1 -0
  229. package/dist/sdk/engage/in-browser-message-pull.js +1 -0
  230. package/dist/sdk/engage/in-browser-message-pull.js.map +1 -0
  231. package/dist/sdk/engage/in-browser-message-push.d.ts +59 -0
  232. package/dist/sdk/engage/in-browser-message-push.d.ts.map +1 -0
  233. package/dist/sdk/engage/in-browser-message-push.js +1 -0
  234. package/dist/sdk/engage/in-browser-message-push.js.map +1 -0
  235. package/dist/sdk/engage/in-browser-message-validator.d.ts +9 -0
  236. package/dist/sdk/engage/in-browser-message-validator.d.ts.map +1 -0
  237. package/dist/sdk/engage/in-browser-message-validator.js +1 -0
  238. package/dist/sdk/engage/in-browser-message-validator.js.map +1 -0
  239. package/dist/sdk/engage/in-browser-message-yaml.d.ts +36 -0
  240. package/dist/sdk/engage/in-browser-message-yaml.d.ts.map +1 -0
  241. package/dist/sdk/engage/in-browser-message-yaml.js +1 -0
  242. package/dist/sdk/engage/in-browser-message-yaml.js.map +1 -0
  243. package/dist/sdk/engage/landing-page-init.js +1 -1
  244. package/dist/sdk/engage/landing-page-public-asset.js +1 -1
  245. package/dist/sdk/engage/landing-page-pull.js +1 -1
  246. package/dist/sdk/engage/landing-page-push.js +1 -1
  247. package/dist/sdk/engage/landing-page-static-site.js +1 -1
  248. package/dist/sdk/engage/landing-page-validator.js +1 -1
  249. package/dist/sdk/engage/landing-page-workspace.js +1 -1
  250. package/dist/sdk/engage/landing-page-yaml.js +1 -1
  251. package/dist/sdk/engage/list-campaign-schema.d.ts +48 -0
  252. package/dist/sdk/engage/list-campaign-schema.d.ts.map +1 -0
  253. package/dist/sdk/engage/list-campaign-schema.js +1 -0
  254. package/dist/sdk/engage/list-campaign-schema.js.map +1 -0
  255. package/dist/sdk/engage/list-campaign-yaml.d.ts +31 -0
  256. package/dist/sdk/engage/list-campaign-yaml.d.ts.map +1 -0
  257. package/dist/sdk/engage/list-campaign-yaml.js +1 -0
  258. package/dist/sdk/engage/list-campaign-yaml.js.map +1 -0
  259. package/dist/sdk/engage/template-pull.js +1 -1
  260. package/dist/sdk/engage/template-push.js +1 -1
  261. package/dist/sdk/engage/template-validator.js +1 -1
  262. package/dist/sdk/engage/template-yaml.js +1 -1
  263. package/dist/sdk/engage/types/always-on-campaign-schema.js +1 -1
  264. package/dist/sdk/engage/types/campaign-def.js +1 -1
  265. package/dist/sdk/engage/types/campaign-schema.js +1 -1
  266. package/dist/sdk/engage/types/in-browser-message-schema.d.ts +32 -0
  267. package/dist/sdk/engage/types/in-browser-message-schema.d.ts.map +1 -0
  268. package/dist/sdk/engage/types/in-browser-message-schema.js +1 -0
  269. package/dist/sdk/engage/types/in-browser-message-schema.js.map +1 -0
  270. package/dist/sdk/engage/types/landing-page-schema.js +1 -1
  271. package/dist/sdk/engage/types/template-schema.js +1 -1
  272. package/dist/sdk/engage/workspace-assignments.d.ts +23 -0
  273. package/dist/sdk/engage/workspace-assignments.d.ts.map +1 -0
  274. package/dist/sdk/engage/workspace-assignments.js +1 -0
  275. package/dist/sdk/engage/workspace-assignments.js.map +1 -0
  276. package/dist/sdk/engage.d.ts +63 -3
  277. package/dist/sdk/engage.d.ts.map +1 -1
  278. package/dist/sdk/engage.js +1 -1
  279. package/dist/sdk/engage.js.map +1 -1
  280. package/dist/sdk/errors.d.ts +12 -0
  281. package/dist/sdk/errors.d.ts.map +1 -1
  282. package/dist/sdk/errors.js +1 -1
  283. package/dist/sdk/errors.js.map +1 -1
  284. package/dist/sdk/index.d.ts +3 -2
  285. package/dist/sdk/index.d.ts.map +1 -1
  286. package/dist/sdk/index.js +1 -1
  287. package/dist/sdk/index.js.map +1 -1
  288. package/dist/sdk/io/index.js +1 -1
  289. package/dist/sdk/io/node-filesystem.js +1 -1
  290. package/dist/sdk/job.js +1 -1
  291. package/dist/sdk/journey.d.ts +42 -1
  292. package/dist/sdk/journey.d.ts.map +1 -1
  293. package/dist/sdk/journey.js +1 -1
  294. package/dist/sdk/journey.js.map +1 -1
  295. package/dist/sdk/llm/chat-cache.js +1 -1
  296. package/dist/sdk/llm/index.js +1 -1
  297. package/dist/sdk/llm/llm-backup-utils.js +1 -1
  298. package/dist/sdk/llm/model-factors.d.ts.map +1 -1
  299. package/dist/sdk/llm/model-factors.js +1 -1
  300. package/dist/sdk/llm/model-factors.js.map +1 -1
  301. package/dist/sdk/llm/user-settings.js +1 -1
  302. package/dist/sdk/p13n-studio-errors.d.ts +137 -0
  303. package/dist/sdk/p13n-studio-errors.d.ts.map +1 -0
  304. package/dist/sdk/p13n-studio-errors.js +1 -0
  305. package/dist/sdk/p13n-studio-errors.js.map +1 -0
  306. package/dist/sdk/p13n-studio.d.ts +260 -16
  307. package/dist/sdk/p13n-studio.d.ts.map +1 -1
  308. package/dist/sdk/p13n-studio.js +1 -1
  309. package/dist/sdk/p13n-studio.js.map +1 -1
  310. package/dist/sdk/personalization.js +1 -1
  311. package/dist/sdk/policy.js +1 -1
  312. package/dist/sdk/query/deleted-table-validation.js +1 -1
  313. package/dist/sdk/query/index.js +1 -1
  314. package/dist/sdk/query/sql-parser.js +1 -1
  315. package/dist/sdk/realtime.js +1 -1
  316. package/dist/sdk/schedule.js +1 -1
  317. package/dist/sdk/segment/audience-context.d.ts +133 -0
  318. package/dist/sdk/segment/audience-context.d.ts.map +1 -0
  319. package/dist/sdk/segment/audience-context.js +1 -0
  320. package/dist/sdk/segment/audience-context.js.map +1 -0
  321. package/dist/sdk/segment/child-segment-yaml.js +1 -1
  322. package/dist/sdk/segment/fields-display.js +1 -1
  323. package/dist/sdk/segment/file-discovery.js +1 -1
  324. package/dist/sdk/segment/journey-utils.js +1 -1
  325. package/dist/sdk/segment/journey-validator.js +1 -1
  326. package/dist/sdk/segment/journey-yaml.js +1 -1
  327. package/dist/sdk/segment/parent-segment-preview.js +1 -1
  328. package/dist/sdk/segment/parent-segment-yaml.js +1 -1
  329. package/dist/sdk/segment/pull-workflow.js +1 -1
  330. package/dist/sdk/segment/push-recovery.js +1 -1
  331. package/dist/sdk/segment/push-workflow.js +1 -1
  332. package/dist/sdk/segment/resolution-context.js +1 -1
  333. package/dist/sdk/segment/segment-path-parser.js +1 -1
  334. package/dist/sdk/segment/segment-ref-parser.js +1 -1
  335. package/dist/sdk/segment/segment-validator.js +1 -1
  336. package/dist/sdk/segment/target-resolution.js +1 -1
  337. package/dist/sdk/segment/tdx-config.js +1 -1
  338. package/dist/sdk/segment/types/activation-schema.js +1 -1
  339. package/dist/sdk/segment/types/journey-def.js +1 -1
  340. package/dist/sdk/segment/types/journey-schema.d.ts +1 -1
  341. package/dist/sdk/segment/types/journey-schema.js +1 -1
  342. package/dist/sdk/segment/types/segment-def.js +1 -1
  343. package/dist/sdk/segment/types/segment-schema.js +1 -1
  344. package/dist/sdk/segment/validate-files.d.ts +5 -2
  345. package/dist/sdk/segment/validate-files.d.ts.map +1 -1
  346. package/dist/sdk/segment/validate-files.js +1 -1
  347. package/dist/sdk/segment/validate-files.js.map +1 -1
  348. package/dist/sdk/segment/yaml-validator.d.ts +1 -1
  349. package/dist/sdk/segment/yaml-validator.d.ts.map +1 -1
  350. package/dist/sdk/segment/yaml-validator.js +1 -1
  351. package/dist/sdk/segment/yaml-validator.js.map +1 -1
  352. package/dist/sdk/segment.d.ts +61 -0
  353. package/dist/sdk/segment.d.ts.map +1 -1
  354. package/dist/sdk/segment.js +1 -1
  355. package/dist/sdk/segment.js.map +1 -1
  356. package/dist/sdk/types/cas.d.ts +12 -0
  357. package/dist/sdk/types/cas.d.ts.map +1 -1
  358. package/dist/sdk/types/engage.d.ts +184 -2
  359. package/dist/sdk/types/engage.d.ts.map +1 -1
  360. package/dist/sdk/types/index.d.ts +2 -2
  361. package/dist/sdk/types/index.d.ts.map +1 -1
  362. package/dist/sdk/types/index.js +1 -1
  363. package/dist/sdk/types/index.js.map +1 -1
  364. package/dist/sdk/types/p13n-studio.d.ts +133 -1
  365. package/dist/sdk/types/p13n-studio.d.ts.map +1 -1
  366. package/dist/sdk/types/progress.js +1 -1
  367. package/dist/sdk/types/workspace.js +1 -1
  368. package/dist/sdk/user.js +1 -1
  369. package/dist/sdk/util/format-detector.js +1 -1
  370. package/dist/sdk/util/formatters.js +1 -1
  371. package/dist/sdk/util/index.js +1 -1
  372. package/dist/sdk/util/paginate.js +1 -1
  373. package/dist/sdk/util/tree-formatter.js +1 -1
  374. package/dist/sdk/util/tree-search.js +1 -1
  375. package/dist/sdk/workflow/archive-validation.js +1 -1
  376. package/dist/sdk/workflow/clone-workflow.js +1 -1
  377. package/dist/sdk/workflow/index.js +1 -1
  378. package/dist/sdk/workflow/pull-workflow.js +1 -1
  379. package/dist/sdk/workflow/push-workflow.js +1 -1
  380. package/dist/sdk/workflow/task-graph.js +1 -1
  381. package/dist/sdk/workflow/tdx-config.js +1 -1
  382. package/dist/sdk/workflow/workflow-utils.js +1 -1
  383. package/dist/sdk/workspace/access-tracker.js +1 -1
  384. package/dist/sdk/workspace/frontmatter.js +1 -1
  385. package/dist/sdk/workspace/git.js +1 -1
  386. package/dist/sdk/workspace/index.js +1 -1
  387. package/dist/sdk/workspace/templates.js +1 -1
  388. package/dist/sdk/workspace/weekly.js +1 -1
  389. package/dist/sdk/workspace/wikilinks.js +1 -1
  390. package/dist/test-utils/command-runner.js +1 -1
  391. package/dist/test-utils/factories.js +1 -1
  392. package/dist/test-utils/fixtures.js +1 -1
  393. package/dist/test-utils/http-mock.d.ts +10 -0
  394. package/dist/test-utils/http-mock.d.ts.map +1 -1
  395. package/dist/test-utils/http-mock.js +1 -1
  396. package/dist/test-utils/http-mock.js.map +1 -1
  397. package/dist/test-utils/index.js +1 -1
  398. package/dist/utils/async.js +1 -1
  399. package/dist/utils/claude-code-state.js +1 -1
  400. package/dist/utils/colors.js +1 -1
  401. package/dist/utils/diff.js +1 -1
  402. package/dist/utils/file-permissions.js +1 -1
  403. package/dist/utils/file-reader.js +1 -1
  404. package/dist/utils/github-releases.js +1 -1
  405. package/dist/utils/global-cache.js +1 -1
  406. package/dist/utils/json-loader.js +1 -1
  407. package/dist/utils/local-cache.js +1 -1
  408. package/dist/utils/logger/formatters/default-formatter.js +1 -1
  409. package/dist/utils/logger/formatters/index.js +1 -1
  410. package/dist/utils/logger/handlers/console-handler.js +1 -1
  411. package/dist/utils/logger/handlers/file-handler.js +1 -1
  412. package/dist/utils/logger/handlers/index.js +1 -1
  413. package/dist/utils/logger/handlers/null-handler.js +1 -1
  414. package/dist/utils/logger/index.js +1 -1
  415. package/dist/utils/logger/logger.js +1 -1
  416. package/dist/utils/logger/types.js +1 -1
  417. package/dist/utils/option-validation.js +1 -1
  418. package/dist/utils/process.d.ts.map +1 -1
  419. package/dist/utils/process.js +1 -1
  420. package/dist/utils/process.js.map +1 -1
  421. package/dist/utils/prompt.js +1 -1
  422. package/dist/utils/proxy-fetch.js +1 -1
  423. package/dist/utils/spinner.js +1 -1
  424. package/dist/utils/sse-parser.js +1 -1
  425. package/dist/utils/string-utils.js +1 -1
  426. package/dist/utils/table-ref-parser.js +1 -1
  427. package/dist/utils/tdx-logger.js +1 -1
  428. package/dist/utils/version-check.js +1 -1
  429. package/package.json +5 -9
@@ -1 +1 @@
1
- const a7_0x155774=a7_0xd83c;(function(_0xb1d9bc,_0x5a7fd9){const _0x5e2152=a7_0xd83c,_0x260bf7=_0xb1d9bc();while(!![]){try{const _0x5b6589=parseInt(_0x5e2152(0x23c))/0x1*(parseInt(_0x5e2152(0x238))/0x2)+parseInt(_0x5e2152(0x226))/0x3*(-parseInt(_0x5e2152(0x1ec))/0x4)+-parseInt(_0x5e2152(0x211))/0x5+parseInt(_0x5e2152(0x1f3))/0x6+parseInt(_0x5e2152(0x213))/0x7*(-parseInt(_0x5e2152(0x208))/0x8)+parseInt(_0x5e2152(0x220))/0x9*(parseInt(_0x5e2152(0x214))/0xa)+parseInt(_0x5e2152(0x20e))/0xb*(parseInt(_0x5e2152(0x228))/0xc);if(_0x5b6589===_0x5a7fd9)break;else _0x260bf7['push'](_0x260bf7['shift']());}catch(_0x1ff37b){_0x260bf7['push'](_0x260bf7['shift']());}}}(a7_0xb775,0x2d4ac));import{BaseCommand,printAuthError}from'./command.js';import{resolveOAuthAccessToken}from'../sdk/auth-token.js';import{saveAPIKeyAsync,resolveSite,resolveAPIKeyAsync,loadGlobalProxy}from'../core/config.js';import{getOAuthTokens,saveOAuthTokens}from'../core/oauth-keychain.js';import{saveProfileToUserConfig,saveDefaultSiteToUserConfig}from'../core/profile.js';import{getConsoleUrl}from'../sdk/client/endpoints.js';import{deleteKeychainAPIKey,isKeychainAvailable}from'../core/keychain.js';import{deleteOAuthTokens}from'../core/oauth-keychain.js';function a7_0xb775(){const _0xba5a0f=['warn','\x0aSetup\x20cancelled','password','105153oevmKb','accountName','614904vzxaXB','/oauth/authorize','yellow','\x20--profile\x20','✗\x20Validation\x20failed:\x20','Setup\x20cancelled','message','\x20removed\x20from\x20keychain','trim','red','You\x20can\x20find\x20your\x20API\x20key\x20at:','Show\x20authentication\x20status\x20and\x20validate\x20API\x20key','ERROR','apikey','log','\x20\x20tdx','106TdSrMQ','green','\x20\x20If\x20this\x20is\x20not\x20the\x20expected\x20account:','System\x20keychain\x20is\x20not\x20available','2045VNjWlS','bold','email','✓\x20Authentication\x20successful\x0a','User:\x20','✓\x20API\x20key\x20saved\x20to\x20system\x20keychain','\x20(profile:\x20','join','\x27\x20registered','You\x20can\x20now\x20use\x20tdx\x20commands.\x20Try:','first_name','✓\x20Profile\x20\x27','API\x20key\x20cannot\x20be\x20empty','getUserInfo','✓\x20Default\x20site\x20set\x20to\x20','\x20and\x20','auth:setup','Validating\x20OAuth\x20tokens...','auth','logLevel','Use\x20an\x20API\x20key','✓\x20OAuth\x20tokens\x20saved\x20to\x20system\x20keychain','24ONfrXm','auth:token','Credential\x20type:\x20OAuth','tdx\x20profile:\x20','Read\x20credential\x20from\x20keychain','/users/initiate_sso\x20(account:\x20','text','787896QkxlMo','method','\x20auth\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Verify\x20authentication','status','N/A','Setup\x20API\x20key\x20authentication\x20interactively','\x20\x20\x20\x202.\x20Or\x20use\x20a\x20different\x20browser\x20profile\x20to\x20avoid\x20cached\x20sessions','Enter\x20your\x20TD\x20API\x20key:','last_name','\x20(site:\x20','cyan','Setting\x20up\x20authentication\x20for\x20site:\x20','execute','System\x20keychain\x20is\x20not\x20available.\x20OAuth\x20tokens\x20cannot\x20be\x20saved.\x20','tdx:\x20auth\x20setup','oauth','Print\x20the\x20current\x20OAuth\x20access\x20token','Opens\x20your\x20browser\x20to\x20sign\x20in\x20with\x20SSO','name','us01','error','719720ETCEbw','description','✓\x20Signed\x20in\x20successfully','Use\x20\x22tdx\x20auth\x20setup\x22\x20with\x20an\x20API\x20key\x20instead.','apiKey','filter','11ZlCJaf','create','Account\x20name\x20for\x20SSO\x20(press\x20Enter\x20to\x20skip):','504975hjbVuh','dim','7BhuIne','270Rvqcbv','⚠\x20System\x20keychain\x20not\x20available.\x20API\x20key\x20not\x20saved.','tdx:\x20auth\x20clear','OAuth\x20tokens','Choose\x20how\x20to\x20sign\x20in:','site','API\x20key\x20was\x20not\x20saved.\x20Please\x20try\x20again.','Opening\x20browser\x20for\x20authentication...','No\x20credentials\x20found\x20in\x20keychain','\x20\x20(','select','profile','98613dNeIoJ','Validating\x20API\x20key...','API\x20key'];a7_0xb775=function(){return _0xba5a0f;};return a7_0xb775();}import{clearCredentialCache}from'../core/credential-cache.js';import{startOAuthFlow}from'../core/oauth.js';import{promptSiteSelection}from'../core/constants.js';import a7_0x4787ac from'prompts';import{HTTPClientError}from'../sdk/client/http-client.js';import{TDX}from'../sdk/index.js';import{LogLevel}from'../utils/tdx-logger.js';import a7_0xa22649 from'chalk';export async function runOAuthLoginFlow(_0x2f1676,_0x439cc9,_0x2ad1d1,_0x42b126){const _0x2bf96a=a7_0xd83c,_0xdc08ed=await isKeychainAvailable();if(!_0xdc08ed)throw new Error(_0x2bf96a(0x200)+_0x2bf96a(0x20b));let _0x5ab79e=_0x42b126?.[_0x2bf96a(0x227)];if(!_0x5ab79e){const _0x37c419=await a7_0x4787ac({'type':_0x2bf96a(0x1f2),'name':'accountName','message':_0x2bf96a(0x210)});if(_0x37c419[_0x2bf96a(0x227)]===undefined)throw new Error(_0x2bf96a(0x22d));_0x5ab79e=_0x37c419[_0x2bf96a(0x227)][_0x2bf96a(0x230)]()||undefined;}const _0x30ef69=getConsoleUrl(_0x2f1676);console[_0x2bf96a(0x236)](_0x2bf96a(0x21b));_0x5ab79e?console['log']('\x20\x20'+_0x30ef69+_0x2bf96a(0x1f1)+_0x5ab79e+')'):console[_0x2bf96a(0x236)]('\x20\x20'+_0x30ef69+_0x2bf96a(0x229));console[_0x2bf96a(0x236)]('Waiting\x20for\x20authorization\x20(timeout:\x202\x20minutes)...');const _0x112bcc=loadGlobalProxy()||process.env.HTTPS_PROXY||process.env.HTTP_PROXY,_0x4ac0e1=await startOAuthFlow(_0x2f1676,{'accountName':_0x5ab79e,'proxy':_0x112bcc});console['log'](_0x2bf96a(0x1e7));const _0x216e80=TDX[_0x2bf96a(0x20f)]({'site':_0x2f1676,'accessToken':_0x4ac0e1['access_token'],'logLevel':_0x2ad1d1??LogLevel[_0x2bf96a(0x234)]}),_0xc6894b=await _0x216e80['jobs'][_0x2bf96a(0x1e3)]();console[_0x2bf96a(0x236)](a7_0xa22649[_0x2bf96a(0x239)](_0x2bf96a(0x20a))),console['log']('\x20\x20'+a7_0xa22649[_0x2bf96a(0x1fd)](_0x2f1676+':'+_0xc6894b['account_id'])+'\x20\x20user_id:'+_0xc6894b['id']+_0x2bf96a(0x21d)+_0xc6894b['email']+')');!_0x5ab79e&&(console['log'](a7_0xa22649[_0x2bf96a(0x212)](_0x2bf96a(0x23a))),console[_0x2bf96a(0x236)](a7_0xa22649[_0x2bf96a(0x212)]('\x20\x20\x20\x201.\x20Run:\x20tdx\x20auth\x20setup\x20--account-name\x20<name>')),console[_0x2bf96a(0x236)](a7_0xa22649[_0x2bf96a(0x212)](_0x2bf96a(0x1f9))));await saveOAuthTokens(_0x4ac0e1,_0x439cc9),console[_0x2bf96a(0x236)](_0x2bf96a(0x1eb)+(_0x439cc9?'\x20(profile:\x20'+_0x439cc9+')':''));if(_0x439cc9){const _0x21ae88={'site':_0x2f1676};saveProfileToUserConfig(_0x439cc9,_0x21ae88),console[_0x2bf96a(0x236)](_0x2bf96a(0x1e1)+_0x439cc9+'\x27\x20registered');}else saveDefaultSiteToUserConfig(_0x2f1676),console['log'](_0x2bf96a(0x1e4)+_0x2f1676);const _0x56a787=_0x439cc9?_0x2bf96a(0x22b)+_0x439cc9:'';console['log'](),console[_0x2bf96a(0x236)](_0x2bf96a(0x1df)),console[_0x2bf96a(0x236)](_0x2bf96a(0x237)+_0x56a787+'\x20auth\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Verify\x20authentication'),console['log'](_0x2bf96a(0x237)+_0x56a787+'\x20databases\x20\x20\x20\x20\x20-\x20List\x20databases');}export async function promptAuthMethod(){const _0x33418f=a7_0xd83c,_0x43a614=await a7_0x4787ac({'type':_0x33418f(0x21e),'name':_0x33418f(0x1f4),'message':_0x33418f(0x218),'choices':[{'title':'Sign\x20in\x20with\x20browser\x20(recommended)','description':_0x33418f(0x204),'value':'oauth'},{'title':_0x33418f(0x1ea),'description':'For\x20scripts\x20or\x20headless\x20servers','value':_0x33418f(0x235)}]});return _0x43a614[_0x33418f(0x1f4)]||null;}export class AuthSetupCommand extends BaseCommand{[a7_0x155774(0x205)]=a7_0x155774(0x1e6);[a7_0x155774(0x209)]=a7_0x155774(0x1f8);async['execute'](_0x2f71e5){const _0x4510b0=a7_0x155774,{options:_0x412107}=_0x2f71e5,_0x49ed20=_0x412107[_0x4510b0(0x21f)];console[_0x4510b0(0x236)](a7_0xa22649[_0x4510b0(0x23d)](_0x4510b0(0x201)));const _0x1f3b98=_0x412107[_0x4510b0(0x219)]||_0x4510b0(0x206),_0x2683c7=await promptSiteSelection(_0x1f3b98,_0x49ed20,_0x4510b0(0x22d));if(!_0x2683c7)return 0x1;const _0x2d6c52=resolveSite(_0x2683c7),_0x4326bf=await promptAuthMethod();if(!_0x4326bf)return console[_0x4510b0(0x236)](_0x4510b0(0x224)),0x1;if(_0x4326bf===_0x4510b0(0x202)){const {accountName:_0x3abd08}=_0x412107;return await runOAuthLoginFlow(_0x2d6c52,_0x49ed20,_0x412107[_0x4510b0(0x1e9)]??LogLevel[_0x4510b0(0x234)],{'accountName':_0x3abd08}),0x0;}console[_0x4510b0(0x236)](_0x4510b0(0x1fe)+_0x2d6c52),console[_0x4510b0(0x236)](_0x4510b0(0x232)),console[_0x4510b0(0x236)]('\x20\x20'+getConsoleUrl(_0x2d6c52,'/app/mp/ak'));const _0x55e441=await a7_0x4787ac({'type':_0x4510b0(0x225),'name':_0x4510b0(0x20c),'message':_0x4510b0(0x1fa),'validate':_0x14ab8b=>{const _0x9d8f26=_0x4510b0;if(!_0x14ab8b||!_0x14ab8b[_0x9d8f26(0x230)]())return _0x9d8f26(0x1e2);return!![];}});if(!_0x55e441[_0x4510b0(0x20c)])return console[_0x4510b0(0x236)](_0x4510b0(0x224)),0x1;const _0x399e7e=_0x55e441[_0x4510b0(0x20c)];console[_0x4510b0(0x236)](_0x4510b0(0x221));try{const _0x5ec378=TDX['create']({'site':_0x2d6c52,'apiKey':_0x399e7e[_0x4510b0(0x230)](),'logLevel':_0x412107[_0x4510b0(0x1e9)]??LogLevel['ERROR']}),_0xb5d7c4=await _0x5ec378['jobs'][_0x4510b0(0x1e3)]();console[_0x4510b0(0x236)]('✓\x20API\x20key\x20is\x20valid\x20(User:\x20'+_0xb5d7c4[_0x4510b0(0x23e)]+')');const _0x128f79=await isKeychainAvailable();_0x128f79?(await saveAPIKeyAsync(_0x399e7e[_0x4510b0(0x230)](),_0x2d6c52,_0x49ed20),console[_0x4510b0(0x236)](_0x4510b0(0x241)+(_0x49ed20?'\x20(profile:\x20'+_0x49ed20+')':''))):(console[_0x4510b0(0x223)](a7_0xa22649['yellow'](_0x4510b0(0x215))),console['warn'](a7_0xa22649[_0x4510b0(0x22a)]('\x20\x20Set\x20TDX_API_KEY\x20environment\x20variable\x20for\x20authentication.')));if(_0x49ed20){const _0x5e5223={'site':_0x2d6c52};saveProfileToUserConfig(_0x49ed20,_0x5e5223),console[_0x4510b0(0x236)](_0x4510b0(0x1e1)+_0x49ed20+_0x4510b0(0x1de));}else saveDefaultSiteToUserConfig(_0x2d6c52),console[_0x4510b0(0x236)](_0x4510b0(0x1e4)+_0x2d6c52);const _0x5d59b7=_0x49ed20?'\x20--profile\x20'+_0x49ed20:'';return console[_0x4510b0(0x236)](),console['log']('You\x20can\x20now\x20use\x20tdx\x20commands.\x20Try:'),console[_0x4510b0(0x236)]('\x20\x20tdx'+_0x5d59b7+_0x4510b0(0x1f5)),console['log'](_0x4510b0(0x237)+_0x5d59b7+'\x20databases\x20\x20\x20\x20\x20-\x20List\x20databases'),0x0;}catch(_0x107781){if(_0x107781 instanceof HTTPClientError&&_0x107781[_0x4510b0(0x1f6)]===0x191)return printAuthError(_0x107781),0x1;return console['error'](a7_0xa22649[_0x4510b0(0x231)]('✗\x20Validation\x20failed:\x20'+(_0x107781 instanceof Error?_0x107781[_0x4510b0(0x22e)]:String(_0x107781)))),console[_0x4510b0(0x207)](_0x4510b0(0x21a)),0x1;}}}export class AuthStatusCommand extends BaseCommand{[a7_0x155774(0x205)]=a7_0x155774(0x1e8);[a7_0x155774(0x209)]=a7_0x155774(0x233);async[a7_0x155774(0x1ff)](_0xd8da30){const _0x3b48f6=a7_0x155774,{options:_0x1b4fa5,tdx:_0xcb5df2}=_0xd8da30,_0x38f910=_0x1b4fa5[_0x3b48f6(0x219)],_0x37b39d=_0x1b4fa5[_0x3b48f6(0x21f)],_0x2f8bb8=_0x37b39d?_0x37b39d:_0x3b48f6(0x1f7);console[_0x3b48f6(0x236)](_0x3b48f6(0x1ef)+_0x2f8bb8+_0x3b48f6(0x1fc)+_0x38f910+')');const _0x3f5c4b=await getOAuthTokens(_0x37b39d);if(_0x3f5c4b)console[_0x3b48f6(0x236)](_0x3b48f6(0x1ee)),console[_0x3b48f6(0x236)](_0x3b48f6(0x1f0)+(_0x37b39d?'\x20(profile:\x20'+_0x37b39d+')':''));else{const _0x5df3b5=await resolveAPIKeyAsync(_0x38f910,_0x37b39d);if(_0x5df3b5){const {source:_0x5ab487,isDeprecated:_0x29dc17}=_0x5df3b5,_0x3c00f5='Read\x20credential\x20from\x20'+_0x5ab487;console[_0x3b48f6(0x236)](_0x29dc17?a7_0xa22649['yellow'](_0x3c00f5):_0x3c00f5);}else console['log'](a7_0xa22649[_0x3b48f6(0x22a)]('No\x20credential\x20found'));}try{const _0x4da01d=await _0xcb5df2['jobs'][_0x3b48f6(0x1e3)]();return console[_0x3b48f6(0x236)](a7_0xa22649[_0x3b48f6(0x239)](_0x3b48f6(0x23f))),console[_0x3b48f6(0x236)](_0x3b48f6(0x240)+_0x4da01d[_0x3b48f6(0x23e)]),(_0x4da01d[_0x3b48f6(0x1e0)]||_0x4da01d[_0x3b48f6(0x1fb)])&&console[_0x3b48f6(0x236)]('Name:\x20'+[_0x4da01d['first_name'],_0x4da01d[_0x3b48f6(0x1fb)]][_0x3b48f6(0x20d)](Boolean)[_0x3b48f6(0x1dd)]('\x20')),0x0;}catch(_0x3f04c7){return _0x3f04c7 instanceof HTTPClientError&&_0x3f04c7[_0x3b48f6(0x1f6)]===0x191?printAuthError(_0x3f04c7,!![],_0x37b39d):console[_0x3b48f6(0x207)](a7_0xa22649['red'](_0x3b48f6(0x22c)+(_0x3f04c7 instanceof Error?_0x3f04c7[_0x3b48f6(0x22e)]:String(_0x3f04c7)))),0x1;}}}export class AuthTokenCommand extends BaseCommand{[a7_0x155774(0x205)]=a7_0x155774(0x1ed);['description']=a7_0x155774(0x203);async[a7_0x155774(0x1ff)](_0x1429dd){const _0x405270=a7_0x155774,{options:_0x9ab438}=_0x1429dd,_0x1bb408=await resolveOAuthAccessToken({'site':resolveSite(_0x9ab438[_0x405270(0x219)]||_0x405270(0x206)),'profile':_0x9ab438[_0x405270(0x21f)],'proxy':loadGlobalProxy()});return console[_0x405270(0x236)](_0x1bb408),0x0;}}function a7_0xd83c(_0x412255,_0x2866ab){_0x412255=_0x412255-0x1dd;const _0xb775af=a7_0xb775();let _0xd83c5f=_0xb775af[_0x412255];return _0xd83c5f;}export class AuthClearCommand extends BaseCommand{[a7_0x155774(0x205)]='auth:clear';[a7_0x155774(0x209)]='Remove\x20API\x20key\x20from\x20system\x20keychain';async[a7_0x155774(0x1ff)](_0x5a0739){const _0x43b33a=a7_0x155774,{options:_0x262c18}=_0x5a0739,_0x4e74d2=_0x262c18[_0x43b33a(0x21f)];console[_0x43b33a(0x236)](a7_0xa22649['bold'](_0x43b33a(0x216)));const _0x4b481d=await isKeychainAvailable();if(!_0x4b481d)return console['error'](a7_0xa22649[_0x43b33a(0x231)](_0x43b33a(0x23b))),0x1;const [_0x28224e,_0x350f8b]=await Promise['all']([deleteKeychainAPIKey(_0x4e74d2),deleteOAuthTokens(_0x4e74d2)]);if(_0x28224e||_0x350f8b){clearCredentialCache();const _0x341f06=[_0x28224e&&_0x43b33a(0x222),_0x350f8b&&_0x43b33a(0x217)][_0x43b33a(0x20d)](Boolean)[_0x43b33a(0x1dd)](_0x43b33a(0x1e5));return console['log']('✓\x20'+_0x341f06+_0x43b33a(0x22f)+(_0x4e74d2?_0x43b33a(0x242)+_0x4e74d2+')':'')),0x0;}else return console[_0x43b33a(0x236)](_0x43b33a(0x21c)+(_0x4e74d2?'\x20for\x20profile:\x20'+_0x4e74d2:'')),0x1;}}
1
+ const a8_0x565e85=a8_0x4084;(function(_0x261820,_0x4b2b76){const _0x178bfd=a8_0x4084,_0x2346e6=_0x261820();while(!![]){try{const _0x264a9b=-parseInt(_0x178bfd(0x1d1))/0x1*(parseInt(_0x178bfd(0x1cd))/0x2)+-parseInt(_0x178bfd(0x1b7))/0x3*(parseInt(_0x178bfd(0x20d))/0x4)+-parseInt(_0x178bfd(0x1e2))/0x5+-parseInt(_0x178bfd(0x1ec))/0x6+parseInt(_0x178bfd(0x1ba))/0x7*(parseInt(_0x178bfd(0x1ce))/0x8)+parseInt(_0x178bfd(0x1c2))/0x9*(-parseInt(_0x178bfd(0x1ca))/0xa)+parseInt(_0x178bfd(0x201))/0xb*(parseInt(_0x178bfd(0x1b1))/0xc);if(_0x264a9b===_0x4b2b76)break;else _0x2346e6['push'](_0x2346e6['shift']());}catch(_0x1ca1ec){_0x2346e6['push'](_0x2346e6['shift']());}}}(a8_0x1f2f,0xd7155));import{BaseCommand,printAuthError}from'./command.js';import{resolveOAuthAccessToken}from'../sdk/auth-token.js';import{saveAPIKeyAsync,resolveSite,resolveAPIKeyAsync,loadGlobalProxy}from'../core/config.js';import{getOAuthTokens,saveOAuthTokens}from'../core/oauth-keychain.js';import{saveProfileToUserConfig,saveDefaultSiteToUserConfig}from'../core/profile.js';import{getConsoleUrl}from'../sdk/client/endpoints.js';import{deleteKeychainAPIKey,isKeychainAvailable}from'../core/keychain.js';function a8_0x4084(_0x5407b7,_0x496f1c){_0x5407b7=_0x5407b7-0x1ad;const _0x1f2f02=a8_0x1f2f();let _0x40843b=_0x1f2f02[_0x5407b7];return _0x40843b;}import{deleteOAuthTokens}from'../core/oauth-keychain.js';import{clearCredentialCache}from'../core/credential-cache.js';import{startOAuthFlow}from'../core/oauth.js';import{promptSiteSelection}from'../core/constants.js';import a8_0x50858e from'prompts';import{HTTPClientError}from'../sdk/client/http-client.js';import{TDX}from'../sdk/index.js';import{LogLevel}from'../utils/tdx-logger.js';import a8_0x4da1aa from'chalk';export async function runOAuthLoginFlow(_0x2df1d5,_0x4486a0,_0x113eb6,_0x38a088){const _0x491cdd=a8_0x4084,_0x544c5a=await isKeychainAvailable();if(!_0x544c5a)throw new Error(_0x491cdd(0x209)+'Use\x20\x22tdx\x20auth\x20setup\x22\x20with\x20an\x20API\x20key\x20instead.');let _0x403ce1=_0x38a088?.[_0x491cdd(0x1c1)];if(!_0x403ce1){const _0x41ab52=await a8_0x50858e({'type':_0x491cdd(0x1e0),'name':_0x491cdd(0x1c1),'message':_0x491cdd(0x1d9)});if(_0x41ab52[_0x491cdd(0x1c1)]===undefined)throw new Error(_0x491cdd(0x1de));_0x403ce1=_0x41ab52[_0x491cdd(0x1c1)][_0x491cdd(0x1b5)]()||undefined;}const _0x1cf920=getConsoleUrl(_0x2df1d5);console[_0x491cdd(0x1cc)]('Opening\x20browser\x20for\x20authentication...');_0x403ce1?console[_0x491cdd(0x1cc)]('\x20\x20'+_0x1cf920+'/users/initiate_sso\x20(account:\x20'+_0x403ce1+')'):console['log']('\x20\x20'+_0x1cf920+'/oauth/authorize');console[_0x491cdd(0x1cc)](_0x491cdd(0x1f6));const _0x1f579d=loadGlobalProxy()||process.env.HTTPS_PROXY||process.env.HTTP_PROXY,_0x496ba0=await startOAuthFlow(_0x2df1d5,{'accountName':_0x403ce1,'proxy':_0x1f579d});console[_0x491cdd(0x1cc)](_0x491cdd(0x1f8));const _0x1aa293=TDX['create']({'site':_0x2df1d5,'accessToken':_0x496ba0[_0x491cdd(0x1e3)],'logLevel':_0x113eb6??LogLevel['ERROR']}),_0x31abad=await _0x1aa293['jobs'][_0x491cdd(0x1be)]();console[_0x491cdd(0x1cc)](a8_0x4da1aa['green']('✓\x20Signed\x20in\x20successfully')),console[_0x491cdd(0x1cc)]('\x20\x20'+a8_0x4da1aa[_0x491cdd(0x1bf)](_0x2df1d5+':'+_0x31abad['account_id'])+_0x491cdd(0x1e6)+_0x31abad['id']+'\x20\x20('+_0x31abad[_0x491cdd(0x1dd)]+')');!_0x403ce1&&(console[_0x491cdd(0x1cc)](a8_0x4da1aa[_0x491cdd(0x202)]('\x20\x20If\x20this\x20is\x20not\x20the\x20expected\x20account:')),console['log'](a8_0x4da1aa[_0x491cdd(0x202)]('\x20\x20\x20\x201.\x20Run:\x20tdx\x20auth\x20setup\x20--account-name\x20<name>')),console['log'](a8_0x4da1aa[_0x491cdd(0x202)](_0x491cdd(0x1ad))));await saveOAuthTokens(_0x496ba0,_0x4486a0),console[_0x491cdd(0x1cc)](_0x491cdd(0x1bd)+(_0x4486a0?_0x491cdd(0x1b2)+_0x4486a0+')':''));if(_0x4486a0){const _0x2acf97={'site':_0x2df1d5};saveProfileToUserConfig(_0x4486a0,_0x2acf97),console['log']('✓\x20Profile\x20\x27'+_0x4486a0+_0x491cdd(0x1ef));}else saveDefaultSiteToUserConfig(_0x2df1d5),console[_0x491cdd(0x1cc)](_0x491cdd(0x1af)+_0x2df1d5);const _0x5b7d07=_0x4486a0?_0x491cdd(0x1c7)+_0x4486a0:'';console[_0x491cdd(0x1cc)](),console[_0x491cdd(0x1cc)](_0x491cdd(0x1ae)),console[_0x491cdd(0x1cc)](_0x491cdd(0x1b3)+_0x5b7d07+_0x491cdd(0x1fe)),console['log'](_0x491cdd(0x1b3)+_0x5b7d07+_0x491cdd(0x1c9));}export async function promptAuthMethod(){const _0x4e4070=a8_0x4084,_0x4cafe1=await a8_0x50858e({'type':_0x4e4070(0x1ff),'name':'method','message':_0x4e4070(0x1db),'choices':[{'title':_0x4e4070(0x20b),'description':'Opens\x20your\x20browser\x20to\x20sign\x20in\x20with\x20SSO','value':'oauth'},{'title':_0x4e4070(0x205),'description':_0x4e4070(0x1b4),'value':_0x4e4070(0x1c3)}]});return _0x4cafe1['method']||null;}export class AuthSetupCommand extends BaseCommand{[a8_0x565e85(0x1fb)]='auth:setup';[a8_0x565e85(0x1f5)]=a8_0x565e85(0x1fd);async['execute'](_0x12077f){const _0x5b212e=a8_0x565e85,{options:_0x114eb1}=_0x12077f,_0x5d2c03=_0x114eb1['profile'];console[_0x5b212e(0x1cc)](a8_0x4da1aa[_0x5b212e(0x1f0)]('tdx:\x20auth\x20setup'));const _0x5e4131=_0x114eb1[_0x5b212e(0x1c4)]||'us01',_0x5b5ff8=await promptSiteSelection(_0x5e4131,_0x5d2c03,_0x5b212e(0x1de));if(!_0x5b5ff8)return 0x1;const _0x2109e1=resolveSite(_0x5b5ff8),_0x55cee8=await promptAuthMethod();if(!_0x55cee8)return console[_0x5b212e(0x1cc)]('\x0aSetup\x20cancelled'),0x1;if(_0x55cee8===_0x5b212e(0x1f3)){const {accountName:_0x1a1522}=_0x114eb1;return await runOAuthLoginFlow(_0x2109e1,_0x5d2c03,_0x114eb1[_0x5b212e(0x1cf)]??LogLevel['ERROR'],{'accountName':_0x1a1522}),0x0;}console[_0x5b212e(0x1cc)](_0x5b212e(0x1f4)+_0x2109e1),console['log'](_0x5b212e(0x1dc)),console['log']('\x20\x20'+getConsoleUrl(_0x2109e1,'/app/mp/ak'));const _0x4c4ca1=await a8_0x50858e({'type':'password','name':_0x5b212e(0x1f2),'message':_0x5b212e(0x1d4),'validate':_0x1981a3=>{const _0xdb5e50=_0x5b212e;if(!_0x1981a3||!_0x1981a3['trim']())return _0xdb5e50(0x1e5);return!![];}});if(!_0x4c4ca1[_0x5b212e(0x1f2)])return console[_0x5b212e(0x1cc)]('\x0aSetup\x20cancelled'),0x1;const _0x2a3747=_0x4c4ca1[_0x5b212e(0x1f2)];console[_0x5b212e(0x1cc)](_0x5b212e(0x1c0));try{const _0x2de60f=TDX[_0x5b212e(0x1b6)]({'site':_0x2109e1,'apiKey':_0x2a3747[_0x5b212e(0x1b5)](),'logLevel':_0x114eb1[_0x5b212e(0x1cf)]??LogLevel[_0x5b212e(0x1e7)]}),_0x193ab5=await _0x2de60f['jobs'][_0x5b212e(0x1be)]();console[_0x5b212e(0x1cc)](_0x5b212e(0x1da)+_0x193ab5[_0x5b212e(0x1dd)]+')');const _0x233f72=await isKeychainAvailable();_0x233f72?(await saveAPIKeyAsync(_0x2a3747[_0x5b212e(0x1b5)](),_0x2109e1,_0x5d2c03),console[_0x5b212e(0x1cc)](_0x5b212e(0x1b0)+(_0x5d2c03?_0x5b212e(0x1b2)+_0x5d2c03+')':''))):(console[_0x5b212e(0x1e8)](a8_0x4da1aa['yellow'](_0x5b212e(0x206))),console['warn'](a8_0x4da1aa[_0x5b212e(0x1d7)](_0x5b212e(0x1f7))));if(_0x5d2c03){const _0x143ecc={'site':_0x2109e1};saveProfileToUserConfig(_0x5d2c03,_0x143ecc),console[_0x5b212e(0x1cc)]('✓\x20Profile\x20\x27'+_0x5d2c03+_0x5b212e(0x1ef));}else saveDefaultSiteToUserConfig(_0x2109e1),console['log'](_0x5b212e(0x1af)+_0x2109e1);const _0x10e932=_0x5d2c03?'\x20--profile\x20'+_0x5d2c03:'';return console['log'](),console['log'](_0x5b212e(0x1ae)),console[_0x5b212e(0x1cc)]('\x20\x20tdx'+_0x10e932+_0x5b212e(0x1fe)),console['log'](_0x5b212e(0x1b3)+_0x10e932+_0x5b212e(0x1c9)),0x0;}catch(_0x2990ed){if(_0x2990ed instanceof HTTPClientError&&_0x2990ed['status']===0x191)return printAuthError(_0x2990ed),0x1;return console[_0x5b212e(0x1e1)](a8_0x4da1aa[_0x5b212e(0x20c)](_0x5b212e(0x1b9)+(_0x2990ed instanceof Error?_0x2990ed[_0x5b212e(0x1b8)]:String(_0x2990ed)))),console[_0x5b212e(0x1e1)](_0x5b212e(0x1e9)),0x1;}}}export class AuthStatusCommand extends BaseCommand{[a8_0x565e85(0x1fb)]=a8_0x565e85(0x1ee);[a8_0x565e85(0x1f5)]=a8_0x565e85(0x1d5);async[a8_0x565e85(0x1cb)](_0x3291b3){const _0x32b43b=a8_0x565e85,{options:_0x328433,tdx:_0x26ed86}=_0x3291b3,_0x4fb2ba=_0x328433[_0x32b43b(0x1c4)],_0xb63257=_0x328433['profile'],_0x524714=_0xb63257?_0xb63257:_0x32b43b(0x20f);console[_0x32b43b(0x1cc)](_0x32b43b(0x1f9)+_0x524714+_0x32b43b(0x1e4)+_0x4fb2ba+')');const _0x5c6a1c=await getOAuthTokens(_0xb63257);if(_0x5c6a1c)console['log']('Credential\x20type:\x20OAuth'),console[_0x32b43b(0x1cc)](_0x32b43b(0x1c8)+(_0xb63257?_0x32b43b(0x1b2)+_0xb63257+')':''));else{const _0x5aae5a=await resolveAPIKeyAsync(_0x4fb2ba,_0xb63257);if(_0x5aae5a){const {source:_0x2a305d,isDeprecated:_0x181ca3}=_0x5aae5a,_0x4146b0=_0x32b43b(0x1bc)+_0x2a305d;console[_0x32b43b(0x1cc)](_0x181ca3?a8_0x4da1aa[_0x32b43b(0x1d7)](_0x4146b0):_0x4146b0);}else console[_0x32b43b(0x1cc)](a8_0x4da1aa[_0x32b43b(0x1d7)](_0x32b43b(0x1ea)));}try{const _0x34b52d=await _0x26ed86[_0x32b43b(0x1d8)]['getUserInfo']();return console[_0x32b43b(0x1cc)](a8_0x4da1aa['green'](_0x32b43b(0x1ed))),console[_0x32b43b(0x1cc)](_0x32b43b(0x20e)+_0x34b52d[_0x32b43b(0x1dd)]),(_0x34b52d[_0x32b43b(0x1d3)]||_0x34b52d['last_name'])&&console['log'](_0x32b43b(0x210)+[_0x34b52d['first_name'],_0x34b52d[_0x32b43b(0x1bb)]][_0x32b43b(0x1eb)](Boolean)[_0x32b43b(0x1c5)]('\x20')),0x0;}catch(_0x469ec9){return _0x469ec9 instanceof HTTPClientError&&_0x469ec9[_0x32b43b(0x1fa)]===0x191?printAuthError(_0x469ec9,!![],_0xb63257):console[_0x32b43b(0x1e1)](a8_0x4da1aa['red']('✗\x20Validation\x20failed:\x20'+(_0x469ec9 instanceof Error?_0x469ec9[_0x32b43b(0x1b8)]:String(_0x469ec9)))),0x1;}}}function a8_0x1f2f(){const _0x434f1b=['apikey','site','join','\x20for\x20profile:\x20','\x20--profile\x20','Read\x20credential\x20from\x20keychain','\x20databases\x20\x20\x20\x20\x20-\x20List\x20databases','1580Cmlafg','execute','log','31204bkldcT','1688wCMkMm','logLevel','auth:clear','101gsoEpY','System\x20keychain\x20is\x20not\x20available','first_name','Enter\x20your\x20TD\x20API\x20key:','Show\x20authentication\x20status\x20and\x20validate\x20API\x20key','profile','yellow','jobs','Account\x20name\x20for\x20SSO\x20(press\x20Enter\x20to\x20skip):','✓\x20API\x20key\x20is\x20valid\x20(User:\x20','Choose\x20how\x20to\x20sign\x20in:','You\x20can\x20find\x20your\x20API\x20key\x20at:','email','Setup\x20cancelled','API\x20key','text','error','3034260oDpWdP','access_token','\x20(site:\x20','API\x20key\x20cannot\x20be\x20empty','\x20\x20user_id:','ERROR','warn','API\x20key\x20was\x20not\x20saved.\x20Please\x20try\x20again.','No\x20credential\x20found','filter','530070fNBwgJ','✓\x20Authentication\x20successful\x0a','auth','\x27\x20registered','bold','tdx:\x20auth\x20clear','apiKey','oauth','Setting\x20up\x20authentication\x20for\x20site:\x20','description','Waiting\x20for\x20authorization\x20(timeout:\x202\x20minutes)...','\x20\x20Set\x20TDX_API_KEY\x20environment\x20variable\x20for\x20authentication.','Validating\x20OAuth\x20tokens...','tdx\x20profile:\x20','status','name','all','Setup\x20API\x20key\x20authentication\x20interactively','\x20auth\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Verify\x20authentication','select','auth:token','29956751PcpVAN','dim','OAuth\x20tokens','Print\x20the\x20current\x20OAuth\x20access\x20token','Use\x20an\x20API\x20key','⚠\x20System\x20keychain\x20not\x20available.\x20API\x20key\x20not\x20saved.','Remove\x20API\x20key\x20from\x20system\x20keychain','\x20and\x20','System\x20keychain\x20is\x20not\x20available.\x20OAuth\x20tokens\x20cannot\x20be\x20saved.\x20','us01','Sign\x20in\x20with\x20browser\x20(recommended)','red','149068vjMiYL','User:\x20','N/A','Name:\x20','\x20\x20\x20\x202.\x20Or\x20use\x20a\x20different\x20browser\x20profile\x20to\x20avoid\x20cached\x20sessions','You\x20can\x20now\x20use\x20tdx\x20commands.\x20Try:','✓\x20Default\x20site\x20set\x20to\x20','✓\x20API\x20key\x20saved\x20to\x20system\x20keychain','12mblUnV','\x20(profile:\x20','\x20\x20tdx','For\x20scripts\x20or\x20headless\x20servers','trim','create','15gGrkIj','message','✗\x20Validation\x20failed:\x20','43932jwyYKj','last_name','Read\x20credential\x20from\x20','✓\x20OAuth\x20tokens\x20saved\x20to\x20system\x20keychain','getUserInfo','cyan','Validating\x20API\x20key...','accountName','40401BFTbrp'];a8_0x1f2f=function(){return _0x434f1b;};return a8_0x1f2f();}export class AuthTokenCommand extends BaseCommand{[a8_0x565e85(0x1fb)]=a8_0x565e85(0x200);[a8_0x565e85(0x1f5)]=a8_0x565e85(0x204);async['execute'](_0x40b429){const _0x45bfaa=a8_0x565e85,{options:_0x14827f}=_0x40b429,_0x3effac=await resolveOAuthAccessToken({'site':resolveSite(_0x14827f['site']||_0x45bfaa(0x20a)),'profile':_0x14827f[_0x45bfaa(0x1d6)],'proxy':loadGlobalProxy()});return console['log'](_0x3effac),0x0;}}export class AuthClearCommand extends BaseCommand{[a8_0x565e85(0x1fb)]=a8_0x565e85(0x1d0);[a8_0x565e85(0x1f5)]=a8_0x565e85(0x207);async[a8_0x565e85(0x1cb)](_0x67dd0){const _0x2db100=a8_0x565e85,{options:_0x1232d9}=_0x67dd0,_0xfa9f91=_0x1232d9['profile'];console['log'](a8_0x4da1aa[_0x2db100(0x1f0)](_0x2db100(0x1f1)));const _0x1a15a7=await isKeychainAvailable();if(!_0x1a15a7)return console[_0x2db100(0x1e1)](a8_0x4da1aa[_0x2db100(0x20c)](_0x2db100(0x1d2))),0x1;const [_0x105177,_0x18613f]=await Promise[_0x2db100(0x1fc)]([deleteKeychainAPIKey(_0xfa9f91),deleteOAuthTokens(_0xfa9f91)]);if(_0x105177||_0x18613f){clearCredentialCache();const _0x4720d6=[_0x105177&&_0x2db100(0x1df),_0x18613f&&_0x2db100(0x203)][_0x2db100(0x1eb)](Boolean)[_0x2db100(0x1c5)](_0x2db100(0x208));return console[_0x2db100(0x1cc)]('✓\x20'+_0x4720d6+'\x20removed\x20from\x20keychain'+(_0xfa9f91?'\x20(profile:\x20'+_0xfa9f91+')':'')),0x0;}else return console[_0x2db100(0x1cc)]('No\x20credentials\x20found\x20in\x20keychain'+(_0xfa9f91?_0x2db100(0x1c6)+_0xfa9f91:'')),0x1;}}
@@ -1 +1 @@
1
- const a8_0x19dc26=a8_0x4b87;(function(_0x4f30f5,_0x1c5e22){const _0x1514f1=a8_0x4b87,_0x5c6c40=_0x4f30f5();while(!![]){try{const _0x157db3=-parseInt(_0x1514f1(0x124))/0x1*(parseInt(_0x1514f1(0x163))/0x2)+parseInt(_0x1514f1(0x1b1))/0x3*(parseInt(_0x1514f1(0x146))/0x4)+parseInt(_0x1514f1(0x16b))/0x5*(-parseInt(_0x1514f1(0x144))/0x6)+parseInt(_0x1514f1(0x130))/0x7*(parseInt(_0x1514f1(0x18d))/0x8)+parseInt(_0x1514f1(0x16e))/0x9*(-parseInt(_0x1514f1(0x198))/0xa)+-parseInt(_0x1514f1(0x156))/0xb+-parseInt(_0x1514f1(0x169))/0xc*(-parseInt(_0x1514f1(0x121))/0xd);if(_0x157db3===_0x1c5e22)break;else _0x5c6c40['push'](_0x5c6c40['shift']());}catch(_0x4b6928){_0x5c6c40['push'](_0x5c6c40['shift']());}}}(a8_0x895a,0x314cd));import{BaseCommand}from'./command.js';import{withProgressSpinner}from'../utils/spinner.js';import{handleSDKOutput,handleSingleObjectOutput,isStructuredFormat}from'../core/command-output.js';import a8_0x3ddac9 from'chalk';function a8_0x895a(){const _0x171245=['tdx\x20cas\x20push\x20<path>','error','Behaviors\x20(','hasErrors','tdx\x20cas\x20pull\x20<name>','Attributes\x20(','result','attribute(s)\x20','tdx\x20cas\x20desc\x20<name>','\x20segments,\x20','\x20or\x20set\x20context\x20with\x20','Found\x20','bold','\x20=\x20','audiences','description','dir','reason','Write\x20files?','Pushing\x20to\x20CAS\x20API...','underline','valid','setPhase','Error:\x20\x20','renamedBehaviors','\x0aError:','Count:\x20\x20','13JQkVMt','\x20audience(s)','errors','121EttSEC','masterKeyColumn','rows','Aborted.','execute','Audience:\x20','Would\x20update:\x20','validCount','length','\x20\x20Renamed\x20attribute:\x20\x22','toId','\x20activation(s)','91zDfIEs','No\x20composable\x20audience\x20specified.','composableAudience','\x0aFix\x20the\x20errors\x20above\x20and\x20try\x20again.\x20Use\x20`tdx\x20cas\x20validate`\x20to\x20check\x20files\x20locally.','fromId','\x20\x20Renames\x20are\x20applied\x20by\x20recreating\x20the\x20attribute/behavior\x20server-side\x20—\x20its\x20id\x20will\x20change.','map','population','No\x20YAML\x20files\x20found\x20in:\x20','\x20→\x20','Source:\x20\x20\x20','🧊\x20','timeColumn','source','Resolving\x20connections...','\x20(server\x20id\x20changed\x20','Pull\x20composable\x20audience\x20to\x20YAML\x20files','name','\x0aSample\x20Rows\x20(','\x20—\x20a\x20real\x20push\x20will\x20refuse\x20unless\x20run\x20with\x20--delete.','6QQEmcx','\x20folder(s)','216700WejQkP','relative','cas:push','No\x20CAS\x20resources\x20found\x20in\x20YAML\x20files.','\x20file(s)\x20with\x20errors,\x20','✔\x20All\x20','status','Directory\x20not\x20found:\x20','\x20file(s)\x20valid','utf-8','\x20and\x20','attributes','toLocaleString','\x20valid','\x20segment(s)','\x0a[Dry\x20run]\x20No\x20changes\x20were\x20made','39743mZWGlw','get','Analyzing\x20CAS\x20YAML\x20files...','counts','data','red','pull','\x20—\x20','\x20warning(s)','cwd','yellow','dim','diff','2486BTQlId','preview','Pulling\x20composable\x20audience\x20\x27','relativePath','push','List\x20composable\x20audiences','5447112WJaWVK','\x27...','956740GtjYDA','cas:list','\x20warning(s)\x20found','18onaWXU','removedBehaviors','tdx\x20use\x20cas\x20<name>','invalidCount','\x20\x20Removed\x20(--delete):\x20','dryRun','names','\x20composable\x20segment\x20file(s)\x20not\x20validated','composable_audience','from','\x20activations)','Audience\x20name\x20required.','\x20\x20Schema:\x20','created','connection','Fetching\x20composable\x20audiences...','\x0aPush\x20','folders','join','\x20composable\x20audiences','renamedAttributes','All\x20files\x20are\x20up\x20to\x20date.','Push\x20YAML\x20files\x20to\x20CAS\x20API','No\x20composable\x20audiences\x20found.','Running\x20preview\x20for\x20\x27','activations','green','\x20(time:\x20','Fetching\x20audience\x20\x27','success','Would\x20create:\x20','28872cKFKiW','audienceName','log','\x20\x20Renamed\x20behavior:\x20\x22','content','cas:validate','absolutePath','removedAttributes','cyan','Describe\x20a\x20composable\x20audience','updated','851230UzNMmV','isNew','masterSchema','filter','warnings','\x20\x20Audience:\x20','delete','\x20\x20Updated:\x20','table','segments','Tip:\x20Run\x20`tdx\x20cas\x20pull\x20<name>`\x20first\x20to\x20create\x20the\x20folder\x20structure','\x22\x20→\x20\x22','behaviors','\x20error(s)','warningCount','Use\x20','\x0a↻\x20Would\x20rename\x20attribute\x20\x22','\x0a↻\x20Would\x20rename\x20behavior\x20\x22','\x20change(s)?','cas','cas:preview','Usage:\x20tdx\x20cas\x20preview\x20<segment_name>\x20[--audience\x20<name>]','verbose','audienceDrift','list','12pMqMZd','count'];a8_0x895a=function(){return _0x171245;};return a8_0x895a();}import{existsSync,mkdirSync,writeFileSync}from'fs';import a8_0x27ea60 from'path';import{confirmKey,isInteractive}from'../utils/prompt.js';function a8_0x4b87(_0x2aeb3b,_0x146b83){_0x2aeb3b=_0x2aeb3b-0x11b;const _0x895a08=a8_0x895a();let _0x4b8755=_0x895a08[_0x2aeb3b];return _0x4b8755;}import{collectYamlFiles,buildConnectionMaps}from'../sdk/cas/push-workflow.js';import{validateCasYamlFiles,isCasValidationResult,calculateCasValidationSummary}from'../sdk/cas/validate-files.js';import{formatValidationResult}from'../sdk/segment/yaml-validator.js';import{saveSessionContext}from'../core/session.js';import{sanitizeFileName}from'../utils/string-utils.js';export class CASListCommand extends BaseCommand{['name']=a8_0x19dc26(0x16c);[a8_0x19dc26(0x1c2)]=a8_0x19dc26(0x168);async['execute'](_0x354aa4){const _0x451160=a8_0x19dc26,{options:_0x111098,tdx:_0x37834c}=_0x354aa4,_0x34dc5f=await withProgressSpinner(_0x451160(0x17d),()=>_0x37834c[_0x451160(0x1ab)][_0x451160(0x1b0)](),{'verbose':_0x111098[_0x451160(0x1ae)]}),_0x2f72f4=_0x34dc5f['data'];if(isStructuredFormat(_0x111098))return await handleSDKOutput(_0x2f72f4,_0x111098),0x0;if(_0x2f72f4[_0x451160(0x12c)]===0x0)return console[_0x451160(0x18f)](a8_0x3ddac9[_0x451160(0x161)](_0x451160(0x185))),0x0;console[_0x451160(0x18f)](a8_0x3ddac9['green']('Found\x20'+_0x2f72f4['length']+_0x451160(0x181)));for(const _0x15d117 of _0x2f72f4){const _0x1ec641=_0x15d117[_0x451160(0x137)]?a8_0x3ddac9[_0x451160(0x161)]('\x20('+Number(_0x15d117['population'])[_0x451160(0x152)]()+')'):'',_0x267aa1=a8_0x3ddac9[_0x451160(0x161)]('\x20'+_0x15d117['masterSchema']+'.'+_0x15d117['masterTable']);console[_0x451160(0x18f)](_0x451160(0x13b)+_0x15d117[_0x451160(0x141)]+_0x1ec641+_0x267aa1),_0x15d117[_0x451160(0x1c2)]&&console[_0x451160(0x18f)]('\x20\x20'+a8_0x3ddac9[_0x451160(0x161)](_0x15d117['description']));}return 0x0;}}export class CASDescCommand extends BaseCommand{[a8_0x19dc26(0x141)]='cas:desc';[a8_0x19dc26(0x1c2)]=a8_0x19dc26(0x196);async['execute'](_0x57a327){const _0x291db6=a8_0x19dc26,{options:_0x491a23,args:_0xd84530,tdx:_0x1f0671}=_0x57a327,_0x5e041b=_0xd84530[0x0]||_0x491a23[_0x291db6(0x132)];if(!_0x5e041b)return console[_0x291db6(0x1b4)](a8_0x3ddac9[_0x291db6(0x160)](_0x291db6(0x131))),console['error']('Use\x20'+a8_0x3ddac9[_0x291db6(0x195)](_0x291db6(0x1bb))+'\x20or\x20set\x20context\x20with\x20'+a8_0x3ddac9['cyan'](_0x291db6(0x170))),0x1;const _0x424cad=await withProgressSpinner(_0x291db6(0x18a)+_0x5e041b+'\x27...',()=>_0x1f0671[_0x291db6(0x1ab)][_0x291db6(0x157)](_0x5e041b),{'verbose':_0x491a23[_0x291db6(0x1ae)]}),_0x1353fa=_0x424cad[_0x291db6(0x15a)];if(isStructuredFormat(_0x491a23))return await handleSingleObjectOutput(_0x1353fa,_0x491a23),0x0;console[_0x291db6(0x18f)](a8_0x3ddac9[_0x291db6(0x1bf)](_0x1353fa[_0x291db6(0x141)]));if(_0x1353fa['description'])console[_0x291db6(0x18f)](a8_0x3ddac9[_0x291db6(0x161)](_0x1353fa[_0x291db6(0x1c2)]));console['log'](),console[_0x291db6(0x18f)](a8_0x3ddac9['underline']('Master\x20Table')),console[_0x291db6(0x18f)](_0x291db6(0x17a)+_0x1353fa[_0x291db6(0x19a)]),console[_0x291db6(0x18f)]('\x20\x20Table:\x20\x20'+_0x1353fa['masterTable']),console[_0x291db6(0x18f)]('\x20\x20Key:\x20\x20\x20\x20'+_0x1353fa[_0x291db6(0x125)]),console[_0x291db6(0x18f)]();if(_0x1353fa[_0x291db6(0x151)]?.[_0x291db6(0x12c)]){console[_0x291db6(0x18f)](a8_0x3ddac9[_0x291db6(0x1c7)](_0x291db6(0x1b8)+_0x1353fa[_0x291db6(0x151)][_0x291db6(0x12c)]+')'));for(const _0xd628f0 of _0x1353fa[_0x291db6(0x151)]){console[_0x291db6(0x18f)]('\x20\x20'+a8_0x3ddac9['bold'](_0xd628f0[_0x291db6(0x141)])+'\x20—\x20'+_0xd628f0['schema']+'.'+_0xd628f0[_0x291db6(0x1a0)]+'.'+_0xd628f0['column']+'\x20('+a8_0x3ddac9[_0x291db6(0x161)](_0xd628f0['type'])+')');}console[_0x291db6(0x18f)]();}if(_0x1353fa['behaviors']?.[_0x291db6(0x12c)]){console[_0x291db6(0x18f)](a8_0x3ddac9['underline'](_0x291db6(0x1b5)+_0x1353fa[_0x291db6(0x1a4)][_0x291db6(0x12c)]+')'));for(const _0x1e4dcd of _0x1353fa[_0x291db6(0x1a4)]){const _0x2ca93d=_0x1e4dcd['timeColumn']?_0x291db6(0x189)+_0x1e4dcd[_0x291db6(0x13c)]+')':'';console[_0x291db6(0x18f)]('\x20\x20'+a8_0x3ddac9[_0x291db6(0x1bf)](_0x1e4dcd['name'])+_0x291db6(0x15d)+_0x1e4dcd['schema']+'.'+_0x1e4dcd['table']+_0x2ca93d);}}return 0x0;}}export class CASPullCommand extends BaseCommand{[a8_0x19dc26(0x141)]='cas:pull';[a8_0x19dc26(0x1c2)]=a8_0x19dc26(0x140);async[a8_0x19dc26(0x128)](_0x5ea386){const _0x21573e=a8_0x19dc26,{options:_0x7c1de0,args:_0x36f32f,tdx:_0x18f4c}=_0x5ea386,_0x1b65f4=_0x7c1de0,_0x24048b=_0x36f32f[0x0]||_0x7c1de0[_0x21573e(0x132)];if(!_0x24048b)return console[_0x21573e(0x1b4)](a8_0x3ddac9['yellow'](_0x21573e(0x131))),console[_0x21573e(0x1b4)](_0x21573e(0x1a7)+a8_0x3ddac9[_0x21573e(0x195)](_0x21573e(0x1b7))+'\x20or\x20set\x20context\x20with\x20'+a8_0x3ddac9[_0x21573e(0x195)]('tdx\x20use\x20cas\x20<name>')),0x1;const _0x3692bc=_0x1b65f4[_0x21573e(0x1c3)]||a8_0x27ea60['join'](process['cwd'](),_0x21573e(0x1ab),sanitizeFileName(_0x24048b)),_0x7cefdf=await withProgressSpinner(_0x21573e(0x165)+_0x24048b+_0x21573e(0x16a),_0x42d433=>_0x18f4c['cas'][_0x21573e(0x15c)](_0x24048b,{'targetDir':_0x3692bc,'verbose':_0x1b65f4[_0x21573e(0x1ae)],'progress':{'update':_0x11824f=>_0x42d433[_0x21573e(0x11c)](_0x11824f)}}),{'verbose':_0x1b65f4['verbose']}),_0x3ed7b7=_0x7cefdf['data'],_0x339bad=_0x3ed7b7['files'][_0x21573e(0x19b)](_0x158dae=>_0x158dae[_0x21573e(0x199)]||_0x158dae['hasChanges']);saveSessionContext({'composable_audience':_0x3ed7b7[_0x21573e(0x18e)]},_0x1b65f4['session']),console[_0x21573e(0x18f)](a8_0x3ddac9[_0x21573e(0x188)]('Context\x20set:\x20'+a8_0x3ddac9['dim'](_0x21573e(0x176))+_0x21573e(0x1c0)+a8_0x3ddac9[_0x21573e(0x195)](_0x3ed7b7['audienceName'])));if(_0x339bad['length']===0x0)return console[_0x21573e(0x18f)](a8_0x3ddac9[_0x21573e(0x188)](_0x21573e(0x183))),0x0;for(const _0x5f1508 of _0x339bad){if(_0x5f1508['isNew'])console[_0x21573e(0x18f)](a8_0x3ddac9[_0x21573e(0x188)]('+\x20'+_0x5f1508['relativePath']+'\x20(new)'));else _0x5f1508[_0x21573e(0x162)]&&(console[_0x21573e(0x18f)](a8_0x3ddac9[_0x21573e(0x160)]('~\x20'+_0x5f1508[_0x21573e(0x166)])),console[_0x21573e(0x18f)](_0x5f1508[_0x21573e(0x162)]));}console[_0x21573e(0x18f)]('\x0a'+_0x339bad['length']+'\x20file(s)\x20to\x20write\x20'+('('+_0x3ed7b7[_0x21573e(0x159)][_0x21573e(0x1a1)]+_0x21573e(0x1bc)+_0x3ed7b7[_0x21573e(0x159)][_0x21573e(0x187)]+_0x21573e(0x178)));if(_0x1b65f4[_0x21573e(0x173)])return console[_0x21573e(0x18f)](a8_0x3ddac9[_0x21573e(0x161)]('(dry\x20run\x20—\x20no\x20files\x20written)')),0x0;if(!_0x1b65f4['yes']&&isInteractive()){const _0x4b562b=await confirmKey(_0x21573e(0x1c5));if(!_0x4b562b)return console['log'](a8_0x3ddac9[_0x21573e(0x161)]('Cancelled.')),0x0;}for(const _0x472f03 of _0x339bad){const _0xb22476=a8_0x27ea60['dirname'](_0x472f03[_0x21573e(0x193)]);if(!existsSync(_0xb22476))mkdirSync(_0xb22476,{'recursive':!![]});writeFileSync(_0x472f03[_0x21573e(0x193)],_0x472f03[_0x21573e(0x191)],_0x21573e(0x14f));}return console[_0x21573e(0x18f)](a8_0x3ddac9[_0x21573e(0x188)]('Wrote\x20'+_0x339bad[_0x21573e(0x12c)]+'\x20file(s)\x20to\x20'+_0x3692bc)),0x0;}}export class CASPushCommand extends BaseCommand{[a8_0x19dc26(0x141)]=a8_0x19dc26(0x148);[a8_0x19dc26(0x1c2)]=a8_0x19dc26(0x184);async['execute'](_0x4e53ef){const _0x42bb7e=a8_0x19dc26,{options:_0x46be4d,args:_0x2dd2aa,tdx:_0x2437b4}=_0x4e53ef,_0x3793f8=_0x46be4d;let _0x5a6437=_0x2dd2aa[0x0];!_0x5a6437&&_0x46be4d['composableAudience']&&(_0x5a6437=a8_0x27ea60[_0x42bb7e(0x180)](process[_0x42bb7e(0x15f)](),_0x42bb7e(0x1ab),sanitizeFileName(_0x46be4d[_0x42bb7e(0x132)])));if(!_0x5a6437)return console[_0x42bb7e(0x1b4)](a8_0x3ddac9[_0x42bb7e(0x160)]('No\x20composable\x20audience\x20specified.')),console['error'](_0x42bb7e(0x1a7)+a8_0x3ddac9[_0x42bb7e(0x195)](_0x42bb7e(0x1b3))+_0x42bb7e(0x1bd)+a8_0x3ddac9['cyan'](_0x42bb7e(0x170))),0x1;if(!existsSync(_0x5a6437))return console['error'](a8_0x3ddac9[_0x42bb7e(0x15b)](_0x42bb7e(0x14d)+_0x5a6437)),console[_0x42bb7e(0x1b4)](a8_0x3ddac9[_0x42bb7e(0x161)](_0x42bb7e(0x1a2))),0x1;const _0x544eb7=_0x46be4d[_0x42bb7e(0x132)]||a8_0x27ea60['basename'](_0x5a6437),_0x5d04f9=a8_0x27ea60[_0x42bb7e(0x147)](process[_0x42bb7e(0x15f)](),_0x5a6437)||'.';console[_0x42bb7e(0x18f)](_0x42bb7e(0x129)+a8_0x3ddac9['cyan'](_0x544eb7)),console['log'](_0x42bb7e(0x13a)+a8_0x3ddac9[_0x42bb7e(0x161)](_0x5d04f9)),console[_0x42bb7e(0x18f)]();const _0x23e209=collectYamlFiles(_0x5a6437);if(_0x23e209[_0x42bb7e(0x12c)]===0x0)return console[_0x42bb7e(0x1b4)](a8_0x3ddac9[_0x42bb7e(0x15b)](_0x42bb7e(0x138)+_0x5a6437)),0x1;console['log'](_0x42bb7e(0x1be)+_0x23e209[_0x42bb7e(0x12c)]+'\x20YAML\x20file(s)');const _0xd43434=await withProgressSpinner(_0x42bb7e(0x13e),()=>buildConnectionMaps(_0x2437b4[_0x42bb7e(0x17c)]),{'verbose':_0x3793f8[_0x42bb7e(0x1ae)]}),_0x194d9a=_0xd43434[_0x42bb7e(0x15a)],{nameToId:_0x29882c,nameToType:_0xa435ce,idToType:_0x6734d9}=_0x194d9a,_0x1dfd0d=validateCasYamlFiles(_0x23e209,_0x5a6437,{'connectionNameToType':_0xa435ce,'connectionIdToType':_0x6734d9,'connectionNameToId':_0x29882c}),_0x516892=calculateCasValidationSummary(_0x1dfd0d);if(_0x516892[_0x42bb7e(0x1b6)]){console[_0x42bb7e(0x1b4)](a8_0x3ddac9['red']('\x0aValidation\x20failed:'));for(const _0x53b606 of _0x1dfd0d){isCasValidationResult(_0x53b606)&&!_0x53b606[_0x42bb7e(0x1b9)][_0x42bb7e(0x11b)]&&(console['error']('\x0a'+_0x53b606[_0x42bb7e(0x166)]+':\x20'+_0x53b606['result'][_0x42bb7e(0x123)][_0x42bb7e(0x12c)]+_0x42bb7e(0x1a5)),console[_0x42bb7e(0x1b4)](formatValidationResult(_0x53b606[_0x42bb7e(0x1b9)],_0x53b606[_0x42bb7e(0x13d)],_0x53b606[_0x42bb7e(0x166)])));}return console[_0x42bb7e(0x1b4)](a8_0x3ddac9[_0x42bb7e(0x160)](_0x42bb7e(0x133))),0x1;}const _0xde2eee=await withProgressSpinner(_0x42bb7e(0x158),_0x2e5230=>_0x2437b4['cas'][_0x42bb7e(0x167)](_0x23e209,{'dryRun':!![],'verbose':_0x3793f8[_0x42bb7e(0x1ae)],'deleteDrift':_0x3793f8['delete'],'connectionMaps':_0x194d9a,'progress':{'update':_0x383c86=>_0x2e5230['setPhase'](_0x383c86)}}),{'verbose':_0x3793f8[_0x42bb7e(0x1ae)]}),_0x41e2de=_0xde2eee[_0x42bb7e(0x15a)],_0x3550c5=(_0x119536,_0x4a7eb5)=>{const _0x488ce3=_0x42bb7e,_0x196fe7=_0x119536[_0x4a7eb5],_0x23854b=[];if(_0x196fe7[_0x488ce3(0x1c1)])_0x23854b[_0x488ce3(0x167)](_0x196fe7[_0x488ce3(0x1c1)]+_0x488ce3(0x122));if(_0x196fe7[_0x488ce3(0x17f)])_0x23854b[_0x488ce3(0x167)](_0x196fe7[_0x488ce3(0x17f)]+_0x488ce3(0x145));if(_0x196fe7[_0x488ce3(0x1a1)])_0x23854b[_0x488ce3(0x167)](_0x196fe7[_0x488ce3(0x1a1)]+_0x488ce3(0x154));if(_0x196fe7[_0x488ce3(0x187)])_0x23854b[_0x488ce3(0x167)](_0x196fe7[_0x488ce3(0x187)]+_0x488ce3(0x12f));return _0x23854b;},_0x26310a=_0x3550c5(_0x41e2de,_0x42bb7e(0x17b)),_0x3a1ef0=_0x3550c5(_0x41e2de,_0x42bb7e(0x197)),_0xfa6f7a=_0x41e2de[_0x42bb7e(0x17b)][_0x42bb7e(0x1c1)]+_0x41e2de['created'][_0x42bb7e(0x17f)]+_0x41e2de[_0x42bb7e(0x17b)][_0x42bb7e(0x1a1)]+_0x41e2de[_0x42bb7e(0x17b)][_0x42bb7e(0x187)]+_0x41e2de['updated'][_0x42bb7e(0x1c1)]+_0x41e2de['updated'][_0x42bb7e(0x17f)]+_0x41e2de[_0x42bb7e(0x197)][_0x42bb7e(0x1a1)]+_0x41e2de[_0x42bb7e(0x197)][_0x42bb7e(0x187)];if(_0xfa6f7a===0x0)return console[_0x42bb7e(0x18f)](a8_0x3ddac9[_0x42bb7e(0x161)](_0x42bb7e(0x149))),0x0;if(_0x26310a['length']>0x0)console[_0x42bb7e(0x18f)](_0x42bb7e(0x18c)+_0x26310a[_0x42bb7e(0x180)](',\x20'));if(_0x3a1ef0[_0x42bb7e(0x12c)]>0x0)console[_0x42bb7e(0x18f)](_0x42bb7e(0x12a)+_0x3a1ef0[_0x42bb7e(0x180)](',\x20'));const _0x3b581d=_0x41e2de[_0x42bb7e(0x1af)];if(_0x3b581d&&(_0x3b581d[_0x42bb7e(0x194)]['length']||_0x3b581d[_0x42bb7e(0x16f)]['length'])){const _0x3db281=[];_0x3b581d[_0x42bb7e(0x194)][_0x42bb7e(0x12c)]&&_0x3db281[_0x42bb7e(0x167)]('attribute(s)\x20'+_0x3b581d[_0x42bb7e(0x194)][_0x42bb7e(0x180)](',\x20')),_0x3b581d[_0x42bb7e(0x16f)][_0x42bb7e(0x12c)]&&_0x3db281[_0x42bb7e(0x167)]('behavior(s)\x20'+_0x3b581d['removedBehaviors'][_0x42bb7e(0x180)](',\x20')),console[_0x42bb7e(0x18f)](a8_0x3ddac9[_0x42bb7e(0x15b)]('\x0a⚠\x20On\x20server\x20but\x20not\x20in\x20this\x20YAML:\x20'+_0x3db281[_0x42bb7e(0x180)]('\x20and\x20')+_0x42bb7e(0x143)));}if(_0x3b581d&&(_0x3b581d[_0x42bb7e(0x182)][_0x42bb7e(0x12c)]||_0x3b581d[_0x42bb7e(0x11e)]['length'])){for(const _0x2ada30 of _0x3b581d[_0x42bb7e(0x182)]){console[_0x42bb7e(0x18f)](a8_0x3ddac9['yellow'](_0x42bb7e(0x1a8)+_0x2ada30['from']+_0x42bb7e(0x1a3)+_0x2ada30['to']+'\x22'));}for(const _0x355af5 of _0x3b581d[_0x42bb7e(0x11e)]){console[_0x42bb7e(0x18f)](a8_0x3ddac9[_0x42bb7e(0x160)](_0x42bb7e(0x1a9)+_0x355af5[_0x42bb7e(0x177)]+_0x42bb7e(0x1a3)+_0x355af5['to']+'\x22'));}console[_0x42bb7e(0x18f)](a8_0x3ddac9[_0x42bb7e(0x161)](_0x42bb7e(0x135)));}if(_0x3793f8['dryRun'])return console[_0x42bb7e(0x18f)](a8_0x3ddac9[_0x42bb7e(0x160)](_0x42bb7e(0x155))),0x0;if(!_0x3793f8['yes']){if(!isInteractive())return console[_0x42bb7e(0x1b4)](a8_0x3ddac9[_0x42bb7e(0x15b)](_0x42bb7e(0x11f)),'Confirmation\x20required\x20but\x20running\x20in\x20non-interactive\x20mode'),console['error'](a8_0x3ddac9[_0x42bb7e(0x161)]('Use\x20-y\x20or\x20--yes\x20flag\x20to\x20apply\x20changes\x20without\x20confirmation')),0x1;const _0x41cfc4=await confirmKey(_0x42bb7e(0x17e)+_0xfa6f7a+_0x42bb7e(0x1aa));if(!_0x41cfc4)return console[_0x42bb7e(0x18f)](a8_0x3ddac9[_0x42bb7e(0x160)](_0x42bb7e(0x127))),0x1;}const _0x97670c=await withProgressSpinner(_0x42bb7e(0x1c6),_0x319883=>_0x2437b4['cas'][_0x42bb7e(0x167)](_0x23e209,{'dryRun':![],'verbose':_0x3793f8[_0x42bb7e(0x1ae)],'deleteDrift':_0x3793f8[_0x42bb7e(0x19e)],'progress':{'update':_0x4bb198=>_0x319883[_0x42bb7e(0x11c)](_0x4bb198)}}),{'verbose':_0x3793f8[_0x42bb7e(0x1ae)]}),_0x2b7101=_0x97670c[_0x42bb7e(0x15a)];console[_0x42bb7e(0x18f)](a8_0x3ddac9['green']('\x0a✔\x20Push\x20complete'));_0x2b7101[_0x42bb7e(0x18e)]&&console[_0x42bb7e(0x18f)](_0x42bb7e(0x19d)+a8_0x3ddac9[_0x42bb7e(0x195)](_0x2b7101[_0x42bb7e(0x18e)]));const _0x138f9c=_0x3550c5(_0x2b7101,_0x42bb7e(0x17b)),_0x159223=_0x3550c5(_0x2b7101,_0x42bb7e(0x197));if(_0x138f9c['length']>0x0)console[_0x42bb7e(0x18f)]('\x20\x20Created:\x20'+_0x138f9c[_0x42bb7e(0x180)](',\x20'));if(_0x159223['length']>0x0)console['log'](_0x42bb7e(0x19f)+_0x159223[_0x42bb7e(0x180)](',\x20'));const _0x4363b0=_0x2b7101[_0x42bb7e(0x1af)];if(_0x4363b0&&(_0x4363b0['removedAttributes']['length']||_0x4363b0[_0x42bb7e(0x16f)][_0x42bb7e(0x12c)])){const _0x4e4239=[];_0x4363b0[_0x42bb7e(0x194)][_0x42bb7e(0x12c)]&&_0x4e4239[_0x42bb7e(0x167)](_0x42bb7e(0x1ba)+_0x4363b0['removedAttributes'][_0x42bb7e(0x180)](',\x20')),_0x4363b0[_0x42bb7e(0x16f)][_0x42bb7e(0x12c)]&&_0x4e4239[_0x42bb7e(0x167)]('behavior(s)\x20'+_0x4363b0[_0x42bb7e(0x16f)][_0x42bb7e(0x180)](',\x20')),console[_0x42bb7e(0x18f)](a8_0x3ddac9['red'](_0x42bb7e(0x172)+_0x4e4239[_0x42bb7e(0x180)](_0x42bb7e(0x150))));}for(const _0x8902f8 of _0x2b7101['renamedAttributeIds']??[]){console[_0x42bb7e(0x18f)](a8_0x3ddac9[_0x42bb7e(0x160)](_0x42bb7e(0x12d)+_0x8902f8[_0x42bb7e(0x177)]+'\x22\x20→\x20\x22'+_0x8902f8['to']+'\x22'+(_0x8902f8[_0x42bb7e(0x134)]&&_0x8902f8[_0x42bb7e(0x12e)]?_0x42bb7e(0x13f)+_0x8902f8[_0x42bb7e(0x134)]+'\x20→\x20'+_0x8902f8[_0x42bb7e(0x12e)]+')':'')));}for(const _0x4052d4 of _0x2b7101['renamedBehaviorIds']??[]){console[_0x42bb7e(0x18f)](a8_0x3ddac9[_0x42bb7e(0x160)](_0x42bb7e(0x190)+_0x4052d4[_0x42bb7e(0x177)]+'\x22\x20→\x20\x22'+_0x4052d4['to']+'\x22'+(_0x4052d4[_0x42bb7e(0x134)]&&_0x4052d4['toId']?'\x20(server\x20id\x20changed\x20'+_0x4052d4[_0x42bb7e(0x134)]+_0x42bb7e(0x139)+_0x4052d4[_0x42bb7e(0x12e)]+')':'')));}return 0x0;}}export class CASValidateCommand extends BaseCommand{[a8_0x19dc26(0x141)]=a8_0x19dc26(0x192);[a8_0x19dc26(0x1c2)]='Validate\x20composable\x20audience\x20YAML\x20files\x20locally';async[a8_0x19dc26(0x128)](_0x2dd2fb){const _0x40345f=a8_0x19dc26,{options:_0x180b06,args:_0x5d9c27,tdx:_0x23c954}=_0x2dd2fb,_0x4c489a=_0x180b06;let _0x4af34e=_0x5d9c27[0x0];!_0x4af34e&&_0x180b06[_0x40345f(0x132)]&&(_0x4af34e=a8_0x27ea60[_0x40345f(0x180)](process['cwd'](),_0x40345f(0x1ab),sanitizeFileName(_0x180b06['composableAudience'])));if(!_0x4af34e)return console['error'](a8_0x3ddac9[_0x40345f(0x160)]('No\x20composable\x20audience\x20specified.')),console['error'](_0x40345f(0x1a7)+a8_0x3ddac9[_0x40345f(0x195)]('tdx\x20cas\x20validate\x20<path>')+_0x40345f(0x1bd)+a8_0x3ddac9['cyan'](_0x40345f(0x170))),0x1;if(!existsSync(_0x4af34e))return console['error'](a8_0x3ddac9['red']('Not\x20found:\x20'+_0x4af34e)),0x1;const _0x2793fd=collectYamlFiles(_0x4af34e);if(_0x2793fd[_0x40345f(0x12c)]===0x0)return console[_0x40345f(0x1b4)](a8_0x3ddac9[_0x40345f(0x15b)](_0x40345f(0x138)+_0x4af34e)),0x1;const _0x2bb169=await withProgressSpinner(_0x40345f(0x13e),()=>buildConnectionMaps(_0x23c954['connection']),{'verbose':_0x4c489a[_0x40345f(0x1ae)]}),{nameToId:_0x1a21b8,nameToType:_0x13a520,idToType:_0x100564}=_0x2bb169[_0x40345f(0x15a)],_0x2e5d67=validateCasYamlFiles(_0x2793fd,_0x4af34e,{'connectionNameToType':_0x13a520,'connectionIdToType':_0x100564,'connectionNameToId':_0x1a21b8}),_0x3eddce=calculateCasValidationSummary(_0x2e5d67);for(const _0x636d61 of _0x2e5d67){if(!isCasValidationResult(_0x636d61)){_0x4c489a[_0x40345f(0x1ae)]&&console['log'](a8_0x3ddac9[_0x40345f(0x161)]('⊘\x20'+_0x636d61[_0x40345f(0x166)]+':\x20skipped\x20('+_0x636d61[_0x40345f(0x1c4)]+')'));continue;}if(_0x636d61[_0x40345f(0x1b9)]['valid']&&_0x636d61[_0x40345f(0x1b9)]['warnings']['length']===0x0)_0x4c489a['verbose']&&console[_0x40345f(0x18f)](a8_0x3ddac9[_0x40345f(0x188)]('✔\x20'+_0x636d61[_0x40345f(0x166)]));else _0x636d61['result']['valid']?(console[_0x40345f(0x18f)](a8_0x3ddac9[_0x40345f(0x160)]('⚠\x20'+_0x636d61[_0x40345f(0x166)])+a8_0x3ddac9['dim'](':\x20'+_0x636d61[_0x40345f(0x1b9)][_0x40345f(0x19c)][_0x40345f(0x12c)]+_0x40345f(0x15e))),console[_0x40345f(0x18f)](formatValidationResult(_0x636d61[_0x40345f(0x1b9)],_0x636d61[_0x40345f(0x13d)],_0x636d61[_0x40345f(0x166)]))):(console[_0x40345f(0x18f)](a8_0x3ddac9['red']('✖\x20'+_0x636d61['relativePath'])+a8_0x3ddac9[_0x40345f(0x161)](':\x20'+_0x636d61[_0x40345f(0x1b9)]['errors'][_0x40345f(0x12c)]+_0x40345f(0x1a5))),console['log'](formatValidationResult(_0x636d61['result'],_0x636d61[_0x40345f(0x13d)],_0x636d61[_0x40345f(0x166)])));}console[_0x40345f(0x18f)]('');if(_0x3eddce[_0x40345f(0x1b6)])return console['log'](a8_0x3ddac9['red']('Validation\x20failed:\x20'+_0x3eddce[_0x40345f(0x171)]+_0x40345f(0x14a)+_0x3eddce[_0x40345f(0x12b)]+_0x40345f(0x153))),_0x3eddce[_0x40345f(0x1a6)]>0x0&&console['log'](a8_0x3ddac9['yellow'](_0x3eddce[_0x40345f(0x1a6)]+_0x40345f(0x16d))),0x1;return console[_0x40345f(0x18f)](a8_0x3ddac9[_0x40345f(0x188)](_0x40345f(0x14b)+_0x3eddce['validCount']+_0x40345f(0x14e))),_0x3eddce[_0x40345f(0x1a6)]>0x0&&console[_0x40345f(0x18f)](a8_0x3ddac9[_0x40345f(0x160)](_0x3eddce[_0x40345f(0x1a6)]+'\x20warning(s)\x20found')),_0x3eddce['skippedCount']>0x0&&console[_0x40345f(0x18f)](a8_0x3ddac9[_0x40345f(0x161)](_0x3eddce['skippedCount']+_0x40345f(0x175))),0x0;}}export class CASPreviewCommand extends BaseCommand{['name']=a8_0x19dc26(0x1ac);[a8_0x19dc26(0x1c2)]='Preview\x20composable\x20segment\x20query\x20on\x20CDW';async['execute'](_0xc2d938){const _0x59c997=a8_0x19dc26,{options:_0x216e8c,args:_0x94a35c,tdx:_0x205540}=_0xc2d938,_0x37105f=_0x94a35c[0x0],_0x194b32=_0x94a35c[0x1]||_0x216e8c['composableAudience'];if(!_0x37105f)return console[_0x59c997(0x1b4)](a8_0x3ddac9[_0x59c997(0x15b)](_0x59c997(0x1ad))),0x1;if(!_0x194b32)return console[_0x59c997(0x1b4)](a8_0x3ddac9[_0x59c997(0x160)](_0x59c997(0x179))),console[_0x59c997(0x1b4)](_0x59c997(0x1a7)+a8_0x3ddac9[_0x59c997(0x195)]('--audience\x20<name>')+_0x59c997(0x1bd)+a8_0x3ddac9[_0x59c997(0x195)](_0x59c997(0x170))),0x1;const _0x1e0d24=await withProgressSpinner(_0x59c997(0x186)+_0x37105f+_0x59c997(0x16a),()=>_0x205540[_0x59c997(0x1ab)][_0x59c997(0x164)](_0x194b32,_0x37105f),{'verbose':_0x216e8c[_0x59c997(0x1ae)]}),{query:_0x1029c8,customers:_0x4eb220}=_0x1e0d24['data'];if(isStructuredFormat(_0x216e8c))return await handleSingleObjectOutput({'query':_0x1029c8,'customers':_0x4eb220},_0x216e8c),0x0;const _0x3cdbb7=_0x1029c8[_0x59c997(0x14c)]===_0x59c997(0x18b)?a8_0x3ddac9['green']:a8_0x3ddac9[_0x59c997(0x160)];console[_0x59c997(0x18f)]('Status:\x20'+_0x3cdbb7(_0x1029c8['status'])),console[_0x59c997(0x18f)](_0x59c997(0x120)+a8_0x3ddac9['bold'](String(_0x1029c8[_0x59c997(0x1b2)])));_0x1029c8[_0x59c997(0x1b4)]&&console[_0x59c997(0x18f)](_0x59c997(0x11d)+a8_0x3ddac9[_0x59c997(0x15b)](_0x1029c8[_0x59c997(0x1b4)]));if(_0x4eb220?.[_0x59c997(0x174)]&&_0x4eb220?.[_0x59c997(0x126)]){console[_0x59c997(0x18f)](a8_0x3ddac9[_0x59c997(0x1c7)](_0x59c997(0x142)+_0x4eb220[_0x59c997(0x126)][_0x59c997(0x12c)]+')'));const _0x57841f=_0x4eb220[_0x59c997(0x126)][_0x59c997(0x136)](_0x56631c=>{const _0x1b1938=_0x59c997,_0x50d3c6={};for(let _0x24a508=0x0;_0x24a508<_0x4eb220[_0x1b1938(0x174)][_0x1b1938(0x12c)];_0x24a508++){_0x50d3c6[_0x4eb220[_0x1b1938(0x174)][_0x24a508]]=_0x56631c[_0x24a508];}return _0x50d3c6;});await handleSDKOutput(_0x57841f,_0x216e8c);}return 0x0;}}
1
+ const a9_0x4b2d84=a9_0x267f;(function(_0x25411f,_0x2ad1d3){const _0x1245f3=a9_0x267f,_0x4bf044=_0x25411f();while(!![]){try{const _0x2d4d3f=parseInt(_0x1245f3(0x1ff))/0x1+-parseInt(_0x1245f3(0x249))/0x2+-parseInt(_0x1245f3(0x20d))/0x3+-parseInt(_0x1245f3(0x238))/0x4+-parseInt(_0x1245f3(0x26f))/0x5*(parseInt(_0x1245f3(0x230))/0x6)+-parseInt(_0x1245f3(0x1fd))/0x7*(-parseInt(_0x1245f3(0x274))/0x8)+parseInt(_0x1245f3(0x212))/0x9;if(_0x2d4d3f===_0x2ad1d3)break;else _0x4bf044['push'](_0x4bf044['shift']());}catch(_0xb493d2){_0x4bf044['push'](_0x4bf044['shift']());}}}(a9_0x417c,0xe37cc));import{BaseCommand}from'./command.js';import{withProgressSpinner}from'../utils/spinner.js';import{handleSDKOutput,handleSingleObjectOutput,isStructuredFormat}from'../core/command-output.js';import a9_0x25e426 from'chalk';import{existsSync,mkdirSync,writeFileSync}from'fs';import a9_0x344225 from'path';import{confirmKey,isInteractive}from'../utils/prompt.js';import{collectYamlFiles,buildConnectionMaps}from'../sdk/cas/push-workflow.js';import{validateCasYamlFiles,isCasValidationResult,calculateCasValidationSummary}from'../sdk/cas/validate-files.js';import{formatValidationResult}from'../sdk/segment/yaml-validator.js';import{saveSessionContext}from'../core/session.js';import{sanitizeFileName}from'../utils/string-utils.js';function a9_0x267f(_0x55f0e9,_0x548d38){_0x55f0e9=_0x55f0e9-0x1d2;const _0x417cb9=a9_0x417c();let _0x267f89=_0x417cb9[_0x55f0e9];return _0x267f89;}function a9_0x417c(){const _0x544585=['Running\x20preview\x20for\x20\x27','status','\x0aPush\x20','\x20\x20Created:\x20','type','\x0aValidation\x20failed:','verbose','\x0a↻\x20Would\x20rename\x20attribute\x20\x22','5185977jhJctf','\x20activation(s)','relativePath','\x20\x20Schema:\x20','Use\x20','40127634bwfMza','audienceName','Analyzing\x20CAS\x20YAML\x20files...','push','cas','composableAudience','names','tdx\x20cas\x20push\x20<path>','cas:desc','\x20—\x20a\x20real\x20push\x20will\x20refuse\x20unless\x20run\x20with\x20--delete.','removedBehaviors','activations','Status:\x20','Error:\x20\x20','Audience\x20name\x20required.','audiences','\x0a✔\x20Push\x20complete','\x20composable\x20segment\x20file(s)\x20not\x20validated','Pull\x20composable\x20audience\x20to\x20YAML\x20files','--audience\x20<name>','bold','Pulling\x20composable\x20audience\x20\x27','error','\x20\x20Table:\x20\x20','length','Confirmation\x20required\x20but\x20running\x20in\x20non-interactive\x20mode','warnings','attributes','renamedBehaviors','counts','10349340XDIBjD','audienceDrift','cwd','\x20\x20Audience:\x20','\x20error(s)','\x20\x20Removed\x20(--delete):\x20','table','hasErrors','4431076JGZFqU','✔\x20All\x20','data','dim','Describe\x20a\x20composable\x20audience','Source:\x20\x20\x20','tdx\x20cas\x20desc\x20<name>','No\x20composable\x20audiences\x20found.','reason','get','\x27...','isNew','\x20\x20Updated:\x20','Not\x20found:\x20','count','\x0a⚠\x20On\x20server\x20but\x20not\x20in\x20this\x20YAML:\x20','timeColumn','904382xBSmbT','utf-8','hasChanges','tdx\x20cas\x20validate\x20<path>','pull','validCount','\x20file(s)\x20to\x20write\x20','Tip:\x20Run\x20`tdx\x20cas\x20pull\x20<name>`\x20first\x20to\x20create\x20the\x20folder\x20structure','\x20\x20Key:\x20\x20\x20\x20','Master\x20Table','renamedBehaviorIds','fromId','behaviors','dryRun','\x20activations)','Resolving\x20connections...','setPhase','warningCount','tdx\x20use\x20cas\x20<name>','rows','session','\x20and\x20','\x20→\x20','folders','red','Validation\x20failed:\x20','toId','list','Pushing\x20to\x20CAS\x20API...','cyan','success','List\x20composable\x20audiences','invalidCount','connection','removedAttributes','No\x20composable\x20audience\x20specified.','result','behavior(s)\x20','5MSZOwm','segments','created','content','basename','13840PQKAhc','\x20\x20Renames\x20are\x20applied\x20by\x20recreating\x20the\x20attribute/behavior\x20server-side\x20—\x20its\x20id\x20will\x20change.','Usage:\x20tdx\x20cas\x20preview\x20<segment_name>\x20[--audience\x20<name>]','green','renamedAttributes','🧊\x20','name','\x20(server\x20id\x20changed\x20','cas:list','No\x20YAML\x20files\x20found\x20in:\x20','Write\x20files?','\x20\x20Renamed\x20attribute:\x20\x22','underline','description','\x20—\x20','schema','All\x20files\x20are\x20up\x20to\x20date.','absolutePath','errors','\x0aFix\x20the\x20errors\x20above\x20and\x20try\x20again.\x20Use\x20`tdx\x20cas\x20validate`\x20to\x20check\x20files\x20locally.','cas:validate','Aborted.','join','updated','source','preview','population','\x20audience(s)','(dry\x20run\x20—\x20no\x20files\x20written)','execute','\x22\x20→\x20\x22','dir','\x20(time:\x20','valid','masterTable','yellow','\x20or\x20set\x20context\x20with\x20','diff','\x20segment(s)','\x20valid','filter','log','composable_audience','attribute(s)\x20','cas:pull','from','\x0aSample\x20Rows\x20(','delete','cas:preview','map','\x20composable\x20audiences','\x0aError:','yes','\x0a[Dry\x20run]\x20No\x20changes\x20were\x20made','1120grUGmM','tdx\x20cas\x20pull\x20<name>','1209871wRquZj','\x20folder(s)','skippedCount','Context\x20set:\x20','\x20\x20Renamed\x20behavior:\x20\x22','Found\x20'];a9_0x417c=function(){return _0x544585;};return a9_0x417c();}export class CASListCommand extends BaseCommand{[a9_0x4b2d84(0x27a)]=a9_0x4b2d84(0x27c);[a9_0x4b2d84(0x1d4)]=a9_0x4b2d84(0x268);async['execute'](_0x350668){const _0x16b3a4=a9_0x4b2d84,{options:_0x339e61,tdx:_0x38a188}=_0x350668,_0x35f3a7=await withProgressSpinner('Fetching\x20composable\x20audiences...',()=>_0x38a188['cas'][_0x16b3a4(0x264)](),{'verbose':_0x339e61[_0x16b3a4(0x20b)]}),_0x3676d8=_0x35f3a7['data'];if(isStructuredFormat(_0x339e61))return await handleSDKOutput(_0x3676d8,_0x339e61),0x0;if(_0x3676d8[_0x16b3a4(0x22a)]===0x0)return console[_0x16b3a4(0x1f0)](a9_0x25e426[_0x16b3a4(0x23b)](_0x16b3a4(0x23f))),0x0;console[_0x16b3a4(0x1f0)](a9_0x25e426['green'](_0x16b3a4(0x204)+_0x3676d8[_0x16b3a4(0x22a)]+_0x16b3a4(0x1f9)));for(const _0xf0042 of _0x3676d8){const _0x56e076=_0xf0042[_0x16b3a4(0x1e1)]?a9_0x25e426[_0x16b3a4(0x23b)]('\x20('+Number(_0xf0042[_0x16b3a4(0x1e1)])['toLocaleString']()+')'):'',_0x39ec56=a9_0x25e426[_0x16b3a4(0x23b)]('\x20'+_0xf0042['masterSchema']+'.'+_0xf0042[_0x16b3a4(0x1e9)]);console['log'](_0x16b3a4(0x279)+_0xf0042[_0x16b3a4(0x27a)]+_0x56e076+_0x39ec56),_0xf0042['description']&&console[_0x16b3a4(0x1f0)]('\x20\x20'+a9_0x25e426[_0x16b3a4(0x23b)](_0xf0042[_0x16b3a4(0x1d4)]));}return 0x0;}}export class CASDescCommand extends BaseCommand{[a9_0x4b2d84(0x27a)]=a9_0x4b2d84(0x21a);[a9_0x4b2d84(0x1d4)]=a9_0x4b2d84(0x23c);async['execute'](_0x2fa432){const _0x436c62=a9_0x4b2d84,{options:_0x24a72b,args:_0x158a9f,tdx:_0x1bd5fc}=_0x2fa432,_0x46449d=_0x158a9f[0x0]||_0x24a72b[_0x436c62(0x217)];if(!_0x46449d)return console[_0x436c62(0x228)](a9_0x25e426[_0x436c62(0x1ea)](_0x436c62(0x26c))),console[_0x436c62(0x228)]('Use\x20'+a9_0x25e426[_0x436c62(0x266)](_0x436c62(0x23e))+_0x436c62(0x1eb)+a9_0x25e426['cyan'](_0x436c62(0x25b))),0x1;const _0x3e4e43=await withProgressSpinner('Fetching\x20audience\x20\x27'+_0x46449d+'\x27...',()=>_0x1bd5fc[_0x436c62(0x216)][_0x436c62(0x241)](_0x46449d),{'verbose':_0x24a72b[_0x436c62(0x20b)]}),_0x46cdca=_0x3e4e43[_0x436c62(0x23a)];if(isStructuredFormat(_0x24a72b))return await handleSingleObjectOutput(_0x46cdca,_0x24a72b),0x0;console['log'](a9_0x25e426[_0x436c62(0x226)](_0x46cdca['name']));if(_0x46cdca[_0x436c62(0x1d4)])console[_0x436c62(0x1f0)](a9_0x25e426[_0x436c62(0x23b)](_0x46cdca[_0x436c62(0x1d4)]));console['log'](),console[_0x436c62(0x1f0)](a9_0x25e426['underline'](_0x436c62(0x252))),console[_0x436c62(0x1f0)](_0x436c62(0x210)+_0x46cdca['masterSchema']),console[_0x436c62(0x1f0)](_0x436c62(0x229)+_0x46cdca[_0x436c62(0x1e9)]),console['log'](_0x436c62(0x251)+_0x46cdca['masterKeyColumn']),console[_0x436c62(0x1f0)]();if(_0x46cdca[_0x436c62(0x22d)]?.[_0x436c62(0x22a)]){console[_0x436c62(0x1f0)](a9_0x25e426[_0x436c62(0x1d3)]('Attributes\x20('+_0x46cdca[_0x436c62(0x22d)][_0x436c62(0x22a)]+')'));for(const _0x110bba of _0x46cdca['attributes']){console[_0x436c62(0x1f0)]('\x20\x20'+a9_0x25e426[_0x436c62(0x226)](_0x110bba[_0x436c62(0x27a)])+'\x20—\x20'+_0x110bba[_0x436c62(0x1d6)]+'.'+_0x110bba[_0x436c62(0x236)]+'.'+_0x110bba['column']+'\x20('+a9_0x25e426[_0x436c62(0x23b)](_0x110bba[_0x436c62(0x209)])+')');}console[_0x436c62(0x1f0)]();}if(_0x46cdca[_0x436c62(0x255)]?.[_0x436c62(0x22a)]){console[_0x436c62(0x1f0)](a9_0x25e426[_0x436c62(0x1d3)]('Behaviors\x20('+_0x46cdca[_0x436c62(0x255)][_0x436c62(0x22a)]+')'));for(const _0x3fc7b7 of _0x46cdca[_0x436c62(0x255)]){const _0xf1c66c=_0x3fc7b7['timeColumn']?_0x436c62(0x1e7)+_0x3fc7b7[_0x436c62(0x248)]+')':'';console[_0x436c62(0x1f0)]('\x20\x20'+a9_0x25e426[_0x436c62(0x226)](_0x3fc7b7['name'])+_0x436c62(0x1d5)+_0x3fc7b7['schema']+'.'+_0x3fc7b7[_0x436c62(0x236)]+_0xf1c66c);}}return 0x0;}}export class CASPullCommand extends BaseCommand{[a9_0x4b2d84(0x27a)]=a9_0x4b2d84(0x1f3);[a9_0x4b2d84(0x1d4)]=a9_0x4b2d84(0x224);async[a9_0x4b2d84(0x1e4)](_0x4183d1){const _0x58947b=a9_0x4b2d84,{options:_0x2c120e,args:_0x5bf53f,tdx:_0x5480fe}=_0x4183d1,_0x2d80c4=_0x2c120e,_0x5ebe7d=_0x5bf53f[0x0]||_0x2c120e['composableAudience'];if(!_0x5ebe7d)return console[_0x58947b(0x228)](a9_0x25e426[_0x58947b(0x1ea)](_0x58947b(0x26c))),console[_0x58947b(0x228)](_0x58947b(0x211)+a9_0x25e426[_0x58947b(0x266)](_0x58947b(0x1fe))+_0x58947b(0x1eb)+a9_0x25e426['cyan'](_0x58947b(0x25b))),0x1;const _0x58fda3=_0x2d80c4[_0x58947b(0x1e6)]||a9_0x344225[_0x58947b(0x1dd)](process[_0x58947b(0x232)](),'cas',sanitizeFileName(_0x5ebe7d)),_0x168d9d=await withProgressSpinner(_0x58947b(0x227)+_0x5ebe7d+_0x58947b(0x242),_0x2cd33e=>_0x5480fe[_0x58947b(0x216)][_0x58947b(0x24d)](_0x5ebe7d,{'targetDir':_0x58fda3,'verbose':_0x2d80c4[_0x58947b(0x20b)],'progress':{'update':_0x157142=>_0x2cd33e['setPhase'](_0x157142)}}),{'verbose':_0x2d80c4['verbose']}),_0x3940f4=_0x168d9d[_0x58947b(0x23a)],_0x5621c5=_0x3940f4['files'][_0x58947b(0x1ef)](_0x487516=>_0x487516[_0x58947b(0x243)]||_0x487516[_0x58947b(0x24b)]);saveSessionContext({'composable_audience':_0x3940f4[_0x58947b(0x213)]},_0x2d80c4[_0x58947b(0x25d)]),console[_0x58947b(0x1f0)](a9_0x25e426[_0x58947b(0x277)](_0x58947b(0x202)+a9_0x25e426[_0x58947b(0x23b)](_0x58947b(0x1f1))+'\x20=\x20'+a9_0x25e426['cyan'](_0x3940f4['audienceName'])));if(_0x5621c5['length']===0x0)return console[_0x58947b(0x1f0)](a9_0x25e426['green'](_0x58947b(0x1d7))),0x0;for(const _0xf81a98 of _0x5621c5){if(_0xf81a98[_0x58947b(0x243)])console[_0x58947b(0x1f0)](a9_0x25e426[_0x58947b(0x277)]('+\x20'+_0xf81a98[_0x58947b(0x20f)]+'\x20(new)'));else _0xf81a98[_0x58947b(0x1ec)]&&(console['log'](a9_0x25e426[_0x58947b(0x1ea)]('~\x20'+_0xf81a98[_0x58947b(0x20f)])),console[_0x58947b(0x1f0)](_0xf81a98['diff']));}console[_0x58947b(0x1f0)]('\x0a'+_0x5621c5['length']+_0x58947b(0x24f)+('('+_0x3940f4[_0x58947b(0x22f)][_0x58947b(0x270)]+'\x20segments,\x20'+_0x3940f4[_0x58947b(0x22f)][_0x58947b(0x21d)]+_0x58947b(0x257)));if(_0x2d80c4[_0x58947b(0x256)])return console[_0x58947b(0x1f0)](a9_0x25e426[_0x58947b(0x23b)](_0x58947b(0x1e3))),0x0;if(!_0x2d80c4[_0x58947b(0x1fb)]&&isInteractive()){const _0x2c20ef=await confirmKey(_0x58947b(0x27e));if(!_0x2c20ef)return console[_0x58947b(0x1f0)](a9_0x25e426[_0x58947b(0x23b)]('Cancelled.')),0x0;}for(const _0x53dcd5 of _0x5621c5){const _0x59275b=a9_0x344225['dirname'](_0x53dcd5[_0x58947b(0x1d8)]);if(!existsSync(_0x59275b))mkdirSync(_0x59275b,{'recursive':!![]});writeFileSync(_0x53dcd5[_0x58947b(0x1d8)],_0x53dcd5[_0x58947b(0x272)],_0x58947b(0x24a));}return console[_0x58947b(0x1f0)](a9_0x25e426[_0x58947b(0x277)]('Wrote\x20'+_0x5621c5['length']+'\x20file(s)\x20to\x20'+_0x58fda3)),0x0;}}export class CASPushCommand extends BaseCommand{[a9_0x4b2d84(0x27a)]='cas:push';[a9_0x4b2d84(0x1d4)]='Push\x20YAML\x20files\x20to\x20CAS\x20API';async[a9_0x4b2d84(0x1e4)](_0x45a71f){const _0x38f87c=a9_0x4b2d84,{options:_0x4e5cf1,args:_0x1dc9b2,tdx:_0x4e78e6}=_0x45a71f,_0xcd855f=_0x4e5cf1;let _0x54f44c=_0x1dc9b2[0x0];!_0x54f44c&&_0x4e5cf1['composableAudience']&&(_0x54f44c=a9_0x344225[_0x38f87c(0x1dd)](process[_0x38f87c(0x232)](),_0x38f87c(0x216),sanitizeFileName(_0x4e5cf1[_0x38f87c(0x217)])));if(!_0x54f44c)return console[_0x38f87c(0x228)](a9_0x25e426[_0x38f87c(0x1ea)](_0x38f87c(0x26c))),console[_0x38f87c(0x228)](_0x38f87c(0x211)+a9_0x25e426[_0x38f87c(0x266)](_0x38f87c(0x219))+'\x20or\x20set\x20context\x20with\x20'+a9_0x25e426[_0x38f87c(0x266)](_0x38f87c(0x25b))),0x1;if(!existsSync(_0x54f44c))return console[_0x38f87c(0x228)](a9_0x25e426[_0x38f87c(0x261)]('Directory\x20not\x20found:\x20'+_0x54f44c)),console[_0x38f87c(0x228)](a9_0x25e426[_0x38f87c(0x23b)](_0x38f87c(0x250))),0x1;const _0x379890=_0x4e5cf1[_0x38f87c(0x217)]||a9_0x344225[_0x38f87c(0x273)](_0x54f44c),_0x1d7d39=a9_0x344225['relative'](process[_0x38f87c(0x232)](),_0x54f44c)||'.';console[_0x38f87c(0x1f0)]('Audience:\x20'+a9_0x25e426[_0x38f87c(0x266)](_0x379890)),console['log'](_0x38f87c(0x23d)+a9_0x25e426[_0x38f87c(0x23b)](_0x1d7d39)),console['log']();const _0x1a2cce=collectYamlFiles(_0x54f44c);if(_0x1a2cce[_0x38f87c(0x22a)]===0x0)return console[_0x38f87c(0x228)](a9_0x25e426['red'](_0x38f87c(0x27d)+_0x54f44c)),0x1;console[_0x38f87c(0x1f0)](_0x38f87c(0x204)+_0x1a2cce[_0x38f87c(0x22a)]+'\x20YAML\x20file(s)');const _0x500b56=await withProgressSpinner('Resolving\x20connections...',()=>buildConnectionMaps(_0x4e78e6[_0x38f87c(0x26a)]),{'verbose':_0xcd855f['verbose']}),_0x4857ab=_0x500b56[_0x38f87c(0x23a)],{nameToId:_0x808e73,nameToType:_0x4566b6,idToType:_0x2486dd}=_0x4857ab,_0x570556=validateCasYamlFiles(_0x1a2cce,_0x54f44c,{'connectionNameToType':_0x4566b6,'connectionIdToType':_0x2486dd,'connectionNameToId':_0x808e73}),_0x4b9526=calculateCasValidationSummary(_0x570556);if(_0x4b9526['hasErrors']){console[_0x38f87c(0x228)](a9_0x25e426[_0x38f87c(0x261)](_0x38f87c(0x20a)));for(const _0x294edd of _0x570556){isCasValidationResult(_0x294edd)&&!_0x294edd[_0x38f87c(0x26d)][_0x38f87c(0x1e8)]&&(console['error']('\x0a'+_0x294edd['relativePath']+':\x20'+_0x294edd[_0x38f87c(0x26d)]['errors']['length']+'\x20error(s)'),console['error'](formatValidationResult(_0x294edd['result'],_0x294edd[_0x38f87c(0x1df)],_0x294edd['relativePath'])));}return console[_0x38f87c(0x228)](a9_0x25e426[_0x38f87c(0x1ea)](_0x38f87c(0x1da))),0x1;}const _0x4a4d0e=await withProgressSpinner(_0x38f87c(0x214),_0x4a1155=>_0x4e78e6[_0x38f87c(0x216)][_0x38f87c(0x215)](_0x1a2cce,{'dryRun':!![],'verbose':_0xcd855f[_0x38f87c(0x20b)],'deleteDrift':_0xcd855f[_0x38f87c(0x1f6)],'connectionMaps':_0x4857ab,'progress':{'update':_0x228d0b=>_0x4a1155[_0x38f87c(0x259)](_0x228d0b)}}),{'verbose':_0xcd855f[_0x38f87c(0x20b)]}),_0x1cdfd7=_0x4a4d0e[_0x38f87c(0x23a)],_0x2a547c=(_0x4c8d98,_0x35de67)=>{const _0x3da184=_0x38f87c,_0x38d789=_0x4c8d98[_0x35de67],_0x5798b5=[];if(_0x38d789[_0x3da184(0x221)])_0x5798b5[_0x3da184(0x215)](_0x38d789[_0x3da184(0x221)]+_0x3da184(0x1e2));if(_0x38d789[_0x3da184(0x260)])_0x5798b5[_0x3da184(0x215)](_0x38d789['folders']+_0x3da184(0x200));if(_0x38d789[_0x3da184(0x270)])_0x5798b5[_0x3da184(0x215)](_0x38d789[_0x3da184(0x270)]+_0x3da184(0x1ed));if(_0x38d789['activations'])_0x5798b5[_0x3da184(0x215)](_0x38d789[_0x3da184(0x21d)]+_0x3da184(0x20e));return _0x5798b5;},_0x467d7d=_0x2a547c(_0x1cdfd7,_0x38f87c(0x271)),_0x1cebec=_0x2a547c(_0x1cdfd7,'updated'),_0x261e0e=_0x1cdfd7[_0x38f87c(0x271)][_0x38f87c(0x221)]+_0x1cdfd7[_0x38f87c(0x271)][_0x38f87c(0x260)]+_0x1cdfd7[_0x38f87c(0x271)][_0x38f87c(0x270)]+_0x1cdfd7[_0x38f87c(0x271)][_0x38f87c(0x21d)]+_0x1cdfd7['updated'][_0x38f87c(0x221)]+_0x1cdfd7['updated'][_0x38f87c(0x260)]+_0x1cdfd7[_0x38f87c(0x1de)]['segments']+_0x1cdfd7[_0x38f87c(0x1de)][_0x38f87c(0x21d)];if(_0x261e0e===0x0)return console[_0x38f87c(0x1f0)](a9_0x25e426[_0x38f87c(0x23b)]('No\x20CAS\x20resources\x20found\x20in\x20YAML\x20files.')),0x0;if(_0x467d7d[_0x38f87c(0x22a)]>0x0)console['log']('Would\x20create:\x20'+_0x467d7d[_0x38f87c(0x1dd)](',\x20'));if(_0x1cebec[_0x38f87c(0x22a)]>0x0)console[_0x38f87c(0x1f0)]('Would\x20update:\x20'+_0x1cebec['join'](',\x20'));const _0x29c38d=_0x1cdfd7[_0x38f87c(0x231)];if(_0x29c38d&&(_0x29c38d[_0x38f87c(0x26b)][_0x38f87c(0x22a)]||_0x29c38d[_0x38f87c(0x21c)][_0x38f87c(0x22a)])){const _0xa31ba5=[];_0x29c38d[_0x38f87c(0x26b)][_0x38f87c(0x22a)]&&_0xa31ba5['push'](_0x38f87c(0x1f2)+_0x29c38d['removedAttributes'][_0x38f87c(0x1dd)](',\x20')),_0x29c38d[_0x38f87c(0x21c)][_0x38f87c(0x22a)]&&_0xa31ba5[_0x38f87c(0x215)]('behavior(s)\x20'+_0x29c38d[_0x38f87c(0x21c)]['join'](',\x20')),console['log'](a9_0x25e426['red'](_0x38f87c(0x247)+_0xa31ba5[_0x38f87c(0x1dd)](_0x38f87c(0x25e))+_0x38f87c(0x21b)));}if(_0x29c38d&&(_0x29c38d['renamedAttributes']['length']||_0x29c38d['renamedBehaviors'][_0x38f87c(0x22a)])){for(const _0x4549b5 of _0x29c38d[_0x38f87c(0x278)]){console[_0x38f87c(0x1f0)](a9_0x25e426[_0x38f87c(0x1ea)](_0x38f87c(0x20c)+_0x4549b5[_0x38f87c(0x1f4)]+_0x38f87c(0x1e5)+_0x4549b5['to']+'\x22'));}for(const _0x817dab of _0x29c38d[_0x38f87c(0x22e)]){console[_0x38f87c(0x1f0)](a9_0x25e426['yellow']('\x0a↻\x20Would\x20rename\x20behavior\x20\x22'+_0x817dab[_0x38f87c(0x1f4)]+_0x38f87c(0x1e5)+_0x817dab['to']+'\x22'));}console[_0x38f87c(0x1f0)](a9_0x25e426[_0x38f87c(0x23b)](_0x38f87c(0x275)));}if(_0xcd855f['dryRun'])return console['log'](a9_0x25e426[_0x38f87c(0x1ea)](_0x38f87c(0x1fc))),0x0;if(!_0xcd855f[_0x38f87c(0x1fb)]){if(!isInteractive())return console[_0x38f87c(0x228)](a9_0x25e426[_0x38f87c(0x261)](_0x38f87c(0x1fa)),_0x38f87c(0x22b)),console[_0x38f87c(0x228)](a9_0x25e426[_0x38f87c(0x23b)]('Use\x20-y\x20or\x20--yes\x20flag\x20to\x20apply\x20changes\x20without\x20confirmation')),0x1;const _0x3e74f5=await confirmKey(_0x38f87c(0x207)+_0x261e0e+'\x20change(s)?');if(!_0x3e74f5)return console[_0x38f87c(0x1f0)](a9_0x25e426[_0x38f87c(0x1ea)](_0x38f87c(0x1dc))),0x1;}const _0x29b509=await withProgressSpinner(_0x38f87c(0x265),_0x3bb2ce=>_0x4e78e6['cas'][_0x38f87c(0x215)](_0x1a2cce,{'dryRun':![],'verbose':_0xcd855f[_0x38f87c(0x20b)],'deleteDrift':_0xcd855f['delete'],'progress':{'update':_0x49604b=>_0x3bb2ce[_0x38f87c(0x259)](_0x49604b)}}),{'verbose':_0xcd855f[_0x38f87c(0x20b)]}),_0x2239c7=_0x29b509[_0x38f87c(0x23a)];console[_0x38f87c(0x1f0)](a9_0x25e426[_0x38f87c(0x277)](_0x38f87c(0x222)));_0x2239c7[_0x38f87c(0x213)]&&console[_0x38f87c(0x1f0)](_0x38f87c(0x233)+a9_0x25e426[_0x38f87c(0x266)](_0x2239c7['audienceName']));const _0x441217=_0x2a547c(_0x2239c7,_0x38f87c(0x271)),_0x54de18=_0x2a547c(_0x2239c7,_0x38f87c(0x1de));if(_0x441217[_0x38f87c(0x22a)]>0x0)console[_0x38f87c(0x1f0)](_0x38f87c(0x208)+_0x441217['join'](',\x20'));if(_0x54de18[_0x38f87c(0x22a)]>0x0)console[_0x38f87c(0x1f0)](_0x38f87c(0x244)+_0x54de18[_0x38f87c(0x1dd)](',\x20'));const _0x2a7896=_0x2239c7[_0x38f87c(0x231)];if(_0x2a7896&&(_0x2a7896[_0x38f87c(0x26b)][_0x38f87c(0x22a)]||_0x2a7896['removedBehaviors'][_0x38f87c(0x22a)])){const _0x2b28d5=[];_0x2a7896[_0x38f87c(0x26b)]['length']&&_0x2b28d5['push']('attribute(s)\x20'+_0x2a7896[_0x38f87c(0x26b)][_0x38f87c(0x1dd)](',\x20')),_0x2a7896[_0x38f87c(0x21c)][_0x38f87c(0x22a)]&&_0x2b28d5['push'](_0x38f87c(0x26e)+_0x2a7896[_0x38f87c(0x21c)][_0x38f87c(0x1dd)](',\x20')),console['log'](a9_0x25e426[_0x38f87c(0x261)](_0x38f87c(0x235)+_0x2b28d5[_0x38f87c(0x1dd)](_0x38f87c(0x25e))));}for(const _0x231f65 of _0x2239c7['renamedAttributeIds']??[]){console[_0x38f87c(0x1f0)](a9_0x25e426[_0x38f87c(0x1ea)](_0x38f87c(0x1d2)+_0x231f65[_0x38f87c(0x1f4)]+_0x38f87c(0x1e5)+_0x231f65['to']+'\x22'+(_0x231f65['fromId']&&_0x231f65[_0x38f87c(0x263)]?_0x38f87c(0x27b)+_0x231f65[_0x38f87c(0x254)]+_0x38f87c(0x25f)+_0x231f65[_0x38f87c(0x263)]+')':'')));}for(const _0xc67ac6 of _0x2239c7[_0x38f87c(0x253)]??[]){console[_0x38f87c(0x1f0)](a9_0x25e426['yellow'](_0x38f87c(0x203)+_0xc67ac6['from']+_0x38f87c(0x1e5)+_0xc67ac6['to']+'\x22'+(_0xc67ac6['fromId']&&_0xc67ac6['toId']?_0x38f87c(0x27b)+_0xc67ac6[_0x38f87c(0x254)]+'\x20→\x20'+_0xc67ac6['toId']+')':'')));}return 0x0;}}export class CASValidateCommand extends BaseCommand{[a9_0x4b2d84(0x27a)]=a9_0x4b2d84(0x1db);[a9_0x4b2d84(0x1d4)]='Validate\x20composable\x20audience\x20YAML\x20files\x20locally';async[a9_0x4b2d84(0x1e4)](_0x3120d5){const _0x4a88d7=a9_0x4b2d84,{options:_0x499406,args:_0x32e3c2,tdx:_0x3b1fe3}=_0x3120d5,_0x105079=_0x499406;let _0x5dd19b=_0x32e3c2[0x0];!_0x5dd19b&&_0x499406[_0x4a88d7(0x217)]&&(_0x5dd19b=a9_0x344225[_0x4a88d7(0x1dd)](process[_0x4a88d7(0x232)](),'cas',sanitizeFileName(_0x499406['composableAudience'])));if(!_0x5dd19b)return console[_0x4a88d7(0x228)](a9_0x25e426['yellow']('No\x20composable\x20audience\x20specified.')),console[_0x4a88d7(0x228)](_0x4a88d7(0x211)+a9_0x25e426['cyan'](_0x4a88d7(0x24c))+_0x4a88d7(0x1eb)+a9_0x25e426[_0x4a88d7(0x266)]('tdx\x20use\x20cas\x20<name>')),0x1;if(!existsSync(_0x5dd19b))return console['error'](a9_0x25e426[_0x4a88d7(0x261)](_0x4a88d7(0x245)+_0x5dd19b)),0x1;const _0xe240a0=collectYamlFiles(_0x5dd19b);if(_0xe240a0[_0x4a88d7(0x22a)]===0x0)return console['error'](a9_0x25e426[_0x4a88d7(0x261)](_0x4a88d7(0x27d)+_0x5dd19b)),0x1;const _0x124172=await withProgressSpinner(_0x4a88d7(0x258),()=>buildConnectionMaps(_0x3b1fe3[_0x4a88d7(0x26a)]),{'verbose':_0x105079[_0x4a88d7(0x20b)]}),{nameToId:_0x356f7d,nameToType:_0x12ae0a,idToType:_0x6e9114}=_0x124172[_0x4a88d7(0x23a)],_0x4f598d=validateCasYamlFiles(_0xe240a0,_0x5dd19b,{'connectionNameToType':_0x12ae0a,'connectionIdToType':_0x6e9114,'connectionNameToId':_0x356f7d}),_0x3eec79=calculateCasValidationSummary(_0x4f598d);for(const _0x21ad4e of _0x4f598d){if(!isCasValidationResult(_0x21ad4e)){_0x105079[_0x4a88d7(0x20b)]&&console[_0x4a88d7(0x1f0)](a9_0x25e426['dim']('⊘\x20'+_0x21ad4e[_0x4a88d7(0x20f)]+':\x20skipped\x20('+_0x21ad4e[_0x4a88d7(0x240)]+')'));continue;}if(_0x21ad4e['result'][_0x4a88d7(0x1e8)]&&_0x21ad4e[_0x4a88d7(0x26d)]['warnings']['length']===0x0)_0x105079['verbose']&&console[_0x4a88d7(0x1f0)](a9_0x25e426[_0x4a88d7(0x277)]('✔\x20'+_0x21ad4e[_0x4a88d7(0x20f)]));else _0x21ad4e['result'][_0x4a88d7(0x1e8)]?(console[_0x4a88d7(0x1f0)](a9_0x25e426[_0x4a88d7(0x1ea)]('⚠\x20'+_0x21ad4e[_0x4a88d7(0x20f)])+a9_0x25e426['dim'](':\x20'+_0x21ad4e['result'][_0x4a88d7(0x22c)][_0x4a88d7(0x22a)]+'\x20warning(s)')),console[_0x4a88d7(0x1f0)](formatValidationResult(_0x21ad4e[_0x4a88d7(0x26d)],_0x21ad4e[_0x4a88d7(0x1df)],_0x21ad4e[_0x4a88d7(0x20f)]))):(console[_0x4a88d7(0x1f0)](a9_0x25e426[_0x4a88d7(0x261)]('✖\x20'+_0x21ad4e[_0x4a88d7(0x20f)])+a9_0x25e426[_0x4a88d7(0x23b)](':\x20'+_0x21ad4e[_0x4a88d7(0x26d)][_0x4a88d7(0x1d9)][_0x4a88d7(0x22a)]+_0x4a88d7(0x234))),console[_0x4a88d7(0x1f0)](formatValidationResult(_0x21ad4e[_0x4a88d7(0x26d)],_0x21ad4e['source'],_0x21ad4e[_0x4a88d7(0x20f)])));}console[_0x4a88d7(0x1f0)]('');if(_0x3eec79[_0x4a88d7(0x237)])return console[_0x4a88d7(0x1f0)](a9_0x25e426[_0x4a88d7(0x261)](_0x4a88d7(0x262)+_0x3eec79[_0x4a88d7(0x269)]+'\x20file(s)\x20with\x20errors,\x20'+_0x3eec79[_0x4a88d7(0x24e)]+_0x4a88d7(0x1ee))),_0x3eec79[_0x4a88d7(0x25a)]>0x0&&console['log'](a9_0x25e426[_0x4a88d7(0x1ea)](_0x3eec79[_0x4a88d7(0x25a)]+'\x20warning(s)\x20found')),0x1;return console[_0x4a88d7(0x1f0)](a9_0x25e426[_0x4a88d7(0x277)](_0x4a88d7(0x239)+_0x3eec79['validCount']+'\x20file(s)\x20valid')),_0x3eec79[_0x4a88d7(0x25a)]>0x0&&console[_0x4a88d7(0x1f0)](a9_0x25e426[_0x4a88d7(0x1ea)](_0x3eec79['warningCount']+'\x20warning(s)\x20found')),_0x3eec79[_0x4a88d7(0x201)]>0x0&&console[_0x4a88d7(0x1f0)](a9_0x25e426['dim'](_0x3eec79[_0x4a88d7(0x201)]+_0x4a88d7(0x223))),0x0;}}export class CASPreviewCommand extends BaseCommand{[a9_0x4b2d84(0x27a)]=a9_0x4b2d84(0x1f7);[a9_0x4b2d84(0x1d4)]='Preview\x20composable\x20segment\x20query\x20on\x20CDW';async[a9_0x4b2d84(0x1e4)](_0x28ba55){const _0x337485=a9_0x4b2d84,{options:_0x5b81fa,args:_0x3d5ceb,tdx:_0x1284b5}=_0x28ba55,_0x134ba6=_0x3d5ceb[0x0],_0x2cb372=_0x3d5ceb[0x1]||_0x5b81fa[_0x337485(0x217)];if(!_0x134ba6)return console[_0x337485(0x228)](a9_0x25e426['red'](_0x337485(0x276))),0x1;if(!_0x2cb372)return console[_0x337485(0x228)](a9_0x25e426[_0x337485(0x1ea)](_0x337485(0x220))),console['error'](_0x337485(0x211)+a9_0x25e426[_0x337485(0x266)](_0x337485(0x225))+_0x337485(0x1eb)+a9_0x25e426[_0x337485(0x266)](_0x337485(0x25b))),0x1;const _0x295920=await withProgressSpinner(_0x337485(0x205)+_0x134ba6+_0x337485(0x242),()=>_0x1284b5[_0x337485(0x216)][_0x337485(0x1e0)](_0x2cb372,_0x134ba6),{'verbose':_0x5b81fa[_0x337485(0x20b)]}),{query:_0x4701d5,customers:_0x562ec5}=_0x295920[_0x337485(0x23a)];if(isStructuredFormat(_0x5b81fa))return await handleSingleObjectOutput({'query':_0x4701d5,'customers':_0x562ec5},_0x5b81fa),0x0;const _0x57d307=_0x4701d5[_0x337485(0x206)]===_0x337485(0x267)?a9_0x25e426[_0x337485(0x277)]:a9_0x25e426['yellow'];console[_0x337485(0x1f0)](_0x337485(0x21e)+_0x57d307(_0x4701d5[_0x337485(0x206)])),console[_0x337485(0x1f0)]('Count:\x20\x20'+a9_0x25e426[_0x337485(0x226)](String(_0x4701d5[_0x337485(0x246)])));_0x4701d5[_0x337485(0x228)]&&console[_0x337485(0x1f0)](_0x337485(0x21f)+a9_0x25e426[_0x337485(0x261)](_0x4701d5[_0x337485(0x228)]));if(_0x562ec5?.[_0x337485(0x218)]&&_0x562ec5?.[_0x337485(0x25c)]){console[_0x337485(0x1f0)](a9_0x25e426[_0x337485(0x1d3)](_0x337485(0x1f5)+_0x562ec5[_0x337485(0x25c)]['length']+')'));const _0x2f6cba=_0x562ec5[_0x337485(0x25c)][_0x337485(0x1f8)](_0x3b262a=>{const _0x36cc28=_0x337485,_0x25699f={};for(let _0x40cfce=0x0;_0x40cfce<_0x562ec5['names'][_0x36cc28(0x22a)];_0x40cfce++){_0x25699f[_0x562ec5[_0x36cc28(0x218)][_0x40cfce]]=_0x3b262a[_0x40cfce];}return _0x25699f;});await handleSDKOutput(_0x2f6cba,_0x5b81fa);}return 0x0;}}
@@ -1 +1 @@
1
- const a9_0x398f7e=a9_0x309e;(function(_0xc7fd10,_0x4717ab){const _0x5719af=a9_0x309e,_0x9b3b93=_0xc7fd10();while(!![]){try{const _0x2e8f51=parseInt(_0x5719af(0xa1))/0x1+parseInt(_0x5719af(0xb7))/0x2*(parseInt(_0x5719af(0xac))/0x3)+-parseInt(_0x5719af(0xba))/0x4+parseInt(_0x5719af(0xa2))/0x5*(parseInt(_0x5719af(0xaa))/0x6)+-parseInt(_0x5719af(0xc8))/0x7+-parseInt(_0x5719af(0xbe))/0x8*(-parseInt(_0x5719af(0xc0))/0x9)+parseInt(_0x5719af(0xe4))/0xa;if(_0x2e8f51===_0x4717ab)break;else _0x9b3b93['push'](_0x9b3b93['shift']());}catch(_0x3c8d60){_0x9b3b93['push'](_0x9b3b93['shift']());}}}(a9_0xf8a7,0xa80b1));import a9_0x14ba87 from'path';import{existsSync,readFileSync,statSync}from'fs';import*as a9_0x43de6c from'yaml';import{BaseCommand}from'./command.js';import{withProgressSpinner}from'../utils/spinner.js';import{handleSDKOutput,isStructuredFormat}from'../core/command-output.js';import{formatRows}from'../sdk/util/formatters.js';import{confirmKey,isInteractive}from'../utils/prompt.js';import{buildConnectionMaps}from'../sdk/cas/push-workflow.js';import{isComposableSegmentDef}from'../sdk/cas/cas-segment-yaml.js';function a9_0x309e(_0x37f471,_0x352a55){_0x37f471=_0x37f471-0x99;const _0xf8a778=a9_0xf8a7();let _0x309e6d=_0xf8a778[_0x37f471];return _0x309e6d;}import{validateComposableSegmentRule,audienceFieldNamesFromApi,formatSegmentRuleErrors}from'../sdk/cas/cas-segment-validator.js';import a9_0x2c22b7 from'chalk';export class CASSegmentListCommand extends BaseCommand{[a9_0x398f7e(0x9c)]='cas:sg:list';[a9_0x398f7e(0xa4)]=a9_0x398f7e(0xb4);async[a9_0x398f7e(0xb8)](_0x28d751){const _0x5efcf1=a9_0x398f7e,{options:_0x22d81e,args:_0x3a6e7a,tdx:_0x852d57}=_0x28d751,_0x561429=_0x3a6e7a[0x0]||_0x22d81e[_0x5efcf1(0xf1)];if(!_0x561429)return console[_0x5efcf1(0xc6)](a9_0x2c22b7[_0x5efcf1(0xce)](_0x5efcf1(0xe7))),console[_0x5efcf1(0xc6)](a9_0x2c22b7[_0x5efcf1(0xc5)](_0x5efcf1(0xcd))),0x1;const _0x343b24=await withProgressSpinner(_0x5efcf1(0x9e)+_0x561429+'\x27...',()=>_0x852d57[_0x5efcf1(0xd1)][_0x5efcf1(0xd6)](_0x561429),{'verbose':_0x22d81e[_0x5efcf1(0xbd)]}),_0x45cae2=_0x343b24[_0x5efcf1(0xda)];if(isStructuredFormat(_0x22d81e))return await handleSDKOutput(_0x45cae2,_0x22d81e),0x0;console[_0x5efcf1(0xe3)](a9_0x2c22b7[_0x5efcf1(0xe6)](_0x5efcf1(0xcb)+_0x45cae2[_0x5efcf1(0xde)]+_0x5efcf1(0xcf)+(_0x45cae2[_0x5efcf1(0xde)]!==0x1?'s':'')));if(_0x45cae2['length']===0x0)return 0x0;for(const _0x5cbd19 of _0x45cae2){const _0x353029=_0x5cbd19[_0x5efcf1(0xd7)]!=null?a9_0x2c22b7[_0x5efcf1(0xc5)]('\x20('+formatRows(_0x5cbd19[_0x5efcf1(0xd7)])+')'):'';console[_0x5efcf1(0xe3)](_0x5efcf1(0x9f)+_0x5cbd19[_0x5efcf1(0x9c)]+_0x353029),_0x5cbd19[_0x5efcf1(0xa4)]&&console[_0x5efcf1(0xe3)]('\x20\x20'+a9_0x2c22b7[_0x5efcf1(0xc5)](_0x5cbd19[_0x5efcf1(0xa4)]));}return 0x0;}}export class CASSegmentPushCommand extends BaseCommand{[a9_0x398f7e(0x9c)]='cas:sg:push';[a9_0x398f7e(0xa4)]=a9_0x398f7e(0xb2);async[a9_0x398f7e(0xb8)](_0x3b141e){const _0x113fff=a9_0x398f7e,{options:_0x442443,args:_0x3b634f,tdx:_0x455753}=_0x3b141e,_0x3ee546=_0x442443,_0x2b60a0=_0x3b634f[0x0];if(!_0x2b60a0)return console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xce)](_0x113fff(0x9a))),0x1;if(!existsSync(_0x2b60a0))return console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xce)](_0x113fff(0xef)+_0x2b60a0)),0x1;if(statSync(_0x2b60a0)[_0x113fff(0xc7)]())return console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xce)](_0x2b60a0+_0x113fff(0xdd))),_0x3ee546[_0x113fff(0xa7)]?console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xc5)](_0x113fff(0xb6))):console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xc5)](_0x113fff(0xab))),0x1;const _0x4c4a4f=_0x3ee546[_0x113fff(0xca)]||_0x442443['composableAudience'];if(!_0x4c4a4f)return console['error'](a9_0x2c22b7['yellow'](_0x113fff(0xd5))),console[_0x113fff(0xc6)](_0x113fff(0xd3)+a9_0x2c22b7[_0x113fff(0xb0)]('--audience\x20<name>')+_0x113fff(0xae)+a9_0x2c22b7[_0x113fff(0xb0)](_0x113fff(0xee))),0x1;console['log'](_0x113fff(0xe9)+a9_0x2c22b7[_0x113fff(0xb0)](_0x4c4a4f)),console[_0x113fff(0xe3)](_0x113fff(0xe5)+a9_0x2c22b7[_0x113fff(0xc5)](a9_0x14ba87[_0x113fff(0xeb)](process[_0x113fff(0xec)](),_0x2b60a0)||'.')),console[_0x113fff(0xe3)]();let _0x26528e;try{_0x26528e=a9_0x43de6c[_0x113fff(0xc2)](readFileSync(_0x2b60a0,_0x113fff(0xb3)));}catch(_0x79bec){return console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xce)](_0x113fff(0xa9)+a9_0x14ba87[_0x113fff(0xa3)](_0x2b60a0)+'\x20as\x20YAML:\x20'),_0x79bec instanceof Error?_0x79bec[_0x113fff(0xb1)]:String(_0x79bec)),0x1;}if(!isComposableSegmentDef(_0x26528e))return console[_0x113fff(0xc6)](a9_0x2c22b7['red'](a9_0x14ba87['basename'](_0x2b60a0)+'\x20doesn\x27t\x20look\x20like\x20a\x20composable\x20segment.')),console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xd2)](_0x113fff(0xbb))),0x1;if(_0x3ee546[_0x113fff(0xa7)])return this[_0x113fff(0xed)](_0x3b141e,_0x4c4a4f,_0x26528e[_0x113fff(0x9c)],_0x3ee546);const _0x2523a1=await withProgressSpinner('Resolving\x20connections...',()=>buildConnectionMaps(_0x455753[_0x113fff(0xd8)]),{'verbose':_0x3ee546[_0x113fff(0xbd)]}),_0x871145=_0x2523a1[_0x113fff(0xda)],_0x1e04e9=await withProgressSpinner('Resolving\x20audience\x20\x27'+_0x4c4a4f+_0x113fff(0xbf),()=>_0x455753[_0x113fff(0xd1)][_0x113fff(0xc9)](_0x4c4a4f),{'verbose':_0x3ee546[_0x113fff(0xbd)]}),_0x3a9d9a=_0x1e04e9[_0x113fff(0xda)],_0x47e89d=_0x3a9d9a['id'];if(_0x26528e[_0x113fff(0xad)]){const _0x2d383b=validateComposableSegmentRule(_0x26528e[_0x113fff(0xad)],{},{'audienceFieldNames':audienceFieldNamesFromApi(_0x3a9d9a)});if(!_0x2d383b[_0x113fff(0xea)])return console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xce)](a9_0x14ba87[_0x113fff(0xa3)](_0x2b60a0)+_0x113fff(0xdf))),console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xce)](formatSegmentRuleErrors(_0x2d383b))),0x1;}const _0xd28796=await withProgressSpinner('Analyzing\x20segment\x20YAML...',_0x4e52f8=>_0x455753[_0x113fff(0xd1)][_0x113fff(0xcc)]([_0x2b60a0],{'dryRun':!![],'verbose':_0x3ee546['verbose'],'resolvedAudienceId':_0x47e89d,'connectionMaps':_0x871145,'progress':{'update':_0x2f76cc=>_0x4e52f8[_0x113fff(0xd4)](_0x2f76cc)}}),{'verbose':_0x3ee546[_0x113fff(0xbd)]}),_0x3c0d4e=_0xd28796[_0x113fff(0xda)],_0x4604f0=_0x3c0d4e['updated'][_0x113fff(0xd0)]>0x0,_0x3fef02=_0x4604f0?_0x113fff(0xc1):_0x113fff(0xdc);console[_0x113fff(0xe3)]('Would\x20'+_0x3fef02+_0x113fff(0xc3)+a9_0x2c22b7[_0x113fff(0xb0)](_0x4c4a4f));if(_0x3ee546[_0x113fff(0xaf)])return console[_0x113fff(0xe3)](a9_0x2c22b7[_0x113fff(0xd2)](_0x113fff(0xd9))),0x0;if(!_0x3ee546['yes']){if(!isInteractive())return console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xce)](_0x113fff(0x9b)),_0x113fff(0x99)),console[_0x113fff(0xc6)](a9_0x2c22b7[_0x113fff(0xc5)]('Use\x20-y\x20or\x20--yes\x20flag\x20to\x20apply\x20changes\x20without\x20confirmation')),0x1;const _0x4953cf=await confirmKey('\x0a'+(_0x4604f0?_0x113fff(0xe1):_0x113fff(0xc4))+_0x113fff(0xe0));if(!_0x4953cf)return console[_0x113fff(0xe3)](a9_0x2c22b7[_0x113fff(0xd2)]('Aborted.')),0x1;}const _0x2e80e6=await withProgressSpinner(_0x113fff(0xa5)+_0x4c4a4f+_0x113fff(0xbf),_0x547b1a=>_0x455753[_0x113fff(0xd1)][_0x113fff(0xcc)]([_0x2b60a0],{'dryRun':![],'verbose':_0x3ee546['verbose'],'resolvedAudienceId':_0x47e89d,'progress':{'update':_0x5a35e4=>_0x547b1a[_0x113fff(0xd4)](_0x5a35e4)}}),{'verbose':_0x3ee546[_0x113fff(0xbd)]}),_0x24d939=_0x2e80e6['data'],_0x18bfce=_0x24d939[_0x113fff(0xe8)][_0x113fff(0xd0)]>0x0;return console[_0x113fff(0xe3)](a9_0x2c22b7['green'](_0x113fff(0xe2)+(_0x18bfce?_0x113fff(0xe8):'updated'))),console['log'](_0x113fff(0x9d)+a9_0x2c22b7[_0x113fff(0xb0)](_0x4c4a4f)),0x0;}async['executeDelete'](_0x17f54e,_0xcb8802,_0xa6e3c1,_0x48f95d){const _0x97bb94=a9_0x398f7e,{tdx:_0x177440}=_0x17f54e,_0x52139a=await withProgressSpinner(_0x97bb94(0x9e)+_0xcb8802+'\x27...',()=>_0x177440[_0x97bb94(0xd1)][_0x97bb94(0xd6)](_0xcb8802),{'verbose':_0x48f95d[_0x97bb94(0xbd)]}),_0xe57b60=_0x52139a['data'][_0x97bb94(0xa6)](_0x1915aa=>_0x1915aa['name']===_0xa6e3c1);if(!_0xe57b60)return console['error'](a9_0x2c22b7['red'](_0x97bb94(0xf0)+_0xa6e3c1+'\x22\x20not\x20found\x20under\x20audience\x20\x22'+_0xcb8802+'\x22.')),console[_0x97bb94(0xc6)](a9_0x2c22b7[_0x97bb94(0xc5)](_0x97bb94(0xf2))),0x1;console[_0x97bb94(0xe3)]('Would\x20delete\x20segment\x20'+a9_0x2c22b7['red'](_0xa6e3c1)+'\x20from\x20audience\x20'+a9_0x2c22b7[_0x97bb94(0xb0)](_0xcb8802));if(_0x48f95d[_0x97bb94(0xaf)])return console[_0x97bb94(0xe3)](a9_0x2c22b7[_0x97bb94(0xd2)](_0x97bb94(0xd9))),0x0;if(!_0x48f95d[_0x97bb94(0xa8)]){if(!isInteractive())return console[_0x97bb94(0xc6)](a9_0x2c22b7['red'](_0x97bb94(0x9b)),'Confirmation\x20required\x20but\x20running\x20in\x20non-interactive\x20mode'),console[_0x97bb94(0xc6)](a9_0x2c22b7[_0x97bb94(0xc5)]('Use\x20-y\x20or\x20--yes\x20flag\x20to\x20apply\x20changes\x20without\x20confirmation')),0x1;const _0x48ba78=await confirmKey(_0x97bb94(0xbc)+_0xa6e3c1+'\x22\x20from\x20audience\x20\x22'+_0xcb8802+_0x97bb94(0xa0));if(!_0x48ba78)return console[_0x97bb94(0xe3)](a9_0x2c22b7[_0x97bb94(0xd2)](_0x97bb94(0xb5))),0x1;}return await withProgressSpinner('Deleting\x20segment\x20\x27'+_0xa6e3c1+_0x97bb94(0xbf),()=>_0x177440[_0x97bb94(0xd1)][_0x97bb94(0xdb)](_0xe57b60['id']),{'verbose':_0x48f95d[_0x97bb94(0xbd)]}),console[_0x97bb94(0xe3)](a9_0x2c22b7[_0x97bb94(0xe6)]('\x0a✔\x20Segment\x20deleted')),console[_0x97bb94(0xe3)](_0x97bb94(0xb9)+a9_0x2c22b7[_0x97bb94(0xb0)](_0xa6e3c1)),console[_0x97bb94(0xe3)](_0x97bb94(0x9d)+a9_0x2c22b7['cyan'](_0xcb8802)),0x0;}}function a9_0xf8a7(){const _0x40e6c6=['Audience:\x20','valid','relative','cwd','executeDelete','tdx\x20use\x20cas\x20<name>','File\x20not\x20found:\x20','Composable\x20segment\x20\x22','composableAudience','Nothing\x20to\x20delete.','Confirmation\x20required\x20but\x20running\x20in\x20non-interactive\x20mode','Usage:\x20tdx\x20cas\x20sg\x20push\x20<segment.yml>\x20[--audience\x20<name>]','\x0aError:','name','\x20\x20Audience:\x20','Fetching\x20segments\x20for\x20\x27','🎯\x20','\x22?\x20This\x20cannot\x20be\x20undone.','384163huRWTC','83855fRwTfv','basename','description','Pushing\x20segment\x20to\x20\x27','find','delete','yes','Failed\x20to\x20parse\x20','312JbTYwQ','Use\x20`tdx\x20cas\x20push\x20<dir>`\x20to\x20push\x20multiple\x20files\x20at\x20once.','33jDdxhj','rule','\x20or\x20set\x20context\x20with\x20','dryRun','cyan','message','Create\x20or\x20update\x20a\x20single\x20composable\x20child\x20segment','utf-8','List\x20composable\x20segments\x20for\x20an\x20audience','Aborted.','Bulk/directory\x20delete\x20is\x20not\x20supported\x20yet.','500ZwgwbT','execute','\x20\x20Segment:\x20\x20','3880588sztrCa','Composable\x20segment\x20YAML\x20requires\x20`type:\x20composable_segment`\x20at\x20the\x20top\x20level.','\x0aDelete\x20segment\x20\x22','verbose','2576bejbvj','\x27...','33345AXrrcV','update','parse','\x20segment\x20in\x20audience\x20','Create','dim','error','isDirectory','8837612jygQhI','get','audience','Found\x20','push','Or\x20set\x20context:\x20tdx\x20use\x20cas\x20<audience_name>','red','\x20segment','segments','cas','yellow','Use\x20','setPhase','Audience\x20name\x20required.','listSegments','population','connection','\x0a[Dry\x20run]\x20No\x20changes\x20were\x20made','data','deleteSegmentById','create','\x20is\x20a\x20directory\x20—\x20tdx\x20cas\x20sg\x20push\x20takes\x20a\x20single\x20file.','length','\x27s\x20rule\x20is\x20invalid:','\x20this\x20segment?','Update','\x0a✔\x20Segment\x20','log','4689530tLaPnd','Source:\x20\x20\x20','green','Usage:\x20tdx\x20cas\x20sg\x20list\x20<audience_name>','created'];a9_0xf8a7=function(){return _0x40e6c6;};return a9_0xf8a7();}
1
+ const a10_0x5abb85=a10_0x17ed;(function(_0x3f33e3,_0x77f5a6){const _0x9ff2c5=a10_0x17ed,_0xf30544=_0x3f33e3();while(!![]){try{const _0x5c4dcb=-parseInt(_0x9ff2c5(0x212))/0x1*(parseInt(_0x9ff2c5(0x211))/0x2)+-parseInt(_0x9ff2c5(0x218))/0x3+-parseInt(_0x9ff2c5(0x225))/0x4+-parseInt(_0x9ff2c5(0x1fa))/0x5+parseInt(_0x9ff2c5(0x1f1))/0x6*(parseInt(_0x9ff2c5(0x1f6))/0x7)+parseInt(_0x9ff2c5(0x217))/0x8*(-parseInt(_0x9ff2c5(0x224))/0x9)+parseInt(_0x9ff2c5(0x227))/0xa;if(_0x5c4dcb===_0x77f5a6)break;else _0xf30544['push'](_0xf30544['shift']());}catch(_0x1799bd){_0xf30544['push'](_0xf30544['shift']());}}}(a10_0xed06,0xe4bf8));import a10_0x34fb54 from'path';import{existsSync,readFileSync,statSync}from'fs';import*as a10_0x1d939d from'yaml';function a10_0x17ed(_0x20ae5f,_0x5b52f5){_0x20ae5f=_0x20ae5f-0x1d8;const _0xed066b=a10_0xed06();let _0x17edf6=_0xed066b[_0x20ae5f];return _0x17edf6;}import{BaseCommand}from'./command.js';import{withProgressSpinner}from'../utils/spinner.js';import{handleSDKOutput,isStructuredFormat}from'../core/command-output.js';import{formatRows}from'../sdk/util/formatters.js';import{confirmKey,isInteractive}from'../utils/prompt.js';import{buildConnectionMaps}from'../sdk/cas/push-workflow.js';import{isComposableSegmentDef}from'../sdk/cas/cas-segment-yaml.js';import{validateComposableSegmentRule,audienceFieldNamesFromApi,formatSegmentRuleErrors}from'../sdk/cas/cas-segment-validator.js';function a10_0xed06(){const _0x13872f=['130nueYuV','composableAudience','parse','Composable\x20segment\x20YAML\x20requires\x20`type:\x20composable_segment`\x20at\x20the\x20top\x20level.','find','88XWiHLp','3147591zctFgM','update','🎯\x20','executeDelete','\x0a✔\x20Segment\x20deleted','Aborted.','rule','Audience:\x20','\x27...','red','\x22?\x20This\x20cannot\x20be\x20undone.','Resolving\x20connections...','1206045OABspo','7373988sApxfR','data','74745440wbsBCC','Failed\x20to\x20parse\x20','cyan','\x0aError:','audience','\x20this\x20segment?','Found\x20','\x27s\x20rule\x20is\x20invalid:','updated','deleteSegmentById','\x20as\x20YAML:\x20','description','valid','Would\x20delete\x20segment\x20','cas:sg:list','Analyzing\x20segment\x20YAML...','File\x20not\x20found:\x20','yes','\x0aDelete\x20segment\x20\x22','\x20is\x20a\x20directory\x20—\x20tdx\x20cas\x20sg\x20push\x20takes\x20a\x20single\x20file.','setPhase','Usage:\x20tdx\x20cas\x20sg\x20list\x20<audience_name>','Would\x20','Bulk/directory\x20delete\x20is\x20not\x20supported\x20yet.','dryRun','Fetching\x20segments\x20for\x20\x27','\x0a[Dry\x20run]\x20No\x20changes\x20were\x20made','Create\x20or\x20update\x20a\x20single\x20composable\x20child\x20segment','length','dim','execute','--audience\x20<name>','error','isDirectory','\x20\x20Audience:\x20','verbose','Nothing\x20to\x20delete.','relative','population','18TYoyEJ','utf-8','message','cas:sg:push','basename','1056993jAleYl','Audience\x20name\x20required.','green','yellow','6855150cXjDoS','tdx\x20use\x20cas\x20<name>','Usage:\x20tdx\x20cas\x20sg\x20push\x20<segment.yml>\x20[--audience\x20<name>]','Deleting\x20segment\x20\x27','Composable\x20segment\x20\x22','cas','Use\x20-y\x20or\x20--yes\x20flag\x20to\x20apply\x20changes\x20without\x20confirmation','segments','listSegments','\x22\x20not\x20found\x20under\x20audience\x20\x22','\x20segment\x20in\x20audience\x20','List\x20composable\x20segments\x20for\x20an\x20audience','Confirmation\x20required\x20but\x20running\x20in\x20non-interactive\x20mode','delete','\x0a✔\x20Segment\x20','push','Use\x20','name','Use\x20`tdx\x20cas\x20push\x20<dir>`\x20to\x20push\x20multiple\x20files\x20at\x20once.','Source:\x20\x20\x20','\x20segment','Or\x20set\x20context:\x20tdx\x20use\x20cas\x20<audience_name>','log','19274PujCtm'];a10_0xed06=function(){return _0x13872f;};return a10_0xed06();}import a10_0x4add18 from'chalk';export class CASSegmentListCommand extends BaseCommand{['name']=a10_0x5abb85(0x1d8);[a10_0x5abb85(0x232)]=a10_0x5abb85(0x205);async[a10_0x5abb85(0x1e8)](_0x22a801){const _0x5300d6=a10_0x5abb85,{options:_0x27329c,args:_0xe7d501,tdx:_0x12fd7e}=_0x22a801,_0x566b89=_0xe7d501[0x0]||_0x27329c[_0x5300d6(0x213)];if(!_0x566b89)return console['error'](a10_0x4add18[_0x5300d6(0x221)](_0x5300d6(0x1df))),console[_0x5300d6(0x1ea)](a10_0x4add18[_0x5300d6(0x1e7)](_0x5300d6(0x20f))),0x1;const _0x2dcba7=await withProgressSpinner(_0x5300d6(0x1e3)+_0x566b89+_0x5300d6(0x220),()=>_0x12fd7e[_0x5300d6(0x1ff)][_0x5300d6(0x202)](_0x566b89),{'verbose':_0x27329c[_0x5300d6(0x1ed)]}),_0x5c44b8=_0x2dcba7['data'];if(isStructuredFormat(_0x27329c))return await handleSDKOutput(_0x5c44b8,_0x27329c),0x0;console[_0x5300d6(0x210)](a10_0x4add18['green'](_0x5300d6(0x22d)+_0x5c44b8['length']+_0x5300d6(0x20e)+(_0x5c44b8[_0x5300d6(0x1e6)]!==0x1?'s':'')));if(_0x5c44b8['length']===0x0)return 0x0;for(const _0x21740b of _0x5c44b8){const _0x349f84=_0x21740b[_0x5300d6(0x1f0)]!=null?a10_0x4add18['dim']('\x20('+formatRows(_0x21740b[_0x5300d6(0x1f0)])+')'):'';console[_0x5300d6(0x210)](_0x5300d6(0x21a)+_0x21740b[_0x5300d6(0x20b)]+_0x349f84),_0x21740b['description']&&console[_0x5300d6(0x210)]('\x20\x20'+a10_0x4add18[_0x5300d6(0x1e7)](_0x21740b['description']));}return 0x0;}}export class CASSegmentPushCommand extends BaseCommand{['name']=a10_0x5abb85(0x1f4);['description']=a10_0x5abb85(0x1e5);async[a10_0x5abb85(0x1e8)](_0x1ed4ea){const _0x7c10ba=a10_0x5abb85,{options:_0x3dd5be,args:_0x845a30,tdx:_0x1c7a36}=_0x1ed4ea,_0x2de0f2=_0x3dd5be,_0x513e39=_0x845a30[0x0];if(!_0x513e39)return console[_0x7c10ba(0x1ea)](a10_0x4add18[_0x7c10ba(0x221)](_0x7c10ba(0x1fc))),0x1;if(!existsSync(_0x513e39))return console[_0x7c10ba(0x1ea)](a10_0x4add18[_0x7c10ba(0x221)](_0x7c10ba(0x1da)+_0x513e39)),0x1;if(statSync(_0x513e39)[_0x7c10ba(0x1eb)]())return console[_0x7c10ba(0x1ea)](a10_0x4add18['red'](_0x513e39+_0x7c10ba(0x1dd))),_0x2de0f2[_0x7c10ba(0x207)]?console[_0x7c10ba(0x1ea)](a10_0x4add18[_0x7c10ba(0x1e7)](_0x7c10ba(0x1e1))):console[_0x7c10ba(0x1ea)](a10_0x4add18['dim'](_0x7c10ba(0x20c))),0x1;const _0x30c76a=_0x2de0f2[_0x7c10ba(0x22b)]||_0x3dd5be[_0x7c10ba(0x213)];if(!_0x30c76a)return console[_0x7c10ba(0x1ea)](a10_0x4add18[_0x7c10ba(0x1f9)](_0x7c10ba(0x1f7))),console['error'](_0x7c10ba(0x20a)+a10_0x4add18[_0x7c10ba(0x229)](_0x7c10ba(0x1e9))+'\x20or\x20set\x20context\x20with\x20'+a10_0x4add18['cyan'](_0x7c10ba(0x1fb))),0x1;console[_0x7c10ba(0x210)](_0x7c10ba(0x21f)+a10_0x4add18[_0x7c10ba(0x229)](_0x30c76a)),console['log'](_0x7c10ba(0x20d)+a10_0x4add18['dim'](a10_0x34fb54[_0x7c10ba(0x1ef)](process['cwd'](),_0x513e39)||'.')),console['log']();let _0x7edee0;try{_0x7edee0=a10_0x1d939d[_0x7c10ba(0x214)](readFileSync(_0x513e39,_0x7c10ba(0x1f2)));}catch(_0x18b997){return console[_0x7c10ba(0x1ea)](a10_0x4add18[_0x7c10ba(0x221)](_0x7c10ba(0x228)+a10_0x34fb54[_0x7c10ba(0x1f5)](_0x513e39)+_0x7c10ba(0x231)),_0x18b997 instanceof Error?_0x18b997[_0x7c10ba(0x1f3)]:String(_0x18b997)),0x1;}if(!isComposableSegmentDef(_0x7edee0))return console['error'](a10_0x4add18[_0x7c10ba(0x221)](a10_0x34fb54[_0x7c10ba(0x1f5)](_0x513e39)+'\x20doesn\x27t\x20look\x20like\x20a\x20composable\x20segment.')),console[_0x7c10ba(0x1ea)](a10_0x4add18[_0x7c10ba(0x1f9)](_0x7c10ba(0x215))),0x1;if(_0x2de0f2['delete'])return this[_0x7c10ba(0x21b)](_0x1ed4ea,_0x30c76a,_0x7edee0[_0x7c10ba(0x20b)],_0x2de0f2);const _0x28f164=await withProgressSpinner(_0x7c10ba(0x223),()=>buildConnectionMaps(_0x1c7a36['connection']),{'verbose':_0x2de0f2[_0x7c10ba(0x1ed)]}),_0x589792=_0x28f164[_0x7c10ba(0x226)],_0x64d83a=await withProgressSpinner('Resolving\x20audience\x20\x27'+_0x30c76a+'\x27...',()=>_0x1c7a36[_0x7c10ba(0x1ff)]['get'](_0x30c76a),{'verbose':_0x2de0f2[_0x7c10ba(0x1ed)]}),_0x440a73=_0x64d83a[_0x7c10ba(0x226)],_0x2a5b3e=_0x440a73['id'];if(_0x7edee0[_0x7c10ba(0x21e)]){const _0x5f2ac6=validateComposableSegmentRule(_0x7edee0['rule'],{},{'audienceFieldNames':audienceFieldNamesFromApi(_0x440a73)});if(!_0x5f2ac6[_0x7c10ba(0x233)])return console['error'](a10_0x4add18[_0x7c10ba(0x221)](a10_0x34fb54[_0x7c10ba(0x1f5)](_0x513e39)+_0x7c10ba(0x22e))),console[_0x7c10ba(0x1ea)](a10_0x4add18[_0x7c10ba(0x221)](formatSegmentRuleErrors(_0x5f2ac6))),0x1;}const _0x5d2afd=await withProgressSpinner(_0x7c10ba(0x1d9),_0xf61c41=>_0x1c7a36[_0x7c10ba(0x1ff)]['push']([_0x513e39],{'dryRun':!![],'verbose':_0x2de0f2[_0x7c10ba(0x1ed)],'resolvedAudienceId':_0x2a5b3e,'connectionMaps':_0x589792,'progress':{'update':_0x57af01=>_0xf61c41[_0x7c10ba(0x1de)](_0x57af01)}}),{'verbose':_0x2de0f2[_0x7c10ba(0x1ed)]}),_0x54ee28=_0x5d2afd[_0x7c10ba(0x226)],_0x15883a=_0x54ee28[_0x7c10ba(0x22f)][_0x7c10ba(0x201)]>0x0,_0x4756ba=_0x15883a?_0x7c10ba(0x219):'create';console[_0x7c10ba(0x210)](_0x7c10ba(0x1e0)+_0x4756ba+_0x7c10ba(0x204)+a10_0x4add18[_0x7c10ba(0x229)](_0x30c76a));if(_0x2de0f2[_0x7c10ba(0x1e2)])return console[_0x7c10ba(0x210)](a10_0x4add18['yellow'](_0x7c10ba(0x1e4))),0x0;if(!_0x2de0f2[_0x7c10ba(0x1db)]){if(!isInteractive())return console['error'](a10_0x4add18[_0x7c10ba(0x221)](_0x7c10ba(0x22a)),'Confirmation\x20required\x20but\x20running\x20in\x20non-interactive\x20mode'),console['error'](a10_0x4add18[_0x7c10ba(0x1e7)]('Use\x20-y\x20or\x20--yes\x20flag\x20to\x20apply\x20changes\x20without\x20confirmation')),0x1;const _0x16e770=await confirmKey('\x0a'+(_0x15883a?'Update':'Create')+_0x7c10ba(0x22c));if(!_0x16e770)return console[_0x7c10ba(0x210)](a10_0x4add18[_0x7c10ba(0x1f9)](_0x7c10ba(0x21d))),0x1;}const _0x50f5b0=await withProgressSpinner('Pushing\x20segment\x20to\x20\x27'+_0x30c76a+_0x7c10ba(0x220),_0x2e6c82=>_0x1c7a36['cas'][_0x7c10ba(0x209)]([_0x513e39],{'dryRun':![],'verbose':_0x2de0f2[_0x7c10ba(0x1ed)],'resolvedAudienceId':_0x2a5b3e,'progress':{'update':_0x39e710=>_0x2e6c82[_0x7c10ba(0x1de)](_0x39e710)}}),{'verbose':_0x2de0f2[_0x7c10ba(0x1ed)]}),_0x483560=_0x50f5b0[_0x7c10ba(0x226)],_0x46f5ef=_0x483560['created'][_0x7c10ba(0x201)]>0x0;return console[_0x7c10ba(0x210)](a10_0x4add18['green'](_0x7c10ba(0x208)+(_0x46f5ef?'created':_0x7c10ba(0x22f)))),console['log'](_0x7c10ba(0x1ec)+a10_0x4add18['cyan'](_0x30c76a)),0x0;}async[a10_0x5abb85(0x21b)](_0xf482e3,_0x338361,_0x37f7e0,_0x48d64f){const _0x2de17a=a10_0x5abb85,{tdx:_0x3a5c25}=_0xf482e3,_0x124cfb=await withProgressSpinner('Fetching\x20segments\x20for\x20\x27'+_0x338361+_0x2de17a(0x220),()=>_0x3a5c25[_0x2de17a(0x1ff)]['listSegments'](_0x338361),{'verbose':_0x48d64f[_0x2de17a(0x1ed)]}),_0x47456d=_0x124cfb['data'][_0x2de17a(0x216)](_0x59d241=>_0x59d241[_0x2de17a(0x20b)]===_0x37f7e0);if(!_0x47456d)return console[_0x2de17a(0x1ea)](a10_0x4add18[_0x2de17a(0x221)](_0x2de17a(0x1fe)+_0x37f7e0+_0x2de17a(0x203)+_0x338361+'\x22.')),console['error'](a10_0x4add18[_0x2de17a(0x1e7)](_0x2de17a(0x1ee))),0x1;console[_0x2de17a(0x210)](_0x2de17a(0x234)+a10_0x4add18[_0x2de17a(0x221)](_0x37f7e0)+'\x20from\x20audience\x20'+a10_0x4add18[_0x2de17a(0x229)](_0x338361));if(_0x48d64f[_0x2de17a(0x1e2)])return console[_0x2de17a(0x210)](a10_0x4add18[_0x2de17a(0x1f9)](_0x2de17a(0x1e4))),0x0;if(!_0x48d64f['yes']){if(!isInteractive())return console['error'](a10_0x4add18[_0x2de17a(0x221)](_0x2de17a(0x22a)),_0x2de17a(0x206)),console[_0x2de17a(0x1ea)](a10_0x4add18[_0x2de17a(0x1e7)](_0x2de17a(0x200))),0x1;const _0x4fd99d=await confirmKey(_0x2de17a(0x1dc)+_0x37f7e0+'\x22\x20from\x20audience\x20\x22'+_0x338361+_0x2de17a(0x222));if(!_0x4fd99d)return console[_0x2de17a(0x210)](a10_0x4add18[_0x2de17a(0x1f9)](_0x2de17a(0x21d))),0x1;}return await withProgressSpinner(_0x2de17a(0x1fd)+_0x37f7e0+_0x2de17a(0x220),()=>_0x3a5c25[_0x2de17a(0x1ff)][_0x2de17a(0x230)](_0x47456d['id']),{'verbose':_0x48d64f[_0x2de17a(0x1ed)]}),console[_0x2de17a(0x210)](a10_0x4add18[_0x2de17a(0x1f8)](_0x2de17a(0x21c))),console[_0x2de17a(0x210)]('\x20\x20Segment:\x20\x20'+a10_0x4add18[_0x2de17a(0x229)](_0x37f7e0)),console[_0x2de17a(0x210)]('\x20\x20Audience:\x20'+a10_0x4add18[_0x2de17a(0x229)](_0x338361)),0x0;}}
@@ -1 +1 @@
1
- function a10_0x40fb(_0xea166a,_0x458c51){_0xea166a=_0xea166a-0x1eb;const _0x569f6a=a10_0x569f();let _0x40fb8c=_0x569f6a[_0xea166a];return _0x40fb8c;}const a10_0x2f2689=a10_0x40fb;(function(_0x3f9798,_0x23ff07){const _0x3380cd=a10_0x40fb,_0x50a6a8=_0x3f9798();while(!![]){try{const _0x259b46=-parseInt(_0x3380cd(0x218))/0x1*(parseInt(_0x3380cd(0x227))/0x2)+parseInt(_0x3380cd(0x1f3))/0x3*(-parseInt(_0x3380cd(0x20d))/0x4)+-parseInt(_0x3380cd(0x207))/0x5*(parseInt(_0x3380cd(0x224))/0x6)+parseInt(_0x3380cd(0x1fc))/0x7+parseInt(_0x3380cd(0x228))/0x8+parseInt(_0x3380cd(0x217))/0x9+parseInt(_0x3380cd(0x22f))/0xa;if(_0x259b46===_0x23ff07)break;else _0x50a6a8['push'](_0x50a6a8['shift']());}catch(_0x106258){_0x50a6a8['push'](_0x50a6a8['shift']());}}}(a10_0x569f,0xa19e8));import{BaseCommand}from'./command.js';import{SDKError,ErrorCode}from'../sdk/errors.js';import{withSpinner}from'../utils/spinner.js';import{parseAgentRef}from'../sdk/agent/agent-ref-parser.js';import{saveLastChatId,loadLastChatId}from'../sdk/llm/chat-cache.js';import{getLLMConversationUrl}from'../sdk/client/endpoints.js';function handleSDKError(_0x33079e,_0x36ad6e){const _0x23a71c=a10_0x40fb;if(_0x33079e instanceof SDKError)console[_0x23a71c(0x22d)](_0x23a71c(0x21a)+_0x33079e[_0x23a71c(0x1fe)]),_0x36ad6e[_0x23a71c(0x204)]&&(_0x33079e[_0x23a71c(0x20e)]&&console[_0x23a71c(0x22d)](_0x23a71c(0x22b)+_0x33079e['cause']),_0x33079e[_0x23a71c(0x209)]&&(console['error']('\x0aStack\x20trace:'),console[_0x23a71c(0x22d)](_0x33079e[_0x23a71c(0x209)])));else throw _0x33079e;}async function resolveAgentId(_0x4ef6c8,_0x1334c6,_0x344cc5,_0x4e3830,_0x190bd6){const _0x4b723d=a10_0x40fb,_0x14dd8e=_0x1334c6||_0x344cc5;if(_0x14dd8e){const {projectName:_0x50a5d0,agentName:_0x5a9e11}=parseAgentRef(_0x14dd8e),_0x4f7b0a=_0x5a9e11||_0x14dd8e,_0x6e828b=_0x5a9e11?_0x50a5d0:_0x4e3830;if(!_0x6e828b)throw new Error(_0x4b723d(0x21f));if(_0x190bd6){const _0x4949bb=_0x1334c6?_0x4b723d(0x214):_0x4b723d(0x20c);console[_0x4b723d(0x22d)](_0x4b723d(0x236)+_0x4949bb+':\x20'+_0x6e828b+'/'+_0x4f7b0a);}const _0x15f433=await withSpinner('Resolving\x20project\x20\x27'+_0x6e828b+_0x4b723d(0x1eb),()=>_0x4ef6c8[_0x4b723d(0x20b)]['resolveProjectId'](_0x6e828b),{'verbose':_0x190bd6}),_0x4327a9=await withSpinner(_0x4b723d(0x1ec)+_0x4f7b0a+_0x4b723d(0x1eb),()=>_0x4ef6c8['llm'][_0x4b723d(0x229)](_0x4f7b0a,_0x15f433[_0x4b723d(0x23b)]),{'verbose':_0x190bd6});return _0x4327a9[_0x4b723d(0x23b)];}else{const _0x41260e=_0x4ef6c8[_0x4b723d(0x20b)][_0x4b723d(0x1f8)]();if(_0x41260e)return _0x190bd6&&console[_0x4b723d(0x22d)](_0x4b723d(0x219)+_0x41260e[_0x4b723d(0x211)]),_0x41260e['id'];const _0x23ebb4=await withSpinner(_0x4b723d(0x1ff),()=>_0x4ef6c8[_0x4b723d(0x20b)][_0x4b723d(0x20a)](_0x4b723d(0x21c),0x0),{'verbose':_0x190bd6});return _0x23ebb4[_0x4b723d(0x23b)]['id'];}}export class ChatCommand extends BaseCommand{[a10_0x2f2689(0x211)]='chat';[a10_0x2f2689(0x22e)]=a10_0x2f2689(0x203);['validate'](_0x16cacd){const _0x2c4ac0=a10_0x2f2689,_0x3188e1=_0x16cacd[_0x2c4ac0(0x208)][_0x2c4ac0(0x212)]('\x20');if(!_0x3188e1)return _0x2c4ac0(0x1fd);return undefined;}async[a10_0x2f2689(0x216)](_0x5d6454,_0x461c94,_0x1882ac,_0x6631f7,_0x22b589){const _0x2696af=a10_0x2f2689;for await(const _0x36f4ad of _0x5d6454[_0x2696af(0x20b)][_0x2696af(0x1f9)](_0x461c94,{'agentId':_0x1882ac,'chatId':_0x6631f7})){if(_0x36f4ad[_0x2696af(0x233)]==='metadata'){const _0x3026e3=_0x36f4ad['data'][_0x2696af(0x223)];saveLastChatId(_0x3026e3),_0x22b589&&console['error']('Chat\x20session:\x20'+_0x3026e3);}else _0x36f4ad[_0x2696af(0x233)]===_0x2696af(0x1f6)&&this[_0x2696af(0x235)](_0x36f4ad[_0x2696af(0x23b)]);}}async[a10_0x2f2689(0x237)](_0x5619b4,_0x2fdf01,_0x1f6c6a,_0x466aa4){const _0x1a8e39=a10_0x2f2689,_0x3f7053=_0x5619b4[_0x1a8e39(0x232)]['site'];let _0x56fdee=![];for await(const _0x30abe4 of _0x5619b4[_0x1a8e39(0x20b)][_0x1a8e39(0x1f9)](_0x2fdf01,{'agentId':_0x1f6c6a,'chatId':_0x466aa4})){if(_0x30abe4[_0x1a8e39(0x233)]===_0x1a8e39(0x23a)){const _0x159ad6=_0x30abe4['data'];saveLastChatId(_0x159ad6[_0x1a8e39(0x223)]);const _0x312a8d=_0x159ad6[_0x1a8e39(0x200)]&&_0x159ad6[_0x1a8e39(0x1f2)]?getLLMConversationUrl(_0x3f7053,_0x159ad6['projectId'],_0x159ad6[_0x1a8e39(0x1f2)],_0x159ad6[_0x1a8e39(0x223)]):undefined;console[_0x1a8e39(0x238)](JSON[_0x1a8e39(0x1f0)]({'type':'metadata','data':{'chatId':_0x159ad6['chatId'],'agentId':_0x159ad6[_0x1a8e39(0x1f2)],'consoleUrl':_0x312a8d}})),_0x56fdee=!![];}else{if(_0x30abe4[_0x1a8e39(0x233)]===_0x1a8e39(0x1f6)){!_0x56fdee&&_0x466aa4&&(console[_0x1a8e39(0x238)](JSON[_0x1a8e39(0x1f0)]({'type':'metadata','data':{'chatId':_0x466aa4}})),_0x56fdee=!![]);const _0x34e477=_0x30abe4[_0x1a8e39(0x23b)];if(_0x1a8e39(0x215)in _0x34e477)console[_0x1a8e39(0x238)](JSON[_0x1a8e39(0x1f0)]({'type':'content','data':{'content':_0x34e477['content']}}));else{if(_0x1a8e39(0x230)in _0x34e477){const _0x1c16e6=_0x34e477['tool_call'];console[_0x1a8e39(0x238)](JSON[_0x1a8e39(0x1f0)]({'type':'tool_call','data':{'id':_0x1c16e6['id'],'name':_0x1c16e6[_0x1a8e39(0x21e)],'target':_0x1c16e6[_0x1a8e39(0x205)]?.[_0x1a8e39(0x211)]||_0x1c16e6[_0x1a8e39(0x22a)]?.[_0x1a8e39(0x211)]||_0x1c16e6[_0x1a8e39(0x201)]?.[_0x1a8e39(0x211)]||_0x1c16e6[_0x1a8e39(0x213)]}}));}else{if(_0x1a8e39(0x206)in _0x34e477)console[_0x1a8e39(0x238)](JSON[_0x1a8e39(0x1f0)]({'type':'tool_result','data':{'id':_0x34e477[_0x1a8e39(0x206)]['id'],'name':_0x34e477['tool']['functionName'],'result':typeof _0x34e477[_0x1a8e39(0x206)][_0x1a8e39(0x215)]===_0x1a8e39(0x221)?_0x34e477[_0x1a8e39(0x206)][_0x1a8e39(0x215)]['slice'](0x0,0x1f4):''}}));else _0x1a8e39(0x22d)in _0x34e477&&console[_0x1a8e39(0x238)](JSON[_0x1a8e39(0x1f0)]({'type':'error','data':{'error':_0x34e477[_0x1a8e39(0x22d)]}}));}}}}}console['log'](JSON['stringify']({'type':_0x1a8e39(0x226)}));}async['execute'](_0xb08ca0){const _0x402b4d=a10_0x2f2689,{options:_0xe9fee3,args:_0x5938d9,tdx:_0x48b571}=_0xb08ca0,_0x46b042=_0x5938d9[_0x402b4d(0x212)]('\x20'),_0x1f0142=_0xe9fee3,_0x846327=_0x1f0142[_0x402b4d(0x231)],_0x3b814f=_0x1f0142[_0x402b4d(0x21d)],_0x252342=_0x1f0142[_0x402b4d(0x1fb)],_0x50f6cf=_0x1f0142[_0x402b4d(0x1f5)],_0x11f4a2=_0x1f0142[_0x402b4d(0x223)],_0x3db591=_0x1f0142['stream'];if(_0x50f6cf&&_0x11f4a2)return console[_0x402b4d(0x22d)](_0x402b4d(0x21b)),0x1;try{let _0x113034,_0x549f71;if(_0x11f4a2)_0x549f71=_0x11f4a2;else!_0x50f6cf&&(_0x549f71=loadLastChatId(),_0x549f71&&_0xe9fee3[_0x402b4d(0x204)]&&console[_0x402b4d(0x22d)](_0x402b4d(0x1ed)+_0x549f71));!_0x11f4a2&&(_0x50f6cf||!_0x549f71)&&(_0x113034=await resolveAgentId(_0x48b571,_0x846327,_0x3b814f,_0x252342,_0xe9fee3[_0x402b4d(0x204)]));const _0x333b09=_0x3db591?(_0x59ce4c,_0x5c5560,_0x1ea74a)=>this[_0x402b4d(0x237)](_0x48b571,_0x59ce4c,_0x5c5560,_0x1ea74a):(_0x4b49c6,_0x2dec95,_0x25df90)=>this[_0x402b4d(0x216)](_0x48b571,_0x4b49c6,_0x2dec95,_0x25df90,_0xe9fee3[_0x402b4d(0x204)]);try{await _0x333b09(_0x46b042,_0x113034,_0x549f71);}catch(_0x55c401){const _0x5ea248=_0x55c401 instanceof SDKError&&_0x55c401[_0x402b4d(0x22c)]===ErrorCode[_0x402b4d(0x20f)]||_0x55c401 instanceof Error&&_0x55c401[_0x402b4d(0x1fe)][_0x402b4d(0x210)]('404');if(_0x5ea248&&_0x11f4a2)return console[_0x402b4d(0x22d)](_0x402b4d(0x1ef)+_0x11f4a2+_0x402b4d(0x1f7)),0x1;if(_0x5ea248)_0xe9fee3[_0x402b4d(0x204)]&&console[_0x402b4d(0x22d)](_0x402b4d(0x1f1)),!_0x113034&&(_0x113034=await resolveAgentId(_0x48b571,_0x846327,_0x3b814f,_0x252342,_0xe9fee3['verbose'])),await _0x333b09(_0x46b042,_0x113034,undefined);else throw _0x55c401;}return!_0x3db591&&console[_0x402b4d(0x238)](),0x0;}catch(_0x4c3a83){return console[_0x402b4d(0x22d)](),handleSDKError(_0x4c3a83,_0xe9fee3),0x1;}}[a10_0x2f2689(0x235)](_0x20f142){const _0x33ecd8=a10_0x2f2689;if(_0x33ecd8(0x215)in _0x20f142)process[_0x33ecd8(0x1ee)][_0x33ecd8(0x202)](_0x20f142[_0x33ecd8(0x215)]);else _0x33ecd8(0x22d)in _0x20f142&&console[_0x33ecd8(0x22d)](_0x33ecd8(0x1f4)+_0x20f142[_0x33ecd8(0x22d)]);}}function a10_0x569f(){const _0x5e39ac=['Chat\x20with\x20an\x20LLM\x20agent\x20(simplified)','verbose','targetKnowledgeBase','tool','962590WuRbXP','args','stack','getOrCreateDefaultAgent','llm','session\x20context','3386284TZRPCB','cause','CHAT_NOT_FOUND','includes','name','join','targetFunction','--agent\x20flag','content','streamChat','6919515IFMABa','99yTXdla','Using\x20cached\x20default\x20agent:\x20','Error:\x20','Error:\x20Cannot\x20use\x20--new\x20and\x20--chat-id\x20together','claude-4.5-haiku','llmAgent','functionName','No\x20project\x20specified.\x20Use\x20\x22Project/Agent\x22\x20format\x20or\x20set\x20project\x20with\x20\x22tdx\x20use\x20llm_project\x22','Agent\x20required.\x20Use\x20--agent\x20\x22Project/Agent\x22\x20or\x20set\x20agent\x20with\x20\x22tdx\x20use\x20agent\x22','string','startChat','chatId','6BGKDFK','validate','done','2096vKgqvW','4787392ljbtgt','resolveAgentId','targetAgent','\x20\x20Cause:\x20','code','error','description','2015430qLYFkG','tool_call','agent','context','type','options','handleChatEvent','Using\x20agent\x20from\x20','streamChatJsonl','log','chat-create','metadata','data','\x27...','Resolving\x20agent\x20\x27','Continuing\x20chat:\x20','stdout','Error:\x20Chat\x20session\x20\x27','stringify','Chat\x20session\x20not\x20found,\x20starting\x20new\x20chat...','agentId','3DUtkFY','\x0aError:\x20','new','event','\x27\x20not\x20found','getDefaultAgent','chat','Create\x20a\x20new\x20chat\x20session','llmProject','1652217CqHGDt','Usage:\x20tdx\x20chat\x20\x22your\x20message\x22\x0a\x0aRun\x20\x27tdx\x20chat\x20--help\x27\x20for\x20more\x20options','message','Getting\x20default\x20agent...','projectId','targetWebSearchTool','write'];a10_0x569f=function(){return _0x5e39ac;};return a10_0x569f();}export class ChatCreateCommand extends BaseCommand{[a10_0x2f2689(0x211)]=a10_0x2f2689(0x239);[a10_0x2f2689(0x22e)]=a10_0x2f2689(0x1fa);[a10_0x2f2689(0x225)](_0x1311c9){const _0x3967c0=a10_0x2f2689,_0x5d159f=_0x1311c9[_0x3967c0(0x234)],_0x259b65=_0x5d159f['agent'],_0x521079=_0x5d159f['llmAgent'];if(!_0x259b65&&!_0x521079)return _0x3967c0(0x220);return undefined;}async['execute'](_0x19c2d2){const _0x5ec299=a10_0x2f2689,{options:_0x238155,tdx:_0x34d910}=_0x19c2d2,_0x52a222=_0x238155,_0x377cdd=_0x52a222[_0x5ec299(0x231)],_0x2f1f2c=_0x52a222[_0x5ec299(0x21d)],_0x2bb57c=_0x52a222[_0x5ec299(0x1fb)];try{const _0x90ddb4=await resolveAgentId(_0x34d910,_0x377cdd,_0x2f1f2c,_0x2bb57c,_0x238155['verbose']),_0x58a4c9=await _0x34d910[_0x5ec299(0x20b)][_0x5ec299(0x222)](_0x90ddb4);return saveLastChatId(_0x58a4c9['id']),console[_0x5ec299(0x238)](JSON[_0x5ec299(0x1f0)]({'chatId':_0x58a4c9['id'],'agentId':_0x90ddb4})),0x0;}catch(_0x1766b2){return handleSDKError(_0x1766b2,_0x238155),0x1;}}}
1
+ const a11_0x25e851=a11_0x53b8;(function(_0x2c62a2,_0x1a35bb){const _0x2b2e57=a11_0x53b8,_0x34fd47=_0x2c62a2();while(!![]){try{const _0x2c95d7=parseInt(_0x2b2e57(0x1c7))/0x1+parseInt(_0x2b2e57(0x1db))/0x2+-parseInt(_0x2b2e57(0x1e4))/0x3+parseInt(_0x2b2e57(0x1df))/0x4+-parseInt(_0x2b2e57(0x1e3))/0x5+parseInt(_0x2b2e57(0x1c1))/0x6+parseInt(_0x2b2e57(0x1c6))/0x7*(parseInt(_0x2b2e57(0x1f4))/0x8);if(_0x2c95d7===_0x1a35bb)break;else _0x34fd47['push'](_0x34fd47['shift']());}catch(_0x2b90aa){_0x34fd47['push'](_0x34fd47['shift']());}}}(a11_0x428c,0x835a4));function a11_0x53b8(_0x9bf1bc,_0x145020){_0x9bf1bc=_0x9bf1bc-0x1b3;const _0x428cad=a11_0x428c();let _0x53b846=_0x428cad[_0x9bf1bc];return _0x53b846;}import{BaseCommand}from'./command.js';import{SDKError,ErrorCode}from'../sdk/errors.js';import{withSpinner}from'../utils/spinner.js';import{parseAgentRef}from'../sdk/agent/agent-ref-parser.js';import{saveLastChatId,loadLastChatId}from'../sdk/llm/chat-cache.js';import{getLLMConversationUrl}from'../sdk/client/endpoints.js';function handleSDKError(_0x467ee7,_0x35f1cf){const _0x49ddc2=a11_0x53b8;if(_0x467ee7 instanceof SDKError)console[_0x49ddc2(0x1e1)](_0x49ddc2(0x1cb)+_0x467ee7['message']),_0x35f1cf['verbose']&&(_0x467ee7[_0x49ddc2(0x1e0)]&&console[_0x49ddc2(0x1e1)](_0x49ddc2(0x1bb)+_0x467ee7[_0x49ddc2(0x1e0)]),_0x467ee7[_0x49ddc2(0x1b8)]&&(console['error'](_0x49ddc2(0x1fc)),console['error'](_0x467ee7[_0x49ddc2(0x1b8)])));else throw _0x467ee7;}async function resolveAgentId(_0x51252d,_0x182228,_0x26866d,_0x1f06bd,_0x18fcf2){const _0x18f2df=a11_0x53b8,_0x4f23d1=_0x182228||_0x26866d;if(_0x4f23d1){const {projectName:_0x48ce49,agentName:_0x124782}=parseAgentRef(_0x4f23d1),_0x113ebc=_0x124782||_0x4f23d1,_0x3aae16=_0x124782?_0x48ce49:_0x1f06bd;if(!_0x3aae16)throw new Error('No\x20project\x20specified.\x20Use\x20\x22Project/Agent\x22\x20format\x20or\x20set\x20project\x20with\x20\x22tdx\x20use\x20llm_project\x22');if(_0x18fcf2){const _0x557a28=_0x182228?_0x18f2df(0x1e6):'session\x20context';console[_0x18f2df(0x1e1)](_0x18f2df(0x1f6)+_0x557a28+':\x20'+_0x3aae16+'/'+_0x113ebc);}const _0x13f71b=await withSpinner(_0x18f2df(0x1ee)+_0x3aae16+_0x18f2df(0x1e8),()=>_0x51252d[_0x18f2df(0x1ba)][_0x18f2df(0x1e5)](_0x3aae16),{'verbose':_0x18fcf2}),_0x44224d=await withSpinner(_0x18f2df(0x1d8)+_0x113ebc+'\x27...',()=>_0x51252d[_0x18f2df(0x1ba)][_0x18f2df(0x1d2)](_0x113ebc,_0x13f71b[_0x18f2df(0x1ef)]),{'verbose':_0x18fcf2});return _0x44224d[_0x18f2df(0x1ef)];}else{const _0x4c1038=_0x51252d[_0x18f2df(0x1ba)][_0x18f2df(0x1b6)]();if(_0x4c1038)return _0x18fcf2&&console[_0x18f2df(0x1e1)](_0x18f2df(0x1de)+_0x4c1038['name']),_0x4c1038['id'];const _0x5bb260=await withSpinner(_0x18f2df(0x1bf),()=>_0x51252d[_0x18f2df(0x1ba)][_0x18f2df(0x1c8)](_0x18f2df(0x1f2),0x0),{'verbose':_0x18fcf2});return _0x5bb260[_0x18f2df(0x1ef)]['id'];}}export class ChatCommand extends BaseCommand{[a11_0x25e851(0x1f1)]=a11_0x25e851(0x1b5);['description']=a11_0x25e851(0x1ce);[a11_0x25e851(0x1cd)](_0x134a13){const _0x3b3823=a11_0x25e851,_0xc91b9e=_0x134a13[_0x3b3823(0x1b9)][_0x3b3823(0x1c9)]('\x20');if(!_0xc91b9e)return _0x3b3823(0x1c4);return undefined;}async[a11_0x25e851(0x1d7)](_0xbd5878,_0x318599,_0x1ae8a1,_0x258bed,_0x5dee05){const _0x1a45cb=a11_0x25e851;for await(const _0x5013bf of _0xbd5878[_0x1a45cb(0x1ba)]['chat'](_0x318599,{'agentId':_0x1ae8a1,'chatId':_0x258bed})){if(_0x5013bf[_0x1a45cb(0x1f7)]===_0x1a45cb(0x1d3)){const _0x58d4d9=_0x5013bf['data'][_0x1a45cb(0x1b7)];saveLastChatId(_0x58d4d9),_0x5dee05&&console['error']('Chat\x20session:\x20'+_0x58d4d9);}else _0x5013bf[_0x1a45cb(0x1f7)]==='event'&&this['handleChatEvent'](_0x5013bf['data']);}}async['streamChatJsonl'](_0x3049bb,_0x582b75,_0x1f4656,_0x2dc1cc){const _0x1675a9=a11_0x25e851,_0x5402cd=_0x3049bb['context'][_0x1675a9(0x1d5)];let _0x40b3c4=![];for await(const _0x1bda8c of _0x3049bb[_0x1675a9(0x1ba)]['chat'](_0x582b75,{'agentId':_0x1f4656,'chatId':_0x2dc1cc})){if(_0x1bda8c[_0x1675a9(0x1f7)]===_0x1675a9(0x1d3)){const _0xc09d1=_0x1bda8c['data'];saveLastChatId(_0xc09d1[_0x1675a9(0x1b7)]);const _0x213824=_0xc09d1[_0x1675a9(0x1f5)]&&_0xc09d1[_0x1675a9(0x1d4)]?getLLMConversationUrl(_0x5402cd,_0xc09d1[_0x1675a9(0x1f5)],_0xc09d1['agentId'],_0xc09d1[_0x1675a9(0x1b7)]):undefined;console['log'](JSON[_0x1675a9(0x1c5)]({'type':_0x1675a9(0x1d3),'data':{'chatId':_0xc09d1['chatId'],'agentId':_0xc09d1['agentId'],'consoleUrl':_0x213824}})),_0x40b3c4=!![];}else{if(_0x1bda8c[_0x1675a9(0x1f7)]===_0x1675a9(0x1fa)){!_0x40b3c4&&_0x2dc1cc&&(console['log'](JSON[_0x1675a9(0x1c5)]({'type':'metadata','data':{'chatId':_0x2dc1cc}})),_0x40b3c4=!![]);const _0x5ed361=_0x1bda8c[_0x1675a9(0x1ef)];if('content'in _0x5ed361)console[_0x1675a9(0x1cf)](JSON['stringify']({'type':_0x1675a9(0x1fd),'data':{'content':_0x5ed361[_0x1675a9(0x1fd)]}}));else{if(_0x1675a9(0x1bc)in _0x5ed361){const _0xadc224=_0x5ed361[_0x1675a9(0x1bc)];console[_0x1675a9(0x1cf)](JSON['stringify']({'type':_0x1675a9(0x1bc),'data':{'id':_0xadc224['id'],'name':_0xadc224[_0x1675a9(0x1cc)],'target':_0xadc224[_0x1675a9(0x1f3)]?.['name']||_0xadc224[_0x1675a9(0x1da)]?.[_0x1675a9(0x1f1)]||_0xadc224[_0x1675a9(0x1eb)]?.[_0x1675a9(0x1f1)]||_0xadc224['targetFunction']}}));}else{if(_0x1675a9(0x1bd)in _0x5ed361)console[_0x1675a9(0x1cf)](JSON[_0x1675a9(0x1c5)]({'type':_0x1675a9(0x1b3),'data':{'id':_0x5ed361[_0x1675a9(0x1bd)]['id'],'name':_0x5ed361[_0x1675a9(0x1bd)][_0x1675a9(0x1cc)],'result':typeof _0x5ed361[_0x1675a9(0x1bd)][_0x1675a9(0x1fd)]===_0x1675a9(0x1f9)?_0x5ed361[_0x1675a9(0x1bd)][_0x1675a9(0x1fd)][_0x1675a9(0x1ea)](0x0,0x1f4):''}}));else'error'in _0x5ed361&&console[_0x1675a9(0x1cf)](JSON[_0x1675a9(0x1c5)]({'type':'error','data':{'error':_0x5ed361[_0x1675a9(0x1e1)]}}));}}}}}console[_0x1675a9(0x1cf)](JSON[_0x1675a9(0x1c5)]({'type':_0x1675a9(0x1b4)}));}async[a11_0x25e851(0x1ec)](_0x53d308){const _0x290f93=a11_0x25e851,{options:_0x2afed0,args:_0x4fe622,tdx:_0x5543d0}=_0x53d308,_0x2e5934=_0x4fe622[_0x290f93(0x1c9)]('\x20'),_0x3da45f=_0x2afed0,_0x27081f=_0x3da45f['agent'],_0x1c108a=_0x3da45f[_0x290f93(0x1e7)],_0x195035=_0x3da45f[_0x290f93(0x1dc)],_0x13f2f1=_0x3da45f['new'],_0x52ab27=_0x3da45f[_0x290f93(0x1b7)],_0x6f38d9=_0x3da45f[_0x290f93(0x1c3)];if(_0x13f2f1&&_0x52ab27)return console[_0x290f93(0x1e1)](_0x290f93(0x1e9)),0x1;try{let _0x1329cc,_0x5c0a94;if(_0x52ab27)_0x5c0a94=_0x52ab27;else!_0x13f2f1&&(_0x5c0a94=loadLastChatId(),_0x5c0a94&&_0x2afed0[_0x290f93(0x1f8)]&&console[_0x290f93(0x1e1)](_0x290f93(0x1c0)+_0x5c0a94));!_0x52ab27&&(_0x13f2f1||!_0x5c0a94)&&(_0x1329cc=await resolveAgentId(_0x5543d0,_0x27081f,_0x1c108a,_0x195035,_0x2afed0[_0x290f93(0x1f8)]));const _0x40d213=_0x6f38d9?(_0x5d6ffe,_0x187cae,_0x5e95fa)=>this[_0x290f93(0x1d1)](_0x5543d0,_0x5d6ffe,_0x187cae,_0x5e95fa):(_0x457f13,_0xcfc87a,_0x5ee9df)=>this[_0x290f93(0x1d7)](_0x5543d0,_0x457f13,_0xcfc87a,_0x5ee9df,_0x2afed0[_0x290f93(0x1f8)]);try{await _0x40d213(_0x2e5934,_0x1329cc,_0x5c0a94);}catch(_0x4b95ee){const _0x3dd76d=_0x4b95ee instanceof SDKError&&_0x4b95ee[_0x290f93(0x1c2)]===ErrorCode['CHAT_NOT_FOUND']||_0x4b95ee instanceof Error&&_0x4b95ee[_0x290f93(0x1be)][_0x290f93(0x1d0)](_0x290f93(0x1e2));if(_0x3dd76d&&_0x52ab27)return console['error'](_0x290f93(0x1ca)+_0x52ab27+'\x27\x20not\x20found'),0x1;if(_0x3dd76d)_0x2afed0[_0x290f93(0x1f8)]&&console['error']('Chat\x20session\x20not\x20found,\x20starting\x20new\x20chat...'),!_0x1329cc&&(_0x1329cc=await resolveAgentId(_0x5543d0,_0x27081f,_0x1c108a,_0x195035,_0x2afed0[_0x290f93(0x1f8)])),await _0x40d213(_0x2e5934,_0x1329cc,undefined);else throw _0x4b95ee;}return!_0x6f38d9&&console['log'](),0x0;}catch(_0x286ed4){return console[_0x290f93(0x1e1)](),handleSDKError(_0x286ed4,_0x2afed0),0x1;}}[a11_0x25e851(0x1ed)](_0x1c9aee){const _0xcac9c8=a11_0x25e851;if(_0xcac9c8(0x1fd)in _0x1c9aee)process['stdout']['write'](_0x1c9aee['content']);else _0xcac9c8(0x1e1)in _0x1c9aee&&console[_0xcac9c8(0x1e1)]('\x0aError:\x20'+_0x1c9aee['error']);}}export class ChatCreateCommand extends BaseCommand{[a11_0x25e851(0x1f1)]=a11_0x25e851(0x1d9);[a11_0x25e851(0x1dd)]='Create\x20a\x20new\x20chat\x20session';[a11_0x25e851(0x1cd)](_0x2c17d3){const _0x32a306=a11_0x25e851,_0x556c7b=_0x2c17d3[_0x32a306(0x1f0)],_0x55f7f5=_0x556c7b[_0x32a306(0x1fb)],_0xb470d=_0x556c7b[_0x32a306(0x1e7)];if(!_0x55f7f5&&!_0xb470d)return _0x32a306(0x1d6);return undefined;}async[a11_0x25e851(0x1ec)](_0x516d04){const _0x8bc052=a11_0x25e851,{options:_0x41bae1,tdx:_0x3d9e39}=_0x516d04,_0x19a481=_0x41bae1,_0x32ae5e=_0x19a481[_0x8bc052(0x1fb)],_0x462bff=_0x19a481[_0x8bc052(0x1e7)],_0x1b3521=_0x19a481[_0x8bc052(0x1dc)];try{const _0x3c91e2=await resolveAgentId(_0x3d9e39,_0x32ae5e,_0x462bff,_0x1b3521,_0x41bae1[_0x8bc052(0x1f8)]),_0x3a7ec3=await _0x3d9e39['llm'][_0x8bc052(0x1fe)](_0x3c91e2);return saveLastChatId(_0x3a7ec3['id']),console['log'](JSON['stringify']({'chatId':_0x3a7ec3['id'],'agentId':_0x3c91e2})),0x0;}catch(_0x3cef3b){return handleSDKError(_0x3cef3b,_0x41bae1),0x1;}}}function a11_0x428c(){const _0x57ae22=['Chat\x20with\x20an\x20LLM\x20agent\x20(simplified)','log','includes','streamChatJsonl','resolveAgentId','metadata','agentId','site','Agent\x20required.\x20Use\x20--agent\x20\x22Project/Agent\x22\x20or\x20set\x20agent\x20with\x20\x22tdx\x20use\x20agent\x22','streamChat','Resolving\x20agent\x20\x27','chat-create','targetAgent','926792MxsceB','llmProject','description','Using\x20cached\x20default\x20agent:\x20','911528LBxKXO','cause','error','404','1486885gYbYCO','1005429HvCdoW','resolveProjectId','--agent\x20flag','llmAgent','\x27...','Error:\x20Cannot\x20use\x20--new\x20and\x20--chat-id\x20together','slice','targetWebSearchTool','execute','handleChatEvent','Resolving\x20project\x20\x27','data','options','name','claude-4.5-haiku','targetKnowledgeBase','8bLGrZY','projectId','Using\x20agent\x20from\x20','type','verbose','string','event','agent','\x0aStack\x20trace:','content','startChat','tool_result','done','chat','getDefaultAgent','chatId','stack','args','llm','\x20\x20Cause:\x20','tool_call','tool','message','Getting\x20default\x20agent...','Continuing\x20chat:\x20','1480974evxreq','code','stream','Usage:\x20tdx\x20chat\x20\x22your\x20message\x22\x0a\x0aRun\x20\x27tdx\x20chat\x20--help\x27\x20for\x20more\x20options','stringify','325724zATyvs','185901mdxHad','getOrCreateDefaultAgent','join','Error:\x20Chat\x20session\x20\x27','Error:\x20','functionName','validate'];a11_0x428c=function(){return _0x57ae22;};return a11_0x428c();}
@@ -1,15 +1,72 @@
1
1
  import { BaseCommand, type CommandContext } from './command.js';
2
2
  import { type ReleaseChannel } from '../core/config.js';
3
+ /**
4
+ * Preserve Claude Code's native arguments without reordering or interpreting them.
5
+ * In particular, `--resume` accepts an optional value that must remain adjacent.
6
+ */
7
+ export declare function buildClaudeInvocationArgs(args: string[]): string[];
3
8
  /**
4
9
  * Build the Claude Code arguments for settings that apply only to this session.
5
10
  * The inline JSON avoids modifying any project-local Claude Code settings.
11
+ *
12
+ * Passing `envOverrides` embeds an `env` block. Claude Code merges the settings
13
+ * from `--settings` at precedence level 2 (above `.claude/settings.local.json`,
14
+ * `.claude/settings.json`, and `~/.claude/settings.json`), and its env-block
15
+ * values replace shell env at startup — so an entry set here wins over the
16
+ * same key in any user-editable settings file and over the spawned process env.
6
17
  */
7
- export declare function buildClaudeSettingsArgs(profile?: string): string[];
18
+ export declare function buildClaudeSettingsArgs(profile?: string, envOverrides?: Record<string, string>): string[];
8
19
  /**
9
20
  * Add TDX's session-scoped settings unless the user supplied their own settings.
10
21
  * Avoiding duplicate --settings flags leaves precedence explicit and predictable.
22
+ * When the user forwards their own `--settings`, tdx's `envOverrides` are also
23
+ * skipped; the spawned process env then carries the proxy vars as a fallback.
24
+ */
25
+ export declare function buildClaudeLaunchArgs(args: string[], profile?: string, envOverrides?: Record<string, string>): string[];
26
+ export declare function buildClaudeProxyEnvOverrides(port: number | undefined): Record<string, string>;
27
+ /** Env var Claude Code reads for the sub-agent model (alias or model id). */
28
+ export declare const SUBAGENT_MODEL_ENV = "CLAUDE_CODE_SUBAGENT_MODEL";
29
+ /** When '1', the sub-agent model wins over per-agent frontmatter and Explore's cap. */
30
+ export declare const SUBAGENT_MODEL_FORCE_ENV = "CLAUDE_CODE_SUBAGENT_MODEL_FORCE";
31
+ /**
32
+ * Find the session model Claude Code will run on: the last forwarded
33
+ * `--model <id>` / `--model=<id>`, then `ANTHROPIC_MODEL` from the launching env.
34
+ * Claude Code resolves its own default the same way, so this is the id the main
35
+ * conversation actually uses.
36
+ */
37
+ export declare function resolveMainModel(claudeArgs: string[], env: NodeJS.ProcessEnv): string | undefined;
38
+ export interface SubagentModelEnvOptions {
39
+ /** Value of `--subagent-model`; undefined when the option was omitted. */
40
+ subagentModel?: string;
41
+ /** Claude Code arguments forwarded unchanged (searched for `--model`). */
42
+ claudeArgs: string[];
43
+ /** The launching environment. */
44
+ env: NodeJS.ProcessEnv;
45
+ /** `--no-proxy` session: the implicit default is skipped. */
46
+ noProxy: boolean;
47
+ }
48
+ /**
49
+ * Translate `--subagent-model` into Claude Code's sub-agent env vars.
50
+ *
51
+ * Claude Code has no CLI flag for this; `CLAUDE_CODE_SUBAGENT_MODEL` plus
52
+ * `CLAUDE_CODE_SUBAGENT_MODEL_FORCE=1` (Claude Code >= 2.1.257) is the only knob
53
+ * that also moves the built-in Explore/Plan agents off their Opus-tier cap.
54
+ * `_FORCE=1` alone is not enough — Explore keeps its cap unless a concrete model
55
+ * id is pinned alongside it (see plans/2026-09-12-claude-subagent-model.md).
56
+ *
57
+ * - `inherit` (default): pin every sub-agent to the main conversation's model
58
+ * when one was chosen via `--model` / `ANTHROPIC_MODEL`. When the option is
59
+ * omitted and no model was chosen, emit nothing so today's routing is kept.
60
+ * - `auto`: unset both vars so Claude Code's own per-agent routing applies.
61
+ * - anything else: pin every sub-agent to that model id or alias, verbatim.
62
+ *
63
+ * When the option is omitted, a `CLAUDE_CODE_SUBAGENT_MODEL*` already exported
64
+ * in the user's shell is left untouched; tdx is a launcher, not the owner of the
65
+ * user's environment.
66
+ *
67
+ * @returns Env entries to apply; an `undefined` value means "unset this var".
11
68
  */
12
- export declare function buildClaudeLaunchArgs(args: string[], profile?: string): string[];
69
+ export declare function buildSubagentModelEnv(options: SubagentModelEnvOptions): Record<string, string | undefined>;
13
70
  /**
14
71
  * Parse semantic version string (e.g., "2.0.20" or "v2.0.20")
15
72
  * @param version - Version string to parse
@@ -100,7 +157,7 @@ export declare function planClaudeSetup(skillsRepoUrl: string, releaseChannel: R
100
157
  */
101
158
  export declare class ClaudeCommand extends BaseCommand {
102
159
  readonly name = "claude";
103
- readonly description = "Launch Claude Code with integrated LLM proxy";
160
+ readonly description = "Launch Claude Code with Treasure AI as the backend";
104
161
  private passThroughServer?;
105
162
  private logger?;
106
163
  private port?;
@@ -1 +1 @@
1
- {"version":3,"file":"claude-command.d.ts","sourceRoot":"","sources":["../../src/commands/claude-command.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAShE,OAAO,EAA8C,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAkBpG;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAUlE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAMhF;AA0BD;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,GACd;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAQxD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EACnD,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClD,MAAM,CAIR;AAiLD,4DAA4D;AAC5D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,0EAA0E;AAC1E,eAAO,MAAM,cAAc,EAAE,aAAa,EAEzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,+CAA+C,CAAC;AAElF;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAO3C;AAyGD,kDAAkD;AAClD,eAAO,MAAM,iBAAiB,UAAkD,CAAC;AAEjF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,QAA2B,CAAC;AAiFrD,0DAA0D;AAC1D,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAkBD,2EAA2E;AAC3E,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,GAAG,IAAI,CAS/F;AAYD,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAavE;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,+EAA+E;IAC/E,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,2EAA2E;IAC3E,WAAW,EAAE,OAAO,CAAC;IACrB,wCAAwC;IACxC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,wDAAwD;IACxD,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,uEAAuE;AACvE,wBAAgB,YAAY,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAO3D;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,OAAO,GACb,eAAe,CA0CjB;AA6BD;;;GAGG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAC5C,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,WAAW,kDAAkD;IAEtE,OAAO,CAAC,iBAAiB,CAAC,CAAyB;IACnD,OAAO,CAAC,MAAM,CAAC,CAAY;IAC3B,OAAO,CAAC,IAAI,CAAC,CAAS;IAEtB;;;;;;;;;;;;OAYG;YACW,sBAAsB;IAsF9B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;CAoMxD"}
1
+ {"version":3,"file":"claude-command.d.ts","sourceRoot":"","sources":["../../src/commands/claude-command.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAShE,OAAO,EAA8C,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAkBpG;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAElE;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,CAAC,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC,MAAM,EAAE,CAWV;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,CAAC,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC,MAAM,EAAE,CAMV;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAa7F;AAED,6EAA6E;AAC7E,eAAO,MAAM,kBAAkB,+BAA+B,CAAC;AAC/D,uFAAuF;AACvF,eAAO,MAAM,wBAAwB,qCAAqC,CAAC;AAE3E;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,GAAG,SAAS,CAajG;AAED,MAAM,WAAW,uBAAuB;IACtC,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,iCAAiC;IACjC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,6DAA6D;IAC7D,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,uBAAuB,GAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAiCpC;AA0BD;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,GACd;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAQxD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EACnD,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClD,MAAM,CAIR;AAiLD,4DAA4D;AAC5D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,0EAA0E;AAC1E,eAAO,MAAM,cAAc,EAAE,aAAa,EAEzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,+CAA+C,CAAC;AAElF;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAO3C;AAyGD,kDAAkD;AAClD,eAAO,MAAM,iBAAiB,UAAkD,CAAC;AAEjF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,QAA2B,CAAC;AAiFrD,0DAA0D;AAC1D,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAkBD,2EAA2E;AAC3E,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,GAAG,IAAI,CAS/F;AAYD,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAavE;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,+EAA+E;IAC/E,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,2EAA2E;IAC3E,WAAW,EAAE,OAAO,CAAC;IACrB,wCAAwC;IACxC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,wDAAwD;IACxD,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,uEAAuE;AACvE,wBAAgB,YAAY,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAO3D;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,OAAO,GACb,eAAe,CA0CjB;AA6BD;;;GAGG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAC5C,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,WAAW,wDAAwD;IAE5E,OAAO,CAAC,iBAAiB,CAAC,CAAyB;IACnD,OAAO,CAAC,MAAM,CAAC,CAAY;IAC3B,OAAO,CAAC,IAAI,CAAC,CAAS;IAEtB;;;;;;;;;;;;OAYG;YACW,sBAAsB;IAsF9B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;CAgNxD"}
@@ -1 +1 @@
1
- const a11_0x44257a=a11_0x1930;function a11_0x1930(_0x291aee,_0x22db7c){_0x291aee=_0x291aee-0x196;const _0x44fa37=a11_0x44fa();let _0x19305=_0x44fa37[_0x291aee];return _0x19305;}(function(_0x26c1a4,_0x5c47c6){const _0x43bb4f=a11_0x1930,_0x49ae19=_0x26c1a4();while(!![]){try{const _0x34bc1a=parseInt(_0x43bb4f(0x1ec))/0x1+-parseInt(_0x43bb4f(0x198))/0x2*(-parseInt(_0x43bb4f(0x1cf))/0x3)+parseInt(_0x43bb4f(0x19a))/0x4*(-parseInt(_0x43bb4f(0x196))/0x5)+parseInt(_0x43bb4f(0x1e0))/0x6+-parseInt(_0x43bb4f(0x1f7))/0x7+parseInt(_0x43bb4f(0x1c6))/0x8*(parseInt(_0x43bb4f(0x1dd))/0x9)+parseInt(_0x43bb4f(0x1c0))/0xa*(-parseInt(_0x43bb4f(0x213))/0xb);if(_0x34bc1a===_0x5c47c6)break;else _0x49ae19['push'](_0x49ae19['shift']());}catch(_0x4656b7){_0x49ae19['push'](_0x49ae19['shift']());}}}(a11_0x44fa,0x9533e));import{execFile}from'node:child_process';import{existsSync}from'node:fs';import{join}from'node:path';import{promisify}from'node:util';import a11_0x5f15ec from'chalk';import{BaseCommand}from'./command.js';import{PassThroughProxyServer}from'../proxy/passthrough-server.js';import{TDXLogger}from'../utils/tdx-logger.js';import{getEndpoint,getConsoleUrl}from'../sdk/client/endpoints.js';import{getOAuthTokens}from'../core/oauth-keychain.js';import{findExecutable,crossSpawn}from'../utils/process.js';import{SDKError,ErrorCode,errorContains}from'../sdk/errors.js';import{createCommandSpinner}from'../utils/spinner.js';import{writeCachedAccountInfo,loadReleaseChannel}from'../core/config.js';import{getVersion}from'../core/version.js';import{resolveReleaseTag}from'../utils/github-releases.js';import{createGlobalCache}from'../utils/global-cache.js';import{findMcpServerUrl,getClaudeConfigDir,isPluginInstalled,normalizeRepoUrl,readMarketplaceSourceUrl}from'../utils/claude-code-state.js';const execFileAsync=promisify(execFile),MIN_CLAUDE_VERSION=a11_0x44257a(0x22b);export function buildClaudeSettingsArgs(_0x282ed7){const _0x431f5f=a11_0x44257a;return[_0x431f5f(0x253),JSON['stringify']({'statusLine':{'type':'command','command':_0x282ed7?_0x431f5f(0x205)+_0x282ed7+_0x431f5f(0x23f):_0x431f5f(0x231)}})];}export function buildClaudeLaunchArgs(_0x38ade8,_0x192439){const _0x3c1e27=a11_0x44257a;if(_0x38ade8[_0x3c1e27(0x208)]('--settings')||_0x38ade8[_0x3c1e27(0x219)](_0x4bbd25=>_0x4bbd25[_0x3c1e27(0x243)](_0x3c1e27(0x1b3))))return[..._0x38ade8];return[..._0x38ade8,...buildClaudeSettingsArgs(_0x192439)];}function handleInstallationError(_0x5f09dc,_0x30476f,_0x45b9e0,_0x2609ed){const _0x67026b=a11_0x44257a;errorContains(_0x5f09dc,_0x67026b(0x197),_0x67026b(0x20b),'already\x20configured')?(_0x45b9e0[_0x67026b(0x203)]='✓\x20'+_0x30476f+_0x67026b(0x214),_0x2609ed?.[_0x67026b(0x1f0)](_0x30476f+_0x67026b(0x214)),_0x5f09dc instanceof SDKError&&_0x5f09dc[_0x67026b(0x1b4)]&&_0x2609ed?.['debug']('Command\x20output:\x20'+_0x5f09dc[_0x67026b(0x1b4)][_0x67026b(0x1cc)])):(_0x45b9e0[_0x67026b(0x1dc)](_0x67026b(0x227)+_0x30476f),_0x2609ed?.[_0x67026b(0x1e3)](_0x30476f+_0x67026b(0x222),_0x5f09dc));}export function parseVersion(_0x5e552c){const _0x242ea2=a11_0x44257a,_0x45ecbb=_0x5e552c[_0x242ea2(0x1bd)]()[_0x242ea2(0x20d)](/^v?(\d+)\.(\d+)\.(\d+)/);if(!_0x45ecbb)return null;return{'major':parseInt(_0x45ecbb[0x1],0xa),'minor':parseInt(_0x45ecbb[0x2],0xa),'patch':parseInt(_0x45ecbb[0x3],0xa)};}export function compareVersions(_0x13a55d,_0x591f5e){const _0x1c6a55=a11_0x44257a;if(_0x13a55d[_0x1c6a55(0x21b)]!==_0x591f5e[_0x1c6a55(0x21b)])return _0x13a55d[_0x1c6a55(0x21b)]-_0x591f5e[_0x1c6a55(0x21b)];if(_0x13a55d[_0x1c6a55(0x241)]!==_0x591f5e[_0x1c6a55(0x241)])return _0x13a55d[_0x1c6a55(0x241)]-_0x591f5e['minor'];return _0x13a55d[_0x1c6a55(0x24f)]-_0x591f5e[_0x1c6a55(0x24f)];}async function checkClaudeVersion(_0x379044,_0x2cdc75){const _0x55656f=a11_0x44257a;_0x2cdc75?.[_0x55656f(0x225)](_0x55656f(0x22c)+_0x379044+')');const _0x4add0a=await executeClaudeCommand(['--version'],undefined,_0x2cdc75),_0x1aea75=parseVersion(_0x4add0a);if(!_0x1aea75){_0x2cdc75?.[_0x55656f(0x1dc)]('Could\x20not\x20parse\x20Claude\x20Code\x20version\x20from:\x20'+_0x4add0a);return;}const _0x2bac95=_0x1aea75[_0x55656f(0x21b)]+'.'+_0x1aea75[_0x55656f(0x241)]+'.'+_0x1aea75[_0x55656f(0x24f)],_0x110aa3=parseVersion(_0x379044);if(!_0x110aa3){_0x2cdc75?.[_0x55656f(0x1dc)](_0x55656f(0x1f6)+_0x379044);return;}if(compareVersions(_0x1aea75,_0x110aa3)<0x0){_0x2cdc75?.[_0x55656f(0x1e3)]('Claude\x20Code\x20version\x20'+_0x2bac95+_0x55656f(0x1b2)+_0x379044+')');throw new SDKError(ErrorCode[_0x55656f(0x1eb)],'Claude\x20Code\x20version\x20'+_0x2bac95+_0x55656f(0x21a)+_0x379044+_0x55656f(0x200),undefined,{'helpText':_0x55656f(0x19f)});}_0x2cdc75?.[_0x55656f(0x225)]('Claude\x20Code\x20version\x20'+_0x2bac95+_0x55656f(0x1a2));}async function executeClaudeCommand(_0x1cdf52,_0xfaa027,_0x45adee){const _0x54c894=a11_0x44257a;return _0x45adee?.[_0x54c894(0x1f0)](_0x54c894(0x226)+_0x1cdf52[_0x54c894(0x1a3)]('\x20')),new Promise((_0x28bdb2,_0x552e5f)=>{const _0x168c95=_0x54c894,_0x4ca2a4=crossSpawn(_0x168c95(0x217),_0x1cdf52,{'stdio':_0x168c95(0x1b7)});let _0x24f47e='',_0x4e0895='';_0x4ca2a4['stdout']?.['on']('data',_0x50a62e=>{_0x24f47e+=_0x50a62e['toString']();}),_0x4ca2a4[_0x168c95(0x1b9)]?.['on'](_0x168c95(0x247),_0x5499bd=>{const _0x38e0c3=_0x168c95;_0x4e0895+=_0x5499bd[_0x38e0c3(0x1f3)]();}),_0x4ca2a4['on'](_0x168c95(0x1e3),_0x1ff822=>{const _0x597b87=_0x168c95;_0x1ff822['code']==='ENOENT'?(_0x45adee?.[_0x597b87(0x1e3)]('Claude\x20Code\x20CLI\x20not\x20found'),_0x552e5f(new SDKError(ErrorCode[_0x597b87(0x228)],_0x597b87(0x1d4),_0x1ff822,{'helpText':_0x597b87(0x1d5)}))):(_0x45adee?.['error'](_0x597b87(0x23b)+_0x1ff822[_0x597b87(0x1cc)]),_0x552e5f(new SDKError(ErrorCode['INTERNAL'],'Failed\x20to\x20spawn\x20claude\x20command:\x20'+_0x1ff822[_0x597b87(0x1cc)],_0x1ff822)));}),_0x4ca2a4['on']('exit',_0x46e2c1=>{const _0x3605ab=_0x168c95;if(_0x46e2c1===0x0)_0x28bdb2(_0x24f47e);else _0xfaa027?(_0x45adee?.[_0x3605ab(0x1e3)](_0x3605ab(0x221)+_0x46e2c1+_0x3605ab(0x232)+_0x1cdf52[_0x3605ab(0x1a3)]('\x20')),_0x552e5f(new SDKError(ErrorCode[_0x3605ab(0x1c5)],_0xfaa027,new Error(_0x4e0895)))):_0x28bdb2('');});});}async function ensureMcpServer(_0x56cb09,_0x593b41,_0x2a3911,_0x487f49,_0x544f06){const _0x58e8f3=a11_0x44257a;_0x487f49[_0x58e8f3(0x203)]=_0x58e8f3(0x210)+_0x56cb09+'\x27...';const _0x5241cc=await executeClaudeCommand(['mcp','get',_0x56cb09],undefined,_0x544f06);if(_0x5241cc){const _0x3778be=_0x5241cc[_0x58e8f3(0x20d)](/URL:\s*(\S+)/);if(_0x3778be&&_0x3778be[0x1]===_0x593b41){_0x487f49[_0x58e8f3(0x203)]=_0x58e8f3(0x21d)+_0x56cb09+_0x58e8f3(0x1ed);return;}else{if(_0x3778be){const _0x5494a5=_0x3778be[0x1];_0x544f06?.['info'](_0x58e8f3(0x1ab)+_0x56cb09+_0x58e8f3(0x1ad)+_0x5494a5+_0x58e8f3(0x245)+_0x593b41),_0x487f49[_0x58e8f3(0x203)]=_0x58e8f3(0x1a7)+_0x56cb09+_0x58e8f3(0x20c),await executeClaudeCommand([_0x58e8f3(0x1e4),_0x58e8f3(0x23e),_0x56cb09],_0x58e8f3(0x1bb)+_0x56cb09+'\x27',_0x544f06);try{await executeClaudeCommand([_0x58e8f3(0x1e4),_0x58e8f3(0x218),_0x56cb09,_0x593b41,_0x58e8f3(0x237),_0x2a3911],_0x58e8f3(0x1ae)+_0x56cb09+'\x27',_0x544f06),_0x487f49[_0x58e8f3(0x203)]=_0x58e8f3(0x21d)+_0x56cb09+_0x58e8f3(0x254);return;}catch(_0x2cc1d2){_0x544f06?.[_0x58e8f3(0x1e3)](_0x58e8f3(0x242)+_0x5494a5),await executeClaudeCommand([_0x58e8f3(0x1e4),_0x58e8f3(0x218),_0x56cb09,_0x5494a5,_0x58e8f3(0x237),_0x2a3911],'Failed\x20to\x20restore\x20MCP\x20server\x20\x27'+_0x56cb09+_0x58e8f3(0x1da)+_0x5494a5,_0x544f06)['catch'](_0xe50eab=>_0x544f06?.[_0x58e8f3(0x1e3)](_0x58e8f3(0x1df)+_0xe50eab));throw _0x2cc1d2;}}}}await executeClaudeCommand(['mcp',_0x58e8f3(0x218),_0x56cb09,_0x593b41,_0x58e8f3(0x237),_0x2a3911],_0x58e8f3(0x1ae)+_0x56cb09+'\x27',_0x544f06),_0x487f49['text']=_0x58e8f3(0x21d)+_0x56cb09+_0x58e8f3(0x1ed);}const TD_DOCS_MCP_URL='https://docs.treasure.ai/mcp';export const TD_MCP_SERVERS=[{'name':a11_0x44257a(0x1a0),'url':TD_DOCS_MCP_URL,'transport':a11_0x44257a(0x1bc)}];export const DEFAULT_TD_SKILLS_URL=a11_0x44257a(0x1c8);export function getTdSkillsRepoUrl(){const _0x3504dd=process.env.TDX_TD_SKILLS_REPO;if(_0x3504dd)return _0x3504dd;return DEFAULT_TD_SKILLS_URL;}async function removeMarketplace(_0x387ee4,_0x441101){const _0x251009=a11_0x44257a;try{const _0x3331c2=await executeClaudeCommand(['plugin',_0x251009(0x1a8),'list'],_0x251009(0x1ee),_0x441101);if(!_0x3331c2['includes'](_0x387ee4)){_0x441101?.[_0x251009(0x225)](_0x251009(0x22e)+_0x387ee4+_0x251009(0x201));return;}await executeClaudeCommand([_0x251009(0x1d2),_0x251009(0x1a8),'remove',_0x387ee4],'Failed\x20to\x20remove\x20marketplace\x20\x27'+_0x387ee4+'\x27',_0x441101),_0x441101?.[_0x251009(0x1f0)]('Marketplace\x20\x27'+_0x387ee4+'\x27\x20removed');}catch(_0x588635){_0x441101?.[_0x251009(0x1dc)](_0x251009(0x22d)+_0x387ee4+_0x251009(0x1fe)+_0x588635);}}async function restoreDefaultTdSkillsMarketplace(_0x4bb844){const _0x34316e=a11_0x44257a;try{await removeMarketplace('td-skills',_0x4bb844),await executeClaudeCommand([_0x34316e(0x1d2),_0x34316e(0x1a8),_0x34316e(0x218),DEFAULT_TD_SKILLS_URL],undefined,_0x4bb844),_0x4bb844?.['info']('Restored\x20default\x20td-skills\x20marketplace');}catch{}}async function ensureMarketplace(_0x7248f7,_0x1fb812,_0x5c24d6,_0x4a8bcc){const _0x29d84a=a11_0x44257a;_0x5c24d6[_0x29d84a(0x203)]='Configuring\x20marketplace\x20\x27'+_0x7248f7+_0x29d84a(0x1af),await executeClaudeCommand([_0x29d84a(0x1d2),_0x29d84a(0x1a8),_0x29d84a(0x218),_0x1fb812],_0x29d84a(0x1c7)+_0x7248f7+'\x27',_0x4a8bcc),_0x5c24d6[_0x29d84a(0x203)]=_0x29d84a(0x1cd)+_0x7248f7+_0x29d84a(0x1ed);}async function updateMarketplace(_0x370334,_0x4cf2cb,_0xf03a53){const _0x59fb24=a11_0x44257a;_0x4cf2cb[_0x59fb24(0x203)]=_0x59fb24(0x1b8)+_0x370334+_0x59fb24(0x1af),await executeClaudeCommand([_0x59fb24(0x1d2),_0x59fb24(0x1a8),_0x59fb24(0x238),_0x370334],_0x59fb24(0x1a9)+_0x370334+'\x27',_0xf03a53),_0x4cf2cb[_0x59fb24(0x203)]=_0x59fb24(0x1cd)+_0x370334+'\x27\x20updated';}async function ensurePlugin(_0x7fdfe8,_0x16de85,_0x160930,_0x49c8f3){const _0x384bdf=a11_0x44257a;_0x160930[_0x384bdf(0x203)]=_0x384bdf(0x1c9)+_0x7fdfe8+_0x384bdf(0x1af),await executeClaudeCommand([_0x384bdf(0x1d2),_0x384bdf(0x244),_0x7fdfe8+'@'+_0x16de85],_0x384bdf(0x21c)+_0x7fdfe8+'\x27',_0x49c8f3),_0x160930[_0x384bdf(0x203)]=_0x384bdf(0x22f)+_0x7fdfe8+_0x384bdf(0x236);}export const TD_SKILLS_PLUGINS=['sql-skills',a11_0x44257a(0x1c1),'tdx-skills'];export const SETUP_TTL_MS=0xe*0x18*0x3c*0x3c*0x3e8;function isWithinTtl(_0x28efc1){const _0x3b334c=a11_0x44257a;if(!_0x28efc1)return![];const _0x1d475b=Date[_0x3b334c(0x20a)]()-new Date(_0x28efc1)[_0x3b334c(0x21e)]();return Number[_0x3b334c(0x1cb)](_0x1d475b)&&_0x1d475b>=0x0&&_0x1d475b<=SETUP_TTL_MS;}function a11_0x44fa(){const _0x23a200=['passThroughServer','\x20is\x20too\x20old\x20(minimum:\x20','--settings=','cause','refresh_token','apikey','pipe','Updating\x20marketplace\x20\x27','stderr','http://127.0.0.1:','Failed\x20to\x20remove\x20outdated\x20MCP\x20server\x20\x27','http','trim','fetch','unshift','84210DndKqd','workflow-skills','Setup\x20failed','slice','Launch\x20Claude\x20Code\x20with\x20integrated\x20LLM\x20proxy','INSTALLATION_FAILED','16NhbQGW','Failed\x20to\x20configure\x20marketplace\x20\x27','https://github.com/treasure-data/td-skills','Installing\x20plugin\x20\x27','localeCompare','isFinite','message','✓\x20Marketplace\x20\x27','length','147NMDonm','false','url','plugin','profile','Claude\x20Code\x20CLI\x20not\x20found','Please\x20install\x20Claude\x20Code\x20from\x20https://claude.com/claude-code','user','oauth','pluginIds','read','\x27\x20to\x20','td-skills','warn','2942019ZVLiqv','✓\x20Claude\x20Code\x20version\x20OK','Restore\x20also\x20failed:\x20','5478576TzjczS','init','✓\x20td-skills\x20checked\x20out\x20at\x20','error','mcp','logLevel','start','✓\x20TD\x20LLM\x20pass-through\x20proxy\x20running\x20on\x20port\x20','cwds','✓\x20Logs\x20saved\x20to\x20','verbose','CLAUDE_CODE_UNSUPPORTED_VERSION','1068200Mharre','\x27\x20configured','Failed\x20to\x20list\x20marketplaces','execute','info','context','td-skills\x20marketplace\x20dir\x20not\x20found,\x20skipping\x20release\x20tag\x20checkout','toString','resume','stop','Invalid\x20minimum\x20version\x20format:\x20','1179738EROtUs','description','log','Authentication\x20required\x20for\x20TD\x20LLM\x20Proxy.\x20Run:\x20tdx\x20auth\x20setup','continue','name','site','\x27:\x20','marketplaces','\x20or\x20later.','\x27\x20not\x20found\x20in\x20list,\x20skipping\x20removal','✓\x20TD\x20LLM\x20proxy\x20settings\x20prepared\x20for\x20this\x20session','text','apiKey','tdx\x20--profile\x20','getLogPath','checkout','includes','Checking\x20out\x20td-skills\x20','now','already\x20installed','\x27\x20URL...','match','reset','transport','Configuring\x20MCP\x20server\x20\x27','fromEntries','toISOString','2123WOkYZW','\x20already\x20configured','cwd','entries','claude','add','some','\x20does\x20not\x20support\x20required\x20features.\x20Please\x20upgrade\x20to\x20version\x20','major','Failed\x20to\x20install\x20plugin\x20\x27','✓\x20MCP\x20server\x20\x27','getTime','llm-proxy','CLAUDE_CODE_USE_BEDROCK','Command\x20failed\x20(exit\x20','\x20configuration\x20failed','account_id','port','debug','Executing:\x20claude\x20','Warning:\x20Failed\x20to\x20configure\x20','CLAUDE_CODE_NOT_FOUND','--hard','origin/main','2.0.20','Checking\x20Claude\x20Code\x20version\x20(minimum\x20required:\x20','Failed\x20to\x20remove\x20marketplace\x20\x27','Marketplace\x20\x27','✓\x20Plugin\x20\x27','git','tdx\x20claude\x20statusline','):\x20claude\x20','✓\x20TD\x20LLM\x20pass-through\x20proxy\x20server\x20stopped','missingPlugins','...','\x27\x20installed','--transport','update','filter','claude_setup.json','Command\x20spawn\x20error:\x20','Claude\x20setup\x20plan:\x20','tdx-cli','remove','\x20claude\x20statusline','close','minor','Failed\x20to\x20add\x20new\x20URL,\x20restoring\x20previous\x20URL:\x20','startsWith','install','\x20→\x20','tdxVersion','data','logger','origin','sort','td-skills\x20checked\x20out\x20at\x20tag\x20','Checking\x20Claude\x20Code\x20version...','claude-command','exit','patch','repoUrl','refreshedAt','Failed\x20to\x20apply\x20td-skills\x20release\x20channel:\x20','--settings','\x27\x20updated','map','6250XPKqUB','already\x20exists','18514XFgmDr','proxy','2188CdSfNW','Claude\x20Code\x20version\x20check\x20failed','ANTHROPIC_BASE_URL','ANTHROPIC_AUTH_TOKEN','refresh','Download\x20the\x20latest\x20version\x20from\x20https://claude.com/claude-code','td-docs','TDX_PROFILE','\x20meets\x20minimum\x20requirement','join','plugins','main','✓\x20Logging\x20to\x20','Updating\x20MCP\x20server\x20\x27','marketplace','Failed\x20to\x20update\x20marketplace\x20\x27','td-skills\x20Plugins','MCP\x20server\x20\x27','fail','\x27\x20URL\x20changed:\x20','Failed\x20to\x20configure\x20MCP\x20server\x20\x27','\x27...','red'];a11_0x44fa=function(){return _0x23a200;};return a11_0x44fa();}const setupCache=createGlobalCache(a11_0x44257a(0x23a),a11_0x44257a(0x24d));function updateSetupCache(_0xdef6ce){const _0x55aaf3=a11_0x44257a;try{setupCache['write']({...setupCache[_0x55aaf3(0x1d9)](),..._0xdef6ce});}catch{}}function isTdxUpgradeSinceSetup(){const _0x490b89=a11_0x44257a;return setupCache[_0x490b89(0x1d9)]()?.[_0x490b89(0x246)]!==getVersion();}export function recordSetupVersion(){updateSetupCache({'tdxVersion':getVersion()});}function isSkillsRefreshDue(_0x453987,_0x2983d7){const _0x5ddbf6=a11_0x44257a,_0x15939d=setupCache[_0x5ddbf6(0x1d9)]()?.['skills'];if(!_0x15939d)return!![];if(_0x15939d[_0x5ddbf6(0x250)]!==_0x453987||_0x15939d['releaseChannel']!==_0x2983d7||_0x15939d[_0x5ddbf6(0x1d8)]?.[_0x5ddbf6(0x1a3)](',')!==TD_SKILLS_PLUGINS['join'](','))return!![];return!isWithinTtl(_0x15939d[_0x5ddbf6(0x251)]);}export function recordSkillsRefresh(_0x36806b,_0xc6b42c){const _0x494786=a11_0x44257a;updateSetupCache({'skills':{'refreshedAt':new Date()[_0x494786(0x212)](),'repoUrl':_0x36806b,'releaseChannel':_0xc6b42c,'pluginIds':TD_SKILLS_PLUGINS}});}const MCP_SETUP_MAX_CWDS=0x64;function wasMcpConfiguredRecently(_0x375cb0,_0x5853e2){const _0x2f8dfa=a11_0x44257a,_0xd0f402=setupCache['read']()?.['mcp']?.[_0x375cb0[_0x2f8dfa(0x1fc)]];if(_0xd0f402?.[_0x2f8dfa(0x1d1)]!==_0x375cb0[_0x2f8dfa(0x1d1)])return![];return isWithinTtl(_0xd0f402[_0x2f8dfa(0x1e8)]?.[_0x5853e2]);}export function recordMcpSetup(_0x43e07e,_0x3369c8){const _0x40edde=a11_0x44257a,_0x5e1e03=setupCache['read']()?.[_0x40edde(0x1e4)]??{},_0x30629c=_0x5e1e03[_0x43e07e['name']],_0x5bcf6e=_0x30629c?.[_0x40edde(0x1d1)]===_0x43e07e[_0x40edde(0x1d1)]?_0x30629c[_0x40edde(0x1e8)]:{},_0x2d3462=Object[_0x40edde(0x216)]({..._0x5bcf6e,[_0x3369c8]:new Date()[_0x40edde(0x212)]()})[_0x40edde(0x239)](([,_0x3bca5f])=>isWithinTtl(_0x3bca5f))[_0x40edde(0x24a)](([,_0x33a3f6],[,_0x3dce86])=>_0x3dce86[_0x40edde(0x1ca)](_0x33a3f6))[_0x40edde(0x1c3)](0x0,MCP_SETUP_MAX_CWDS);updateSetupCache({'mcp':{..._0x5e1e03,[_0x43e07e['name']]:{'url':_0x43e07e[_0x40edde(0x1d1)],'cwds':Object[_0x40edde(0x211)](_0x2d3462)}}});}export function hasSetupWork(_0x5d1017){const _0x5cb869=a11_0x44257a;return _0x5d1017['missingMcpServers'][_0x5cb869(0x1ce)]>0x0||_0x5d1017[_0x5cb869(0x1a8)]||_0x5d1017[_0x5cb869(0x234)]['length']>0x0||_0x5d1017[_0x5cb869(0x19e)];}export function planClaudeSetup(_0x1bb183,_0x5d65fc,_0x18a109){const _0x1f0545=a11_0x44257a;if(_0x18a109||isTdxUpgradeSinceSetup())return{'missingMcpServers':TD_MCP_SERVERS[_0x1f0545(0x255)](_0x4e94ff=>_0x4e94ff['name']),'marketplace':!![],'missingPlugins':[...TD_SKILLS_PLUGINS],'refresh':!![]};const _0x5e584c=readMarketplaceSourceUrl(_0x1f0545(0x1db))!==normalizeRepoUrl(_0x1bb183),_0xa1e59e=_0x5e584c?[...TD_SKILLS_PLUGINS]:TD_SKILLS_PLUGINS[_0x1f0545(0x239)](_0x8a792=>!isPluginInstalled(_0x8a792,_0x1f0545(0x1db))),_0x89d235=_0x1bb183!==DEFAULT_TD_SKILLS_URL,_0x13bae8=process[_0x1f0545(0x215)](),_0x3ff0b4=TD_MCP_SERVERS[_0x1f0545(0x239)](_0x4a4986=>findMcpServerUrl(_0x4a4986[_0x1f0545(0x1fc)],_0x13bae8)!==_0x4a4986[_0x1f0545(0x1d1)]&&!wasMcpConfiguredRecently(_0x4a4986,_0x13bae8))['map'](_0x3657cd=>_0x3657cd['name']);return{'missingMcpServers':_0x3ff0b4,'marketplace':_0x5e584c,'missingPlugins':_0xa1e59e,'refresh':_0x5e584c||_0xa1e59e[_0x1f0545(0x1ce)]>0x0||_0x89d235||isSkillsRefreshDue(_0x1bb183,_0x5d65fc)};}async function checkoutReleaseTag(_0x5150d5,_0x3aeb0e,_0x39a82c){const _0x2b3a8d=a11_0x44257a,_0x5ba7f1=join(getClaudeConfigDir(),_0x2b3a8d(0x1a4),_0x2b3a8d(0x1ff),_0x2b3a8d(0x1db));if(!existsSync(_0x5ba7f1)){_0x39a82c?.[_0x2b3a8d(0x225)](_0x2b3a8d(0x1f2));return;}_0x3aeb0e['text']=_0x2b3a8d(0x209)+_0x5150d5+_0x2b3a8d(0x235),await execFileAsync(_0x2b3a8d(0x230),[_0x2b3a8d(0x1be),_0x2b3a8d(0x249),'--tags','--force'],{'cwd':_0x5ba7f1});try{await execFileAsync('git',[_0x2b3a8d(0x207),_0x2b3a8d(0x1a5)],{'cwd':_0x5ba7f1});}catch{await execFileAsync(_0x2b3a8d(0x230),[_0x2b3a8d(0x207),'-b',_0x2b3a8d(0x1a5),_0x2b3a8d(0x22a)],{'cwd':_0x5ba7f1});}await execFileAsync(_0x2b3a8d(0x230),[_0x2b3a8d(0x20e),_0x2b3a8d(0x229),_0x5150d5],{'cwd':_0x5ba7f1}),_0x3aeb0e[_0x2b3a8d(0x203)]=_0x2b3a8d(0x1e2)+_0x5150d5,_0x39a82c?.['info'](_0x2b3a8d(0x24b)+_0x5150d5);}export class ClaudeCommand extends BaseCommand{['name']=a11_0x44257a(0x217);[a11_0x44257a(0x1f8)]=a11_0x44257a(0x1c4);[a11_0x44257a(0x1b1)];[a11_0x44257a(0x248)];[a11_0x44257a(0x224)];async['setUpClaudeIntegration'](_0x5162ab,_0x591436,_0x10061d){const _0x2944bd=a11_0x44257a,_0x49c49e=loadReleaseChannel(),_0x25b806=planClaudeSetup(_0x5162ab,_0x49c49e,_0x591436);this['logger']?.[_0x2944bd(0x225)](_0x2944bd(0x23c)+JSON['stringify'](_0x25b806));if(!hasSetupWork(_0x25b806))return;try{_0x10061d[_0x2944bd(0x203)]=_0x2944bd(0x24c),await checkClaudeVersion(MIN_CLAUDE_VERSION,this[_0x2944bd(0x248)]),_0x10061d[_0x2944bd(0x203)]=_0x2944bd(0x1de);}catch(_0x4df2de){_0x10061d['fail'](_0x2944bd(0x19b));throw _0x4df2de;}let _0xdb6bd1=!![];for(const _0x1c2b4a of TD_MCP_SERVERS[_0x2944bd(0x239)](_0x31b401=>_0x25b806['missingMcpServers']['includes'](_0x31b401[_0x2944bd(0x1fc)]))){try{await ensureMcpServer(_0x1c2b4a[_0x2944bd(0x1fc)],_0x1c2b4a[_0x2944bd(0x1d1)],_0x1c2b4a[_0x2944bd(0x20f)],_0x10061d,this[_0x2944bd(0x248)]),recordMcpSetup(_0x1c2b4a,process[_0x2944bd(0x215)]());}catch(_0x4cbb9d){_0xdb6bd1=![],handleInstallationError(_0x4cbb9d,_0x2944bd(0x1ab)+_0x1c2b4a['name']+'\x27',_0x10061d,this[_0x2944bd(0x248)]);}}try{_0x25b806[_0x2944bd(0x1a8)]&&(await removeMarketplace(_0x2944bd(0x1db),this[_0x2944bd(0x248)]),await ensureMarketplace(_0x2944bd(0x1db),_0x5162ab,_0x10061d,this[_0x2944bd(0x248)]));_0x25b806['refresh']&&await updateMarketplace(_0x2944bd(0x1db),_0x10061d,this[_0x2944bd(0x248)]);for(const _0x31c503 of _0x25b806[_0x2944bd(0x234)]){await ensurePlugin(_0x31c503,_0x2944bd(0x1db),_0x10061d,this[_0x2944bd(0x248)]);}if(_0x25b806[_0x2944bd(0x19e)])try{const _0x4040e6=await resolveReleaseTag(_0x49c49e,'treasure-data',_0x2944bd(0x1db),_0x2944bd(0x23d));_0x4040e6&&await checkoutReleaseTag(_0x4040e6,_0x10061d,this[_0x2944bd(0x248)]),recordSkillsRefresh(_0x5162ab,_0x49c49e);}catch(_0xe73fa0){_0xdb6bd1=![],this['logger']?.[_0x2944bd(0x1dc)](_0x2944bd(0x252)+_0xe73fa0);}}catch(_0x19a3e8){_0xdb6bd1=![],handleInstallationError(_0x19a3e8,_0x2944bd(0x1aa),_0x10061d,this[_0x2944bd(0x248)]);}_0xdb6bd1&&recordSetupVersion();}async[a11_0x44257a(0x1ef)](_0x213523){const _0x22e5fc=a11_0x44257a,{tdx:_0x2a0e6c,options:_0x2b29de,args:_0x5c0bb7}=_0x213523;let _0x23d913=![];try{const _0x3b5eaa=_0x2b29de,_0x4bc10b=_0x3b5eaa[_0x22e5fc(0x199)]===![],_0x2227a0=_0x3b5eaa[_0x22e5fc(0x1fb)]===!![],_0x48e1eb=_0x3b5eaa[_0x22e5fc(0x1f4)]===!![],_0x346eac=[..._0x5c0bb7];if(_0x2227a0)_0x346eac['unshift']('-c');else _0x48e1eb&&_0x346eac[_0x22e5fc(0x1bf)]('-r');const _0x50420d=createCommandSpinner('Initializing...',{'verbose':_0x2b29de[_0x22e5fc(0x1ea)]});_0x50420d['start']();try{if(!_0x4bc10b){const _0x2e13a9=_0x2b29de[_0x22e5fc(0x1d3)];try{const _0x2e8986=await _0x2a0e6c[_0x22e5fc(0x1d6)]['getCurrent']();_0x2e8986[_0x22e5fc(0x223)]&&writeCachedAccountInfo(_0x2b29de[_0x22e5fc(0x1fd)]??'us01',_0x2e8986[_0x22e5fc(0x223)],_0x2e13a9);}catch{}_0x50420d['text']='Initializing\x20proxy\x20logger...',this[_0x22e5fc(0x248)]=new TDXLogger(_0x2b29de[_0x22e5fc(0x1e5)],!![]),await this[_0x22e5fc(0x248)][_0x22e5fc(0x1e1)]();const _0x1967a0=this[_0x22e5fc(0x248)][_0x22e5fc(0x206)]();_0x50420d[_0x22e5fc(0x203)]=_0x22e5fc(0x1a6)+_0x1967a0;const _0x31fd8b=getEndpoint(_0x2b29de[_0x22e5fc(0x1fd)],_0x22e5fc(0x21f));_0x50420d[_0x22e5fc(0x203)]='Starting\x20TD\x20LLM\x20pass-through\x20proxy...';let _0x400ad3;const _0x2a2afe=await getOAuthTokens(_0x2e13a9);if(_0x2a2afe)_0x400ad3={'type':_0x22e5fc(0x1d7),'accessToken':_0x2a2afe['access_token'],'refreshToken':_0x2a2afe[_0x22e5fc(0x1b5)],'expiresAt':_0x2a2afe['expires_at'],'consoleUrl':getConsoleUrl(_0x2b29de[_0x22e5fc(0x1fd)])};else{if(_0x2a0e6c[_0x22e5fc(0x1f1)][_0x22e5fc(0x204)])_0x400ad3={'type':_0x22e5fc(0x1b6),'apiKey':_0x2a0e6c[_0x22e5fc(0x1f1)][_0x22e5fc(0x204)]};else throw new SDKError(ErrorCode['INVALID_ARGUMENT'],_0x22e5fc(0x1fa));}this['passThroughServer']=new PassThroughProxyServer({'startPort':0xfa0,'llmProxyUrl':_0x31fd8b,'auth':_0x400ad3,'logger':this[_0x22e5fc(0x248)],'site':_0x2b29de[_0x22e5fc(0x1fd)]??'us01','profile':_0x2e13a9,'proxy':_0x2a0e6c['context'][_0x22e5fc(0x199)]}),await this['passThroughServer'][_0x22e5fc(0x1e6)](),this[_0x22e5fc(0x224)]=this[_0x22e5fc(0x1b1)][_0x22e5fc(0x224)],_0x50420d[_0x22e5fc(0x203)]=_0x22e5fc(0x1e7)+this[_0x22e5fc(0x224)]+_0x22e5fc(0x245)+_0x31fd8b,_0x50420d[_0x22e5fc(0x203)]=_0x22e5fc(0x202);}else _0x50420d[_0x22e5fc(0x203)]='Skipping\x20TD\x20LLM\x20proxy\x20setup\x20(--no-proxy)';const _0x16c056=getTdSkillsRepoUrl();_0x23d913=_0x16c056!==DEFAULT_TD_SKILLS_URL,await this['setUpClaudeIntegration'](_0x16c056,_0x3b5eaa[_0x22e5fc(0x19e)]===!![],_0x50420d),_0x50420d[_0x22e5fc(0x1f5)]();}catch(_0x291112){_0x50420d[_0x22e5fc(0x1ac)](_0x22e5fc(0x1c2));throw _0x291112;}const _0x15bba8=await findExecutable(_0x22e5fc(0x217));if(!_0x15bba8)throw new SDKError(ErrorCode[_0x22e5fc(0x228)],'Claude\x20Code\x20CLI\x20not\x20found',undefined,{'helpText':'Please\x20install\x20Claude\x20Code\x20from\x20https://claude.com/claude-code'});const _0x3b213a=_0x4bc10b?_0x346eac:buildClaudeLaunchArgs(_0x346eac,_0x2a0e6c['context'][_0x22e5fc(0x1d3)]),_0x53bc09={...process.env};!_0x4bc10b&&(_0x53bc09[_0x22e5fc(0x19c)]=_0x22e5fc(0x1ba)+this[_0x22e5fc(0x224)],_0x53bc09[_0x22e5fc(0x19d)]='tdx-managed-proxy',_0x53bc09[_0x22e5fc(0x220)]='false',_0x53bc09['CLAUDE_CODE_USE_VERTEX']=_0x22e5fc(0x1d0));_0x2a0e6c[_0x22e5fc(0x1f1)]['profile']&&(_0x53bc09[_0x22e5fc(0x1a1)]=_0x2a0e6c[_0x22e5fc(0x1f1)][_0x22e5fc(0x1d3)]);const _0x3e55c6=crossSpawn(_0x15bba8,_0x3b213a,{'stdio':'inherit','env':_0x53bc09}),_0x1f66cd=await new Promise(_0x137de0=>{const _0x3a568d=_0x22e5fc;_0x3e55c6['on'](_0x3a568d(0x24e),_0x276ecf=>{_0x137de0(_0x276ecf||0x0);}),_0x3e55c6['on']('error',_0xfab731=>{const _0x41251e=_0x3a568d;console[_0x41251e(0x1e3)](a11_0x5f15ec[_0x41251e(0x1b0)]('Failed\x20to\x20launch\x20Claude\x20Code:\x20'+_0xfab731[_0x41251e(0x1cc)])),_0x137de0(0x1);});});_0x23d913&&await restoreDefaultTdSkillsMarketplace(this[_0x22e5fc(0x248)]);this[_0x22e5fc(0x1b1)]&&(await this[_0x22e5fc(0x1b1)][_0x22e5fc(0x1f5)](),console[_0x22e5fc(0x1f9)](a11_0x5f15ec['green'](_0x22e5fc(0x233))));if(this[_0x22e5fc(0x248)]){await this['logger'][_0x22e5fc(0x240)]();const _0xa85f14=this[_0x22e5fc(0x248)][_0x22e5fc(0x206)]();console[_0x22e5fc(0x1f9)](a11_0x5f15ec['green'](_0x22e5fc(0x1e9)+_0xa85f14));}return _0x1f66cd;}catch(_0x301f1e){_0x23d913&&await restoreDefaultTdSkillsMarketplace(this[_0x22e5fc(0x248)]);this[_0x22e5fc(0x1b1)]&&await this[_0x22e5fc(0x1b1)][_0x22e5fc(0x1f5)]();this[_0x22e5fc(0x248)]&&await this[_0x22e5fc(0x248)][_0x22e5fc(0x240)]();throw _0x301f1e;}}}
1
+ const a12_0xf2b804=a12_0x2a30;(function(_0xf8deb0,_0x249c57){const _0x1a78dc=a12_0x2a30,_0x4ce6d8=_0xf8deb0();while(!![]){try{const _0xbf27b7=parseInt(_0x1a78dc(0x27b))/0x1+-parseInt(_0x1a78dc(0x28e))/0x2+-parseInt(_0x1a78dc(0x279))/0x3*(-parseInt(_0x1a78dc(0x25c))/0x4)+parseInt(_0x1a78dc(0x29a))/0x5+-parseInt(_0x1a78dc(0x1fb))/0x6*(parseInt(_0x1a78dc(0x274))/0x7)+parseInt(_0x1a78dc(0x1f3))/0x8*(parseInt(_0x1a78dc(0x20b))/0x9)+-parseInt(_0x1a78dc(0x1f7))/0xa*(-parseInt(_0x1a78dc(0x2ae))/0xb);if(_0xbf27b7===_0x249c57)break;else _0x4ce6d8['push'](_0x4ce6d8['shift']());}catch(_0x3a7d8a){_0x4ce6d8['push'](_0x4ce6d8['shift']());}}}(a12_0x3775,0xe7b14));import{execFile}from'node:child_process';import{existsSync}from'node:fs';import{join}from'node:path';import{promisify}from'node:util';import a12_0x1403e1 from'chalk';import{BaseCommand}from'./command.js';import{PassThroughProxyServer}from'../proxy/passthrough-server.js';import{TDXLogger}from'../utils/tdx-logger.js';import{getEndpoint,getConsoleUrl}from'../sdk/client/endpoints.js';import{getOAuthTokens}from'../core/oauth-keychain.js';import{findExecutable,crossSpawn}from'../utils/process.js';import{SDKError,ErrorCode,errorContains}from'../sdk/errors.js';import{createCommandSpinner}from'../utils/spinner.js';function a12_0x3775(){const _0x5811f5=['cause','Initializing\x20proxy\x20logger...','Authentication\x20required\x20for\x20TD\x20LLM\x20Proxy.\x20Run:\x20tdx\x20auth\x20setup','get','Failed\x20to\x20configure\x20MCP\x20server\x20\x27','add','TD\x20LLM\x20proxy\x20port\x20not\x20initialized','2380345tFlBXn','\x20already\x20configured','\x20→\x20','cwd','env','init','td-skills','):\x20claude\x20','description','remove','entries','Marketplace\x20\x27','sql-skills','exit','Installing\x20plugin\x20\x27','llm-proxy','✓\x20Logging\x20to\x20','3906248QiNBNd','info','logger','trim','10pHbJbI','inherit','✓\x20TD\x20LLM\x20proxy\x20settings\x20prepared\x20for\x20this\x20session','2.0.20','6zkUZCE','claude-command','Failed\x20to\x20update\x20marketplace\x20\x27','fromEntries','Download\x20the\x20latest\x20version\x20from\x20https://claude.com/claude-code','write','stringify','Sub-agent\x20model\x20env:\x20unset\x20','✓\x20MCP\x20server\x20\x27','Skipping\x20TD\x20LLM\x20proxy\x20setup\x20(--no-proxy)','subagentModel','minor','name','mcp','us01','refresh','9kTtGfG','treasure-data','INTERNAL','Failed\x20to\x20spawn\x20claude\x20command:\x20','CLAUDE_CODE_UNSUPPORTED_VERSION','CLAUDE_CODE_NOT_FOUND','port','origin','✓\x20TD\x20LLM\x20pass-through\x20proxy\x20server\x20stopped','marketplaces','Setup\x20failed','--settings=','list','cwds','--transport','setUpClaudeIntegration','false','tdx-skills','proxy','td-skills\x20marketplace\x20dir\x20not\x20found,\x20skipping\x20release\x20tag\x20checkout','https://github.com/treasure-data/td-skills','start','Command\x20failed\x20(exit\x20','\x20configuration\x20failed','✓\x20td-skills\x20checked\x20out\x20at\x20','stop','assign','auto','INSTALLATION_FAILED','--force','\x20claude\x20statusline','td-skills\x20Plugins','\x27...','code','\x20or\x20later.','tdxVersion','repoUrl','Warning:\x20Failed\x20to\x20configure\x20','Restore\x20also\x20failed:\x20','apiKey','red','origin/main','claude','--version','\x27\x20installed','Failed\x20to\x20restore\x20MCP\x20server\x20\x27','error','debug','Sub-agent\x20model\x20env:\x20','update','url','marketplace','tdx\x20claude\x20statusline','patch','stderr','Failed\x20to\x20remove\x20outdated\x20MCP\x20server\x20\x27','missingMcpServers','tdx-cli','passThroughServer','warn','git','toISOString','Checking\x20Claude\x20Code\x20version...','Command\x20output:\x20','✓\x20Claude\x20Code\x20version\x20OK','Claude\x20Code\x20version\x20','isFinite','already\x20exists','missingPlugins','Checking\x20Claude\x20Code\x20version\x20(minimum\x20required:\x20','sort','ANTHROPIC_MODEL','verbose','includes','filter','access_token','skills','\x27\x20configured','major','text','Restored\x20default\x20td-skills\x20marketplace','8SQjTPw','match','checkout','transport','✓\x20Logs\x20saved\x20to\x20','join','install','now','close','Claude\x20Code\x20version\x20check\x20failed','startsWith','\x20meets\x20minimum\x20requirement','account_id','refresh_token','https://docs.treasure.ai/mcp','Failed\x20to\x20remove\x20marketplace\x20\x27','\x27\x20updated','getCurrent','data','already\x20configured','Failed\x20to\x20launch\x20Claude\x20Code:\x20','Please\x20install\x20Claude\x20Code\x20from\x20https://claude.com/claude-code','\x27\x20removed','\x27\x20to\x20','3659152JwqKVK','plugin','tdx-managed-proxy','claude_setup.json','INVALID_ARGUMENT','2156415RJYxcV','plugins','441064qWlhFK','log','Failed\x20to\x20configure\x20marketplace\x20\x27','user','execute','\x27\x20URL...','Configuring\x20marketplace\x20\x27','length','Failed\x20to\x20list\x20marketplaces','context','--model=','--tags','refreshedAt','--settings','MCP\x20server\x20\x27','pipe','\x20is\x20too\x20old\x20(minimum:\x20','main','fail','2585892qJwcLV','toString','TDX_PROFILE','--hard','green','CLAUDE_CODE_SUBAGENT_MODEL_FORCE','✓\x20Marketplace\x20\x27','Command\x20spawn\x20error:\x20','message','logLevel','read','http://127.0.0.1:','906720amshQc','td-skills\x20checked\x20out\x20at\x20tag\x20','pluginIds','getLogPath','Updating\x20marketplace\x20\x27','oauth','slice','catch','site','Launch\x20Claude\x20Code\x20with\x20Treasure\x20AI\x20as\x20the\x20backend','Claude\x20Code\x20CLI\x20not\x20found','profile','Invalid\x20minimum\x20version\x20format:\x20'];a12_0x3775=function(){return _0x5811f5;};return a12_0x3775();}import{writeCachedAccountInfo,loadReleaseChannel}from'../core/config.js';import{getVersion}from'../core/version.js';import{resolveReleaseTag}from'../utils/github-releases.js';import{createGlobalCache}from'../utils/global-cache.js';import{findMcpServerUrl,getClaudeConfigDir,isPluginInstalled,normalizeRepoUrl,readMarketplaceSourceUrl}from'../utils/claude-code-state.js';const execFileAsync=promisify(execFile),MIN_CLAUDE_VERSION=a12_0xf2b804(0x1fa);export function buildClaudeInvocationArgs(_0x3c3481){return[..._0x3c3481];}export function buildClaudeSettingsArgs(_0x569327,_0x2b824a){const _0x25834b=a12_0xf2b804,_0x446d5c={'statusLine':{'type':'command','command':_0x569327?'tdx\x20--profile\x20'+_0x569327+_0x25834b(0x229):_0x25834b(0x23f)}};return _0x2b824a&&Object['keys'](_0x2b824a)[_0x25834b(0x282)]>0x0&&(_0x446d5c[_0x25834b(0x1e6)]={..._0x2b824a}),[_0x25834b(0x288),JSON[_0x25834b(0x201)](_0x446d5c)];}function a12_0x2a30(_0x4cf8c8,_0x51a2ee){_0x4cf8c8=_0x4cf8c8-0x1e3;const _0x377587=a12_0x3775();let _0x2a30b2=_0x377587[_0x4cf8c8];return _0x2a30b2;}export function buildClaudeLaunchArgs(_0x3ec69e,_0x5c64b7,_0x2c6e46){const _0x56d4ad=a12_0xf2b804;if(_0x3ec69e[_0x56d4ad(0x254)](_0x56d4ad(0x288))||_0x3ec69e['some'](_0x258dcd=>_0x258dcd['startsWith'](_0x56d4ad(0x216))))return[..._0x3ec69e];return[..._0x3ec69e,...buildClaudeSettingsArgs(_0x5c64b7,_0x2c6e46)];}export function buildClaudeProxyEnvOverrides(_0x495e20){const _0x9fe99=a12_0xf2b804;if(_0x495e20===undefined)throw new Error(_0x9fe99(0x2ad));return{'ANTHROPIC_BASE_URL':_0x9fe99(0x299)+_0x495e20,'ANTHROPIC_AUTH_TOKEN':_0x9fe99(0x276),'CLAUDE_CODE_USE_BEDROCK':'false','CLAUDE_CODE_USE_VERTEX':_0x9fe99(0x21b),'CLAUDE_CODE_AUTO_MODE_SERVER':'0'};}export const SUBAGENT_MODEL_ENV='CLAUDE_CODE_SUBAGENT_MODEL';export const SUBAGENT_MODEL_FORCE_ENV=a12_0xf2b804(0x293);export function resolveMainModel(_0x13e195,_0x57af2d){const _0x1615e9=a12_0xf2b804;let _0xe67cbf;for(let _0x1ea10e=0x0;_0x1ea10e<_0x13e195['length'];_0x1ea10e++){const _0x5e0851=_0x13e195[_0x1ea10e],_0x4c1ac6=_0x13e195[_0x1ea10e+0x1];if(_0x5e0851==='--model'&&_0x4c1ac6!==undefined&&!_0x4c1ac6[_0x1615e9(0x266)]('-'))_0xe67cbf=_0x4c1ac6;else _0x5e0851['startsWith'](_0x1615e9(0x285))&&(_0xe67cbf=_0x5e0851[_0x1615e9(0x2a0)]('--model='['length']));}const _0x4fedfb=(_0xe67cbf||_0x57af2d[_0x1615e9(0x252)])?.[_0x1615e9(0x1f6)]();return _0x4fedfb||undefined;}export function buildSubagentModelEnv(_0xb94381){const _0xff8527=a12_0xf2b804,{claudeArgs:_0x225dcb,env:_0x4bcbc8,noProxy:_0x4d2562}=_0xb94381,_0x287a75=_0xb94381[_0xff8527(0x205)]?.[_0xff8527(0x1f6)]();if(!_0x287a75){if(_0x4bcbc8[SUBAGENT_MODEL_ENV]!==undefined||_0x4bcbc8[SUBAGENT_MODEL_FORCE_ENV]!==undefined)return{};if(_0x4d2562)return{};const _0xf261f5=resolveMainModel(_0x225dcb,_0x4bcbc8);if(!_0xf261f5)return{};return{[SUBAGENT_MODEL_FORCE_ENV]:'1',[SUBAGENT_MODEL_ENV]:_0xf261f5};}if(_0x287a75===_0xff8527(0x226))return{[SUBAGENT_MODEL_FORCE_ENV]:undefined,[SUBAGENT_MODEL_ENV]:undefined};if(_0x287a75===_0xff8527(0x1f8))return{[SUBAGENT_MODEL_FORCE_ENV]:'1',[SUBAGENT_MODEL_ENV]:resolveMainModel(_0x225dcb,_0x4bcbc8)};return{[SUBAGENT_MODEL_FORCE_ENV]:'1',[SUBAGENT_MODEL_ENV]:_0x287a75};}function handleInstallationError(_0x44f5ac,_0x1c2ee9,_0x4e1e8d,_0x4e0198){const _0x2ec6c6=a12_0xf2b804;errorContains(_0x44f5ac,_0x2ec6c6(0x24e),'already\x20installed',_0x2ec6c6(0x26f))?(_0x4e1e8d[_0x2ec6c6(0x25a)]='✓\x20'+_0x1c2ee9+_0x2ec6c6(0x1e3),_0x4e0198?.[_0x2ec6c6(0x1f4)](_0x1c2ee9+_0x2ec6c6(0x1e3)),_0x44f5ac instanceof SDKError&&_0x44f5ac[_0x2ec6c6(0x2a7)]&&_0x4e0198?.[_0x2ec6c6(0x23a)](_0x2ec6c6(0x24a)+_0x44f5ac[_0x2ec6c6(0x2a7)]['message'])):(_0x4e1e8d[_0x2ec6c6(0x246)](_0x2ec6c6(0x230)+_0x1c2ee9),_0x4e0198?.[_0x2ec6c6(0x239)](_0x1c2ee9+_0x2ec6c6(0x222),_0x44f5ac));}export function parseVersion(_0x117063){const _0x14a2d6=a12_0xf2b804,_0x2f46cb=_0x117063[_0x14a2d6(0x1f6)]()['match'](/^v?(\d+)\.(\d+)\.(\d+)/);if(!_0x2f46cb)return null;return{'major':parseInt(_0x2f46cb[0x1],0xa),'minor':parseInt(_0x2f46cb[0x2],0xa),'patch':parseInt(_0x2f46cb[0x3],0xa)};}export function compareVersions(_0x44afd7,_0x6d2248){const _0x54578d=a12_0xf2b804;if(_0x44afd7['major']!==_0x6d2248[_0x54578d(0x259)])return _0x44afd7['major']-_0x6d2248['major'];if(_0x44afd7[_0x54578d(0x206)]!==_0x6d2248[_0x54578d(0x206)])return _0x44afd7[_0x54578d(0x206)]-_0x6d2248[_0x54578d(0x206)];return _0x44afd7['patch']-_0x6d2248[_0x54578d(0x240)];}async function checkClaudeVersion(_0x357237,_0x2ec919){const _0xae8af4=a12_0xf2b804;_0x2ec919?.[_0xae8af4(0x23a)](_0xae8af4(0x250)+_0x357237+')');const _0xf5035=await executeClaudeCommand([_0xae8af4(0x236)],undefined,_0x2ec919),_0x1a4557=parseVersion(_0xf5035);if(!_0x1a4557){_0x2ec919?.['warn']('Could\x20not\x20parse\x20Claude\x20Code\x20version\x20from:\x20'+_0xf5035);return;}const _0x140bd8=_0x1a4557[_0xae8af4(0x259)]+'.'+_0x1a4557['minor']+'.'+_0x1a4557['patch'],_0x3c5024=parseVersion(_0x357237);if(!_0x3c5024){_0x2ec919?.[_0xae8af4(0x246)](_0xae8af4(0x2a6)+_0x357237);return;}if(compareVersions(_0x1a4557,_0x3c5024)<0x0){_0x2ec919?.['error'](_0xae8af4(0x24c)+_0x140bd8+_0xae8af4(0x28b)+_0x357237+')');throw new SDKError(ErrorCode[_0xae8af4(0x20f)],_0xae8af4(0x24c)+_0x140bd8+'\x20does\x20not\x20support\x20required\x20features.\x20Please\x20upgrade\x20to\x20version\x20'+_0x357237+_0xae8af4(0x22d),undefined,{'helpText':_0xae8af4(0x1ff)});}_0x2ec919?.[_0xae8af4(0x23a)]('Claude\x20Code\x20version\x20'+_0x140bd8+_0xae8af4(0x267));}async function executeClaudeCommand(_0x407f6f,_0x209398,_0x2fdd0d){const _0x460db6=a12_0xf2b804;return _0x2fdd0d?.[_0x460db6(0x1f4)]('Executing:\x20claude\x20'+_0x407f6f['join']('\x20')),new Promise((_0x17903f,_0x26913c)=>{const _0x525929=_0x460db6,_0x2dd9c5=crossSpawn(_0x525929(0x235),_0x407f6f,{'stdio':_0x525929(0x28a)});let _0xa8230b='',_0x16bd91='';_0x2dd9c5['stdout']?.['on'](_0x525929(0x26e),_0x4763b7=>{_0xa8230b+=_0x4763b7['toString']();}),_0x2dd9c5[_0x525929(0x241)]?.['on']('data',_0x49b882=>{const _0x173ba5=_0x525929;_0x16bd91+=_0x49b882[_0x173ba5(0x28f)]();}),_0x2dd9c5['on'](_0x525929(0x239),_0x41c359=>{const _0xd76dec=_0x525929;_0x41c359[_0xd76dec(0x22c)]==='ENOENT'?(_0x2fdd0d?.[_0xd76dec(0x239)](_0xd76dec(0x2a4)),_0x26913c(new SDKError(ErrorCode['CLAUDE_CODE_NOT_FOUND'],_0xd76dec(0x2a4),_0x41c359,{'helpText':_0xd76dec(0x271)}))):(_0x2fdd0d?.[_0xd76dec(0x239)](_0xd76dec(0x295)+_0x41c359[_0xd76dec(0x296)]),_0x26913c(new SDKError(ErrorCode[_0xd76dec(0x20d)],_0xd76dec(0x20e)+_0x41c359['message'],_0x41c359)));}),_0x2dd9c5['on'](_0x525929(0x1ef),_0x3750cb=>{const _0x45ca0b=_0x525929;if(_0x3750cb===0x0)_0x17903f(_0xa8230b);else _0x209398?(_0x2fdd0d?.[_0x45ca0b(0x239)](_0x45ca0b(0x221)+_0x3750cb+_0x45ca0b(0x1e9)+_0x407f6f[_0x45ca0b(0x261)]('\x20')),_0x26913c(new SDKError(ErrorCode[_0x45ca0b(0x227)],_0x209398,new Error(_0x16bd91)))):_0x17903f('');});});}async function ensureMcpServer(_0x3ada8c,_0x4f5414,_0x5a7397,_0x14f05a,_0x53819d){const _0x4a6e12=a12_0xf2b804;_0x14f05a[_0x4a6e12(0x25a)]='Configuring\x20MCP\x20server\x20\x27'+_0x3ada8c+_0x4a6e12(0x22b);const _0x531a83=await executeClaudeCommand([_0x4a6e12(0x208),_0x4a6e12(0x2aa),_0x3ada8c],undefined,_0x53819d);if(_0x531a83){const _0x3513d9=_0x531a83[_0x4a6e12(0x25d)](/URL:\s*(\S+)/);if(_0x3513d9&&_0x3513d9[0x1]===_0x4f5414){_0x14f05a[_0x4a6e12(0x25a)]=_0x4a6e12(0x203)+_0x3ada8c+_0x4a6e12(0x258);return;}else{if(_0x3513d9){const _0x47185e=_0x3513d9[0x1];_0x53819d?.[_0x4a6e12(0x1f4)]('MCP\x20server\x20\x27'+_0x3ada8c+'\x27\x20URL\x20changed:\x20'+_0x47185e+'\x20→\x20'+_0x4f5414),_0x14f05a[_0x4a6e12(0x25a)]='Updating\x20MCP\x20server\x20\x27'+_0x3ada8c+_0x4a6e12(0x280),await executeClaudeCommand(['mcp',_0x4a6e12(0x1eb),_0x3ada8c],_0x4a6e12(0x242)+_0x3ada8c+'\x27',_0x53819d);try{await executeClaudeCommand([_0x4a6e12(0x208),_0x4a6e12(0x2ac),_0x3ada8c,_0x4f5414,_0x4a6e12(0x219),_0x5a7397],_0x4a6e12(0x2ab)+_0x3ada8c+'\x27',_0x53819d),_0x14f05a[_0x4a6e12(0x25a)]=_0x4a6e12(0x203)+_0x3ada8c+_0x4a6e12(0x26c);return;}catch(_0x57aae8){_0x53819d?.['error']('Failed\x20to\x20add\x20new\x20URL,\x20restoring\x20previous\x20URL:\x20'+_0x47185e),await executeClaudeCommand([_0x4a6e12(0x208),_0x4a6e12(0x2ac),_0x3ada8c,_0x47185e,_0x4a6e12(0x219),_0x5a7397],_0x4a6e12(0x238)+_0x3ada8c+_0x4a6e12(0x273)+_0x47185e,_0x53819d)[_0x4a6e12(0x2a1)](_0x1c3d5e=>_0x53819d?.[_0x4a6e12(0x239)](_0x4a6e12(0x231)+_0x1c3d5e));throw _0x57aae8;}}}}await executeClaudeCommand(['mcp',_0x4a6e12(0x2ac),_0x3ada8c,_0x4f5414,_0x4a6e12(0x219),_0x5a7397],_0x4a6e12(0x2ab)+_0x3ada8c+'\x27',_0x53819d),_0x14f05a['text']='✓\x20MCP\x20server\x20\x27'+_0x3ada8c+_0x4a6e12(0x258);}const TD_DOCS_MCP_URL=a12_0xf2b804(0x26a);export const TD_MCP_SERVERS=[{'name':'td-docs','url':TD_DOCS_MCP_URL,'transport':'http'}];export const DEFAULT_TD_SKILLS_URL=a12_0xf2b804(0x21f);export function getTdSkillsRepoUrl(){const _0x76e49f=process.env.TDX_TD_SKILLS_REPO;if(_0x76e49f)return _0x76e49f;return DEFAULT_TD_SKILLS_URL;}async function removeMarketplace(_0x285d64,_0x4ae069){const _0x2cf140=a12_0xf2b804;try{const _0x3feab9=await executeClaudeCommand(['plugin','marketplace',_0x2cf140(0x217)],_0x2cf140(0x283),_0x4ae069);if(!_0x3feab9['includes'](_0x285d64)){_0x4ae069?.[_0x2cf140(0x23a)](_0x2cf140(0x1ed)+_0x285d64+'\x27\x20not\x20found\x20in\x20list,\x20skipping\x20removal');return;}await executeClaudeCommand(['plugin',_0x2cf140(0x23e),_0x2cf140(0x1eb),_0x285d64],'Failed\x20to\x20remove\x20marketplace\x20\x27'+_0x285d64+'\x27',_0x4ae069),_0x4ae069?.[_0x2cf140(0x1f4)](_0x2cf140(0x1ed)+_0x285d64+_0x2cf140(0x272));}catch(_0x160983){_0x4ae069?.[_0x2cf140(0x246)](_0x2cf140(0x26b)+_0x285d64+'\x27:\x20'+_0x160983);}}async function restoreDefaultTdSkillsMarketplace(_0x1eb1c6){const _0x34aaf3=a12_0xf2b804;try{await removeMarketplace(_0x34aaf3(0x1e8),_0x1eb1c6),await executeClaudeCommand(['plugin',_0x34aaf3(0x23e),_0x34aaf3(0x2ac),DEFAULT_TD_SKILLS_URL],undefined,_0x1eb1c6),_0x1eb1c6?.[_0x34aaf3(0x1f4)](_0x34aaf3(0x25b));}catch{}}async function ensureMarketplace(_0x2e9a02,_0x270d8c,_0x5ca76b,_0x1a761e){const _0x3262c6=a12_0xf2b804;_0x5ca76b[_0x3262c6(0x25a)]=_0x3262c6(0x281)+_0x2e9a02+'\x27...',await executeClaudeCommand(['plugin',_0x3262c6(0x23e),_0x3262c6(0x2ac),_0x270d8c],_0x3262c6(0x27d)+_0x2e9a02+'\x27',_0x1a761e),_0x5ca76b[_0x3262c6(0x25a)]=_0x3262c6(0x294)+_0x2e9a02+_0x3262c6(0x258);}async function updateMarketplace(_0x2648a5,_0x6587ee,_0x5984e9){const _0x52c0ca=a12_0xf2b804;_0x6587ee[_0x52c0ca(0x25a)]=_0x52c0ca(0x29e)+_0x2648a5+_0x52c0ca(0x22b),await executeClaudeCommand([_0x52c0ca(0x275),_0x52c0ca(0x23e),_0x52c0ca(0x23c),_0x2648a5],_0x52c0ca(0x1fd)+_0x2648a5+'\x27',_0x5984e9),_0x6587ee['text']=_0x52c0ca(0x294)+_0x2648a5+_0x52c0ca(0x26c);}async function ensurePlugin(_0x1fd3bd,_0x2fb99b,_0x2a5ba4,_0x149dba){const _0x529c72=a12_0xf2b804;_0x2a5ba4[_0x529c72(0x25a)]=_0x529c72(0x1f0)+_0x1fd3bd+_0x529c72(0x22b),await executeClaudeCommand([_0x529c72(0x275),_0x529c72(0x262),_0x1fd3bd+'@'+_0x2fb99b],'Failed\x20to\x20install\x20plugin\x20\x27'+_0x1fd3bd+'\x27',_0x149dba),_0x2a5ba4[_0x529c72(0x25a)]='✓\x20Plugin\x20\x27'+_0x1fd3bd+_0x529c72(0x237);}export const TD_SKILLS_PLUGINS=[a12_0xf2b804(0x1ee),'workflow-skills',a12_0xf2b804(0x21c)];export const SETUP_TTL_MS=0xe*0x18*0x3c*0x3c*0x3e8;function isWithinTtl(_0x37c943){const _0x21d2f7=a12_0xf2b804;if(!_0x37c943)return![];const _0x48618c=Date[_0x21d2f7(0x263)]()-new Date(_0x37c943)['getTime']();return Number[_0x21d2f7(0x24d)](_0x48618c)&&_0x48618c>=0x0&&_0x48618c<=SETUP_TTL_MS;}const setupCache=createGlobalCache(a12_0xf2b804(0x277),a12_0xf2b804(0x1fc));function updateSetupCache(_0x55acda){const _0x53b6f3=a12_0xf2b804;try{setupCache[_0x53b6f3(0x200)]({...setupCache[_0x53b6f3(0x298)](),..._0x55acda});}catch{}}function isTdxUpgradeSinceSetup(){const _0x3ce4ce=a12_0xf2b804;return setupCache[_0x3ce4ce(0x298)]()?.[_0x3ce4ce(0x22e)]!==getVersion();}export function recordSetupVersion(){updateSetupCache({'tdxVersion':getVersion()});}function isSkillsRefreshDue(_0x2d1661,_0x14174c){const _0x4f6841=a12_0xf2b804,_0x2c61eb=setupCache[_0x4f6841(0x298)]()?.[_0x4f6841(0x257)];if(!_0x2c61eb)return!![];if(_0x2c61eb[_0x4f6841(0x22f)]!==_0x2d1661||_0x2c61eb['releaseChannel']!==_0x14174c||_0x2c61eb[_0x4f6841(0x29c)]?.[_0x4f6841(0x261)](',')!==TD_SKILLS_PLUGINS[_0x4f6841(0x261)](','))return!![];return!isWithinTtl(_0x2c61eb[_0x4f6841(0x287)]);}export function recordSkillsRefresh(_0x127201,_0x1f3b97){const _0xb6c7c=a12_0xf2b804;updateSetupCache({'skills':{'refreshedAt':new Date()[_0xb6c7c(0x248)](),'repoUrl':_0x127201,'releaseChannel':_0x1f3b97,'pluginIds':TD_SKILLS_PLUGINS}});}const MCP_SETUP_MAX_CWDS=0x64;function wasMcpConfiguredRecently(_0x1d3636,_0x13a0ed){const _0xcb60b8=a12_0xf2b804,_0x52d275=setupCache[_0xcb60b8(0x298)]()?.[_0xcb60b8(0x208)]?.[_0x1d3636[_0xcb60b8(0x207)]];if(_0x52d275?.[_0xcb60b8(0x23d)]!==_0x1d3636[_0xcb60b8(0x23d)])return![];return isWithinTtl(_0x52d275[_0xcb60b8(0x218)]?.[_0x13a0ed]);}export function recordMcpSetup(_0x499189,_0x254362){const _0x4b6f08=a12_0xf2b804,_0x378bc1=setupCache['read']()?.[_0x4b6f08(0x208)]??{},_0x355070=_0x378bc1[_0x499189[_0x4b6f08(0x207)]],_0xe7cae7=_0x355070?.[_0x4b6f08(0x23d)]===_0x499189[_0x4b6f08(0x23d)]?_0x355070[_0x4b6f08(0x218)]:{},_0x9c7e43=Object['entries']({..._0xe7cae7,[_0x254362]:new Date()[_0x4b6f08(0x248)]()})[_0x4b6f08(0x255)](([,_0x388aea])=>isWithinTtl(_0x388aea))[_0x4b6f08(0x251)](([,_0x175f5a],[,_0x502c64])=>_0x502c64['localeCompare'](_0x175f5a))['slice'](0x0,MCP_SETUP_MAX_CWDS);updateSetupCache({'mcp':{..._0x378bc1,[_0x499189[_0x4b6f08(0x207)]]:{'url':_0x499189[_0x4b6f08(0x23d)],'cwds':Object[_0x4b6f08(0x1fe)](_0x9c7e43)}}});}export function hasSetupWork(_0x132bd4){const _0x5a38c9=a12_0xf2b804;return _0x132bd4[_0x5a38c9(0x243)][_0x5a38c9(0x282)]>0x0||_0x132bd4[_0x5a38c9(0x23e)]||_0x132bd4[_0x5a38c9(0x24f)][_0x5a38c9(0x282)]>0x0||_0x132bd4[_0x5a38c9(0x20a)];}export function planClaudeSetup(_0x45e709,_0x162a80,_0x3e0d9a){const _0x2b8325=a12_0xf2b804;if(_0x3e0d9a||isTdxUpgradeSinceSetup())return{'missingMcpServers':TD_MCP_SERVERS['map'](_0x33e425=>_0x33e425[_0x2b8325(0x207)]),'marketplace':!![],'missingPlugins':[...TD_SKILLS_PLUGINS],'refresh':!![]};const _0x107233=readMarketplaceSourceUrl('td-skills')!==normalizeRepoUrl(_0x45e709),_0x440cf4=_0x107233?[...TD_SKILLS_PLUGINS]:TD_SKILLS_PLUGINS[_0x2b8325(0x255)](_0x29a9e7=>!isPluginInstalled(_0x29a9e7,_0x2b8325(0x1e8))),_0x81b3e8=_0x45e709!==DEFAULT_TD_SKILLS_URL,_0x4d4983=process[_0x2b8325(0x1e5)](),_0x11d372=TD_MCP_SERVERS[_0x2b8325(0x255)](_0x24b043=>findMcpServerUrl(_0x24b043[_0x2b8325(0x207)],_0x4d4983)!==_0x24b043[_0x2b8325(0x23d)]&&!wasMcpConfiguredRecently(_0x24b043,_0x4d4983))['map'](_0x270e74=>_0x270e74[_0x2b8325(0x207)]);return{'missingMcpServers':_0x11d372,'marketplace':_0x107233,'missingPlugins':_0x440cf4,'refresh':_0x107233||_0x440cf4[_0x2b8325(0x282)]>0x0||_0x81b3e8||isSkillsRefreshDue(_0x45e709,_0x162a80)};}async function checkoutReleaseTag(_0x23af4a,_0x1cc4c8,_0x504712){const _0x271ad6=a12_0xf2b804,_0x249395=join(getClaudeConfigDir(),_0x271ad6(0x27a),_0x271ad6(0x214),_0x271ad6(0x1e8));if(!existsSync(_0x249395)){_0x504712?.[_0x271ad6(0x23a)](_0x271ad6(0x21e));return;}_0x1cc4c8['text']='Checking\x20out\x20td-skills\x20'+_0x23af4a+'...',await execFileAsync(_0x271ad6(0x247),['fetch',_0x271ad6(0x212),_0x271ad6(0x286),_0x271ad6(0x228)],{'cwd':_0x249395});try{await execFileAsync(_0x271ad6(0x247),[_0x271ad6(0x25e),_0x271ad6(0x28c)],{'cwd':_0x249395});}catch{await execFileAsync('git',['checkout','-b',_0x271ad6(0x28c),_0x271ad6(0x234)],{'cwd':_0x249395});}await execFileAsync(_0x271ad6(0x247),['reset',_0x271ad6(0x291),_0x23af4a],{'cwd':_0x249395}),_0x1cc4c8[_0x271ad6(0x25a)]=_0x271ad6(0x223)+_0x23af4a,_0x504712?.['info'](_0x271ad6(0x29b)+_0x23af4a);}export class ClaudeCommand extends BaseCommand{[a12_0xf2b804(0x207)]=a12_0xf2b804(0x235);[a12_0xf2b804(0x1ea)]=a12_0xf2b804(0x2a3);[a12_0xf2b804(0x245)];[a12_0xf2b804(0x1f5)];[a12_0xf2b804(0x211)];async[a12_0xf2b804(0x21a)](_0xe84fa4,_0x4951e3,_0x3bb3b4){const _0x930a09=a12_0xf2b804,_0x1df7a7=loadReleaseChannel(),_0x146577=planClaudeSetup(_0xe84fa4,_0x1df7a7,_0x4951e3);this[_0x930a09(0x1f5)]?.[_0x930a09(0x23a)]('Claude\x20setup\x20plan:\x20'+JSON['stringify'](_0x146577));if(!hasSetupWork(_0x146577))return;try{_0x3bb3b4[_0x930a09(0x25a)]=_0x930a09(0x249),await checkClaudeVersion(MIN_CLAUDE_VERSION,this[_0x930a09(0x1f5)]),_0x3bb3b4['text']=_0x930a09(0x24b);}catch(_0x2b28b8){_0x3bb3b4['fail'](_0x930a09(0x265));throw _0x2b28b8;}let _0x4d57cf=!![];for(const _0x2abac7 of TD_MCP_SERVERS[_0x930a09(0x255)](_0x5546b9=>_0x146577[_0x930a09(0x243)][_0x930a09(0x254)](_0x5546b9[_0x930a09(0x207)]))){try{await ensureMcpServer(_0x2abac7[_0x930a09(0x207)],_0x2abac7[_0x930a09(0x23d)],_0x2abac7[_0x930a09(0x25f)],_0x3bb3b4,this['logger']),recordMcpSetup(_0x2abac7,process['cwd']());}catch(_0x11d9ca){_0x4d57cf=![],handleInstallationError(_0x11d9ca,_0x930a09(0x289)+_0x2abac7['name']+'\x27',_0x3bb3b4,this['logger']);}}try{_0x146577[_0x930a09(0x23e)]&&(await removeMarketplace(_0x930a09(0x1e8),this['logger']),await ensureMarketplace(_0x930a09(0x1e8),_0xe84fa4,_0x3bb3b4,this[_0x930a09(0x1f5)]));_0x146577[_0x930a09(0x20a)]&&await updateMarketplace(_0x930a09(0x1e8),_0x3bb3b4,this[_0x930a09(0x1f5)]);for(const _0x31a839 of _0x146577[_0x930a09(0x24f)]){await ensurePlugin(_0x31a839,'td-skills',_0x3bb3b4,this[_0x930a09(0x1f5)]);}if(_0x146577[_0x930a09(0x20a)])try{const _0x3f1f47=await resolveReleaseTag(_0x1df7a7,_0x930a09(0x20c),_0x930a09(0x1e8),_0x930a09(0x244));_0x3f1f47&&await checkoutReleaseTag(_0x3f1f47,_0x3bb3b4,this[_0x930a09(0x1f5)]),recordSkillsRefresh(_0xe84fa4,_0x1df7a7);}catch(_0x100c77){_0x4d57cf=![],this[_0x930a09(0x1f5)]?.[_0x930a09(0x246)]('Failed\x20to\x20apply\x20td-skills\x20release\x20channel:\x20'+_0x100c77);}}catch(_0x2afc15){_0x4d57cf=![],handleInstallationError(_0x2afc15,_0x930a09(0x22a),_0x3bb3b4,this[_0x930a09(0x1f5)]);}_0x4d57cf&&recordSetupVersion();}async[a12_0xf2b804(0x27f)](_0x4543cf){const _0x1a968d=a12_0xf2b804,{tdx:_0x1fcdc8,options:_0x2ad108,args:_0x316417}=_0x4543cf;let _0x5b2707=![];try{const _0x52bc44=_0x2ad108,_0x1c201b=_0x52bc44[_0x1a968d(0x21d)]===![],_0x1a2e98=buildClaudeInvocationArgs(_0x316417),_0xf90345=createCommandSpinner('Initializing...',{'verbose':_0x2ad108[_0x1a968d(0x253)]});_0xf90345[_0x1a968d(0x220)]();try{if(!_0x1c201b){const _0x254831=_0x2ad108['profile'];try{const _0x1cfd2a=await _0x1fcdc8[_0x1a968d(0x27e)][_0x1a968d(0x26d)]();_0x1cfd2a[_0x1a968d(0x268)]&&writeCachedAccountInfo(_0x2ad108['site']??_0x1a968d(0x209),_0x1cfd2a[_0x1a968d(0x268)],_0x254831);}catch{}_0xf90345[_0x1a968d(0x25a)]=_0x1a968d(0x2a8),this[_0x1a968d(0x1f5)]=new TDXLogger(_0x2ad108[_0x1a968d(0x297)],!![]),await this[_0x1a968d(0x1f5)][_0x1a968d(0x1e7)]();const _0x45ab5f=this['logger'][_0x1a968d(0x29d)]();_0xf90345[_0x1a968d(0x25a)]=_0x1a968d(0x1f2)+_0x45ab5f;const _0x1bddc5=getEndpoint(_0x2ad108[_0x1a968d(0x2a2)],_0x1a968d(0x1f1));_0xf90345['text']='Starting\x20TD\x20LLM\x20pass-through\x20proxy...';let _0x3b4b88;const _0x2cd355=await getOAuthTokens(_0x254831);if(_0x2cd355)_0x3b4b88={'type':_0x1a968d(0x29f),'accessToken':_0x2cd355[_0x1a968d(0x256)],'refreshToken':_0x2cd355[_0x1a968d(0x269)],'expiresAt':_0x2cd355['expires_at'],'consoleUrl':getConsoleUrl(_0x2ad108[_0x1a968d(0x2a2)])};else{if(_0x1fcdc8[_0x1a968d(0x284)][_0x1a968d(0x232)])_0x3b4b88={'type':'apikey','apiKey':_0x1fcdc8['context'][_0x1a968d(0x232)]};else throw new SDKError(ErrorCode[_0x1a968d(0x278)],_0x1a968d(0x2a9));}this['passThroughServer']=new PassThroughProxyServer({'startPort':0xfa0,'llmProxyUrl':_0x1bddc5,'auth':_0x3b4b88,'logger':this[_0x1a968d(0x1f5)],'site':_0x2ad108[_0x1a968d(0x2a2)]??_0x1a968d(0x209),'profile':_0x254831,'proxy':_0x1fcdc8['context']['proxy']}),await this['passThroughServer']['start'](),this[_0x1a968d(0x211)]=this['passThroughServer']['port'],_0xf90345[_0x1a968d(0x25a)]='✓\x20TD\x20LLM\x20pass-through\x20proxy\x20running\x20on\x20port\x20'+this['port']+_0x1a968d(0x1e4)+_0x1bddc5,_0xf90345[_0x1a968d(0x25a)]=_0x1a968d(0x1f9);}else _0xf90345[_0x1a968d(0x25a)]=_0x1a968d(0x204);const _0x34217c=getTdSkillsRepoUrl();_0x5b2707=_0x34217c!==DEFAULT_TD_SKILLS_URL,await this[_0x1a968d(0x21a)](_0x34217c,_0x52bc44['refresh']===!![],_0xf90345),_0xf90345['stop']();}catch(_0x4d5919){_0xf90345[_0x1a968d(0x28d)](_0x1a968d(0x215));throw _0x4d5919;}const _0x3b94d2=await findExecutable(_0x1a968d(0x235));if(!_0x3b94d2)throw new SDKError(ErrorCode[_0x1a968d(0x210)],_0x1a968d(0x2a4),undefined,{'helpText':_0x1a968d(0x271)});const _0x43036d=_0x1c201b?undefined:buildClaudeProxyEnvOverrides(this[_0x1a968d(0x211)]),_0x4583ad=_0x1c201b?_0x1a2e98:buildClaudeLaunchArgs(_0x1a2e98,_0x1fcdc8[_0x1a968d(0x284)][_0x1a968d(0x2a5)],_0x43036d),_0xf7c5f2={...process.env};_0x43036d&&Object[_0x1a968d(0x225)](_0xf7c5f2,_0x43036d);_0x1fcdc8[_0x1a968d(0x284)][_0x1a968d(0x2a5)]&&(_0xf7c5f2[_0x1a968d(0x290)]=_0x1fcdc8[_0x1a968d(0x284)][_0x1a968d(0x2a5)]);const _0x21e491=buildSubagentModelEnv({'subagentModel':_0x52bc44[_0x1a968d(0x205)],'claudeArgs':_0x1a2e98,'env':process.env,'noProxy':_0x1c201b});for(const [_0x28bf3f,_0x22b049]of Object[_0x1a968d(0x1ec)](_0x21e491)){_0x22b049===undefined?(delete _0xf7c5f2[_0x28bf3f],this['logger']?.[_0x1a968d(0x23a)](_0x1a968d(0x202)+_0x28bf3f)):(_0xf7c5f2[_0x28bf3f]=_0x22b049,this[_0x1a968d(0x1f5)]?.[_0x1a968d(0x23a)](_0x1a968d(0x23b)+_0x28bf3f+'='+_0x22b049));}const _0x31cd47=crossSpawn(_0x3b94d2,_0x4583ad,{'stdio':_0x1a968d(0x1f8),'env':_0xf7c5f2}),_0x2266f6=await new Promise(_0x1b3533=>{const _0xde930=_0x1a968d;_0x31cd47['on'](_0xde930(0x1ef),_0x12c6fc=>{_0x1b3533(_0x12c6fc||0x0);}),_0x31cd47['on'](_0xde930(0x239),_0x19798a=>{const _0x17eb37=_0xde930;console[_0x17eb37(0x239)](a12_0x1403e1[_0x17eb37(0x233)](_0x17eb37(0x270)+_0x19798a[_0x17eb37(0x296)])),_0x1b3533(0x1);});});_0x5b2707&&await restoreDefaultTdSkillsMarketplace(this['logger']);this['passThroughServer']&&(await this['passThroughServer'][_0x1a968d(0x224)](),console[_0x1a968d(0x27c)](a12_0x1403e1[_0x1a968d(0x292)](_0x1a968d(0x213))));if(this[_0x1a968d(0x1f5)]){await this[_0x1a968d(0x1f5)][_0x1a968d(0x264)]();const _0x48b9d6=this['logger'][_0x1a968d(0x29d)]();console['log'](a12_0x1403e1[_0x1a968d(0x292)](_0x1a968d(0x260)+_0x48b9d6));}return _0x2266f6;}catch(_0x4be519){_0x5b2707&&await restoreDefaultTdSkillsMarketplace(this[_0x1a968d(0x1f5)]);this['passThroughServer']&&await this[_0x1a968d(0x245)][_0x1a968d(0x224)]();this['logger']&&await this[_0x1a968d(0x1f5)]['close']();throw _0x4be519;}}}