healcode-client 1.0.2 ā 1.0.5
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/bin/healcode.js +29 -18
- package/bin/postinstall.js +10 -276
- package/dist/index.js +1 -1
- package/package.json +2 -2
package/bin/healcode.js
CHANGED
|
@@ -5,9 +5,26 @@ import inquirer from 'inquirer';
|
|
|
5
5
|
import chalk from 'chalk';
|
|
6
6
|
import fs from 'fs';
|
|
7
7
|
import path from 'path';
|
|
8
|
+
import { fileURLToPath } from 'url';
|
|
9
|
+
|
|
10
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
11
|
+
const __dirname = path.dirname(__filename);
|
|
8
12
|
|
|
9
13
|
const CONFIG_FILE_NAME = 'healcode.config.json';
|
|
10
|
-
|
|
14
|
+
|
|
15
|
+
// Load URLs from config
|
|
16
|
+
let urlsConfig = { backendUrl: 'https://www.healdcode.somee.com', agentUrl: 'https://www.healdcode.somee.com' };
|
|
17
|
+
try {
|
|
18
|
+
const urlsConfigPath = path.join(__dirname, '..', 'urls.config.json');
|
|
19
|
+
if (fs.existsSync(urlsConfigPath)) {
|
|
20
|
+
urlsConfig = JSON.parse(fs.readFileSync(urlsConfigPath, 'utf-8'));
|
|
21
|
+
}
|
|
22
|
+
} catch (e) {
|
|
23
|
+
// Use defaults
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
const BACKEND_URL = urlsConfig.backendUrl;
|
|
27
|
+
const AGENT_URL = urlsConfig.agentUrl;
|
|
11
28
|
|
|
12
29
|
const program = new Command();
|
|
13
30
|
|
|
@@ -22,14 +39,14 @@ program
|
|
|
22
39
|
.action(async () => {
|
|
23
40
|
console.log(chalk.green.bold('\n𩺠HealCode Setup\n'));
|
|
24
41
|
|
|
25
|
-
const
|
|
42
|
+
const { token } = await inquirer.prompt([
|
|
26
43
|
{
|
|
27
44
|
type: 'input',
|
|
28
45
|
name: 'token',
|
|
29
46
|
message: 'Enter your HealCode token:',
|
|
30
47
|
validate: (input) => {
|
|
31
48
|
if (!input || input.trim().length === 0) {
|
|
32
|
-
return 'Token is required. Get one at https://healcode.
|
|
49
|
+
return 'Token is required. Get one at https://healcode.vercel.app/dashboard';
|
|
33
50
|
}
|
|
34
51
|
if (!input.startsWith('hc_')) {
|
|
35
52
|
return 'Invalid token format. Token should start with "hc_"';
|
|
@@ -37,12 +54,6 @@ program
|
|
|
37
54
|
return true;
|
|
38
55
|
},
|
|
39
56
|
},
|
|
40
|
-
{
|
|
41
|
-
type: 'input',
|
|
42
|
-
name: 'endpoint',
|
|
43
|
-
message: 'API Endpoint (press Enter for default):',
|
|
44
|
-
default: DEFAULT_ENDPOINT,
|
|
45
|
-
},
|
|
46
57
|
]);
|
|
47
58
|
|
|
48
59
|
// Validate token with API
|
|
@@ -51,17 +62,17 @@ program
|
|
|
51
62
|
let remoteConfig = null;
|
|
52
63
|
|
|
53
64
|
try {
|
|
54
|
-
const response = await fetch(`${
|
|
65
|
+
const response = await fetch(`${BACKEND_URL}/api/tokens/validate`, {
|
|
55
66
|
method: 'POST',
|
|
56
67
|
headers: { 'Content-Type': 'application/json' },
|
|
57
|
-
body: JSON.stringify({ token:
|
|
68
|
+
body: JSON.stringify({ token: token }),
|
|
58
69
|
});
|
|
59
70
|
|
|
60
71
|
const result = await response.json();
|
|
61
72
|
|
|
62
73
|
if (!result.isValid) {
|
|
63
74
|
console.log(chalk.red(`\nā Token validation failed: ${result.errorMessage || 'Invalid token'}`));
|
|
64
|
-
console.log(chalk.gray('Get a valid token at https://healcode.
|
|
75
|
+
console.log(chalk.gray('Get a valid token at https://healcode.vercel.app/dashboard\n'));
|
|
65
76
|
process.exit(1);
|
|
66
77
|
}
|
|
67
78
|
|
|
@@ -100,8 +111,8 @@ program
|
|
|
100
111
|
|
|
101
112
|
// Create config file
|
|
102
113
|
const config = {
|
|
103
|
-
token:
|
|
104
|
-
endpoint:
|
|
114
|
+
token: token,
|
|
115
|
+
endpoint: AGENT_URL,
|
|
105
116
|
enabled: true,
|
|
106
117
|
options: {
|
|
107
118
|
captureConsoleErrors: options.captureConsoleErrors !== false,
|
|
@@ -118,12 +129,12 @@ program
|
|
|
118
129
|
// Show usage instructions
|
|
119
130
|
console.log(chalk.cyan('\nš Usage:\n'));
|
|
120
131
|
console.log(chalk.white(' // In your main entry file (e.g., main.ts, index.js)'));
|
|
121
|
-
console.log(chalk.gray(
|
|
132
|
+
console.log(chalk.gray(" import { initFromConfig } from 'healcode-client';"));
|
|
122
133
|
console.log(chalk.gray(' initFromConfig();\n'));
|
|
123
134
|
|
|
124
135
|
console.log(chalk.white(' // Or with manual configuration:'));
|
|
125
|
-
console.log(chalk.gray(
|
|
126
|
-
console.log(chalk.gray(` const healcode = new HealCode({ token: '${
|
|
136
|
+
console.log(chalk.gray(" import { HealCode } from 'healcode-client';"));
|
|
137
|
+
console.log(chalk.gray(` const healcode = new HealCode({ token: '${token.substring(0, 10)}...' });\n`));
|
|
127
138
|
|
|
128
139
|
// Add to .gitignore
|
|
129
140
|
const gitignorePath = path.join(process.cwd(), '.gitignore');
|
|
@@ -154,7 +165,7 @@ program
|
|
|
154
165
|
const config = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
155
166
|
console.log(chalk.green.bold('\n𩺠HealCode Status\n'));
|
|
156
167
|
console.log(chalk.white(` Token: ${config.token.substring(0, 15)}...`));
|
|
157
|
-
console.log(chalk.white(` Endpoint: ${config.endpoint ||
|
|
168
|
+
console.log(chalk.white(` Endpoint: ${config.endpoint || AGENT_URL}`));
|
|
158
169
|
console.log(chalk.white(` Enabled: ${config.enabled !== false ? 'ā
' : 'ā'}`));
|
|
159
170
|
console.log('');
|
|
160
171
|
} catch (error) {
|
package/bin/postinstall.js
CHANGED
|
@@ -2,290 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* HealCode - Postinstall Script
|
|
5
|
-
*
|
|
6
|
-
* Installation will FAIL without a valid token
|
|
5
|
+
* Shows setup instructions after installation
|
|
7
6
|
*/
|
|
8
7
|
|
|
9
|
-
const readline = require('readline');
|
|
10
|
-
const fs = require('fs');
|
|
11
|
-
const path = require('path');
|
|
12
|
-
const https = require('https');
|
|
13
|
-
const http = require('http');
|
|
14
|
-
|
|
15
|
-
const CONFIG_FILE_NAME = 'healcode.config.json';
|
|
16
|
-
|
|
17
|
-
// Load URLs from config
|
|
18
|
-
let urlsConfig = { backendUrl: 'https://www.healdcode.somee.com', agentUrl: 'https://www.healdcode.somee.com' };
|
|
19
|
-
try {
|
|
20
|
-
const urlsConfigPath = path.join(__dirname, '..', 'urls.config.json');
|
|
21
|
-
if (fs.existsSync(urlsConfigPath)) {
|
|
22
|
-
urlsConfig = JSON.parse(fs.readFileSync(urlsConfigPath, 'utf-8'));
|
|
23
|
-
}
|
|
24
|
-
} catch (e) {
|
|
25
|
-
// Use defaults
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
const DEFAULT_BACKEND_URL = urlsConfig.backendUrl;
|
|
29
|
-
const DEFAULT_AGENT_URL = urlsConfig.agentUrl;
|
|
30
|
-
|
|
31
|
-
// ANSI Colors
|
|
32
8
|
const colors = {
|
|
33
9
|
green: '\x1b[32m',
|
|
34
10
|
yellow: '\x1b[33m',
|
|
35
|
-
red: '\x1b[31m',
|
|
36
11
|
cyan: '\x1b[36m',
|
|
37
12
|
gray: '\x1b[90m',
|
|
38
13
|
bold: '\x1b[1m',
|
|
39
14
|
reset: '\x1b[0m'
|
|
40
15
|
};
|
|
41
16
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
return dir;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
function configExists() {
|
|
56
|
-
const projectRoot = findProjectRoot();
|
|
57
|
-
const configPath = path.join(projectRoot, CONFIG_FILE_NAME);
|
|
58
|
-
return fs.existsSync(configPath);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
function removePackage() {
|
|
62
|
-
// Remove the package from node_modules if validation fails
|
|
63
|
-
const projectRoot = findProjectRoot();
|
|
64
|
-
const packagePath = path.join(projectRoot, 'node_modules', 'healcode-client');
|
|
65
|
-
|
|
66
|
-
try {
|
|
67
|
-
if (fs.existsSync(packagePath)) {
|
|
68
|
-
fs.rmSync(packagePath, { recursive: true, force: true });
|
|
69
|
-
}
|
|
70
|
-
} catch (e) {
|
|
71
|
-
// Ignore removal errors
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
function validateToken(token, endpoint) {
|
|
76
|
-
return new Promise((resolve, reject) => {
|
|
77
|
-
const url = new URL(`${endpoint}/api/Tokens/validate`);
|
|
78
|
-
const protocol = url.protocol === 'https:' ? https : http;
|
|
79
|
-
|
|
80
|
-
const postData = JSON.stringify({ token: token });
|
|
81
|
-
|
|
82
|
-
const options = {
|
|
83
|
-
hostname: url.hostname,
|
|
84
|
-
port: url.port || (url.protocol === 'https:' ? 443 : 80),
|
|
85
|
-
path: url.pathname,
|
|
86
|
-
method: 'POST',
|
|
87
|
-
headers: {
|
|
88
|
-
'Content-Type': 'application/json',
|
|
89
|
-
'Content-Length': Buffer.byteLength(postData)
|
|
90
|
-
},
|
|
91
|
-
timeout: 15000
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
const req = protocol.request(options, (res) => {
|
|
95
|
-
let data = '';
|
|
96
|
-
res.on('data', chunk => data += chunk);
|
|
97
|
-
res.on('end', () => {
|
|
98
|
-
try {
|
|
99
|
-
const result = JSON.parse(data);
|
|
100
|
-
resolve(result);
|
|
101
|
-
} catch (e) {
|
|
102
|
-
reject(new Error('Invalid response from server'));
|
|
103
|
-
}
|
|
104
|
-
});
|
|
105
|
-
});
|
|
106
|
-
|
|
107
|
-
req.on('error', reject);
|
|
108
|
-
req.on('timeout', () => {
|
|
109
|
-
req.destroy();
|
|
110
|
-
reject(new Error('Request timed out'));
|
|
111
|
-
});
|
|
112
|
-
|
|
113
|
-
req.write(postData);
|
|
114
|
-
req.end();
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
async function main() {
|
|
119
|
-
// Skip ONLY if explicitly set (for CI pipelines that handle auth differently)
|
|
120
|
-
if (process.env.HEALCODE_SKIP_AUTH === 'true') {
|
|
121
|
-
return;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
// If config already exists with valid token, skip
|
|
125
|
-
if (configExists()) {
|
|
126
|
-
log(colors.green, '\nā
[HealCode] Valid configuration found.');
|
|
127
|
-
return;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
console.log('');
|
|
131
|
-
log(colors.green + colors.bold, 'āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā');
|
|
132
|
-
log(colors.green + colors.bold, ' 𩺠HealCode - Authentication Required');
|
|
133
|
-
log(colors.green + colors.bold, 'āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā');
|
|
134
|
-
console.log('');
|
|
135
|
-
log(colors.yellow, 'ā ļø A valid HealCode token is REQUIRED to use this package.');
|
|
136
|
-
log(colors.gray, ' Get your token at: https://healcode.vercel.app/dashboard');
|
|
137
|
-
console.log('');
|
|
138
|
-
|
|
139
|
-
// Check if interactive
|
|
140
|
-
if (!process.stdin.isTTY) {
|
|
141
|
-
log(colors.red, 'ā Installation failed: Non-interactive terminal detected.');
|
|
142
|
-
log(colors.yellow, '');
|
|
143
|
-
log(colors.yellow, ' To install healcode-client, you must provide a token.');
|
|
144
|
-
log(colors.yellow, ' Run the installation in an interactive terminal.');
|
|
145
|
-
log(colors.yellow, '');
|
|
146
|
-
log(colors.gray, ' Or set HEALCODE_TOKEN environment variable:');
|
|
147
|
-
log(colors.gray, ' HEALCODE_TOKEN=hc_xxx npm install healcode-client');
|
|
148
|
-
console.log('');
|
|
149
|
-
|
|
150
|
-
// Check for environment variable token
|
|
151
|
-
if (process.env.HEALCODE_TOKEN) {
|
|
152
|
-
log(colors.yellow, 'ā³ Found HEALCODE_TOKEN, validating...');
|
|
153
|
-
try {
|
|
154
|
-
const result = await validateToken(process.env.HEALCODE_TOKEN, DEFAULT_BACKEND_URL);
|
|
155
|
-
if (result.isValid) {
|
|
156
|
-
await saveConfig(process.env.HEALCODE_TOKEN, result);
|
|
157
|
-
return; // Success
|
|
158
|
-
}
|
|
159
|
-
} catch (e) {
|
|
160
|
-
// Fall through to failure
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
removePackage();
|
|
165
|
-
process.exit(1);
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
const rl = readline.createInterface({
|
|
169
|
-
input: process.stdin,
|
|
170
|
-
output: process.stdout
|
|
171
|
-
});
|
|
172
|
-
|
|
173
|
-
const question = (prompt) => new Promise((resolve) => {
|
|
174
|
-
rl.question(prompt, resolve);
|
|
175
|
-
});
|
|
176
|
-
|
|
177
|
-
let attempts = 0;
|
|
178
|
-
const maxAttempts = 3;
|
|
179
|
-
|
|
180
|
-
while (attempts < maxAttempts) {
|
|
181
|
-
attempts++;
|
|
182
|
-
|
|
183
|
-
try {
|
|
184
|
-
const token = await question(`${colors.cyan}Enter your HealCode token: ${colors.reset}`);
|
|
185
|
-
|
|
186
|
-
if (!token || token.trim().length === 0) {
|
|
187
|
-
log(colors.red, `\nā Token is required. Attempt ${attempts}/${maxAttempts}`);
|
|
188
|
-
if (attempts >= maxAttempts) break;
|
|
189
|
-
continue;
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
log(colors.yellow, '\nā³ Validating token...');
|
|
193
|
-
|
|
194
|
-
try {
|
|
195
|
-
const result = await validateToken(token.trim(), DEFAULT_BACKEND_URL);
|
|
196
|
-
|
|
197
|
-
if (!result.isValid) {
|
|
198
|
-
log(colors.red, `\nā Invalid token: ${result.errorMessage || 'Token not recognized'}`);
|
|
199
|
-
log(colors.gray, ` Attempt ${attempts}/${maxAttempts}`);
|
|
200
|
-
if (attempts >= maxAttempts) break;
|
|
201
|
-
console.log('');
|
|
202
|
-
continue;
|
|
203
|
-
}
|
|
204
|
-
|
|
205
|
-
// SUCCESS - Save config and complete installation
|
|
206
|
-
log(colors.green, '\nā
Token validated successfully!');
|
|
207
|
-
if (result.projectId) {
|
|
208
|
-
log(colors.gray, ` Project: ${result.projectId}`);
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
await saveConfig(token.trim(), result);
|
|
212
|
-
|
|
213
|
-
rl.close();
|
|
214
|
-
|
|
215
|
-
console.log('');
|
|
216
|
-
log(colors.green + colors.bold, 'š HealCode installed successfully!');
|
|
217
|
-
log(colors.gray, '');
|
|
218
|
-
log(colors.gray, ' Usage:');
|
|
219
|
-
log(colors.gray, " import { initFromConfig } from 'healcode-client';");
|
|
220
|
-
log(colors.gray, ' initFromConfig();');
|
|
221
|
-
console.log('');
|
|
222
|
-
|
|
223
|
-
return; // Success - exit normally
|
|
224
|
-
|
|
225
|
-
} catch (error) {
|
|
226
|
-
log(colors.red, `\nā Connection error: ${error.message}`);
|
|
227
|
-
log(colors.gray, ` Attempt ${attempts}/${maxAttempts}`);
|
|
228
|
-
if (attempts >= maxAttempts) break;
|
|
229
|
-
console.log('');
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
} catch (e) {
|
|
233
|
-
break;
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
// FAILED - Remove package and exit with error
|
|
238
|
-
rl.close();
|
|
239
|
-
|
|
240
|
-
console.log('');
|
|
241
|
-
log(colors.red + colors.bold, 'āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā');
|
|
242
|
-
log(colors.red + colors.bold, ' ā Installation FAILED - Invalid Token');
|
|
243
|
-
log(colors.red + colors.bold, 'āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā');
|
|
244
|
-
console.log('');
|
|
245
|
-
log(colors.yellow, ' healcode-client requires a valid token to install.');
|
|
246
|
-
log(colors.yellow, ' Get your token at: https://healcode.vercel.app/dashboard');
|
|
247
|
-
console.log('');
|
|
248
|
-
|
|
249
|
-
removePackage();
|
|
250
|
-
process.exit(1);
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
async function saveConfig(token, validationResult) {
|
|
254
|
-
const projectRoot = findProjectRoot();
|
|
255
|
-
const agentEndpoint = validationResult.agentEndpoint || DEFAULT_AGENT_URL;
|
|
256
|
-
|
|
257
|
-
const config = {
|
|
258
|
-
token: token,
|
|
259
|
-
endpoint: agentEndpoint,
|
|
260
|
-
enabled: true,
|
|
261
|
-
options: {
|
|
262
|
-
captureConsoleErrors: true,
|
|
263
|
-
captureUnhandledRejections: true,
|
|
264
|
-
maxBreadcrumbs: 20
|
|
265
|
-
}
|
|
266
|
-
};
|
|
267
|
-
|
|
268
|
-
if (validationResult.configuration) {
|
|
269
|
-
Object.assign(config.options, validationResult.configuration);
|
|
270
|
-
}
|
|
271
|
-
|
|
272
|
-
const configPath = path.join(projectRoot, CONFIG_FILE_NAME);
|
|
273
|
-
fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
|
|
274
|
-
|
|
275
|
-
// Add to .gitignore
|
|
276
|
-
const gitignorePath = path.join(projectRoot, '.gitignore');
|
|
277
|
-
if (fs.existsSync(gitignorePath)) {
|
|
278
|
-
let gitignore = fs.readFileSync(gitignorePath, 'utf-8');
|
|
279
|
-
if (!gitignore.includes(CONFIG_FILE_NAME)) {
|
|
280
|
-
fs.appendFileSync(gitignorePath, `\n# HealCode\n${CONFIG_FILE_NAME}\n`);
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
log(colors.green, `ā
Config saved to ${CONFIG_FILE_NAME}`);
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
main().catch((err) => {
|
|
288
|
-
log(colors.red, `\nā Installation failed: ${err.message}`);
|
|
289
|
-
removePackage();
|
|
290
|
-
process.exit(1);
|
|
291
|
-
});
|
|
17
|
+
console.log('');
|
|
18
|
+
console.log(`${colors.green}${colors.bold}ā
healcode-client installed successfully!${colors.reset}`);
|
|
19
|
+
console.log('');
|
|
20
|
+
console.log(`${colors.yellow}ā ļø Setup required - run:${colors.reset}`);
|
|
21
|
+
console.log('');
|
|
22
|
+
console.log(` ${colors.cyan}npx healcode init${colors.reset}`);
|
|
23
|
+
console.log('');
|
|
24
|
+
console.log(`${colors.gray} Get your token at: https://healcode.vercel.app/dashboard${colors.reset}`);
|
|
25
|
+
console.log('');
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';function a0_0x4804(){const _0x18566b=['z2v0uhjVDg90ExbLt2y','ndKWmdDMzK9ZwKC','q2XPy2TLzcbVBIa','DgDOzxu','zgT4z3y','ywrKrxzLBNrmAxn0zw5LCG','odu3mJaXmefyzfnWDq','AhjLzG','zxHPC3rZu3LUyW','wevsv1q','A2Lvrw0','yxbWBhK','zxHWB3j0CW','ntGYAfncruz5','zw5KC1DPDgG','BwfW','DxnLCKfNzw50','uunJCey','DgzQtMS','CwHbwhu','B2fREfe','yxbWBgLJyxrPB24VANnVBG','DvHiC1y','C2HPzNq','s2L2s3e','B2jQzwn0','zhHos2y','mZqXmZm0mffTD05UAG','AM9PBG','CMrHEMO','CMvHzezPBgvtEw5J','zw5HyMXLza','Ahr0Chm6lY9WCMvWywLKlxrYAwjHBc1PBNzPDgvKlwvUzY50CNLJBg91zgzSyxjLlMnVBq','Dg9Rzw4','DgfYz2v0','y2XPy2S','yKnnqwm','y29UzMLN','y2fWDhvYzunVBNnVBgvfCNjVCNm','Aw50zxjJzxb0vw5Oyw5KBgvKuMvQzwn0Aw9UCW','w0HLywXdB2rLxsbfCNjVCIbYzxbVCNrLzcbZDwnJzxnZzNvSBhK','B25mAw5L','l2fWAs9SB2DZlW','Aw5PDa','AfjWDMK','BMvtuLi','C3rHDhvZ','ywrKqNjLywrJCNvTyG','mJmXmZy4nJr4BfnkAKm','rgXNtxe','BgvUz3rO','sLD1uwS','Dg9ju09tDhjPBMC','C2vUza','DgfNtMfTzq','ChjVDg90ExbL','x19LC01VzhvSzq','zw1kwNG','ug9VrfC','AgfZ','yMvMB3jLu2vUza','Aw50zxjJzxb0q29UC29Szq','ue9tva','zw55Dg0','B2zMBgLUzq','C3vIC3rYAw5N','y2fWDhvYzvvUAgfUzgXLzfjLAMvJDgLVBNm','ALv4vNe','zxrkrwO','Aw5PDgLHBgL6zwq','zKjrrvu','y2fWDhvYzq','zuDWBee','B25LCNjVCG','CKvdtw0','zLvNBgy','C2v0Dxbozxr3B3jRtgLZDgvUzxjZ','y2XHC3noyw1L','Bg9JyxrPB24','ChvZAa','vfDIvfK','C2v0rw5HyMXLza','CMvWBgfJzq','mZyYodqWn0LvyxfLzW','AgvHBgnVzguUy29UzMLNlMPZB24','y3DK','v2vSs0q','yNjLywrJCNvTyNm','zNvUy3rPB24','C3rHy2S','w0HLywXdB2rLxsbgywLSzwqGDg8GCMvWB3j0igvYCM9YoG','qLfLDwq','w0HLywXdB2rLxsboBYbJB25MAwCGzMLSzsbMB3vUzc4GuNvUigbUChGGAgvHBgnVzguGAw5PDgaGDg8GC2v0ihvWlG','B25SAw5L','CMP6C1i','z2vUzxjHDgviyxnO','y1njz3K','D2fYBG','zw51BwvYywjSzq','q29UBMvJDgLVBIbSB3n0','CMvHC29U','s1rLshm','AgfZt3DUuhjVCgvYDhK','Ce5YzuS','ywrK','w0HLywXdB2rLxsbgywLSzwqGDg8GBg9HzcbJB25MAwC6','C2v0DxbjBNrLCMfJDgLVBKXPC3rLBMvYCW','zgvMyxvSDa','zgvSzxrL','mZqYodiWnLLezNzSDW','Aw50zxjJzxb0v2LUzg93rxjYB3jZ','DfPdseK','zxjYB3i','AMP5v0W','zgvMAw5LuhjVCgvYDhK','wwjktKC','vw5Oyw5KBgvKifjLAMvJDgLVBJOG','zgLYBMfTzq','B3b0Aw9UCW','CM9utfu','B251BMHHBMrSzwrYzwPLy3rPB24','mta3nJu2m3HkDhDLwG','C3rYAw5N','t2HmyLq','q05Rzfa','BMv0D29YAW','AxnfBMfIBgvK','w0HLywXdB2rLxsbjBML0AwfSAxPLzcbZDwnJzxnZzNvSBhK','C3rYAw5NAwz5','Bg9N','sLvAywe','Cgf0Aa','zw5KCg9PBNq','C2vUDeHHC2HLCW','DwKUy2XPy2S','CvvsyMu','l2fWAs9SB2DZ','vw5RBM93BIbLCNjVCG','zLbUAvK','igf0ia','Bwf4qNjLywrJCNvTyNm'];a0_0x4804=function(){return _0x18566b;};return a0_0x4804();}const a0_0x4ee699=a0_0x520a;(function(_0x3ba65f,_0x332da2){const _0x3ece7b=a0_0x520a,_0x34c5a7=_0x3ba65f();while(!![]){try{const _0x4b3de0=parseInt(_0x3ece7b(0x21d))/0x1+parseInt(_0x3ece7b(0x211))/0x2+parseInt(_0x3ece7b(0x1f7))/0x3+parseInt(_0x3ece7b(0x1bf))/0x4+-parseInt(_0x3ece7b(0x237))/0x5+-parseInt(_0x3ece7b(0x23e))/0x6*(-parseInt(_0x3ece7b(0x232))/0x7)+-parseInt(_0x3ece7b(0x1d4))/0x8;if(_0x4b3de0===_0x332da2)break;else _0x34c5a7['push'](_0x34c5a7['shift']());}catch(_0xe62c76){_0x34c5a7['push'](_0x34c5a7['shift']());}}}(a0_0x4804,0xe2169));function a0_0x520a(_0x72fe65,_0x388c69){_0x72fe65=_0x72fe65-0x1ba;const _0x4804c5=a0_0x4804();let _0x520aa4=_0x4804c5[_0x72fe65];if(a0_0x520a['MhwHds']===undefined){var _0x37eab3=function(_0x2e67a1){const _0x46eadc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2c21b2='',_0x1212d8='';for(let _0x758565=0x0,_0x37d89c,_0x4cc608,_0x236259=0x0;_0x4cc608=_0x2e67a1['charAt'](_0x236259++);~_0x4cc608&&(_0x37d89c=_0x758565%0x4?_0x37d89c*0x40+_0x4cc608:_0x4cc608,_0x758565++%0x4)?_0x2c21b2+=String['fromCharCode'](0xff&_0x37d89c>>(-0x2*_0x758565&0x6)):0x0){_0x4cc608=_0x46eadc['indexOf'](_0x4cc608);}for(let _0x37583c=0x0,_0xf8ecc5=_0x2c21b2['length'];_0x37583c<_0xf8ecc5;_0x37583c++){_0x1212d8+='%'+('00'+_0x2c21b2['charCodeAt'](_0x37583c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1212d8);};a0_0x520a['eQCWKp']=_0x37eab3,a0_0x520a['OXDpbF']={},a0_0x520a['MhwHds']=!![];}const _0x493b8a=_0x4804c5[0x0],_0x2ed189=_0x72fe65+_0x493b8a,_0x1409ee=a0_0x520a['OXDpbF'][_0x2ed189];return!_0x1409ee?(_0x520aa4=a0_0x520a['eQCWKp'](_0x520aa4),a0_0x520a['OXDpbF'][_0x2ed189]=_0x520aa4):_0x520aa4=_0x1409ee,_0x520aa4;}var C=Object['create'],l=Object[a0_0x4ee699(0x216)],m=Object['getOwnPropertyDescriptor'],b=Object['getOwnPropertyNames'],w=Object[a0_0x4ee699(0x231)],H=Object[a0_0x4ee699(0x1db)][a0_0x4ee699(0x20a)],v=(_0x1e5b5a,_0x14aa45)=>{const _0x37a663=a0_0x4ee699,_0x5621a1={'dxNKf':function(_0x524721,_0xd7bc9d,_0x704018,_0x4fc95a){return _0x524721(_0xd7bc9d,_0x704018,_0x4fc95a);}};for(var _0x8e882f in _0x14aa45)_0x5621a1[_0x37a663(0x1be)](l,_0x1e5b5a,_0x8e882f,{'get':_0x14aa45[_0x8e882f],'enumerable':!0x0});},u=(_0x301c84,_0x46c4d8,_0x25a418,_0x39b907)=>{const _0x1943fb=a0_0x4ee699,_0x5a7674={'tgheu':function(_0x37c7c5,_0x129c1b){return _0x37c7c5==_0x129c1b;},'neSRR':_0x1943fb(0x1bd),'QCcpF':_0x1943fb(0x1fc),'Nbdmv':function(_0x7a6b17,_0x3613a7){return _0x7a6b17(_0x3613a7);},'jUxVq':function(_0x1943db,_0x364854){return _0x1943db!==_0x364854;},'enytm':function(_0x3129cc,_0x26cf28,_0x50bfe8,_0x4c9946){return _0x3129cc(_0x26cf28,_0x50bfe8,_0x4c9946);},'hRpvi':function(_0x955843,_0x52fc66,_0x593ed6){return _0x955843(_0x52fc66,_0x593ed6);}};if(_0x46c4d8&&_0x5a7674[_0x1943fb(0x234)](typeof _0x46c4d8,_0x5a7674[_0x1943fb(0x1d1)])||typeof _0x46c4d8==_0x5a7674[_0x1943fb(0x242)]){for(let _0x90daff of _0x5a7674['Nbdmv'](b,_0x46c4d8))!H['call'](_0x301c84,_0x90daff)&&_0x5a7674[_0x1943fb(0x1e7)](_0x90daff,_0x25a418)&&_0x5a7674[_0x1943fb(0x1e3)](l,_0x301c84,_0x90daff,{'get':()=>_0x46c4d8[_0x90daff],'enumerable':!(_0x39b907=_0x5a7674[_0x1943fb(0x1d0)](m,_0x46c4d8,_0x90daff))||_0x39b907[_0x1943fb(0x206)]});}return _0x301c84;},f=(_0x10541e,_0x15a5be,_0x283663)=>(_0x283663=_0x10541e!=null?C(w(_0x10541e)):{},u(_0x15a5be||!_0x10541e||!_0x10541e[a0_0x4ee699(0x1dc)]?l(_0x283663,a0_0x4ee699(0x20f),{'value':_0x10541e,'enumerable':!0x0}):_0x283663,_0x10541e)),y=_0x5e7d5a=>u(l({},a0_0x4ee699(0x1dc),{'value':!0x0}),_0x5e7d5a),N={};v(N,{'HealCode':()=>s,'initFromConfig':()=>h,'loadConfig':()=>p}),module[a0_0x4ee699(0x23d)]=y(N);var g=a0_0x4ee699(0x1c4),E=g+a0_0x4ee699(0x1ce),x=0x14,s=class{constructor(_0x4566d6){const _0x4c7743=a0_0x4ee699,_0x5473f0={'DlgMq':function(_0x5b18d9,_0x191da5){return _0x5b18d9!==_0x191da5;},'eGplA':function(_0x33ad23,_0x31d155){return _0x33ad23!==_0x31d155;},'cSIgy':function(_0xe07c0d,_0x4b870c){return _0xe07c0d<_0x4b870c;}};this[_0x4c7743(0x1fb)]=[],this[_0x4c7743(0x229)]=new Set(),this[_0x4c7743(0x1e9)]=!0x1,(this[_0x4c7743(0x1c9)]={'token':_0x4566d6[_0x4c7743(0x1c5)],'endpoint':_0x4566d6[_0x4c7743(0x228)]||E,'enabled':_0x5473f0[_0x4c7743(0x1d5)](_0x4566d6[_0x4c7743(0x1c3)],!0x1),'captureConsoleErrors':_0x5473f0['eGplA'](_0x4566d6[_0x4c7743(0x1ca)],!0x1),'captureUnhandledRejections':_0x5473f0[_0x4c7743(0x1ec)](_0x4566d6[_0x4c7743(0x1e6)],!0x1),'maxBreadcrumbs':_0x4566d6[_0x4c7743(0x230)]||x,'beforeSend':_0x4566d6[_0x4c7743(0x1e0)]},this[_0x4c7743(0x1c9)]['enabled']&&_0x5473f0[_0x4c7743(0x204)](typeof window,'u')&&this[_0x4c7743(0x1cf)]());}[a0_0x4ee699(0x1cf)](){const _0xe5e17f=a0_0x4ee699;this['initialized']||(this[_0xe5e17f(0x1e9)]=!0x0,this[_0xe5e17f(0x1f0)](),this['setupInteractionListeners'](),this[_0xe5e17f(0x1c9)]['captureConsoleErrors']&&this['interceptConsole'](),this[_0xe5e17f(0x212)](),this[_0xe5e17f(0x1c9)][_0xe5e17f(0x1e6)]&&this[_0xe5e17f(0x1cb)](),console[_0xe5e17f(0x225)](_0xe5e17f(0x223)));}['setupNetworkListeners'](){const _0x494760=a0_0x4ee699,_0x1a6636={'tZCHI':_0x494760(0x201),'jjyWL':_0x494760(0x1e4)};window['addEventListener'](_0x1a6636[_0x494760(0x213)],()=>this['addBreadcrumb'](_0x494760(0x221),'Connection\x20restored',{'status':_0x494760(0x201)})),window[_0x494760(0x236)](_0x1a6636[_0x494760(0x215)],()=>this['addBreadcrumb'](_0x494760(0x221),_0x494760(0x207),{'status':'offline'}));}[a0_0x4ee699(0x20e)](){const _0x3b464e=a0_0x4ee699,_0x4f6c05={'nqftw':_0x3b464e(0x22a),'BAyAj':_0x3b464e(0x1c7)};document[_0x3b464e(0x236)](_0x4f6c05['BAyAj'],_0x395a45=>{const _0xdc264f=_0x3b464e;let _0x3668e8=_0x395a45[_0xdc264f(0x1c6)];this[_0xdc264f(0x1d3)](_0x4f6c05['nqftw'],_0xdc264f(0x233)+_0x3668e8[_0xdc264f(0x1da)],{'id':_0x3668e8['id']||void 0x0,'className':_0x3668e8[_0xdc264f(0x1f1)]||void 0x0,'text':_0x3668e8['innerText']?.[_0xdc264f(0x1e5)](0x0,0x32)||void 0x0});},!0x0);}[a0_0x4ee699(0x1e1)](){const _0x4b25ab=a0_0x4ee699;let _0x2d7516=console[_0x4b25ab(0x214)];console['error']=(..._0x2425b5)=>{const _0x1e54cf=_0x4b25ab;let _0x6aa0c4=_0x2425b5[_0x1e54cf(0x240)](_0x3f990a=>typeof _0x3f990a==_0x1e54cf(0x1bd)?JSON[_0x1e54cf(0x224)](_0x3f990a):String(_0x3f990a))['join']('\x20');this[_0x1e54cf(0x1eb)]('error',_0x6aa0c4),_0x2d7516['apply'](console,_0x2425b5);};}[a0_0x4ee699(0x212)](){const _0x30c4cb=a0_0x4ee699,_0x559b32={'rdazj':function(_0x3e021d,_0x49a607){return _0x3e021d!==_0x49a607;},'KivKq':_0x30c4cb(0x21b),'tfjNk':_0x30c4cb(0x1c8),'RzlKh':_0x30c4cb(0x21e),'BQeud':_0x30c4cb(0x214)};window[_0x30c4cb(0x1ed)]=(_0x45d43f,_0x13ec14,_0x558165,_0x35008e,_0x5eea3e)=>{const _0x56b7cd=_0x30c4cb;if(_0x559b32[_0x56b7cd(0x1c1)](_0x559b32[_0x56b7cd(0x1bc)],_0x559b32[_0x56b7cd(0x243)])){let _0x27920f=typeof _0x45d43f==_0x559b32['RzlKh']?_0x45d43f:_0x56b7cd(0x22d);this[_0x56b7cd(0x1eb)](_0x559b32[_0x56b7cd(0x1ff)],_0x27920f+_0x56b7cd(0x22f)+_0x13ec14+':'+_0x558165+':'+_0x35008e,_0x5eea3e?.[_0x56b7cd(0x1fd)]);}else{let _0x27bf17=_0x16f1d7['error'];_0x22e4a5[_0x56b7cd(0x214)]=(..._0x27db7f)=>{const _0x22fc4f=_0x56b7cd;let _0x5bc693=_0x27db7f['map'](_0x35bfbb=>typeof _0x35bfbb==_0x22fc4f(0x1bd)?_0x3e16df[_0x22fc4f(0x224)](_0x35bfbb):_0xf0755(_0x35bfbb))['join']('\x20');this['capture'](_0x22fc4f(0x214),_0x5bc693),_0x27bf17[_0x22fc4f(0x23c)](_0xd4c676,_0x27db7f);};}};}[a0_0x4ee699(0x1cb)](){const _0x115c69=a0_0x4ee699,_0x54829d={'pNreK':'error'};window[_0x115c69(0x21c)]=_0x7c44e7=>{const _0x3efccb=_0x115c69;this['capture'](_0x54829d[_0x3efccb(0x20b)],_0x3efccb(0x218)+_0x7c44e7['reason']);};}[a0_0x4ee699(0x1d3)](_0x2ed255,_0x2791b8,_0x39e6d3){const _0x35ad70=a0_0x4ee699,_0x1656e9={'oakxQ':function(_0x9b9dd3,_0x6b2ed7){return _0x9b9dd3>_0x6b2ed7;}};let _0x368487={'type':_0x2ed255,'message':_0x2791b8,'timestamp':new Date()[_0x35ad70(0x1d8)](),'data':_0x39e6d3};this['breadcrumbs'][_0x35ad70(0x1f3)](_0x368487),_0x1656e9[_0x35ad70(0x245)](this[_0x35ad70(0x1fb)]['length'],this[_0x35ad70(0x1c9)]['maxBreadcrumbs'])&&this[_0x35ad70(0x1fb)][_0x35ad70(0x1bb)]();}['capture'](_0x5bfcbd,_0x41fed9,_0x1898ac){const _0x5422b2=a0_0x4ee699,_0x593e19={'XERWT':function(_0x91319b,_0x2b9f99,_0x3e9c62){return _0x91319b(_0x2b9f99,_0x3e9c62);},'kiUEm':function(_0x47d606,_0x59551f){return _0x47d606*_0x59551f;},'emJZx':_0x5422b2(0x201),'fPniY':_0x5422b2(0x1e4)};if(!this['config']['enabled'])return;let _0x3cfacd=this[_0x5422b2(0x203)](_0x41fed9,_0x1898ac);if(this[_0x5422b2(0x229)][_0x5422b2(0x1df)](_0x3cfacd))return;this[_0x5422b2(0x229)][_0x5422b2(0x20c)](_0x3cfacd),_0x593e19[_0x5422b2(0x23a)](setTimeout,()=>this[_0x5422b2(0x229)][_0x5422b2(0x210)](_0x3cfacd),_0x593e19[_0x5422b2(0x23b)](0x12c,0x3e8));let _0x40bc30={'token':this[_0x5422b2(0x1c9)][_0x5422b2(0x1c5)],'message':_0x41fed9,'stacktrace':_0x1898ac,'url':window[_0x5422b2(0x1f2)][_0x5422b2(0x238)],'level':_0x5bfcbd,'userAgent':navigator[_0x5422b2(0x241)],'networkStatus':navigator[_0x5422b2(0x1cd)]?_0x593e19[_0x5422b2(0x1dd)]:_0x593e19[_0x5422b2(0x22e)],'breadcrumbs':[...this[_0x5422b2(0x1fb)]],'timestamp':new Date()[_0x5422b2(0x1d8)]()};this['config']['beforeSend']&&(_0x40bc30=this[_0x5422b2(0x1c9)][_0x5422b2(0x1e0)](_0x40bc30),!_0x40bc30)||this[_0x5422b2(0x1d9)](_0x40bc30);}[a0_0x4ee699(0x203)](_0x52fc40,_0x4aefa7){const _0xe96ef3=a0_0x4ee699,_0x5d52dd={'JUZaa':function(_0x2107bf,_0x421dc3){return _0x2107bf+_0x421dc3;},'rECMm':function(_0x5d3f0f,_0x3204e0){return _0x5d3f0f<_0x3204e0;},'WelKD':function(_0x4423ac,_0x8e695f){return _0x4423ac+_0x8e695f;},'BkViD':function(_0x200034,_0x15b4d6){return _0x200034-_0x15b4d6;},'OhLbT':function(_0x1bd567,_0x2caee1){return _0x1bd567<<_0x2caee1;}};let _0x2f65a9=_0x5d52dd[_0xe96ef3(0x226)](_0x52fc40,_0x4aefa7||''),_0x2fb53a=0x0;for(let _0x176062=0x0;_0x5d52dd[_0xe96ef3(0x1ee)](_0x176062,_0x2f65a9[_0xe96ef3(0x1d6)]);_0x176062++){let _0x2a2eaf=_0x2f65a9['charCodeAt'](_0x176062);_0x2fb53a=_0x5d52dd[_0xe96ef3(0x1fa)](_0x5d52dd['BkViD'](_0x5d52dd[_0xe96ef3(0x21f)](_0x2fb53a,0x5),_0x2fb53a),_0x2a2eaf),_0x2fb53a=_0x2fb53a&_0x2fb53a;}return _0x2fb53a['toString']();}async[a0_0x4ee699(0x1d9)](_0x16d7e5){const _0x53b34c=a0_0x4ee699,_0x18b385={'rjzsR':'error','TWbTY':'/api/logs/','PooDW':_0x53b34c(0x22c),'JWuQk':function(_0x217fbf,_0x94f6c8){return _0x217fbf+_0x94f6c8;},'rUZCi':function(_0x20e570,_0x48ac51,_0x51e4e8){return _0x20e570(_0x48ac51,_0x51e4e8);},'qhAXu':_0x53b34c(0x1e2),'KTeHs':_0x53b34c(0x246),'KcBBD':_0x53b34c(0x1fe),'rvWuW':function(_0x5ce50c,_0x55c6f1){return _0x5ce50c!==_0x55c6f1;},'etJEj':'YbJNG','nHNqo':'[HealCode]\x20Network\x20error:'};try{let _0x16fc9d=this[_0x53b34c(0x1c9)]['endpoint'];!_0x16fc9d[_0x53b34c(0x23f)](_0x18b385[_0x53b34c(0x1f4)])&&!_0x16fc9d[_0x53b34c(0x23f)](_0x18b385[_0x53b34c(0x1de)])&&(_0x16fc9d=_0x18b385[_0x53b34c(0x1d7)](_0x16fc9d[_0x53b34c(0x1f6)](/\/$/,''),_0x18b385[_0x53b34c(0x1f4)]));let _0xf26246=await _0x18b385['rUZCi'](fetch,_0x16fc9d,{'method':_0x18b385[_0x53b34c(0x244)],'headers':{'Content-Type':_0x18b385[_0x53b34c(0x209)],'X-HealCode-Token':this[_0x53b34c(0x1c9)]['token']},'body':JSON[_0x53b34c(0x224)](_0x16d7e5),'keepalive':!0x0});_0xf26246['ok']?console[_0x53b34c(0x225)](_0x53b34c(0x1cc)):console[_0x53b34c(0x205)](_0x18b385['KcBBD'],_0xf26246[_0x53b34c(0x1d2)]);}catch(_0x56db3b){_0x18b385['rvWuW'](_0x18b385[_0x53b34c(0x1e8)],_0x53b34c(0x217))?this[_0x53b34c(0x1eb)](_0x18b385[_0x53b34c(0x202)],_0x53b34c(0x218)+_0x5a1b23[_0x53b34c(0x208)]):console[_0x53b34c(0x205)](_0x18b385['nHNqo'],_0x56db3b);}}[a0_0x4ee699(0x1f5)](_0x389426){const _0x35fb04=a0_0x4ee699;this[_0x35fb04(0x1c9)][_0x35fb04(0x1c3)]=_0x389426;}[a0_0x4ee699(0x222)](){const _0x2b566f=a0_0x4ee699;return this[_0x2b566f(0x1c9)][_0x2b566f(0x1c3)];}},a=f(require('fs')),d=f(require(a0_0x4ee699(0x227))),k=a0_0x4ee699(0x1f8);function S(_0x423c0c=process[a0_0x4ee699(0x1f9)]()){const _0x4d3e3e=a0_0x4ee699;let _0x150822=_0x423c0c;for(;_0x150822!==d[_0x4d3e3e(0x219)](_0x150822);){let _0x47468f=d[_0x4d3e3e(0x1c0)](_0x150822,k);if(a[_0x4d3e3e(0x239)](_0x47468f))return _0x47468f;_0x150822=d[_0x4d3e3e(0x219)](_0x150822);}return null;}function p(_0x39352c){const _0x423e17=a0_0x4ee699,_0xc77d5f={'fBQEU':_0x423e17(0x214),'dkxgv':function(_0x42f3ae){return _0x42f3ae();},'APsBu':function(_0xed522b,_0x124665){return _0xed522b!==_0x124665;},'CNkdP':_0x423e17(0x22b)};let _0x3dff86=_0x39352c||_0xc77d5f[_0x423e17(0x235)](S);if(!_0x3dff86||!a[_0x423e17(0x239)](_0x3dff86))return null;try{if(_0xc77d5f['APsBu'](_0xc77d5f['CNkdP'],_0xc77d5f[_0x423e17(0x220)])){let _0x290068=_0x1452ac[_0x423e17(0x240)](_0x40c4d5=>typeof _0x40c4d5==_0x423e17(0x1bd)?_0x5c1b71[_0x423e17(0x224)](_0x40c4d5):_0xc32fc4(_0x40c4d5))[_0x423e17(0x1c0)]('\x20');this['capture'](_0xc77d5f[_0x423e17(0x1ea)],_0x290068),_0x7d3109['apply'](_0x5ba420,_0xcd99c3);}else{let _0x1229b0=a[_0x423e17(0x1c2)](_0x3dff86,'utf-8');return JSON['parse'](_0x1229b0);}}catch(_0x4c5fc0){return console[_0x423e17(0x214)](_0x423e17(0x20d),_0x4c5fc0),null;}}function h(_0x5d82aa){const _0x2aaf8d=a0_0x4ee699,_0x5d7565={'fUglf':function(_0x37a88c,_0x1ee4d4){return _0x37a88c(_0x1ee4d4);},'uXHsV':_0x2aaf8d(0x200)};let _0x47ddc2=_0x5d7565[_0x2aaf8d(0x1ef)](p,_0x5d82aa);if(!_0x47ddc2)return console['warn'](_0x5d7565[_0x2aaf8d(0x1ba)]),null;let _0x1a87ed={'token':_0x47ddc2[_0x2aaf8d(0x1c5)],'endpoint':_0x47ddc2[_0x2aaf8d(0x228)],'enabled':_0x47ddc2['enabled'],'captureConsoleErrors':_0x47ddc2[_0x2aaf8d(0x21a)]?.['captureConsoleErrors'],'captureUnhandledRejections':_0x47ddc2['options']?.['captureUnhandledRejections'],'maxBreadcrumbs':_0x47ddc2[_0x2aaf8d(0x21a)]?.[_0x2aaf8d(0x230)]};return new s(_0x1a87ed);}0x0&&(module['exports']={'HealCode':HealCode,'initFromConfig':initFromConfig,'loadConfig':loadConfig});
|
|
1
|
+
'use strict';const a0_0x177ba2=a0_0x2c2d;(function(_0x1baf4b,_0xe6882b){const _0xcb8c71=a0_0x2c2d,_0x546d19=_0x1baf4b();while(!![]){try{const _0x4f38d9=parseInt(_0xcb8c71(0x21d))/0x1+parseInt(_0xcb8c71(0x199))/0x2*(parseInt(_0xcb8c71(0x208))/0x3)+parseInt(_0xcb8c71(0x1e6))/0x4*(parseInt(_0xcb8c71(0x21c))/0x5)+-parseInt(_0xcb8c71(0x1ad))/0x6+parseInt(_0xcb8c71(0x1df))/0x7*(-parseInt(_0xcb8c71(0x1b8))/0x8)+-parseInt(_0xcb8c71(0x216))/0x9*(parseInt(_0xcb8c71(0x19e))/0xa)+parseInt(_0xcb8c71(0x1bd))/0xb;if(_0x4f38d9===_0xe6882b)break;else _0x546d19['push'](_0x546d19['shift']());}catch(_0x69989c){_0x546d19['push'](_0x546d19['shift']());}}}(a0_0x12c5,0x37cfc));var C=Object[a0_0x177ba2(0x20b)],l=Object[a0_0x177ba2(0x1f5)],m=Object[a0_0x177ba2(0x20f)],b=Object[a0_0x177ba2(0x1cc)],w=Object[a0_0x177ba2(0x1b3)],H=Object[a0_0x177ba2(0x1ea)][a0_0x177ba2(0x1fb)],v=(_0x5db003,_0x4e2299)=>{const _0x3d0fa0={'RVoAk':function(_0x1b0def,_0x37c99e,_0x56ae87,_0x1d0951){return _0x1b0def(_0x37c99e,_0x56ae87,_0x1d0951);}};for(var _0x55ed3c in _0x4e2299)_0x3d0fa0['RVoAk'](l,_0x5db003,_0x55ed3c,{'get':_0x4e2299[_0x55ed3c],'enumerable':!0x0});},u=(_0x30fc2e,_0x518409,_0x1f87d0,_0x5a3553)=>{const _0x13d66c=a0_0x177ba2,_0x5ed660={'UsJgt':_0x13d66c(0x1b0),'JzXiR':function(_0x185855,_0x37655e){return _0x185855==_0x37655e;},'DGdfX':'function','mTwoG':function(_0x3bb30e,_0x17bd6e){return _0x3bb30e(_0x17bd6e);},'HQnMe':function(_0x26eb9a,_0xf87dbe){return _0x26eb9a!==_0xf87dbe;},'OWHVT':function(_0x5b07dc,_0x8d7301,_0x3e4d80,_0x4e2629){return _0x5b07dc(_0x8d7301,_0x3e4d80,_0x4e2629);},'wSrCH':function(_0x475de5,_0x4237c2,_0x53f611){return _0x475de5(_0x4237c2,_0x53f611);}};if(_0x518409&&typeof _0x518409==_0x5ed660[_0x13d66c(0x1cb)]||_0x5ed660[_0x13d66c(0x1de)](typeof _0x518409,_0x5ed660[_0x13d66c(0x1c5)])){for(let _0x2e4bdd of _0x5ed660['mTwoG'](b,_0x518409))!H[_0x13d66c(0x203)](_0x30fc2e,_0x2e4bdd)&&_0x5ed660['HQnMe'](_0x2e4bdd,_0x1f87d0)&&_0x5ed660[_0x13d66c(0x194)](l,_0x30fc2e,_0x2e4bdd,{'get':()=>_0x518409[_0x2e4bdd],'enumerable':!(_0x5a3553=_0x5ed660[_0x13d66c(0x1ac)](m,_0x518409,_0x2e4bdd))||_0x5a3553[_0x13d66c(0x1c6)]});}return _0x30fc2e;},f=(_0x3fefe2,_0x3f41b9,_0x5c1691)=>(_0x5c1691=_0x3fefe2!=null?C(w(_0x3fefe2)):{},u(_0x3f41b9||!_0x3fefe2||!_0x3fefe2[a0_0x177ba2(0x20a)]?l(_0x5c1691,'default',{'value':_0x3fefe2,'enumerable':!0x0}):_0x5c1691,_0x3fefe2)),y=_0x5c9222=>u(l({},a0_0x177ba2(0x20a),{'value':!0x0}),_0x5c9222),N={};function a0_0x12c5(){const _0x25a6a4=['yw5LtgS','B25LCNjVCG','u3jzwMu','zNLcCKu','Aw1mwu4','Dg9tDhjPBMC','Aw5PDa','CvbZwKq','Aw5PDgLHBgL6zwq','Aw50zxjJzxb0q29UC29Szq','y2fWDhvYzunVBNnVBgvfCNjVCNm','AgfZ','sNPyAvi','mtr3vuTvzxO','w0HLywXdB2rLxsbozxr3B3jRigvYCM9YoG','DxrMltG','DNvRq3e','igf0ia','rNPPyLe','Aw5UzxjuzxH0','ndm2wM5RvNbe','w0HLywXdB2rLxsbgywLSzwqGDg8GBg9HzcbJB25MAwC6','B3b0Aw9UCW','B3vTCMu','ChjVDg90ExbL','yKPdr1e','C2v0rw5HyMXLza','CeHlAMi','zw5HyMXLza','CeLoD3y','w0HLywXdB2rLxsbgywLSzwqGDg8GCMvWB3j0igvYCM9YoG','sfnTs1C','Dg9Rzw4','CgfYC2u','Bwf4qNjLywrJCNvTyNm','zgvMAw5LuhjVCgvYDhK','B25mAw5L','vwzpwLC','ywrKqNjLywrJCNvTyG','z2vUzxjHDgviyxnO','zgvSzxrL','AgfZt3DUuhjVCgvYDhK','zxHPC3rZu3LUyW','q2XPy2TLzcbVBIa','l2fWAs9SB2DZlW','Aw50zxjJzxb0vw5Oyw5KBgvKuMvQzwn0Aw9UCW','y2fWDhvYzvvUAgfUzgXLzfjLAMvJDgLVBNm','sLfxC1q','ChvZAa','y2fSBa','Cgf0Aa','B25SAw5L','CMvyzwy','ywrKrxzLBNrmAxn0zw5LCG','mJDpEhDpCum','B251BMHHBMrSzwrYzwPLy3rPB24','x19LC01VzhvSzq','y3jLyxrL','y2fWDhvYzq','vw5RBM93BIbLCNjVCG','Aw50zxjJzxb0v2LUzg93rxjYB3jZ','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9Y','w0HLywXdB2rLxsbfCNjVCIbYzxbVCNrLzcbZDwnJzxnZzNvSBhK','yxbWBgLJyxrPB24VANnVBG','y29UzMLN','AxnfBMfIBgvK','BMv0D29YAW','y2XHC3noyw1L','nZiWuLvnv3bg','l2fWAs9SB2DZ','yw5dBe4','C2v0DxbjBNrLCMfJDgLVBKXPC3rLBMvYCW','C2v0Dxbozxr3B3jRtgLZDgvUzxjZ','AgvHBgnVzguUy29UzMLNlMPZB24','nJiYmgjzt2zbua','ntG5ntfgs2zXzhG','yNjLywrJCNvTyNm','w0HLywXdB2rLxsbjBML0AwfSAxPLzcbZDwnJzxnZzNvSBhK','AhjLzG','t1DivLq','C3rYAw5NAwz5','DgfNtMfTzq','zw5KC1DPDgG','C3rHy2S','ndC2mNndrLvNrG','weHwy0y','B2zMBgLUzq','r1DozfC','uNHwDgS','ntmWnJbkD0Lxr1e','C2vUDeHHC2HLCW','v2fOEKi','DwKUy2XPy2S','CMvHC29U','BLndt24','EMnAwe8','BwfW','C3jkwu0','y2HHCKnVzgvbDa','yxbWBhK','DgfYz2v0','BgvUz3rO','zxjYB3i','D1nYq0G','mti2mZeWmNnZB05Qsa','C3rYAw5N','yMX0uxK','B2jQzwn0','DejJwuK','Bg9JyxrPB24','z2v0uhjVDg90ExbLt2y','AM9PBG','qNvJrxa','rfPgzMm','uLL4rvG','mtq1otu0nenbDfnoqW','vxLSCNK','yMvMB3jLu2vUza','yNHsvvi','zxHWB3j0CW','mteXmZC2mJfKC0HxAvu','vw5Oyw5KBgvKifjLAMvJDgLVBJOG','tMndtNC','ywrK','suP4Cgi','zgLYBMfTzq','BLPOquy','zw5KCg9PBNq','reDKzLG','zw51BwvYywjSzq','C3vIC3rYAw5N','Bg9N','y3DK','D2fYBG','vxnkz3q','z2v0t3DUuhjVCgvYDhLoyw1LCW','C2HPzNq','q29UBMvJDgLVBIbSB3n0','CMvWBgfJzq','vvfcCM4','ugjwvM0'];a0_0x12c5=function(){return _0x25a6a4;};return a0_0x12c5();}v(N,{'HealCode':()=>s,'initFromConfig':()=>h,'loadConfig':()=>p}),module[a0_0x177ba2(0x1bc)]=y(N);var g='https://prepaid-tribal-invited-eng.trycloudflare.com',E=g+a0_0x177ba2(0x1fe),x=0x14,s=class{constructor(_0x3d3ae3){const _0x285598=a0_0x177ba2,_0x2a98e5={'vukCq':function(_0x51effd,_0x3b9aba){return _0x51effd!==_0x3b9aba;},'Uylry':function(_0x3833a9,_0x4db9a5){return _0x3833a9<_0x4db9a5;}};this['breadcrumbs']=[],this[_0x285598(0x19f)]=new Set(),this['initialized']=!0x1,(this[_0x285598(0x212)]={'token':_0x3d3ae3[_0x285598(0x1f2)],'endpoint':_0x3d3ae3['endpoint']||E,'enabled':_0x2a98e5[_0x285598(0x1e2)](_0x3d3ae3[_0x285598(0x1ee)],!0x1),'captureConsoleErrors':_0x2a98e5[_0x285598(0x1e2)](_0x3d3ae3['captureConsoleErrors'],!0x1),'captureUnhandledRejections':_0x2a98e5[_0x285598(0x1e2)](_0x3d3ae3[_0x285598(0x200)],!0x1),'maxBreadcrumbs':_0x3d3ae3['maxBreadcrumbs']||x,'beforeSend':_0x3d3ae3[_0x285598(0x1ba)]},this[_0x285598(0x212)][_0x285598(0x1ee)]&&_0x2a98e5[_0x285598(0x1b9)](typeof window,'u')&&this[_0x285598(0x1d8)]());}[a0_0x177ba2(0x1d8)](){const _0x13cc79=a0_0x177ba2;this[_0x13cc79(0x1da)]||(this[_0x13cc79(0x1da)]=!0x0,this[_0x13cc79(0x21a)](),this['setupInteractionListeners'](),this[_0x13cc79(0x212)][_0x13cc79(0x1dc)]&&this[_0x13cc79(0x1db)](),this[_0x13cc79(0x20e)](),this['config'][_0x13cc79(0x200)]&&this[_0x13cc79(0x1ff)](),console['log']('[HealCode]\x20Initialized\x20successfully'));}['setupNetworkListeners'](){const _0x5648df=a0_0x177ba2,_0x3ce60f={'nSCOn':_0x5648df(0x205),'ilqmD':_0x5648df(0x19b)};window['addEventListener'](_0x3ce60f[_0x5648df(0x1a3)],()=>this[_0x5648df(0x1f8)](_0x5648df(0x214),'Connection\x20restored',{'status':_0x5648df(0x205)})),window['addEventListener'](_0x3ce60f['ilqmD'],()=>this[_0x5648df(0x1f8)](_0x5648df(0x214),_0x5648df(0x1ce),{'status':'offline'}));}[a0_0x177ba2(0x219)](){const _0x592e26=a0_0x177ba2,_0x1455b1={'imLYN':_0x592e26(0x1a1),'bxRUR':'click'};document[_0x592e26(0x207)](_0x1455b1[_0x592e26(0x1bb)],_0x6eb9e9=>{const _0x2ab01d=_0x592e26;let _0x54c784=_0x6eb9e9[_0x2ab01d(0x1a9)];this[_0x2ab01d(0x1f8)](_0x1455b1[_0x2ab01d(0x1d6)],_0x2ab01d(0x1fd)+_0x54c784[_0x2ab01d(0x196)],{'id':_0x54c784['id']||void 0x0,'className':_0x54c784[_0x2ab01d(0x215)]||void 0x0,'text':_0x54c784[_0x2ab01d(0x1e5)]?.[_0x2ab01d(0x1c7)](0x0,0x32)||void 0x0});},!0x0);}[a0_0x177ba2(0x1db)](){const _0x4eed37=a0_0x177ba2,_0x27f570={'wVChY':_0x4eed37(0x1ab)};let _0x232325=console[_0x4eed37(0x1ab)];console['error']=(..._0x438e08)=>{const _0x507648=_0x4eed37;let _0x3e2772=_0x438e08[_0x507648(0x1a5)](_0xf058a2=>typeof _0xf058a2==_0x507648(0x1b0)?JSON['stringify'](_0xf058a2):String(_0xf058a2))[_0x507648(0x1b4)]('\x20');this['capture'](_0x27f570['wVChY'],_0x3e2772),_0x232325[_0x507648(0x1a8)](console,_0x438e08);};}[a0_0x177ba2(0x20e)](){const _0xa2a57a=a0_0x177ba2,_0x5123cc={'IJxpb':function(_0x4c7b96,_0x108fac){return _0x4c7b96+_0x108fac;},'gQqdf':function(_0x5e4a15,_0x1fa734){return _0x5e4a15-_0x1fa734;},'sEBNS':function(_0x4a0f86,_0x514f6d){return _0x4a0f86<<_0x514f6d;},'SrYZe':function(_0x49b462,_0xf85f84){return _0x49b462&_0xf85f84;},'BucEp':function(_0x5a95aa,_0xb936be){return _0x5a95aa===_0xb936be;},'RxVtk':'aBkOG','qPsZD':_0xa2a57a(0x1ae),'ACXRC':_0xa2a57a(0x20d),'bJCGQ':'error'};window[_0xa2a57a(0x1d3)]=(_0x4aad33,_0x2c236c,_0x495900,_0x3121fe,_0x4b2922)=>{const _0x52f2d0=_0xa2a57a;if(_0x5123cc[_0x52f2d0(0x1b5)](_0x52f2d0(0x1e4),_0x5123cc[_0x52f2d0(0x19d)])){let _0x3efeff=_0x28135c[_0x52f2d0(0x1a7)](_0x37ace6);_0x2ac226=_0x5123cc[_0x52f2d0(0x1c1)](_0x5123cc['gQqdf'](_0x5123cc['sEBNS'](_0x5368bb,0x5),_0x4776e9),_0x3efeff),_0x12251b=_0x5123cc[_0x52f2d0(0x1d4)](_0x598cdd,_0x2ee32a);}else{let _0x2bd82e=typeof _0x4aad33==_0x5123cc[_0x52f2d0(0x1d9)]?_0x4aad33:_0x5123cc['ACXRC'];this[_0x52f2d0(0x20c)](_0x5123cc[_0x52f2d0(0x1eb)],_0x2bd82e+_0x52f2d0(0x1e3)+_0x2c236c+':'+_0x495900+':'+_0x3121fe,_0x4b2922?.[_0x52f2d0(0x198)]);}};}[a0_0x177ba2(0x1ff)](){const _0x2d6a6a=a0_0x177ba2,_0x65374c={'PbVVm':_0x2d6a6a(0x21f),'UlVmS':function(_0xb96e19,_0x4dea55){return _0xb96e19===_0x4dea55;},'bNZOB':_0x2d6a6a(0x1bf),'reXef':'error'};window['onunhandledrejection']=_0x2d4f1f=>{const _0x361105=_0x2d6a6a,_0x4ac978={'fyBrE':_0x65374c[_0x361105(0x1d1)]};_0x65374c['UlVmS'](_0x361105(0x1bf),_0x65374c['bNZOB'])?this[_0x361105(0x20c)](_0x65374c[_0x361105(0x206)],'Unhandled\x20Rejection:\x20'+_0x2d4f1f[_0x361105(0x1a2)]):this['initialized']||(this['initialized']=!0x0,this[_0x361105(0x21a)](),this[_0x361105(0x219)](),this[_0x361105(0x212)]['captureConsoleErrors']&&this['interceptConsole'](),this[_0x361105(0x20e)](),this[_0x361105(0x212)][_0x361105(0x200)]&&this[_0x361105(0x1ff)](),_0x4f6eb1[_0x361105(0x1c8)](_0x4ac978[_0x361105(0x1d5)]));};}[a0_0x177ba2(0x1f8)](_0x449b77,_0x1db2b0,_0x17d15f){const _0x225611=a0_0x177ba2,_0x1fb1ee={'GWNdW':function(_0x39dbb1,_0x5552a6){return _0x39dbb1>_0x5552a6;}};let _0x46c6a5={'type':_0x449b77,'message':_0x1db2b0,'timestamp':new Date()['toISOString'](),'data':_0x17d15f};this[_0x225611(0x21e)][_0x225611(0x202)](_0x46c6a5),_0x1fb1ee[_0x225611(0x19c)](this['breadcrumbs']['length'],this[_0x225611(0x212)]['maxBreadcrumbs'])&&this[_0x225611(0x21e)][_0x225611(0x1cd)]();}['capture'](_0x4b818f,_0x10ab21,_0x457be3){const _0x2b2b91=a0_0x177ba2,_0x49a728={'JQWsT':_0x2b2b91(0x205),'bLMef':_0x2b2b91(0x19b)};if(!this[_0x2b2b91(0x212)][_0x2b2b91(0x1ee)])return;let _0x1441aa=this[_0x2b2b91(0x1f9)](_0x10ab21,_0x457be3);if(this['sentHashes'][_0x2b2b91(0x1dd)](_0x1441aa))return;this[_0x2b2b91(0x19f)][_0x2b2b91(0x1c0)](_0x1441aa),setTimeout(()=>this[_0x2b2b91(0x19f)][_0x2b2b91(0x1fa)](_0x1441aa),0x12c*0x3e8);let _0x30ea62={'token':this[_0x2b2b91(0x212)][_0x2b2b91(0x1f2)],'message':_0x10ab21,'stacktrace':_0x457be3,'url':window[_0x2b2b91(0x1b2)][_0x2b2b91(0x193)],'level':_0x4b818f,'userAgent':navigator['userAgent'],'networkStatus':navigator[_0x2b2b91(0x1f6)]?_0x49a728[_0x2b2b91(0x201)]:_0x49a728['bLMef'],'breadcrumbs':[...this[_0x2b2b91(0x21e)]],'timestamp':new Date()['toISOString']()};this[_0x2b2b91(0x212)][_0x2b2b91(0x1ba)]&&(_0x30ea62=this[_0x2b2b91(0x212)]['beforeSend'](_0x30ea62),!_0x30ea62)||this['send'](_0x30ea62);}['generateHash'](_0x4e9a4d,_0x231b25){const _0x571ebf=a0_0x177ba2,_0x1eb845={'RYxEX':function(_0x3afdaf,_0x10e207){return _0x3afdaf+_0x10e207;},'srJYM':function(_0x2079fa,_0x2cefb8){return _0x2079fa<_0x2cefb8;},'xzSkv':function(_0x1c61c2,_0x3ef6aa){return _0x1c61c2+_0x3ef6aa;},'oumre':function(_0x3c8729,_0x2d0157){return _0x3c8729<<_0x2d0157;},'pINwv':function(_0x408aad,_0x41ad0b){return _0x408aad&_0x41ad0b;}};let _0x3ac5d5=_0x1eb845[_0x571ebf(0x1b7)](_0x4e9a4d,_0x231b25||''),_0x57c94d=0x0;for(let _0x5a0f08=0x0;_0x1eb845[_0x571ebf(0x1a6)](_0x5a0f08,_0x3ac5d5[_0x571ebf(0x1aa)]);_0x5a0f08++){let _0xd47d80=_0x3ac5d5[_0x571ebf(0x1a7)](_0x5a0f08);_0x57c94d=_0x1eb845['xzSkv'](_0x1eb845[_0x571ebf(0x1e9)](_0x57c94d,0x5)-_0x57c94d,_0xd47d80),_0x57c94d=_0x1eb845[_0x571ebf(0x1ef)](_0x57c94d,_0x57c94d);}return _0x57c94d[_0x571ebf(0x1d7)]();}async['send'](_0x43c177){const _0x32b6be=a0_0x177ba2,_0x25be73={'uruud':_0x32b6be(0x217),'bltQy':function(_0x3c4e49,_0x233dd9){return _0x3c4e49+_0x233dd9;},'XHVcF':_0x32b6be(0x211),'KpCPb':_0x32b6be(0x210),'anClN':_0x32b6be(0x1f0),'zXhFO':_0x32b6be(0x1e0)};try{let _0x427107=this['config'][_0x32b6be(0x1c4)];!_0x427107[_0x32b6be(0x197)]('/api/logs/')&&!_0x427107['endsWith'](_0x25be73['uruud'])&&(_0x427107=_0x25be73[_0x32b6be(0x1af)](_0x427107[_0x32b6be(0x1cf)](/\/$/,''),'/api/logs/'));let _0x17a8f4=await fetch(_0x427107,{'method':'POST','headers':{'Content-Type':_0x25be73[_0x32b6be(0x19a)],'X-HealCode-Token':this[_0x32b6be(0x212)][_0x32b6be(0x1f2)]},'body':JSON[_0x32b6be(0x195)](_0x43c177),'keepalive':!0x0});_0x17a8f4['ok']?console[_0x32b6be(0x1c8)](_0x25be73['KpCPb']):console[_0x32b6be(0x1ca)](_0x25be73[_0x32b6be(0x218)],_0x17a8f4['status']);}catch(_0x59e5c2){console[_0x32b6be(0x1ca)](_0x25be73['zXhFO'],_0x59e5c2);}}[a0_0x177ba2(0x1ec)](_0x18380e){const _0x312e3c=a0_0x177ba2;this[_0x312e3c(0x212)][_0x312e3c(0x1ee)]=_0x18380e;}[a0_0x177ba2(0x213)](){const _0x49683d=a0_0x177ba2;return this[_0x49683d(0x212)][_0x49683d(0x1ee)];}},a=f(require('fs')),d=f(require(a0_0x177ba2(0x204))),k=a0_0x177ba2(0x21b);function S(_0x5a8aa4=process[a0_0x177ba2(0x1c9)]()){const _0x11f606=a0_0x177ba2,_0x2c4b23={'nZhAF':function(_0x2726cf,_0x9d4b63,_0x43ec0d,_0x2770ca){return _0x2726cf(_0x9d4b63,_0x43ec0d,_0x2770ca);},'tBcYI':function(_0x579237,_0x599a35){return _0x579237!==_0x599a35;},'HSmKW':function(_0x53a406,_0x3cc091){return _0x53a406===_0x3cc091;},'pHKjb':_0x11f606(0x1f7),'WahzB':'FdCJf'};let _0x24a45c=_0x5a8aa4;for(;_0x2c4b23[_0x11f606(0x1b1)](_0x24a45c,d[_0x11f606(0x1c2)](_0x24a45c));){if(_0x2c4b23[_0x11f606(0x1f1)](_0x2c4b23[_0x11f606(0x1ed)],_0x2c4b23[_0x11f606(0x1a0)])){for(var _0xbf02f in _0xb94b62)_0x2c4b23[_0x11f606(0x1c3)](_0x2b6edf,_0x3963b6,_0xbf02f,{'get':_0x408926[_0xbf02f],'enumerable':!0x0});}else{let _0x1ea7cb=d[_0x11f606(0x1b4)](_0x24a45c,k);if(a[_0x11f606(0x1fc)](_0x1ea7cb))return _0x1ea7cb;_0x24a45c=d[_0x11f606(0x1c2)](_0x24a45c);}}return null;}function p(_0x22b4a5){const _0x4c06ec=a0_0x177ba2,_0x1fa245={'vIBia':function(_0x1db609,_0x78dd9){return _0x1db609!==_0x78dd9;},'UQBrn':_0x4c06ec(0x1b6),'zcZXO':_0x4c06ec(0x1e7)};let _0x4162e1=_0x22b4a5||S();if(!_0x4162e1||!a[_0x4c06ec(0x1fc)](_0x4162e1))return null;try{let _0x439e32=a['readFileSync'](_0x4162e1,_0x4c06ec(0x1e1));return JSON[_0x4c06ec(0x1f3)](_0x439e32);}catch(_0x335f7b){if(_0x1fa245['vIBia'](_0x1fa245['UQBrn'],_0x1fa245[_0x4c06ec(0x1d0)]))_0x116b82[_0x4c06ec(0x209)]=_0x48f346=>{const _0x40e099=_0x4c06ec;this[_0x40e099(0x20c)](_0x40e099(0x1ab),_0x40e099(0x1be)+_0x48f346[_0x40e099(0x1a2)]);};else return console[_0x4c06ec(0x1ab)](_0x1fa245[_0x4c06ec(0x1a4)],_0x335f7b),null;}}function a0_0x2c2d(_0x5126fc,_0x430c0f){_0x5126fc=_0x5126fc-0x193;const _0x12c516=a0_0x12c5();let _0x2c2d0c=_0x12c516[_0x5126fc];if(a0_0x2c2d['GAFiZZ']===undefined){var _0x1f62c0=function(_0x19eee2){const _0x40833c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x63f6='',_0x5318f1='';for(let _0x5c5d33=0x0,_0x5a299f,_0xb94b62,_0x2b6edf=0x0;_0xb94b62=_0x19eee2['charAt'](_0x2b6edf++);~_0xb94b62&&(_0x5a299f=_0x5c5d33%0x4?_0x5a299f*0x40+_0xb94b62:_0xb94b62,_0x5c5d33++%0x4)?_0x63f6+=String['fromCharCode'](0xff&_0x5a299f>>(-0x2*_0x5c5d33&0x6)):0x0){_0xb94b62=_0x40833c['indexOf'](_0xb94b62);}for(let _0x3963b6=0x0,_0x408926=_0x63f6['length'];_0x3963b6<_0x408926;_0x3963b6++){_0x5318f1+='%'+('00'+_0x63f6['charCodeAt'](_0x3963b6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5318f1);};a0_0x2c2d['piGWhv']=_0x1f62c0,a0_0x2c2d['qglDHn']={},a0_0x2c2d['GAFiZZ']=!![];}const _0x130a3d=_0x12c516[0x0],_0x2614eb=_0x5126fc+_0x130a3d,_0x4e3ec9=a0_0x2c2d['qglDHn'][_0x2614eb];return!_0x4e3ec9?(_0x2c2d0c=a0_0x2c2d['piGWhv'](_0x2c2d0c),a0_0x2c2d['qglDHn'][_0x2614eb]=_0x2c2d0c):_0x2c2d0c=_0x4e3ec9,_0x2c2d0c;}function h(_0x4a4b6a){const _0x504bc0=a0_0x177ba2,_0x2458d8={'aneLk':'[HealCode]\x20No\x20config\x20file\x20found.\x20Run\x20`npx\x20healcode\x20init`\x20to\x20set\x20up.'};let _0x1f5278=p(_0x4a4b6a);if(!_0x1f5278)return console[_0x504bc0(0x1ca)](_0x2458d8[_0x504bc0(0x1d2)]),null;let _0x835189={'token':_0x1f5278[_0x504bc0(0x1f2)],'endpoint':_0x1f5278[_0x504bc0(0x1c4)],'enabled':_0x1f5278['enabled'],'captureConsoleErrors':_0x1f5278[_0x504bc0(0x1e8)]?.['captureConsoleErrors'],'captureUnhandledRejections':_0x1f5278[_0x504bc0(0x1e8)]?.['captureUnhandledRejections'],'maxBreadcrumbs':_0x1f5278[_0x504bc0(0x1e8)]?.[_0x504bc0(0x1f4)]};return new s(_0x835189);}0x0&&(module[a0_0x177ba2(0x1bc)]={'HealCode':HealCode,'initFromConfig':initFromConfig,'loadConfig':loadConfig});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "healcode-client",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.5",
|
|
4
4
|
"description": "HealCode - Automatic error detection and fix generation for your frontend projects",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"obfuscate": "javascript-obfuscator dist/index.js --output dist/index.js --compact true --control-flow-flattening true --dead-code-injection true --string-array true --string-array-encoding base64",
|
|
14
14
|
"dev": "tsup src/index.ts --format cjs,esm --dts --watch",
|
|
15
15
|
"prepublishOnly": "npm run build",
|
|
16
|
-
"postinstall": "node bin/postinstall.js
|
|
16
|
+
"postinstall": "node bin/postinstall.js"
|
|
17
17
|
},
|
|
18
18
|
"keywords": [
|
|
19
19
|
"healcode",
|