@newcms/core 0.1.0 → 0.2.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 +1003 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +569 -0
- package/dist/index.d.ts +569 -6
- package/dist/index.js +963 -4
- package/dist/index.js.map +1 -1
- package/package.json +8 -4
- package/dist/hook-engine.d.ts +0 -134
- package/dist/hook-engine.d.ts.map +0 -1
- package/dist/hook-engine.js +0 -370
- package/dist/hook-engine.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/post-type-registry.d.ts +0 -50
- package/dist/post-type-registry.d.ts.map +0 -1
- package/dist/post-type-registry.js +0 -159
- package/dist/post-type-registry.js.map +0 -1
- package/dist/taxonomy-registry.d.ts +0 -20
- package/dist/taxonomy-registry.d.ts.map +0 -1
- package/dist/taxonomy-registry.js +0 -71
- package/dist/taxonomy-registry.js.map +0 -1
- package/dist/types.d.ts +0 -124
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -34
- package/dist/types.js.map +0 -1
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Registry for taxonomies (categories, tags, custom taxonomies).
|
|
3
|
-
*/
|
|
4
|
-
export class TaxonomyRegistry {
|
|
5
|
-
taxonomies = new Map();
|
|
6
|
-
register(definition) {
|
|
7
|
-
if (this.taxonomies.has(definition.name)) {
|
|
8
|
-
throw new Error(`Taxonomy "${definition.name}" is already registered.`);
|
|
9
|
-
}
|
|
10
|
-
this.taxonomies.set(definition.name, definition);
|
|
11
|
-
}
|
|
12
|
-
get(name) {
|
|
13
|
-
return this.taxonomies.get(name);
|
|
14
|
-
}
|
|
15
|
-
has(name) {
|
|
16
|
-
return this.taxonomies.has(name);
|
|
17
|
-
}
|
|
18
|
-
getAll() {
|
|
19
|
-
return [...this.taxonomies.values()];
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Get taxonomies assigned to a specific object type (e.g., 'post').
|
|
23
|
-
*/
|
|
24
|
-
getForObjectType(objectType) {
|
|
25
|
-
return this.getAll().filter((t) => t.objectTypes.includes(objectType));
|
|
26
|
-
}
|
|
27
|
-
getRestVisible() {
|
|
28
|
-
return this.getAll().filter((t) => t.showInRest === true);
|
|
29
|
-
}
|
|
30
|
-
unregister(name) {
|
|
31
|
-
return this.taxonomies.delete(name);
|
|
32
|
-
}
|
|
33
|
-
reset() {
|
|
34
|
-
this.taxonomies.clear();
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
export const BUILTIN_TAXONOMIES = [
|
|
38
|
-
{
|
|
39
|
-
name: 'category',
|
|
40
|
-
objectTypes: ['post'],
|
|
41
|
-
label: 'Categories',
|
|
42
|
-
labels: { singular: 'Category', plural: 'Categories' },
|
|
43
|
-
public: true,
|
|
44
|
-
hierarchical: true,
|
|
45
|
-
showInRest: true,
|
|
46
|
-
restBase: 'categories',
|
|
47
|
-
rewrite: { slug: 'category', withFront: true, hierarchical: true },
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
name: 'post_tag',
|
|
51
|
-
objectTypes: ['post'],
|
|
52
|
-
label: 'Tags',
|
|
53
|
-
labels: { singular: 'Tag', plural: 'Tags' },
|
|
54
|
-
public: true,
|
|
55
|
-
hierarchical: false,
|
|
56
|
-
showInRest: true,
|
|
57
|
-
restBase: 'tags',
|
|
58
|
-
rewrite: { slug: 'tag', withFront: true },
|
|
59
|
-
},
|
|
60
|
-
{
|
|
61
|
-
name: 'nav_menu',
|
|
62
|
-
objectTypes: ['nav_menu_item'],
|
|
63
|
-
label: 'Navigation Menus',
|
|
64
|
-
labels: { singular: 'Navigation Menu', plural: 'Navigation Menus' },
|
|
65
|
-
public: false,
|
|
66
|
-
hierarchical: false,
|
|
67
|
-
showInRest: false,
|
|
68
|
-
rewrite: false,
|
|
69
|
-
},
|
|
70
|
-
];
|
|
71
|
-
//# sourceMappingURL=taxonomy-registry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"taxonomy-registry.js","sourceRoot":"","sources":["../src/taxonomy-registry.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAO,gBAAgB;IACpB,UAAU,GAAoC,IAAI,GAAG,EAAE,CAAC;IAEhE,QAAQ,CAAC,UAA8B;QACtC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,aAAa,UAAU,CAAC,IAAI,0BAA0B,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAClD,CAAC;IAED,GAAG,CAAC,IAAY;QACf,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,GAAG,CAAC,IAAY;QACf,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,MAAM;QACL,OAAO,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,UAAkB;QAClC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED,UAAU,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;CACD;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAyB;IACvD;QACC,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,CAAC,MAAM,CAAC;QACrB,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE;QACtD,MAAM,EAAE,IAAI;QACZ,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,YAAY;QACtB,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;KAClE;IACD;QACC,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,CAAC,MAAM,CAAC;QACrB,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE;QAC3C,MAAM,EAAE,IAAI;QACZ,YAAY,EAAE,KAAK;QACnB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,MAAM;QAChB,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE;KACzC;IACD;QACC,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,CAAC,eAAe,CAAC;QAC9B,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,kBAAkB,EAAE;QACnE,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,KAAK;QACnB,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE,KAAK;KACd;CACD,CAAC"}
|
package/dist/types.d.ts
DELETED
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generic hook callback. Used for both actions and filters.
|
|
3
|
-
* Actions ignore the return value; filters chain it.
|
|
4
|
-
*/
|
|
5
|
-
export type HookCallback = (...args: any[]) => any;
|
|
6
|
-
/**
|
|
7
|
-
* A registered hook handler with its metadata.
|
|
8
|
-
*/
|
|
9
|
-
export interface HookHandler {
|
|
10
|
-
/** The callback function */
|
|
11
|
-
callback: HookCallback;
|
|
12
|
-
/** Execution priority (lower = earlier). Default: 10 */
|
|
13
|
-
priority: number;
|
|
14
|
-
/** Number of arguments the callback accepts */
|
|
15
|
-
acceptedArgs: number;
|
|
16
|
-
/** Unique identifier for this handler */
|
|
17
|
-
id: string;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Represents a hook currently being executed in the stack.
|
|
21
|
-
*/
|
|
22
|
-
export interface HookStackEntry {
|
|
23
|
-
/** The hook name being executed */
|
|
24
|
-
name: string;
|
|
25
|
-
/** Current iteration index within the priority groups */
|
|
26
|
-
currentIndex: number;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Options for adding a hook.
|
|
30
|
-
*/
|
|
31
|
-
export interface AddHookOptions {
|
|
32
|
-
/** Execution priority. Default: 10 */
|
|
33
|
-
priority?: number;
|
|
34
|
-
/** Number of arguments the callback accepts. Default: 1 */
|
|
35
|
-
acceptedArgs?: number;
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Result of checking if a hook has handlers.
|
|
39
|
-
* Returns false if no handlers, or the priority of the first matching handler.
|
|
40
|
-
*/
|
|
41
|
-
export type HasHookResult = false | number;
|
|
42
|
-
/**
|
|
43
|
-
* Registered post type definition.
|
|
44
|
-
*/
|
|
45
|
-
export interface PostTypeDefinition {
|
|
46
|
-
name: string;
|
|
47
|
-
label: string;
|
|
48
|
-
labels?: Record<string, string>;
|
|
49
|
-
public?: boolean;
|
|
50
|
-
hierarchical?: boolean;
|
|
51
|
-
showInRest?: boolean;
|
|
52
|
-
restBase?: string;
|
|
53
|
-
supports?: string[];
|
|
54
|
-
taxonomies?: string[];
|
|
55
|
-
hasArchive?: boolean;
|
|
56
|
-
rewrite?: {
|
|
57
|
-
slug: string;
|
|
58
|
-
withFront?: boolean;
|
|
59
|
-
} | false;
|
|
60
|
-
menuPosition?: number;
|
|
61
|
-
menuIcon?: string;
|
|
62
|
-
capability_type?: string;
|
|
63
|
-
capabilities?: Record<string, string>;
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Registered taxonomy definition.
|
|
67
|
-
*/
|
|
68
|
-
export interface TaxonomyDefinition {
|
|
69
|
-
name: string;
|
|
70
|
-
objectTypes: string[];
|
|
71
|
-
label: string;
|
|
72
|
-
labels?: Record<string, string>;
|
|
73
|
-
public?: boolean;
|
|
74
|
-
hierarchical?: boolean;
|
|
75
|
-
showInRest?: boolean;
|
|
76
|
-
restBase?: string;
|
|
77
|
-
rewrite?: {
|
|
78
|
-
slug: string;
|
|
79
|
-
withFront?: boolean;
|
|
80
|
-
hierarchical?: boolean;
|
|
81
|
-
} | false;
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* User capability check context.
|
|
85
|
-
*/
|
|
86
|
-
export interface CapabilityContext {
|
|
87
|
-
userId: number;
|
|
88
|
-
capability: string;
|
|
89
|
-
objectId?: number;
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Standard post statuses.
|
|
93
|
-
*/
|
|
94
|
-
export declare const POST_STATUS: {
|
|
95
|
-
readonly PUBLISH: "publish";
|
|
96
|
-
readonly DRAFT: "draft";
|
|
97
|
-
readonly PENDING: "pending";
|
|
98
|
-
readonly PRIVATE: "private";
|
|
99
|
-
readonly TRASH: "trash";
|
|
100
|
-
readonly AUTO_DRAFT: "auto-draft";
|
|
101
|
-
readonly INHERIT: "inherit";
|
|
102
|
-
readonly FUTURE: "future";
|
|
103
|
-
};
|
|
104
|
-
/**
|
|
105
|
-
* Default user roles.
|
|
106
|
-
*/
|
|
107
|
-
export declare const USER_ROLES: {
|
|
108
|
-
readonly ADMINISTRATOR: "administrator";
|
|
109
|
-
readonly EDITOR: "editor";
|
|
110
|
-
readonly AUTHOR: "author";
|
|
111
|
-
readonly CONTRIBUTOR: "contributor";
|
|
112
|
-
readonly SUBSCRIBER: "subscriber";
|
|
113
|
-
};
|
|
114
|
-
/**
|
|
115
|
-
* Default hook priorities.
|
|
116
|
-
*/
|
|
117
|
-
export declare const HOOK_PRIORITY: {
|
|
118
|
-
readonly EARLIEST: 1;
|
|
119
|
-
readonly EARLY: 5;
|
|
120
|
-
readonly DEFAULT: 10;
|
|
121
|
-
readonly LATE: 15;
|
|
122
|
-
readonly LATEST: 20;
|
|
123
|
-
};
|
|
124
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,4BAA4B;IAC5B,QAAQ,EAAE,YAAY,CAAC;IACvB,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,EAAE,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,KAAK,CAAC;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,KAAK,CAAC;CAChF;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;CASd,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;CAMb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;CAMhB,CAAC"}
|
package/dist/types.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Standard post statuses.
|
|
3
|
-
*/
|
|
4
|
-
export const POST_STATUS = {
|
|
5
|
-
PUBLISH: 'publish',
|
|
6
|
-
DRAFT: 'draft',
|
|
7
|
-
PENDING: 'pending',
|
|
8
|
-
PRIVATE: 'private',
|
|
9
|
-
TRASH: 'trash',
|
|
10
|
-
AUTO_DRAFT: 'auto-draft',
|
|
11
|
-
INHERIT: 'inherit',
|
|
12
|
-
FUTURE: 'future',
|
|
13
|
-
};
|
|
14
|
-
/**
|
|
15
|
-
* Default user roles.
|
|
16
|
-
*/
|
|
17
|
-
export const USER_ROLES = {
|
|
18
|
-
ADMINISTRATOR: 'administrator',
|
|
19
|
-
EDITOR: 'editor',
|
|
20
|
-
AUTHOR: 'author',
|
|
21
|
-
CONTRIBUTOR: 'contributor',
|
|
22
|
-
SUBSCRIBER: 'subscriber',
|
|
23
|
-
};
|
|
24
|
-
/**
|
|
25
|
-
* Default hook priorities.
|
|
26
|
-
*/
|
|
27
|
-
export const HOOK_PRIORITY = {
|
|
28
|
-
EARLIEST: 1,
|
|
29
|
-
EARLY: 5,
|
|
30
|
-
DEFAULT: 10,
|
|
31
|
-
LATE: 15,
|
|
32
|
-
LATEST: 20,
|
|
33
|
-
};
|
|
34
|
-
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA4FA;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IAC1B,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;CACP,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACzB,aAAa,EAAE,eAAe;IAC9B,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;CACf,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC5B,QAAQ,EAAE,CAAC;IACX,KAAK,EAAE,CAAC;IACR,OAAO,EAAE,EAAE;IACX,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE;CACD,CAAC"}
|