@treasuredata/tdx 0.16.6 → 0.16.8

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 (291) hide show
  1. package/dist/bin.js +1 -1
  2. package/dist/build-info.json +3 -3
  3. package/dist/cli-categories.d.ts +1 -1
  4. package/dist/cli-categories.js +1 -1
  5. package/dist/cli-categories.js.map +1 -1
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +1 -1
  8. package/dist/cli.js.map +1 -1
  9. package/dist/commands/activations.js +1 -1
  10. package/dist/commands/agent-command.js +1 -1
  11. package/dist/commands/agent-test-command.d.ts.map +1 -1
  12. package/dist/commands/agent-test-command.js +1 -1
  13. package/dist/commands/agent-test-command.js.map +1 -1
  14. package/dist/commands/api-command.js +1 -1
  15. package/dist/commands/auth-command.js +1 -1
  16. package/dist/commands/chat-command.js +1 -1
  17. package/dist/commands/claude-command.js +1 -1
  18. package/dist/commands/claude-statusline-command.js +1 -1
  19. package/dist/commands/claude-usage-command.js +1 -1
  20. package/dist/commands/command.d.ts.map +1 -1
  21. package/dist/commands/command.js +1 -1
  22. package/dist/commands/command.js.map +1 -1
  23. package/dist/commands/connection-command.js +1 -1
  24. package/dist/commands/databases.js +1 -1
  25. package/dist/commands/describe.js +1 -1
  26. package/dist/commands/engage-command.js +1 -1
  27. package/dist/commands/job-command.js +1 -1
  28. package/dist/commands/journey-command.js +1 -1
  29. package/dist/commands/journey-validate-command.js +1 -1
  30. package/dist/commands/llm-command.js +1 -1
  31. package/dist/commands/llm-proxy.js +1 -1
  32. package/dist/commands/mcp-command.js +1 -1
  33. package/dist/commands/parent-segment-command.js +1 -1
  34. package/dist/commands/profile-command.js +1 -1
  35. package/dist/commands/profiles-command.js +1 -1
  36. package/dist/commands/query-command.js +1 -1
  37. package/dist/commands/segment-command.js +1 -1
  38. package/dist/commands/segment-create-command.js +1 -1
  39. package/dist/commands/segment-fields-command.js +1 -1
  40. package/dist/commands/segment-pull-command.js +1 -1
  41. package/dist/commands/segment-push-command.js +1 -1
  42. package/dist/commands/segment-update-command.js +1 -1
  43. package/dist/commands/segment-use-command.js +1 -1
  44. package/dist/commands/segment-validate-command.js +1 -1
  45. package/dist/commands/segments.js +1 -1
  46. package/dist/commands/show.js +1 -1
  47. package/dist/commands/status-command.d.ts +20 -0
  48. package/dist/commands/status-command.d.ts.map +1 -0
  49. package/dist/commands/status-command.js +1 -0
  50. package/dist/commands/status-command.js.map +1 -0
  51. package/dist/commands/tables.js +1 -1
  52. package/dist/commands/unset-command.js +1 -1
  53. package/dist/commands/use-command.js +1 -1
  54. package/dist/commands/user-command.js +1 -1
  55. package/dist/commands/workflow-command.js +1 -1
  56. package/dist/core/auth.js +1 -1
  57. package/dist/core/command-output.js +1 -1
  58. package/dist/core/config.js +1 -1
  59. package/dist/core/connection-cache.js +1 -1
  60. package/dist/core/constants.js +1 -1
  61. package/dist/core/credential-cache.js +1 -1
  62. package/dist/core/global-context.d.ts +1 -1
  63. package/dist/core/global-context.d.ts.map +1 -1
  64. package/dist/core/global-context.js +1 -1
  65. package/dist/core/global-context.js.map +1 -1
  66. package/dist/core/keychain.js +1 -1
  67. package/dist/core/profile.d.ts +5 -0
  68. package/dist/core/profile.d.ts.map +1 -1
  69. package/dist/core/profile.js +1 -1
  70. package/dist/core/profile.js.map +1 -1
  71. package/dist/core/project-config.js +1 -1
  72. package/dist/core/session.js +1 -1
  73. package/dist/core/user-cache.js +1 -1
  74. package/dist/core/version.js +1 -1
  75. package/dist/index.js +1 -1
  76. package/dist/mcp/server.js +1 -1
  77. package/dist/mcp/tools/index.js +1 -1
  78. package/dist/mcp/tools/tdx-run.js +1 -1
  79. package/dist/mcp/tools/tdx-search.js +1 -1
  80. package/dist/mcp/utils.js +1 -1
  81. package/dist/proxy/anthropic-adapter.js +1 -1
  82. package/dist/proxy/claude-usage-tracker.js +1 -1
  83. package/dist/proxy/context-signature.js +1 -1
  84. package/dist/proxy/conversation-utils.js +1 -1
  85. package/dist/proxy/passthrough-server.js +1 -1
  86. package/dist/proxy/server.js +1 -1
  87. package/dist/proxy/session-cache.js +1 -1
  88. package/dist/proxy/sse-usage-parser.js +1 -1
  89. package/dist/sdk/agent/agent-config.js +1 -1
  90. package/dist/sdk/agent/agent-ref-parser.js +1 -1
  91. package/dist/sdk/agent/agent-yaml.d.ts +3 -1
  92. package/dist/sdk/agent/agent-yaml.d.ts.map +1 -1
  93. package/dist/sdk/agent/agent-yaml.js +1 -1
  94. package/dist/sdk/agent/agent-yaml.js.map +1 -1
  95. package/dist/sdk/agent/test/evaluator.js +1 -1
  96. package/dist/sdk/agent/test/executor.js +1 -1
  97. package/dist/sdk/agent/test/index.js +1 -1
  98. package/dist/sdk/agent/test/output.js +1 -1
  99. package/dist/sdk/agent/test/parser.d.ts.map +1 -1
  100. package/dist/sdk/agent/test/parser.js +1 -1
  101. package/dist/sdk/agent/test/parser.js.map +1 -1
  102. package/dist/sdk/agent/test/types.d.ts +4 -0
  103. package/dist/sdk/agent/test/types.d.ts.map +1 -1
  104. package/dist/sdk/agent/types/agent-def.d.ts +3 -3
  105. package/dist/sdk/agent/types/agent-def.d.ts.map +1 -1
  106. package/dist/sdk/api.js +1 -1
  107. package/dist/sdk/api.js.map +1 -1
  108. package/dist/sdk/claude-agent/claude-agent-client.d.ts.map +1 -1
  109. package/dist/sdk/claude-agent/claude-agent-client.js +1 -1
  110. package/dist/sdk/claude-agent/claude-agent-client.js.map +1 -1
  111. package/dist/sdk/claude-agent/environment.js +1 -1
  112. package/dist/sdk/claude-agent/index.js +1 -1
  113. package/dist/sdk/claude-agent/system-prompts.d.ts +1 -1
  114. package/dist/sdk/claude-agent/system-prompts.d.ts.map +1 -1
  115. package/dist/sdk/claude-agent/system-prompts.js +1 -1
  116. package/dist/sdk/claude-agent/system-prompts.js.map +1 -1
  117. package/dist/sdk/claude-agent/types.d.ts +6 -0
  118. package/dist/sdk/claude-agent/types.d.ts.map +1 -1
  119. package/dist/sdk/client/cdp-api-client.d.ts +1 -2
  120. package/dist/sdk/client/cdp-api-client.d.ts.map +1 -1
  121. package/dist/sdk/client/cdp-api-client.js +1 -1
  122. package/dist/sdk/client/cdp-api-client.js.map +1 -1
  123. package/dist/sdk/client/endpoints.js +1 -1
  124. package/dist/sdk/client/engage-api-client.d.ts +1 -1
  125. package/dist/sdk/client/engage-api-client.js +1 -1
  126. package/dist/sdk/client/engage-api-client.js.map +1 -1
  127. package/dist/sdk/client/http-client.d.ts +2 -5
  128. package/dist/sdk/client/http-client.d.ts.map +1 -1
  129. package/dist/sdk/client/http-client.js +1 -1
  130. package/dist/sdk/client/http-client.js.map +1 -1
  131. package/dist/sdk/client/llm-api-client.d.ts +10 -3
  132. package/dist/sdk/client/llm-api-client.d.ts.map +1 -1
  133. package/dist/sdk/client/llm-api-client.js +1 -1
  134. package/dist/sdk/client/llm-api-client.js.map +1 -1
  135. package/dist/sdk/client/rate-limiter.js +1 -1
  136. package/dist/sdk/client/td-api-client.d.ts +2 -4
  137. package/dist/sdk/client/td-api-client.d.ts.map +1 -1
  138. package/dist/sdk/client/td-api-client.js +1 -1
  139. package/dist/sdk/client/td-api-client.js.map +1 -1
  140. package/dist/sdk/client/trino-api-client.d.ts +1 -3
  141. package/dist/sdk/client/trino-api-client.d.ts.map +1 -1
  142. package/dist/sdk/client/trino-api-client.js +1 -1
  143. package/dist/sdk/client/trino-api-client.js.map +1 -1
  144. package/dist/sdk/client/workflow-client.d.ts +1 -2
  145. package/dist/sdk/client/workflow-client.d.ts.map +1 -1
  146. package/dist/sdk/client/workflow-client.js +1 -1
  147. package/dist/sdk/client/workflow-client.js.map +1 -1
  148. package/dist/sdk/connection-validator.js +1 -1
  149. package/dist/sdk/connection.js +1 -1
  150. package/dist/sdk/connection.js.map +1 -1
  151. package/dist/sdk/engage.js +1 -1
  152. package/dist/sdk/errors.js +1 -1
  153. package/dist/sdk/index.d.ts +2 -10
  154. package/dist/sdk/index.d.ts.map +1 -1
  155. package/dist/sdk/index.js +1 -1
  156. package/dist/sdk/index.js.map +1 -1
  157. package/dist/sdk/io/index.js +1 -1
  158. package/dist/sdk/io/node-filesystem.js +1 -1
  159. package/dist/sdk/job.js +1 -1
  160. package/dist/sdk/job.js.map +1 -1
  161. package/dist/sdk/journey.js +1 -1
  162. package/dist/sdk/journey.js.map +1 -1
  163. package/dist/sdk/llm/chat-cache.js +1 -1
  164. package/dist/sdk/llm/index.d.ts +1 -0
  165. package/dist/sdk/llm/index.d.ts.map +1 -1
  166. package/dist/sdk/llm/index.js +1 -1
  167. package/dist/sdk/llm/index.js.map +1 -1
  168. package/dist/sdk/llm/llm-backup-utils.js +1 -1
  169. package/dist/sdk/llm/model-aliases.js +1 -1
  170. package/dist/sdk/llm/model-factors.js +1 -1
  171. package/dist/sdk/query/index.js +1 -1
  172. package/dist/sdk/query/index.js.map +1 -1
  173. package/dist/sdk/query/sql-parser.js +1 -1
  174. package/dist/sdk/segment/child-segment-yaml.js +1 -1
  175. package/dist/sdk/segment/fields-display.js +1 -1
  176. package/dist/sdk/segment/file-discovery.js +1 -1
  177. package/dist/sdk/segment/journey-utils.js +1 -1
  178. package/dist/sdk/segment/journey-yaml.js +1 -1
  179. package/dist/sdk/segment/parent-segment-preview.js +1 -1
  180. package/dist/sdk/segment/parent-segment-yaml.js +1 -1
  181. package/dist/sdk/segment/pull-workflow.js +1 -1
  182. package/dist/sdk/segment/push-workflow.js +1 -1
  183. package/dist/sdk/segment/resolution-context.js +1 -1
  184. package/dist/sdk/segment/segment-path-parser.js +1 -1
  185. package/dist/sdk/segment/segment-ref-parser.js +1 -1
  186. package/dist/sdk/segment/target-resolution.js +1 -1
  187. package/dist/sdk/segment/tdx-config.js +1 -1
  188. package/dist/sdk/segment/validate-files.js +1 -1
  189. package/dist/sdk/segment/yaml-validator.js +1 -1
  190. package/dist/sdk/segment.js +1 -1
  191. package/dist/sdk/segment.js.map +1 -1
  192. package/dist/sdk/types/index.d.ts +1 -1
  193. package/dist/sdk/types/index.d.ts.map +1 -1
  194. package/dist/sdk/types/index.js +1 -1
  195. package/dist/sdk/types/index.js.map +1 -1
  196. package/dist/sdk/types/llm.d.ts +36 -1
  197. package/dist/sdk/types/llm.d.ts.map +1 -1
  198. package/dist/sdk/types/progress.js +1 -1
  199. package/dist/sdk/user.js +1 -1
  200. package/dist/sdk/user.js.map +1 -1
  201. package/dist/sdk/util/format-detector.js +1 -1
  202. package/dist/sdk/util/formatters.js +1 -1
  203. package/dist/sdk/util/index.js +1 -1
  204. package/dist/sdk/util/tree-formatter.js +1 -1
  205. package/dist/sdk/workflow/clone-workflow.js +1 -1
  206. package/dist/sdk/workflow/index.js +1 -1
  207. package/dist/sdk/workflow/index.js.map +1 -1
  208. package/dist/sdk/workflow/pull-workflow.js +1 -1
  209. package/dist/sdk/workflow/push-workflow.js +1 -1
  210. package/dist/sdk/workflow/tdx-config.js +1 -1
  211. package/dist/sdk/workflow/workflow-utils.js +1 -1
  212. package/dist/test-utils/command-runner.d.ts +99 -0
  213. package/dist/test-utils/command-runner.d.ts.map +1 -0
  214. package/dist/test-utils/command-runner.js +1 -0
  215. package/dist/test-utils/command-runner.js.map +1 -0
  216. package/dist/test-utils/factories.d.ts +183 -0
  217. package/dist/test-utils/factories.d.ts.map +1 -0
  218. package/dist/test-utils/factories.js +1 -0
  219. package/dist/test-utils/factories.js.map +1 -0
  220. package/dist/test-utils/fixtures.d.ts +395 -0
  221. package/dist/test-utils/fixtures.d.ts.map +1 -0
  222. package/dist/test-utils/fixtures.js +1 -0
  223. package/dist/test-utils/fixtures.js.map +1 -0
  224. package/dist/test-utils/http-mock.d.ts +285 -0
  225. package/dist/test-utils/http-mock.d.ts.map +1 -0
  226. package/dist/test-utils/http-mock.js +1 -0
  227. package/dist/test-utils/http-mock.js.map +1 -0
  228. package/dist/test-utils/index.d.ts +47 -0
  229. package/dist/test-utils/index.d.ts.map +1 -0
  230. package/dist/test-utils/index.js +1 -0
  231. package/dist/test-utils/index.js.map +1 -0
  232. package/dist/utils/async.js +1 -1
  233. package/dist/utils/colors.js +1 -1
  234. package/dist/utils/diff.js +1 -1
  235. package/dist/utils/file-permissions.js +1 -1
  236. package/dist/utils/global-cache.js +1 -1
  237. package/dist/utils/json-loader.js +1 -1
  238. package/dist/utils/local-cache.js +1 -1
  239. package/dist/utils/logger/formatters/default-formatter.d.ts +33 -0
  240. package/dist/utils/logger/formatters/default-formatter.d.ts.map +1 -0
  241. package/dist/utils/logger/formatters/default-formatter.js +1 -0
  242. package/dist/utils/logger/formatters/default-formatter.js.map +1 -0
  243. package/dist/utils/logger/formatters/index.d.ts +8 -0
  244. package/dist/utils/logger/formatters/index.d.ts.map +1 -0
  245. package/dist/utils/logger/formatters/index.js +1 -0
  246. package/dist/utils/logger/formatters/index.js.map +1 -0
  247. package/dist/utils/logger/handlers/console-handler.d.ts +31 -0
  248. package/dist/utils/logger/handlers/console-handler.d.ts.map +1 -0
  249. package/dist/utils/logger/handlers/console-handler.js +1 -0
  250. package/dist/utils/logger/handlers/console-handler.js.map +1 -0
  251. package/dist/utils/logger/handlers/file-handler.d.ts +51 -0
  252. package/dist/utils/logger/handlers/file-handler.d.ts.map +1 -0
  253. package/dist/utils/logger/handlers/file-handler.js +1 -0
  254. package/dist/utils/logger/handlers/file-handler.js.map +1 -0
  255. package/dist/utils/logger/handlers/index.d.ts +11 -0
  256. package/dist/utils/logger/handlers/index.d.ts.map +1 -0
  257. package/dist/utils/logger/handlers/index.js +1 -0
  258. package/dist/utils/logger/handlers/index.js.map +1 -0
  259. package/dist/utils/logger/handlers/null-handler.d.ts +16 -0
  260. package/dist/utils/logger/handlers/null-handler.d.ts.map +1 -0
  261. package/dist/utils/logger/handlers/null-handler.js +1 -0
  262. package/dist/utils/logger/handlers/null-handler.js.map +1 -0
  263. package/dist/utils/logger/index.d.ts +37 -0
  264. package/dist/utils/logger/index.d.ts.map +1 -0
  265. package/dist/utils/logger/index.js +1 -0
  266. package/dist/utils/logger/index.js.map +1 -0
  267. package/dist/utils/logger/logger.d.ts +132 -0
  268. package/dist/utils/logger/logger.d.ts.map +1 -0
  269. package/dist/utils/logger/logger.js +1 -0
  270. package/dist/utils/logger/logger.js.map +1 -0
  271. package/dist/utils/logger/types.d.ts +95 -0
  272. package/dist/utils/logger/types.d.ts.map +1 -0
  273. package/dist/utils/logger/types.js +1 -0
  274. package/dist/utils/logger/types.js.map +1 -0
  275. package/dist/utils/option-validation.js +1 -1
  276. package/dist/utils/port.js +1 -1
  277. package/dist/utils/process.js +1 -1
  278. package/dist/utils/prompt.js +1 -1
  279. package/dist/utils/spinner.js +1 -1
  280. package/dist/utils/sse-parser.d.ts +9 -2
  281. package/dist/utils/sse-parser.d.ts.map +1 -1
  282. package/dist/utils/sse-parser.js +1 -1
  283. package/dist/utils/sse-parser.js.map +1 -1
  284. package/dist/utils/string-utils.js +1 -1
  285. package/dist/utils/table-ref-parser.js +1 -1
  286. package/dist/utils/tdx-logger.d.ts +44 -21
  287. package/dist/utils/tdx-logger.d.ts.map +1 -1
  288. package/dist/utils/tdx-logger.js +1 -1
  289. package/dist/utils/tdx-logger.js.map +1 -1
  290. package/dist/utils/version-check.js +1 -1
  291. package/package.json +1 -1
@@ -0,0 +1,285 @@
1
+ /**
2
+ * HTTP Mock Registry for Testing
3
+ *
4
+ * Inspired by GitHub CLI's httpmock package. Provides:
5
+ * - Registry pattern for centralized stub management
6
+ * - Request matchers for REST endpoints
7
+ * - Response generators for common patterns
8
+ * - Verification that all stubs were matched
9
+ * - Stack traces for debugging unmatched stubs
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * import { createHTTPMock, HTTPMockRegistry } from '../test-utils/http-mock.js';
14
+ *
15
+ * describe('MyTest', () => {
16
+ * let http: HTTPMockRegistry;
17
+ *
18
+ * beforeEach(() => {
19
+ * http = createHTTPMock();
20
+ * global.fetch = http.createFetch();
21
+ * });
22
+ *
23
+ * afterEach(() => {
24
+ * http.verify({ fail: (msg) => { throw new Error(msg); } });
25
+ * });
26
+ *
27
+ * it('should call API', async () => {
28
+ * http.register(
29
+ * http.REST('GET', '/v1/users'),
30
+ * HTTPMockRegistry.jsonResponse({ users: [] })
31
+ * );
32
+ *
33
+ * const result = await myFunction();
34
+ * expect(result.users).toEqual([]);
35
+ * });
36
+ * });
37
+ * ```
38
+ */
39
+ import { type Mock } from 'vitest';
40
+ /**
41
+ * Captured request information for inspection and matching
42
+ */
43
+ export interface MockRequest {
44
+ method: string;
45
+ url: string;
46
+ headers: Record<string, string>;
47
+ body?: unknown;
48
+ }
49
+ /**
50
+ * Function that determines if a request matches a stub
51
+ */
52
+ export type RequestMatcher = (req: MockRequest) => boolean;
53
+ /**
54
+ * Function that generates a response for a matched request
55
+ */
56
+ export type ResponseGenerator = (req: MockRequest) => Response | Promise<Response>;
57
+ /**
58
+ * Callback for inspecting request body during matching
59
+ */
60
+ export type RequestInspector = (body: unknown, req: MockRequest) => void;
61
+ /**
62
+ * Interface for test failure reporting
63
+ */
64
+ export interface TestContext {
65
+ fail: (message: string) => void;
66
+ }
67
+ /**
68
+ * HTTP Mock Registry
69
+ *
70
+ * Manages HTTP request stubs with verification support.
71
+ * All registered stubs are tracked and can be verified at test end.
72
+ */
73
+ export declare class HTTPMockRegistry {
74
+ private stubs;
75
+ private requests;
76
+ private fetchMock;
77
+ /**
78
+ * Create a REST endpoint matcher
79
+ *
80
+ * @param method - HTTP method (GET, POST, PUT, DELETE, etc.)
81
+ * @param pathPattern - String or RegExp to match against URL path
82
+ * @returns Matcher function
83
+ *
84
+ * @example
85
+ * ```typescript
86
+ * http.REST('GET', '/v1/users') // Exact path match
87
+ * http.REST('GET', /\/v1\/users\/\d+/) // Regex match
88
+ * http.REST('POST', '/v1/audiences') // POST request
89
+ * ```
90
+ */
91
+ REST(method: string, pathPattern: string | RegExp): RequestMatcher;
92
+ /**
93
+ * Create a matcher that also validates query parameters
94
+ *
95
+ * @param baseMatcher - Base matcher (usually from REST())
96
+ * @param params - Required query parameters
97
+ * @returns Combined matcher function
98
+ *
99
+ * @example
100
+ * ```typescript
101
+ * http.register(
102
+ * http.withQuery(http.REST('GET', '/v1/users'), { limit: '10' }),
103
+ * HTTPMockRegistry.jsonResponse({ users: [] })
104
+ * );
105
+ * ```
106
+ */
107
+ withQuery(baseMatcher: RequestMatcher, params: Record<string, string>): RequestMatcher;
108
+ /**
109
+ * Create a matcher that validates request body
110
+ *
111
+ * @param baseMatcher - Base matcher (usually from REST())
112
+ * @param bodyMatcher - Function to validate body or object for deep equality
113
+ * @returns Combined matcher function
114
+ *
115
+ * @example
116
+ * ```typescript
117
+ * http.register(
118
+ * http.withBody(http.REST('POST', '/v1/users'), { name: 'test' }),
119
+ * HTTPMockRegistry.jsonResponse({ id: '123' })
120
+ * );
121
+ * ```
122
+ */
123
+ withBody(baseMatcher: RequestMatcher, bodyMatcher: Record<string, unknown> | ((body: unknown) => boolean)): RequestMatcher;
124
+ /**
125
+ * Create a matcher that validates host
126
+ *
127
+ * @param baseMatcher - Base matcher (usually from REST())
128
+ * @param host - Expected host (e.g., 'api.treasuredata.com')
129
+ * @returns Combined matcher function
130
+ */
131
+ withHost(baseMatcher: RequestMatcher, host: string): RequestMatcher;
132
+ /**
133
+ * Register a stub for matching requests
134
+ *
135
+ * Stubs are matched in order of registration (first match wins).
136
+ * Unmatched stubs will cause verify() to fail.
137
+ *
138
+ * @param matcher - Function to match requests
139
+ * @param responder - Function to generate responses
140
+ * @param options - Optional configuration
141
+ *
142
+ * @example
143
+ * ```typescript
144
+ * http.register(
145
+ * http.REST('GET', '/v1/users'),
146
+ * HTTPMockRegistry.jsonResponse({ users: [] }),
147
+ * { description: 'List users endpoint' }
148
+ * );
149
+ * ```
150
+ */
151
+ register(matcher: RequestMatcher, responder: ResponseGenerator, options?: {
152
+ description?: string;
153
+ }): void;
154
+ /**
155
+ * Register a stub with request body inspection
156
+ *
157
+ * Allows asserting on request bodies during test execution.
158
+ *
159
+ * @param matcher - Function to match requests
160
+ * @param responder - Function to generate responses
161
+ * @param inspector - Callback to inspect request body
162
+ *
163
+ * @example
164
+ * ```typescript
165
+ * http.registerWithInspector(
166
+ * http.REST('POST', '/v1/users'),
167
+ * HTTPMockRegistry.jsonResponse({ id: '123' }),
168
+ * (body) => {
169
+ * expect(body).toHaveProperty('name');
170
+ * }
171
+ * );
172
+ * ```
173
+ */
174
+ registerWithInspector(matcher: RequestMatcher, responder: ResponseGenerator, inspector: RequestInspector): void;
175
+ /**
176
+ * Create a JSON response
177
+ *
178
+ * @param data - Response body (will be serialized to JSON)
179
+ * @param status - HTTP status code (default: 200)
180
+ * @returns Response generator function
181
+ */
182
+ static jsonResponse(data: unknown, status?: number): ResponseGenerator;
183
+ /**
184
+ * Create an error response
185
+ *
186
+ * @param status - HTTP status code
187
+ * @param message - Error message
188
+ * @param format - Error format ('simple' | 'td-api' | 'rfc9457')
189
+ * @returns Response generator function
190
+ */
191
+ static errorResponse(status: number, message: string, format?: 'simple' | 'td-api' | 'rfc9457'): ResponseGenerator;
192
+ /**
193
+ * Create a response with custom headers
194
+ *
195
+ * @param data - Response body
196
+ * @param headers - Custom headers
197
+ * @param status - HTTP status code
198
+ * @returns Response generator function
199
+ */
200
+ static jsonResponseWithHeaders(data: unknown, headers: Record<string, string>, status?: number): ResponseGenerator;
201
+ /**
202
+ * Create a plain text response
203
+ *
204
+ * @param text - Response body
205
+ * @param status - HTTP status code
206
+ * @returns Response generator function
207
+ */
208
+ static textResponse(text: string, status?: number): ResponseGenerator;
209
+ /**
210
+ * Create a network error (simulates fetch failure)
211
+ *
212
+ * @param message - Error message
213
+ * @returns Response generator function that throws
214
+ */
215
+ static networkError(message: string): ResponseGenerator;
216
+ /**
217
+ * Create the mock fetch function
218
+ *
219
+ * @returns Mock fetch function to assign to global.fetch
220
+ */
221
+ createFetch(): Mock;
222
+ /**
223
+ * Parse a fetch request into MockRequest format
224
+ */
225
+ private parseRequest;
226
+ /**
227
+ * Verify all registered stubs were matched
228
+ *
229
+ * Call this in afterEach() to ensure no dead stubs exist.
230
+ *
231
+ * @param t - Test context with fail() method
232
+ *
233
+ * @example
234
+ * ```typescript
235
+ * afterEach(() => {
236
+ * http.verify({ fail: (msg) => { throw new Error(msg); } });
237
+ * });
238
+ * ```
239
+ */
240
+ verify(t: TestContext): void;
241
+ /**
242
+ * Get all captured requests
243
+ *
244
+ * @returns Array of all requests made through the mock
245
+ */
246
+ getRequests(): MockRequest[];
247
+ /**
248
+ * Get the last captured request
249
+ *
250
+ * @returns Last request or undefined if none
251
+ */
252
+ getLastRequest(): MockRequest | undefined;
253
+ /**
254
+ * Check if a specific request was made
255
+ *
256
+ * @param method - HTTP method
257
+ * @param urlPattern - String or RegExp to match URL
258
+ * @returns True if matching request was made
259
+ */
260
+ wasCalled(method: string, urlPattern: string | RegExp): boolean;
261
+ /**
262
+ * Get number of times a stub was matched
263
+ *
264
+ * @param index - Stub index (0-based, in registration order)
265
+ * @returns Number of times matched
266
+ */
267
+ getMatchCount(index: number): number;
268
+ /**
269
+ * Reset registry state (clear stubs and requests)
270
+ */
271
+ reset(): void;
272
+ /**
273
+ * Get status text for common HTTP status codes
274
+ */
275
+ private static getStatusText;
276
+ }
277
+ /**
278
+ * Create a new HTTP mock registry
279
+ *
280
+ * Convenience function for creating registries in tests.
281
+ *
282
+ * @returns New HTTPMockRegistry instance
283
+ */
284
+ export declare function createHTTPMock(): HTTPMockRegistry;
285
+ //# sourceMappingURL=http-mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-mock.d.ts","sourceRoot":"","sources":["../../src/test-utils/http-mock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ const a159_0x5d0006=a159_0x462b;function a159_0x462b(_0x4c9534,_0xab235d){_0x4c9534=_0x4c9534-0xcd;const _0x27799c=a159_0x2779();let _0x462b60=_0x27799c[_0x4c9534];return _0x462b60;}(function(_0x1ee4e5,_0x2cf5c0){const _0x294068=a159_0x462b,_0x5b39a3=_0x1ee4e5();while(!![]){try{const _0x52fe86=-parseInt(_0x294068(0x10d))/0x1+parseInt(_0x294068(0xea))/0x2+parseInt(_0x294068(0xff))/0x3+parseInt(_0x294068(0xd5))/0x4+parseInt(_0x294068(0xef))/0x5*(-parseInt(_0x294068(0xf2))/0x6)+parseInt(_0x294068(0xec))/0x7*(-parseInt(_0x294068(0x10b))/0x8)+-parseInt(_0x294068(0xda))/0x9;if(_0x52fe86===_0x2cf5c0)break;else _0x5b39a3['push'](_0x5b39a3['shift']());}catch(_0xbbda8e){_0x5b39a3['push'](_0x5b39a3['shift']());}}}(a159_0x2779,0xdc22f));function a159_0x2779(){const _0x122c54=['Unauthorized','map','register','searchParams','url','verify','reset','pathname','withBody','parse','2937216ZLMLwN','Unmatched\x20stub','stringify','td-api','isArray','2792457mgDJuL','Too\x20Many\x20Requests','getMatchCount','fail','toLowerCase','getRequests','description','entries','withQuery','getStatusText','error','mockImplementation','application/json','method','test','Unprocessable\x20Entity','2124878vZZgxy','Internal\x20Server\x20Error','1066415mroHNX','simple','Forbidden','5qZJbhX','registerWithInspector','some','5833104iKVKey','requests','headers','get','https://api.treasuredata.com/errors/','body','Bad\x20Request','Registered\x20stubs:\x0a','REST','includes','stubs','Created','fetchMock','3588447UPznrA','slice','host','createFetch','every','split','withHost','No\x20Content','Conflict','networkError','Bad\x20Gateway','getLastRequest','24GMZmAb','matchCount','351721jEFGUB','textResponse','jsonResponse','join','GET','forEach','toUpperCase','parseRequest','stack','string'];a159_0x2779=function(){return _0x122c54;};return a159_0x2779();}import{vi}from'vitest';export class HTTPMockRegistry{[a159_0x5d0006(0xfc)]=[];[a159_0x5d0006(0xf3)]=[];[a159_0x5d0006(0xfe)]=null;[a159_0x5d0006(0xfa)](_0xdc6372,_0x538e02){return _0x2a64f8=>{const _0x543e2c=a159_0x462b;if(_0x2a64f8[_0x543e2c(0xe7)]['toUpperCase']()!==_0xdc6372[_0x543e2c(0x113)]())return![];const _0x1ed276=new URL(_0x2a64f8[_0x543e2c(0xcf)]);if(typeof _0x538e02==='string')return _0x1ed276[_0x543e2c(0xd2)]===_0x538e02||_0x1ed276[_0x543e2c(0xd2)][_0x543e2c(0xfb)](_0x538e02);return _0x538e02[_0x543e2c(0xe8)](_0x1ed276[_0x543e2c(0xd2)]);};}[a159_0x5d0006(0xe2)](_0x59efb6,_0xd6d6d4){return _0x3d80de=>{const _0x30b167=a159_0x462b;if(!_0x59efb6(_0x3d80de))return![];const _0x44fcf0=new URL(_0x3d80de[_0x30b167(0xcf)]);return Object[_0x30b167(0xe1)](_0xd6d6d4)[_0x30b167(0x103)](([_0x1b340a,_0x57fd4b])=>_0x44fcf0[_0x30b167(0xce)][_0x30b167(0xf5)](_0x1b340a)===_0x57fd4b);};}[a159_0x5d0006(0xd3)](_0x4eb01f,_0xefda2c){return _0x3417cc=>{const _0x1cd9aa=a159_0x462b;if(!_0x4eb01f(_0x3417cc))return![];if(typeof _0xefda2c==='function')return _0xefda2c(_0x3417cc['body']);return JSON[_0x1cd9aa(0xd7)](_0x3417cc['body'])===JSON[_0x1cd9aa(0xd7)](_0xefda2c);};}[a159_0x5d0006(0x105)](_0x3ae06c,_0x883150){return _0x594e86=>{const _0x578acf=a159_0x462b;if(!_0x3ae06c(_0x594e86))return![];const _0xeb9a46=new URL(_0x594e86[_0x578acf(0xcf)]);return _0xeb9a46[_0x578acf(0x101)]===_0x883150;};}[a159_0x5d0006(0xcd)](_0x7593b9,_0x649d76,_0x2aae7e){const _0x5ba77f=a159_0x5d0006;this[_0x5ba77f(0xfc)]['push']({'matcher':_0x7593b9,'responder':_0x649d76,'matched':![],'matchCount':0x0,'stack':new Error()['stack']??'','description':_0x2aae7e?.[_0x5ba77f(0xe0)]});}[a159_0x5d0006(0xf0)](_0x49711b,_0x4c701d,_0xbb8b14){const _0x7119f9=_0x5b41bc=>{const _0x244ca8=a159_0x462b;return _0xbb8b14(_0x5b41bc[_0x244ca8(0xf7)],_0x5b41bc),_0x4c701d(_0x5b41bc);};this['register'](_0x49711b,_0x7119f9);}static[a159_0x5d0006(0x10f)](_0x1da8ee,_0x381082=0xc8){const _0x7b1b4f=a159_0x5d0006;return()=>new Response(JSON['stringify'](_0x1da8ee),{'status':_0x381082,'headers':{'Content-Type':_0x7b1b4f(0xe6)}});}static['errorResponse'](_0x2a1306,_0x174a43,_0x4d1647=a159_0x5d0006(0xed)){return()=>{const _0x5badd8=a159_0x462b;let _0x280dd9;switch(_0x4d1647){case _0x5badd8(0xd8):_0x280dd9={'errors':{'error':_0x174a43,'message':_0x174a43,'severity':_0x5badd8(0xe4),'status_code':_0x2a1306}};break;case'rfc9457':_0x280dd9={'type':_0x5badd8(0xf6)+_0x2a1306,'title':HTTPMockRegistry['getStatusText'](_0x2a1306),'status':_0x2a1306,'detail':_0x174a43};break;default:_0x280dd9={'error':_0x174a43};}return new Response(JSON[_0x5badd8(0xd7)](_0x280dd9),{'status':_0x2a1306,'headers':{'Content-Type':_0x5badd8(0xe6)}});};}static['jsonResponseWithHeaders'](_0x391aa7,_0x2d8499,_0x11a362=0xc8){const _0x1e2d2e=a159_0x5d0006;return()=>new Response(JSON[_0x1e2d2e(0xd7)](_0x391aa7),{'status':_0x11a362,'headers':{'Content-Type':_0x1e2d2e(0xe6),..._0x2d8499}});}static[a159_0x5d0006(0x10e)](_0x339ee6,_0x8bb090=0xc8){return()=>new Response(_0x339ee6,{'status':_0x8bb090,'headers':{'Content-Type':'text/plain'}});}static[a159_0x5d0006(0x108)](_0x4b592f){return()=>{throw new Error(_0x4b592f);};}[a159_0x5d0006(0x102)](){const _0x160fb7=a159_0x5d0006;return this[_0x160fb7(0xfe)]=vi['fn']()[_0x160fb7(0xe5)](async(_0x10752e,_0x5bf520)=>{const _0x4e05c7=_0x160fb7,_0x5d53ac=this[_0x4e05c7(0x114)](_0x10752e,_0x5bf520);this[_0x4e05c7(0xf3)]['push'](_0x5d53ac);for(const _0x3695ef of this['stubs']){if(_0x3695ef['matcher'](_0x5d53ac))return _0x3695ef['matched']=!![],_0x3695ef[_0x4e05c7(0x10c)]++,_0x3695ef['responder'](_0x5d53ac);}const _0x540ad6=this[_0x4e05c7(0xfc)]['map']((_0x3f43ae,_0x5420ec)=>'\x20\x20'+(_0x5420ec+0x1)+'.\x20'+(_0x3f43ae[_0x4e05c7(0xe0)]??'unnamed\x20stub'))['join']('\x0a');throw new Error('No\x20stub\x20matched\x20request:\x20'+_0x5d53ac[_0x4e05c7(0xe7)]+'\x20'+_0x5d53ac[_0x4e05c7(0xcf)]+'\x0a'+('Request\x20body:\x20'+JSON[_0x4e05c7(0xd7)](_0x5d53ac[_0x4e05c7(0xf7)])+'\x0a')+(_0x4e05c7(0xf9)+(_0x540ad6||'\x20\x20(none)')));}),this[_0x160fb7(0xfe)];}[a159_0x5d0006(0x114)](_0x55a494,_0x2284d3){const _0x282fb7=a159_0x5d0006,_0x2d7999={};if(_0x2284d3?.[_0x282fb7(0xf4)]){if(_0x2284d3['headers']instanceof Headers)_0x2284d3[_0x282fb7(0xf4)][_0x282fb7(0x112)]((_0x243317,_0x574281)=>{const _0x4df38d=_0x282fb7;_0x2d7999[_0x574281[_0x4df38d(0xde)]()]=_0x243317;});else{if(Array[_0x282fb7(0xd9)](_0x2284d3['headers']))for(const [_0x43446c,_0x55067c]of _0x2284d3[_0x282fb7(0xf4)]){_0x2d7999[_0x43446c[_0x282fb7(0xde)]()]=_0x55067c;}else for(const [_0x5056b8,_0x1dea7c]of Object['entries'](_0x2284d3[_0x282fb7(0xf4)])){_0x1dea7c!==undefined&&(_0x2d7999[_0x5056b8[_0x282fb7(0xde)]()]=_0x1dea7c);}}}let _0x1b9614;if(_0x2284d3?.[_0x282fb7(0xf7)])try{_0x1b9614=JSON[_0x282fb7(0xd4)](_0x2284d3[_0x282fb7(0xf7)]);}catch{_0x1b9614=_0x2284d3[_0x282fb7(0xf7)];}return{'method':_0x2284d3?.[_0x282fb7(0xe7)]??_0x282fb7(0x111),'url':_0x55a494,'headers':_0x2d7999,'body':_0x1b9614};}[a159_0x5d0006(0xd0)](_0xa96fec){const _0x24d4aa=a159_0x5d0006,_0x6bda8=this[_0x24d4aa(0xfc)]['filter'](_0x295c8d=>!_0x295c8d['matched']);if(_0x6bda8['length']>0x0){const _0x172729=_0x6bda8[_0x24d4aa(0x118)](_0x5ad12a=>{const _0x431b36=_0x24d4aa,_0x25af92=_0x5ad12a[_0x431b36(0xe0)]?'\x20('+_0x5ad12a[_0x431b36(0xe0)]+')':'',_0x203cb6=_0x5ad12a[_0x431b36(0x115)][_0x431b36(0x104)]('\x0a')[_0x431b36(0x100)](0x2,0x5)[_0x431b36(0x110)]('\x0a');return _0x431b36(0xd6)+_0x25af92+'\x20registered\x20at:\x0a'+_0x203cb6;});_0xa96fec[_0x24d4aa(0xdd)](_0x6bda8['length']+'\x20stub(s)\x20were\x20not\x20matched:\x0a\x0a'+_0x172729[_0x24d4aa(0x110)]('\x0a\x0a'));}}[a159_0x5d0006(0xdf)](){return[...this['requests']];}[a159_0x5d0006(0x10a)](){const _0x39a178=a159_0x5d0006;return this[_0x39a178(0xf3)][this[_0x39a178(0xf3)]['length']-0x1];}['wasCalled'](_0x557db6,_0xea9e95){const _0x3ca092=a159_0x5d0006;return this[_0x3ca092(0xf3)][_0x3ca092(0xf1)](_0xdbc60c=>{const _0x2e832c=_0x3ca092;if(_0xdbc60c[_0x2e832c(0xe7)][_0x2e832c(0x113)]()!==_0x557db6[_0x2e832c(0x113)]())return![];if(typeof _0xea9e95===_0x2e832c(0x116))return _0xdbc60c[_0x2e832c(0xcf)]['includes'](_0xea9e95);return _0xea9e95[_0x2e832c(0xe8)](_0xdbc60c[_0x2e832c(0xcf)]);});}[a159_0x5d0006(0xdc)](_0x3f1a4b){const _0x1aab5a=a159_0x5d0006;return this[_0x1aab5a(0xfc)][_0x3f1a4b]?.[_0x1aab5a(0x10c)]??0x0;}[a159_0x5d0006(0xd1)](){const _0xbc84b2=a159_0x5d0006;this[_0xbc84b2(0xfc)]=[],this[_0xbc84b2(0xf3)]=[],this['fetchMock']=null;}static[a159_0x5d0006(0xe3)](_0x44354f){const _0x58788e=a159_0x5d0006,_0x9ef199={0xc8:'OK',0xc9:_0x58788e(0xfd),0xcc:_0x58788e(0x106),0x190:_0x58788e(0xf8),0x191:_0x58788e(0x117),0x193:_0x58788e(0xee),0x194:'Not\x20Found',0x199:_0x58788e(0x107),0x1a6:_0x58788e(0xe9),0x1ad:_0x58788e(0xdb),0x1f4:_0x58788e(0xeb),0x1f6:_0x58788e(0x109),0x1f7:'Service\x20Unavailable'};return _0x9ef199[_0x44354f]??'Unknown';}}export function createHTTPMock(){return new HTTPMockRegistry();}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-mock.js","sourceRoot":"","sources":["../../src/test-utils/http-mock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Test Utilities
3
+ *
4
+ * Centralized test helpers inspired by GitHub CLI's testing patterns.
5
+ * These utilities provide:
6
+ * - HTTP mock registry for request stubbing and verification
7
+ * - Factories for common test objects
8
+ * - Fixtures for shared test data
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * import {
13
+ * createHTTPMock,
14
+ * HTTPMockRegistry,
15
+ * createTestCommandContext,
16
+ * fixtures,
17
+ * } from '../test-utils/index.js';
18
+ *
19
+ * describe('MyCommand', () => {
20
+ * let http: HTTPMockRegistry;
21
+ *
22
+ * beforeEach(() => {
23
+ * http = createHTTPMock();
24
+ * global.fetch = http.createFetch();
25
+ * });
26
+ *
27
+ * afterEach(() => {
28
+ * http.verify({ fail: (msg) => { throw new Error(msg); } });
29
+ * });
30
+ *
31
+ * it('should list databases', async () => {
32
+ * http.register(
33
+ * http.REST('GET', '/v3/database/list'),
34
+ * HTTPMockRegistry.jsonResponse({ databases: [fixtures.database.basic] })
35
+ * );
36
+ *
37
+ * const ctx = createTestCommandContext({ options: { format: 'json' } });
38
+ * // ... test command
39
+ * });
40
+ * });
41
+ * ```
42
+ */
43
+ export { HTTPMockRegistry, createHTTPMock, type MockRequest, type RequestMatcher, type ResponseGenerator, type RequestInspector, type TestContext, } from './http-mock.js';
44
+ export { createTestSDKContext, createTestGlobalOptions, createTestCommandContext, createMockTDX, captureConsole, type TestSDKContext, type MockTDX, } from './factories.js';
45
+ export { fixtures, createDatabase, createTable, createParentSegment, createSegment, createJourney, createQueryResult, createUser, createJob, createWorkflow, } from './fixtures.js';
46
+ export { CommandRunner, createCommandRunner, type CommandResult, type RunOptions, } from './command-runner.js';
47
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/test-utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAGH,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,WAAW,GACjB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,KAAK,cAAc,EACnB,KAAK,OAAO,GACb,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,QAAQ,EACR,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,cAAc,GACf,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,KAAK,aAAa,EAClB,KAAK,UAAU,GAChB,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1 @@
1
+ (function(_0x2c6408,_0x464d60){var _0x5d2f91=a160_0x3e96,_0x211383=_0x2c6408();while(!![]){try{var _0x51135a=parseInt(_0x5d2f91(0xa8))/0x1*(parseInt(_0x5d2f91(0xa3))/0x2)+-parseInt(_0x5d2f91(0x9f))/0x3*(parseInt(_0x5d2f91(0xa5))/0x4)+parseInt(_0x5d2f91(0x9e))/0x5*(parseInt(_0x5d2f91(0x9d))/0x6)+-parseInt(_0x5d2f91(0xa2))/0x7+parseInt(_0x5d2f91(0xa7))/0x8*(parseInt(_0x5d2f91(0xa0))/0x9)+parseInt(_0x5d2f91(0xa4))/0xa*(parseInt(_0x5d2f91(0xa6))/0xb)+-parseInt(_0x5d2f91(0xa1))/0xc;if(_0x51135a===_0x464d60)break;else _0x211383['push'](_0x211383['shift']());}catch(_0x500a7f){_0x211383['push'](_0x211383['shift']());}}}(a160_0x3418,0x9223a));export{HTTPMockRegistry,createHTTPMock}from'./http-mock.js';export{createTestSDKContext,createTestGlobalOptions,createTestCommandContext,createMockTDX,captureConsole}from'./factories.js';function a160_0x3e96(_0x47ba0,_0x52564a){_0x47ba0=_0x47ba0-0x9d;var _0x341837=a160_0x3418();var _0x3e9667=_0x341837[_0x47ba0];return _0x3e9667;}export{fixtures,createDatabase,createTable,createParentSegment,createSegment,createJourney,createQueryResult,createUser,createJob,createWorkflow}from'./fixtures.js';export{CommandRunner,createCommandRunner}from'./command-runner.js';function a160_0x3418(){var _0x4079c3=['605CVLTzy','64LUcSIj','446054sUKNRi','6tuDEMl','3156025mnGPUJ','13902xBAUCK','742878dIjhuW','6849564iMdliP','6364645Yqwbrh','2LDknKg','77170yhmtCR','72JLTDwM'];a160_0x3418=function(){return _0x4079c3;};return a160_0x3418();}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/test-utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,qBAAqB;AACrB,OAAO,EACL,gBAAgB,EAChB,cAAc,GAMf,MAAM,gBAAgB,CAAC;AAExB,iBAAiB;AACjB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,aAAa,EACb,cAAc,GAGf,MAAM,gBAAgB,CAAC;AAExB,gBAAgB;AAChB,OAAO,EACL,QAAQ,EACR,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,uCAAuC;AACvC,OAAO,EACL,aAAa,EACb,mBAAmB,GAGpB,MAAM,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- function a155_0x4999(_0x55dd61,_0x470d66){_0x55dd61=_0x55dd61-0xe2;const _0x52f0f4=a155_0x52f0();let _0x4999d0=_0x52f0f4[_0x55dd61];return _0x4999d0;}(function(_0x457400,_0xe5e993){const _0x22930d=a155_0x4999,_0x5a7ad8=_0x457400();while(!![]){try{const _0x28a3db=parseInt(_0x22930d(0xea))/0x1*(parseInt(_0x22930d(0xf1))/0x2)+-parseInt(_0x22930d(0xe7))/0x3*(-parseInt(_0x22930d(0xe8))/0x4)+parseInt(_0x22930d(0xee))/0x5*(parseInt(_0x22930d(0xef))/0x6)+parseInt(_0x22930d(0xed))/0x7*(-parseInt(_0x22930d(0xeb))/0x8)+parseInt(_0x22930d(0xec))/0x9+parseInt(_0x22930d(0xe9))/0xa+-parseInt(_0x22930d(0xf2))/0xb*(parseInt(_0x22930d(0xe3))/0xc);if(_0x28a3db===_0xe5e993)break;else _0x5a7ad8['push'](_0x5a7ad8['shift']());}catch(_0x47cbe6){_0x5a7ad8['push'](_0x5a7ad8['shift']());}}}(a155_0x52f0,0x83506));function a155_0x52f0(){const _0x5232ce=['map','851376dFnghL','all','length','push','216015IsTZvg','4tGZAQc','9244640lNbGsJ','90356jlFZWX','24SWWCqH','2633508uCcCxD','369173qxZvzV','1934435xiYYcw','12mHOvCG','slice','20ssVimB','352KkQNDa'];a155_0x52f0=function(){return _0x5232ce;};return a155_0x52f0();}export async function batchAsync(_0x3209b6,_0x5ea4d9,_0xa7d324=0xa){const _0x46dd8c=a155_0x4999,_0x556085=[];for(let _0x5b2685=0x0;_0x5b2685<_0x3209b6[_0x46dd8c(0xe5)];_0x5b2685+=_0xa7d324){const _0x2d3c40=_0x3209b6[_0x46dd8c(0xf0)](_0x5b2685,_0x5b2685+_0xa7d324),_0x41a676=await Promise[_0x46dd8c(0xe4)](_0x2d3c40[_0x46dd8c(0xe2)](_0x5ea4d9));_0x556085[_0x46dd8c(0xe6)](..._0x41a676);}return _0x556085;}
1
+ (function(_0x4ef3fb,_0x437679){const _0x29ef5=a161_0x5d89,_0x5969e6=_0x4ef3fb();while(!![]){try{const _0x377b17=-parseInt(_0x29ef5(0x10a))/0x1*(-parseInt(_0x29ef5(0x110))/0x2)+parseInt(_0x29ef5(0x114))/0x3+parseInt(_0x29ef5(0x10f))/0x4+-parseInt(_0x29ef5(0x10e))/0x5+-parseInt(_0x29ef5(0x10b))/0x6*(-parseInt(_0x29ef5(0x115))/0x7)+-parseInt(_0x29ef5(0x111))/0x8+parseInt(_0x29ef5(0x117))/0x9*(parseInt(_0x29ef5(0x113))/0xa);if(_0x377b17===_0x437679)break;else _0x5969e6['push'](_0x5969e6['shift']());}catch(_0x47356a){_0x5969e6['push'](_0x5969e6['shift']());}}}(a161_0x4b76,0x2c183));function a161_0x5d89(_0x304816,_0x33ba78){_0x304816=_0x304816-0x10a;const _0x4b76ad=a161_0x4b76();let _0x5d8927=_0x4b76ad[_0x304816];return _0x5d8927;}function a161_0x4b76(){const _0x63af8a=['112fLRcbv','2328568ARKpOI','push','10HpetYp','580953nbbiyV','8351KVfDho','length','3097737GhrRqx','slice','1099zrGIUt','114JKJupQ','all','map','1802975FGGrfC','840888LpibKW'];a161_0x4b76=function(){return _0x63af8a;};return a161_0x4b76();}export async function batchAsync(_0x2b2eaf,_0x918148,_0xc700af=0xa){const _0x5bec87=a161_0x5d89,_0x21fba3=[];for(let _0x338423=0x0;_0x338423<_0x2b2eaf[_0x5bec87(0x116)];_0x338423+=_0xc700af){const _0x15866d=_0x2b2eaf[_0x5bec87(0x118)](_0x338423,_0x338423+_0xc700af),_0x12ff8b=await Promise[_0x5bec87(0x10c)](_0x15866d[_0x5bec87(0x10d)](_0x918148));_0x21fba3[_0x5bec87(0x112)](..._0x12ff8b);}return _0x21fba3;}
@@ -1 +1 @@
1
- const a156_0x3dd32c=a156_0xf2d6;(function(_0x838470,_0x128362){const _0x3d8396=a156_0xf2d6,_0x431031=_0x838470();while(!![]){try{const _0x3a3c54=-parseInt(_0x3d8396(0x139))/0x1*(-parseInt(_0x3d8396(0x122))/0x2)+-parseInt(_0x3d8396(0x11f))/0x3+-parseInt(_0x3d8396(0x136))/0x4+-parseInt(_0x3d8396(0x134))/0x5*(-parseInt(_0x3d8396(0x12c))/0x6)+-parseInt(_0x3d8396(0x135))/0x7+-parseInt(_0x3d8396(0x124))/0x8+-parseInt(_0x3d8396(0x130))/0x9*(-parseInt(_0x3d8396(0x13b))/0xa);if(_0x3a3c54===_0x128362)break;else _0x431031['push'](_0x431031['shift']());}catch(_0x45e8dd){_0x431031['push'](_0x431031['shift']());}}}(a156_0x335e,0x9d411));import*as a156_0x13e184 from'chalk';const Chalk=a156_0x13e184[a156_0x3dd32c(0x129)];export function shouldUseColor(_0x4ff13b={}){const _0x4c3596=a156_0x3dd32c;if(_0x4ff13b['noColor']===!![])return![];if(_0x4ff13b[_0x4c3596(0x12a)]===!![])return!![];if(process[_0x4c3596(0x11e)][_0x4c3596(0x132)]!==undefined)return![];return process[_0x4c3596(0x133)][_0x4c3596(0x121)]??![];}export function getChalk(_0x139530={}){if(shouldUseColor(_0x139530))return new Chalk({'level':0x3});return new Chalk({'level':0x0});}function a156_0xf2d6(_0x50c0e0,_0x335542){_0x50c0e0=_0x50c0e0-0x11c;const _0x335e70=a156_0x335e();let _0xf2d663=_0x335e70[_0x50c0e0];return _0xf2d663;}export function colorBorder(_0x32317c,_0x54d195={}){return getChalk(_0x54d195)['dim'](_0x32317c);}export function colorHeader(_0x4ea573,_0xc4a382={}){return getChalk(_0xc4a382)['cyan'](_0x4ea573);}export function colorType(_0x40203c,_0x4db4b5={}){const _0x5fe9db=a156_0x3dd32c;return getChalk(_0x4db4b5)[_0x5fe9db(0x128)](_0x40203c);}export function colorJSONKey(_0x1bbb7c,_0x766f05={}){const _0x9544a=a156_0x3dd32c;return getChalk(_0x766f05)[_0x9544a(0x120)](_0x1bbb7c);}export function colorJSONString(_0x3499ad,_0x3ae7c3={}){return getChalk(_0x3ae7c3)['green'](_0x3499ad);}function a156_0x335e(){const _0x2252d5=['1120700TkRRLj','number','stringify','5513rdQuJn','object','11570vsPaGi','string','length','env','3099438OVOKzj','blue','isTTY','112GabbTb','null','894992ypeBgy','yellow','map','join','dim','Chalk','color','isArray','132zDITgr','boolean','cyan','entries','18558dfvRpZ','repeat','NO_COLOR','stdout','24650UIvSvg','5135298poPUKe'];a156_0x335e=function(){return _0x2252d5;};return a156_0x335e();}export function colorJSONNumber(_0x39537c,_0x238c59={}){const _0x464890=a156_0x3dd32c;return getChalk(_0x238c59)[_0x464890(0x12e)](_0x39537c);}export function colorJSONBoolean(_0x10ef2c,_0x2106ef={}){const _0x52d545=a156_0x3dd32c;return getChalk(_0x2106ef)[_0x52d545(0x125)](_0x10ef2c);}export function colorJSONNull(_0x169f23,_0x37613f={}){const _0x542f38=a156_0x3dd32c;return getChalk(_0x37613f)[_0x542f38(0x128)](_0x169f23);}export function colorizeJSONCompact(_0xc50224,_0x161448={}){const _0x244245=a156_0x3dd32c;if(!shouldUseColor(_0x161448))return JSON[_0x244245(0x138)](_0xc50224);if(_0xc50224===null)return colorJSONNull(_0x244245(0x123),_0x161448);if(typeof _0xc50224===_0x244245(0x12d))return colorJSONBoolean(String(_0xc50224),_0x161448);if(typeof _0xc50224==='number')return colorJSONNumber(String(_0xc50224),_0x161448);if(typeof _0xc50224===_0x244245(0x11c))return colorJSONString(JSON[_0x244245(0x138)](_0xc50224),_0x161448);if(Array['isArray'](_0xc50224)){if(_0xc50224[_0x244245(0x11d)]===0x0)return'[]';const _0xa122b7=_0xc50224[_0x244245(0x126)](_0x38e43c=>colorizeJSONCompact(_0x38e43c,_0x161448));return'['+_0xa122b7['join'](',')+']';}if(typeof _0xc50224===_0x244245(0x13a)){const _0x4ef757=Object['entries'](_0xc50224);if(_0x4ef757[_0x244245(0x11d)]===0x0)return'{}';const _0x4020e4=_0x4ef757[_0x244245(0x126)](([_0x38eccb,_0x584bec])=>{const _0xe76297=_0x244245,_0x4ad463=colorJSONKey(JSON[_0xe76297(0x138)](_0x38eccb),_0x161448),_0x449aa9=colorizeJSONCompact(_0x584bec,_0x161448);return _0x4ad463+':'+_0x449aa9;});return'{'+_0x4020e4['join'](',')+'}';}return String(_0xc50224);}export function colorizeJSON(_0x5b24e4,_0x4067bf={},_0x54f464=0x0){const _0x121368=a156_0x3dd32c;if(!shouldUseColor(_0x4067bf))return JSON['stringify'](_0x5b24e4,null,0x2);const _0x3f83cc='\x20'['repeat'](_0x54f464),_0x112b3b=_0x54f464+0x2;if(_0x5b24e4===null)return colorJSONNull('null',_0x4067bf);if(typeof _0x5b24e4===_0x121368(0x12d))return colorJSONBoolean(String(_0x5b24e4),_0x4067bf);if(typeof _0x5b24e4===_0x121368(0x137))return colorJSONNumber(String(_0x5b24e4),_0x4067bf);if(typeof _0x5b24e4===_0x121368(0x11c))return colorJSONString(JSON[_0x121368(0x138)](_0x5b24e4),_0x4067bf);if(Array[_0x121368(0x12b)](_0x5b24e4)){if(_0x5b24e4[_0x121368(0x11d)]===0x0)return'[]';const _0x521001=_0x5b24e4[_0x121368(0x126)](_0x278cc2=>{const _0x5aeecd=_0x121368,_0x4e7b34=colorizeJSON(_0x278cc2,_0x4067bf,_0x112b3b);return''+'\x20'[_0x5aeecd(0x131)](_0x112b3b)+_0x4e7b34;});return'[\x0a'+_0x521001[_0x121368(0x127)](',\x0a')+('\x0a'+_0x3f83cc+']');}if(typeof _0x5b24e4===_0x121368(0x13a)){const _0x72c25b=Object[_0x121368(0x12f)](_0x5b24e4);if(_0x72c25b[_0x121368(0x11d)]===0x0)return'{}';const _0x75530b=_0x72c25b[_0x121368(0x126)](([_0x3c3d62,_0xd24288])=>{const _0x1b6a91=_0x121368,_0x3eabe1=colorJSONKey(JSON[_0x1b6a91(0x138)](_0x3c3d62),_0x4067bf),_0x3b1cd2=colorizeJSON(_0xd24288,_0x4067bf,_0x112b3b);return''+'\x20'['repeat'](_0x112b3b)+_0x3eabe1+':\x20'+_0x3b1cd2;});return'{\x0a'+_0x75530b[_0x121368(0x127)](',\x0a')+('\x0a'+_0x3f83cc+'}');}return String(_0x5b24e4);}
1
+ const a162_0x39e5a8=a162_0x23ae;(function(_0x5e8baa,_0x1e8650){const _0x440491=a162_0x23ae,_0x5194fc=_0x5e8baa();while(!![]){try{const _0x49c03=parseInt(_0x440491(0x133))/0x1+-parseInt(_0x440491(0x12c))/0x2*(-parseInt(_0x440491(0x142))/0x3)+parseInt(_0x440491(0x13a))/0x4+parseInt(_0x440491(0x135))/0x5+parseInt(_0x440491(0x12b))/0x6*(parseInt(_0x440491(0x132))/0x7)+-parseInt(_0x440491(0x137))/0x8+-parseInt(_0x440491(0x13d))/0x9;if(_0x49c03===_0x1e8650)break;else _0x5194fc['push'](_0x5194fc['shift']());}catch(_0x4d568e){_0x5194fc['push'](_0x5194fc['shift']());}}}(a162_0x1115,0x9265a));import*as a162_0x822461 from'chalk';const Chalk=a162_0x822461[a162_0x39e5a8(0x139)];export function shouldUseColor(_0x2e9743={}){const _0x5865ba=a162_0x39e5a8;if(_0x2e9743[_0x5865ba(0x13f)]===!![])return![];if(_0x2e9743['color']===!![])return!![];if(process['env'][_0x5865ba(0x134)]!==undefined)return![];return process[_0x5865ba(0x145)][_0x5865ba(0x143)]??![];}function a162_0x23ae(_0x3f58e5,_0x39d6e4){_0x3f58e5=_0x3f58e5-0x12b;const _0x11156b=a162_0x1115();let _0x23ae6f=_0x11156b[_0x3f58e5];return _0x23ae6f;}export function getChalk(_0x500a48={}){if(shouldUseColor(_0x500a48))return new Chalk({'level':0x3});return new Chalk({'level':0x0});}export function colorBorder(_0x3e012f,_0x534fb2={}){return getChalk(_0x534fb2)['dim'](_0x3e012f);}export function colorHeader(_0x211b11,_0x51598c={}){return getChalk(_0x51598c)['cyan'](_0x211b11);}export function colorType(_0x4290ea,_0x2a318d={}){const _0xcccc73=a162_0x39e5a8;return getChalk(_0x2a318d)[_0xcccc73(0x12f)](_0x4290ea);}export function colorJSONKey(_0x5c3757,_0x56ad6={}){return getChalk(_0x56ad6)['blue'](_0x5c3757);}export function colorJSONString(_0xe95726,_0x256946={}){const _0x441aa8=a162_0x39e5a8;return getChalk(_0x256946)[_0x441aa8(0x13c)](_0xe95726);}function a162_0x1115(){const _0x39460b=['join','Chalk','451148Jmqwvq','isArray','green','13413861IeAYeG','null','noColor','map','stringify','37974UgnTKG','isTTY','repeat','stdout','yellow','cyan','998472smSwNl','56wzrJIy','entries','string','dim','number','boolean','42jdhRmO','868435zjsJLZ','NO_COLOR','510770qfouaS','length','2769608ubVbbR'];a162_0x1115=function(){return _0x39460b;};return a162_0x1115();}export function colorJSONNumber(_0x29e3bd,_0x59dd91={}){const _0x584c98=a162_0x39e5a8;return getChalk(_0x59dd91)[_0x584c98(0x147)](_0x29e3bd);}export function colorJSONBoolean(_0x2d1b63,_0x3f15c4={}){const _0x479364=a162_0x39e5a8;return getChalk(_0x3f15c4)[_0x479364(0x146)](_0x2d1b63);}export function colorJSONNull(_0x58b7d5,_0x286dc4={}){const _0x30d44a=a162_0x39e5a8;return getChalk(_0x286dc4)[_0x30d44a(0x12f)](_0x58b7d5);}export function colorizeJSONCompact(_0xabb0f5,_0x3d1961={}){const _0x3af942=a162_0x39e5a8;if(!shouldUseColor(_0x3d1961))return JSON[_0x3af942(0x141)](_0xabb0f5);if(_0xabb0f5===null)return colorJSONNull(_0x3af942(0x13e),_0x3d1961);if(typeof _0xabb0f5===_0x3af942(0x131))return colorJSONBoolean(String(_0xabb0f5),_0x3d1961);if(typeof _0xabb0f5==='number')return colorJSONNumber(String(_0xabb0f5),_0x3d1961);if(typeof _0xabb0f5===_0x3af942(0x12e))return colorJSONString(JSON['stringify'](_0xabb0f5),_0x3d1961);if(Array[_0x3af942(0x13b)](_0xabb0f5)){if(_0xabb0f5[_0x3af942(0x136)]===0x0)return'[]';const _0x4d0691=_0xabb0f5[_0x3af942(0x140)](_0x189d37=>colorizeJSONCompact(_0x189d37,_0x3d1961));return'['+_0x4d0691[_0x3af942(0x138)](',')+']';}if(typeof _0xabb0f5==='object'){const _0x4687b4=Object[_0x3af942(0x12d)](_0xabb0f5);if(_0x4687b4[_0x3af942(0x136)]===0x0)return'{}';const _0x1fd105=_0x4687b4[_0x3af942(0x140)](([_0x33764a,_0x391eb4])=>{const _0x38e304=_0x3af942,_0x6df6a6=colorJSONKey(JSON[_0x38e304(0x141)](_0x33764a),_0x3d1961),_0x1122d6=colorizeJSONCompact(_0x391eb4,_0x3d1961);return _0x6df6a6+':'+_0x1122d6;});return'{'+_0x1fd105[_0x3af942(0x138)](',')+'}';}return String(_0xabb0f5);}export function colorizeJSON(_0x20ac5f,_0x39accc={},_0x5462c2=0x0){const _0x1e7869=a162_0x39e5a8;if(!shouldUseColor(_0x39accc))return JSON[_0x1e7869(0x141)](_0x20ac5f,null,0x2);const _0x476e65='\x20'[_0x1e7869(0x144)](_0x5462c2),_0xb7a0e9=_0x5462c2+0x2;if(_0x20ac5f===null)return colorJSONNull(_0x1e7869(0x13e),_0x39accc);if(typeof _0x20ac5f===_0x1e7869(0x131))return colorJSONBoolean(String(_0x20ac5f),_0x39accc);if(typeof _0x20ac5f===_0x1e7869(0x130))return colorJSONNumber(String(_0x20ac5f),_0x39accc);if(typeof _0x20ac5f===_0x1e7869(0x12e))return colorJSONString(JSON['stringify'](_0x20ac5f),_0x39accc);if(Array[_0x1e7869(0x13b)](_0x20ac5f)){if(_0x20ac5f[_0x1e7869(0x136)]===0x0)return'[]';const _0x134a37=_0x20ac5f['map'](_0x1e619e=>{const _0x2e7cab=_0x1e7869,_0x4c7384=colorizeJSON(_0x1e619e,_0x39accc,_0xb7a0e9);return''+'\x20'[_0x2e7cab(0x144)](_0xb7a0e9)+_0x4c7384;});return'[\x0a'+_0x134a37[_0x1e7869(0x138)](',\x0a')+('\x0a'+_0x476e65+']');}if(typeof _0x20ac5f==='object'){const _0x5411f9=Object[_0x1e7869(0x12d)](_0x20ac5f);if(_0x5411f9[_0x1e7869(0x136)]===0x0)return'{}';const _0x186ea6=_0x5411f9[_0x1e7869(0x140)](([_0x3674be,_0x16c472])=>{const _0x4c5f97=_0x1e7869,_0x4f73cb=colorJSONKey(JSON[_0x4c5f97(0x141)](_0x3674be),_0x39accc),_0x134c0a=colorizeJSON(_0x16c472,_0x39accc,_0xb7a0e9);return''+'\x20'[_0x4c5f97(0x144)](_0xb7a0e9)+_0x4f73cb+':\x20'+_0x134c0a;});return'{\x0a'+_0x186ea6['join'](',\x0a')+('\x0a'+_0x476e65+'}');}return String(_0x20ac5f);}
@@ -1 +1 @@
1
- (function(_0x1a0a28,_0x4abe94){const _0x5ce516=a157_0x2c40,_0x36e488=_0x1a0a28();while(!![]){try{const _0x1b6da9=parseInt(_0x5ce516(0xad))/0x1+-parseInt(_0x5ce516(0xa3))/0x2+-parseInt(_0x5ce516(0xc3))/0x3+-parseInt(_0x5ce516(0xb0))/0x4+parseInt(_0x5ce516(0xa8))/0x5*(-parseInt(_0x5ce516(0xb6))/0x6)+-parseInt(_0x5ce516(0xa7))/0x7*(parseInt(_0x5ce516(0xc5))/0x8)+-parseInt(_0x5ce516(0xc2))/0x9*(-parseInt(_0x5ce516(0xbd))/0xa);if(_0x1b6da9===_0x4abe94)break;else _0x36e488['push'](_0x36e488['shift']());}catch(_0x3f3c55){_0x36e488['push'](_0x36e488['shift']());}}}(a157_0x43d4,0x77569));import a157_0x84f3d2 from'chalk';export function generateDiff(_0x38990f,_0x56c188){const _0x54f8cc=a157_0x2c40,_0x4542da=_0x38990f[_0x54f8cc(0xb5)]('\x0a'),_0x4b7eb2=_0x56c188[_0x54f8cc(0xb5)]('\x0a'),_0x29aba9=[],_0x5d0428=computeLCS(_0x4542da,_0x4b7eb2);let _0x39474b=0x0,_0x29a7e6=0x0,_0x1d3f9a=0x0;while(_0x39474b<_0x4542da[_0x54f8cc(0x9f)]||_0x29a7e6<_0x4b7eb2[_0x54f8cc(0x9f)]){if(_0x1d3f9a<_0x5d0428[_0x54f8cc(0x9f)]&&_0x39474b<_0x4542da[_0x54f8cc(0x9f)]&&_0x4542da[_0x39474b]===_0x5d0428[_0x1d3f9a])_0x29a7e6<_0x4b7eb2[_0x54f8cc(0x9f)]&&_0x4b7eb2[_0x29a7e6]===_0x5d0428[_0x1d3f9a]?(_0x29aba9['push']({'type':_0x54f8cc(0xbf),'content':_0x4542da[_0x39474b]}),_0x39474b++,_0x29a7e6++,_0x1d3f9a++):(_0x29aba9['push']({'type':_0x54f8cc(0xaa),'content':_0x4b7eb2[_0x29a7e6]}),_0x29a7e6++);else{if(_0x1d3f9a<_0x5d0428[_0x54f8cc(0x9f)]&&_0x29a7e6<_0x4b7eb2['length']&&_0x4b7eb2[_0x29a7e6]===_0x5d0428[_0x1d3f9a])_0x29aba9['push']({'type':'removed','content':_0x4542da[_0x39474b]}),_0x39474b++;else{if(_0x39474b<_0x4542da[_0x54f8cc(0x9f)]&&(_0x1d3f9a>=_0x5d0428[_0x54f8cc(0x9f)]||_0x4542da[_0x39474b]!==_0x5d0428[_0x1d3f9a]))_0x29aba9[_0x54f8cc(0xc1)]({'type':_0x54f8cc(0xb1),'content':_0x4542da[_0x39474b]}),_0x39474b++;else _0x29a7e6<_0x4b7eb2[_0x54f8cc(0x9f)]&&(_0x29aba9[_0x54f8cc(0xc1)]({'type':_0x54f8cc(0xaa),'content':_0x4b7eb2[_0x29a7e6]}),_0x29a7e6++);}}}return _0x29aba9;}function a157_0x2c40(_0xa56a59,_0x3598eb){_0xa56a59=_0xa56a59-0x9f;const _0x43d441=a157_0x43d4();let _0x2c4019=_0x43d441[_0xa56a59];return _0x2c4019;}function computeLCS(_0x1ab612,_0x456366){const _0x17fb1d=a157_0x2c40,_0x42d89f=_0x1ab612['length'],_0x5051ae=_0x456366['length'],_0x412167=Array(_0x42d89f+0x1)['fill'](null)[_0x17fb1d(0xa4)](()=>Array(_0x5051ae+0x1)[_0x17fb1d(0xaf)](0x0));for(let _0x4720d0=0x1;_0x4720d0<=_0x42d89f;_0x4720d0++){for(let _0x1c513a=0x1;_0x1c513a<=_0x5051ae;_0x1c513a++){_0x1ab612[_0x4720d0-0x1]===_0x456366[_0x1c513a-0x1]?_0x412167[_0x4720d0][_0x1c513a]=_0x412167[_0x4720d0-0x1][_0x1c513a-0x1]+0x1:_0x412167[_0x4720d0][_0x1c513a]=Math['max'](_0x412167[_0x4720d0-0x1][_0x1c513a],_0x412167[_0x4720d0][_0x1c513a-0x1]);}}const _0x189e3e=[];let _0x14eb08=_0x42d89f,_0x5e6727=_0x5051ae;while(_0x14eb08>0x0&&_0x5e6727>0x0){if(_0x1ab612[_0x14eb08-0x1]===_0x456366[_0x5e6727-0x1])_0x189e3e[_0x17fb1d(0xb8)](_0x1ab612[_0x14eb08-0x1]),_0x14eb08--,_0x5e6727--;else _0x412167[_0x14eb08-0x1][_0x5e6727]>_0x412167[_0x14eb08][_0x5e6727-0x1]?_0x14eb08--:_0x5e6727--;}return _0x189e3e;}export function formatDiffWithColors(_0x536f29,_0x45ec69=0x3){const _0x5eec1a=a157_0x2c40,_0x20f0ea=new Set();_0x536f29[_0x5eec1a(0xa9)]((_0x4beda4,_0x5d3963)=>{const _0x33cc3a=_0x5eec1a;_0x4beda4[_0x33cc3a(0xae)]!==_0x33cc3a(0xbf)&&_0x20f0ea[_0x33cc3a(0xc0)](_0x5d3963);});if(_0x20f0ea[_0x5eec1a(0xab)]===0x0)return'';const _0x233cae=new Set();for(const _0x4ffc84 of _0x20f0ea){for(let _0x5438aa=Math[_0x5eec1a(0xbe)](0x0,_0x4ffc84-_0x45ec69);_0x5438aa<=Math[_0x5eec1a(0xa0)](_0x536f29['length']-0x1,_0x4ffc84+_0x45ec69);_0x5438aa++){_0x233cae['add'](_0x5438aa);}}const _0x2c4c16=[];let _0x2e6871=-0x1;const _0x40ed3c=_0x536f29[_0x5eec1a(0x9f)],_0x5145a7=Math['max'](0x3,String(_0x40ed3c)[_0x5eec1a(0x9f)]),_0x17b4a6=[];let _0x5af2b0=0x0,_0x3682b6=0x0;for(const _0x4e155a of _0x536f29){if(_0x4e155a['type']===_0x5eec1a(0xb1))_0x5af2b0++,_0x17b4a6['push']({'old':_0x5af2b0,'new':0x0});else _0x4e155a[_0x5eec1a(0xae)]==='added'?(_0x3682b6++,_0x17b4a6[_0x5eec1a(0xc1)]({'old':0x0,'new':_0x3682b6})):(_0x5af2b0++,_0x3682b6++,_0x17b4a6[_0x5eec1a(0xc1)]({'old':_0x5af2b0,'new':_0x3682b6}));}for(let _0x8cba49=0x0;_0x8cba49<_0x536f29['length'];_0x8cba49++){if(!_0x233cae[_0x5eec1a(0xa6)](_0x8cba49))continue;_0x2e6871!==-0x1&&_0x8cba49>_0x2e6871+0x1&&_0x2c4c16['push'](a157_0x84f3d2[_0x5eec1a(0xa1)]('\x20\x20...'));_0x2e6871=_0x8cba49;const _0x5959d7=_0x536f29[_0x8cba49],_0x1961f4=_0x17b4a6[_0x8cba49],_0x238159=_0x1961f4[_0x5eec1a(0xbc)]>0x0?String(_0x1961f4['old'])[_0x5eec1a(0xba)](_0x5145a7):'\x20'['repeat'](_0x5145a7),_0x2e511b=_0x1961f4[_0x5eec1a(0xa2)]>0x0?String(_0x1961f4[_0x5eec1a(0xa2)])[_0x5eec1a(0xba)](_0x5145a7):'\x20'[_0x5eec1a(0xb9)](_0x5145a7);switch(_0x5959d7[_0x5eec1a(0xae)]){case'removed':_0x2c4c16[_0x5eec1a(0xc1)](a157_0x84f3d2[_0x5eec1a(0xa5)](_0x238159+'\x20'+_0x2e511b+_0x5eec1a(0xb3)+_0x5959d7[_0x5eec1a(0xc4)]));break;case _0x5eec1a(0xaa):_0x2c4c16[_0x5eec1a(0xc1)](a157_0x84f3d2[_0x5eec1a(0xb4)](_0x238159+'\x20'+_0x2e511b+'\x20+\x20'+_0x5959d7[_0x5eec1a(0xc4)]));break;default:_0x2c4c16[_0x5eec1a(0xc1)](a157_0x84f3d2[_0x5eec1a(0xb2)](_0x238159+'\x20'+_0x2e511b+_0x5eec1a(0xac)+_0x5959d7[_0x5eec1a(0xc4)]));break;}}return _0x2c4c16[_0x5eec1a(0xb7)]('\x0a');}function a157_0x43d4(){const _0x77265b=['content','8SbyzYq','length','min','cyan','new','1338250KlOroH','map','red','has','102893jfjhjn','113395AwMhwA','forEach','added','size','\x20\x20\x20','103326JnzJnO','type','fill','93012NsnkCh','removed','dim','\x20-\x20','green','split','12LzHeVr','join','unshift','repeat','padStart','some','old','710uaMkXZ','max','unchanged','add','push','178857tZkGdA','819195rPbeSS'];a157_0x43d4=function(){return _0x77265b;};return a157_0x43d4();}export function hasChanges(_0x1612de){const _0x4f057f=a157_0x2c40;return _0x1612de[_0x4f057f(0xbb)](_0x3dd4a0=>_0x3dd4a0[_0x4f057f(0xae)]!=='unchanged');}
1
+ (function(_0x4d5c59,_0xcf867d){const _0x140f22=a163_0x3b42,_0x1c7253=_0x4d5c59();while(!![]){try{const _0x45a937=-parseInt(_0x140f22(0xa0))/0x1+parseInt(_0x140f22(0xad))/0x2*(parseInt(_0x140f22(0xb3))/0x3)+parseInt(_0x140f22(0x9b))/0x4*(-parseInt(_0x140f22(0xa5))/0x5)+parseInt(_0x140f22(0xaf))/0x6*(-parseInt(_0x140f22(0xa2))/0x7)+-parseInt(_0x140f22(0xa9))/0x8+-parseInt(_0x140f22(0xb5))/0x9*(parseInt(_0x140f22(0xa4))/0xa)+parseInt(_0x140f22(0x98))/0xb;if(_0x45a937===_0xcf867d)break;else _0x1c7253['push'](_0x1c7253['shift']());}catch(_0x4ae48e){_0x1c7253['push'](_0x1c7253['shift']());}}}(a163_0x5a97,0x8767f));import a163_0x35be34 from'chalk';export function generateDiff(_0x2d60b6,_0x24f3dd){const _0x1efb59=a163_0x3b42,_0x1245ae=_0x2d60b6[_0x1efb59(0xb0)]('\x0a'),_0x169061=_0x24f3dd[_0x1efb59(0xb0)]('\x0a'),_0x47afe6=[],_0x3edd45=computeLCS(_0x1245ae,_0x169061);let _0x1f5a1a=0x0,_0x45a2dd=0x0,_0x28291b=0x0;while(_0x1f5a1a<_0x1245ae[_0x1efb59(0xa8)]||_0x45a2dd<_0x169061[_0x1efb59(0xa8)]){if(_0x28291b<_0x3edd45[_0x1efb59(0xa8)]&&_0x1f5a1a<_0x1245ae[_0x1efb59(0xa8)]&&_0x1245ae[_0x1f5a1a]===_0x3edd45[_0x28291b])_0x45a2dd<_0x169061[_0x1efb59(0xa8)]&&_0x169061[_0x45a2dd]===_0x3edd45[_0x28291b]?(_0x47afe6[_0x1efb59(0x96)]({'type':_0x1efb59(0xab),'content':_0x1245ae[_0x1f5a1a]}),_0x1f5a1a++,_0x45a2dd++,_0x28291b++):(_0x47afe6['push']({'type':_0x1efb59(0xb8),'content':_0x169061[_0x45a2dd]}),_0x45a2dd++);else{if(_0x28291b<_0x3edd45[_0x1efb59(0xa8)]&&_0x45a2dd<_0x169061[_0x1efb59(0xa8)]&&_0x169061[_0x45a2dd]===_0x3edd45[_0x28291b])_0x47afe6['push']({'type':_0x1efb59(0xa3),'content':_0x1245ae[_0x1f5a1a]}),_0x1f5a1a++;else{if(_0x1f5a1a<_0x1245ae[_0x1efb59(0xa8)]&&(_0x28291b>=_0x3edd45['length']||_0x1245ae[_0x1f5a1a]!==_0x3edd45[_0x28291b]))_0x47afe6['push']({'type':'removed','content':_0x1245ae[_0x1f5a1a]}),_0x1f5a1a++;else _0x45a2dd<_0x169061[_0x1efb59(0xa8)]&&(_0x47afe6['push']({'type':_0x1efb59(0xb8),'content':_0x169061[_0x45a2dd]}),_0x45a2dd++);}}}return _0x47afe6;}function computeLCS(_0x59d78d,_0x169429){const _0x2f4ad7=a163_0x3b42,_0x10c413=_0x59d78d[_0x2f4ad7(0xa8)],_0x352f06=_0x169429[_0x2f4ad7(0xa8)],_0x55c142=Array(_0x10c413+0x1)[_0x2f4ad7(0xac)](null)[_0x2f4ad7(0xb6)](()=>Array(_0x352f06+0x1)[_0x2f4ad7(0xac)](0x0));for(let _0xe648e3=0x1;_0xe648e3<=_0x10c413;_0xe648e3++){for(let _0x126edb=0x1;_0x126edb<=_0x352f06;_0x126edb++){_0x59d78d[_0xe648e3-0x1]===_0x169429[_0x126edb-0x1]?_0x55c142[_0xe648e3][_0x126edb]=_0x55c142[_0xe648e3-0x1][_0x126edb-0x1]+0x1:_0x55c142[_0xe648e3][_0x126edb]=Math['max'](_0x55c142[_0xe648e3-0x1][_0x126edb],_0x55c142[_0xe648e3][_0x126edb-0x1]);}}const _0x13fd7a=[];let _0x2b5a17=_0x10c413,_0x330595=_0x352f06;while(_0x2b5a17>0x0&&_0x330595>0x0){if(_0x59d78d[_0x2b5a17-0x1]===_0x169429[_0x330595-0x1])_0x13fd7a['unshift'](_0x59d78d[_0x2b5a17-0x1]),_0x2b5a17--,_0x330595--;else _0x55c142[_0x2b5a17-0x1][_0x330595]>_0x55c142[_0x2b5a17][_0x330595-0x1]?_0x2b5a17--:_0x330595--;}return _0x13fd7a;}export function formatDiffWithColors(_0x595034,_0x3038d6=0x3){const _0x345cd6=a163_0x3b42,_0x3ea55e=new Set();_0x595034[_0x345cd6(0xb2)]((_0x5b957b,_0x2a733f)=>{const _0x536d43=_0x345cd6;_0x5b957b[_0x536d43(0xba)]!=='unchanged'&&_0x3ea55e[_0x536d43(0xae)](_0x2a733f);});if(_0x3ea55e[_0x345cd6(0x9f)]===0x0)return'';const _0x31d28a=new Set();for(const _0x5ab4c3 of _0x3ea55e){for(let _0x3468c2=Math[_0x345cd6(0xb1)](0x0,_0x5ab4c3-_0x3038d6);_0x3468c2<=Math[_0x345cd6(0xbc)](_0x595034[_0x345cd6(0xa8)]-0x1,_0x5ab4c3+_0x3038d6);_0x3468c2++){_0x31d28a[_0x345cd6(0xae)](_0x3468c2);}}const _0x141c5f=[];let _0xc15acc=-0x1;const _0x2710b0=_0x595034[_0x345cd6(0xa8)],_0x105fa3=Math['max'](0x3,String(_0x2710b0)[_0x345cd6(0xa8)]),_0x20da80=[];let _0x2f6963=0x0,_0x5e40f3=0x0;for(const _0x3148fe of _0x595034){if(_0x3148fe[_0x345cd6(0xba)]===_0x345cd6(0xa3))_0x2f6963++,_0x20da80[_0x345cd6(0x96)]({'old':_0x2f6963,'new':0x0});else _0x3148fe[_0x345cd6(0xba)]===_0x345cd6(0xb8)?(_0x5e40f3++,_0x20da80['push']({'old':0x0,'new':_0x5e40f3})):(_0x2f6963++,_0x5e40f3++,_0x20da80[_0x345cd6(0x96)]({'old':_0x2f6963,'new':_0x5e40f3}));}for(let _0x17161e=0x0;_0x17161e<_0x595034[_0x345cd6(0xa8)];_0x17161e++){if(!_0x31d28a[_0x345cd6(0x9a)](_0x17161e))continue;_0xc15acc!==-0x1&&_0x17161e>_0xc15acc+0x1&&_0x141c5f['push'](a163_0x35be34[_0x345cd6(0x9c)](_0x345cd6(0xb9)));_0xc15acc=_0x17161e;const _0x2b9a73=_0x595034[_0x17161e],_0x451c11=_0x20da80[_0x17161e],_0x49bec0=_0x451c11['old']>0x0?String(_0x451c11[_0x345cd6(0x97)])[_0x345cd6(0xaa)](_0x105fa3):'\x20'['repeat'](_0x105fa3),_0x1fb933=_0x451c11[_0x345cd6(0xa1)]>0x0?String(_0x451c11[_0x345cd6(0xa1)])[_0x345cd6(0xaa)](_0x105fa3):'\x20'['repeat'](_0x105fa3);switch(_0x2b9a73[_0x345cd6(0xba)]){case _0x345cd6(0xa3):_0x141c5f[_0x345cd6(0x96)](a163_0x35be34[_0x345cd6(0x9e)](_0x49bec0+'\x20'+_0x1fb933+'\x20-\x20'+_0x2b9a73[_0x345cd6(0xb4)]));break;case _0x345cd6(0xb8):_0x141c5f[_0x345cd6(0x96)](a163_0x35be34[_0x345cd6(0x99)](_0x49bec0+'\x20'+_0x1fb933+_0x345cd6(0xa6)+_0x2b9a73[_0x345cd6(0xb4)]));break;default:_0x141c5f['push'](a163_0x35be34[_0x345cd6(0xa7)](_0x49bec0+'\x20'+_0x1fb933+_0x345cd6(0xbb)+_0x2b9a73[_0x345cd6(0xb4)]));break;}}return _0x141c5f[_0x345cd6(0x9d)]('\x0a');}function a163_0x3b42(_0xa927c,_0x4dd0ff){_0xa927c=_0xa927c-0x96;const _0x5a9724=a163_0x5a97();let _0x3b4277=_0x5a9724[_0xa927c];return _0x3b4277;}export function hasChanges(_0x2c7ad5){const _0x4b1e3a=a163_0x3b42;return _0x2c7ad5[_0x4b1e3a(0xb7)](_0x374017=>_0x374017[_0x4b1e3a(0xba)]!==_0x4b1e3a(0xab));}function a163_0x5a97(){const _0x56a319=['fill','1047146DfSFej','add','6jveqbY','split','max','forEach','3eIZvHo','content','67392LCvkac','map','some','added','\x20\x20...','type','\x20\x20\x20','min','push','old','21578084JFSBPA','green','has','10844AulYnO','cyan','join','red','size','147642VMChnT','new','2517844gxMRDR','removed','390bJYPHq','1335SmAmBj','\x20+\x20','dim','length','3259128ycksix','padStart','unchanged'];a163_0x5a97=function(){return _0x56a319;};return a163_0x5a97();}
@@ -1 +1 @@
1
- function a158_0x5ab6(){const _0x3e005d=['warn','Warning:\x20','Warning:\x20Could\x20not\x20set\x20secure\x20permissions\x20on\x20','2UsCJAo','dirname','4nXCTYt','44AHaURs','1354014gHWKDo','toString','existsSync','1314012rZtpql','7mBHmxK','11579148nEkLcY','5502635yiagxT','3839810lNpSGR','6418360DqjWqT','chmodSync','mode','mkdirSync','911593jJPIBL'];a158_0x5ab6=function(){return _0x3e005d;};return a158_0x5ab6();}(function(_0x95ce50,_0x3152f7){const _0x1ca679=a158_0x3e83,_0x4d72b6=_0x95ce50();while(!![]){try{const _0xd9dcc6=-parseInt(_0x1ca679(0xd3))/0x1*(-parseInt(_0x1ca679(0xd7))/0x2)+-parseInt(_0x1ca679(0xde))/0x3+parseInt(_0x1ca679(0xd9))/0x4*(-parseInt(_0x1ca679(0xe1))/0x5)+-parseInt(_0x1ca679(0xdb))/0x6*(-parseInt(_0x1ca679(0xdf))/0x7)+parseInt(_0x1ca679(0xe3))/0x8+-parseInt(_0x1ca679(0xe0))/0x9+-parseInt(_0x1ca679(0xe2))/0xa*(-parseInt(_0x1ca679(0xda))/0xb);if(_0xd9dcc6===_0x3152f7)break;else _0x4d72b6['push'](_0x4d72b6['shift']());}catch(_0x292660){_0x4d72b6['push'](_0x4d72b6['shift']());}}}(a158_0x5ab6,0x9ec8a));import*as a158_0x15d6ab from'node:fs';import*as a158_0x5af9b2 from'node:path';export function setSecureFilePermissions(_0x794451){const _0x582426=a158_0x3e83;try{a158_0x15d6ab['chmodSync'](_0x794451,0x180);}catch{console[_0x582426(0xd4)](_0x582426(0xd6)+_0x794451);}}export function setSecureDirectoryPermissions(_0x3cb58c){const _0x39579d=a158_0x3e83;try{a158_0x15d6ab[_0x39579d(0xe4)](_0x3cb58c,0x1c0);}catch{console[_0x39579d(0xd4)]('Warning:\x20Could\x20not\x20set\x20secure\x20permissions\x20on\x20'+_0x3cb58c);}}function a158_0x3e83(_0x43e243,_0x19dd4d){_0x43e243=_0x43e243-0xd2;const _0x5ab6c5=a158_0x5ab6();let _0x3e83f5=_0x5ab6c5[_0x43e243];return _0x3e83f5;}export function createSecureDirectory(_0x34d606){const _0x56f931=a158_0x3e83;!a158_0x15d6ab[_0x56f931(0xdd)](_0x34d606)&&(a158_0x15d6ab[_0x56f931(0xd2)](_0x34d606,{'recursive':!![],'mode':0x1c0}),setSecureDirectoryPermissions(_0x34d606));}export function validateSecureFilePermissions(_0x2c71cf){const _0x375b9f=a158_0x3e83;try{const _0x83b377=a158_0x15d6ab['statSync'](_0x2c71cf),_0x178f74=_0x83b377[_0x375b9f(0xe5)]&0x1ff,_0x3a7cb9=(_0x178f74&0x3f)!==0x0;if(_0x3a7cb9)return console[_0x375b9f(0xd4)](_0x375b9f(0xd5)+_0x2c71cf+'\x20has\x20insecure\x20permissions\x20('+_0x178f74[_0x375b9f(0xdc)](0x8)+').\x20'+'Should\x20be\x200600\x20or\x20more\x20restrictive.'),![];return!![];}catch{return!![];}}export function writeSecureFile(_0x5ee6c4,_0x4a82f5){const _0x3729cd=a158_0x3e83,_0x3ba0e0=a158_0x5af9b2[_0x3729cd(0xd8)](_0x5ee6c4);createSecureDirectory(_0x3ba0e0),a158_0x15d6ab['writeFileSync'](_0x5ee6c4,_0x4a82f5,{'mode':0x180}),setSecureFilePermissions(_0x5ee6c4);}
1
+ function a164_0x2f52(){const _0x54bdee=['chmodSync','92kUFnQA','4mktkWV','483006IfcFGr','207YohtPm','\x20has\x20insecure\x20permissions\x20(','1393806vSAgqe','3280222rZMeiD','Should\x20be\x200600\x20or\x20more\x20restrictive.','2379588wTFhPL','Warning:\x20Could\x20not\x20set\x20secure\x20permissions\x20on\x20','toString','mode',').\x20','mkdirSync','73510pYeLqP','warn','existsSync','111570ftFBec','writeFileSync','77JJXauU','652728BgmDRk'];a164_0x2f52=function(){return _0x54bdee;};return a164_0x2f52();}(function(_0x49e30a,_0x33550b){const _0x2497be=a164_0x16ff,_0x4c1f61=_0x49e30a();while(!![]){try{const _0x332d9d=parseInt(_0x2497be(0x18c))/0x1+-parseInt(_0x2497be(0x18b))/0x2*(parseInt(_0x2497be(0x18f))/0x3)+parseInt(_0x2497be(0x18a))/0x4*(-parseInt(_0x2497be(0x198))/0x5)+parseInt(_0x2497be(0x192))/0x6+-parseInt(_0x2497be(0x187))/0x7*(-parseInt(_0x2497be(0x188))/0x8)+-parseInt(_0x2497be(0x18d))/0x9*(-parseInt(_0x2497be(0x185))/0xa)+-parseInt(_0x2497be(0x190))/0xb;if(_0x332d9d===_0x33550b)break;else _0x4c1f61['push'](_0x4c1f61['shift']());}catch(_0x40f495){_0x4c1f61['push'](_0x4c1f61['shift']());}}}(a164_0x2f52,0x724c4));import*as a164_0x595bcc from'node:fs';import*as a164_0x2cf3b1 from'node:path';export function setSecureFilePermissions(_0x349cb4){const _0x27c021=a164_0x16ff;try{a164_0x595bcc[_0x27c021(0x189)](_0x349cb4,0x180);}catch{console[_0x27c021(0x183)](_0x27c021(0x193)+_0x349cb4);}}export function setSecureDirectoryPermissions(_0xc8d2c1){const _0x479708=a164_0x16ff;try{a164_0x595bcc[_0x479708(0x189)](_0xc8d2c1,0x1c0);}catch{console[_0x479708(0x183)](_0x479708(0x193)+_0xc8d2c1);}}function a164_0x16ff(_0x39f0d3,_0x539679){_0x39f0d3=_0x39f0d3-0x183;const _0x2f52b8=a164_0x2f52();let _0x16ff10=_0x2f52b8[_0x39f0d3];return _0x16ff10;}export function createSecureDirectory(_0x3ccba8){const _0x29ba50=a164_0x16ff;!a164_0x595bcc[_0x29ba50(0x184)](_0x3ccba8)&&(a164_0x595bcc[_0x29ba50(0x197)](_0x3ccba8,{'recursive':!![],'mode':0x1c0}),setSecureDirectoryPermissions(_0x3ccba8));}export function validateSecureFilePermissions(_0x574162){const _0x571938=a164_0x16ff;try{const _0x22af27=a164_0x595bcc['statSync'](_0x574162),_0x1272b8=_0x22af27[_0x571938(0x195)]&0x1ff,_0x1a278e=(_0x1272b8&0x3f)!==0x0;if(_0x1a278e)return console[_0x571938(0x183)]('Warning:\x20'+_0x574162+_0x571938(0x18e)+_0x1272b8[_0x571938(0x194)](0x8)+_0x571938(0x196)+_0x571938(0x191)),![];return!![];}catch{return!![];}}export function writeSecureFile(_0x4c9982,_0x4f4e2e){const _0x56cd45=a164_0x16ff,_0x11ad17=a164_0x2cf3b1['dirname'](_0x4c9982);createSecureDirectory(_0x11ad17),a164_0x595bcc[_0x56cd45(0x186)](_0x4c9982,_0x4f4e2e,{'mode':0x180}),setSecureFilePermissions(_0x4c9982);}
@@ -1 +1 @@
1
- (function(_0x3f5aa7,_0x588924){const _0x1f12f9=a159_0x4b35,_0x5ec53a=_0x3f5aa7();while(!![]){try{const _0x39a44d=-parseInt(_0x1f12f9(0x18f))/0x1*(-parseInt(_0x1f12f9(0x1a4))/0x2)+parseInt(_0x1f12f9(0x1a3))/0x3+parseInt(_0x1f12f9(0x19d))/0x4+-parseInt(_0x1f12f9(0x199))/0x5*(-parseInt(_0x1f12f9(0x195))/0x6)+-parseInt(_0x1f12f9(0x193))/0x7+parseInt(_0x1f12f9(0x1a1))/0x8*(parseInt(_0x1f12f9(0x1a2))/0x9)+-parseInt(_0x1f12f9(0x19e))/0xa*(parseInt(_0x1f12f9(0x192))/0xb);if(_0x39a44d===_0x588924)break;else _0x5ec53a['push'](_0x5ec53a['shift']());}catch(_0x2a6b24){_0x5ec53a['push'](_0x5ec53a['shift']());}}}(a159_0xb72d,0x7415c));import{existsSync,mkdirSync,readFileSync,writeFileSync,unlinkSync}from'fs';import{join}from'path';import{homedir}from'os';export function getGlobalCacheDir(){const _0x49342d=a159_0x4b35;return process['env'][_0x49342d(0x19a)]||join(homedir(),'.cache',_0x49342d(0x19f));}const registry=new Map();export function registerGlobalCacheKey(_0x47e5f2,_0x3256bc){const _0x51f401=a159_0x4b35,_0x56342d=registry[_0x51f401(0x19c)](_0x47e5f2);if(_0x56342d&&_0x56342d!==_0x3256bc)throw new Error(_0x51f401(0x18e)+_0x47e5f2+'\x22\x20already\x20registered\x20by\x20\x22'+_0x56342d+_0x51f401(0x190)+_0x3256bc+'\x22');registry[_0x51f401(0x1a0)](_0x47e5f2,_0x3256bc);}export function getGlobalCachePath(_0x496715){return join(getGlobalCacheDir(),_0x496715);}function ensureGlobalCacheDir(){const _0x4d91ed=getGlobalCacheDir();!existsSync(_0x4d91ed)&&mkdirSync(_0x4d91ed,{'recursive':!![]});}function readCacheJson(_0x5624ab){const _0x40b809=a159_0x4b35,_0xa3b454=getGlobalCachePath(_0x5624ab);if(!existsSync(_0xa3b454))return undefined;try{const _0x8f93b6=readFileSync(_0xa3b454,_0x40b809(0x198));return JSON['parse'](_0x8f93b6);}catch{return undefined;}}function writeCacheJson(_0x3cdc37,_0x3320c0){const _0x591d1a=a159_0x4b35;ensureGlobalCacheDir(),writeFileSync(getGlobalCachePath(_0x3cdc37),JSON['stringify'](_0x3320c0,null,0x2),_0x591d1a(0x198));}function readCacheText(_0x59c3c1){const _0x5bcf15=a159_0x4b35,_0x532733=getGlobalCachePath(_0x59c3c1);if(!existsSync(_0x532733))return undefined;try{return readFileSync(_0x532733,_0x5bcf15(0x198));}catch{return undefined;}}function writeCacheText(_0x26b410,_0x47460f){const _0x59c51d=a159_0x4b35;ensureGlobalCacheDir(),writeFileSync(getGlobalCachePath(_0x26b410),_0x47460f,_0x59c51d(0x198));}function clearCache(_0x1fc88a){const _0x12c46d=getGlobalCachePath(_0x1fc88a);if(existsSync(_0x12c46d))try{unlinkSync(_0x12c46d);}catch{}}function a159_0x4b35(_0x1394c9,_0x27e9ee){_0x1394c9=_0x1394c9-0x18e;const _0xb72d47=a159_0xb72d();let _0x4b3596=_0xb72d47[_0x1394c9];return _0x4b3596;}function cacheExists(_0x28802c){return existsSync(getGlobalCachePath(_0x28802c));}export function createGlobalCache(_0x338dcc,_0x5d2941){return registerGlobalCacheKey(_0x338dcc,_0x5d2941),{'read':()=>readCacheJson(_0x338dcc),'write':_0x35c8ad=>writeCacheJson(_0x338dcc,_0x35c8ad),'clear':()=>clearCache(_0x338dcc),'exists':()=>cacheExists(_0x338dcc),'path':()=>getGlobalCachePath(_0x338dcc)};}export function createGlobalTextCache(_0x5f3b9f,_0x5299ab){const _0x420c51=a159_0x4b35;return registerGlobalCacheKey(_0x5f3b9f,_0x5299ab),{'read':()=>readCacheText(_0x5f3b9f)?.[_0x420c51(0x197)]()||undefined,'write':_0x1fe929=>writeCacheText(_0x5f3b9f,_0x1fe929),'clear':()=>clearCache(_0x5f3b9f),'exists':()=>cacheExists(_0x5f3b9f),'path':()=>getGlobalCachePath(_0x5f3b9f)};}export function createProfileCache(_0xf94f96,_0xf62594){const _0xb4070=_0x194c37=>{const _0x5eab46=a159_0x4b35,_0x30f4c1=_0x194c37||_0x5eab46(0x191);return _0xf94f96[_0x5eab46(0x19b)](_0x5eab46(0x196),_0x30f4c1);};return{'read':_0x5705d9=>{const _0x13d5f8=_0xb4070(_0x5705d9);return registerGlobalCacheKey(_0x13d5f8,_0xf62594),readCacheJson(_0x13d5f8);},'write':(_0x1add16,_0x15a80f)=>{const _0x460dcc=_0xb4070(_0x1add16);registerGlobalCacheKey(_0x460dcc,_0xf62594),writeCacheJson(_0x460dcc,_0x15a80f);},'clear':_0x912a15=>{const _0x50ed99=_0xb4070(_0x912a15);clearCache(_0x50ed99);},'exists':_0x3d895e=>{const _0x4d1411=_0xb4070(_0x3d895e);return cacheExists(_0x4d1411);},'path':_0x5edcb5=>{const _0x359027=_0xb4070(_0x5edcb5);return getGlobalCachePath(_0x359027);}};}function a159_0xb72d(){const _0x1e0a5a=['clear','690DluExM','{profile}','trim','utf-8','26750wgVRMF','TDX_CACHE_DIR','replace','get','1683384Wladvk','717760YKSuPe','tdx','set','43304EzXNXB','1305yNdoMY','2397489sVvavs','204GLwlqg','Global\x20cache\x20key\x20\x22','9242LSGITu','\x22,\x20cannot\x20register\x20for\x20\x22','default','440rnveHf','1514128nhbXpL'];a159_0xb72d=function(){return _0x1e0a5a;};return a159_0xb72d();}export function createOptionalProfileCache(_0xcfa48a,_0x397595,_0x22aa7e={}){const {profileSeparator:profileSeparator='.',suffix:suffix=''}=_0x22aa7e,_0x434688=_0xb41e2e=>{return _0xb41e2e?''+_0xcfa48a+profileSeparator+_0xb41e2e+suffix:''+_0xcfa48a+suffix;};return{'read':_0x3ed0f2=>{const _0x4dafdd=_0x434688(_0x3ed0f2);return registerGlobalCacheKey(_0x4dafdd,_0x397595),readCacheJson(_0x4dafdd);},'write':(_0x4d8eca,_0x2b9682)=>{const _0x419674=_0x434688(_0x2b9682);registerGlobalCacheKey(_0x419674,_0x397595),writeCacheJson(_0x419674,_0x4d8eca);},'clear':_0x1ac318=>{const _0x5df63e=_0x434688(_0x1ac318);clearCache(_0x5df63e);},'exists':_0x2a64ea=>{const _0x14183b=_0x434688(_0x2a64ea);return cacheExists(_0x14183b);},'path':_0x467426=>{const _0x2a9416=_0x434688(_0x467426);return getGlobalCachePath(_0x2a9416);}};}export function clearGlobalRegistry(){const _0xbe183d=a159_0x4b35;registry[_0xbe183d(0x194)]();}
1
+ (function(_0x8d7809,_0x4c1c90){const _0x437bc2=a165_0x5656,_0x286ee8=_0x8d7809();while(!![]){try{const _0x300e9b=parseInt(_0x437bc2(0x1e7))/0x1+-parseInt(_0x437bc2(0x1ef))/0x2*(parseInt(_0x437bc2(0x1f9))/0x3)+-parseInt(_0x437bc2(0x1e9))/0x4+-parseInt(_0x437bc2(0x1f4))/0x5*(-parseInt(_0x437bc2(0x1ea))/0x6)+-parseInt(_0x437bc2(0x1f1))/0x7+-parseInt(_0x437bc2(0x1ee))/0x8+parseInt(_0x437bc2(0x1f6))/0x9;if(_0x300e9b===_0x4c1c90)break;else _0x286ee8['push'](_0x286ee8['shift']());}catch(_0x249c90){_0x286ee8['push'](_0x286ee8['shift']());}}}(a165_0x12e9,0xc8709));function a165_0x12e9(){const _0x3db98e=['tdx','13353975GNNCwz','\x22\x20already\x20registered\x20by\x20\x22','get','1256925DobgYg','stringify','1240206lvFepB','TDX_CACHE_DIR','333160qRpPnL','1194YcJGLU','{profile}','trim','replace','6088608axwdBh','4nsVKnw','set','1865038cVBcLw','parse','utf-8','1150KQGrvv'];a165_0x12e9=function(){return _0x3db98e;};return a165_0x12e9();}import{existsSync,mkdirSync,readFileSync,writeFileSync,unlinkSync}from'fs';import{join}from'path';import{homedir}from'os';export function getGlobalCacheDir(){const _0x566d1e=a165_0x5656;return process['env'][_0x566d1e(0x1e8)]||join(homedir(),'.cache',_0x566d1e(0x1f5));}const registry=new Map();export function registerGlobalCacheKey(_0x28eb4c,_0x3adf7c){const _0x1b505c=a165_0x5656,_0x517cf7=registry[_0x1b505c(0x1f8)](_0x28eb4c);if(_0x517cf7&&_0x517cf7!==_0x3adf7c)throw new Error('Global\x20cache\x20key\x20\x22'+_0x28eb4c+_0x1b505c(0x1f7)+_0x517cf7+'\x22,\x20cannot\x20register\x20for\x20\x22'+_0x3adf7c+'\x22');registry[_0x1b505c(0x1f0)](_0x28eb4c,_0x3adf7c);}export function getGlobalCachePath(_0x104679){return join(getGlobalCacheDir(),_0x104679);}function ensureGlobalCacheDir(){const _0x41dffc=getGlobalCacheDir();!existsSync(_0x41dffc)&&mkdirSync(_0x41dffc,{'recursive':!![]});}function a165_0x5656(_0x27b513,_0x45ed1f){_0x27b513=_0x27b513-0x1e7;const _0x12e963=a165_0x12e9();let _0x56568c=_0x12e963[_0x27b513];return _0x56568c;}function readCacheJson(_0x804190){const _0x5e0156=a165_0x5656,_0x3b8476=getGlobalCachePath(_0x804190);if(!existsSync(_0x3b8476))return undefined;try{const _0x56cade=readFileSync(_0x3b8476,_0x5e0156(0x1f3));return JSON[_0x5e0156(0x1f2)](_0x56cade);}catch{return undefined;}}function writeCacheJson(_0x39f02f,_0x26a542){const _0x1ad782=a165_0x5656;ensureGlobalCacheDir(),writeFileSync(getGlobalCachePath(_0x39f02f),JSON[_0x1ad782(0x1fa)](_0x26a542,null,0x2),_0x1ad782(0x1f3));}function readCacheText(_0x5c2e06){const _0x3984fa=getGlobalCachePath(_0x5c2e06);if(!existsSync(_0x3984fa))return undefined;try{return readFileSync(_0x3984fa,'utf-8');}catch{return undefined;}}function writeCacheText(_0x111783,_0x442b75){const _0x55780c=a165_0x5656;ensureGlobalCacheDir(),writeFileSync(getGlobalCachePath(_0x111783),_0x442b75,_0x55780c(0x1f3));}function clearCache(_0x389a1b){const _0x2e08ee=getGlobalCachePath(_0x389a1b);if(existsSync(_0x2e08ee))try{unlinkSync(_0x2e08ee);}catch{}}function cacheExists(_0x3f437c){return existsSync(getGlobalCachePath(_0x3f437c));}export function createGlobalCache(_0x510901,_0x245a3a){return registerGlobalCacheKey(_0x510901,_0x245a3a),{'read':()=>readCacheJson(_0x510901),'write':_0x333e07=>writeCacheJson(_0x510901,_0x333e07),'clear':()=>clearCache(_0x510901),'exists':()=>cacheExists(_0x510901),'path':()=>getGlobalCachePath(_0x510901)};}export function createGlobalTextCache(_0x5f03d3,_0x6d742e){const _0x239c0e=a165_0x5656;return registerGlobalCacheKey(_0x5f03d3,_0x6d742e),{'read':()=>readCacheText(_0x5f03d3)?.[_0x239c0e(0x1ec)]()||undefined,'write':_0x3d701b=>writeCacheText(_0x5f03d3,_0x3d701b),'clear':()=>clearCache(_0x5f03d3),'exists':()=>cacheExists(_0x5f03d3),'path':()=>getGlobalCachePath(_0x5f03d3)};}export function createProfileCache(_0x3e654b,_0xa04989){const _0x48ee66=_0x320719=>{const _0x57ccf1=a165_0x5656,_0x54110a=_0x320719||'default';return _0x3e654b[_0x57ccf1(0x1ed)](_0x57ccf1(0x1eb),_0x54110a);};return{'read':_0x470fcb=>{const _0x1f2baa=_0x48ee66(_0x470fcb);return registerGlobalCacheKey(_0x1f2baa,_0xa04989),readCacheJson(_0x1f2baa);},'write':(_0x2ffbcb,_0x14ac22)=>{const _0x216542=_0x48ee66(_0x2ffbcb);registerGlobalCacheKey(_0x216542,_0xa04989),writeCacheJson(_0x216542,_0x14ac22);},'clear':_0x5c2825=>{const _0x493075=_0x48ee66(_0x5c2825);clearCache(_0x493075);},'exists':_0x54df4f=>{const _0x393e78=_0x48ee66(_0x54df4f);return cacheExists(_0x393e78);},'path':_0x11cab6=>{const _0x2e9e7e=_0x48ee66(_0x11cab6);return getGlobalCachePath(_0x2e9e7e);}};}export function createOptionalProfileCache(_0xae4528,_0x7a0135,_0x33f3d3={}){const {profileSeparator:profileSeparator='.',suffix:suffix=''}=_0x33f3d3,_0xea1b3f=_0x6c9fe2=>{return _0x6c9fe2?''+_0xae4528+profileSeparator+_0x6c9fe2+suffix:''+_0xae4528+suffix;};return{'read':_0x4071a3=>{const _0x2924b6=_0xea1b3f(_0x4071a3);return registerGlobalCacheKey(_0x2924b6,_0x7a0135),readCacheJson(_0x2924b6);},'write':(_0x2e0c06,_0x115284)=>{const _0x2de481=_0xea1b3f(_0x115284);registerGlobalCacheKey(_0x2de481,_0x7a0135),writeCacheJson(_0x2de481,_0x2e0c06);},'clear':_0x47f5a8=>{const _0xaef4fd=_0xea1b3f(_0x47f5a8);clearCache(_0xaef4fd);},'exists':_0x3003f0=>{const _0x1dd248=_0xea1b3f(_0x3003f0);return cacheExists(_0x1dd248);},'path':_0x60153b=>{const _0x19ebcc=_0xea1b3f(_0x60153b);return getGlobalCachePath(_0x19ebcc);}};}export function clearGlobalRegistry(){registry['clear']();}
@@ -1 +1 @@
1
- function a160_0x2d0e(){const _0x32f5f1=['PERMISSION_DENIED','INVALID_ARGUMENT','8145078nlgmaJ','13430169NSikoF','message','Permission\x20denied\x20reading\x20file:\x20','Invalid\x20JSON\x20in\x20file\x20\x27','16SVnHRN','Failed\x20to\x20load\x20JSON:\x20','20948050QLVLWB','2gBzeaM','5zaiOJi','6507736EZyvXg','INTERNAL','26238lrssLn','parse','NOT_FOUND','1577878ZtZkUm','code','utf-8','\x27:\x20','File\x20not\x20found:\x20','ENOENT','4126157BDboOd'];a160_0x2d0e=function(){return _0x32f5f1;};return a160_0x2d0e();}(function(_0x3e2f04,_0x13dee7){const _0x78dc1a=a160_0x2f9b,_0x197b4a=_0x3e2f04();while(!![]){try{const _0x46b9e5=-parseInt(_0x78dc1a(0x1ce))/0x1*(parseInt(_0x78dc1a(0x1bd))/0x2)+-parseInt(_0x78dc1a(0x1d2))/0x3*(parseInt(_0x78dc1a(0x1cb))/0x4)+-parseInt(_0x78dc1a(0x1cf))/0x5*(parseInt(_0x78dc1a(0x1c6))/0x6)+-parseInt(_0x78dc1a(0x1c3))/0x7+parseInt(_0x78dc1a(0x1d0))/0x8+parseInt(_0x78dc1a(0x1c7))/0x9+parseInt(_0x78dc1a(0x1cd))/0xa;if(_0x46b9e5===_0x13dee7)break;else _0x197b4a['push'](_0x197b4a['shift']());}catch(_0x2bc56e){_0x197b4a['push'](_0x197b4a['shift']());}}}(a160_0x2d0e,0xcd3ef));import{readFile}from'fs/promises';import{SDKError,ErrorCode}from'../sdk/errors.js';function a160_0x2f9b(_0x2e7978,_0x4d1861){_0x2e7978=_0x2e7978-0x1bd;const _0x2d0eab=a160_0x2d0e();let _0x2f9bd6=_0x2d0eab[_0x2e7978];return _0x2f9bd6;}export async function loadJSON(_0x5a8fbd,_0x1363a0){const _0x41ed87=a160_0x2f9b;try{if(_0x1363a0){const _0x215bd8=await readFile(_0x5a8fbd,_0x41ed87(0x1bf));try{return JSON[_0x41ed87(0x1d3)](_0x215bd8);}catch(_0x556d01){throw new SDKError(ErrorCode[_0x41ed87(0x1c5)],_0x41ed87(0x1ca)+_0x5a8fbd+_0x41ed87(0x1c0)+(_0x556d01 instanceof Error?_0x556d01['message']:String(_0x556d01)));}}else try{return JSON[_0x41ed87(0x1d3)](_0x5a8fbd);}catch(_0x57f400){throw new SDKError(ErrorCode[_0x41ed87(0x1c5)],'Invalid\x20JSON\x20string:\x20'+(_0x57f400 instanceof Error?_0x57f400['message']:String(_0x57f400)));}}catch(_0x2986de){if(_0x2986de instanceof SDKError)throw _0x2986de;if(_0x2986de instanceof Error&&_0x41ed87(0x1be)in _0x2986de){const _0x13c0a0=_0x2986de;if(_0x13c0a0[_0x41ed87(0x1be)]===_0x41ed87(0x1c2))throw new SDKError(ErrorCode[_0x41ed87(0x1d4)],_0x41ed87(0x1c1)+_0x5a8fbd);else{if(_0x13c0a0['code']==='EACCES')throw new SDKError(ErrorCode[_0x41ed87(0x1c4)],_0x41ed87(0x1c9)+_0x5a8fbd);}}throw new SDKError(ErrorCode[_0x41ed87(0x1d1)],_0x41ed87(0x1cc)+(_0x2986de instanceof Error?_0x2986de[_0x41ed87(0x1c8)]:String(_0x2986de)));}}export async function loadJSONFromOptions(_0x58ee03,_0x439074){const _0x2f9c5b=a160_0x2f9b;if(_0x58ee03&&_0x439074)throw new SDKError(ErrorCode[_0x2f9c5b(0x1c5)],'Cannot\x20specify\x20both\x20inline\x20JSON\x20and\x20file\x20path.\x20Use\x20one\x20or\x20the\x20other.');if(_0x58ee03)return await loadJSON(_0x58ee03,![]);if(_0x439074)return await loadJSON(_0x439074,!![]);return undefined;}
1
+ (function(_0x4b7014,_0x2c81d2){const _0x4319bb=a166_0x148d,_0x59972d=_0x4b7014();while(!![]){try{const _0x306e3a=parseInt(_0x4319bb(0xfb))/0x1+parseInt(_0x4319bb(0xff))/0x2+-parseInt(_0x4319bb(0x109))/0x3*(parseInt(_0x4319bb(0x101))/0x4)+parseInt(_0x4319bb(0x107))/0x5+parseInt(_0x4319bb(0x103))/0x6+-parseInt(_0x4319bb(0x10f))/0x7+parseInt(_0x4319bb(0x10e))/0x8*(-parseInt(_0x4319bb(0x10c))/0x9);if(_0x306e3a===_0x2c81d2)break;else _0x59972d['push'](_0x59972d['shift']());}catch(_0x397ad0){_0x59972d['push'](_0x59972d['shift']());}}}(a166_0x1ea5,0x9abda));import{readFile}from'fs/promises';function a166_0x148d(_0x2957b3,_0xa37cd7){_0x2957b3=_0x2957b3-0xfb;const _0x1ea5d6=a166_0x1ea5();let _0x148ddb=_0x1ea5d6[_0x2957b3];return _0x148ddb;}import{SDKError,ErrorCode}from'../sdk/errors.js';function a166_0x1ea5(){const _0x4bba5e=['code','Cannot\x20specify\x20both\x20inline\x20JSON\x20and\x20file\x20path.\x20Use\x20one\x20or\x20the\x20other.','5826600ghQKLN','EACCES','54lLzAdz','ENOENT','NOT_FOUND','9HjHyrC','parse','13603840YjGYbr','7030800yHtvnJ','983333MXHzVK','INVALID_ARGUMENT','Permission\x20denied\x20reading\x20file:\x20','utf-8','1927522IHvkfj','Invalid\x20JSON\x20in\x20file\x20\x27','11672FUgVof','INTERNAL','1672848NloyyS','message'];a166_0x1ea5=function(){return _0x4bba5e;};return a166_0x1ea5();}export async function loadJSON(_0x4675a9,_0x2dbd9d){const _0x41f77d=a166_0x148d;try{if(_0x2dbd9d){const _0x3e351c=await readFile(_0x4675a9,_0x41f77d(0xfe));try{return JSON[_0x41f77d(0x10d)](_0x3e351c);}catch(_0x113e65){throw new SDKError(ErrorCode[_0x41f77d(0xfc)],_0x41f77d(0x100)+_0x4675a9+'\x27:\x20'+(_0x113e65 instanceof Error?_0x113e65[_0x41f77d(0x104)]:String(_0x113e65)));}}else try{return JSON[_0x41f77d(0x10d)](_0x4675a9);}catch(_0x5de890){throw new SDKError(ErrorCode[_0x41f77d(0xfc)],'Invalid\x20JSON\x20string:\x20'+(_0x5de890 instanceof Error?_0x5de890[_0x41f77d(0x104)]:String(_0x5de890)));}}catch(_0x285891){if(_0x285891 instanceof SDKError)throw _0x285891;if(_0x285891 instanceof Error&&_0x41f77d(0x105)in _0x285891){const _0x39e3b0=_0x285891;if(_0x39e3b0[_0x41f77d(0x105)]===_0x41f77d(0x10a))throw new SDKError(ErrorCode[_0x41f77d(0x10b)],'File\x20not\x20found:\x20'+_0x4675a9);else{if(_0x39e3b0[_0x41f77d(0x105)]===_0x41f77d(0x108))throw new SDKError(ErrorCode['PERMISSION_DENIED'],_0x41f77d(0xfd)+_0x4675a9);}}throw new SDKError(ErrorCode[_0x41f77d(0x102)],'Failed\x20to\x20load\x20JSON:\x20'+(_0x285891 instanceof Error?_0x285891['message']:String(_0x285891)));}}export async function loadJSONFromOptions(_0x4c0a2e,_0x5b4708){const _0x27c238=a166_0x148d;if(_0x4c0a2e&&_0x5b4708)throw new SDKError(ErrorCode[_0x27c238(0xfc)],_0x27c238(0x106));if(_0x4c0a2e)return await loadJSON(_0x4c0a2e,![]);if(_0x5b4708)return await loadJSON(_0x5b4708,!![]);return undefined;}