@praxisui/page-builder 10.0.0-rc.19 → 10.0.0-rc.20

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/README.md CHANGED
@@ -135,7 +135,7 @@ order, with natural content height. It replaces positions and width bounds only
135
135
  that device, preserves hidden widgets and other overrides, and leaves the base and
136
136
  other device layouts unchanged. Apply/Save materializes the existing
137
137
  `deviceLayouts[device].canvas` contract; Reset restores the original draft.
138
- Advanced JSON overrides remain available under **Advanced overrides**.
138
+ Advanced JSON overrides remain available under **Advanced overrides** (`widgetOverrides`) and strictly validate the canonical `WidgetPageWidgetLayoutOverride` keys (`className`, `span`, `order`, `hidden`), diagnosing and rejecting unsupported properties such as `definition` or `inputs` without discarding the user's draft text.
139
139
 
140
140
  Reducing a device's column count also reflows inherited base positions in Core.
141
141
  Explicit device positions remain authoritative. With no device variant the base
@@ -161,7 +161,7 @@ documents already clamped by Core remain valid on opening: declared spans need
161
161
  not equal rendered spans. Invalid inherited bounds can be corrected in the same
162
162
  draft. The editor does not rewrite geometry to satisfy newly authored bounds.
163
163
  Dynamic title expressions are
164
- identified by stable widget key, not evaluated in the editor.
164
+ identified by stable widget key and resolved friendly widget titles (from static shell metadata or inner widget titles), not evaluated in the editor.
165
165
 
166
166
  Apply previews the same document returned by Save; Reset reloads the input baseline.
167
167
  Pending changes are tracked independently of validity, including edits to an
@@ -183,7 +183,7 @@ Page, the editor receives transient runtime validation through `SETTINGS_PANEL_D
183
183
  Apply/Save and reopen check the current active-device geometry and report the minimum
184
184
  beside the height field. The callback and observed dimensions never enter the document.
185
185
  Changed columns, gap, width or shell styling require Automatic height, Apply, then
186
- reopening before choosing a measured height. Other device variants must be checked
186
+ reopening before choosing a measured height. When switching a visual template (`themePreset` / `layoutPreset`) triggers rendered-height validation blocks on widgets with adjustable heights, the editor surfaces an actionable banner across Studio tabs listing all affected widgets with their friendly names and current pixel heights, offering direct navigation to **Widget limits** or a one-click conversion to **Automatic** height that preserves a summary of the previous pixel measurements for review. Other device variants must be checked
187
187
  on their corresponding device. Standalone/custom hosts without this runtime context
188
188
  retain numeric validation only. Core's scroll-layout shell now recovers access after
189
189
  late header/content growth by temporarily scrolling the header and body together
@@ -202,8 +202,8 @@ not an OpenAI dependency for manual interaction.
202
202
 
203
203
  Both `PageConfigEditorComponent` and `DynamicPageConfigEditorComponent` preserve and edit `page.dataSources` inside **Page settings → State**:
204
204
 
205
- - `PageConfigEditorComponent` offers guided DataSource cards (`id`, `kind`, `endpointKey`, `resourcePath`, `method`, `targetStatePath`, `errorPolicy`, `refreshIntervalMs`, `autoFetch`, `query`, `transform`, `fallbackValue`, `description`) synchronized with an advanced JSON editor.
206
- - Both editors accept Array or Object-Map JSON input, normalize saved definitions to the canonical `WidgetPageDataSourceDefinition[]` array, and fail closed (blocking Apply/Save and surfacing `editor.errors.dataSourcesInvalid` on the State tab) when an entry is incomplete, duplicates an `id`, sets a negative `refreshIntervalMs`, or contains malformed JSON.
205
+ - Both `PageConfigEditorComponent` and `DynamicPageConfigEditorComponent` offer guided DataSource cards (`id`, `kind`, `endpointKey`, `resourcePath`, `method`, `targetStatePath`, `errorPolicy`, `refreshIntervalMs`, `autoFetch`, `query`, `transform`, `fallbackValue`, `description`) synchronized bidirectionally with the advanced JSON editor (`[data-testid="page-datasources-json"]`).
206
+ - Both editors accept Array or Object-Map JSON input, normalize saved definitions to the canonical `WidgetPageDataSourceDefinition[]` array, and enforce symmetric validation across guided and raw JSON authoring—failing closed (blocking Apply/Save and surfacing `editor.errors.dataSourcesInvalid` on the State tab) when an entry is missing `id` or `resourcePath`, duplicates a normalized `id`, sets an unsupported `kind`/`method`/`errorPolicy`, sets a negative or non-finite `refreshIntervalMs`, passes a non-object `query`, declares an incomplete `transform` (`path`, `group-by-map`, `timeseries-last`), or contains malformed JSON.
207
207
 
208
208
  ## LLM Recommendation Guide
209
209
 
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": "1.0.0",
3
- "generatedAt": "2026-10-15T00:20:34.117Z",
3
+ "generatedAt": "2026-10-15T03:52:00.118Z",
4
4
  "packageName": "@praxisui/page-builder",
5
- "packageVersion": "10.0.0-rc.19",
5
+ "packageVersion": "10.0.0-rc.20",
6
6
  "sourceRegistry": "praxis-component-registry-ingestion",
7
7
  "sourceRegistryVersion": "1.0.0",
8
8
  "componentCount": 1,