Socket
Socket
Sign inDemoInstall

@amplication/plugin-db-mongo

Package Overview
Dependencies
0
Maintainers
8
Versions
73
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.4.14 to 1.4.15-beta.pr-354.1e83d71

1062

dist/index.js

@@ -1,1061 +0,1 @@

/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/ var __webpack_modules__ = ({
/***/ 78:
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ camelCase: () => (/* binding */ camelCase),
/* harmony export */ camelCaseTransform: () => (/* binding */ camelCaseTransform),
/* harmony export */ camelCaseTransformMerge: () => (/* binding */ camelCaseTransformMerge)
/* harmony export */ });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(608);
/* harmony import */ var pascal_case__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(697);
function camelCaseTransform(input, index) {
if (index === 0)
return input.toLowerCase();
return (0,pascal_case__WEBPACK_IMPORTED_MODULE_0__.pascalCaseTransform)(input, index);
}
function camelCaseTransformMerge(input, index) {
if (index === 0)
return input.toLowerCase();
return (0,pascal_case__WEBPACK_IMPORTED_MODULE_0__.pascalCaseTransformMerge)(input);
}
function camelCase(input, options) {
if (options === void 0) { options = {}; }
return (0,pascal_case__WEBPACK_IMPORTED_MODULE_0__.pascalCase)(input, (0,tslib__WEBPACK_IMPORTED_MODULE_1__.__assign)({ transform: camelCaseTransform }, options));
}
//# sourceMappingURL=index.js.map
/***/ }),
/***/ 697:
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
pascalCase: () => (/* binding */ pascalCase),
pascalCaseTransform: () => (/* binding */ pascalCaseTransform),
pascalCaseTransformMerge: () => (/* binding */ pascalCaseTransformMerge)
});
// EXTERNAL MODULE: ../../node_modules/tslib/tslib.es6.mjs
var tslib_es6 = __webpack_require__(608);
;// CONCATENATED MODULE: ../../node_modules/lower-case/dist.es2015/index.js
/**
* Source: ftp://ftp.unicode.org/Public/UCD/latest/ucd/SpecialCasing.txt
*/
var SUPPORTED_LOCALE = {
tr: {
regexp: /\u0130|\u0049|\u0049\u0307/g,
map: {
İ: "\u0069",
I: "\u0131",
İ: "\u0069",
},
},
az: {
regexp: /\u0130/g,
map: {
İ: "\u0069",
I: "\u0131",
İ: "\u0069",
},
},
lt: {
regexp: /\u0049|\u004A|\u012E|\u00CC|\u00CD|\u0128/g,
map: {
I: "\u0069\u0307",
J: "\u006A\u0307",
Į: "\u012F\u0307",
Ì: "\u0069\u0307\u0300",
Í: "\u0069\u0307\u0301",
Ĩ: "\u0069\u0307\u0303",
},
},
};
/**
* Localized lower case.
*/
function localeLowerCase(str, locale) {
var lang = SUPPORTED_LOCALE[locale.toLowerCase()];
if (lang)
return lowerCase(str.replace(lang.regexp, function (m) { return lang.map[m]; }));
return lowerCase(str);
}
/**
* Lower case as a function.
*/
function lowerCase(str) {
return str.toLowerCase();
}
//# sourceMappingURL=index.js.map
;// CONCATENATED MODULE: ../../node_modules/no-case/dist.es2015/index.js
// Support camel case ("camelCase" -> "camel Case" and "CAMELCase" -> "CAMEL Case").
var DEFAULT_SPLIT_REGEXP = [/([a-z0-9])([A-Z])/g, /([A-Z])([A-Z][a-z])/g];
// Remove all non-word characters.
var DEFAULT_STRIP_REGEXP = /[^A-Z0-9]+/gi;
/**
* Normalize the string into something other libraries can manipulate easier.
*/
function noCase(input, options) {
if (options === void 0) { options = {}; }
var _a = options.splitRegexp, splitRegexp = _a === void 0 ? DEFAULT_SPLIT_REGEXP : _a, _b = options.stripRegexp, stripRegexp = _b === void 0 ? DEFAULT_STRIP_REGEXP : _b, _c = options.transform, transform = _c === void 0 ? lowerCase : _c, _d = options.delimiter, delimiter = _d === void 0 ? " " : _d;
var result = replace(replace(input, splitRegexp, "$1\0$2"), stripRegexp, "\0");
var start = 0;
var end = result.length;
// Trim the delimiter from around the output string.
while (result.charAt(start) === "\0")
start++;
while (result.charAt(end - 1) === "\0")
end--;
// Transform each token independently.
return result.slice(start, end).split("\0").map(transform).join(delimiter);
}
/**
* Replace `re` in the input string with the replacement value.
*/
function replace(input, re, value) {
if (re instanceof RegExp)
return input.replace(re, value);
return re.reduce(function (input, re) { return input.replace(re, value); }, input);
}
//# sourceMappingURL=index.js.map
;// CONCATENATED MODULE: ../../node_modules/pascal-case/dist.es2015/index.js
function pascalCaseTransform(input, index) {
var firstChar = input.charAt(0);
var lowerChars = input.substr(1).toLowerCase();
if (index > 0 && firstChar >= "0" && firstChar <= "9") {
return "_" + firstChar + lowerChars;
}
return "" + firstChar.toUpperCase() + lowerChars;
}
function pascalCaseTransformMerge(input) {
return input.charAt(0).toUpperCase() + input.slice(1).toLowerCase();
}
function pascalCase(input, options) {
if (options === void 0) { options = {}; }
return noCase(input, (0,tslib_es6.__assign)({ delimiter: "", transform: pascalCaseTransform }, options));
}
//# sourceMappingURL=index.js.map
/***/ }),
/***/ 869:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
exports.__esModule = true;
__exportStar(__webpack_require__(220), exports);
//# sourceMappingURL=index.js.map
/***/ }),
/***/ 220:
/***/ ((__unused_webpack_module, exports) => {
exports.__esModule = true;
exports.FieldKind = exports.isCallExpression = exports.DB_GENERATED = exports.UUID = exports.CUID = exports.NOW = exports.AUTO_INCREMENT = exports.ReferentialActions = exports.ScalarType = exports.isDataSourceURLEnv = exports.DataSourceProvider = void 0;
var DataSourceProvider;
(function (DataSourceProvider) {
DataSourceProvider["PostgreSQL"] = "postgresql";
DataSourceProvider["MySQL"] = "mysql";
DataSourceProvider["SQLite"] = "sqlite";
DataSourceProvider["MongoDB"] = "mongodb";
DataSourceProvider["MSSQLServer"] = "sqlserver";
})(DataSourceProvider = exports.DataSourceProvider || (exports.DataSourceProvider = {}));
function isDataSourceURLEnv(url) {
return url.name !== undefined;
}
exports.isDataSourceURLEnv = isDataSourceURLEnv;
var ScalarType;
(function (ScalarType) {
ScalarType["String"] = "String";
ScalarType["Boolean"] = "Boolean";
ScalarType["Int"] = "Int";
ScalarType["BigInt"] = "BigInt";
ScalarType["Float"] = "Float";
ScalarType["Decimal"] = "Decimal";
ScalarType["DateTime"] = "DateTime";
ScalarType["Json"] = "Json";
})(ScalarType = exports.ScalarType || (exports.ScalarType = {}));
var ReferentialActions;
(function (ReferentialActions) {
ReferentialActions["NONE"] = "NONE";
ReferentialActions["Cascade"] = "Cascade";
ReferentialActions["Restrict"] = "Restrict";
ReferentialActions["NoAction"] = "NoAction";
ReferentialActions["SetNull"] = "SetNull";
ReferentialActions["SetDefault"] = "SetDefault";
})(ReferentialActions = exports.ReferentialActions || (exports.ReferentialActions = {}));
exports.AUTO_INCREMENT = "autoincrement";
exports.NOW = "now";
exports.CUID = "cuid";
exports.UUID = "uuid";
exports.DB_GENERATED = "dbgenerated";
function isCallExpression(object) {
return object.callee !== undefined;
}
exports.isCallExpression = isCallExpression;
var FieldKind;
(function (FieldKind) {
FieldKind["Scalar"] = "scalar";
FieldKind["Object"] = "object";
})(FieldKind = exports.FieldKind || (exports.FieldKind = {}));
//# sourceMappingURL=types.js.map
/***/ }),
/***/ 466:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.dataSource = exports.updateDockerComposeDevProperties = exports.updateDockerComposeProperties = void 0;
const prisma_schema_dsl_types_1 = __webpack_require__(869);
const mongodbVolumeName = "mongo";
exports.updateDockerComposeProperties = [
{
services: {
server: {
environment: {
DB_URL: "mongodb://${DB_USER}:${DB_PASSWORD}@db:27017/${DB_NAME}?authSource=admin",
},
depends_on: ["migrate"],
},
migrate: {
environment: {
DB_URL: "mongodb://${DB_USER}:${DB_PASSWORD}@db:27017/${DB_NAME}?authSource=admin",
},
depends_on: {
db: {
condition: "service_healthy",
},
},
},
db: {
image: "mongo",
ports: ["${DB_PORT}:27017"],
environment: {
MONGO_INITDB_ROOT_USERNAME: "${DB_USER}",
MONGO_INITDB_ROOT_PASSWORD: "${DB_PASSWORD}",
MONGO_INITDB_DATABASE: "${DB_NAME}",
MONGO_REPLICA_SET_NAME: "rs0",
},
restart: "always",
entrypoint: [
"/bin/bash",
"-c",
"openssl rand -base64 741 > /data/cert.crt; chmod 400 /data/cert.crt && chown 999 /data/cert.crt; /usr/local/bin/docker-entrypoint.sh mongod --bind_ip_all --keyFile /data/cert.crt --replSet rs0",
],
healthcheck: {
test: "test $$(mongosh --quiet -u $${MONGO_INITDB_ROOT_USERNAME} -p $${MONGO_INITDB_ROOT_PASSWORD} --eval \"try { rs.initiate({ _id: 'rs0',members: [{ _id: 0, host: 'db' }] }).ok } catch (_) { rs.status().ok}\") -eq 1",
start_period: "5s",
interval: "10s",
timeout: "10s",
},
volumes: [`${mongodbVolumeName}:/var/lib/mongosql/data`],
},
},
volumes: {
[mongodbVolumeName]: null,
},
},
];
exports.updateDockerComposeDevProperties = [
{
services: {
db: {
image: "mongo",
ports: ["${DB_PORT}:27017"],
environment: {
MONGO_INITDB_ROOT_USERNAME: "${DB_USER}",
MONGO_INITDB_ROOT_PASSWORD: "${DB_PASSWORD}",
MONGO_INITDB_DATABASE: "${DB_NAME}",
MONGO_REPLICA_SET_NAME: "rs0",
},
restart: "always",
entrypoint: [
"/bin/bash",
"-c",
"openssl rand -base64 741 > /data/cert.crt; chmod 400 /data/cert.crt && chown 999 /data/cert.crt; /usr/local/bin/docker-entrypoint.sh mongod --bind_ip_all --keyFile /data/cert.crt --replSet rs0",
],
healthcheck: {
test: 'test $$(mongosh --quiet -u $${MONGO_INITDB_ROOT_USERNAME} -p $${MONGO_INITDB_ROOT_PASSWORD} --eval "try { rs.initiate({ _id: \'"rs0"\',members: [{ _id: 0, host: \'"localhost"\' }] }).ok } catch (_) { rs.status().ok}") -eq 1',
start_period: "5s",
interval: "10s",
timeout: "10s",
},
volumes: [`${mongodbVolumeName}:/var/lib/mongosql/data`],
},
},
volumes: {
[mongodbVolumeName]: null,
},
},
];
const DATASOURCE_NAME = "db";
const URL_NAME = "DB_URL";
exports.dataSource = {
name: DATASOURCE_NAME,
provider: prisma_schema_dsl_types_1.DataSourceProvider.MongoDB,
url: {
name: URL_NAME,
},
};
/***/ }),
/***/ 622:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.getPluginSettings = void 0;
const tslib_1 = __webpack_require__(608);
const package_json_1 = __webpack_require__(330);
const _amplicationrc_json_1 = tslib_1.__importDefault(__webpack_require__(944));
const getPluginSettings = (pluginInstallations) => {
const plugin = pluginInstallations.find((plugin) => plugin.npm === package_json_1.name);
const userSettings = plugin?.settings ?? {};
const settings = {
..._amplicationrc_json_1.default.settings,
...userSettings,
};
return settings;
};
exports.getPluginSettings = getPluginSettings;
/***/ }),
/***/ 288:
/***/ ((module) => {
module.exports = require("@amplication/code-gen-types");
/***/ }),
/***/ 532:
/***/ ((module) => {
module.exports = require("prisma-schema-dsl");
/***/ }),
/***/ 928:
/***/ ((module) => {
module.exports = require("path");
/***/ }),
/***/ 608:
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ __addDisposableResource: () => (/* binding */ __addDisposableResource),
/* harmony export */ __assign: () => (/* binding */ __assign),
/* harmony export */ __asyncDelegator: () => (/* binding */ __asyncDelegator),
/* harmony export */ __asyncGenerator: () => (/* binding */ __asyncGenerator),
/* harmony export */ __asyncValues: () => (/* binding */ __asyncValues),
/* harmony export */ __await: () => (/* binding */ __await),
/* harmony export */ __awaiter: () => (/* binding */ __awaiter),
/* harmony export */ __classPrivateFieldGet: () => (/* binding */ __classPrivateFieldGet),
/* harmony export */ __classPrivateFieldIn: () => (/* binding */ __classPrivateFieldIn),
/* harmony export */ __classPrivateFieldSet: () => (/* binding */ __classPrivateFieldSet),
/* harmony export */ __createBinding: () => (/* binding */ __createBinding),
/* harmony export */ __decorate: () => (/* binding */ __decorate),
/* harmony export */ __disposeResources: () => (/* binding */ __disposeResources),
/* harmony export */ __esDecorate: () => (/* binding */ __esDecorate),
/* harmony export */ __exportStar: () => (/* binding */ __exportStar),
/* harmony export */ __extends: () => (/* binding */ __extends),
/* harmony export */ __generator: () => (/* binding */ __generator),
/* harmony export */ __importDefault: () => (/* binding */ __importDefault),
/* harmony export */ __importStar: () => (/* binding */ __importStar),
/* harmony export */ __makeTemplateObject: () => (/* binding */ __makeTemplateObject),
/* harmony export */ __metadata: () => (/* binding */ __metadata),
/* harmony export */ __param: () => (/* binding */ __param),
/* harmony export */ __propKey: () => (/* binding */ __propKey),
/* harmony export */ __read: () => (/* binding */ __read),
/* harmony export */ __rest: () => (/* binding */ __rest),
/* harmony export */ __runInitializers: () => (/* binding */ __runInitializers),
/* harmony export */ __setFunctionName: () => (/* binding */ __setFunctionName),
/* harmony export */ __spread: () => (/* binding */ __spread),
/* harmony export */ __spreadArray: () => (/* binding */ __spreadArray),
/* harmony export */ __spreadArrays: () => (/* binding */ __spreadArrays),
/* harmony export */ __values: () => (/* binding */ __values),
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/******************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
/* global Reflect, Promise, SuppressedError, Symbol */
var extendStatics = function(d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
function __extends(d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}
var __assign = function() {
__assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
}
return t;
}
return __assign.apply(this, arguments);
}
function __rest(s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
}
function __decorate(decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
}
function __param(paramIndex, decorator) {
return function (target, key) { decorator(target, key, paramIndex); }
}
function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
var _, done = false;
for (var i = decorators.length - 1; i >= 0; i--) {
var context = {};
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
if (kind === "accessor") {
if (result === void 0) continue;
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
if (_ = accept(result.get)) descriptor.get = _;
if (_ = accept(result.set)) descriptor.set = _;
if (_ = accept(result.init)) initializers.unshift(_);
}
else if (_ = accept(result)) {
if (kind === "field") initializers.unshift(_);
else descriptor[key] = _;
}
}
if (target) Object.defineProperty(target, contextIn.name, descriptor);
done = true;
};
function __runInitializers(thisArg, initializers, value) {
var useValue = arguments.length > 2;
for (var i = 0; i < initializers.length; i++) {
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
}
return useValue ? value : void 0;
};
function __propKey(x) {
return typeof x === "symbol" ? x : "".concat(x);
};
function __setFunctionName(f, name, prefix) {
if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
};
function __metadata(metadataKey, metadataValue) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
}
function __awaiter(thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
}
function __generator(thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (g && (g = 0, op[0] && (_ = 0)), _) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
}
var __createBinding = Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
});
function __exportStar(m, o) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
}
function __values(o) {
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
if (m) return m.call(o);
if (o && typeof o.length === "number") return {
next: function () {
if (o && i >= o.length) o = void 0;
return { value: o && o[i++], done: !o };
}
};
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
}
function __read(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
}
/** @deprecated */
function __spread() {
for (var ar = [], i = 0; i < arguments.length; i++)
ar = ar.concat(__read(arguments[i]));
return ar;
}
/** @deprecated */
function __spreadArrays() {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
}
function __spreadArray(to, from, pack) {
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
if (ar || !(i in from)) {
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
ar[i] = from[i];
}
}
return to.concat(ar || Array.prototype.slice.call(from));
}
function __await(v) {
return this instanceof __await ? (this.v = v, this) : new __await(v);
}
function __asyncGenerator(thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
}
function __asyncDelegator(o) {
var i, p;
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }
}
function __asyncValues(o) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator], i;
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
}
function __makeTemplateObject(cooked, raw) {
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
return cooked;
};
var __setModuleDefault = Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
};
function __importStar(mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
}
function __importDefault(mod) {
return (mod && mod.__esModule) ? mod : { default: mod };
}
function __classPrivateFieldGet(receiver, state, kind, f) {
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
}
function __classPrivateFieldSet(receiver, state, value, kind, f) {
if (kind === "m") throw new TypeError("Private method is not writable");
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
}
function __classPrivateFieldIn(state, receiver) {
if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object");
return typeof state === "function" ? receiver === state : state.has(receiver);
}
function __addDisposableResource(env, value, async) {
if (value !== null && value !== void 0) {
if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
var dispose;
if (async) {
if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
dispose = value[Symbol.asyncDispose];
}
if (dispose === void 0) {
if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
dispose = value[Symbol.dispose];
}
if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
env.stack.push({ value: value, dispose: dispose, async: async });
}
else if (async) {
env.stack.push({ async: true });
}
return value;
}
var _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
var e = new Error(message);
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
};
function __disposeResources(env) {
function fail(e) {
env.error = env.hasError ? new _SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
env.hasError = true;
}
function next() {
while (env.stack.length) {
var rec = env.stack.pop();
try {
var result = rec.dispose && rec.dispose.call(rec.value);
if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
}
catch (e) {
fail(e);
}
}
if (env.hasError) throw env.error;
}
return next();
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
__extends,
__assign,
__rest,
__decorate,
__param,
__metadata,
__awaiter,
__generator,
__createBinding,
__exportStar,
__values,
__read,
__spread,
__spreadArrays,
__spreadArray,
__await,
__asyncGenerator,
__asyncDelegator,
__asyncValues,
__makeTemplateObject,
__importStar,
__importDefault,
__classPrivateFieldGet,
__classPrivateFieldSet,
__classPrivateFieldIn,
__addDisposableResource,
__disposeResources,
});
/***/ }),
/***/ 944:
/***/ ((module) => {
module.exports = /*#__PURE__*/JSON.parse('{"settings":{"host":"localhost","port":27017,"user":"admin","password":"admin","dbName":"my-db"}}');
/***/ }),
/***/ 330:
/***/ ((module) => {
module.exports = /*#__PURE__*/JSON.parse('{"name":"@amplication/plugin-db-mongo","version":"1.4.14","description":"Use a Mongo database in a service generated by Amplication","main":"dist/index.js","nx":{},"scripts":{"dev":"webpack --watch","build":"webpack","prebuild":"rimraf dist","test":"jest"},"author":"Mor Hagbi","license":"Apache-2.0","devDependencies":{"@amplication/code-gen-types":"^2.0.23","@amplication/code-gen-utils":"^0.0.9","@babel/parser":"^7.18.11","@babel/types":"^7.18.10","@types/jest":"^29.5.0","@types/lodash":"^4.14.182","@types/normalize-path":"^3.0.0","@typescript-eslint/eslint-plugin":"^5.33.0","@typescript-eslint/parser":"^5.33.0","camel-case":"^4.1.2","copy-webpack-plugin":"^12.0.2","eslint":"^8.21.0","jest-mock-extended":"^2.0.7","lodash":"^4.17.21","prettier":"^2.6.2","prisma-schema-dsl":"^2.1.5","prisma-schema-dsl-types":"^1.1.1","rimraf":"^5.0.1","ts-jest":"^29.0.5","ts-loader":"^9.4.2","typescript":"^4.9.3","webpack":"^5.75.0","webpack-cli":"^5.0.1","yaml":"^2.2.1"},"jest":{"passWithNoTests":true,"moduleFileExtensions":["js","json","ts"],"rootDir":"src/tests","testRegex":".*\\\\.spec\\\\.ts$","transform":{"^.+\\\\.(t|j)s$":"ts-jest"},"collectCoverageFrom":["**/*.(t|j)s"],"testEnvironment":"node"}}');
/***/ })
/******/ });
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ var cachedModule = __webpack_module_cache__[moduleId];
/******/ if (cachedModule !== undefined) {
/******/ return cachedModule.exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = __webpack_module_cache__[moduleId] = {
/******/ // no module.id needed
/******/ // no module.loaded needed
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/************************************************************************/
/******/ /* webpack/runtime/define property getters */
/******/ (() => {
/******/ // define getter functions for harmony exports
/******/ __webpack_require__.d = (exports, definition) => {
/******/ for(var key in definition) {
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ }
/******/ }
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/hasOwnProperty shorthand */
/******/ (() => {
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ })();
/******/
/******/ /* webpack/runtime/make namespace object */
/******/ (() => {
/******/ // define __esModule on exports
/******/ __webpack_require__.r = (exports) => {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/ })();
/******/
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
(() => {
var exports = __webpack_exports__;
Object.defineProperty(exports, "__esModule", ({ value: true }));
const tslib_1 = __webpack_require__(608);
const code_gen_types_1 = __webpack_require__(288);
const camel_case_1 = __webpack_require__(78);
const pascal_case_1 = __webpack_require__(697);
const path_1 = __webpack_require__(928);
const PrismaSchemaDSL = tslib_1.__importStar(__webpack_require__(532));
const prisma_schema_dsl_types_1 = __webpack_require__(869);
const constants_1 = __webpack_require__(466);
const utils_1 = __webpack_require__(622);
class MongoPlugin {
register() {
return {
CreateServer: {
before: this.beforeCreateServer,
},
CreateServerDotEnv: {
before: this.beforeCreateServerDotEnv,
},
CreateServerDockerCompose: {
before: this.beforeCreateServerDockerCompose,
},
CreateServerDockerComposeDev: {
before: this.beforeCreateServerDockerComposeDev,
},
CreatePrismaSchema: {
before: this.beforeCreatePrismaSchema,
},
CreateServerPackageJson: {
before: this.beforeCreateServerPackageJson,
},
LoadStaticFiles: {
after: this.afterCreateServerStaticFiles,
},
};
}
beforeCreateServer(context, eventParams) {
const generateErrorMessage = () => `The ID type: "Auto increment" is not supported by MongoDB Prisma provider.
To use MongoDB, You need to select another ID type for your entities`;
const allAutoIncrementFields = context.entities?.filter((entity) => entity.fields.find((field) => field.dataType === code_gen_types_1.EnumDataType.Id &&
(field?.properties).idType === "AUTO_INCREMENT"));
if (allAutoIncrementFields !== undefined &&
allAutoIncrementFields.length > 0) {
context.logger.error(generateErrorMessage());
throw new Error(generateErrorMessage());
}
return eventParams;
}
beforeCreateServerPackageJson(context, eventParams) {
const myValues = {
scripts: {
"prisma:pull": "prisma db pull",
"prisma:push": " prisma db push",
"db:init": "run-s seed",
},
};
eventParams.updateProperties.push(myValues);
return eventParams;
}
beforeCreateServerDotEnv(context, eventParams) {
const { port, password, user, host, dbName } = (0, utils_1.getPluginSettings)(context.pluginInstallations);
eventParams.envVariables = [
...eventParams.envVariables,
...[
{ DB_USER: user },
{ DB_PASSWORD: password },
{ DB_PORT: port.toString() },
{ DB_NAME: dbName },
{
DB_URL: `mongodb://${user}:${password}@${host}:${port}/${dbName}?authSource=admin`,
},
],
];
return eventParams;
}
beforeCreateServerDockerCompose(context, eventParams) {
eventParams.updateProperties.push(...constants_1.updateDockerComposeProperties);
return eventParams;
}
beforeCreateServerDockerComposeDev(context, eventParams) {
eventParams.updateProperties.push(...constants_1.updateDockerComposeDevProperties);
return eventParams;
}
async afterCreateServerStaticFiles(context, eventParams, modules) {
const staticPathToHealthBaseService = (0, path_1.resolve)(__dirname, "./static/health");
const staticsHealthBaseService = await context.utils.importStaticModules(staticPathToHealthBaseService, `${context.serverDirectories.srcDirectory}/health/base`);
const staticPathToHealthServiceTest = (0, path_1.resolve)(__dirname, "./static/tests/health");
const staticsHealthServiceTest = await context.utils.importStaticModules(staticPathToHealthServiceTest, `${context.serverDirectories.srcDirectory}/tests/health`);
await modules.mergeMany([
staticsHealthBaseService,
staticsHealthServiceTest,
]);
return modules;
}
beforeCreatePrismaSchema(context, eventParams) {
const originalHandler = eventParams.createFieldsHandlers[code_gen_types_1.EnumDataType.Lookup];
eventParams.createFieldsHandlers[code_gen_types_1.EnumDataType.Lookup] = (field, entity, fieldNamesCount) => {
const { properties, name } = field;
const { relatedEntity, allowMultipleSelection, relatedField, isOneToOneWithoutForeignKey, } = properties;
const hasManyToManyRelation = relatedEntity.fields.some((entityField) => entityField.id !== field.id &&
entityField.dataType === code_gen_types_1.EnumDataType.Lookup &&
entityField.permanentId === field.properties?.relatedFieldId &&
allowMultipleSelection &&
entityField.properties?.allowMultipleSelection);
const isSelfRelation = relatedEntity.name === entity.name;
if (hasManyToManyRelation || isSelfRelation) {
const hasAnotherRelation = entity.fields.some((entityField) => entityField.id !== field.id &&
entityField.dataType === code_gen_types_1.EnumDataType.Lookup &&
entityField.properties.relatedEntity.name === relatedEntity.name);
const relationName = !hasAnotherRelation
? null
: MongoPlugin.createRelationName(entity, field, relatedEntity, relatedField, fieldNamesCount ? fieldNamesCount[field.name] === 1 : false, fieldNamesCount ? fieldNamesCount[relatedField.name] === 1 : false);
if ((allowMultipleSelection &&
isSelfRelation &&
!hasManyToManyRelation) ||
isOneToOneWithoutForeignKey) {
return [
PrismaSchemaDSL.createObjectField(name, relatedEntity.name, !isOneToOneWithoutForeignKey, allowMultipleSelection || false, relationName),
];
}
const onDelete = isSelfRelation && !hasManyToManyRelation
? prisma_schema_dsl_types_1.ReferentialActions.NoAction
: prisma_schema_dsl_types_1.ReferentialActions.NONE;
const onUpdate = isSelfRelation && !hasManyToManyRelation
? prisma_schema_dsl_types_1.ReferentialActions.NoAction
: prisma_schema_dsl_types_1.ReferentialActions.NONE;
const scalarRelationFieldName = allowMultipleSelection
? `${name}Ids`
: `${name}Id`;
return [
PrismaSchemaDSL.createObjectField(name, relatedEntity.name, allowMultipleSelection, allowMultipleSelection, relationName, [scalarRelationFieldName], ["id"], onDelete, onUpdate),
// Prisma Scalar Relation Field
PrismaSchemaDSL.createScalarField(scalarRelationFieldName, prisma_schema_dsl_types_1.ScalarType.String, allowMultipleSelection, allowMultipleSelection, !field.properties.allowMultipleSelection &&
!relatedField?.properties.allowMultipleSelection &&
!isOneToOneWithoutForeignKey
? true
: field.unique, false, false, undefined, undefined, true),
];
}
return originalHandler(field, entity, fieldNamesCount);
};
const { entities } = eventParams;
entities.forEach((entity) => {
entity.fields.forEach((field) => {
if (field.customAttributes) {
field.customAttributes = field.customAttributes.replace(/@([\w]+)\./g, `@${constants_1.dataSource.name}.`);
}
});
});
return {
...eventParams,
dataSource: constants_1.dataSource,
};
}
static createRelationName(entity, field, relatedEntity, relatedField, fieldHasUniqueName, relatedFieldHasUniqueName) {
const relatedEntityNames = [
relatedEntity.name,
(0, pascal_case_1.pascalCase)(relatedEntity.pluralName),
];
const entityNames = [entity.name, (0, pascal_case_1.pascalCase)(entity.pluralName)];
const matchingRelatedEntityName = relatedEntityNames.find((name) => field.name === (0, camel_case_1.camelCase)(name));
const matchingEntityName = entityNames.find((name) => relatedField.name === (0, camel_case_1.camelCase)(name));
if (matchingRelatedEntityName && matchingEntityName) {
const names = [matchingRelatedEntityName, matchingEntityName];
// Sort names for deterministic results regardless of entity and related order
names.sort();
return names.join("On");
}
if (fieldHasUniqueName || relatedFieldHasUniqueName) {
const names = [];
if (fieldHasUniqueName) {
names.push(field.name);
}
if (relatedFieldHasUniqueName) {
names.push(relatedField.name);
}
// Sort names for deterministic results regardless of entity and related order
names.sort();
return names[0];
}
const entityAndField = [entity.name, field.name].join(" ");
const relatedEntityAndField = [relatedEntity.name, relatedField.name].join(" ");
const parts = [entityAndField, relatedEntityAndField];
// Sort parts for deterministic results regardless of entity and related order
parts.sort();
return (0, pascal_case_1.pascalCase)(parts.join(" "));
}
}
exports["default"] = MongoPlugin;
})();
module.exports = __webpack_exports__;
/******/ })()
;
//# sourceMappingURL=main.js.map
(()=>{"use strict";var e={78:(e,t,r)=>{r.r(t),r.d(t,{camelCase:()=>s,camelCaseTransform:()=>a,camelCaseTransformMerge:()=>i});var o=r(608),n=r(697);function a(e,t){return 0===t?e.toLowerCase():(0,n.pascalCaseTransform)(e,t)}function i(e,t){return 0===t?e.toLowerCase():(0,n.pascalCaseTransformMerge)(e)}function s(e,t){return void 0===t&&(t={}),(0,n.pascalCase)(e,(0,o.__assign)({transform:a},t))}},697:(e,t,r)=>{r.r(t),r.d(t,{pascalCase:()=>u,pascalCaseTransform:()=>c,pascalCaseTransformMerge:()=>l});var o=r(608);function n(e){return e.toLowerCase()}var a=[/([a-z0-9])([A-Z])/g,/([A-Z])([A-Z][a-z])/g],i=/[^A-Z0-9]+/gi;function s(e,t,r){return t instanceof RegExp?e.replace(t,r):t.reduce((function(e,t){return e.replace(t,r)}),e)}function c(e,t){var r=e.charAt(0),o=e.substr(1).toLowerCase();return t>0&&r>="0"&&r<="9"?"_"+r+o:""+r.toUpperCase()+o}function l(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function u(e,t){return void 0===t&&(t={}),function(e,t){void 0===t&&(t={});for(var r=t.splitRegexp,o=void 0===r?a:r,c=t.stripRegexp,l=void 0===c?i:c,u=t.transform,p=void 0===u?n:u,d=t.delimiter,f=void 0===d?" ":d,_=s(s(e,o,"$1\0$2"),l,"\0"),m=0,y=_.length;"\0"===_.charAt(m);)m++;for(;"\0"===_.charAt(y-1);)y--;return _.slice(m,y).split("\0").map(p).join(f)}(e,(0,o.__assign)({delimiter:"",transform:c},t))}},869:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||o(t,e,r)};t.__esModule=!0,n(r(220),t)},220:(e,t)=>{var r,o,n,a;t.__esModule=!0,t.FieldKind=t.isCallExpression=t.DB_GENERATED=t.UUID=t.CUID=t.NOW=t.AUTO_INCREMENT=t.ReferentialActions=t.ScalarType=t.isDataSourceURLEnv=t.DataSourceProvider=void 0,(a=t.DataSourceProvider||(t.DataSourceProvider={})).PostgreSQL="postgresql",a.MySQL="mysql",a.SQLite="sqlite",a.MongoDB="mongodb",a.MSSQLServer="sqlserver",t.isDataSourceURLEnv=function(e){return void 0!==e.name},(n=t.ScalarType||(t.ScalarType={})).String="String",n.Boolean="Boolean",n.Int="Int",n.BigInt="BigInt",n.Float="Float",n.Decimal="Decimal",n.DateTime="DateTime",n.Json="Json",(o=t.ReferentialActions||(t.ReferentialActions={})).NONE="NONE",o.Cascade="Cascade",o.Restrict="Restrict",o.NoAction="NoAction",o.SetNull="SetNull",o.SetDefault="SetDefault",t.AUTO_INCREMENT="autoincrement",t.NOW="now",t.CUID="cuid",t.UUID="uuid",t.DB_GENERATED="dbgenerated",t.isCallExpression=function(e){return void 0!==e.callee},(r=t.FieldKind||(t.FieldKind={})).Scalar="scalar",r.Object="object"},466:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.dataSource=t.updateDockerComposeDevProperties=t.updateDockerComposeProperties=void 0;const o=r(869),n="mongo";t.updateDockerComposeProperties=[{services:{server:{environment:{DB_URL:"mongodb://${DB_USER}:${DB_PASSWORD}@db:27017/${DB_NAME}?authSource=admin"},depends_on:["migrate"]},migrate:{environment:{DB_URL:"mongodb://${DB_USER}:${DB_PASSWORD}@db:27017/${DB_NAME}?authSource=admin"},depends_on:{db:{condition:"service_healthy"}}},db:{image:"mongo",ports:["${DB_PORT}:27017"],environment:{MONGO_INITDB_ROOT_USERNAME:"${DB_USER}",MONGO_INITDB_ROOT_PASSWORD:"${DB_PASSWORD}",MONGO_INITDB_DATABASE:"${DB_NAME}",MONGO_REPLICA_SET_NAME:"rs0"},restart:"always",entrypoint:["/bin/bash","-c","openssl rand -base64 741 > /data/cert.crt; chmod 400 /data/cert.crt && chown 999 /data/cert.crt; /usr/local/bin/docker-entrypoint.sh mongod --bind_ip_all --keyFile /data/cert.crt --replSet rs0"],healthcheck:{test:"test $$(mongosh --quiet -u $${MONGO_INITDB_ROOT_USERNAME} -p $${MONGO_INITDB_ROOT_PASSWORD} --eval \"try { rs.initiate({ _id: 'rs0',members: [{ _id: 0, host: 'db' }] }).ok } catch (_) { rs.status().ok}\") -eq 1",start_period:"5s",interval:"10s",timeout:"10s"},volumes:[`${n}:/var/lib/mongosql/data`]}},volumes:{[n]:null}}],t.updateDockerComposeDevProperties=[{services:{db:{image:"mongo",ports:["${DB_PORT}:27017"],environment:{MONGO_INITDB_ROOT_USERNAME:"${DB_USER}",MONGO_INITDB_ROOT_PASSWORD:"${DB_PASSWORD}",MONGO_INITDB_DATABASE:"${DB_NAME}",MONGO_REPLICA_SET_NAME:"rs0"},restart:"always",entrypoint:["/bin/bash","-c","openssl rand -base64 741 > /data/cert.crt; chmod 400 /data/cert.crt && chown 999 /data/cert.crt; /usr/local/bin/docker-entrypoint.sh mongod --bind_ip_all --keyFile /data/cert.crt --replSet rs0"],healthcheck:{test:'test $$(mongosh --quiet -u $${MONGO_INITDB_ROOT_USERNAME} -p $${MONGO_INITDB_ROOT_PASSWORD} --eval "try { rs.initiate({ _id: \'"rs0"\',members: [{ _id: 0, host: \'"localhost"\' }] }).ok } catch (_) { rs.status().ok}") -eq 1',start_period:"5s",interval:"10s",timeout:"10s"},volumes:[`${n}:/var/lib/mongosql/data`]}},volumes:{[n]:null}}],t.dataSource={name:"db",provider:o.DataSourceProvider.MongoDB,url:{name:"DB_URL"}}},622:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getPluginSettings=void 0;const o=r(608),n=r(330),a=o.__importDefault(r(944));t.getPluginSettings=e=>{const t=e.find((e=>e.npm===n.name)),r=t?.settings??{};return{...a.default.settings,...r}}},288:e=>{e.exports=require("@amplication/code-gen-types")},532:e=>{e.exports=require("prisma-schema-dsl")},928:e=>{e.exports=require("path")},608:(e,t,r)=>{r.r(t),r.d(t,{__addDisposableResource:()=>I,__assign:()=>a,__asyncDelegator:()=>E,__asyncGenerator:()=>w,__asyncValues:()=>P,__await:()=>D,__awaiter:()=>_,__classPrivateFieldGet:()=>N,__classPrivateFieldIn:()=>M,__classPrivateFieldSet:()=>R,__createBinding:()=>y,__decorate:()=>s,__disposeResources:()=>k,__esDecorate:()=>l,__exportStar:()=>v,__extends:()=>n,__generator:()=>m,__importDefault:()=>A,__importStar:()=>j,__makeTemplateObject:()=>T,__metadata:()=>f,__param:()=>c,__propKey:()=>p,__read:()=>h,__rest:()=>i,__runInitializers:()=>u,__setFunctionName:()=>d,__spread:()=>S,__spreadArray:()=>O,__spreadArrays:()=>g,__values:()=>b,default:()=>x});var o=function(e,t){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},o(e,t)};function n(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var a=function(){return a=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},a.apply(this,arguments)};function i(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r}function s(e,t,r,o){var n,a=arguments.length,i=a<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(i=(a<3?n(i):a>3?n(t,r,i):n(t,r))||i);return a>3&&i&&Object.defineProperty(t,r,i),i}function c(e,t){return function(r,o){t(r,o,e)}}function l(e,t,r,o,n,a){function i(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var s,c=o.kind,l="getter"===c?"get":"setter"===c?"set":"value",u=!t&&e?o.static?e:e.prototype:null,p=t||(u?Object.getOwnPropertyDescriptor(u,o.name):{}),d=!1,f=r.length-1;f>=0;f--){var _={};for(var m in o)_[m]="access"===m?{}:o[m];for(var m in o.access)_.access[m]=o.access[m];_.addInitializer=function(e){if(d)throw new TypeError("Cannot add initializers after decoration has completed");a.push(i(e||null))};var y=(0,r[f])("accessor"===c?{get:p.get,set:p.set}:p[l],_);if("accessor"===c){if(void 0===y)continue;if(null===y||"object"!=typeof y)throw new TypeError("Object expected");(s=i(y.get))&&(p.get=s),(s=i(y.set))&&(p.set=s),(s=i(y.init))&&n.unshift(s)}else(s=i(y))&&("field"===c?n.unshift(s):p[l]=s)}u&&Object.defineProperty(u,o.name,p),d=!0}function u(e,t,r){for(var o=arguments.length>2,n=0;n<t.length;n++)r=o?t[n].call(e,r):t[n].call(e);return o?r:void 0}function p(e){return"symbol"==typeof e?e:"".concat(e)}function d(e,t,r){return"symbol"==typeof t&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(e,"name",{configurable:!0,value:r?"".concat(r," ",t):t})}function f(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function _(e,t,r,o){return new(r||(r=Promise))((function(n,a){function i(e){try{c(o.next(e))}catch(e){a(e)}}function s(e){try{c(o.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}c((o=o.apply(e,t||[])).next())}))}function m(e,t){var r,o,n,a,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,o&&(n=2&s[0]?o.return:s[0]?o.throw||((n=o.return)&&n.call(o),0):o.next)&&!(n=n.call(o,s[1])).done)return n;switch(o=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,o=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!((n=(n=i.trys).length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){i.label=s[1];break}if(6===s[0]&&i.label<n[1]){i.label=n[1],n=s;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(s);break}n[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],o=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}var y=Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]};function v(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||y(t,e,r)}function b(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],o=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&o>=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function h(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var o,n,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(o=a.next()).done;)i.push(o.value)}catch(e){n={error:e}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(n)throw n.error}}return i}function S(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(h(arguments[t]));return e}function g(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;var o=Array(e),n=0;for(t=0;t<r;t++)for(var a=arguments[t],i=0,s=a.length;i<s;i++,n++)o[n]=a[i];return o}function O(e,t,r){if(r||2===arguments.length)for(var o,n=0,a=t.length;n<a;n++)!o&&n in t||(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))}function D(e){return this instanceof D?(this.v=e,this):new D(e)}function w(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,n=r.apply(e,t||[]),a=[];return o={},i("next"),i("throw"),i("return"),o[Symbol.asyncIterator]=function(){return this},o;function i(e){n[e]&&(o[e]=function(t){return new Promise((function(r,o){a.push([e,t,r,o])>1||s(e,t)}))})}function s(e,t){try{(r=n[e](t)).value instanceof D?Promise.resolve(r.value.v).then(c,l):u(a[0][2],r)}catch(e){u(a[0][3],e)}var r}function c(e){s("next",e)}function l(e){s("throw",e)}function u(e,t){e(t),a.shift(),a.length&&s(a[0][0],a[0][1])}}function E(e){var t,r;return t={},o("next"),o("throw",(function(e){throw e})),o("return"),t[Symbol.iterator]=function(){return this},t;function o(o,n){t[o]=e[o]?function(t){return(r=!r)?{value:D(e[o](t)),done:!1}:n?n(t):t}:n}}function P(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=b(e),t={},o("next"),o("throw"),o("return"),t[Symbol.asyncIterator]=function(){return this},t);function o(r){t[r]=e[r]&&function(t){return new Promise((function(o,n){!function(e,t,r,o){Promise.resolve(o).then((function(t){e({value:t,done:r})}),t)}(o,n,(t=e[r](t)).done,t.value)}))}}}function T(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var C=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t};function j(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&y(t,e,r);return C(t,e),t}function A(e){return e&&e.__esModule?e:{default:e}}function N(e,t,r,o){if("a"===r&&!o)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?o:"a"===r?o.call(e):o?o.value:t.get(e)}function R(e,t,r,o,n){if("m"===o)throw new TypeError("Private method is not writable");if("a"===o&&!n)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===o?n.call(e,r):n?n.value=r:t.set(e,r),r}function M(e,t){if(null===t||"object"!=typeof t&&"function"!=typeof t)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof e?t===e:e.has(t)}function I(e,t,r){if(null!=t){if("object"!=typeof t&&"function"!=typeof t)throw new TypeError("Object expected.");var o;if(r){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");o=t[Symbol.asyncDispose]}if(void 0===o){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");o=t[Symbol.dispose]}if("function"!=typeof o)throw new TypeError("Object not disposable.");e.stack.push({value:t,dispose:o,async:r})}else r&&e.stack.push({async:!0});return t}var B="function"==typeof SuppressedError?SuppressedError:function(e,t,r){var o=new Error(r);return o.name="SuppressedError",o.error=e,o.suppressed=t,o};function k(e){function t(t){e.error=e.hasError?new B(t,e.error,"An error was suppressed during disposal."):t,e.hasError=!0}return function r(){for(;e.stack.length;){var o=e.stack.pop();try{var n=o.dispose&&o.dispose.call(o.value);if(o.async)return Promise.resolve(n).then(r,(function(e){return t(e),r()}))}catch(e){t(e)}}if(e.hasError)throw e.error}()}const x={__extends:n,__assign:a,__rest:i,__decorate:s,__param:c,__metadata:f,__awaiter:_,__generator:m,__createBinding:y,__exportStar:v,__values:b,__read:h,__spread:S,__spreadArrays:g,__spreadArray:O,__await:D,__asyncGenerator:w,__asyncDelegator:E,__asyncValues:P,__makeTemplateObject:T,__importStar:j,__importDefault:A,__classPrivateFieldGet:N,__classPrivateFieldSet:R,__classPrivateFieldIn:M,__addDisposableResource:I,__disposeResources:k}},944:e=>{e.exports=JSON.parse('{"settings":{"host":"localhost","port":27017,"user":"admin","password":"admin","dbName":"my-db"}}')},330:e=>{e.exports=JSON.parse('{"name":"@amplication/plugin-db-mongo","version":"1.4.15","description":"Use a Mongo database in a service generated by Amplication","main":"dist/index.js","nx":{},"scripts":{"dev":"webpack --watch","build":"webpack","prebuild":"rimraf dist","test":"jest"},"author":"Mor Hagbi","license":"Apache-2.0","devDependencies":{"@amplication/code-gen-types":"^2.0.23","@amplication/code-gen-utils":"^0.0.9","@babel/parser":"^7.18.11","@babel/types":"^7.18.10","@types/jest":"^29.5.0","@types/lodash":"^4.14.182","@types/normalize-path":"^3.0.0","@typescript-eslint/eslint-plugin":"^5.33.0","@typescript-eslint/parser":"^5.33.0","camel-case":"^4.1.2","copy-webpack-plugin":"^12.0.2","eslint":"^8.21.0","jest-mock-extended":"^2.0.7","lodash":"^4.17.21","prettier":"^2.6.2","prisma-schema-dsl":"^2.1.5","prisma-schema-dsl-types":"^1.1.1","rimraf":"^5.0.1","ts-jest":"^29.0.5","ts-loader":"^9.4.2","typescript":"^4.9.3","webpack":"^5.75.0","webpack-cli":"^5.0.1","yaml":"^2.2.1"},"jest":{"passWithNoTests":true,"moduleFileExtensions":["js","json","ts"],"rootDir":"src/tests","testRegex":".*\\\\.spec\\\\.ts$","transform":{"^.+\\\\.(t|j)s$":"ts-jest"},"collectCoverageFrom":["**/*.(t|j)s"],"testEnvironment":"node"}}')}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var a=t[o]={exports:{}};return e[o].call(a.exports,a,a.exports,r),a.exports}r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};(()=>{var e=o;Object.defineProperty(e,"__esModule",{value:!0});const t=r(608),n=r(288),a=r(78),i=r(697),s=r(928),c=t.__importStar(r(532)),l=r(869),u=r(466),p=r(622);class d{register(){return{CreateServer:{before:this.beforeCreateServer},CreateServerDotEnv:{before:this.beforeCreateServerDotEnv},CreateServerDockerCompose:{before:this.beforeCreateServerDockerCompose},CreateServerDockerComposeDev:{before:this.beforeCreateServerDockerComposeDev},CreatePrismaSchema:{before:this.beforeCreatePrismaSchema},CreateServerPackageJson:{before:this.beforeCreateServerPackageJson},LoadStaticFiles:{after:this.afterCreateServerStaticFiles}}}beforeCreateServer(e,t){const r=e.entities?.filter((e=>e.fields.find((e=>e.dataType===n.EnumDataType.Id&&"AUTO_INCREMENT"===(e?.properties).idType))));if(void 0!==r&&r.length>0)throw e.logger.error('The ID type: "Auto increment" is not supported by MongoDB Prisma provider. \n To use MongoDB, You need to select another ID type for your entities'),new Error('The ID type: "Auto increment" is not supported by MongoDB Prisma provider. \n To use MongoDB, You need to select another ID type for your entities');return t}beforeCreateServerPackageJson(e,t){return t.updateProperties.push({scripts:{"prisma:pull":"prisma db pull","prisma:push":" prisma db push","db:init":"run-s seed"}}),t}beforeCreateServerDotEnv(e,t){const{port:r,password:o,user:n,host:a,dbName:i}=(0,p.getPluginSettings)(e.pluginInstallations);return t.envVariables=[...t.envVariables,{DB_USER:n},{DB_PASSWORD:o},{DB_PORT:r.toString()},{DB_NAME:i},{DB_URL:`mongodb://${n}:${o}@${a}:${r}/${i}?authSource=admin`}],t}beforeCreateServerDockerCompose(e,t){return t.updateProperties.push(...u.updateDockerComposeProperties),t}beforeCreateServerDockerComposeDev(e,t){return t.updateProperties.push(...u.updateDockerComposeDevProperties),t}async afterCreateServerStaticFiles(e,t,r){const o=(0,s.resolve)(__dirname,"./static/health"),n=await e.utils.importStaticModules(o,`${e.serverDirectories.srcDirectory}/health/base`),a=(0,s.resolve)(__dirname,"./static/tests/health"),i=await e.utils.importStaticModules(a,`${e.serverDirectories.srcDirectory}/tests/health`);return await r.mergeMany([n,i]),r}beforeCreatePrismaSchema(e,t){const r=t.createFieldsHandlers[n.EnumDataType.Lookup];t.createFieldsHandlers[n.EnumDataType.Lookup]=(e,t,o)=>{const{properties:a,name:i}=e,{relatedEntity:s,allowMultipleSelection:u,relatedField:p,isOneToOneWithoutForeignKey:f}=a,_=s.fields.some((t=>t.id!==e.id&&t.dataType===n.EnumDataType.Lookup&&t.permanentId===e.properties?.relatedFieldId&&u&&t.properties?.allowMultipleSelection)),m=s.name===t.name;if(_||m){const r=t.fields.some((t=>t.id!==e.id&&t.dataType===n.EnumDataType.Lookup&&t.properties.relatedEntity.name===s.name))?d.createRelationName(t,e,s,p,!!o&&1===o[e.name],!!o&&1===o[p.name]):null;if(u&&m&&!_||f)return[c.createObjectField(i,s.name,!f,u||!1,r)];const a=m&&!_?l.ReferentialActions.NoAction:l.ReferentialActions.NONE,y=m&&!_?l.ReferentialActions.NoAction:l.ReferentialActions.NONE,v=u?`${i}Ids`:`${i}Id`;return[c.createObjectField(i,s.name,u,u,r,[v],["id"],a,y),c.createScalarField(v,l.ScalarType.String,u,u,!(e.properties.allowMultipleSelection||p?.properties.allowMultipleSelection||f)||e.unique,!1,!1,void 0,void 0,!0)]}return r(e,t,o)};const{entities:o}=t;return o.forEach((e=>{e.fields.forEach((e=>{e.customAttributes&&(e.customAttributes=e.customAttributes.replace(/@([\w]+)\./g,`@${u.dataSource.name}.`))}))})),{...t,dataSource:u.dataSource}}static createRelationName(e,t,r,o,n,s){const c=[r.name,(0,i.pascalCase)(r.pluralName)],l=[e.name,(0,i.pascalCase)(e.pluralName)],u=c.find((e=>t.name===(0,a.camelCase)(e))),p=l.find((e=>o.name===(0,a.camelCase)(e)));if(u&&p){const e=[u,p];return e.sort(),e.join("On")}if(n||s){const e=[];return n&&e.push(t.name),s&&e.push(o.name),e.sort(),e[0]}const d=[[e.name,t.name].join(" "),[r.name,o.name].join(" ")];return d.sort(),(0,i.pascalCase)(d.join(" "))}}e.default=d})(),module.exports=o})();

2

package.json
{
"name": "@amplication/plugin-db-mongo",
"version": "1.4.14",
"version": "1.4.15-beta.pr-354.1e83d71",
"description": "Use a Mongo database in a service generated by Amplication",

@@ -5,0 +5,0 @@ "main": "dist/index.js",

SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc