@rnaga/wp-node
Version:
👉 **[View Full Documentation at rnaga.github.io/wp-node →](https://rnaga.github.io/wp-node/)**
150 lines (149 loc) • 6.84 kB
JavaScript
"use strict";
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.configs = exports.config = void 0;
const zod_1 = require("zod");
const defaults = __importStar(require("../defaults"));
const common_1 = require("../common");
const roles_1 = require("./roles");
exports.config = zod_1.z.object({
constants: zod_1.z.object({
ALLOW_UNFILTERED_UPLOADS: zod_1.z.boolean().default(false),
DISALLOW_UNFILTERED_HTML: zod_1.z.boolean().default(true),
DISALLOW_FILE_EDIT: zod_1.z.boolean().default(true),
LINK_USE_SSL: zod_1.z.boolean().default(true),
TRASHED_SUFFIX_TO_POST_NAME_FOR_POST: zod_1.z.literal("__trashed"),
ALLOW_FILESYSTEM_OPERATIONS: zod_1.z.boolean().default(false),
WP_DEFAULT_THEME: zod_1.z.string().optional().default((0, common_1.convertYearToString)()),
WP_DB_VERSION: zod_1.z.number().optional().default(57155),
WPLANG: zod_1.z.string().optional().default("en_US"),
EMPTY_TRASH_DAYS: zod_1.z.number().optional().default(30),
MEDIA_TRASH: zod_1.z.boolean().optional().default(false),
WP_POST_REVISIONS: zod_1.z.number().optional().default(30),
WP_LOG_LEVEL: zod_1.z
.enum(["debug", "info", "warn", "error"])
.optional()
.default("info"),
}),
extensions: zod_1.z.object({
misc: zod_1.z.array(zod_1.z.string()),
audio: zod_1.z.array(zod_1.z.string()),
video: zod_1.z.array(zod_1.z.string()),
}),
timezoneOffset: zod_1.z.string().optional().default("0"), // see defaults/options.ts
staticAssetsPath: zod_1.z.string().default("/tmp/assets"),
options: zod_1.z.object({
protected: zod_1.z.array(zod_1.z.string()),
defaults: zod_1.z.array(zod_1.z.string()),
}),
multisite: zod_1.z.object({
enabled: zod_1.z.boolean(),
defaultBlogId: zod_1.z.number().int(),
defaultSiteId: zod_1.z.number().int(),
defaultSitemetaKeys: zod_1.z.array(zod_1.z.string()),
subdomainInstall: zod_1.z.boolean().optional().default(false),
subdirectoryReservedNames: zod_1.z.array(zod_1.z.string()),
vhost: zod_1.z.enum(["no", "yes"]).optional().default("no"),
uploadBlogsDir: zod_1.z.string().optional().default("wp-content/blogs.dir"), // UPLOADBLOGSDIR
}),
tableCharset: zod_1.z.string().optional().default("utf8mb4"),
tableCollate: zod_1.z.string().optional().default("utf8mb4_unicode_520_ci"),
tablePrefix: zod_1.z.string().default("wp_"),
database: zod_1.z.object({
client: zod_1.z.string(),
connection: zod_1.z.object({
host: zod_1.z
.string()
.optional()
.refine((v) => v && v.length > 0),
port: zod_1.z.number().int(),
user: zod_1.z.string().optional(),
charset: zod_1.z.string(),
password: zod_1.z.string().optional(),
database: zod_1.z
.string()
.optional()
.refine((v) => v && v.length > 0),
}),
}),
posts: zod_1.z.object({
typeNames: zod_1.z.union([zod_1.z.enum([...defaults.postTypes]), zod_1.z.array(zod_1.z.string())]),
types: zod_1.z.record(zod_1.z.union([zod_1.z.enum([...defaults.postTypes]), zod_1.z.string()]), zod_1.z.object({
capabilityType: zod_1.z.union([
zod_1.z.string(),
zod_1.z.tuple([zod_1.z.string(), zod_1.z.string()]),
]),
supports: zod_1.z.array(zod_1.z.string()),
mapMetaCap: zod_1.z.boolean(),
capabilities: zod_1.z.record(zod_1.z.string(), zod_1.z.string()).optional(),
hierarchical: zod_1.z.boolean().optional(),
deleteWithUser: zod_1.z.boolean().optional().default(false),
publiclyQueryable: zod_1.z.boolean().optional().default(false),
public: zod_1.z.boolean().default(false),
_builtin: zod_1.z.boolean().optional().default(false),
})),
statusNames: zod_1.z.union([
zod_1.z.enum([...defaults.postStatuses]),
zod_1.z.array(zod_1.z.string()),
]),
statuses: zod_1.z.record(zod_1.z.union([zod_1.z.enum([...defaults.postStatuses]), zod_1.z.string()]), zod_1.z.object({
label: zod_1.z.string(),
public: zod_1.z.boolean().optional(),
protected: zod_1.z.boolean().optional(),
private: zod_1.z.boolean().optional(),
internal: zod_1.z.boolean().optional(),
_builtin: zod_1.z.boolean().optional(),
})),
}),
taxonomy: zod_1.z.object({
names: zod_1.z.union([zod_1.z.enum([...defaults.taxonomyNames]), zod_1.z.array(zod_1.z.string())]),
settings: zod_1.z.record(zod_1.z.union([zod_1.z.enum([...defaults.taxonomyNames]), zod_1.z.string()]), zod_1.z.object({
hierarchical: zod_1.z.boolean(),
objectType: zod_1.z.string(),
_builtin: zod_1.z.boolean(),
capabilities: zod_1.z
.record(zod_1.z.enum([
"manage_terms",
"edit_terms",
"delete_terms",
"assign_terms",
]), zod_1.z.string())
.optional(),
showUi: zod_1.z.boolean().optional().default(true),
})),
}),
roles: roles_1.roles,
});
exports.configs = zod_1.z.record(zod_1.z.string(), exports.config);