@checkly/playwright-reporter 0.1.5 → 0.1.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@checkly/playwright-reporter",
3
- "version": "0.1.5",
3
+ "version": "0.1.7",
4
4
  "description": "Playwright reporter that generates ZIP archives containing JSON reports and test assets",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -9,20 +9,6 @@
9
9
  "dist",
10
10
  "README.md"
11
11
  ],
12
- "repository": {
13
- "type": "git",
14
- "url": "https://github.com/checkly/checkly-playwright-reporter-changelog.git"
15
- },
16
- "scripts": {
17
- "build": "tsc && npx --yes javascript-obfuscator raw-dist --output dist",
18
- "test": "vitest run",
19
- "test:watch": "vitest watch",
20
- "test:coverage": "vitest run --coverage",
21
- "typecheck": "tsc --noEmit",
22
- "lint": "eslint src tests",
23
- "lint:fix": "eslint src tests --fix",
24
- "clean": "rm -rf dist coverage *.zip"
25
- },
26
12
  "keywords": [
27
13
  "playwright",
28
14
  "reporter",
@@ -33,28 +19,27 @@
33
19
  ],
34
20
  "author": "Checkly",
35
21
  "license": "Apache-2.0",
36
- "engines": {
37
- "node": ">=18.0.0"
38
- },
39
- "peerDependencies": {
40
- "@playwright/test": ">=1.40.0"
22
+ "repository": {
23
+ "type": "git",
24
+ "url": "https://github.com/checkly/checkly-playwright-reporter.git",
25
+ "directory": "packages/reporter"
41
26
  },
42
27
  "dependencies": {
43
28
  "archiver": "git+ssh://git@github.com:checkly/node-archiver.git",
44
29
  "axios": "^1.12.2",
45
30
  "form-data": "^4.0.4"
46
31
  },
32
+ "peerDependencies": {
33
+ "@playwright/test": ">=1.40.0"
34
+ },
47
35
  "devDependencies": {
48
36
  "@playwright/test": "^1.56.0",
49
- "@types/adm-zip": "^0.5.7",
50
- "@types/archiver": "^6.0.3",
51
- "@types/node": "^24.7.2",
52
- "@typescript-eslint/eslint-plugin": "^8.46.1",
53
- "@typescript-eslint/parser": "^8.46.1",
54
- "@vitest/coverage-v8": "^3.2.4",
55
- "adm-zip": "^0.5.16",
56
- "eslint": "^9.37.0",
37
+ "tsup": "8.5.1",
57
38
  "typescript": "^5.9.3",
58
- "vitest": "^3.2.4"
39
+ "@checkly/reporter-clients": "0.1.6",
40
+ "@checkly/reporter-utils": "0.1.6"
41
+ },
42
+ "scripts": {
43
+ "build": "tsup"
59
44
  }
60
- }
45
+ }
package/README.md DELETED
@@ -1,256 +0,0 @@
1
- # @checkly/playwright-reporter
2
-
3
- > Official Playwright reporter for Checkly - Upload test results and assets automatically
4
-
5
- [![npm version](https://badge.fury.io/js/@checkly%2Fplaywright-reporter.svg)](https://www.npmjs.com/package/@checkly/playwright-reporter)
6
- [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
7
-
8
- Seamlessly integrate Playwright test results with Checkly monitoring. Automatically upload test results, screenshots, videos, and traces to gain visibility into your application's health across test runs.
9
-
10
- > **Important**: This package is currently in an public beta.
11
- [Contact the Checkly team](https://app.checklyhq.com/?support=true) for support or feedback.
12
- Always ensure you're using the latest version. Expect breaking changes, features in development, and possible bugs.
13
-
14
- ## Installation
15
-
16
- ```bash
17
- npm install --save-dev @checkly/playwright-reporter
18
- ```
19
-
20
- **Requirements:**
21
- - Node.js >= 18.0.0
22
- - Playwright >= 1.40.0
23
- - A Checkly account ([sign up here](https://www.checklyhq.com/signup))
24
-
25
- ## Quick Start
26
-
27
- ### 1. Get Your Checkly Credentials
28
-
29
- 1. Log in to [Checkly](https://app.checklyhq.com)
30
- 2. Go to **Account Settings > API Keys** and create a new API key
31
- 3. Note your Account ID from /settings/account/general
32
-
33
- ### 2. Configure Playwright
34
-
35
- Add the reporter to your `playwright.config.ts`:
36
-
37
- ```typescript
38
- import { defineConfig } from '@playwright/test';
39
-
40
- export default defineConfig({
41
- reporter: [
42
- ['json', { outputFile: 'test-results/playwright-test-report.json' }],
43
- ['list'],
44
- ['@checkly/playwright-reporter']
45
- ],
46
- });
47
- ```
48
-
49
- > **Note**: The JSON reporter must come first to generate the report that this reporter consumes.
50
-
51
- ### 3. Set Environment Variables
52
-
53
- ```bash
54
- export CHECKLY_API_KEY=your_api_key_here
55
- export CHECKLY_ACCOUNT_ID=your_account_id_here
56
- ```
57
-
58
- ### 4. Run Your Tests
59
-
60
- ```bash
61
- npx playwright test
62
- ```
63
-
64
- You'll see a direct link to your test results:
65
-
66
- ```
67
- Running 5 tests using 5 workers
68
-
69
-
70
- 🔗 View test session: https://chkly.link/l/XSX35
71
-
72
- ✓ 1 [chromium] › tests/01-always-passing.spec.ts:4:7 › Always Passing Tests › basic math assertion (5ms)
73
- ✓ 2 [chromium] › tests/01-always-passing.spec.ts:33:7 › Always Passing Tests › async operation with timeout (104ms)
74
- ✓ 3 [chromium] › tests/01-always-passing.spec.ts:8:7 › Always Passing Tests › string manipulation (7ms)
75
- ✓ 4 [chromium] › tests/01-always-passing.spec.ts:14:7 › Always Passing Tests › array operations (20ms)
76
- ✓ 5 [chromium] › tests/01-always-passing.spec.ts:21:7 › Always Passing Tests › object properties (11ms)
77
-
78
- 5 passed (550ms)
79
-
80
- ======================================================
81
-
82
- 🦝 Checkly reporter: 0.1.0
83
- 🎭 Playwright: 1.56.0
84
- 📔 Project: chromium
85
- 🔗 Test session URL: https://chkly.link/l/XSX35
86
-
87
- ======================================================
88
- ```
89
-
90
- ## Configuration
91
-
92
- ### Environment Variables
93
-
94
- The reporter uses environment variables for configuration:
95
-
96
- | Variable | Description | Required |
97
- |----------|-------------|----------|
98
- | `CHECKLY_API_KEY` | Your Checkly API key | Yes* |
99
- | `CHECKLY_ACCOUNT_ID` | Your Checkly account ID | Yes* |
100
-
101
- \* Required for uploading results. Without these, the reporter creates a local ZIP file only.
102
-
103
- ### Configuration Options
104
-
105
- You can also pass options directly in `playwright.config.ts`:
106
-
107
- ```typescript
108
- ['@checkly/playwright-reporter', {
109
- apiKey: process.env.CHECKLY_API_KEY, // Not recommended, use env vars
110
- accountId: process.env.CHECKLY_ACCOUNT_ID, // Not recommended, use env vars
111
- dryRun: false, // Skip API calls, only create local ZIP
112
- outputPath: 'checkly-report.zip', // Custom ZIP output path
113
- jsonReportPath: 'test-results/report.json', // Custom JSON report path
114
- testResultsDir: 'test-results' // Custom test results directory
115
- }]
116
- ```
117
-
118
- | Option | Type | Default | Description |
119
- |--------|------|---------|-------------|
120
- | `dryRun` | `boolean` | `false` | Skip all API calls and only create local ZIP file |
121
- | `apiKey` | `string` | - | Checkly API key (use env var instead) |
122
- | `accountId` | `string` | - | Checkly account ID (use env var instead) |
123
- | `outputPath` | `string` | `'checkly-report.zip'` | Path for the generated ZIP file |
124
- | `jsonReportPath` | `string` | `'test-results/playwright-test-report.json'` | Path to JSON report |
125
- | `testResultsDir` | `string` | `'test-results'` | Directory containing test results |
126
-
127
- > **Security Note**: Always use environment variables for credentials. Never commit API keys to version control.
128
-
129
- ## How It Works
130
-
131
- ### Suite-Level Test Sessions
132
-
133
- This reporter creates **one test session per test run**, not per individual test. The session is named after your project directory:
134
-
135
- ```
136
- Directory: /Users/john/my-app
137
- Session: Playwright Test Session: my-app
138
- ```
139
-
140
- All test results, screenshots, videos, and traces are bundled together in a single session for easy analysis.
141
-
142
- ### Flaky Test Detection
143
-
144
- The reporter automatically detects flaky tests:
145
-
146
- - **Flaky Test**: A test that failed initially but passed on retry
147
- - **Degraded Session**: A session with flaky tests but no complete failures
148
- - **Failed Session**: A session where at least one test never passed
149
-
150
- ### What Gets Uploaded
151
-
152
- - ✅ Test results and status (passed/failed/flaky)
153
- - ✅ Test execution duration
154
- - ✅ Screenshots (on failure or explicit capture)
155
- - ✅ Videos (full recordings)
156
- - ✅ Traces (Playwright traces for debugging)
157
- - ✅ Complete JSON test report
158
-
159
- ## Usage Examples
160
-
161
- ### Dry Run Mode (No API Calls)
162
-
163
- Use dry run mode to create ZIP files without making API calls:
164
-
165
- ```typescript
166
- export default defineConfig({
167
- reporter: [
168
- ['json', { outputFile: 'test-results/playwright-test-report.json' }],
169
- ['@checkly/playwright-reporter', {
170
- dryRun: true // Skip all API calls, only create local ZIP
171
- }]
172
- ],
173
- });
174
- ```
175
-
176
- Perfect for:
177
- - Local testing and validation
178
- - CI/CD pipelines without credentials
179
- - Debugging ZIP file contents
180
-
181
- ### Local Development (No Upload)
182
-
183
- Run tests locally without uploading to Checkly:
184
-
185
- ```bash
186
- # Simply don't set the environment variables
187
- npx playwright test
188
- ```
189
-
190
- The reporter will create a local `checkly-report.zip` file silently.
191
-
192
- ### Conditional Dry Run (CI vs Local)
193
-
194
- Automatically use dry run in CI, but enable API calls locally:
195
-
196
- ```typescript
197
- export default defineConfig({
198
- reporter: [
199
- ['json', { outputFile: 'test-results/playwright-test-report.json' }],
200
- ['@checkly/playwright-reporter', {
201
- dryRun: !!process.env.CI // Dry run in CI, normal mode locally
202
- }]
203
- ],
204
- });
205
- ```
206
-
207
- This allows you to:
208
- - Test locally with API credentials when available
209
- - Run validation in CI without requiring secrets
210
- - Keep ZIP files in CI for artifact upload
211
-
212
- ### GitHub Actions
213
-
214
- ```yaml
215
- name: Playwright Tests
216
- on: [push, pull_request]
217
-
218
- jobs:
219
- test:
220
- runs-on: ubuntu-latest
221
- steps:
222
- - uses: actions/checkout@v4
223
-
224
- - uses: actions/setup-node@v4
225
- with:
226
- node-version: 18
227
-
228
- - name: Install dependencies
229
- run: npm ci
230
-
231
- - name: Install Playwright browsers
232
- run: npx playwright install --with-deps
233
-
234
- - name: Run Playwright tests
235
- env:
236
- CHECKLY_API_KEY: ${{ secrets.CHECKLY_API_KEY }}
237
- CHECKLY_ACCOUNT_ID: ${{ secrets.CHECKLY_ACCOUNT_ID }}
238
- run: npx playwright test
239
- ```
240
-
241
- ### Multiple Reporters
242
-
243
- Combine with other Playwright reporters:
244
-
245
- ```typescript
246
- export default defineConfig({
247
- reporter: [
248
- ['json', { outputFile: 'test-results/playwright-test-report.json' }],
249
- ['@checkly/playwright-reporter'],
250
- ['html', { outputFolder: 'playwright-report' }],
251
- ['list']
252
- ],
253
- });
254
- ```
255
-
256
- Made with ❤️ by [Checkly](https://www.checklyhq.com)
@@ -1 +0,0 @@
1
- function a0_0xef21(_0x56de62,_0x13ba8f){_0x56de62=_0x56de62-0x64;const _0x1cb662=a0_0x1cb6();let _0xef215=_0x1cb662[_0x56de62];return _0xef215;}const a0_0x475340=a0_0xef21;function a0_0x1cb6(){const _0x1a5619=['createAsset','18HzDvVL','.zip','video','9205zRDZnT','shouldSkipFile','readdirSync','collectAssetsRecursive','.png','6602772mtENsy','image/bmp','resolve','toLowerCase','name','.gif','118113zqdWJO','extname','relative','50FdyUCn','testResultsDir','join','collectAssets','attachment','152712QkrovE','.avi','includes','getImageContentType','text/plain','52EIClac','image/gif','getVideoContentType','video/webm','video/mp4','test','other','6296bXPeUK','.mov','sep','determineAssetType','.txt','image/jpeg','.jpeg','.bmp','basename','.jpg','.svg','.webm','16277rZJExV','trace','some','video/x-msvideo','text/html','image/svg+xml','.mp4','271705VwTpgy','split','application/zip','existsSync','video/quicktime','1012626xWgOqL','image/png'];a0_0x1cb6=function(){return _0x1a5619;};return a0_0x1cb6();}(function(_0x233634,_0x589c28){const _0x30b879=a0_0xef21,_0x30e730=_0x233634();while(!![]){try{const _0xb195ca=parseInt(_0x30b879(0x87))/0x1+parseInt(_0x30b879(0x6f))/0x2+-parseInt(_0x30b879(0x67))/0x3*(parseInt(_0x30b879(0x74))/0x4)+parseInt(_0x30b879(0x8e))/0x5*(parseInt(_0x30b879(0x96))/0x6)+parseInt(_0x30b879(0x99))/0x7*(parseInt(_0x30b879(0x7b))/0x8)+-parseInt(_0x30b879(0x93))/0x9*(-parseInt(_0x30b879(0x6a))/0xa)+-parseInt(_0x30b879(0x9e))/0xb;if(_0xb195ca===_0x589c28)break;else _0x30e730['push'](_0x30e730['shift']());}catch(_0x55d32f){_0x30e730['push'](_0x30e730['shift']());}}}(a0_0x1cb6,0xb4ec0));import*as a0_0x116555 from'fs';import*as a0_0x4a9982 from'path';export class AssetCollector{[a0_0x475340(0x6b)];constructor(_0x176648){const _0x58c69a=a0_0x475340;this[_0x58c69a(0x6b)]=_0x176648;}async[a0_0x475340(0x6d)](_0x1332aa){const _0x5b06e7=a0_0x475340,_0x56faa2=[],_0x376a00=new Set();if(!a0_0x116555[_0x5b06e7(0x91)](this[_0x5b06e7(0x6b)]))return _0x56faa2;return await this[_0x5b06e7(0x9c)](this[_0x5b06e7(0x6b)],'',_0x56faa2,_0x376a00),_0x56faa2;}async['collectAssetsRecursive'](_0x54bcb1,_0x2f3135,_0x412989,_0x20b37a){const _0x16cf14=a0_0x475340;let _0x4fc1fe;try{_0x4fc1fe=a0_0x116555[_0x16cf14(0x9b)](_0x54bcb1,{'withFileTypes':!![]});}catch{return;}const _0x3ad32f=a0_0x4a9982[_0x16cf14(0x83)](a0_0x4a9982[_0x16cf14(0xa0)](this[_0x16cf14(0x6b)]));for(const _0x491c8e of _0x4fc1fe){const _0x4f7de5=a0_0x4a9982[_0x16cf14(0x6c)](_0x54bcb1,_0x491c8e[_0x16cf14(0x65)]),_0x131ef2=a0_0x4a9982[_0x16cf14(0x69)](this['testResultsDir'],_0x4f7de5),_0x542449=a0_0x4a9982[_0x16cf14(0x6c)](_0x3ad32f,_0x131ef2);if(this[_0x16cf14(0x9a)](_0x491c8e[_0x16cf14(0x65)]))continue;if(_0x491c8e['isDirectory']())await this[_0x16cf14(0x9c)](_0x4f7de5,_0x542449,_0x412989,_0x20b37a);else{if(_0x491c8e['isFile']()){if(!_0x20b37a['has'](_0x4f7de5)){const _0x34c983=this[_0x16cf14(0x95)](_0x4f7de5,_0x542449);_0x412989['push'](_0x34c983),_0x20b37a['add'](_0x4f7de5);}}}}}[a0_0x475340(0x9a)](_0xce36b0){const _0x47e316=a0_0x475340,_0x70c03=[/^\./,/\.tmp$/i,/~$/,/\.swp$/i,/\.lock$/i,/^playwright-test-report\.json$/i];return _0x70c03[_0x47e316(0x89)](_0x23ae8c=>_0x23ae8c[_0x47e316(0x79)](_0xce36b0));}[a0_0x475340(0x95)](_0x5885db,_0x24b180){const _0x9ea562=a0_0x475340,_0x479ff0=a0_0x4a9982[_0x9ea562(0x68)](_0x5885db)[_0x9ea562(0x64)](),{type:_0x2cb575,contentType:_0x4db46d}=this['determineAssetType'](_0x479ff0),_0x4e5129=_0x24b180[_0x9ea562(0x8f)](a0_0x4a9982[_0x9ea562(0x7d)])[_0x9ea562(0x6c)]('/');return{'sourcePath':_0x5885db,'archivePath':_0x4e5129,'type':_0x2cb575,'contentType':_0x4db46d};}[a0_0x475340(0x7e)](_0x5cbfe2){const _0x4f9179=a0_0x475340;if([_0x4f9179(0x9d),_0x4f9179(0x84),_0x4f9179(0x81),_0x4f9179(0x66),_0x4f9179(0x82),_0x4f9179(0x85)][_0x4f9179(0x71)](_0x5cbfe2))return{'type':'screenshot','contentType':this['getImageContentType'](_0x5cbfe2)};if([_0x4f9179(0x86),_0x4f9179(0x8d),_0x4f9179(0x70),_0x4f9179(0x7c)][_0x4f9179(0x71)](_0x5cbfe2))return{'type':_0x4f9179(0x98),'contentType':this[_0x4f9179(0x76)](_0x5cbfe2)};if(_0x5cbfe2===_0x4f9179(0x97))return{'type':_0x4f9179(0x88),'contentType':_0x4f9179(0x90)};if(_0x5cbfe2==='.html'||_0x5cbfe2==='.htm')return{'type':_0x4f9179(0x6e),'contentType':_0x4f9179(0x8b)};if(_0x5cbfe2==='.json')return{'type':_0x4f9179(0x6e),'contentType':'application/json'};if(_0x5cbfe2===_0x4f9179(0x7f)||_0x5cbfe2==='.log')return{'type':'attachment','contentType':_0x4f9179(0x73)};return{'type':_0x4f9179(0x7a),'contentType':'application/octet-stream'};}[a0_0x475340(0x72)](_0x48123c){const _0x508c6c=a0_0x475340,_0x24f098={'.png':_0x508c6c(0x94),'.jpg':'image/jpeg','.jpeg':_0x508c6c(0x80),'.gif':_0x508c6c(0x75),'.bmp':_0x508c6c(0x9f),'.svg':_0x508c6c(0x8c)};return _0x24f098[_0x48123c]||_0x508c6c(0x94);}['getVideoContentType'](_0x5a43ac){const _0xa9bb9a=a0_0x475340,_0x3bc8fa={'.webm':_0xa9bb9a(0x77),'.mp4':_0xa9bb9a(0x78),'.avi':_0xa9bb9a(0x8a),'.mov':_0xa9bb9a(0x92)};return _0x3bc8fa[_0x5a43ac]||_0xa9bb9a(0x77);}}
@@ -1 +0,0 @@
1
- var a1_0x11a668=a1_0x5cd3;function a1_0x5cd3(_0x258139,_0x46de){_0x258139=_0x258139-0x1d0;var _0x5681a6=a1_0x5681();var _0x5cd32d=_0x5681a6[_0x258139];return _0x5cd32d;}(function(_0x1327ff,_0x1784bc){var _0x1c3c54=a1_0x5cd3,_0x339be7=_0x1327ff();while(!![]){try{var _0x10bb9a=-parseInt(_0x1c3c54(0x1da))/0x1+-parseInt(_0x1c3c54(0x1e3))/0x2+-parseInt(_0x1c3c54(0x1e7))/0x3*(-parseInt(_0x1c3c54(0x1e2))/0x4)+parseInt(_0x1c3c54(0x1d4))/0x5+parseInt(_0x1c3c54(0x1e4))/0x6+-parseInt(_0x1c3c54(0x1e5))/0x7+-parseInt(_0x1c3c54(0x1dc))/0x8*(-parseInt(_0x1c3c54(0x1d6))/0x9);if(_0x10bb9a===_0x1784bc)break;else _0x339be7['push'](_0x339be7['shift']());}catch(_0x14ee8d){_0x339be7['push'](_0x339be7['shift']());}}}(a1_0x5681,0x4ebf5));import a1_0x27f9fa from'axios';import{handleErrorResponse}from'./errors.js';function getVersion(){return'0.1.0';}export function createRequestInterceptor(_0x37144f,_0xe2ad97){return _0x33cd67=>{var _0x467c76=a1_0x5cd3;return _0x33cd67['headers']&&(_0x33cd67[_0x467c76(0x1d5)][_0x467c76(0x1db)]=_0x467c76(0x1d2)+_0x37144f,_0x33cd67['headers'][_0x467c76(0x1de)]=_0xe2ad97,_0x33cd67['headers'][_0x467c76(0x1d0)]=_0x467c76(0x1df)+getVersion()),_0x33cd67;};}export function createResponseErrorInterceptor(){return _0xe00502=>{handleErrorResponse(_0xe00502);};}function a1_0x5681(){var _0x417f0e=['Bearer\x20','apiKey','440110JEqjLM','headers','29547JZPhyo','accountId','getAxiosInstance','interceptors','31805jOkWik','Authorization','1456ZeifxJ','use','x-checkly-account','@checkly/playwright-reporter/','create','api','4GvjcEA','957954tEYNyF','3164166bzoHwA','4028388lzUBKz','baseUrl','587778htxmsh','User-Agent','response'];a1_0x5681=function(){return _0x417f0e;};return a1_0x5681();}export default class ChecklyClient{[a1_0x11a668(0x1d3)];[a1_0x11a668(0x1e6)];['accountId'];[a1_0x11a668(0x1e1)];constructor(_0x3303ee){var _0x2a3a05=a1_0x11a668;this['accountId']=_0x3303ee[_0x2a3a05(0x1d7)],this['apiKey']=_0x3303ee['apiKey'],this[_0x2a3a05(0x1e6)]=_0x3303ee[_0x2a3a05(0x1e6)],this[_0x2a3a05(0x1e1)]=a1_0x27f9fa[_0x2a3a05(0x1e0)]({'baseURL':this[_0x2a3a05(0x1e6)],'timeout':0x1d4c0,'maxContentLength':Infinity,'maxBodyLength':Infinity}),this[_0x2a3a05(0x1e1)][_0x2a3a05(0x1d9)]['request'][_0x2a3a05(0x1dd)](createRequestInterceptor(this[_0x2a3a05(0x1d3)],this[_0x2a3a05(0x1d7)])),this[_0x2a3a05(0x1e1)][_0x2a3a05(0x1d9)][_0x2a3a05(0x1d1)][_0x2a3a05(0x1dd)](_0xc5f088=>_0xc5f088,createResponseErrorInterceptor());}[a1_0x11a668(0x1d8)](){return this['api'];}}
@@ -1 +0,0 @@
1
- const a2_0x48f638=a2_0x4cae;(function(_0x2dcc25,_0x1338f3){const _0x2b667f=a2_0x4cae,_0x137188=_0x2dcc25();while(!![]){try{const _0x5bdf01=-parseInt(_0x2b667f(0xd4))/0x1+parseInt(_0x2b667f(0xdf))/0x2*(parseInt(_0x2b667f(0xe3))/0x3)+-parseInt(_0x2b667f(0xdb))/0x4*(parseInt(_0x2b667f(0xd6))/0x5)+-parseInt(_0x2b667f(0xdd))/0x6+parseInt(_0x2b667f(0xe1))/0x7*(-parseInt(_0x2b667f(0xce))/0x8)+parseInt(_0x2b667f(0xcd))/0x9+parseInt(_0x2b667f(0xd9))/0xa;if(_0x5bdf01===_0x1338f3)break;else _0x137188['push'](_0x137188['shift']());}catch(_0x521927){_0x137188['push'](_0x137188['shift']());}}}(a2_0x17c6,0x66698));function a2_0x17c6(){const _0x25b9cf=['statusCode','3RNsOCe','errorCode','5166954zFLgwP','234488hmQdyt','name','error','Unknown\x20error','response','object','468672OVextW','MissingResponseError','635pmTUer','An\x20error\x20occurred','data','13452730DvtXXq','string','5304SugmGO','constructor','3931194picTDC','message','933054zFKyPk','Network\x20error','161rznpON'];a2_0x17c6=function(){return _0x25b9cf;};return a2_0x17c6();}export class ApiError extends Error{[a2_0x48f638(0xd8)];constructor(_0x5ec489,_0x2eaa3d){const _0xbfd4f1=a2_0x48f638;super(_0x5ec489[_0xbfd4f1(0xde)],_0x2eaa3d),this[_0xbfd4f1(0xcf)]=this[_0xbfd4f1(0xdc)]['name'],this['data']=_0x5ec489;}}export class ValidationError extends ApiError{constructor(_0x4ecad2,_0x41f051){super(_0x4ecad2,_0x41f051);}}export class UnauthorizedError extends ApiError{constructor(_0x5cc46e,_0x5e885a){super(_0x5cc46e,_0x5e885a);}}export class ForbiddenError extends ApiError{constructor(_0x5e5a12,_0x996b8f){super(_0x5e5a12,_0x996b8f);}}export class NotFoundError extends ApiError{constructor(_0xcab78b,_0x525a30){super(_0xcab78b,_0x525a30);}}export class RequestTimeoutError extends ApiError{constructor(_0x23820b,_0x1db4b3){super(_0x23820b,_0x1db4b3);}}function a2_0x4cae(_0x93ea2,_0x55ff55){_0x93ea2=_0x93ea2-0xcc;const _0x17c6a0=a2_0x17c6();let _0x4cae19=_0x17c6a0[_0x93ea2];return _0x4cae19;}export class ConflictError extends ApiError{constructor(_0x73ae46,_0x1d4d1c){super(_0x73ae46,_0x1d4d1c);}}export class ServerError extends ApiError{constructor(_0x30b292,_0xe0ef32){super(_0x30b292,_0xe0ef32);}}export class MiscellaneousError extends ApiError{constructor(_0x51415d,_0x4daea6){super(_0x51415d,_0x4daea6);}}export class MissingResponseError extends Error{constructor(_0x5c7ae9,_0x3361db){const _0x242002=a2_0x48f638;super(_0x5c7ae9,_0x3361db),this[_0x242002(0xcf)]=_0x242002(0xd5);}}export function parseErrorData(_0x7273bd,_0x354084){const _0xe0970f=a2_0x48f638;if(!_0x7273bd)return undefined;if(typeof _0x7273bd==='object'&&_0x7273bd[_0xe0970f(0xe2)]&&_0x7273bd[_0xe0970f(0xd0)]&&_0x7273bd[_0xe0970f(0xde)])return{'statusCode':_0x7273bd[_0xe0970f(0xe2)],'error':_0x7273bd[_0xe0970f(0xd0)],'message':_0x7273bd['message'],'errorCode':_0x7273bd[_0xe0970f(0xcc)]};if(typeof _0x7273bd==='object'&&_0x7273bd['error']&&!_0x7273bd['message'])return{'statusCode':_0x354084['statusCode'],'error':_0x7273bd[_0xe0970f(0xd0)],'message':_0x7273bd[_0xe0970f(0xd0)]};if(typeof _0x7273bd===_0xe0970f(0xd3)&&_0x7273bd[_0xe0970f(0xd0)]&&_0x7273bd['message'])return{'statusCode':_0x354084['statusCode'],'error':_0x7273bd[_0xe0970f(0xd0)],'message':_0x7273bd[_0xe0970f(0xde)],'errorCode':_0x7273bd[_0xe0970f(0xcc)]};if(typeof _0x7273bd===_0xe0970f(0xd3)&&_0x7273bd[_0xe0970f(0xde)])return{'statusCode':_0x354084[_0xe0970f(0xe2)],'error':_0x7273bd[_0xe0970f(0xde)],'message':_0x7273bd[_0xe0970f(0xde)],'errorCode':_0x7273bd[_0xe0970f(0xcc)]};if(typeof _0x7273bd===_0xe0970f(0xda))return{'statusCode':_0x354084[_0xe0970f(0xe2)],'error':_0x7273bd,'message':_0x7273bd};return undefined;}export function handleErrorResponse(_0xbcbe7f){const _0x19ff67=a2_0x48f638;if(!_0xbcbe7f['response'])throw new MissingResponseError(_0xbcbe7f[_0x19ff67(0xde)]||_0x19ff67(0xe0));const {status:_0x5b31f6,data:_0x4163fe}=_0xbcbe7f[_0x19ff67(0xd2)],_0x5deab4=parseErrorData(_0x4163fe,{'statusCode':_0x5b31f6});if(!_0x5deab4)throw new MiscellaneousError({'statusCode':_0x5b31f6,'error':_0x19ff67(0xd1),'message':_0xbcbe7f[_0x19ff67(0xde)]||_0x19ff67(0xd7)});switch(_0x5b31f6){case 0x190:throw new ValidationError(_0x5deab4);case 0x191:throw new UnauthorizedError(_0x5deab4);case 0x193:throw new ForbiddenError(_0x5deab4);case 0x194:throw new NotFoundError(_0x5deab4);case 0x198:throw new RequestTimeoutError(_0x5deab4);case 0x199:throw new ConflictError(_0x5deab4);default:if(_0x5b31f6>=0x1f4)throw new ServerError(_0x5deab4);throw new MiscellaneousError(_0x5deab4);}}
@@ -1 +0,0 @@
1
- (function(_0x3f3af6,_0x114878){var _0x396f4b=a3_0x3918,_0x3dd07d=_0x3f3af6();while(!![]){try{var _0x10d4d1=-parseInt(_0x396f4b(0x97))/0x1+-parseInt(_0x396f4b(0x95))/0x2*(-parseInt(_0x396f4b(0x90))/0x3)+parseInt(_0x396f4b(0x94))/0x4+parseInt(_0x396f4b(0x93))/0x5+-parseInt(_0x396f4b(0x8f))/0x6+parseInt(_0x396f4b(0x92))/0x7+-parseInt(_0x396f4b(0x91))/0x8*(parseInt(_0x396f4b(0x96))/0x9);if(_0x10d4d1===_0x114878)break;else _0x3dd07d['push'](_0x3dd07d['shift']());}catch(_0x2ee737){_0x3dd07d['push'](_0x3dd07d['shift']());}}}(a3_0x2a18,0x3667e));function a3_0x3918(_0xe3a34e,_0x15d3ff){_0xe3a34e=_0xe3a34e-0x8f;var _0x2a1840=a3_0x2a18();var _0x3918ac=_0x2a1840[_0xe3a34e];return _0x3918ac;}export{default as ChecklyClient}from'./checkly-client.js';export{TestResults}from'./test-results.js';export*from'./types.js';function a3_0x2a18(){var _0x1e9db7=['9fkzFhW','46989yBkmCR','1227144IOthEK','12039cZuFVi','502968QyuhDq','447832Zmevbp','1658200toAexu','68844eFpNNE','62PxTzsN'];a3_0x2a18=function(){return _0x1e9db7;};return a3_0x2a18();}export*from'./errors.js';
@@ -1 +0,0 @@
1
- function a4_0x2efc(_0xbd3651,_0x534f51){_0xbd3651=_0xbd3651-0x1bd;const _0x3665a6=a4_0x3665();let _0x2efca8=_0x3665a6[_0xbd3651];return _0x2efca8;}function a4_0x3665(){const _0x2b976d=['/next/test-sessions/','11oQdMlH','5letnPD','1199802GkMlQm','post','getHeaders','append','62068gyihrH','1814706Uzjqvu','api','19271IQXebF','/results/','216IiqClk','application/zip','/assets','assets','data','2311830WgyJFt','assets.zip','623945PUaRUo','18artZqa','/next/test-sessions/create','130968KahNLr'];a4_0x3665=function(){return _0x2b976d;};return a4_0x3665();}(function(_0x3e3441,_0x1cdab7){const _0x3c7fd5=a4_0x2efc,_0x2c9929=_0x3e3441();while(!![]){try{const _0x5f50d8=-parseInt(_0x3c7fd5(0x1c5))/0x1*(-parseInt(_0x3c7fd5(0x1ca))/0x2)+-parseInt(_0x3c7fd5(0x1c0))/0x3*(parseInt(_0x3c7fd5(0x1c2))/0x4)+-parseInt(_0x3c7fd5(0x1bf))/0x5+parseInt(_0x3c7fd5(0x1c6))/0x6+-parseInt(_0x3c7fd5(0x1cd))/0x7*(-parseInt(_0x3c7fd5(0x1cf))/0x8)+-parseInt(_0x3c7fd5(0x1cb))/0x9+parseInt(_0x3c7fd5(0x1bd))/0xa*(parseInt(_0x3c7fd5(0x1c4))/0xb);if(_0x5f50d8===_0x1cdab7)break;else _0x2c9929['push'](_0x2c9929['shift']());}catch(_0xa44d69){_0x2c9929['push'](_0x2c9929['shift']());}}}(a4_0x3665,0x21a30));import a4_0x1013ef from'form-data';export class TestResults{['api'];constructor(_0x3dc818){this['api']=_0x3dc818;}async['createTestSession'](_0x34003c){const _0x2dd26e=a4_0x2efc,_0x256198=await this['api'][_0x2dd26e(0x1c7)](_0x2dd26e(0x1c1),_0x34003c);return _0x256198['data'];}async['uploadTestResultAsset'](_0x21b8b6,_0xaa9fd6,_0x57498e){const _0x5490d4=a4_0x2efc,_0x9ee64=new a4_0x1013ef();_0x9ee64[_0x5490d4(0x1c9)](_0x5490d4(0x1d2),_0x57498e,{'filename':_0x5490d4(0x1be),'contentType':_0x5490d4(0x1d0)});const _0x119579=await this[_0x5490d4(0x1cc)]['post'](_0x5490d4(0x1c3)+_0x21b8b6+_0x5490d4(0x1ce)+_0xaa9fd6+_0x5490d4(0x1d1),_0x9ee64,{'headers':{..._0x9ee64[_0x5490d4(0x1c8)]()}});return _0x119579['data'];}async['updateTestResult'](_0x508406,_0x3c9b9,_0x3c7a23){const _0x41957a=a4_0x2efc,_0x3b8a47=await this[_0x41957a(0x1cc)][_0x41957a(0x1c7)]('/next/test-sessions/'+_0x508406+_0x41957a(0x1ce)+_0x3c9b9,_0x3c7a23);return _0x3b8a47[_0x41957a(0x1d3)];}}
@@ -1 +0,0 @@
1
- export{};
package/dist/reporter.js DELETED
@@ -1 +0,0 @@
1
- const a7_0x4caca5=a7_0x3617;(function(_0x3abe83,_0x11b944){const _0x58fcb8=a7_0x3617,_0x296b05=_0x3abe83();while(!![]){try{const _0x2a8b76=parseInt(_0x58fcb8(0x12a))/0x1*(-parseInt(_0x58fcb8(0x11d))/0x2)+parseInt(_0x58fcb8(0x12e))/0x3+-parseInt(_0x58fcb8(0x13f))/0x4+parseInt(_0x58fcb8(0x136))/0x5+parseInt(_0x58fcb8(0x101))/0x6+-parseInt(_0x58fcb8(0xed))/0x7+parseInt(_0x58fcb8(0xd3))/0x8;if(_0x2a8b76===_0x11b944)break;else _0x296b05['push'](_0x296b05['shift']());}catch(_0x1865bf){_0x296b05['push'](_0x296b05['shift']());}}}(a7_0xbb47,0x82e7f));import*as a7_0x1b685b from'fs';function a7_0x3617(_0x1302ce,_0x3fa550){_0x1302ce=_0x1302ce-0xcc;const _0xbb47aa=a7_0xbb47();let _0x361777=_0xbb47aa[_0x1302ce];return _0x361777;}import*as a7_0x3ca764 from'path';function a7_0xbb47(){const _0x31d0bd=['\x20\x20]','retry','https://api.checklyhq.com','log','5DHHorQ','printSummary','timedOut','[Checkly\x20Reporter]\x20ERROR:\x20JSON\x20report\x20not\x20found\x20at:\x20','708360tjpWFs','existsSync','passed','playwright-tests','outputPath','\x20\x20reporter:\x20[\x0a','checkly-report.zip','CHECKLY_ENV','1198490CuOwbc','uploadTestResultAsset','FAILED','toISOString','🦝\x20Checkly\x20reporter:\x20','CHECKLY_ACCOUNT_ID','apiKey','\x0a======================================================\x0a','🎭\x20Playwright:\x20','1388556IZrcCu','version','[Checkly\x20Reporter]\x20Invalid\x20environment\x20\x22','join','\x22,\x20using\x20\x22production\x22','getTime','testResultId','GITHUB_REPOSITORY','14409688OyHRKH','link','createReadStream','error','flaky','GITHUB_SHA','includes','basename','accountId','[Checkly\x20Reporter]\x20Make\x20sure\x20to\x20configure\x20the\x20json\x20reporter\x20before\x20the\x20checkly\x20reporter:','outcome','getAxiosInstance','testResults','GITHUB_REF_NAME','development','parse','select','updateTestResult','https://github.com/','readFileSync','NODE_ENV','options','message','promises','\x20\x20\x20\x20[\x27json\x27,\x20{\x20outputFile:\x20\x27test-results/playwright-test-report.json\x27\x20}],\x0a','replace','7437374DhowDe','📔\x20','config','PASSED','testSessionId','[Checkly\x20Reporter]\x20Error\x20in\x20onTestEnd:','utf-8','env','http://127.0.0.1:3000','staging','onTestEnd','🔗\x20Test\x20session\x20URL:\x20','production','\x0a======================================================','testCounts','dryRun','jsonReportPath','unlinkSync','https://api-dev.checklyhq.com','environment','777228NDWqZZ','PW_REPORTER','startTime','[Checkly\x20Reporter]\x20Error\x20in\x20onBegin:','en-US','\x20\x20\x20\x20[\x27@checkly/playwright-reporter\x27]\x0a','testSession','retries','max','collectAssets','package.json','Playwright\x20Test\x20Session:\x20','CHECKLY_API_KEY','projects','stat','test-results','PluralRules','zipper','https://api-test.checklyhq.com','assetCollector','onEnd','warn','Projects','test','cwd','size','[Checkly\x20Reporter]\x20Failed\x20to\x20create\x20test\x20session:','uploadResults','184302GRVMPc','length','local','testResultsDir','zipPath','GITHUB_EVENT_NAME','test-results/playwright-test-report.json','substring','status'];a7_0xbb47=function(){return _0x31d0bd;};return a7_0xbb47();}import{AssetCollector}from'./asset-collector.js';import{Zipper}from'./zipper.js';import a7_0x310b0b from'./clients/checkly-client.js';import{TestResults}from'./clients/test-results.js';import{readFileSync}from'fs';import{fileURLToPath}from'url';import{dirname,join}from'path';const __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename),packageJson=JSON['parse'](readFileSync(join(__dirname,'..',a7_0x4caca5(0x10b)),a7_0x4caca5(0xf3))),pkgVersion=packageJson[a7_0x4caca5(0xcc)],pluralRules=new Intl[(a7_0x4caca5(0x111))](a7_0x4caca5(0x105)),projectForms={'zero':'Project','one':'Project','two':a7_0x4caca5(0x117),'few':a7_0x4caca5(0x117),'many':'Projects','other':a7_0x4caca5(0x117)};function getApiUrl(_0x469658){const _0x56dec7=a7_0x4caca5,_0x544da7={'local':_0x56dec7(0xf5),'development':_0x56dec7(0xff),'staging':_0x56dec7(0x113),'production':_0x56dec7(0x128)};return _0x544da7[_0x469658];}function getEnvironment(_0x47f5eb){const _0x4f53c0=a7_0x4caca5,_0x35eea0=_0x47f5eb?.[_0x4f53c0(0x100)],_0x412e98=process[_0x4f53c0(0xf4)][_0x4f53c0(0x135)],_0x242551=_0x35eea0||_0x412e98||_0x4f53c0(0xf9),_0x1ba7c1=[_0x4f53c0(0x11f),_0x4f53c0(0xe1),_0x4f53c0(0xf6),_0x4f53c0(0xf9)];if(!_0x1ba7c1[_0x4f53c0(0xd9)](_0x242551))return console[_0x4f53c0(0x116)](_0x4f53c0(0xcd)+_0x242551+_0x4f53c0(0xcf)),'production';return _0x242551;}function getDirectoryName(){const _0x2093e0=a7_0x4caca5,_0x46197d=process[_0x2093e0(0x119)]();let _0x29d812=a7_0x3ca764[_0x2093e0(0xda)](_0x46197d);return(!_0x29d812||_0x29d812==='/'||_0x29d812==='.')&&(_0x29d812=_0x2093e0(0x131)),_0x29d812=_0x29d812[_0x2093e0(0xec)](/[<>:"|?*]/g,'-'),_0x29d812[_0x2093e0(0x11e)]>0xff&&(_0x29d812=_0x29d812[_0x2093e0(0x124)](0x0,0xff)),_0x29d812;}export class ChecklyReporter{[a7_0x4caca5(0xe8)];[a7_0x4caca5(0x114)];[a7_0x4caca5(0x112)];['testResults'];[a7_0x4caca5(0x107)];['startTime'];['testCounts']={'passed':0x0,'failed':0x0,'flaky':0x0};constructor(_0x579924={}){const _0x5d2c2a=a7_0x4caca5,_0x55c625=getEnvironment(_0x579924),_0x4fcdf4=getApiUrl(_0x55c625),_0x4dfa7d=process['env'][_0x5d2c2a(0x10d)]||_0x579924[_0x5d2c2a(0x13c)],_0x3a1a30=process[_0x5d2c2a(0xf4)][_0x5d2c2a(0x13b)]||_0x579924[_0x5d2c2a(0xdb)];this[_0x5d2c2a(0xe8)]={'accountId':_0x3a1a30,'apiKey':_0x4dfa7d,'outputPath':_0x579924[_0x5d2c2a(0x132)]??_0x5d2c2a(0x134),'jsonReportPath':_0x579924[_0x5d2c2a(0xfd)]??_0x5d2c2a(0x123),'testResultsDir':_0x579924[_0x5d2c2a(0x120)]??_0x5d2c2a(0x110),'dryRun':_0x579924[_0x5d2c2a(0xfc)]??![]},this[_0x5d2c2a(0x114)]=new AssetCollector(this[_0x5d2c2a(0xe8)][_0x5d2c2a(0x120)]),this[_0x5d2c2a(0x112)]=new Zipper({'outputPath':this[_0x5d2c2a(0xe8)][_0x5d2c2a(0x132)]});if(!this[_0x5d2c2a(0xe8)][_0x5d2c2a(0xfc)]&&this[_0x5d2c2a(0xe8)][_0x5d2c2a(0x13c)]&&this[_0x5d2c2a(0xe8)][_0x5d2c2a(0xdb)]){const _0x4d96cf=new a7_0x310b0b({'apiKey':this[_0x5d2c2a(0xe8)][_0x5d2c2a(0x13c)],'accountId':this[_0x5d2c2a(0xe8)][_0x5d2c2a(0xdb)],'baseUrl':_0x4fcdf4});this['testResults']=new TestResults(_0x4d96cf[_0x5d2c2a(0xde)]());}}['onBegin'](_0x26ade8,_0x5b016d){const _0x4b89ad=a7_0x4caca5;this[_0x4b89ad(0x103)]=new Date();if(!this[_0x4b89ad(0xdf)])return;try{const _0x43acd4=getDirectoryName(),_0x5a729b=[{'name':_0x43acd4}],_0xe49b24=process[_0x4b89ad(0xf4)][_0x4b89ad(0xd2)]?_0x4b89ad(0xe5)+process['env'][_0x4b89ad(0xd2)]:undefined,_0xe2feee=_0xe49b24?{'repoUrl':_0xe49b24,'commitId':process[_0x4b89ad(0xf4)][_0x4b89ad(0xd8)],'branchName':process['env'][_0x4b89ad(0xe0)],'commitOwner':process[_0x4b89ad(0xf4)]['GITHUB_ACTOR'],'commitMessage':process['env'][_0x4b89ad(0x122)]}:undefined;this['testResults']['createTestSession']({'name':_0x4b89ad(0x10c)+_0x43acd4,'environment':process[_0x4b89ad(0xf4)][_0x4b89ad(0xe7)]||_0x4b89ad(0x118),'repoInfo':_0xe2feee,'startedAt':this[_0x4b89ad(0x103)]['getTime'](),'testResults':_0x5a729b,'provider':_0x4b89ad(0x102)})['then'](_0x1f2d8d=>{const _0x8780bd=_0x4b89ad;this[_0x8780bd(0x107)]=_0x1f2d8d;})['catch'](_0x412069=>{const _0x205466=_0x4b89ad;console[_0x205466(0xd6)](_0x205466(0x11b),_0x412069[_0x205466(0xe9)]);});}catch(_0x339b92){console[_0x4b89ad(0xd6)](_0x4b89ad(0x104),_0x339b92);}}[a7_0x4caca5(0xf7)](_0x585144,_0x5ad52d){const _0x4cd974=a7_0x4caca5;try{const _0x315b25=_0x585144[_0x4cd974(0xdd)](),_0x55d1fa=_0x5ad52d[_0x4cd974(0x127)]===_0x585144[_0x4cd974(0x108)]||_0x315b25!=='unexpected';if(!_0x55d1fa)return;const _0x1c1fbd=_0x315b25===_0x4cd974(0xd7);if(_0x1c1fbd)this[_0x4cd974(0xfb)]['flaky']++,this[_0x4cd974(0xfb)][_0x4cd974(0x130)]++;else{if(_0x5ad52d[_0x4cd974(0x125)]===_0x4cd974(0x130))this[_0x4cd974(0xfb)]['passed']++;else(_0x5ad52d[_0x4cd974(0x125)]==='failed'||_0x5ad52d[_0x4cd974(0x125)]===_0x4cd974(0x12c))&&this[_0x4cd974(0xfb)]['failed']++;}}catch(_0x31f5dc){console[_0x4cd974(0xd6)](_0x4cd974(0xf2),_0x31f5dc);}}async[a7_0x4caca5(0x115)](){const _0x32c7ca=a7_0x4caca5;try{const _0x51d2c1=this[_0x32c7ca(0xe8)]['jsonReportPath'];if(!a7_0x1b685b[_0x32c7ca(0x12f)](_0x51d2c1)){console[_0x32c7ca(0xd6)](_0x32c7ca(0x12d)+_0x51d2c1),console[_0x32c7ca(0xd6)](_0x32c7ca(0xdc)),console[_0x32c7ca(0xd6)](_0x32c7ca(0x133)+_0x32c7ca(0xeb)+_0x32c7ca(0x106)+_0x32c7ca(0x126));return;}const _0x1616f2=a7_0x1b685b[_0x32c7ca(0xe6)](_0x51d2c1,'utf-8'),_0x45b079=JSON[_0x32c7ca(0xe2)](_0x1616f2),_0x59165e=await this[_0x32c7ca(0x114)][_0x32c7ca(0x10a)](_0x45b079),_0x4d3301=await this[_0x32c7ca(0x112)]['createZip'](_0x51d2c1,_0x59165e);if(this[_0x32c7ca(0xdf)]&&this[_0x32c7ca(0x107)]){await this[_0x32c7ca(0x11c)](_0x45b079,_0x4d3301[_0x32c7ca(0x121)],_0x4d3301['entries']);if(!this[_0x32c7ca(0xe8)][_0x32c7ca(0xfc)])try{a7_0x1b685b[_0x32c7ca(0xfe)](_0x4d3301[_0x32c7ca(0x121)]);}catch(_0x2a0242){console[_0x32c7ca(0x116)]('[Checkly\x20Reporter]\x20Warning:\x20Could\x20not\x20delete\x20ZIP\x20file:\x20'+_0x2a0242);}}this['testResults']&&this['testSession']?.[_0x32c7ca(0xd4)]&&this[_0x32c7ca(0x12b)](_0x45b079,this['testSession']);}catch(_0x3fa22f){console[_0x32c7ca(0xd6)]('[Checkly\x20Reporter]\x20ERROR\x20creating\x20report:',_0x3fa22f);}}[a7_0x4caca5(0x12b)](_0x449979,_0x1ac191){const _0x189bdd=a7_0x4caca5,_0x21e4e9=pluralRules[_0x189bdd(0xe3)](_0x449979[_0x189bdd(0xef)][_0x189bdd(0x10e)][_0x189bdd(0x11e)]);console[_0x189bdd(0x129)](_0x189bdd(0x13d)),console[_0x189bdd(0x129)](_0x189bdd(0x13a)+pkgVersion),console[_0x189bdd(0x129)](_0x189bdd(0x13e)+_0x449979[_0x189bdd(0xef)][_0x189bdd(0xcc)]),console[_0x189bdd(0x129)](_0x189bdd(0xee)+projectForms[_0x21e4e9]+':\x20'+_0x449979[_0x189bdd(0xef)]['projects']['map'](({name:_0x5ae52e})=>_0x5ae52e)[_0x189bdd(0xce)](',')),console['log'](_0x189bdd(0xf8)+_0x1ac191[_0x189bdd(0xd4)]),console[_0x189bdd(0x129)](_0x189bdd(0xfa));}async['uploadResults'](_0x250bf4,_0x3ddd37,_0x28ed6c){const _0x1b714b=a7_0x4caca5;if(!this['testResults']||!this[_0x1b714b(0x107)])return;try{const {failed:_0x13b0ba,flaky:_0x71f53c}=this[_0x1b714b(0xfb)],_0x42a4d8=_0x13b0ba>0x0?_0x1b714b(0x138):_0x1b714b(0xf0),_0x1a0fde=_0x13b0ba===0x0&&_0x71f53c>0x0,_0x1cb4a7=new Date(),_0x2f82cf=this[_0x1b714b(0x103)]?Math[_0x1b714b(0x109)](0x0,_0x1cb4a7['getTime']()-this[_0x1b714b(0x103)][_0x1b714b(0xd0)]()):0x0,_0x1133a2=(await a7_0x1b685b[_0x1b714b(0xea)][_0x1b714b(0x10f)](_0x3ddd37))[_0x1b714b(0x11a)];if(this[_0x1b714b(0x107)][_0x1b714b(0xdf)][_0x1b714b(0x11e)]>0x0){const _0x259922=this[_0x1b714b(0x107)][_0x1b714b(0xdf)][0x0];let _0x53f836;if(_0x1133a2>0x0)try{const _0x40d3b3=a7_0x1b685b[_0x1b714b(0xd5)](_0x3ddd37),_0xa815d7=await this['testResults'][_0x1b714b(0x137)](this['testSession'][_0x1b714b(0xf1)],_0x259922[_0x1b714b(0xd1)],_0x40d3b3);_0x53f836=_0xa815d7['assetId'];}catch(_0x1fbf7e){const _0x338b34=_0x1fbf7e instanceof Error?_0x1fbf7e[_0x1b714b(0xe9)]:String(_0x1fbf7e);console[_0x1b714b(0xd6)]('[Checkly\x20Reporter]\x20Asset\x20upload\x20failed:',_0x338b34);}await this[_0x1b714b(0xdf)][_0x1b714b(0xe4)](this[_0x1b714b(0x107)]['testSessionId'],_0x259922[_0x1b714b(0xd1)],{'status':_0x42a4d8,'assetEntries':_0x53f836?_0x28ed6c:undefined,'isDegraded':_0x1a0fde,'startedAt':this[_0x1b714b(0x103)]?.[_0x1b714b(0x139)](),'stoppedAt':_0x1cb4a7[_0x1b714b(0x139)](),'responseTime':_0x2f82cf,'metadata':{'usageData':{'s3PostTotalBytes':_0x1133a2}}});}}catch(_0x3a70ba){const _0x58e4b0=_0x3a70ba instanceof Error?_0x3a70ba[_0x1b714b(0xe9)]:String(_0x3a70ba);console[_0x1b714b(0xd6)]('[Checkly\x20Reporter]\x20Failed\x20to\x20upload\x20results:',_0x58e4b0);}}['onError'](_0x4e822b){const _0xd4d836=a7_0x4caca5;console[_0xd4d836(0xd6)]('[Checkly\x20Reporter]\x20Global\x20error:',_0x4e822b);}}
package/dist/types.js DELETED
@@ -1 +0,0 @@
1
- export{};
package/dist/zipper.js DELETED
@@ -1 +0,0 @@
1
- function a9_0x5b22(_0x538716,_0x27f691){_0x538716=_0x538716-0x1c5;const _0xd9640a=a9_0xd964();let _0x5b22ce=_0xd9640a[_0x538716];return _0x5b22ce;}const a9_0x48733b=a9_0x5b22;(function(_0x2749c1,_0x5abcc2){const _0x44393b=a9_0x5b22,_0x567b1d=_0x2749c1();while(!![]){try{const _0x448026=parseInt(_0x44393b(0x1cf))/0x1+-parseInt(_0x44393b(0x1ea))/0x2*(parseInt(_0x44393b(0x1d2))/0x3)+-parseInt(_0x44393b(0x1da))/0x4*(parseInt(_0x44393b(0x1e1))/0x5)+-parseInt(_0x44393b(0x1f4))/0x6*(-parseInt(_0x44393b(0x1cc))/0x7)+parseInt(_0x44393b(0x1c7))/0x8*(parseInt(_0x44393b(0x1e8))/0x9)+parseInt(_0x44393b(0x1d7))/0xa+-parseInt(_0x44393b(0x1d6))/0xb;if(_0x448026===_0x5abcc2)break;else _0x567b1d['push'](_0x567b1d['shift']());}catch(_0x7c5b9d){_0x567b1d['push'](_0x567b1d['shift']());}}}(a9_0xd964,0x874ab));import*as a9_0x4c388a from'fs';function a9_0xd964(){const _0x2f1784=['4551RzxNRf','isArray','archivePath','outputPath','787743OCSOdb','188370VpREuP','transformJsonReport','close','4icKfTj','finalize','error','pointer','stringify','.json','__snapshots__/','3945165xIVbca','entry','substring','writeFileSync','file','Report\x20file\x20not\x20found:\x20','indexOf','953532ehWdmm','pipe','1370svBicX','-snapshots/','tmpdir','parse','Asset\x20file\x20not\x20found:\x20','path','attachments','__screenshots__/','forEach','createZip','1434pHyvvC','utf-8','test-results/','contents','_offsets','64OKFUId','string','transformAttachmentPaths','length','existsSync','22141VRXoBc','normalizeAttachmentPath','sourcePath','831568IzETjT','playwright-test-report-','object'];a9_0xd964=function(){return _0x2f1784;};return a9_0xd964();}import*as a9_0x4a6679 from'path';import*as a9_0x3c8511 from'os';import{ZipArchive}from'archiver';export class Zipper{[a9_0x48733b(0x1d5)];constructor(_0x6bbd3f){const _0x4cdaf8=a9_0x48733b;this[_0x4cdaf8(0x1d5)]=_0x6bbd3f[_0x4cdaf8(0x1d5)];}async[a9_0x48733b(0x1f3)](_0x12c746,_0x1105a0){const _0xda1e14=[];return new Promise((_0x132e99,_0x51d202)=>{const _0x3d349f=a9_0x5b22;try{const _0x2f0a16=a9_0x4c388a['createWriteStream'](this['outputPath']),_0x266bc5=new ZipArchive({'zlib':{'level':0x0}});_0x266bc5['on'](_0x3d349f(0x1e2),_0x40527b=>{const _0x3c50fc=_0x3d349f,_0x218119=_0x40527b['name']['replace'](/\\/g,'/'),_0x47fe96=_0x40527b[_0x3c50fc(0x1c6)]?.[_0x3c50fc(0x1c5)]??0x0,_0x2d95e1=_0x40527b['_offsets']?.[_0x3c50fc(0x1c5)]+(_0x40527b['csize']??0x0)-0x1;_0xda1e14['push']({'name':_0x218119,'start':_0x47fe96,'end':_0x2d95e1});}),_0x2f0a16['on'](_0x3d349f(0x1d9),()=>{const _0x4f3b63=_0x3d349f,_0x31691f=_0x266bc5[_0x4f3b63(0x1dd)]();_0x132e99({'zipPath':this[_0x4f3b63(0x1d5)],'size':_0x31691f,'entryCount':_0xda1e14[_0x4f3b63(0x1ca)],'entries':_0xda1e14});}),_0x266bc5['on'](_0x3d349f(0x1dc),_0xcf3dd6=>{_0x51d202(_0xcf3dd6);}),_0x2f0a16['on'](_0x3d349f(0x1dc),_0x1236a9=>{_0x51d202(_0x1236a9);}),_0x266bc5[_0x3d349f(0x1e9)](_0x2f0a16);if(!a9_0x4c388a['existsSync'](_0x12c746)){_0x51d202(new Error(_0x3d349f(0x1e6)+_0x12c746));return;}const _0xa945a1=this[_0x3d349f(0x1d8)](_0x12c746);_0x266bc5['file'](_0xa945a1,{'name':'output/playwright-test-report.json'});for(const _0x4e7d6b of _0x1105a0){if(!a9_0x4c388a[_0x3d349f(0x1cb)](_0x4e7d6b[_0x3d349f(0x1ce)])){_0x51d202(new Error(_0x3d349f(0x1ee)+_0x4e7d6b[_0x3d349f(0x1ce)]));return;}_0x266bc5[_0x3d349f(0x1e5)](_0x4e7d6b[_0x3d349f(0x1ce)],{'name':_0x4e7d6b[_0x3d349f(0x1d4)]});}_0x266bc5[_0x3d349f(0x1db)]();}catch(_0x1fee40){_0x51d202(_0x1fee40);}});}[a9_0x48733b(0x1d8)](_0x419375){const _0x55c609=a9_0x48733b,_0x26b876=a9_0x4c388a['readFileSync'](_0x419375,_0x55c609(0x1f5)),_0x2e939f=JSON[_0x55c609(0x1ed)](_0x26b876);this['transformAttachmentPaths'](_0x2e939f);const _0x7ecded=a9_0x4a6679['join'](a9_0x3c8511[_0x55c609(0x1ec)](),_0x55c609(0x1d0)+Date['now']()+_0x55c609(0x1df));return a9_0x4c388a[_0x55c609(0x1e4)](_0x7ecded,JSON[_0x55c609(0x1de)](_0x2e939f,null,0x2)),_0x7ecded;}[a9_0x48733b(0x1c9)](_0x3519c1){const _0x3e2eac=a9_0x48733b;if(typeof _0x3519c1!==_0x3e2eac(0x1d1)||_0x3519c1===null)return;if(Array['isArray'](_0x3519c1)){_0x3519c1[_0x3e2eac(0x1f2)](_0x210d81=>this[_0x3e2eac(0x1c9)](_0x210d81));return;}_0x3519c1['attachments']&&Array[_0x3e2eac(0x1d3)](_0x3519c1['attachments'])&&_0x3519c1[_0x3e2eac(0x1f0)]['forEach'](_0x11bdfe=>{const _0x29da6e=_0x3e2eac;_0x11bdfe[_0x29da6e(0x1ef)]&&typeof _0x11bdfe[_0x29da6e(0x1ef)]===_0x29da6e(0x1c8)&&(_0x11bdfe[_0x29da6e(0x1ef)]=this[_0x29da6e(0x1cd)](_0x11bdfe[_0x29da6e(0x1ef)]));}),Object['values'](_0x3519c1)[_0x3e2eac(0x1f2)](_0x357b85=>this['transformAttachmentPaths'](_0x357b85));}[a9_0x48733b(0x1cd)](_0x400a50){const _0x9fdd49=a9_0x48733b,_0x14cf48=_0x400a50['replace'](/\\/g,'/'),_0x483efa=_0x14cf48['indexOf'](_0x9fdd49(0x1f6));if(_0x483efa!==-0x1)return _0x14cf48[_0x9fdd49(0x1e3)](_0x483efa);const _0x5f5d6a=_0x14cf48['indexOf'](_0x9fdd49(0x1eb));if(_0x5f5d6a!==-0x1){const _0x4ef6b2=_0x14cf48[_0x9fdd49(0x1e3)](0x0,_0x5f5d6a),_0x5911c7=_0x4ef6b2['lastIndexOf']('/'),_0x7f7c4c=_0x5911c7!==-0x1?_0x5911c7+0x1:0x0;return _0x14cf48[_0x9fdd49(0x1e3)](_0x7f7c4c);}const _0x3e9582=[_0x9fdd49(0x1f1),_0x9fdd49(0x1e0),'screenshots/','snapshots/'];for(const _0x3665ee of _0x3e9582){const _0x46902a=_0x14cf48[_0x9fdd49(0x1e7)](_0x3665ee);if(_0x46902a!==-0x1)return _0x14cf48[_0x9fdd49(0x1e3)](_0x46902a);}return console['warn']('[Checkly\x20Reporter]\x20Could\x20not\x20normalize\x20attachment\x20path:\x20'+_0x400a50),_0x400a50;}}