@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.
- package/dist/bin.js +1 -1
- package/dist/build-info.json +3 -3
- package/dist/cli-categories.d.ts +1 -1
- package/dist/cli-categories.js +1 -1
- package/dist/cli-categories.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/activations.js +1 -1
- package/dist/commands/agent-command.js +1 -1
- package/dist/commands/agent-test-command.d.ts.map +1 -1
- package/dist/commands/agent-test-command.js +1 -1
- package/dist/commands/agent-test-command.js.map +1 -1
- package/dist/commands/api-command.js +1 -1
- package/dist/commands/auth-command.js +1 -1
- package/dist/commands/chat-command.js +1 -1
- package/dist/commands/claude-command.js +1 -1
- package/dist/commands/claude-statusline-command.js +1 -1
- package/dist/commands/claude-usage-command.js +1 -1
- package/dist/commands/command.d.ts.map +1 -1
- package/dist/commands/command.js +1 -1
- package/dist/commands/command.js.map +1 -1
- package/dist/commands/connection-command.js +1 -1
- package/dist/commands/databases.js +1 -1
- package/dist/commands/describe.js +1 -1
- package/dist/commands/engage-command.js +1 -1
- package/dist/commands/job-command.js +1 -1
- package/dist/commands/journey-command.js +1 -1
- package/dist/commands/journey-validate-command.js +1 -1
- package/dist/commands/llm-command.js +1 -1
- package/dist/commands/llm-proxy.js +1 -1
- package/dist/commands/mcp-command.js +1 -1
- package/dist/commands/parent-segment-command.js +1 -1
- package/dist/commands/profile-command.js +1 -1
- package/dist/commands/profiles-command.js +1 -1
- package/dist/commands/query-command.js +1 -1
- package/dist/commands/segment-command.js +1 -1
- package/dist/commands/segment-create-command.js +1 -1
- package/dist/commands/segment-fields-command.js +1 -1
- package/dist/commands/segment-pull-command.js +1 -1
- package/dist/commands/segment-push-command.js +1 -1
- package/dist/commands/segment-update-command.js +1 -1
- package/dist/commands/segment-use-command.js +1 -1
- package/dist/commands/segment-validate-command.js +1 -1
- package/dist/commands/segments.js +1 -1
- package/dist/commands/show.js +1 -1
- package/dist/commands/status-command.d.ts +20 -0
- package/dist/commands/status-command.d.ts.map +1 -0
- package/dist/commands/status-command.js +1 -0
- package/dist/commands/status-command.js.map +1 -0
- package/dist/commands/tables.js +1 -1
- package/dist/commands/unset-command.js +1 -1
- package/dist/commands/use-command.js +1 -1
- package/dist/commands/user-command.js +1 -1
- package/dist/commands/workflow-command.js +1 -1
- package/dist/core/auth.js +1 -1
- package/dist/core/command-output.js +1 -1
- package/dist/core/config.js +1 -1
- package/dist/core/connection-cache.js +1 -1
- package/dist/core/constants.js +1 -1
- package/dist/core/credential-cache.js +1 -1
- package/dist/core/global-context.d.ts +1 -1
- package/dist/core/global-context.d.ts.map +1 -1
- package/dist/core/global-context.js +1 -1
- package/dist/core/global-context.js.map +1 -1
- package/dist/core/keychain.js +1 -1
- package/dist/core/profile.d.ts +5 -0
- package/dist/core/profile.d.ts.map +1 -1
- package/dist/core/profile.js +1 -1
- package/dist/core/profile.js.map +1 -1
- package/dist/core/project-config.js +1 -1
- package/dist/core/session.js +1 -1
- package/dist/core/user-cache.js +1 -1
- package/dist/core/version.js +1 -1
- package/dist/index.js +1 -1
- package/dist/mcp/server.js +1 -1
- package/dist/mcp/tools/index.js +1 -1
- package/dist/mcp/tools/tdx-run.js +1 -1
- package/dist/mcp/tools/tdx-search.js +1 -1
- package/dist/mcp/utils.js +1 -1
- package/dist/proxy/anthropic-adapter.js +1 -1
- package/dist/proxy/claude-usage-tracker.js +1 -1
- package/dist/proxy/context-signature.js +1 -1
- package/dist/proxy/conversation-utils.js +1 -1
- package/dist/proxy/passthrough-server.js +1 -1
- package/dist/proxy/server.js +1 -1
- package/dist/proxy/session-cache.js +1 -1
- package/dist/proxy/sse-usage-parser.js +1 -1
- package/dist/sdk/agent/agent-config.js +1 -1
- package/dist/sdk/agent/agent-ref-parser.js +1 -1
- package/dist/sdk/agent/agent-yaml.d.ts +3 -1
- package/dist/sdk/agent/agent-yaml.d.ts.map +1 -1
- package/dist/sdk/agent/agent-yaml.js +1 -1
- package/dist/sdk/agent/agent-yaml.js.map +1 -1
- package/dist/sdk/agent/test/evaluator.js +1 -1
- package/dist/sdk/agent/test/executor.js +1 -1
- package/dist/sdk/agent/test/index.js +1 -1
- package/dist/sdk/agent/test/output.js +1 -1
- package/dist/sdk/agent/test/parser.d.ts.map +1 -1
- package/dist/sdk/agent/test/parser.js +1 -1
- package/dist/sdk/agent/test/parser.js.map +1 -1
- package/dist/sdk/agent/test/types.d.ts +4 -0
- package/dist/sdk/agent/test/types.d.ts.map +1 -1
- package/dist/sdk/agent/types/agent-def.d.ts +3 -3
- package/dist/sdk/agent/types/agent-def.d.ts.map +1 -1
- package/dist/sdk/api.js +1 -1
- package/dist/sdk/api.js.map +1 -1
- package/dist/sdk/claude-agent/claude-agent-client.d.ts.map +1 -1
- package/dist/sdk/claude-agent/claude-agent-client.js +1 -1
- package/dist/sdk/claude-agent/claude-agent-client.js.map +1 -1
- package/dist/sdk/claude-agent/environment.js +1 -1
- package/dist/sdk/claude-agent/index.js +1 -1
- package/dist/sdk/claude-agent/system-prompts.d.ts +1 -1
- package/dist/sdk/claude-agent/system-prompts.d.ts.map +1 -1
- package/dist/sdk/claude-agent/system-prompts.js +1 -1
- package/dist/sdk/claude-agent/system-prompts.js.map +1 -1
- package/dist/sdk/claude-agent/types.d.ts +6 -0
- package/dist/sdk/claude-agent/types.d.ts.map +1 -1
- package/dist/sdk/client/cdp-api-client.d.ts +1 -2
- package/dist/sdk/client/cdp-api-client.d.ts.map +1 -1
- package/dist/sdk/client/cdp-api-client.js +1 -1
- package/dist/sdk/client/cdp-api-client.js.map +1 -1
- package/dist/sdk/client/endpoints.js +1 -1
- package/dist/sdk/client/engage-api-client.d.ts +1 -1
- package/dist/sdk/client/engage-api-client.js +1 -1
- package/dist/sdk/client/engage-api-client.js.map +1 -1
- package/dist/sdk/client/http-client.d.ts +2 -5
- package/dist/sdk/client/http-client.d.ts.map +1 -1
- package/dist/sdk/client/http-client.js +1 -1
- package/dist/sdk/client/http-client.js.map +1 -1
- package/dist/sdk/client/llm-api-client.d.ts +10 -3
- package/dist/sdk/client/llm-api-client.d.ts.map +1 -1
- package/dist/sdk/client/llm-api-client.js +1 -1
- package/dist/sdk/client/llm-api-client.js.map +1 -1
- package/dist/sdk/client/rate-limiter.js +1 -1
- package/dist/sdk/client/td-api-client.d.ts +2 -4
- package/dist/sdk/client/td-api-client.d.ts.map +1 -1
- package/dist/sdk/client/td-api-client.js +1 -1
- package/dist/sdk/client/td-api-client.js.map +1 -1
- package/dist/sdk/client/trino-api-client.d.ts +1 -3
- package/dist/sdk/client/trino-api-client.d.ts.map +1 -1
- package/dist/sdk/client/trino-api-client.js +1 -1
- package/dist/sdk/client/trino-api-client.js.map +1 -1
- package/dist/sdk/client/workflow-client.d.ts +1 -2
- package/dist/sdk/client/workflow-client.d.ts.map +1 -1
- package/dist/sdk/client/workflow-client.js +1 -1
- package/dist/sdk/client/workflow-client.js.map +1 -1
- package/dist/sdk/connection-validator.js +1 -1
- package/dist/sdk/connection.js +1 -1
- package/dist/sdk/connection.js.map +1 -1
- package/dist/sdk/engage.js +1 -1
- package/dist/sdk/errors.js +1 -1
- package/dist/sdk/index.d.ts +2 -10
- package/dist/sdk/index.d.ts.map +1 -1
- package/dist/sdk/index.js +1 -1
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/io/index.js +1 -1
- package/dist/sdk/io/node-filesystem.js +1 -1
- package/dist/sdk/job.js +1 -1
- package/dist/sdk/job.js.map +1 -1
- package/dist/sdk/journey.js +1 -1
- package/dist/sdk/journey.js.map +1 -1
- package/dist/sdk/llm/chat-cache.js +1 -1
- package/dist/sdk/llm/index.d.ts +1 -0
- package/dist/sdk/llm/index.d.ts.map +1 -1
- package/dist/sdk/llm/index.js +1 -1
- package/dist/sdk/llm/index.js.map +1 -1
- package/dist/sdk/llm/llm-backup-utils.js +1 -1
- package/dist/sdk/llm/model-aliases.js +1 -1
- package/dist/sdk/llm/model-factors.js +1 -1
- package/dist/sdk/query/index.js +1 -1
- package/dist/sdk/query/index.js.map +1 -1
- package/dist/sdk/query/sql-parser.js +1 -1
- package/dist/sdk/segment/child-segment-yaml.js +1 -1
- package/dist/sdk/segment/fields-display.js +1 -1
- package/dist/sdk/segment/file-discovery.js +1 -1
- package/dist/sdk/segment/journey-utils.js +1 -1
- package/dist/sdk/segment/journey-yaml.js +1 -1
- package/dist/sdk/segment/parent-segment-preview.js +1 -1
- package/dist/sdk/segment/parent-segment-yaml.js +1 -1
- package/dist/sdk/segment/pull-workflow.js +1 -1
- package/dist/sdk/segment/push-workflow.js +1 -1
- package/dist/sdk/segment/resolution-context.js +1 -1
- package/dist/sdk/segment/segment-path-parser.js +1 -1
- package/dist/sdk/segment/segment-ref-parser.js +1 -1
- package/dist/sdk/segment/target-resolution.js +1 -1
- package/dist/sdk/segment/tdx-config.js +1 -1
- package/dist/sdk/segment/validate-files.js +1 -1
- package/dist/sdk/segment/yaml-validator.js +1 -1
- package/dist/sdk/segment.js +1 -1
- package/dist/sdk/segment.js.map +1 -1
- package/dist/sdk/types/index.d.ts +1 -1
- package/dist/sdk/types/index.d.ts.map +1 -1
- package/dist/sdk/types/index.js +1 -1
- package/dist/sdk/types/index.js.map +1 -1
- package/dist/sdk/types/llm.d.ts +36 -1
- package/dist/sdk/types/llm.d.ts.map +1 -1
- package/dist/sdk/types/progress.js +1 -1
- package/dist/sdk/user.js +1 -1
- package/dist/sdk/user.js.map +1 -1
- package/dist/sdk/util/format-detector.js +1 -1
- package/dist/sdk/util/formatters.js +1 -1
- package/dist/sdk/util/index.js +1 -1
- package/dist/sdk/util/tree-formatter.js +1 -1
- package/dist/sdk/workflow/clone-workflow.js +1 -1
- package/dist/sdk/workflow/index.js +1 -1
- package/dist/sdk/workflow/index.js.map +1 -1
- package/dist/sdk/workflow/pull-workflow.js +1 -1
- package/dist/sdk/workflow/push-workflow.js +1 -1
- package/dist/sdk/workflow/tdx-config.js +1 -1
- package/dist/sdk/workflow/workflow-utils.js +1 -1
- package/dist/test-utils/command-runner.d.ts +99 -0
- package/dist/test-utils/command-runner.d.ts.map +1 -0
- package/dist/test-utils/command-runner.js +1 -0
- package/dist/test-utils/command-runner.js.map +1 -0
- package/dist/test-utils/factories.d.ts +183 -0
- package/dist/test-utils/factories.d.ts.map +1 -0
- package/dist/test-utils/factories.js +1 -0
- package/dist/test-utils/factories.js.map +1 -0
- package/dist/test-utils/fixtures.d.ts +395 -0
- package/dist/test-utils/fixtures.d.ts.map +1 -0
- package/dist/test-utils/fixtures.js +1 -0
- package/dist/test-utils/fixtures.js.map +1 -0
- package/dist/test-utils/http-mock.d.ts +285 -0
- package/dist/test-utils/http-mock.d.ts.map +1 -0
- package/dist/test-utils/http-mock.js +1 -0
- package/dist/test-utils/http-mock.js.map +1 -0
- package/dist/test-utils/index.d.ts +47 -0
- package/dist/test-utils/index.d.ts.map +1 -0
- package/dist/test-utils/index.js +1 -0
- package/dist/test-utils/index.js.map +1 -0
- package/dist/utils/async.js +1 -1
- package/dist/utils/colors.js +1 -1
- package/dist/utils/diff.js +1 -1
- package/dist/utils/file-permissions.js +1 -1
- package/dist/utils/global-cache.js +1 -1
- package/dist/utils/json-loader.js +1 -1
- package/dist/utils/local-cache.js +1 -1
- package/dist/utils/logger/formatters/default-formatter.d.ts +33 -0
- package/dist/utils/logger/formatters/default-formatter.d.ts.map +1 -0
- package/dist/utils/logger/formatters/default-formatter.js +1 -0
- package/dist/utils/logger/formatters/default-formatter.js.map +1 -0
- package/dist/utils/logger/formatters/index.d.ts +8 -0
- package/dist/utils/logger/formatters/index.d.ts.map +1 -0
- package/dist/utils/logger/formatters/index.js +1 -0
- package/dist/utils/logger/formatters/index.js.map +1 -0
- package/dist/utils/logger/handlers/console-handler.d.ts +31 -0
- package/dist/utils/logger/handlers/console-handler.d.ts.map +1 -0
- package/dist/utils/logger/handlers/console-handler.js +1 -0
- package/dist/utils/logger/handlers/console-handler.js.map +1 -0
- package/dist/utils/logger/handlers/file-handler.d.ts +51 -0
- package/dist/utils/logger/handlers/file-handler.d.ts.map +1 -0
- package/dist/utils/logger/handlers/file-handler.js +1 -0
- package/dist/utils/logger/handlers/file-handler.js.map +1 -0
- package/dist/utils/logger/handlers/index.d.ts +11 -0
- package/dist/utils/logger/handlers/index.d.ts.map +1 -0
- package/dist/utils/logger/handlers/index.js +1 -0
- package/dist/utils/logger/handlers/index.js.map +1 -0
- package/dist/utils/logger/handlers/null-handler.d.ts +16 -0
- package/dist/utils/logger/handlers/null-handler.d.ts.map +1 -0
- package/dist/utils/logger/handlers/null-handler.js +1 -0
- package/dist/utils/logger/handlers/null-handler.js.map +1 -0
- package/dist/utils/logger/index.d.ts +37 -0
- package/dist/utils/logger/index.d.ts.map +1 -0
- package/dist/utils/logger/index.js +1 -0
- package/dist/utils/logger/index.js.map +1 -0
- package/dist/utils/logger/logger.d.ts +132 -0
- package/dist/utils/logger/logger.d.ts.map +1 -0
- package/dist/utils/logger/logger.js +1 -0
- package/dist/utils/logger/logger.js.map +1 -0
- package/dist/utils/logger/types.d.ts +95 -0
- package/dist/utils/logger/types.d.ts.map +1 -0
- package/dist/utils/logger/types.js +1 -0
- package/dist/utils/logger/types.js.map +1 -0
- package/dist/utils/option-validation.js +1 -1
- package/dist/utils/port.js +1 -1
- package/dist/utils/process.js +1 -1
- package/dist/utils/prompt.js +1 -1
- package/dist/utils/spinner.js +1 -1
- package/dist/utils/sse-parser.d.ts +9 -2
- package/dist/utils/sse-parser.d.ts.map +1 -1
- package/dist/utils/sse-parser.js +1 -1
- package/dist/utils/sse-parser.js.map +1 -1
- package/dist/utils/string-utils.js +1 -1
- package/dist/utils/table-ref-parser.js +1 -1
- package/dist/utils/tdx-logger.d.ts +44 -21
- package/dist/utils/tdx-logger.d.ts.map +1 -1
- package/dist/utils/tdx-logger.js +1 -1
- package/dist/utils/tdx-logger.js.map +1 -1
- package/dist/utils/version-check.js +1 -1
- 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"}
|
package/dist/utils/async.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
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;}
|
package/dist/utils/colors.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
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);}
|
package/dist/utils/diff.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
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
|
|
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(
|
|
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
|
-
|
|
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;}
|