@percy/sdk-utils 1.19.2-alpha.0 → 1.19.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/dist/bundle.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@percy/sdk-utils",
|
|
3
|
-
"version": "1.19.2
|
|
3
|
+
"version": "1.19.2",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -50,5 +50,5 @@
|
|
|
50
50
|
]
|
|
51
51
|
}
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "609ae53aa84ab2f7054a21214b36dccd71025780"
|
|
54
54
|
}
|
package/dist/bundle.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.js","sources":["../src/logger.js","../src/percy-info.js","../src/request.js","../src/percy-enabled.js","../src/percy-idle.js","../src/percy-dom.js","../src/post-snapshot.js","../src/post-comparison.js","../src/flush-snapshots.js"],"sourcesContent":["// Used when determining if a message should be logged\nconst LOG_LEVELS = { debug: 0, info: 1, warn: 2, error: 3 };\n\n// Create a small logger util using the specified namespace\nexport function logger(namespace) {\n return Object.keys(LOG_LEVELS).reduce((ns, lvl) => (\n Object.assign(ns, { [lvl]: (...a) => logger.log(namespace, lvl, ...a) })\n ), {});\n}\n\nObject.assign(logger, {\n // Set and/or return the local loglevel\n loglevel: (lvl = logger.loglevel.lvl) => {\n return (logger.loglevel.lvl = lvl || process.env.PERCY_LOGLEVEL || 'info');\n },\n\n // Track and send/write logs for the specified namespace and log level\n log: (ns, lvl, msg, meta) => {\n let err = typeof msg !== 'string' && (lvl === 'error' || lvl === 'debug');\n\n // check if the specific level is within the local loglevel range\n if (LOG_LEVELS[lvl] != null && LOG_LEVELS[lvl] >= LOG_LEVELS[logger.loglevel()]) {\n let debug = logger.loglevel() === 'debug';\n let label = debug ? `percy:${ns}` : 'percy';\n\n // colorize the label when possible for consistency with the CLI logger\n if (!process.env.__PERCY_BROWSERIFIED__) label = `\\u001b[95m${label}\\u001b[39m`;\n msg = `[${label}] ${(err && debug && msg.stack) || msg}`;\n\n if (process.env.__PERCY_BROWSERIFIED__) {\n // use console[warn|error|log] in browsers\n console[['warn', 'error'].includes(lvl) ? lvl : 'log'](msg);\n } else {\n // use process[stdout|stderr].write in node\n process[lvl === 'info' ? 'stdout' : 'stderr'].write(msg + '\\n');\n }\n }\n }\n});\n\nexport default logger;\n","// helper to create a version object from a string\nfunction toVersion(str) {\n str ||= '0.0.0';\n\n return str.split(/\\.|-/)\n .reduce((version, part, i) => {\n let v = parseInt(part, 10);\n version[i] = isNaN(v) ? part : v;\n return version;\n }, {\n get major() { return this[0] || 0; },\n get minor() { return this[1] || 0; },\n get patch() { return this[2] || 0; },\n get prerelease() { return this[3]; },\n get build() { return this[4]; },\n toString() { return str; }\n });\n}\n\n// private version cache\nlet version = toVersion();\n\n// contains local percy info\nconst info = {\n // get or set the CLI API address via the environment\n get address() { return process.env.PERCY_SERVER_ADDRESS || 'http://localhost:5338'; },\n set address(addr) { return (process.env.PERCY_SERVER_ADDRESS = addr); },\n // version information\n get version() { return version; },\n set version(v) { return (version = toVersion(v)); }\n};\n\nexport default info;\n","import percy from './percy-info.js';\n\n// Helper to send a request to the local CLI API\nexport async function request(path, options = {}) {\n let response = await request.fetch(`${percy.address}${path}`, options);\n\n // maybe parse response body as json\n if (typeof response.body === 'string' &&\n response.headers['content-type'] === 'application/json') {\n try { response.body = JSON.parse(response.body); } catch (e) {}\n }\n\n // throw an error if status is not ok\n if (!(response.status >= 200 && response.status < 300)) {\n throw Object.assign(new Error(), {\n message: response.body.error ||\n /* istanbul ignore next: in tests, there's always an error message */\n `${response.status} ${response.statusText}`,\n response\n });\n }\n\n return response;\n}\n\nrequest.post = function post(url, json) {\n return request(url, {\n method: 'POST',\n body: JSON.stringify(json)\n });\n};\n\n// environment specific implementation\nif (process.env.__PERCY_BROWSERIFIED__) {\n // use window.fetch in browsers\n const winFetch = window.fetch;\n\n request.fetch = async function fetch(url, options) {\n let response = await winFetch(url, options);\n\n return {\n status: response.status,\n statusText: response.statusText,\n headers: Object.fromEntries(response.headers.entries()),\n body: await response.text()\n };\n };\n} else {\n // use http.request in node\n request.fetch = async function fetch(url, options) {\n let { default: http } = await import('http');\n\n return new Promise((resolve, reject) => {\n http.request(url, options)\n .on('response', response => {\n let body = '';\n\n response.on('data', chunk => (body += chunk.toString()));\n response.on('end', () => resolve({\n status: response.statusCode,\n statusText: response.statusMessage,\n headers: response.headers,\n body\n }));\n })\n .on('error', reject)\n .end(options.body);\n });\n };\n}\n\nexport default request;\n","import percy from './percy-info.js';\nimport request from './request.js';\nimport logger from './logger.js';\n\n// Check if Percy is enabled using the healthcheck endpoint\nexport async function isPercyEnabled() {\n if (percy.enabled == null) {\n let log = logger('utils');\n let error;\n\n try {\n let response = await request('/percy/healthcheck');\n percy.version = response.headers['x-percy-core-version'];\n percy.config = response.body.config;\n percy.enabled = true;\n } catch (e) {\n percy.enabled = false;\n error = e;\n }\n\n if (percy.enabled && percy.version.major !== 1) {\n log.info('Unsupported Percy CLI version, disabling snapshots');\n log.debug(`Found version: ${percy.version}`);\n percy.enabled = false;\n } else if (!percy.enabled) {\n log.info('Percy is not running, disabling snapshots');\n log.debug(error);\n }\n }\n\n return percy.enabled;\n}\n\nexport default isPercyEnabled;\n","import request from './request.js';\n\nconst RETRY_ERROR_CODES = ['ECONNRESET', 'ETIMEDOUT'];\n\nexport async function waitForPercyIdle() {\n try {\n return !!(await request('/percy/idle'));\n } catch (e) {\n return RETRY_ERROR_CODES.includes(e.code) && waitForPercyIdle();\n }\n}\n\nexport default waitForPercyIdle;\n","import percy from './percy-info.js';\nimport request from './request.js';\n\n// Fetch and cache the @percy/dom script\nexport async function fetchPercyDOM() {\n if (percy.domScript == null) {\n let response = await request('/percy/dom.js');\n percy.domScript = response.body;\n }\n\n return percy.domScript;\n}\n\nexport default fetchPercyDOM;\n","import percy from './percy-info.js';\nimport request from './request.js';\n\n// Post snapshot data to the CLI snapshot endpoint. If the endpoint responds with a build error,\n// indicate that Percy has been disabled.\nexport async function postSnapshot(options, params) {\n let query = params ? `?${new URLSearchParams(params)}` : '';\n\n await request.post(`/percy/snapshot${query}`, options).catch(err => {\n if (err.response?.body?.build?.error) {\n percy.enabled = false;\n } else {\n throw err;\n }\n });\n}\n\nexport default postSnapshot;\n","import percy from './percy-info.js';\nimport request from './request.js';\n\n// Post snapshot data to the CLI snapshot endpoint. If the endpoint responds with a build error,\n// indicate that Percy has been disabled.\nexport async function postComparison(options, params) {\n let query = params ? `?${new URLSearchParams(params)}` : '';\n\n return await request.post(`/percy/comparison${query}`, options).catch(err => {\n if (err.response?.body?.build?.error) {\n percy.enabled = false;\n } else {\n throw err;\n }\n });\n}\n\nexport default postComparison;\n","import percy from './percy-info.js';\nimport request from './request.js';\n\n// Posts to the local Percy server one or more snapshots to flush. Given no arguments, all snapshots\n// will be flushed. Does nothing when Percy is not enabled.\nexport async function flushSnapshots(options) {\n if (percy.enabled) {\n // accept one or more snapshot names\n options &&= [].concat(options).map(o => (\n typeof o === 'string' ? { name: o } : o\n ));\n\n await request.post('/percy/flush', options);\n }\n}\n\nexport default flushSnapshots;\n"],"names":["LOG_LEVELS","debug","info","warn","error","logger","namespace","Object","keys","reduce","ns","lvl","assign","a","log","loglevel","process","env","PERCY_LOGLEVEL","msg","meta","err","label","__PERCY_BROWSERIFIED__","stack","console","includes","write","toVersion","str","split","version","part","i","v","parseInt","isNaN","major","minor","patch","prerelease","build","toString","address","PERCY_SERVER_ADDRESS","addr","request","path","options","response","fetch","percy","body","headers","JSON","parse","e","status","Error","message","statusText","post","url","json","method","stringify","winFetch","window","fromEntries","entries","text","default","http","Promise","resolve","reject","on","chunk","statusCode","statusMessage","end","isPercyEnabled","enabled","config","RETRY_ERROR_CODES","waitForPercyIdle","code","fetchPercyDOM","domScript","postSnapshot","params","query","URLSearchParams","catch","postComparison","flushSnapshots","concat","map","o","name"],"mappings":"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"}
|