Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

inprint

Package Overview
Dependencies
Maintainers
1
Versions
33
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

inprint - npm Package Compare versions

Comparing version 1.1.2 to 1.1.3

10

lib/inprint.js

@@ -155,3 +155,3 @@ "use strict";

// @ts-ignore
console.log("1.1.2");
console.log("1.1.3");
return;

@@ -179,3 +179,3 @@ }

} catch (e) {
if (e.code !== "MODULE_NOT_FOUND") {
if (e.code !== "MODULE_NOT_FOUND" || e.message.split("'")[1] !== optionsPath) {
console.error(`CODE00000008 INPRINT failed to load '${optionsPath}' because of exception:`);

@@ -194,3 +194,3 @@ console.error(e);

} catch (e) {
if (e.code !== "MODULE_NOT_FOUND") {
if (e.code !== "MODULE_NOT_FOUND" || e.message.split("'")[1] !== optionsPath) {
console.error(`CODE00000009 INPRINT failed to load '${optionsPath}' because of exception:`);

@@ -203,2 +203,4 @@ console.error(e);

if (!options0) optionsPath = "<default options>";
const options = _objectSpread(_objectSpread({}, _InprintOptions.defaultInprintOptions), options0);

@@ -222,2 +224,2 @@

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnByaW50LnRzIl0sIm5hbWVzIjpbImlucHJpbnRfcHJlZml4Iiwic3RhcnRQcmVmaXgiLCJlbmRQcmVmaXgiLCJ1c2FnZU5vdGljZSIsIndyaXRlRmlsZVN5bmNJZkNoYW5nZWQiLCJmaWxlTmFtZSIsImNvbnRlbnQiLCJjdXJyZW50IiwiZSIsImhhbmRsZUZpbGUiLCJmaWxlUGF0aCIsIm9wdGlvbnMiLCJjb250ZW50U3RyIiwiaW5jbHVkZXMiLCJmaWxlSGVhZGVyIiwicGFydHMwIiwic3BsaXQiLCJwYXJ0cyIsImkiLCJsZW5ndGgiLCJzIiwic3RhcnRzV2l0aCIsImNvbnNvbGUiLCJlcnJvciIsImhlYWRlciIsIm1pZGRsZVBhcnRzIiwibGFzdFBhcnQiLCJwb3AiLCJwYXJhbXNTdHIiLCJzdWJzdHIiLCJ0cmltIiwibWlkZGxlIiwiam9pbiIsInRhaWwiLCJwYXJhbXMiLCJhYnNvbHV0ZVBhdGgiLCJKU09ONSIsInBhcnNlIiwicHVzaCIsIm5ld01pZGRsZSIsIm1lc3NhZ2UiLCJwYXJ0IiwiZG9JbnByaW50Iiwic3RhY2siLCJuZXdDb250ZW50IiwibWFwIiwicCIsInByZXR0aWVyT3B0cyIsImNhbGxFbWJlZGRlZEZlYXR1cmVzIiwiZW1iZWRkZWRGZWF0dXJlIiwiZW1iZWRkZWRGZWF0dXJlcyIsInIiLCJmdW5jIiwidW5kZWZpbmVkIiwiaW5wcmludCIsInJ1biIsIm9wdGlvbnMwIiwicHJvY2VzcyIsImFyZ3YiLCJsb2ciLCJvcHRpb25zUGF0aCIsInJlcXVpcmUiLCJleGl0IiwiY3dkIiwiY29kZSIsImRlZmF1bHRJbnByaW50T3B0aW9ucyIsInByb2Nlc3NlZENvdW50IiwibG9nZ2luZyIsInBhdGhzIiwiZmlsZXMiLCJza2lwTm9kZU1vZHVsZXMiLCJmb3JjZVByb2Nlc3NUZXJtaW5hdGlvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7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YjtBQUNQLEdBakJEO0FBa0JIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEpTT041IGZyb20gXCJqc29uNVwiO1xuaW1wb3J0IGdsb2JieSBmcm9tIFwiZ2xvYmJ5XCI7XG5pbXBvcnQgeyByZWFkRmlsZVN5bmMsIHdyaXRlRmlsZVN5bmMgfSBmcm9tIFwiZnNcIjtcbmltcG9ydCB7IHJlc29sdmUgfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgZW1iZWRkZWRGZWF0dXJlcyB9IGZyb20gXCIuL2VtYmVkZGVkRmVhdHVyZXNcIjtcbmltcG9ydCB7IGRlZmF1bHRJbnByaW50T3B0aW9ucywgSW5wcmludE9wdGlvbnMgfSBmcm9tIFwiLi9JbnByaW50T3B0aW9uc1wiO1xuaW1wb3J0IHsgZm9ybWF0VHlwZXNjcmlwdCB9IGZyb20gXCIuL2Zvcm1hdFR5cGVzY3JpcHRcIjtcblxuZXhwb3J0IGNvbnN0IGlucHJpbnRfcHJlZml4ID0gXCJAXCIgKyBcIklOUFJJTlRcIjtcbmV4cG9ydCBjb25zdCBzdGFydFByZWZpeCA9IFwiX1NUQVJUXCI7XG5leHBvcnQgY29uc3QgZW5kUHJlZml4ID0gXCJfRU5EXCI7XG5leHBvcnQgY29uc3QgdXNhZ2VOb3RpY2UgPSBgXG5VU0FHRTpcblxuLy8gJHtpbnByaW50X3ByZWZpeH1fU1RBUlQgey4uLmFueV9qc29uX3BhcmFtcy4uLn1cbi8vIEdlbmVyYXRlZCBjb2RlIHdpbGwgZ28gaGVyZVxuLy8gJHtpbnByaW50X3ByZWZpeH1fRU5EXG5gO1xuXG5pbnRlcmZhY2UgSW5wcmludEZpbGVQYXJ0IHtcbiAgICBoZWFkZXI6IHN0cmluZztcbiAgICBwYXJhbXM6IGFueTtcbiAgICBtaWRkbGU6IHN0cmluZztcbiAgICB0YWlsOiBzdHJpbmc7XG4gICAgbmV3TWlkZGxlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCB3cml0ZUZpbGVTeW5jSWZDaGFuZ2VkID0gKGZpbGVOYW1lOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZykgPT4ge1xuICAgIGxldCBjdXJyZW50OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgdHJ5IHtcbiAgICAgICAgY3VycmVudCA9IHJlYWRGaWxlU3luYyhmaWxlTmFtZSwgXCJ1dGYtOFwiKTtcbiAgICB9IGNhdGNoIChlKSB7fVxuXG4gICAgaWYgKGN1cnJlbnQgIT09IGNvbnRlbnQpIHtcbiAgICAgICAgd3JpdGVGaWxlU3luYyhmaWxlTmFtZSwgY29udGVudCwgXCJ1dGYtOFwiKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVGaWxlKGZpbGVQYXRoOiBzdHJpbmcsIG9wdGlvbnM6IElucHJpbnRPcHRpb25zKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY29udGVudFN0ciA9IHJlYWRGaWxlU3luYyhmaWxlUGF0aCwgXCJ1dGYtOFwiKTtcblxuICAgIGlmICghY29udGVudFN0ci5pbmNsdWRlcyhpbnByaW50X3ByZWZpeCkpIHJldHVybiBmYWxzZTtcblxuICAgIGNvbnN0IFtmaWxlSGVhZGVyLCAuLi5wYXJ0czBdID0gY29udGVudFN0ci5zcGxpdChpbnByaW50X3ByZWZpeCk7XG4gICAgY29uc3QgcGFydHM6IElucHJpbnRGaWxlUGFydFtdID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJ0czAubGVuZ3RoOyBpICs9IDIpIHtcbiAgICAgICAgY29uc3QgcyA9IHBhcnRzMFtpXTtcbiAgICAgICAgaWYgKCFzLnN0YXJ0c1dpdGgoc3RhcnRQcmVmaXgpKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBDT0RFMDAwMDAwMDEgSU5QUklOVF9FUlJPUiBObyAke2lucHJpbnRfcHJlZml4fSR7c3RhcnRQcmVmaXh9IGluICR7ZmlsZVBhdGh9YCk7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXBhcnRzMFtpICsgMV0uc3RhcnRzV2l0aChlbmRQcmVmaXgpKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBDT0RFMDAwMDAwMDIgSU5QUklOVF9FUlJPUiBObyAke2lucHJpbnRfcHJlZml4fSR7ZW5kUHJlZml4fSBpbiAke2ZpbGVQYXRofWApO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IFtoZWFkZXIsIC4uLm1pZGRsZVBhcnRzXSA9IHMuc3BsaXQoXCJcXG5cIik7XG4gICAgICAgICAgICBjb25zdCBsYXN0UGFydCA9IG1pZGRsZVBhcnRzLnBvcCgpO1xuXG4gICAgICAgICAgICBjb25zdCBwYXJhbXNTdHIgPSBoZWFkZXIuc3Vic3RyKHN0YXJ0UHJlZml4Lmxlbmd0aCkudHJpbSgpO1xuICAgICAgICAgICAgY29uc3QgbWlkZGxlID0gbWlkZGxlUGFydHMuam9pbihcIlxcblwiKTtcbiAgICAgICAgICAgIGNvbnN0IHRhaWwgPSBsYXN0UGFydCArIGlucHJpbnRfcHJlZml4ICsgcGFydHMwW2kgKyAxXTtcblxuICAgICAgICAgICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG1pZGRsZSxcbiAgICAgICAgICAgICAgICBhYnNvbHV0ZVBhdGg6IGZpbGVQYXRoLFxuICAgICAgICAgICAgICAgIC4uLkpTT041LnBhcnNlKHBhcmFtc1N0ciksXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgcGFydHMucHVzaCh7IGhlYWRlciwgcGFyYW1zLCBtaWRkbGUsIHRhaWwsIG5ld01pZGRsZTogXCJcIiB9KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihgQ09ERTAwMDAwMDAzIElOUFJJTlRfRVJST1IgJHtlLm1lc3NhZ2V9IGluICR7ZmlsZVBhdGh9YCk7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmb3IgKGxldCBwYXJ0IG9mIHBhcnRzKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBwYXJ0Lm5ld01pZGRsZSA9IGRvSW5wcmludChwYXJ0LnBhcmFtcywgb3B0aW9ucyk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHBhcnQubmV3TWlkZGxlID0gYC8vIElOUFJJTlRfRkFJTEVEIGJlY2F1c2Ugb2YgZXhjZXB0aW9uOlxcbiR7ZS5tZXNzYWdlIHx8IFwiTk9fRVJST1JfTUVTU0FHRVwifVxcXFxuJHtcbiAgICAgICAgICAgICAgICBlLnN0YWNrIHx8IFwiTk9fU1RBQ0tfVFJBQ0VcIlxuICAgICAgICAgICAgfWBcbiAgICAgICAgICAgICAgICAuc3BsaXQoXCJcXG5cIilcbiAgICAgICAgICAgICAgICAuam9pbihcIlxcbi8vICAgICBcIik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBuZXdDb250ZW50ID1mb3JtYXRUeXBlc2NyaXB0KFxuICAgICAgICBmaWxlSGVhZGVyICsgaW5wcmludF9wcmVmaXggKyBwYXJ0cy5tYXAoKHApID0+IGAke3AuaGVhZGVyfVxcbiR7cC5uZXdNaWRkbGV9XFxuJHtwLnRhaWx9YCkuam9pbihpbnByaW50X3ByZWZpeCksIG9wdGlvbnMucHJldHRpZXJPcHRzKTtcbiAgICB3cml0ZUZpbGVTeW5jSWZDaGFuZ2VkKGZpbGVQYXRoLCBuZXdDb250ZW50KTtcbiAgICByZXR1cm4gdHJ1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNhbGxFbWJlZGRlZEZlYXR1cmVzKHBhcmFtczogYW55LCBvcHRpb25zOiBJbnByaW50T3B0aW9ucyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgZm9yIChsZXQgZW1iZWRkZWRGZWF0dXJlIG9mIGVtYmVkZGVkRmVhdHVyZXMpIHtcbiAgICAgICAgY29uc3QgciA9IGVtYmVkZGVkRmVhdHVyZS5mdW5jKHBhcmFtcywgb3B0aW9ucyk7XG4gICAgICAgIGlmIChyKSByZXR1cm4gcjtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRvSW5wcmludChwYXJhbXM6IGFueSwgb3B0aW9uczogSW5wcmludE9wdGlvbnMpOiBzdHJpbmcge1xuICAgIGlmIChvcHRpb25zLmVtYmVkZGVkRmVhdHVyZXMgPT09IFwiZmlyc3RcIiB8fCBvcHRpb25zLmVtYmVkZGVkRmVhdHVyZXMgPT09IHRydWUpIHtcbiAgICAgICAgY29uc3QgciA9IGNhbGxFbWJlZGRlZEZlYXR1cmVzKHBhcmFtcywgb3B0aW9ucyk7XG4gICAgICAgIGlmIChyKSByZXR1cm4gcjtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5pbnByaW50KSB7XG4gICAgICAgIGNvbnN0IHIgPSBvcHRpb25zLmlucHJpbnQocGFyYW1zLCBvcHRpb25zKTtcbiAgICAgICAgaWYgKHIpIHJldHVybiByO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmVtYmVkZGVkRmVhdHVyZXMgPT09IFwibGFzdFwiKSB7XG4gICAgICAgIGNvbnN0IHIgPSBjYWxsRW1iZWRkZWRGZWF0dXJlcyhwYXJhbXMsIG9wdGlvbnMpO1xuICAgICAgICBpZiAocikgcmV0dXJuIHI7XG4gICAgfVxuICAgIHJldHVybiBgLy8gSU5QUklOVF9FUlJPUiBOb25lIG9mIGlucHJpbnQgZnVuY3Rpb25zIHJldHVybmVkIGEgcmVzdWx0LiBUaGV5IGFsbCByZXR1cm5lZCB1bmRlZmluZWQhYDtcbn1cblxuLy8gY29uc3QgdGVzdEZpbGVQYXRoID0gYEQ6XFxcXGJcXFxcTWluZVxcXFxHSVRfV29ya1xcXFx5YXRhc2tzX29uZV9hcGlcXFxcc3JjXFxcXGlucHJpbnRUZXN0RmlsZS50c2A7XG4vLyBoYW5kbGVGaWxlKHRlc3RGaWxlUGF0aCk7XG5cbmV4cG9ydCBmdW5jdGlvbiBydW4ob3B0aW9uczA/OiBJbnByaW50T3B0aW9ucyB8IHVuZGVmaW5lZCkge1xuICAgIGlmIChwcm9jZXNzLmFyZ3ZbMl0gPT09IFwiLS12ZXJzaW9uXCIgfHwgcHJvY2Vzcy5hcmd2WzJdID09PSBcIi12XCIpIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBjb25zb2xlLmxvZyhfX1ZFUlNJT05fXyk7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgb3B0aW9uc1BhdGg6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBpZiAocHJvY2Vzcy5hcmd2WzJdKVxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgaWYgKCFvcHRpb25zMCkge1xuICAgICAgICAgICAgICAgIG9wdGlvbnNQYXRoID0gcHJvY2Vzcy5hcmd2WzJdO1xuICAgICAgICAgICAgICAgIG9wdGlvbnMwID0gcmVxdWlyZShvcHRpb25zUGF0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYENPREUwMDAwMDAwNCBJTlBSSU5UIGZhaWxlZCB0byBsb2FkICcke29wdGlvbnNQYXRofScgYmVjYXVzZSBvZiBleGNlcHRpb246YCk7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICAgICAgcHJvY2Vzcy5leGl0KDEpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICB0cnkge1xuICAgICAgICBpZiAoIW9wdGlvbnMwKSB7XG4gICAgICAgICAgICBvcHRpb25zUGF0aCA9IHJlc29sdmUocHJvY2Vzcy5jd2QoKSwgXCJpbnByaW50LmNqc1wiKTtcbiAgICAgICAgICAgIG9wdGlvbnMwID0gcmVxdWlyZShvcHRpb25zUGF0aCk7XG4gICAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGlmIChlLmNvZGUgIT09IFwiTU9EVUxFX05PVF9GT1VORFwiKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBDT0RFMDAwMDAwMDggSU5QUklOVCBmYWlsZWQgdG8gbG9hZCAnJHtvcHRpb25zUGF0aH0nIGJlY2F1c2Ugb2YgZXhjZXB0aW9uOmApO1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICAgIGlmICghb3B0aW9uczApIHtcbiAgICAgICAgICAgIG9wdGlvbnNQYXRoID0gcmVzb2x2ZShwcm9jZXNzLmN3ZCgpLCBcImlucHJpbnQuanNcIik7XG4gICAgICAgICAgICBvcHRpb25zMCA9IHJlcXVpcmUob3B0aW9uc1BhdGgpO1xuICAgICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBpZiAoZS5jb2RlICE9PSBcIk1PRFVMRV9OT1RfRk9VTkRcIikge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihgQ09ERTAwMDAwMDA5IElOUFJJTlQgZmFpbGVkIHRvIGxvYWQgJyR7b3B0aW9uc1BhdGh9JyBiZWNhdXNlIG9mIGV4Y2VwdGlvbjpgKTtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25zOiBJbnByaW50T3B0aW9ucyA9IHsgLi4uZGVmYXVsdElucHJpbnRPcHRpb25zLCAuLi5vcHRpb25zMCB9O1xuICAgIGxldCBwcm9jZXNzZWRDb3VudCA9IDA7XG4gICAgKGFzeW5jICgpID0+IHtcbiAgICAgICAgaWYgKG9wdGlvbnMubG9nZ2luZykgY29uc29sZS5sb2coYENPREUwMDAwMDAwNSBJTlBSSU5UIG9wdGlvbnMgZnJvbSAke29wdGlvbnNQYXRofWApO1xuICAgICAgICBjb25zdCBwYXRocyA9IGF3YWl0IGdsb2JieShvcHRpb25zLmZpbGVzKTtcblxuICAgICAgICBmb3IgKGxldCBmaWxlUGF0aCBvZiBwYXRocykge1xuICAgICAgICAgICAgaWYgKG9wdGlvbnMubG9nZ2luZyA9PT0gXCJmaWxlc1wiKSBjb25zb2xlLmxvZyhgQ09ERTAwMDAwMDA2IElOUFJJTlQgJHtmaWxlUGF0aH1gKTtcbiAgICAgICAgICAgIGlmIChmaWxlUGF0aC5pbmNsdWRlcyhcIm5vZGVfbW9kdWxlc1wiKSAmJiBvcHRpb25zLnNraXBOb2RlTW9kdWxlcykgY29udGludWU7XG4gICAgICAgICAgICBpZiAoaGFuZGxlRmlsZShmaWxlUGF0aCwgb3B0aW9ucykpIHByb2Nlc3NlZENvdW50Kys7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wdGlvbnMubG9nZ2luZylcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgICAgICAgIGBDT0RFMDAwMDAwMDcgSU5QUklOVCBmaW5pc2hlZCwgJHtwYXRocy5sZW5ndGh9IC0gdG90YWwgZmlsZXMsICR7cHJvY2Vzc2VkQ291bnR9IC0gcHJvY2Vzc2VkLCAke1xuICAgICAgICAgICAgICAgICAgICBwYXRocy5sZW5ndGggLSBwcm9jZXNzZWRDb3VudFxuICAgICAgICAgICAgICAgIH0gLSBza2lwcGVkYFxuICAgICAgICAgICAgKTtcbiAgICAgICAgaWYob3B0aW9ucy5mb3JjZVByb2Nlc3NUZXJtaW5hdGlvbilcbiAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgwKTtcbiAgICB9KSgpO1xufVxuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnByaW50LnRzIl0sIm5hbWVzIjpbImlucHJpbnRfcHJlZml4Iiwic3RhcnRQcmVmaXgiLCJlbmRQcmVmaXgiLCJ1c2FnZU5vdGljZSIsIndyaXRlRmlsZVN5bmNJZkNoYW5nZWQiLCJmaWxlTmFtZSIsImNvbnRlbnQiLCJjdXJyZW50IiwiZSIsImhhbmRsZUZpbGUiLCJmaWxlUGF0aCIsIm9wdGlvbnMiLCJjb250ZW50U3RyIiwiaW5jbHVkZXMiLCJmaWxlSGVhZGVyIiwicGFydHMwIiwic3BsaXQiLCJwYXJ0cyIsImkiLCJsZW5ndGgiLCJzIiwic3RhcnRzV2l0aCIsImNvbnNvbGUiLCJlcnJvciIsImhlYWRlciIsIm1pZGRsZVBhcnRzIiwibGFzdFBhcnQiLCJwb3AiLCJwYXJhbXNTdHIiLCJzdWJzdHIiLCJ0cmltIiwibWlkZGxlIiwiam9pbiIsInRhaWwiLCJwYXJhbXMiLCJhYnNvbHV0ZVBhdGgiLCJKU09ONSIsInBhcnNlIiwicHVzaCIsIm5ld01pZGRsZSIsIm1lc3NhZ2UiLCJwYXJ0IiwiZG9JbnByaW50Iiwic3RhY2siLCJuZXdDb250ZW50IiwibWFwIiwicCIsInByZXR0aWVyT3B0cyIsImNhbGxFbWJlZGRlZEZlYXR1cmVzIiwiZW1iZWRkZWRGZWF0dXJlIiwiZW1iZWRkZWRGZWF0dXJlcyIsInIiLCJmdW5jIiwidW5kZWZpbmVkIiwiaW5wcmludCIsInJ1biIsIm9wdGlvbnMwIiwicHJvY2VzcyIsImFyZ3YiLCJsb2ciLCJvcHRpb25zUGF0aCIsInJlcXVpcmUiLCJleGl0IiwiY3dkIiwiY29kZSIsImRlZmF1bHRJbnByaW50T3B0aW9ucyIsInByb2Nlc3NlZENvdW50IiwibG9nZ2luZyIsInBhdGhzIiwiZmlsZXMiLCJza2lwTm9kZU1vZHVsZXMiLCJmb3JjZVByb2Nlc3NUZXJtaW5hdGlvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7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QUFJdkQsT0FBTyxDQUFDd0QsT0FBWixFQUNJN0MsT0FBTyxDQUFDcUMsR0FBUixDQUNLLGtDQUFpQ1MsS0FBSyxDQUFDakQsTUFBTyxtQkFBa0IrQyxjQUFlLGlCQUM1RUUsS0FBSyxDQUFDakQsTUFBTixHQUFlK0MsY0FDbEIsWUFITDtBQUtKLFFBQUd2RCxPQUFPLENBQUM0RCx1QkFBWCxFQUNJZCxPQUFPLENBQUNLLElBQVIsQ0FBYSxDQUFiO0FBQ1AsR0FqQkQ7QUFrQkgiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgSlNPTjUgZnJvbSBcImpzb241XCI7XG5pbXBvcnQgZ2xvYmJ5IGZyb20gXCJnbG9iYnlcIjtcbmltcG9ydCB7IHJlYWRGaWxlU3luYywgd3JpdGVGaWxlU3luYyB9IGZyb20gXCJmc1wiO1xuaW1wb3J0IHsgcmVzb2x2ZSB9IGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBlbWJlZGRlZEZlYXR1cmVzIH0gZnJvbSBcIi4vZW1iZWRkZWRGZWF0dXJlc1wiO1xuaW1wb3J0IHsgZGVmYXVsdElucHJpbnRPcHRpb25zLCBJbnByaW50T3B0aW9ucyB9IGZyb20gXCIuL0lucHJpbnRPcHRpb25zXCI7XG5pbXBvcnQgeyBmb3JtYXRUeXBlc2NyaXB0IH0gZnJvbSBcIi4vZm9ybWF0VHlwZXNjcmlwdFwiO1xuXG5leHBvcnQgY29uc3QgaW5wcmludF9wcmVmaXggPSBcIkBcIiArIFwiSU5QUklOVFwiO1xuZXhwb3J0IGNvbnN0IHN0YXJ0UHJlZml4ID0gXCJfU1RBUlRcIjtcbmV4cG9ydCBjb25zdCBlbmRQcmVmaXggPSBcIl9FTkRcIjtcbmV4cG9ydCBjb25zdCB1c2FnZU5vdGljZSA9IGBcblVTQUdFOlxuXG4vLyAke2lucHJpbnRfcHJlZml4fV9TVEFSVCB7Li4uYW55X2pzb25fcGFyYW1zLi4ufVxuLy8gR2VuZXJhdGVkIGNvZGUgd2lsbCBnbyBoZXJlXG4vLyAke2lucHJpbnRfcHJlZml4fV9FTkRcbmA7XG5cbmludGVyZmFjZSBJbnByaW50RmlsZVBhcnQge1xuICAgIGhlYWRlcjogc3RyaW5nO1xuICAgIHBhcmFtczogYW55O1xuICAgIG1pZGRsZTogc3RyaW5nO1xuICAgIHRhaWw6IHN0cmluZztcbiAgICBuZXdNaWRkbGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IHdyaXRlRmlsZVN5bmNJZkNoYW5nZWQgPSAoZmlsZU5hbWU6IHN0cmluZywgY29udGVudDogc3RyaW5nKSA9PiB7XG4gICAgbGV0IGN1cnJlbnQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICB0cnkge1xuICAgICAgICBjdXJyZW50ID0gcmVhZEZpbGVTeW5jKGZpbGVOYW1lLCBcInV0Zi04XCIpO1xuICAgIH0gY2F0Y2ggKGUpIHt9XG5cbiAgICBpZiAoY3VycmVudCAhPT0gY29udGVudCkge1xuICAgICAgICB3cml0ZUZpbGVTeW5jKGZpbGVOYW1lLCBjb250ZW50LCBcInV0Zi04XCIpO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZUZpbGUoZmlsZVBhdGg6IHN0cmluZywgb3B0aW9uczogSW5wcmludE9wdGlvbnMpOiBib29sZWFuIHtcbiAgICBjb25zdCBjb250ZW50U3RyID0gcmVhZEZpbGVTeW5jKGZpbGVQYXRoLCBcInV0Zi04XCIpO1xuXG4gICAgaWYgKCFjb250ZW50U3RyLmluY2x1ZGVzKGlucHJpbnRfcHJlZml4KSkgcmV0dXJuIGZhbHNlO1xuXG4gICAgY29uc3QgW2ZpbGVIZWFkZXIsIC4uLnBhcnRzMF0gPSBjb250ZW50U3RyLnNwbGl0KGlucHJpbnRfcHJlZml4KTtcbiAgICBjb25zdCBwYXJ0czogSW5wcmludEZpbGVQYXJ0W10gPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhcnRzMC5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgICBjb25zdCBzID0gcGFydHMwW2ldO1xuICAgICAgICBpZiAoIXMuc3RhcnRzV2l0aChzdGFydFByZWZpeCkpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYENPREUwMDAwMDAwMSBJTlBSSU5UX0VSUk9SIE5vICR7aW5wcmludF9wcmVmaXh9JHtzdGFydFByZWZpeH0gaW4gJHtmaWxlUGF0aH1gKTtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghcGFydHMwW2kgKyAxXS5zdGFydHNXaXRoKGVuZFByZWZpeCkpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYENPREUwMDAwMDAwMiBJTlBSSU5UX0VSUk9SIE5vICR7aW5wcmludF9wcmVmaXh9JHtlbmRQcmVmaXh9IGluICR7ZmlsZVBhdGh9YCk7XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgW2hlYWRlciwgLi4ubWlkZGxlUGFydHNdID0gcy5zcGxpdChcIlxcblwiKTtcbiAgICAgICAgICAgIGNvbnN0IGxhc3RQYXJ0ID0gbWlkZGxlUGFydHMucG9wKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IHBhcmFtc1N0ciA9IGhlYWRlci5zdWJzdHIoc3RhcnRQcmVmaXgubGVuZ3RoKS50cmltKCk7XG4gICAgICAgICAgICBjb25zdCBtaWRkbGUgPSBtaWRkbGVQYXJ0cy5qb2luKFwiXFxuXCIpO1xuICAgICAgICAgICAgY29uc3QgdGFpbCA9IGxhc3RQYXJ0ICsgaW5wcmludF9wcmVmaXggKyBwYXJ0czBbaSArIDFdO1xuXG4gICAgICAgICAgICBjb25zdCBwYXJhbXMgPSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbWlkZGxlLFxuICAgICAgICAgICAgICAgIGFic29sdXRlUGF0aDogZmlsZVBhdGgsXG4gICAgICAgICAgICAgICAgLi4uSlNPTjUucGFyc2UocGFyYW1zU3RyKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBwYXJ0cy5wdXNoKHsgaGVhZGVyLCBwYXJhbXMsIG1pZGRsZSwgdGFpbCwgbmV3TWlkZGxlOiBcIlwiIH0pO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBDT0RFMDAwMDAwMDMgSU5QUklOVF9FUlJPUiAke2UubWVzc2FnZX0gaW4gJHtmaWxlUGF0aH1gKTtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZvciAobGV0IHBhcnQgb2YgcGFydHMpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHBhcnQubmV3TWlkZGxlID0gZG9JbnByaW50KHBhcnQucGFyYW1zLCBvcHRpb25zKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgcGFydC5uZXdNaWRkbGUgPSBgLy8gSU5QUklOVF9GQUlMRUQgYmVjYXVzZSBvZiBleGNlcHRpb246XFxuJHtlLm1lc3NhZ2UgfHwgXCJOT19FUlJPUl9NRVNTQUdFXCJ9XFxcXG4ke1xuICAgICAgICAgICAgICAgIGUuc3RhY2sgfHwgXCJOT19TVEFDS19UUkFDRVwiXG4gICAgICAgICAgICB9YFxuICAgICAgICAgICAgICAgIC5zcGxpdChcIlxcblwiKVxuICAgICAgICAgICAgICAgIC5qb2luKFwiXFxuLy8gICAgIFwiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IG5ld0NvbnRlbnQgPWZvcm1hdFR5cGVzY3JpcHQoXG4gICAgICAgIGZpbGVIZWFkZXIgKyBpbnByaW50X3ByZWZpeCArIHBhcnRzLm1hcCgocCkgPT4gYCR7cC5oZWFkZXJ9XFxuJHtwLm5ld01pZGRsZX1cXG4ke3AudGFpbH1gKS5qb2luKGlucHJpbnRfcHJlZml4KSwgb3B0aW9ucy5wcmV0dGllck9wdHMpO1xuICAgIHdyaXRlRmlsZVN5bmNJZkNoYW5nZWQoZmlsZVBhdGgsIG5ld0NvbnRlbnQpO1xuICAgIHJldHVybiB0cnVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2FsbEVtYmVkZGVkRmVhdHVyZXMocGFyYW1zOiBhbnksIG9wdGlvbnM6IElucHJpbnRPcHRpb25zKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBmb3IgKGxldCBlbWJlZGRlZEZlYXR1cmUgb2YgZW1iZWRkZWRGZWF0dXJlcykge1xuICAgICAgICBjb25zdCByID0gZW1iZWRkZWRGZWF0dXJlLmZ1bmMocGFyYW1zLCBvcHRpb25zKTtcbiAgICAgICAgaWYgKHIpIHJldHVybiByO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZG9JbnByaW50KHBhcmFtczogYW55LCBvcHRpb25zOiBJbnByaW50T3B0aW9ucyk6IHN0cmluZyB7XG4gICAgaWYgKG9wdGlvbnMuZW1iZWRkZWRGZWF0dXJlcyA9PT0gXCJmaXJzdFwiIHx8IG9wdGlvbnMuZW1iZWRkZWRGZWF0dXJlcyA9PT0gdHJ1ZSkge1xuICAgICAgICBjb25zdCByID0gY2FsbEVtYmVkZGVkRmVhdHVyZXMocGFyYW1zLCBvcHRpb25zKTtcbiAgICAgICAgaWYgKHIpIHJldHVybiByO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmlucHJpbnQpIHtcbiAgICAgICAgY29uc3QgciA9IG9wdGlvbnMuaW5wcmludChwYXJhbXMsIG9wdGlvbnMpO1xuICAgICAgICBpZiAocikgcmV0dXJuIHI7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuZW1iZWRkZWRGZWF0dXJlcyA9PT0gXCJsYXN0XCIpIHtcbiAgICAgICAgY29uc3QgciA9IGNhbGxFbWJlZGRlZEZlYXR1cmVzKHBhcmFtcywgb3B0aW9ucyk7XG4gICAgICAgIGlmIChyKSByZXR1cm4gcjtcbiAgICB9XG4gICAgcmV0dXJuIGAvLyBJTlBSSU5UX0VSUk9SIE5vbmUgb2YgaW5wcmludCBmdW5jdGlvbnMgcmV0dXJuZWQgYSByZXN1bHQuIFRoZXkgYWxsIHJldHVybmVkIHVuZGVmaW5lZCFgO1xufVxuXG4vLyBjb25zdCB0ZXN0RmlsZVBhdGggPSBgRDpcXFxcYlxcXFxNaW5lXFxcXEdJVF9Xb3JrXFxcXHlhdGFza3Nfb25lX2FwaVxcXFxzcmNcXFxcaW5wcmludFRlc3RGaWxlLnRzYDtcbi8vIGhhbmRsZUZpbGUodGVzdEZpbGVQYXRoKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJ1bihvcHRpb25zMD86IElucHJpbnRPcHRpb25zIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKHByb2Nlc3MuYXJndlsyXSA9PT0gXCItLXZlcnNpb25cIiB8fCBwcm9jZXNzLmFyZ3ZbMl0gPT09IFwiLXZcIikge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGNvbnNvbGUubG9nKF9fVkVSU0lPTl9fKTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBvcHRpb25zUGF0aDogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlmIChwcm9jZXNzLmFyZ3ZbMl0pXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBpZiAoIW9wdGlvbnMwKSB7XG4gICAgICAgICAgICAgICAgb3B0aW9uc1BhdGggPSBwcm9jZXNzLmFyZ3ZbMl07XG4gICAgICAgICAgICAgICAgb3B0aW9uczAgPSByZXF1aXJlKG9wdGlvbnNQYXRoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihgQ09ERTAwMDAwMDA0IElOUFJJTlQgZmFpbGVkIHRvIGxvYWQgJyR7b3B0aW9uc1BhdGh9JyBiZWNhdXNlIG9mIGV4Y2VwdGlvbjpgKTtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgIHRyeSB7XG4gICAgICAgIGlmICghb3B0aW9uczApIHtcbiAgICAgICAgICAgIG9wdGlvbnNQYXRoID0gcmVzb2x2ZShwcm9jZXNzLmN3ZCgpLCBcImlucHJpbnQuY2pzXCIpO1xuICAgICAgICAgICAgb3B0aW9uczAgPSByZXF1aXJlKG9wdGlvbnNQYXRoKTtcbiAgICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgaWYgKGUuY29kZSAhPT0gXCJNT0RVTEVfTk9UX0ZPVU5EXCIgfHwgZS5tZXNzYWdlLnNwbGl0KFwiJ1wiKVsxXSAhPT0gb3B0aW9uc1BhdGgpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYENPREUwMDAwMDAwOCBJTlBSSU5UIGZhaWxlZCB0byBsb2FkICcke29wdGlvbnNQYXRofScgYmVjYXVzZSBvZiBleGNlcHRpb246YCk7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICAgICAgcHJvY2Vzcy5leGl0KDEpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKCFvcHRpb25zMCkge1xuICAgICAgICAgICAgb3B0aW9uc1BhdGggPSByZXNvbHZlKHByb2Nlc3MuY3dkKCksIFwiaW5wcmludC5qc1wiKTtcbiAgICAgICAgICAgIG9wdGlvbnMwID0gcmVxdWlyZShvcHRpb25zUGF0aCk7XG4gICAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGlmIChlLmNvZGUgIT09IFwiTU9EVUxFX05PVF9GT1VORFwiIHx8IGUubWVzc2FnZS5zcGxpdChcIidcIilbMV0gIT09IG9wdGlvbnNQYXRoKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBDT0RFMDAwMDAwMDkgSU5QUklOVCBmYWlsZWQgdG8gbG9hZCAnJHtvcHRpb25zUGF0aH0nIGJlY2F1c2Ugb2YgZXhjZXB0aW9uOmApO1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlmICghb3B0aW9uczApXG4gICAgICAgIG9wdGlvbnNQYXRoID0gXCI8ZGVmYXVsdCBvcHRpb25zPlwiO1xuXG4gICAgY29uc3Qgb3B0aW9uczogSW5wcmludE9wdGlvbnMgPSB7IC4uLmRlZmF1bHRJbnByaW50T3B0aW9ucywgLi4ub3B0aW9uczAgfTtcbiAgICBsZXQgcHJvY2Vzc2VkQ291bnQgPSAwO1xuICAgIChhc3luYyAoKSA9PiB7XG4gICAgICAgIGlmIChvcHRpb25zLmxvZ2dpbmcpIGNvbnNvbGUubG9nKGBDT0RFMDAwMDAwMDUgSU5QUklOVCBvcHRpb25zIGZyb20gJHtvcHRpb25zUGF0aH1gKTtcbiAgICAgICAgY29uc3QgcGF0aHMgPSBhd2FpdCBnbG9iYnkob3B0aW9ucy5maWxlcyk7XG5cbiAgICAgICAgZm9yIChsZXQgZmlsZVBhdGggb2YgcGF0aHMpIHtcbiAgICAgICAgICAgIGlmIChvcHRpb25zLmxvZ2dpbmcgPT09IFwiZmlsZXNcIikgY29uc29sZS5sb2coYENPREUwMDAwMDAwNiBJTlBSSU5UICR7ZmlsZVBhdGh9YCk7XG4gICAgICAgICAgICBpZiAoZmlsZVBhdGguaW5jbHVkZXMoXCJub2RlX21vZHVsZXNcIikgJiYgb3B0aW9ucy5za2lwTm9kZU1vZHVsZXMpIGNvbnRpbnVlO1xuICAgICAgICAgICAgaWYgKGhhbmRsZUZpbGUoZmlsZVBhdGgsIG9wdGlvbnMpKSBwcm9jZXNzZWRDb3VudCsrO1xuICAgICAgICB9XG4gICAgICAgIGlmIChvcHRpb25zLmxvZ2dpbmcpXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAgICAgICBgQ09ERTAwMDAwMDA3IElOUFJJTlQgZmluaXNoZWQsICR7cGF0aHMubGVuZ3RofSAtIHRvdGFsIGZpbGVzLCAke3Byb2Nlc3NlZENvdW50fSAtIHByb2Nlc3NlZCwgJHtcbiAgICAgICAgICAgICAgICAgICAgcGF0aHMubGVuZ3RoIC0gcHJvY2Vzc2VkQ291bnRcbiAgICAgICAgICAgICAgICB9IC0gc2tpcHBlZGBcbiAgICAgICAgICAgICk7XG4gICAgICAgIGlmKG9wdGlvbnMuZm9yY2VQcm9jZXNzVGVybWluYXRpb24pXG4gICAgICAgICAgICBwcm9jZXNzLmV4aXQoMCk7XG4gICAgfSkoKTtcbn1cbiJdfQ==

2

package.json
{
"name": "inprint",
"version": "1.1.2",
"version": "1.1.3",
"private": false,

@@ -5,0 +5,0 @@ "description": "A very simple precompiler written in typescript. With it you can make a dynamically generated blocks in your code.",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc