@kyro-cms/core 0.12.6 → 0.12.8

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.
Files changed (63) hide show
  1. package/dist/{WebhookService-Bpi6w1-6.d.ts → WebhookService-ByrpAI4d.d.ts} +1 -1
  2. package/dist/{WebhookService-D_a3FAU4.d.cts → WebhookService-i-Kl3dvf.d.cts} +1 -1
  3. package/dist/api-handler-graphql.cjs +1 -1
  4. package/dist/api-handler-graphql.js +1 -1
  5. package/dist/api-handler-trpc.cjs +1 -1
  6. package/dist/api-handler-trpc.js +1 -1
  7. package/dist/api-handler.cjs +1 -1
  8. package/dist/api-handler.js +1 -1
  9. package/dist/{base-Cpu841KI.d.cts → base-iyJTfH-3.d.cts} +2 -2
  10. package/dist/{base-PZTb6vi6.d.ts → base-oUSURe4_.d.ts} +2 -2
  11. package/dist/chunk-3RSMK4DA.cjs +2 -0
  12. package/dist/chunk-4JW6IVU5.js +86 -0
  13. package/dist/{chunk-K7HTTXT2.js → chunk-5B7GPMJI.js} +3 -3
  14. package/dist/{chunk-YQLXDL4H.cjs → chunk-EYUT6MOM.cjs} +3 -3
  15. package/dist/chunk-NTZACLOF.js +1 -0
  16. package/dist/chunk-NUUPBDZC.js +21 -0
  17. package/dist/chunk-OTFVOKH3.cjs +21 -0
  18. package/dist/chunk-PFHIBSOU.cjs +86 -0
  19. package/dist/chunk-QOCHBPMK.js +2 -0
  20. package/dist/{chunk-Z7HKM3HT.cjs → chunk-WHK4LW6V.cjs} +1 -1
  21. package/dist/client.cjs +1 -1
  22. package/dist/client.d.cts +2 -2
  23. package/dist/client.d.ts +2 -2
  24. package/dist/client.js +1 -1
  25. package/dist/drizzle/index.d.cts +3 -3
  26. package/dist/drizzle/index.d.ts +3 -3
  27. package/dist/fields/index.d.cts +2 -2
  28. package/dist/fields/index.d.ts +2 -2
  29. package/dist/graphql/index.d.cts +3 -3
  30. package/dist/graphql/index.d.ts +3 -3
  31. package/dist/{index-B7FXGWrZ.d.ts → index-DNy8jbA2.d.cts} +4 -4
  32. package/dist/{index-DfF-ofSa.d.cts → index-DVDMEql7.d.ts} +4 -4
  33. package/dist/index.cjs +14 -14
  34. package/dist/index.d.cts +12 -119
  35. package/dist/index.d.ts +12 -119
  36. package/dist/index.js +14 -14
  37. package/dist/mongodb/index.d.cts +3 -3
  38. package/dist/mongodb/index.d.ts +3 -3
  39. package/dist/redis-adapter-NN3H4GRX.js +1 -0
  40. package/dist/{redis-adapter-CQXIPG7W.cjs → redis-adapter-OUKQGYCH.cjs} +1 -1
  41. package/dist/rest/index.cjs +1 -1
  42. package/dist/rest/index.d.cts +4 -4
  43. package/dist/rest/index.d.ts +4 -4
  44. package/dist/rest/index.js +1 -1
  45. package/dist/templates/index.cjs +1 -1
  46. package/dist/templates/index.d.cts +3 -6
  47. package/dist/templates/index.d.ts +3 -6
  48. package/dist/templates/index.js +1 -1
  49. package/dist/trpc/index.d.cts +3 -3
  50. package/dist/trpc/index.d.ts +3 -3
  51. package/dist/{types-CbofW-fz.d.ts → types-BcZiluXL.d.cts} +115 -14
  52. package/dist/{types-DaWvY4Ho.d.cts → types-Dc8VAPhF.d.ts} +115 -14
  53. package/dist/{types-fvldOd92.d.cts → types-euTszc-1.d.cts} +1 -1
  54. package/dist/{types-fvldOd92.d.ts → types-euTszc-1.d.ts} +1 -1
  55. package/package.json +7 -2
  56. package/dist/chunk-AZNJI6TP.cjs +0 -86
  57. package/dist/chunk-GDOPX6VS.cjs +0 -21
  58. package/dist/chunk-KSWT2Q5T.js +0 -1
  59. package/dist/chunk-MRBBP5MU.cjs +0 -2
  60. package/dist/chunk-MXTO6XGD.js +0 -21
  61. package/dist/chunk-O7LK4FCW.js +0 -2
  62. package/dist/chunk-U3N4X3K3.js +0 -86
  63. package/dist/redis-adapter-L7BF3GQ5.js +0 -1
@@ -1,4 +1,4 @@
1
- import { F as Field } from './types-fvldOd92.js';
1
+ import { F as Field } from './types-euTszc-1.cjs';
2
2
 
3
3
  interface Request {
4
4
  body?: any;
@@ -62,6 +62,117 @@ interface GlobalHooks {
62
62
  declare function runHooks(hooks: Hook[], args: HookArgs): Promise<any>;
63
63
  declare function runFieldHooks(hooks: Hook[], args: HookArgs): Promise<any>;
64
64
 
65
+ interface PluginHooks {
66
+ beforeInit?: Hook[];
67
+ afterInit?: Hook[];
68
+ beforeRegisterCollections?: Hook[];
69
+ afterRegisterCollections?: Hook[];
70
+ beforeRegisterGlobals?: Hook[];
71
+ afterRegisterGlobals?: Hook[];
72
+ beforeServerStart?: Hook[];
73
+ afterServerStart?: Hook[];
74
+ beforeServerStop?: Hook[];
75
+ afterServerStop?: Hook[];
76
+ }
77
+ interface PluginCollectionExtension {
78
+ slug: string;
79
+ config: Partial<CollectionConfig>;
80
+ }
81
+ interface PluginGlobalExtension {
82
+ slug: string;
83
+ config: Partial<GlobalConfig>;
84
+ }
85
+ interface PluginFieldExtension {
86
+ collectionSlug: string;
87
+ field: Field;
88
+ }
89
+ interface PluginAPI {
90
+ registry: {
91
+ getCollection: (slug: string) => CollectionConfig | undefined;
92
+ getCollections: () => CollectionConfig[];
93
+ getGlobal: (slug: string) => GlobalConfig | undefined;
94
+ addCollection: (config: CollectionConfig) => void;
95
+ addGlobal: (config: GlobalConfig) => void;
96
+ extendCollection: (slug: string, extension: Partial<CollectionConfig>) => void;
97
+ extendGlobal: (slug: string, extension: Partial<GlobalConfig>) => void;
98
+ addField: (collectionSlug: string, field: Field, position?: number) => void;
99
+ };
100
+ hooks: {
101
+ register: (event: string, handler: Hook) => void;
102
+ unregister: (event: string, handler: Hook) => void;
103
+ };
104
+ config: {
105
+ get: (key: string) => any;
106
+ set: (key: string, value: any) => void;
107
+ };
108
+ db: any;
109
+ }
110
+ declare abstract class KyroPlugin {
111
+ name: string;
112
+ displayName?: string;
113
+ adminEntry?: string;
114
+ version?: string;
115
+ description?: string;
116
+ hooks: PluginHooks;
117
+ collections: Partial<CollectionConfig>[];
118
+ globals: Partial<GlobalConfig>[];
119
+ fields: PluginFieldExtension[];
120
+ extensions: {
121
+ collections: PluginCollectionExtension[];
122
+ globals: PluginGlobalExtension[];
123
+ };
124
+ adminComponents: Record<string, any>;
125
+ adminStyles: string[];
126
+ serverMiddleware?: (app: any) => void;
127
+ clientMiddleware?: (req: any) => any;
128
+ constructor(name: string);
129
+ init?(api: PluginAPI): Promise<void>;
130
+ beforeInit?(api: PluginAPI): Promise<void>;
131
+ afterInit?(api: PluginAPI): Promise<void>;
132
+ getCollections?(): Partial<CollectionConfig>[];
133
+ getGlobals?(): Partial<GlobalConfig>[];
134
+ getHooks?(): PluginHooks;
135
+ }
136
+ declare class PluginManager {
137
+ private plugins;
138
+ private hooks;
139
+ register(plugin: KyroPlugin): void;
140
+ unregister(name: string): void;
141
+ get(name: string): KyroPlugin | undefined;
142
+ getAll(): KyroPlugin[];
143
+ has(name: string): boolean;
144
+ registerHook(event: string, handler: Hook): void;
145
+ unregisterHook(event: string, handler: Hook): void;
146
+ executeHook(event: string, args?: any): Promise<any>;
147
+ getAllCollections(): Partial<CollectionConfig>[];
148
+ getAllGlobals(): Partial<GlobalConfig>[];
149
+ getAllFields(): PluginFieldExtension[];
150
+ getAdminComponents(): Record<string, any>;
151
+ getAdminStyles(): string[];
152
+ }
153
+ declare class SEOPlugin extends KyroPlugin {
154
+ constructor();
155
+ }
156
+ declare class AnalyticsPlugin extends KyroPlugin {
157
+ constructor();
158
+ }
159
+ declare class CommentsPlugin extends KyroPlugin {
160
+ constructor();
161
+ }
162
+ declare class ReviewsPlugin extends KyroPlugin {
163
+ constructor();
164
+ }
165
+ declare class WishlistPlugin extends KyroPlugin {
166
+ constructor();
167
+ }
168
+ declare const presetPlugins: {
169
+ SEO: typeof SEOPlugin;
170
+ Analytics: typeof AnalyticsPlugin;
171
+ Comments: typeof CommentsPlugin;
172
+ Reviews: typeof ReviewsPlugin;
173
+ Wishlist: typeof WishlistPlugin;
174
+ };
175
+
65
176
  interface WhereClause {
66
177
  [field: string]: any;
67
178
  }
@@ -114,6 +225,7 @@ interface AdminConfig {
114
225
  hideAPIURL?: boolean;
115
226
  group?: string;
116
227
  icon?: string;
228
+ order?: number;
117
229
  preview?: (doc: Record<string, unknown>, options: {
118
230
  req: unknown;
119
231
  token?: string;
@@ -396,22 +508,11 @@ interface AdapterConfig {
396
508
  schema?: any;
397
509
  connectionOptions?: Record<string, any>;
398
510
  }
399
- interface PluginConfig {
400
- name: string;
401
- version?: string;
402
- description?: string;
403
- init?: (kyro: any) => void | Promise<void>;
404
- extendCollection?: (slug: string, config: CollectionConfig) => CollectionConfig;
405
- extendGlobal?: (slug: string, config: GlobalConfig) => GlobalConfig;
406
- hooks?: CollectionHooks;
407
- fields?: Field[];
408
- api?: (kyro: any) => any;
409
- }
410
511
  interface KyroConfig {
411
512
  collections?: CollectionConfig[];
412
513
  globals?: GlobalConfig[];
413
514
  adapter: BaseAdapter;
414
- plugins?: PluginConfig[];
515
+ plugins?: KyroPlugin[];
415
516
  auth?: boolean | {
416
517
  secret?: string;
417
518
  tokenExpiration?: number;
@@ -465,4 +566,4 @@ interface KyroConfig {
465
566
  debug?: boolean;
466
567
  }
467
568
 
468
- export { type AdminConfig as A, type BaseAdapter as B, type CollectionConfig as C, type DeleteArgs as D, type FindArgs as F, type GlobalConfig as G, type Hook as H, type ImageSize as I, type KyroConfig as K, type PluginConfig as P, type Request as R, type TenantContext as T, type UploadConfig as U, type VersionConfig as V, type WhereClause as W, type AuthConfig as a, type FindResult as b, type FindByIDArgs as c, type CreateArgs as d, type UpdateArgs as e, type FindVersionsArgs as f, type VersionRecord as g, type CreateVersionArgs as h, type User as i, type AccessArgs as j, type AccessControl as k, type AdapterConfig as l, type CollectionAccess as m, type CollectionHooks as n, type CreateResult as o, type FieldAccess as p, type FieldHooks as q, type GlobalAccess as r, type GlobalHooks as s, type HookArgs as t, evaluateAccess as u, getWhereClause as v, mergeWhereClauses as w, runFieldHooks as x, runHooks as y };
569
+ export { type AdminConfig as A, type BaseAdapter as B, type CollectionConfig as C, type DeleteArgs as D, WishlistPlugin as E, type FindArgs as F, type GlobalConfig as G, type Hook as H, type ImageSize as I, evaluateAccess as J, type KyroConfig as K, getWhereClause as L, mergeWhereClauses as M, presetPlugins as N, runFieldHooks as O, PluginManager as P, runHooks as Q, type Request as R, SEOPlugin as S, type TenantContext as T, type UploadConfig as U, type VersionConfig as V, type WhereClause as W, type AuthConfig as a, type FindResult as b, type FindByIDArgs as c, type CreateArgs as d, type UpdateArgs as e, type FindVersionsArgs as f, type VersionRecord as g, type CreateVersionArgs as h, KyroPlugin as i, type User as j, type AccessArgs as k, type AccessControl as l, type AdapterConfig as m, AnalyticsPlugin as n, type CollectionAccess as o, type CollectionHooks as p, CommentsPlugin as q, type CreateResult as r, type FieldAccess as s, type FieldHooks as t, type GlobalAccess as u, type GlobalHooks as v, type HookArgs as w, type PluginAPI as x, type PluginHooks as y, ReviewsPlugin as z };
@@ -1,4 +1,4 @@
1
- import { F as Field } from './types-fvldOd92.cjs';
1
+ import { F as Field } from './types-euTszc-1.js';
2
2
 
3
3
  interface Request {
4
4
  body?: any;
@@ -62,6 +62,117 @@ interface GlobalHooks {
62
62
  declare function runHooks(hooks: Hook[], args: HookArgs): Promise<any>;
63
63
  declare function runFieldHooks(hooks: Hook[], args: HookArgs): Promise<any>;
64
64
 
65
+ interface PluginHooks {
66
+ beforeInit?: Hook[];
67
+ afterInit?: Hook[];
68
+ beforeRegisterCollections?: Hook[];
69
+ afterRegisterCollections?: Hook[];
70
+ beforeRegisterGlobals?: Hook[];
71
+ afterRegisterGlobals?: Hook[];
72
+ beforeServerStart?: Hook[];
73
+ afterServerStart?: Hook[];
74
+ beforeServerStop?: Hook[];
75
+ afterServerStop?: Hook[];
76
+ }
77
+ interface PluginCollectionExtension {
78
+ slug: string;
79
+ config: Partial<CollectionConfig>;
80
+ }
81
+ interface PluginGlobalExtension {
82
+ slug: string;
83
+ config: Partial<GlobalConfig>;
84
+ }
85
+ interface PluginFieldExtension {
86
+ collectionSlug: string;
87
+ field: Field;
88
+ }
89
+ interface PluginAPI {
90
+ registry: {
91
+ getCollection: (slug: string) => CollectionConfig | undefined;
92
+ getCollections: () => CollectionConfig[];
93
+ getGlobal: (slug: string) => GlobalConfig | undefined;
94
+ addCollection: (config: CollectionConfig) => void;
95
+ addGlobal: (config: GlobalConfig) => void;
96
+ extendCollection: (slug: string, extension: Partial<CollectionConfig>) => void;
97
+ extendGlobal: (slug: string, extension: Partial<GlobalConfig>) => void;
98
+ addField: (collectionSlug: string, field: Field, position?: number) => void;
99
+ };
100
+ hooks: {
101
+ register: (event: string, handler: Hook) => void;
102
+ unregister: (event: string, handler: Hook) => void;
103
+ };
104
+ config: {
105
+ get: (key: string) => any;
106
+ set: (key: string, value: any) => void;
107
+ };
108
+ db: any;
109
+ }
110
+ declare abstract class KyroPlugin {
111
+ name: string;
112
+ displayName?: string;
113
+ adminEntry?: string;
114
+ version?: string;
115
+ description?: string;
116
+ hooks: PluginHooks;
117
+ collections: Partial<CollectionConfig>[];
118
+ globals: Partial<GlobalConfig>[];
119
+ fields: PluginFieldExtension[];
120
+ extensions: {
121
+ collections: PluginCollectionExtension[];
122
+ globals: PluginGlobalExtension[];
123
+ };
124
+ adminComponents: Record<string, any>;
125
+ adminStyles: string[];
126
+ serverMiddleware?: (app: any) => void;
127
+ clientMiddleware?: (req: any) => any;
128
+ constructor(name: string);
129
+ init?(api: PluginAPI): Promise<void>;
130
+ beforeInit?(api: PluginAPI): Promise<void>;
131
+ afterInit?(api: PluginAPI): Promise<void>;
132
+ getCollections?(): Partial<CollectionConfig>[];
133
+ getGlobals?(): Partial<GlobalConfig>[];
134
+ getHooks?(): PluginHooks;
135
+ }
136
+ declare class PluginManager {
137
+ private plugins;
138
+ private hooks;
139
+ register(plugin: KyroPlugin): void;
140
+ unregister(name: string): void;
141
+ get(name: string): KyroPlugin | undefined;
142
+ getAll(): KyroPlugin[];
143
+ has(name: string): boolean;
144
+ registerHook(event: string, handler: Hook): void;
145
+ unregisterHook(event: string, handler: Hook): void;
146
+ executeHook(event: string, args?: any): Promise<any>;
147
+ getAllCollections(): Partial<CollectionConfig>[];
148
+ getAllGlobals(): Partial<GlobalConfig>[];
149
+ getAllFields(): PluginFieldExtension[];
150
+ getAdminComponents(): Record<string, any>;
151
+ getAdminStyles(): string[];
152
+ }
153
+ declare class SEOPlugin extends KyroPlugin {
154
+ constructor();
155
+ }
156
+ declare class AnalyticsPlugin extends KyroPlugin {
157
+ constructor();
158
+ }
159
+ declare class CommentsPlugin extends KyroPlugin {
160
+ constructor();
161
+ }
162
+ declare class ReviewsPlugin extends KyroPlugin {
163
+ constructor();
164
+ }
165
+ declare class WishlistPlugin extends KyroPlugin {
166
+ constructor();
167
+ }
168
+ declare const presetPlugins: {
169
+ SEO: typeof SEOPlugin;
170
+ Analytics: typeof AnalyticsPlugin;
171
+ Comments: typeof CommentsPlugin;
172
+ Reviews: typeof ReviewsPlugin;
173
+ Wishlist: typeof WishlistPlugin;
174
+ };
175
+
65
176
  interface WhereClause {
66
177
  [field: string]: any;
67
178
  }
@@ -114,6 +225,7 @@ interface AdminConfig {
114
225
  hideAPIURL?: boolean;
115
226
  group?: string;
116
227
  icon?: string;
228
+ order?: number;
117
229
  preview?: (doc: Record<string, unknown>, options: {
118
230
  req: unknown;
119
231
  token?: string;
@@ -396,22 +508,11 @@ interface AdapterConfig {
396
508
  schema?: any;
397
509
  connectionOptions?: Record<string, any>;
398
510
  }
399
- interface PluginConfig {
400
- name: string;
401
- version?: string;
402
- description?: string;
403
- init?: (kyro: any) => void | Promise<void>;
404
- extendCollection?: (slug: string, config: CollectionConfig) => CollectionConfig;
405
- extendGlobal?: (slug: string, config: GlobalConfig) => GlobalConfig;
406
- hooks?: CollectionHooks;
407
- fields?: Field[];
408
- api?: (kyro: any) => any;
409
- }
410
511
  interface KyroConfig {
411
512
  collections?: CollectionConfig[];
412
513
  globals?: GlobalConfig[];
413
514
  adapter: BaseAdapter;
414
- plugins?: PluginConfig[];
515
+ plugins?: KyroPlugin[];
415
516
  auth?: boolean | {
416
517
  secret?: string;
417
518
  tokenExpiration?: number;
@@ -465,4 +566,4 @@ interface KyroConfig {
465
566
  debug?: boolean;
466
567
  }
467
568
 
468
- export { type AdminConfig as A, type BaseAdapter as B, type CollectionConfig as C, type DeleteArgs as D, type FindArgs as F, type GlobalConfig as G, type Hook as H, type ImageSize as I, type KyroConfig as K, type PluginConfig as P, type Request as R, type TenantContext as T, type UploadConfig as U, type VersionConfig as V, type WhereClause as W, type AuthConfig as a, type FindResult as b, type FindByIDArgs as c, type CreateArgs as d, type UpdateArgs as e, type FindVersionsArgs as f, type VersionRecord as g, type CreateVersionArgs as h, type User as i, type AccessArgs as j, type AccessControl as k, type AdapterConfig as l, type CollectionAccess as m, type CollectionHooks as n, type CreateResult as o, type FieldAccess as p, type FieldHooks as q, type GlobalAccess as r, type GlobalHooks as s, type HookArgs as t, evaluateAccess as u, getWhereClause as v, mergeWhereClauses as w, runFieldHooks as x, runHooks as y };
569
+ export { type AdminConfig as A, type BaseAdapter as B, type CollectionConfig as C, type DeleteArgs as D, WishlistPlugin as E, type FindArgs as F, type GlobalConfig as G, type Hook as H, type ImageSize as I, evaluateAccess as J, type KyroConfig as K, getWhereClause as L, mergeWhereClauses as M, presetPlugins as N, runFieldHooks as O, PluginManager as P, runHooks as Q, type Request as R, SEOPlugin as S, type TenantContext as T, type UploadConfig as U, type VersionConfig as V, type WhereClause as W, type AuthConfig as a, type FindResult as b, type FindByIDArgs as c, type CreateArgs as d, type UpdateArgs as e, type FindVersionsArgs as f, type VersionRecord as g, type CreateVersionArgs as h, KyroPlugin as i, type User as j, type AccessArgs as k, type AccessControl as l, type AdapterConfig as m, AnalyticsPlugin as n, type CollectionAccess as o, type CollectionHooks as p, CommentsPlugin as q, type CreateResult as r, type FieldAccess as s, type FieldHooks as t, type GlobalAccess as u, type GlobalHooks as v, type HookArgs as w, type PluginAPI as x, type PluginHooks as y, ReviewsPlugin as z };
@@ -291,4 +291,4 @@ declare const LAYOUT_FIELD_TYPES: readonly ["row", "collapsible", "tabs"];
291
291
  declare const ALL_FIELD_TYPES: readonly ["text", "number", "checkbox", "date", "email", "password", "textarea", "select", "radio", "color", "icon", "richtext", "json", "code", "upload", "image", "markdown", "relationship", "array", "group", "blocks", "row", "collapsible", "tabs"];
292
292
  declare function createRelationshipFieldConfig(name: string, relationTo: string | string[], options?: Partial<Omit<RelationshipField, "type" | "name" | "relationTo">>): RelationshipField;
293
293
 
294
- export { isRelationshipField as $, type ArrayField as A, type BaseField as B, type CheckboxField as C, type DateField as D, type EmailField as E, type Field as F, type GroupField as G, type Hook as H, type ImageField as I, type JSONField as J, createRelationshipFieldConfig as K, LAYOUT_FIELD_TYPES as L, type MarkdownField as M, type NumberField as N, isArrayField as O, type PasswordField as P, isBlocksField as Q, type RadioField as R, type SecretField as S, type TabsField as T, type UploadField as U, type ValidateOptions as V, isGroupField as W, isIconField as X, isImageField as Y, isLayoutField as Z, isNumberField as _, type Block as a, isRichTextField as a0, isSelectField as a1, isTextField as a2, isUploadField as a3, type BlockAdmin as b, type BlockImage as c, type BlocksField as d, type CodeField as e, type CollapsibleField as f, type ColorField as g, type DeclarativeCondition as h, type FieldAdmin as i, type FieldType as j, type RelationshipField as k, type RichTextBlock as l, type RichTextField as m, type RowField as n, type SelectField as o, type TextField as p, type TextareaField as q, ALL_FIELD_TYPES as r, type ActionField as s, type ButtonField as t, COMPLEX_FIELD_TYPES as u, type IconField as v, type ListField as w, PRIMITIVE_FIELD_TYPES as x, RELATIONAL_FIELD_TYPES as y, type TextFieldVariant as z };
294
+ export { isRelationshipField as $, ALL_FIELD_TYPES as A, type BaseField as B, type CheckboxField as C, type DateField as D, type EmailField as E, type Field as F, type GroupField as G, type Hook as H, type IconField as I, type JSONField as J, createRelationshipFieldConfig as K, LAYOUT_FIELD_TYPES as L, type MarkdownField as M, type NumberField as N, isArrayField as O, type PasswordField as P, isBlocksField as Q, type RadioField as R, type SecretField as S, type TabsField as T, type UploadField as U, type ValidateOptions as V, isGroupField as W, isIconField as X, isImageField as Y, isLayoutField as Z, isNumberField as _, type ArrayField as a, isRichTextField as a0, isSelectField as a1, isTextField as a2, isUploadField as a3, type Block as b, type BlockAdmin as c, type BlockImage as d, type BlocksField as e, type CodeField as f, type CollapsibleField as g, type ColorField as h, type DeclarativeCondition as i, type FieldAdmin as j, type FieldType as k, type ImageField as l, type RelationshipField as m, type RichTextBlock as n, type RichTextField as o, type RowField as p, type SelectField as q, type TextField as r, type TextareaField as s, type ActionField as t, type ButtonField as u, COMPLEX_FIELD_TYPES as v, type ListField as w, PRIMITIVE_FIELD_TYPES as x, RELATIONAL_FIELD_TYPES as y, type TextFieldVariant as z };
@@ -291,4 +291,4 @@ declare const LAYOUT_FIELD_TYPES: readonly ["row", "collapsible", "tabs"];
291
291
  declare const ALL_FIELD_TYPES: readonly ["text", "number", "checkbox", "date", "email", "password", "textarea", "select", "radio", "color", "icon", "richtext", "json", "code", "upload", "image", "markdown", "relationship", "array", "group", "blocks", "row", "collapsible", "tabs"];
292
292
  declare function createRelationshipFieldConfig(name: string, relationTo: string | string[], options?: Partial<Omit<RelationshipField, "type" | "name" | "relationTo">>): RelationshipField;
293
293
 
294
- export { isRelationshipField as $, type ArrayField as A, type BaseField as B, type CheckboxField as C, type DateField as D, type EmailField as E, type Field as F, type GroupField as G, type Hook as H, type ImageField as I, type JSONField as J, createRelationshipFieldConfig as K, LAYOUT_FIELD_TYPES as L, type MarkdownField as M, type NumberField as N, isArrayField as O, type PasswordField as P, isBlocksField as Q, type RadioField as R, type SecretField as S, type TabsField as T, type UploadField as U, type ValidateOptions as V, isGroupField as W, isIconField as X, isImageField as Y, isLayoutField as Z, isNumberField as _, type Block as a, isRichTextField as a0, isSelectField as a1, isTextField as a2, isUploadField as a3, type BlockAdmin as b, type BlockImage as c, type BlocksField as d, type CodeField as e, type CollapsibleField as f, type ColorField as g, type DeclarativeCondition as h, type FieldAdmin as i, type FieldType as j, type RelationshipField as k, type RichTextBlock as l, type RichTextField as m, type RowField as n, type SelectField as o, type TextField as p, type TextareaField as q, ALL_FIELD_TYPES as r, type ActionField as s, type ButtonField as t, COMPLEX_FIELD_TYPES as u, type IconField as v, type ListField as w, PRIMITIVE_FIELD_TYPES as x, RELATIONAL_FIELD_TYPES as y, type TextFieldVariant as z };
294
+ export { isRelationshipField as $, ALL_FIELD_TYPES as A, type BaseField as B, type CheckboxField as C, type DateField as D, type EmailField as E, type Field as F, type GroupField as G, type Hook as H, type IconField as I, type JSONField as J, createRelationshipFieldConfig as K, LAYOUT_FIELD_TYPES as L, type MarkdownField as M, type NumberField as N, isArrayField as O, type PasswordField as P, isBlocksField as Q, type RadioField as R, type SecretField as S, type TabsField as T, type UploadField as U, type ValidateOptions as V, isGroupField as W, isIconField as X, isImageField as Y, isLayoutField as Z, isNumberField as _, type ArrayField as a, isRichTextField as a0, isSelectField as a1, isTextField as a2, isUploadField as a3, type Block as b, type BlockAdmin as c, type BlockImage as d, type BlocksField as e, type CodeField as f, type CollapsibleField as g, type ColorField as h, type DeclarativeCondition as i, type FieldAdmin as j, type FieldType as k, type ImageField as l, type RelationshipField as m, type RichTextBlock as n, type RichTextField as o, type RowField as p, type SelectField as q, type TextField as r, type TextareaField as s, type ActionField as t, type ButtonField as u, COMPLEX_FIELD_TYPES as v, type ListField as w, PRIMITIVE_FIELD_TYPES as x, RELATIONAL_FIELD_TYPES as y, type TextFieldVariant as z };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kyro-cms/core",
3
- "version": "0.12.6",
3
+ "version": "0.12.8",
4
4
  "description": "Astro-native headless CMS with multi-database adapters, multi-protocol APIs, and multi-vendor support",
5
5
  "engines": {
6
6
  "node": ">=22"
@@ -165,8 +165,11 @@
165
165
  },
166
166
  "homepage": "https://github.com/danielDozie/kyro-cms#readme",
167
167
  "dependencies": {
168
+ "@ai-sdk/groq": "^4.0.12",
169
+ "@ai-sdk/openai": "^0.0.14",
168
170
  "@aws-sdk/client-s3": "^3.751.0",
169
171
  "@aws-sdk/s3-request-presigner": "^3.751.0",
172
+ "@kyro-cms/ai": "^0.1.2",
170
173
  "@smithy/node-http-handler": "^4.7.0",
171
174
  "@tiptap/core": "^3.23.6",
172
175
  "@tiptap/extension-color": "^3.23.6",
@@ -211,12 +214,14 @@
211
214
  "@types/jsonwebtoken": "^9.0.9",
212
215
  "@types/node": "^22.13.0",
213
216
  "@types/nodemailer": "^7.0.11",
217
+ "@types/react": "^19.2.17",
214
218
  "@types/ssh2-sftp-client": "^9.0.6",
215
219
  "@types/ws": "^8.18.1",
216
220
  "@typescript-eslint/parser": "^8.59.1",
217
221
  "drizzle-kit": "^0.31.10",
218
222
  "eslint": "^9.20.0",
219
223
  "prettier": "^3.5.0",
224
+ "react": "^19.2.7",
220
225
  "tsup": "^8.5.1",
221
226
  "typescript": "^5.7.3",
222
227
  "typescript-eslint": "^8.59.1",
@@ -231,7 +236,7 @@
231
236
  }
232
237
  },
233
238
  "peerDependencies": {
234
- "astro": "^6.3.1",
239
+ "astro": "^7.1.1",
235
240
  "ioredis": "^5.10.1",
236
241
  "mongodb": "^6.12.0",
237
242
  "ssh2": "^1.17.0",