Socket
Socket
Sign inDemoInstall

prisma-kysely

Package Overview
Dependencies
225
Maintainers
1
Versions
37
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.7.1 to 1.8.0

16

dist/helpers/generateFieldType.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.generateFieldType = exports.generateFieldTypeInner = exports.overrideType = exports.postgresqlTypeMap = exports.mysqlTypeMap = exports.sqliteTypeMap = void 0;
exports.generateFieldType = exports.generateFieldTypeInner = exports.overrideType = exports.sqlServerTypeMap = exports.postgresqlTypeMap = exports.mysqlTypeMap = exports.sqliteTypeMap = void 0;
exports.sqliteTypeMap = {

@@ -39,2 +39,14 @@ BigInt: "number",

};
exports.sqlServerTypeMap = {
BigInt: "number",
Boolean: "boolean",
Bytes: "Buffer",
DateTime: "Timestamp",
Decimal: "string",
Float: "number",
Int: "number",
Json: "unknown",
String: "string",
Unsupported: "unknown",
};
const overrideType = (type, config) => {

@@ -75,2 +87,4 @@ switch (type) {

return (typeOverride || (0, exports.overrideType)(type, config) || exports.postgresqlTypeMap[type]);
case "sqlserver":
return (typeOverride || (0, exports.overrideType)(type, config) || exports.sqlServerTypeMap[type]);
}

@@ -77,0 +91,0 @@ };

2

dist/helpers/generateImplicitManyToManyModels.js

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

throw new Error("Huh?");
const sortedFields = (0, sorted_1.sorted)(fields, (a, b) => a.name.localeCompare(b.name));
const sortedFields = (0, sorted_1.sorted)(fields, (a, b) => a.type.localeCompare(b.type));
const A = sortedFields[0];

@@ -42,0 +42,0 @@ const B = sortedFields[1];

@@ -289,2 +289,220 @@ "use strict";

});
(0, vitest_1.test)("it generates correct field types when field types are defferent", () => {
const newModels = (0, generateImplicitManyToManyModels_1.generateImplicitManyToManyModels)([
{
name: "Category",
fields: [
{
name: "id",
type: "String",
isId: true,
hasDefaultValue: true,
isList: false,
isReadOnly: false,
isRequired: true,
isUnique: true,
kind: "scalar",
},
{
name: "posts",
kind: "object",
isList: true,
isRequired: true,
isUnique: false,
isId: false,
isReadOnly: false,
type: "Post",
hasDefaultValue: false,
relationName: "CategoryToPost",
relationFromFields: [],
relationToFields: [],
isGenerated: false,
isUpdatedAt: false,
},
],
primaryKey: null,
dbName: null,
uniqueFields: [],
uniqueIndexes: [],
},
{
name: "Post",
fields: [
{
name: "id",
type: "Int",
isId: true,
hasDefaultValue: true,
isList: false,
isReadOnly: false,
isRequired: true,
isUnique: true,
kind: "scalar",
},
{
name: "categories",
kind: "object",
isList: true,
isRequired: true,
isUnique: false,
isId: false,
isReadOnly: false,
type: "Category",
hasDefaultValue: false,
relationName: "CategoryToPost",
relationFromFields: [],
relationToFields: [],
isGenerated: false,
isUpdatedAt: false,
},
],
primaryKey: null,
dbName: null,
uniqueFields: [],
uniqueIndexes: [],
},
]);
(0, vitest_1.expect)(newModels).toEqual([
{
name: "CategoryToPost",
dbName: "_CategoryToPost",
fields: [
{
hasDefaultValue: false,
isId: false,
isList: false,
isReadOnly: true,
isRequired: true,
isUnique: false,
kind: "scalar",
name: "A",
type: "String",
},
{
hasDefaultValue: false,
isId: false,
isList: false,
isReadOnly: true,
isRequired: true,
isUnique: false,
kind: "scalar",
name: "B",
type: "Int",
},
],
primaryKey: null,
uniqueFields: [],
uniqueIndexes: [],
},
]);
});
(0, vitest_1.test)("it generates correct field types when a field name is defferent from model name", () => {
const newModels = (0, generateImplicitManyToManyModels_1.generateImplicitManyToManyModels)([
{
name: "Category",
fields: [
{
name: "id",
type: "String",
isId: true,
hasDefaultValue: true,
isList: false,
isReadOnly: false,
isRequired: true,
isUnique: true,
kind: "scalar",
},
{
name: "articles",
kind: "object",
isList: true,
isRequired: true,
isUnique: false,
isId: false,
isReadOnly: false,
type: "Post",
hasDefaultValue: false,
relationName: "CategoryToPost",
relationFromFields: [],
relationToFields: [],
isGenerated: false,
isUpdatedAt: false,
},
],
primaryKey: null,
dbName: null,
uniqueFields: [],
uniqueIndexes: [],
},
{
name: "Post",
fields: [
{
name: "id",
type: "Int",
isId: true,
hasDefaultValue: true,
isList: false,
isReadOnly: false,
isRequired: true,
isUnique: true,
kind: "scalar",
},
{
name: "categories",
kind: "object",
isList: true,
isRequired: true,
isUnique: false,
isId: false,
isReadOnly: false,
type: "Category",
hasDefaultValue: false,
relationName: "CategoryToPost",
relationFromFields: [],
relationToFields: [],
isGenerated: false,
isUpdatedAt: false,
},
],
primaryKey: null,
dbName: null,
uniqueFields: [],
uniqueIndexes: [],
},
]);
(0, vitest_1.expect)(newModels).toEqual([
{
name: "CategoryToPost",
dbName: "_CategoryToPost",
fields: [
{
hasDefaultValue: false,
isId: false,
isList: false,
isReadOnly: true,
isRequired: true,
isUnique: false,
kind: "scalar",
name: "A",
type: "String",
},
{
hasDefaultValue: false,
isId: false,
isList: false,
isReadOnly: true,
isRequired: true,
isUnique: false,
kind: "scalar",
name: "B",
type: "Int",
},
],
primaryKey: null,
uniqueFields: [],
uniqueIndexes: [],
},
]);
});
//# sourceMappingURL=generateImplicitManyToManyModels.test.js.map

@@ -23,2 +23,3 @@ "use strict";

zod_1.default.literal("sqlite"),
zod_1.default.literal("sqlserver"),
]),

@@ -25,0 +26,0 @@ fileName: zod_1.default.string().optional().default("types.ts"),

@@ -7,3 +7,3 @@ {

},
"version": "1.7.1",
"version": "1.8.0",
"main": "dist/generator.js",

@@ -10,0 +10,0 @@ "files": [

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

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