@byline/core 1.8.2 → 1.9.1

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.
@@ -6,7 +6,7 @@
6
6
  * Copyright (c) Infonomic Company Limited
7
7
  */
8
8
  import type { CollectionDefinition, WorkflowStatus } from './collection-types.js';
9
- import type { FieldComponentSlots } from './field-types.js';
9
+ import type { FieldComponentSlots, RichTextEditorComponent } from './field-types.js';
10
10
  /**
11
11
  * Props passed to a custom list-view component registered via
12
12
  * `CollectionAdminConfig.listView`.
@@ -135,6 +135,21 @@ export interface FieldAdminConfig {
135
135
  * @see FieldComponentSlots
136
136
  */
137
137
  components?: FieldComponentSlots;
138
+ /**
139
+ * Per-field rich-text editor component override. When set on a
140
+ * `type: 'richText'` field's admin entry, the framework renders this
141
+ * component instead of the globally registered
142
+ * `ClientConfig.fields.richText.editor`. Use to opt one specific field
143
+ * into an alternate editor (e.g. an AI-enabled wrapper around the
144
+ * default Lexical field) without changing the site-wide registration.
145
+ *
146
+ * Lives on the admin side rather than the schema side because it
147
+ * carries a React component reference, and schemas must remain
148
+ * tsx-loadable for seeds and the server bootstrap.
149
+ *
150
+ * Ignored for non-`richText` fields.
151
+ */
152
+ editor?: RichTextEditorComponent;
138
153
  }
139
154
  /**
140
155
  * Minimal document shape passed to `CollectionAdminConfig.preview.url`.
@@ -260,6 +260,11 @@ export interface RichTextField extends LocalizableField {
260
260
  * each editor adapter defines what it accepts. For `@byline/richtext-lexical`
261
261
  * this is its `EditorConfig`. Per-field config takes precedence over any
262
262
  * baked-in config supplied at registration via `lexicalEditor()`.
263
+ *
264
+ * This is **data**, not React — schemas stay tsx-loadable for seeds
265
+ * and the server bootstrap. To swap the rendered editor *component*
266
+ * for a single field, use the admin-side lever:
267
+ * `CollectionAdminConfig.fields.<name>.editor` (see admin-types).
263
268
  */
264
269
  editorConfig?: unknown;
265
270
  /**
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@byline/core",
3
3
  "private": false,
4
4
  "license": "MPL-2.0",
5
- "version": "1.8.2",
5
+ "version": "1.9.1",
6
6
  "engines": {
7
7
  "node": ">=20.9.0"
8
8
  },
@@ -79,7 +79,7 @@
79
79
  "sharp": "^0.34.5",
80
80
  "uuid": "^14.0.0",
81
81
  "zod": "^4.4.2",
82
- "@byline/auth": "1.8.2"
82
+ "@byline/auth": "1.9.1"
83
83
  },
84
84
  "devDependencies": {
85
85
  "@biomejs/biome": "2.4.14",