@rnaga/wp-node
Version:
👉 **[View Full Documentation at rnaga.github.io/wp-node →](https://rnaga.github.io/wp-node/)**
111 lines (110 loc) • 4.86 kB
JavaScript
;
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.resultCountGroupBy = exports.resultCount = exports.linksResult = exports.registrationLogResult = exports.signupsResult = exports.optionsResult = exports.sitesResult = exports.blogsResult = exports.metaSiteResult = exports.metaUserResult = exports.metaTermResult = exports.metaBlogResult = exports.metaCommentResult = exports.metaPostResult = exports.metaResult = exports.usersResult = exports.commentsResult = exports.postsResult = exports.termsGroupMaxCountResult = exports.termRelationshipsResult = exports.termsResult = exports.schemaDepth = void 0;
const zod_1 = require("zod");
const database = __importStar(require("./database"));
exports.schemaDepth = zod_1.z.object({
depth: zod_1.z.number().optional().default(0),
});
const schemaTerms =
// z
// .object({
// depth: z.number().optional().default(0),
// })
exports.schemaDepth.merge(database.wpTerms.merge(database.wpTermTaxonomy.merge(database.wpTermRelationships)));
//const schemaTerms = database.wpTerms.merge(database.wpTermTaxonomy);
//.merge(database.wpTermRelationships);
exports.termsResult = zod_1.z.array(schemaTerms).nonempty();
exports.termRelationshipsResult = zod_1.z
.array(database.wpTermRelationships)
.nonempty();
exports.termsGroupMaxCountResult = zod_1.z.array(zod_1.z.object({ max: zod_1.z.number() }));
// Posts
exports.postsResult = zod_1.z.array(database.wpPosts).nonempty();
// Comments
exports.commentsResult = zod_1.z
.array(exports.schemaDepth.merge(database.wpComments))
.nonempty();
// Users
exports.usersResult = zod_1.z.array(database.wpUsers).nonempty();
// Meta
exports.metaResult = zod_1.z
.array(zod_1.z.object({
meta_id: zod_1.z.number().int().nonnegative().default(0),
umeta_id: zod_1.z.number().int().nonnegative().default(0),
meta_key: zod_1.z.string().max(255).trim().nullable(),
meta_value: zod_1.z.string().trim().nullable(),
}))
.nonempty();
exports.metaPostResult = zod_1.z.array(database.wpPostMeta).nonempty();
exports.metaCommentResult = zod_1.z.array(database.wpCommentMeta).nonempty();
exports.metaBlogResult = zod_1.z.array(database.wpBlogMeta).nonempty();
exports.metaTermResult = zod_1.z.array(database.wpTermMeta).nonempty();
exports.metaUserResult = zod_1.z.array(database.wpUserMeta).nonempty();
exports.metaSiteResult = zod_1.z.array(database.wpSiteMeta).nonempty();
// Blogs
exports.blogsResult = zod_1.z.array(database.wpBlogs).nonempty();
// Sites
exports.sitesResult = zod_1.z.array(database.wpSite).nonempty();
// Options
exports.optionsResult = database.wpOptions;
// Signups
exports.signupsResult = zod_1.z.array(database.wpSignups).nonempty();
// Registration Log
exports.registrationLogResult = zod_1.z
.array(database.wpRegistrationLog)
.nonempty();
// Links
exports.linksResult = zod_1.z.array(database.wpLinks).nonempty();
// Count
exports.resultCount = zod_1.z.object({ count: zod_1.z.number() }).optional();
const resultCountGroupBy = (column) => zod_1.z
.array(zod_1.z.object({
[column]: zod_1.z
.union([zod_1.z.string(), zod_1.z.number()])
.transform((v) => String(v)),
count: zod_1.z.union([zod_1.z.number(), zod_1.z.unknown()]).transform((v) => {
if (typeof v === "string") {
return parseInt(v);
}
else if (typeof v !== "number") {
return 0;
}
return v;
}),
}))
.optional();
exports.resultCountGroupBy = resultCountGroupBy;