@zodmon/core 0.0.0 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +37 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +11 -1
- package/dist/index.d.ts +11 -1
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.cjs
CHANGED
|
@@ -3,6 +3,10 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
6
10
|
var __copyProps = (to, from, except, desc) => {
|
|
7
11
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
12
|
for (let key of __getOwnPropNames(from))
|
|
@@ -15,5 +19,38 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
15
19
|
|
|
16
20
|
// src/index.ts
|
|
17
21
|
var index_exports = {};
|
|
22
|
+
__export(index_exports, {
|
|
23
|
+
isOid: () => isOid,
|
|
24
|
+
objectId: () => objectId,
|
|
25
|
+
oid: () => oid
|
|
26
|
+
});
|
|
18
27
|
module.exports = __toCommonJS(index_exports);
|
|
28
|
+
|
|
29
|
+
// src/helpers/oid.ts
|
|
30
|
+
var import_mongodb = require("mongodb");
|
|
31
|
+
function oid(value) {
|
|
32
|
+
if (value === void 0) return new import_mongodb.ObjectId();
|
|
33
|
+
if (value instanceof import_mongodb.ObjectId) return value;
|
|
34
|
+
return import_mongodb.ObjectId.createFromHexString(value);
|
|
35
|
+
}
|
|
36
|
+
function isOid(value) {
|
|
37
|
+
return value instanceof import_mongodb.ObjectId;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// src/schema/object-id.ts
|
|
41
|
+
var import_mongodb2 = require("mongodb");
|
|
42
|
+
var import_zod = require("zod");
|
|
43
|
+
var OBJECT_ID_HEX = /^[a-f\d]{24}$/i;
|
|
44
|
+
function objectId() {
|
|
45
|
+
return import_zod.z.custom((val) => {
|
|
46
|
+
if (val instanceof import_mongodb2.ObjectId) return true;
|
|
47
|
+
return typeof val === "string" && OBJECT_ID_HEX.test(val);
|
|
48
|
+
}, "Invalid ObjectId").transform((val) => val instanceof import_mongodb2.ObjectId ? val : import_mongodb2.ObjectId.createFromHexString(val));
|
|
49
|
+
}
|
|
50
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
51
|
+
0 && (module.exports = {
|
|
52
|
+
isOid,
|
|
53
|
+
objectId,
|
|
54
|
+
oid
|
|
55
|
+
});
|
|
19
56
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export { }
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/helpers/oid.ts","../src/schema/object-id.ts"],"sourcesContent":["export { isOid, oid } from './helpers/oid'\nexport { objectId, type ZodObjectId } from './schema'\n","import { ObjectId } from 'mongodb'\n\nexport function oid(): ObjectId\nexport function oid(value: string): ObjectId\nexport function oid(value: ObjectId): ObjectId\nexport function oid(value?: string | ObjectId): ObjectId {\n\tif (value === undefined) return new ObjectId()\n\tif (value instanceof ObjectId) return value\n\treturn ObjectId.createFromHexString(value)\n}\n\nexport function isOid(value: unknown): value is ObjectId {\n\treturn value instanceof ObjectId\n}\n","import { ObjectId } from 'mongodb'\nimport { type ZodCustom, type ZodPipe, type ZodTransform, z } from 'zod'\n\nconst OBJECT_ID_HEX = /^[a-f\\d]{24}$/i\n\nexport type ZodObjectId = ZodPipe<\n\tZodCustom<string | ObjectId, string | ObjectId>,\n\tZodTransform<ObjectId, string | ObjectId>\n>\n\nexport function objectId(): ZodObjectId {\n\treturn z\n\t\t.custom<string | ObjectId>((val): val is string | ObjectId => {\n\t\t\tif (val instanceof ObjectId) return true\n\t\t\treturn typeof val === 'string' && OBJECT_ID_HEX.test(val)\n\t\t}, 'Invalid ObjectId')\n\t\t.transform((val) => (val instanceof ObjectId ? val : ObjectId.createFromHexString(val)))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,qBAAyB;AAKlB,SAAS,IAAI,OAAqC;AACxD,MAAI,UAAU,OAAW,QAAO,IAAI,wBAAS;AAC7C,MAAI,iBAAiB,wBAAU,QAAO;AACtC,SAAO,wBAAS,oBAAoB,KAAK;AAC1C;AAEO,SAAS,MAAM,OAAmC;AACxD,SAAO,iBAAiB;AACzB;;;ACbA,IAAAA,kBAAyB;AACzB,iBAAmE;AAEnE,IAAM,gBAAgB;AAOf,SAAS,WAAwB;AACvC,SAAO,aACL,OAA0B,CAAC,QAAkC;AAC7D,QAAI,eAAe,yBAAU,QAAO;AACpC,WAAO,OAAO,QAAQ,YAAY,cAAc,KAAK,GAAG;AAAA,EACzD,GAAG,kBAAkB,EACpB,UAAU,CAAC,QAAS,eAAe,2BAAW,MAAM,yBAAS,oBAAoB,GAAG,CAAE;AACzF;","names":["import_mongodb"]}
|
package/dist/index.d.cts
CHANGED
|
@@ -1,2 +1,12 @@
|
|
|
1
|
+
import { ObjectId } from 'mongodb';
|
|
2
|
+
import { ZodPipe, ZodCustom, ZodTransform } from 'zod';
|
|
1
3
|
|
|
2
|
-
|
|
4
|
+
declare function oid(): ObjectId;
|
|
5
|
+
declare function oid(value: string): ObjectId;
|
|
6
|
+
declare function oid(value: ObjectId): ObjectId;
|
|
7
|
+
declare function isOid(value: unknown): value is ObjectId;
|
|
8
|
+
|
|
9
|
+
type ZodObjectId = ZodPipe<ZodCustom<string | ObjectId, string | ObjectId>, ZodTransform<ObjectId, string | ObjectId>>;
|
|
10
|
+
declare function objectId(): ZodObjectId;
|
|
11
|
+
|
|
12
|
+
export { type ZodObjectId, isOid, objectId, oid };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,12 @@
|
|
|
1
|
+
import { ObjectId } from 'mongodb';
|
|
2
|
+
import { ZodPipe, ZodCustom, ZodTransform } from 'zod';
|
|
1
3
|
|
|
2
|
-
|
|
4
|
+
declare function oid(): ObjectId;
|
|
5
|
+
declare function oid(value: string): ObjectId;
|
|
6
|
+
declare function oid(value: ObjectId): ObjectId;
|
|
7
|
+
declare function isOid(value: unknown): value is ObjectId;
|
|
8
|
+
|
|
9
|
+
type ZodObjectId = ZodPipe<ZodCustom<string | ObjectId, string | ObjectId>, ZodTransform<ObjectId, string | ObjectId>>;
|
|
10
|
+
declare function objectId(): ZodObjectId;
|
|
11
|
+
|
|
12
|
+
export { type ZodObjectId, isOid, objectId, oid };
|
package/dist/index.js
CHANGED
|
@@ -1 +1,27 @@
|
|
|
1
|
+
// src/helpers/oid.ts
|
|
2
|
+
import { ObjectId } from "mongodb";
|
|
3
|
+
function oid(value) {
|
|
4
|
+
if (value === void 0) return new ObjectId();
|
|
5
|
+
if (value instanceof ObjectId) return value;
|
|
6
|
+
return ObjectId.createFromHexString(value);
|
|
7
|
+
}
|
|
8
|
+
function isOid(value) {
|
|
9
|
+
return value instanceof ObjectId;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
// src/schema/object-id.ts
|
|
13
|
+
import { ObjectId as ObjectId2 } from "mongodb";
|
|
14
|
+
import { z } from "zod";
|
|
15
|
+
var OBJECT_ID_HEX = /^[a-f\d]{24}$/i;
|
|
16
|
+
function objectId() {
|
|
17
|
+
return z.custom((val) => {
|
|
18
|
+
if (val instanceof ObjectId2) return true;
|
|
19
|
+
return typeof val === "string" && OBJECT_ID_HEX.test(val);
|
|
20
|
+
}, "Invalid ObjectId").transform((val) => val instanceof ObjectId2 ? val : ObjectId2.createFromHexString(val));
|
|
21
|
+
}
|
|
22
|
+
export {
|
|
23
|
+
isOid,
|
|
24
|
+
objectId,
|
|
25
|
+
oid
|
|
26
|
+
};
|
|
1
27
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/helpers/oid.ts","../src/schema/object-id.ts"],"sourcesContent":["import { ObjectId } from 'mongodb'\n\nexport function oid(): ObjectId\nexport function oid(value: string): ObjectId\nexport function oid(value: ObjectId): ObjectId\nexport function oid(value?: string | ObjectId): ObjectId {\n\tif (value === undefined) return new ObjectId()\n\tif (value instanceof ObjectId) return value\n\treturn ObjectId.createFromHexString(value)\n}\n\nexport function isOid(value: unknown): value is ObjectId {\n\treturn value instanceof ObjectId\n}\n","import { ObjectId } from 'mongodb'\nimport { type ZodCustom, type ZodPipe, type ZodTransform, z } from 'zod'\n\nconst OBJECT_ID_HEX = /^[a-f\\d]{24}$/i\n\nexport type ZodObjectId = ZodPipe<\n\tZodCustom<string | ObjectId, string | ObjectId>,\n\tZodTransform<ObjectId, string | ObjectId>\n>\n\nexport function objectId(): ZodObjectId {\n\treturn z\n\t\t.custom<string | ObjectId>((val): val is string | ObjectId => {\n\t\t\tif (val instanceof ObjectId) return true\n\t\t\treturn typeof val === 'string' && OBJECT_ID_HEX.test(val)\n\t\t}, 'Invalid ObjectId')\n\t\t.transform((val) => (val instanceof ObjectId ? val : ObjectId.createFromHexString(val)))\n}\n"],"mappings":";AAAA,SAAS,gBAAgB;AAKlB,SAAS,IAAI,OAAqC;AACxD,MAAI,UAAU,OAAW,QAAO,IAAI,SAAS;AAC7C,MAAI,iBAAiB,SAAU,QAAO;AACtC,SAAO,SAAS,oBAAoB,KAAK;AAC1C;AAEO,SAAS,MAAM,OAAmC;AACxD,SAAO,iBAAiB;AACzB;;;ACbA,SAAS,YAAAA,iBAAgB;AACzB,SAA0D,SAAS;AAEnE,IAAM,gBAAgB;AAOf,SAAS,WAAwB;AACvC,SAAO,EACL,OAA0B,CAAC,QAAkC;AAC7D,QAAI,eAAeA,UAAU,QAAO;AACpC,WAAO,OAAO,QAAQ,YAAY,cAAc,KAAK,GAAG;AAAA,EACzD,GAAG,kBAAkB,EACpB,UAAU,CAAC,QAAS,eAAeA,YAAW,MAAMA,UAAS,oBAAoB,GAAG,CAAE;AACzF;","names":["ObjectId"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zodmon/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"description": "TypeScript-native MongoDB ODM powered by Zod — schema DSL, CRUD, aggregation, populate, transactions",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -20,13 +20,13 @@
|
|
|
20
20
|
"mongodb": "^6.12.0"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|
|
23
|
-
"zod": "^
|
|
23
|
+
"zod": "^4.0.0"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"@testcontainers/mongodb": "^10.0.0",
|
|
27
27
|
"testcontainers": "^10.0.0",
|
|
28
28
|
"vitest": "^3.0.0",
|
|
29
|
-
"zod": "^
|
|
29
|
+
"zod": "^4.0.0"
|
|
30
30
|
},
|
|
31
31
|
"license": "MIT",
|
|
32
32
|
"repository": {
|