From 660234d2720daa23c53300e0bf6798e40790819b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 8 Jul 2026 17:40:43 +0000 Subject: [PATCH] chore: release packages --- .changeset/authz-posture-perops-lint-ux.md | 37 ------ ...hboard-currency-and-studio-design-entry.md | 7 -- .changeset/detail-section-hooks-order.md | 7 -- ...form-validation-i18n-and-dark-date-icon.md | 13 --- ...config-panels-validations-hooks-actions.md | 13 --- .changeset/platform-preview-badge.md | 15 --- .../record-drill-in-breadcrumb-trail.md | 11 -- .changeset/record-header-action-order.md | 11 -- .../studio-bridge-page-report-surfaces.md | 7 -- ...studio-form-designer-responsive-columns.md | 10 -- .changeset/studio-source-tab-menu-deeplink.md | 7 -- apps/console/CHANGELOG.md | 7 ++ apps/console/package.json | 2 +- packages/app-shell/CHANGELOG.md | 110 ++++++++++++++++++ packages/app-shell/package.json | 2 +- packages/auth/CHANGELOG.md | 7 ++ packages/auth/package.json | 2 +- packages/cli/CHANGELOG.md | 10 ++ packages/cli/package.json | 2 +- packages/collaboration/CHANGELOG.md | 7 ++ packages/collaboration/package.json | 2 +- packages/components/CHANGELOG.md | 30 +++++ packages/components/package.json | 2 +- packages/core/CHANGELOG.md | 7 ++ packages/core/package.json | 2 +- packages/create-plugin/CHANGELOG.md | 2 + packages/create-plugin/package.json | 2 +- packages/data-objectstack/CHANGELOG.md | 8 ++ packages/data-objectstack/package.json | 2 +- packages/fields/CHANGELOG.md | 22 ++++ packages/fields/package.json | 2 +- packages/i18n/CHANGELOG.md | 25 ++++ packages/i18n/package.json | 2 +- packages/layout/CHANGELOG.md | 11 ++ packages/layout/package.json | 2 +- packages/mobile/CHANGELOG.md | 7 ++ packages/mobile/package.json | 2 +- packages/permissions/CHANGELOG.md | 7 ++ packages/permissions/package.json | 2 +- packages/plugin-ai/CHANGELOG.md | 11 ++ packages/plugin-ai/package.json | 2 +- packages/plugin-calendar/CHANGELOG.md | 17 +++ packages/plugin-calendar/package.json | 2 +- packages/plugin-charts/CHANGELOG.md | 13 +++ packages/plugin-charts/package.json | 2 +- packages/plugin-chatbot/CHANGELOG.md | 11 ++ packages/plugin-chatbot/package.json | 2 +- packages/plugin-dashboard/CHANGELOG.md | 14 +++ packages/plugin-dashboard/package.json | 2 +- packages/plugin-designer/CHANGELOG.md | 18 +++ packages/plugin-designer/package.json | 2 +- packages/plugin-detail/CHANGELOG.md | 12 ++ packages/plugin-detail/package.json | 2 +- packages/plugin-editor/CHANGELOG.md | 11 ++ packages/plugin-editor/package.json | 2 +- packages/plugin-form/CHANGELOG.md | 21 ++++ packages/plugin-form/package.json | 2 +- packages/plugin-gantt/CHANGELOG.md | 16 +++ packages/plugin-gantt/package.json | 2 +- packages/plugin-grid/CHANGELOG.md | 15 +++ packages/plugin-grid/package.json | 2 +- packages/plugin-kanban/CHANGELOG.md | 16 +++ packages/plugin-kanban/package.json | 2 +- packages/plugin-list/CHANGELOG.md | 2 + packages/plugin-list/package.json | 2 +- packages/plugin-map/CHANGELOG.md | 11 ++ packages/plugin-map/package.json | 2 +- packages/plugin-markdown/CHANGELOG.md | 11 ++ packages/plugin-markdown/package.json | 2 +- packages/plugin-report/CHANGELOG.md | 15 +++ packages/plugin-report/package.json | 2 +- packages/plugin-timeline/CHANGELOG.md | 12 ++ packages/plugin-timeline/package.json | 2 +- packages/plugin-tree/CHANGELOG.md | 11 ++ packages/plugin-tree/package.json | 2 +- packages/plugin-view/CHANGELOG.md | 16 +++ packages/plugin-view/package.json | 2 +- packages/providers/CHANGELOG.md | 7 ++ packages/providers/package.json | 2 +- packages/react-runtime/CHANGELOG.md | 2 + packages/react-runtime/package.json | 2 +- packages/react/CHANGELOG.md | 12 ++ packages/react/package.json | 2 +- packages/runner/CHANGELOG.md | 13 +++ packages/runner/package.json | 2 +- packages/sdui-parser/CHANGELOG.md | 2 + packages/sdui-parser/package.json | 2 +- packages/tenant/CHANGELOG.md | 7 ++ packages/tenant/package.json | 2 +- packages/types/CHANGELOG.md | 10 ++ packages/types/package.json | 2 +- packages/vscode-extension/CHANGELOG.md | 8 ++ packages/vscode-extension/package.json | 2 +- 93 files changed, 615 insertions(+), 179 deletions(-) delete mode 100644 .changeset/authz-posture-perops-lint-ux.md delete mode 100644 .changeset/dashboard-currency-and-studio-design-entry.md delete mode 100644 .changeset/detail-section-hooks-order.md delete mode 100644 .changeset/form-validation-i18n-and-dark-date-icon.md delete mode 100644 .changeset/object-config-panels-validations-hooks-actions.md delete mode 100644 .changeset/platform-preview-badge.md delete mode 100644 .changeset/record-drill-in-breadcrumb-trail.md delete mode 100644 .changeset/record-header-action-order.md delete mode 100644 .changeset/studio-bridge-page-report-surfaces.md delete mode 100644 .changeset/studio-form-designer-responsive-columns.md delete mode 100644 .changeset/studio-source-tab-menu-deeplink.md diff --git a/.changeset/authz-posture-perops-lint-ux.md b/.changeset/authz-posture-perops-lint-ux.md deleted file mode 100644 index 85606000a..000000000 --- a/.changeset/authz-posture-perops-lint-ux.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -'@object-ui/app-shell': minor ---- - -Authorization authoring UX — surface the ADR-0066 security primitives the -framework now enforces (④ secure-by-default posture, ⑤ per-operation -requiredPermissions, ⑨ capability-reference lint). - -**Access matrix — private-posture badge (④).** `PermissionMatrixEditor` object -rows now show an amber **Private** badge when the object declares -`access: { default: 'private' }`, with a tooltip explaining that a permission -set's `'*'` wildcard grant does NOT cover the object — without this, an admin -reading the matrix would assume a wildcard set reaches it while the server -403s. The object catalog mapping threads `access.default` through -(`ObjectSummary.accessDefault`). - -**Object designer — Access section (④ + ⑤).** `ObjectDefaultInspector` (shared -by metadata-admin and the Studio Data-pillar settings tab) gains an "Access" -section: an exposure-posture select (`public`/`private`, with a warning hint -that a private object needs an explicit grant before anyone but platform -admins can use it), and a "Required capabilities" editor for the object-level -`requiredPermissions` AND-gate. The capability editor supports both shapes — -`string[]` (all operations) and the per-operation `{read,create,update,delete}` -map — with a mode toggle that converts losslessly (all→per-op copies the list -into every operation; per-op→all unions). The per-operation toggle is -**feature-detected** against the bundled `@objectstack/spec` (it needs the ⑤ -union, spec ≥ 12.7) so the UI never offers a shape client-side validation -would reject; map-form drafts always render per-operation inputs. - -**Publish — capability-reference lint (⑨).** `usePublishAllDrafts` now runs -`validateCapabilityReferences` from `@objectstack/lint` over the pending -object/app/action drafts (declaration side = published permission sets ∪ -pending permission drafts) and surfaces "capability registered nowhere" -warnings as a post-publish toast. Strictly advisory and fail-safe: the rule is -feature-detected (no-op until the lint dependency ships it), and any -client/import/rule failure is swallowed — the lint can never break or block -publishing. diff --git a/.changeset/dashboard-currency-and-studio-design-entry.md b/.changeset/dashboard-currency-and-studio-design-entry.md deleted file mode 100644 index 132de1aed..000000000 --- a/.changeset/dashboard-currency-and-studio-design-entry.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@object-ui/app-shell': minor ---- - -Dashboard authoring moves entirely into Studio. - -The in-page dashboard **Edit** button and its inline `DashboardConfigPanel` were removed — `DashboardView` is now a pure viewer, so authoring lives in one place: Studio's Interfaces pillar. The top bar's "Design in Studio" icon is now context-aware — on a dashboard route it deep-links straight to that dashboard's design page (`/studio/:packageId/interfaces?surface=dashboard:`) via the new `appStudioSurfacePath` helper, falling back to the package's Data tab elsewhere. diff --git a/.changeset/detail-section-hooks-order.md b/.changeset/detail-section-hooks-order.md deleted file mode 100644 index 31371599d..000000000 --- a/.changeset/detail-section-hooks-order.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@object-ui/plugin-detail': patch ---- - -Fix a React #300 crash when drilling from a master record into a related child record. - -`DetailSection` placed its all-empty `return null` guard *before* the virtual-scroll `useEffect`, so a section that rendered all-empty on one pass (effect skipped) and populated on the next (effect runs) changed its hook count between renders of the same reconciled fiber — React threw error #300 ("rendered more hooks than during the previous render"). This reliably tripped on the master-detail drill-in (e.g. Account → Project), showing an error boundary and bouncing the user away on refresh. The all-empty guard now runs after every hook, making the hook count invariant. diff --git a/.changeset/form-validation-i18n-and-dark-date-icon.md b/.changeset/form-validation-i18n-and-dark-date-icon.md deleted file mode 100644 index 4d4350fbe..000000000 --- a/.changeset/form-validation-i18n-and-dark-date-icon.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -'@object-ui/components': patch -'@object-ui/fields': patch -'@object-ui/i18n': patch ---- - -Localize form validation messages, toast client-side validation failures, and make native date/time picker icons legible in dark mode. - -Record-form validation messages (required, min/max length, min/max value, pattern, email, URL) were hard-coded English even when the field label was localized — e.g. a Chinese "计划开始日期" field showed "计划开始日期 is required". `buildValidationRules` baked English strings, so the form renderer's `t(...)` fallback never applied. It now emits `required: true` and, for the other rules, a `messageKey` + `undefined` message (a field-authored `*_message` still wins and passes through verbatim); the form renderer fills the blanks via i18n (`validation.*` keys already exist in every locale), so messages track the label's language. - -When client-side validation blocks a submit, the offending field's inline error can sit below the fold in a long modal/drawer form — the user clicks 创建 and sees nothing happen. The form renderer now also fires a `toast.error` naming the fields (`validation.formInvalid`, added to all 10 locales), mirroring the existing server-error toast so the feedback is visible regardless of scroll position. - -Separately, native controls now declare `color-scheme` (`light` on `:root`, `dark` on `.dark`), so the webkit calendar-picker-indicator and other built-in glyphs render light-on-dark instead of vanishing against the dark input background. diff --git a/.changeset/object-config-panels-validations-hooks-actions.md b/.changeset/object-config-panels-validations-hooks-actions.md deleted file mode 100644 index 30a395df1..000000000 --- a/.changeset/object-config-panels-validations-hooks-actions.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -'@object-ui/app-shell': minor ---- - -Studio Data tab: metadata-driven config panels for Validations, Hooks and Actions (with add). - -The object **Validations**, **Hooks** and **Actions** sub-tabs are now no-code config panels driven by the corresponding metadata, each able to **create** new entries: - -- **Validations** — the panel covers every spec rule type, not just `script`: `cross_field`, `state_machine`, `format`, `json_schema` and `conditional` are all authorable (previously they were read-only "maintain in code"). The **New** menu adds any type seeded with a valid, never-firing skeleton, and a rule's type can be switched in place; CEL predicates reuse the shared `ConditionBuilder`. -- **Hooks** — a new curated `HookDefaultInspector` replaces the flat generic form: the target object is an **object picker** (multi-select + `*`, not a free-text box), lifecycle events are grouped checkboxes, and the handler is a **dedicated code editor** (language + body). Advanced props fall through to a `SchemaForm` fed the live `hook` JSONSchema from `/meta/types`. -- **Actions** — the `ActionDefaultInspector` now receives the live `action` JSONSchema as `serverSchema`, so its "More fields" section can edit any spec property not curated above (nothing is un-editable). - -`DataPillar` resolves the per-type schemas once (via `useMetadataTypes`) and passes them down. diff --git a/.changeset/platform-preview-badge.md b/.changeset/platform-preview-badge.md deleted file mode 100644 index 1c6477f87..000000000 --- a/.changeset/platform-preview-badge.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -'@object-ui/app-shell': minor -'@object-ui/i18n': minor ---- - -Signal the platform's preview stage in the UI. - -The console top bar (`AppHeader`) now shows a small **Preview** chip next to the -product wordmark on every surface (home / app / orgs), so users always know the -whole platform is pre-GA. It's a new `PreviewBadge` component driven by a -`branding.stage` field in runtime-config (`'preview' | 'beta' | 'ga'`, exposed -via `getPlatformStage()`), which defaults to `'preview'` so the badge shows out -of the box. Operators flip the stage to `'ga'` at launch (`OS_PRODUCT_STAGE` / -`RuntimeConfigPlugin`) and the badge disappears with no code change; `'beta'` -renders a "Beta" chip instead. Labels are localized under `topbar.stage.*`. diff --git a/.changeset/record-drill-in-breadcrumb-trail.md b/.changeset/record-drill-in-breadcrumb-trail.md deleted file mode 100644 index 35390d643..000000000 --- a/.changeset/record-drill-in-breadcrumb-trail.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'@object-ui/app-shell': minor ---- - -Keep a clickable path back when drilling from a record into a related child record (objectui "点击子表标题跳转后如何返回"). - -Clicking a related sub-table row opens the child record's detail page, but that page dropped all trace of where you came from: its breadcrumb only led to the child object's *list* (never the parent record), and the record body's built-in Back button is suppressed on the schema-rendered surface. From a related-list drill-in the only way back was the browser Back button. - -- **New reserved `?from=` URL param carries the ancestor trail.** When you open a related record (both the synth `RelatedRecordActionsBridge.onView` path and the legacy `RecordDetailView` `onRowClick` path), the parent record is appended to a compact, refresh- and share-safe trail encoded in the URL. Nested drill-ins accumulate (`Account → Invoice → Invoice Line`); depth is capped at 8 and titles truncated so the URL can't grow unbounded, and a trailing self-reference is deduped. Codec (`encodeRecordTrail`/`decodeRecordTrail`/`appendRecordTrail`/`buildRecordTrailHref`) is total — a malformed value yields no ancestor crumbs rather than throwing. -- **The top-bar breadcrumb renders the trail as clickable segments.** A record route with a `?from=` trail now shows `Account → #parent → Invoice → #child`, each ancestor an `object-list → record` pair that links back, with mid-path crumbs preserving the ancestors above them. -- **The record body shows an inline "← back to parent" link** derived from the trail's nearest ancestor, so the immediate-parent affordance survives refresh and shared links (previously it relied on in-session history state that nothing populated for this flow). diff --git a/.changeset/record-header-action-order.md b/.changeset/record-header-action-order.md deleted file mode 100644 index 59bd014e0..000000000 --- a/.changeset/record-header-action-order.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'@object-ui/types': minor -'@object-ui/components': minor -'@object-ui/app-shell': minor ---- - -Record-header actions honour `Action.order`, so approval decisions no longer get buried in the `⋯` overflow menu (objectui#2339 / framework#2670). - -The `action:bar` renderer now stable-sorts its actions by an explicit **`order`** field (lower = higher / more prominent, default `0`) before the inline/overflow split. The sort is stable and treats unset `order` as `0`, so action groups where nobody sets `order` keep their exact registration order — existing toolbars are unaffected. `order` is added to `ActionSchema` in `@object-ui/types`, mirroring `Action.order` in `@objectstack/spec`. - -`RecordDetailView` now assigns the injected **Approve / Reject** decision buttons a strongly-negative `order` (and gives Approve the highlighted `primary` variant), so on a pending-approval record the approver's decision takes the primary-button slot and app `record_header` actions follow it — instead of the app having to hide its own actions to surface the decision. diff --git a/.changeset/studio-bridge-page-report-surfaces.md b/.changeset/studio-bridge-page-report-surfaces.md deleted file mode 100644 index 94ddf246e..000000000 --- a/.changeset/studio-bridge-page-report-surfaces.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@object-ui/app-shell': minor ---- - -The top bar's "Design in Studio" bridge now deep-links pages and reports, not just dashboards. - -Previously only a **dashboard** route deep-linked to its design page in Studio's Interfaces pillar; a **page** or **report** route fell back to the package's generic Data tab, dropping the admin far from the surface they were viewing. The route-type → surface-type mapping now covers all three interface types (`dashboard` / `page` / `report`) via the new `appStudioRoutePath` helper, so e.g. viewing `/apps/:pkg/page/showcase_crm_workbench` and clicking the hammer opens `/studio/:packageId/interfaces?surface=page:showcase_crm_workbench`. Object routes and the app root still open the Data tab. diff --git a/.changeset/studio-form-designer-responsive-columns.md b/.changeset/studio-form-designer-responsive-columns.md deleted file mode 100644 index 4264bce28..000000000 --- a/.changeset/studio-form-designer-responsive-columns.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@object-ui/app-shell': patch -'@object-ui/plugin-form': patch ---- - -Studio form designer + preview now match the runtime form's column density. - -The Data pillar's **Form → Layout** designer laid every section out in a fixed 2-column grid capped at `max-w-3xl`, and **Form → Preview** capped the real `ObjectForm` at `max-w-2xl`. So on a wide screen the studio showed at most 2 columns while the record the end user actually edits spreads to up to 4 — the design surface misrepresented the real layout. - -`ObjectFormDesigner` now derives its column count the same way the runtime form does (`inferColumns` over the object's editable field count, objectui#2578) and lays each section out with the shared container-query grid classes (`containerGridColsFor`) inside a per-section `@container`, so a field-heavy object reaches 4 fields per row on wide screens and collapses to one column when the panel is narrow. Wide widgets (textarea/markdown/html/…) span the full row, mirroring the form. Both the layout and preview canvases were widened to `max-w-6xl` so the container queries can actually reach 4 columns. `containerGridColsFor` is now exported from `@object-ui/plugin-form` as the single source of truth for these grid classes. diff --git a/.changeset/studio-source-tab-menu-deeplink.md b/.changeset/studio-source-tab-menu-deeplink.md deleted file mode 100644 index 75e816922..000000000 --- a/.changeset/studio-source-tab-menu-deeplink.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@object-ui/app-shell': minor ---- - -Studio Interfaces: move the source-page code editor into a "Source" inspector tab, silence its bogus TypeScript errors, and deep-link menu selection. - -For `kind:'html'`/`kind:'react'` pages (a `source` string, not a block tree), the code editor now lives in a dedicated **Source** tab in the right-hand properties panel while the canvas shows only the live preview; edits flow through the shared draft so the preview stays in sync. The `SourcePageEditor` gains a `mode` prop (`split` | `editor` | `preview`) to render the halves independently, and a `beforeMount` hook disables the Monaco TypeScript worker's semantic/syntax validation (and configures JSX) so JSX-flavoured HTML — intrinsic tags like ``, no `import React`, `style={{…}}` object literals — no longer floods the gutter with meaningless red squiggles (the live preview and server-side validation remain the source of truth). Selecting a menu now records the open surface as `?surface=:`, so the design target is shareable and survives a reload instead of snapping back to the first nav leaf. diff --git a/apps/console/CHANGELOG.md b/apps/console/CHANGELOG.md index cec0fb3f1..455936bb6 100644 --- a/apps/console/CHANGELOG.md +++ b/apps/console/CHANGELOG.md @@ -1,5 +1,12 @@ # @object-ui/console +## 12.1.0 + +### Patch Changes + +- @object-ui/react-runtime@12.1.0 +- @object-ui/sdui-parser@12.1.0 + ## 12.0.0 ### Major Changes diff --git a/apps/console/package.json b/apps/console/package.json index de5577f37..0a6b27bc9 100644 --- a/apps/console/package.json +++ b/apps/console/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/console", - "version": "12.0.0", + "version": "12.1.0", "description": "ObjectStack Console — opinionated, fork-ready runtime console built on @object-ui/app-shell with the full plugin set wired up. Ships as a Hono UI plugin serving a pre-built SPA.", "license": "MIT", "type": "module", diff --git a/packages/app-shell/CHANGELOG.md b/packages/app-shell/CHANGELOG.md index 6d1999b50..4fe5990d1 100644 --- a/packages/app-shell/CHANGELOG.md +++ b/packages/app-shell/CHANGELOG.md @@ -1,5 +1,115 @@ # @object-ui/app-shell — Changelog +## 12.1.0 + +### Minor Changes + +- 6eca471: Authorization authoring UX — surface the ADR-0066 security primitives the + framework now enforces (④ secure-by-default posture, ⑤ per-operation + requiredPermissions, ⑨ capability-reference lint). + + **Access matrix — private-posture badge (④).** `PermissionMatrixEditor` object + rows now show an amber **Private** badge when the object declares + `access: { default: 'private' }`, with a tooltip explaining that a permission + set's `'*'` wildcard grant does NOT cover the object — without this, an admin + reading the matrix would assume a wildcard set reaches it while the server + 403s. The object catalog mapping threads `access.default` through + (`ObjectSummary.accessDefault`). + + **Object designer — Access section (④ + ⑤).** `ObjectDefaultInspector` (shared + by metadata-admin and the Studio Data-pillar settings tab) gains an "Access" + section: an exposure-posture select (`public`/`private`, with a warning hint + that a private object needs an explicit grant before anyone but platform + admins can use it), and a "Required capabilities" editor for the object-level + `requiredPermissions` AND-gate. The capability editor supports both shapes — + `string[]` (all operations) and the per-operation `{read,create,update,delete}` + map — with a mode toggle that converts losslessly (all→per-op copies the list + into every operation; per-op→all unions). The per-operation toggle is + **feature-detected** against the bundled `@objectstack/spec` (it needs the ⑤ + union, spec ≥ 12.7) so the UI never offers a shape client-side validation + would reject; map-form drafts always render per-operation inputs. + + **Publish — capability-reference lint (⑨).** `usePublishAllDrafts` now runs + `validateCapabilityReferences` from `@objectstack/lint` over the pending + object/app/action drafts (declaration side = published permission sets ∪ + pending permission drafts) and surfaces "capability registered nowhere" + warnings as a post-publish toast. Strictly advisory and fail-safe: the rule is + feature-detected (no-op until the lint dependency ships it), and any + client/import/rule failure is swallowed — the lint can never break or block + publishing. + +- e2e0dbe: Dashboard authoring moves entirely into Studio. + + The in-page dashboard **Edit** button and its inline `DashboardConfigPanel` were removed — `DashboardView` is now a pure viewer, so authoring lives in one place: Studio's Interfaces pillar. The top bar's "Design in Studio" icon is now context-aware — on a dashboard route it deep-links straight to that dashboard's design page (`/studio/:packageId/interfaces?surface=dashboard:`) via the new `appStudioSurfacePath` helper, falling back to the package's Data tab elsewhere. + +- e35f880: Studio Data tab: metadata-driven config panels for Validations, Hooks and Actions (with add). + + The object **Validations**, **Hooks** and **Actions** sub-tabs are now no-code config panels driven by the corresponding metadata, each able to **create** new entries: + + - **Validations** — the panel covers every spec rule type, not just `script`: `cross_field`, `state_machine`, `format`, `json_schema` and `conditional` are all authorable (previously they were read-only "maintain in code"). The **New** menu adds any type seeded with a valid, never-firing skeleton, and a rule's type can be switched in place; CEL predicates reuse the shared `ConditionBuilder`. + - **Hooks** — a new curated `HookDefaultInspector` replaces the flat generic form: the target object is an **object picker** (multi-select + `*`, not a free-text box), lifecycle events are grouped checkboxes, and the handler is a **dedicated code editor** (language + body). Advanced props fall through to a `SchemaForm` fed the live `hook` JSONSchema from `/meta/types`. + - **Actions** — the `ActionDefaultInspector` now receives the live `action` JSONSchema as `serverSchema`, so its "More fields" section can edit any spec property not curated above (nothing is un-editable). + + `DataPillar` resolves the per-type schemas once (via `useMetadataTypes`) and passes them down. + +- e1840bf: Signal the platform's preview stage in the UI. + + The console top bar (`AppHeader`) now shows a small **Preview** chip next to the + product wordmark on every surface (home / app / orgs), so users always know the + whole platform is pre-GA. It's a new `PreviewBadge` component driven by a + `branding.stage` field in runtime-config (`'preview' | 'beta' | 'ga'`, exposed + via `getPlatformStage()`), which defaults to `'preview'` so the badge shows out + of the box. Operators flip the stage to `'ga'` at launch (`OS_PRODUCT_STAGE` / + `RuntimeConfigPlugin`) and the badge disappears with no code change; `'beta'` + renders a "Beta" chip instead. Labels are localized under `topbar.stage.*`. + +- 572cc6b: Keep a clickable path back when drilling from a record into a related child record (objectui "点击子表标题跳转后如何返回"). + + Clicking a related sub-table row opens the child record's detail page, but that page dropped all trace of where you came from: its breadcrumb only led to the child object's _list_ (never the parent record), and the record body's built-in Back button is suppressed on the schema-rendered surface. From a related-list drill-in the only way back was the browser Back button. + + - **New reserved `?from=` URL param carries the ancestor trail.** When you open a related record (both the synth `RelatedRecordActionsBridge.onView` path and the legacy `RecordDetailView` `onRowClick` path), the parent record is appended to a compact, refresh- and share-safe trail encoded in the URL. Nested drill-ins accumulate (`Account → Invoice → Invoice Line`); depth is capped at 8 and titles truncated so the URL can't grow unbounded, and a trailing self-reference is deduped. Codec (`encodeRecordTrail`/`decodeRecordTrail`/`appendRecordTrail`/`buildRecordTrailHref`) is total — a malformed value yields no ancestor crumbs rather than throwing. + - **The top-bar breadcrumb renders the trail as clickable segments.** A record route with a `?from=` trail now shows `Account → #parent → Invoice → #child`, each ancestor an `object-list → record` pair that links back, with mid-path crumbs preserving the ancestors above them. + - **The record body shows an inline "← back to parent" link** derived from the trail's nearest ancestor, so the immediate-parent affordance survives refresh and shared links (previously it relied on in-session history state that nothing populated for this flow). + +- c31874d: Record-header actions honour `Action.order`, so approval decisions no longer get buried in the `⋯` overflow menu (objectui#2339 / framework#2670). + + The `action:bar` renderer now stable-sorts its actions by an explicit **`order`** field (lower = higher / more prominent, default `0`) before the inline/overflow split. The sort is stable and treats unset `order` as `0`, so action groups where nobody sets `order` keep their exact registration order — existing toolbars are unaffected. `order` is added to `ActionSchema` in `@object-ui/types`, mirroring `Action.order` in `@objectstack/spec`. + + `RecordDetailView` now assigns the injected **Approve / Reject** decision buttons a strongly-negative `order` (and gives Approve the highlighted `primary` variant), so on a pending-approval record the approver's decision takes the primary-button slot and app `record_header` actions follow it — instead of the app having to hide its own actions to surface the decision. + +- bf00df4: The top bar's "Design in Studio" bridge now deep-links pages and reports, not just dashboards. + + Previously only a **dashboard** route deep-linked to its design page in Studio's Interfaces pillar; a **page** or **report** route fell back to the package's generic Data tab, dropping the admin far from the surface they were viewing. The route-type → surface-type mapping now covers all three interface types (`dashboard` / `page` / `report`) via the new `appStudioRoutePath` helper, so e.g. viewing `/apps/:pkg/page/showcase_crm_workbench` and clicking the hammer opens `/studio/:packageId/interfaces?surface=page:showcase_crm_workbench`. Object routes and the app root still open the Data tab. + +- 23132ab: Studio Interfaces: move the source-page code editor into a "Source" inspector tab, silence its bogus TypeScript errors, and deep-link menu selection. + + For `kind:'html'`/`kind:'react'` pages (a `source` string, not a block tree), the code editor now lives in a dedicated **Source** tab in the right-hand properties panel while the canvas shows only the live preview; edits flow through the shared draft so the preview stays in sync. The `SourcePageEditor` gains a `mode` prop (`split` | `editor` | `preview`) to render the halves independently, and a `beforeMount` hook disables the Monaco TypeScript worker's semantic/syntax validation (and configures JSX) so JSX-flavoured HTML — intrinsic tags like ``, no `import React`, `style={{…}}` object literals — no longer floods the gutter with meaningless red squiggles (the live preview and server-side validation remain the source of truth). Selecting a menu now records the open surface as `?surface=:`, so the design target is shareable and survives a reload instead of snapping back to the first nav leaf. + +### Patch Changes + +- 195121a: Studio form designer + preview now match the runtime form's column density. + + The Data pillar's **Form → Layout** designer laid every section out in a fixed 2-column grid capped at `max-w-3xl`, and **Form → Preview** capped the real `ObjectForm` at `max-w-2xl`. So on a wide screen the studio showed at most 2 columns while the record the end user actually edits spreads to up to 4 — the design surface misrepresented the real layout. + + `ObjectFormDesigner` now derives its column count the same way the runtime form does (`inferColumns` over the object's editable field count, objectui#2578) and lays each section out with the shared container-query grid classes (`containerGridColsFor`) inside a per-section `@container`, so a field-heavy object reaches 4 fields per row on wide screens and collapses to one column when the panel is narrow. Wide widgets (textarea/markdown/html/…) span the full row, mirroring the form. Both the layout and preview canvases were widened to `max-w-6xl` so the container queries can actually reach 4 columns. `containerGridColsFor` is now exported from `@object-ui/plugin-form` as the single source of truth for these grid classes. + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/fields@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/layout@12.1.0 + - @object-ui/plugin-editor@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/auth@12.1.0 + - @object-ui/collaboration@12.1.0 + - @object-ui/core@12.1.0 + - @object-ui/data-objectstack@12.1.0 + - @object-ui/permissions@12.1.0 + - @object-ui/providers@12.1.0 + ## 12.0.0 ### Minor Changes diff --git a/packages/app-shell/package.json b/packages/app-shell/package.json index 658577cd9..9c8996083 100644 --- a/packages/app-shell/package.json +++ b/packages/app-shell/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/app-shell", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Minimal application shell for ObjectUI - framework-agnostic rendering engine", diff --git a/packages/auth/CHANGELOG.md b/packages/auth/CHANGELOG.md index c953b3caa..d58ae040a 100644 --- a/packages/auth/CHANGELOG.md +++ b/packages/auth/CHANGELOG.md @@ -1,5 +1,12 @@ # @object-ui/auth +## 12.1.0 + +### Patch Changes + +- Updated dependencies [c31874d] + - @object-ui/types@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/auth/package.json b/packages/auth/package.json index 3aa1b3611..716317ef4 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/auth", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Authentication system for Object UI with AuthProvider, useAuth hook, AuthGuard, and form components.", diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 4c6bde396..8ccbf0d3f 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,15 @@ # @object-ui/cli +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index ef687fc90..78e06d183 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/cli", - "version": "12.0.0", + "version": "12.1.0", "description": "Standalone CLI for Object UI — scaffold, develop, build and validate JSON/YAML schema-driven applications.", "type": "module", "homepage": "https://www.objectui.org/docs/utilities/cli", diff --git a/packages/collaboration/CHANGELOG.md b/packages/collaboration/CHANGELOG.md index df166eebd..5c3ef62d5 100644 --- a/packages/collaboration/CHANGELOG.md +++ b/packages/collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # @object-ui/collaboration +## 12.1.0 + +### Patch Changes + +- Updated dependencies [c31874d] + - @object-ui/types@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/collaboration/package.json b/packages/collaboration/package.json index 5a121f7bb..be56873a7 100644 --- a/packages/collaboration/package.json +++ b/packages/collaboration/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/collaboration", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Real-time collaboration for Object UI with presence tracking, live cursors, conflict resolution, and comment threads.", diff --git a/packages/components/CHANGELOG.md b/packages/components/CHANGELOG.md index 657720851..93986c3c9 100644 --- a/packages/components/CHANGELOG.md +++ b/packages/components/CHANGELOG.md @@ -1,5 +1,35 @@ # @object-ui/components +## 12.1.0 + +### Minor Changes + +- c31874d: Record-header actions honour `Action.order`, so approval decisions no longer get buried in the `⋯` overflow menu (objectui#2339 / framework#2670). + + The `action:bar` renderer now stable-sorts its actions by an explicit **`order`** field (lower = higher / more prominent, default `0`) before the inline/overflow split. The sort is stable and treats unset `order` as `0`, so action groups where nobody sets `order` keep their exact registration order — existing toolbars are unaffected. `order` is added to `ActionSchema` in `@object-ui/types`, mirroring `Action.order` in `@objectstack/spec`. + + `RecordDetailView` now assigns the injected **Approve / Reject** decision buttons a strongly-negative `order` (and gives Approve the highlighted `primary` variant), so on a pending-approval record the approver's decision takes the primary-button slot and app `record_header` actions follow it — instead of the app having to hide its own actions to surface the decision. + +### Patch Changes + +- 6cbccf3: Localize form validation messages, toast client-side validation failures, and make native date/time picker icons legible in dark mode. + + Record-form validation messages (required, min/max length, min/max value, pattern, email, URL) were hard-coded English even when the field label was localized — e.g. a Chinese "计划开始日期" field showed "计划开始日期 is required". `buildValidationRules` baked English strings, so the form renderer's `t(...)` fallback never applied. It now emits `required: true` and, for the other rules, a `messageKey` + `undefined` message (a field-authored `*_message` still wins and passes through verbatim); the form renderer fills the blanks via i18n (`validation.*` keys already exist in every locale), so messages track the label's language. + + When client-side validation blocks a submit, the offending field's inline error can sit below the fold in a long modal/drawer form — the user clicks 创建 and sees nothing happen. The form renderer now also fires a `toast.error` naming the fields (`validation.formInvalid`, added to all 10 locales), mirroring the existing server-error toast so the feedback is visible regardless of scroll position. + + Separately, native controls now declare `color-scheme` (`light` on `:root`, `dark` on `.dark`), so the webkit calendar-picker-indicator and other built-in glyphs render light-on-dark instead of vanishing against the dark input background. + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + - @object-ui/react-runtime@12.1.0 + - @object-ui/sdui-parser@12.1.0 + ## 12.0.0 ### Minor Changes diff --git a/packages/components/package.json b/packages/components/package.json index f3ebacfe4..fea1453ad 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/components", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Standard UI component library for Object UI, built with Shadcn UI + Tailwind CSS", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index e049b9b61..85d010489 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,12 @@ # @object-ui/core +## 12.1.0 + +### Patch Changes + +- Updated dependencies [c31874d] + - @object-ui/types@12.1.0 + ## 12.0.0 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index 22cd67f1c..ae6cdf7b9 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/core", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "sideEffects": false, "license": "MIT", diff --git a/packages/create-plugin/CHANGELOG.md b/packages/create-plugin/CHANGELOG.md index 986fd08dd..ddccc1239 100644 --- a/packages/create-plugin/CHANGELOG.md +++ b/packages/create-plugin/CHANGELOG.md @@ -1,5 +1,7 @@ # @object-ui/create-plugin +## 12.1.0 + ## 12.0.0 ## 11.5.0 diff --git a/packages/create-plugin/package.json b/packages/create-plugin/package.json index 094a6fbf2..335e30922 100644 --- a/packages/create-plugin/package.json +++ b/packages/create-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/create-plugin", - "version": "12.0.0", + "version": "12.1.0", "description": "CLI tool to scaffold ObjectUI plugins", "type": "module", "license": "MIT", diff --git a/packages/data-objectstack/CHANGELOG.md b/packages/data-objectstack/CHANGELOG.md index 09acff2b2..950be69c2 100644 --- a/packages/data-objectstack/CHANGELOG.md +++ b/packages/data-objectstack/CHANGELOG.md @@ -1,5 +1,13 @@ # @object-ui/data-objectstack +## 12.1.0 + +### Patch Changes + +- Updated dependencies [c31874d] + - @object-ui/types@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/data-objectstack/package.json b/packages/data-objectstack/package.json index a54b96e58..a444db220 100644 --- a/packages/data-objectstack/package.json +++ b/packages/data-objectstack/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/data-objectstack", - "version": "12.0.0", + "version": "12.1.0", "description": "ObjectStack Data Adapter for Object UI", "license": "MIT", "type": "module", diff --git a/packages/fields/CHANGELOG.md b/packages/fields/CHANGELOG.md index 97b275ea5..fa71aad55 100644 --- a/packages/fields/CHANGELOG.md +++ b/packages/fields/CHANGELOG.md @@ -1,5 +1,27 @@ # @object-ui/fields +## 12.1.0 + +### Patch Changes + +- 6cbccf3: Localize form validation messages, toast client-side validation failures, and make native date/time picker icons legible in dark mode. + + Record-form validation messages (required, min/max length, min/max value, pattern, email, URL) were hard-coded English even when the field label was localized — e.g. a Chinese "计划开始日期" field showed "计划开始日期 is required". `buildValidationRules` baked English strings, so the form renderer's `t(...)` fallback never applied. It now emits `required: true` and, for the other rules, a `messageKey` + `undefined` message (a field-authored `*_message` still wins and passes through verbatim); the form renderer fills the blanks via i18n (`validation.*` keys already exist in every locale), so messages track the label's language. + + When client-side validation blocks a submit, the offending field's inline error can sit below the fold in a long modal/drawer form — the user clicks 创建 and sees nothing happen. The form renderer now also fires a `toast.error` naming the fields (`validation.formInvalid`, added to all 10 locales), mirroring the existing server-error toast so the feedback is visible regardless of scroll position. + + Separately, native controls now declare `color-scheme` (`light` on `:root`, `dark` on `.dark`), so the webkit calendar-picker-indicator and other built-in glyphs render light-on-dark instead of vanishing against the dark input background. + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + - @object-ui/providers@12.1.0 + ## 12.0.0 ### Minor Changes diff --git a/packages/fields/package.json b/packages/fields/package.json index af5de4d47..bd6171d51 100644 --- a/packages/fields/package.json +++ b/packages/fields/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/fields", - "version": "12.0.0", + "version": "12.1.0", "description": "Field renderers and registry for Object UI", "license": "MIT", "type": "module", diff --git a/packages/i18n/CHANGELOG.md b/packages/i18n/CHANGELOG.md index 0ec44f33f..59e0c695e 100644 --- a/packages/i18n/CHANGELOG.md +++ b/packages/i18n/CHANGELOG.md @@ -1,5 +1,30 @@ # @object-ui/i18n +## 12.1.0 + +### Minor Changes + +- e1840bf: Signal the platform's preview stage in the UI. + + The console top bar (`AppHeader`) now shows a small **Preview** chip next to the + product wordmark on every surface (home / app / orgs), so users always know the + whole platform is pre-GA. It's a new `PreviewBadge` component driven by a + `branding.stage` field in runtime-config (`'preview' | 'beta' | 'ga'`, exposed + via `getPlatformStage()`), which defaults to `'preview'` so the badge shows out + of the box. Operators flip the stage to `'ga'` at launch (`OS_PRODUCT_STAGE` / + `RuntimeConfigPlugin`) and the badge disappears with no code change; `'beta'` + renders a "Beta" chip instead. Labels are localized under `topbar.stage.*`. + +### Patch Changes + +- 6cbccf3: Localize form validation messages, toast client-side validation failures, and make native date/time picker icons legible in dark mode. + + Record-form validation messages (required, min/max length, min/max value, pattern, email, URL) were hard-coded English even when the field label was localized — e.g. a Chinese "计划开始日期" field showed "计划开始日期 is required". `buildValidationRules` baked English strings, so the form renderer's `t(...)` fallback never applied. It now emits `required: true` and, for the other rules, a `messageKey` + `undefined` message (a field-authored `*_message` still wins and passes through verbatim); the form renderer fills the blanks via i18n (`validation.*` keys already exist in every locale), so messages track the label's language. + + When client-side validation blocks a submit, the offending field's inline error can sit below the fold in a long modal/drawer form — the user clicks 创建 and sees nothing happen. The form renderer now also fires a `toast.error` naming the fields (`validation.formInvalid`, added to all 10 locales), mirroring the existing server-error toast so the feedback is visible regardless of scroll position. + + Separately, native controls now declare `color-scheme` (`light` on `:root`, `dark` on `.dark`), so the webkit calendar-picker-indicator and other built-in glyphs render light-on-dark instead of vanishing against the dark input background. + ## 12.0.0 ## 11.5.0 diff --git a/packages/i18n/package.json b/packages/i18n/package.json index 4c3f7f67e..229412d0a 100644 --- a/packages/i18n/package.json +++ b/packages/i18n/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/i18n", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "sideEffects": false, "license": "MIT", diff --git a/packages/layout/CHANGELOG.md b/packages/layout/CHANGELOG.md index 7aebda24b..3dde84a90 100644 --- a/packages/layout/CHANGELOG.md +++ b/packages/layout/CHANGELOG.md @@ -1,5 +1,16 @@ # @object-ui/layout +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/layout/package.json b/packages/layout/package.json index e9738d360..58478eb1b 100644 --- a/packages/layout/package.json +++ b/packages/layout/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/layout", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "sideEffects": false, "main": "dist/index.umd.cjs", diff --git a/packages/mobile/CHANGELOG.md b/packages/mobile/CHANGELOG.md index c4d583410..9fa55cab8 100644 --- a/packages/mobile/CHANGELOG.md +++ b/packages/mobile/CHANGELOG.md @@ -1,5 +1,12 @@ # @object-ui/mobile +## 12.1.0 + +### Patch Changes + +- Updated dependencies [c31874d] + - @object-ui/types@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/mobile/package.json b/packages/mobile/package.json index 4f45c671a..8838493c8 100644 --- a/packages/mobile/package.json +++ b/packages/mobile/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/mobile", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Mobile optimization for Object UI with responsive components, PWA support, and touch gesture handling.", diff --git a/packages/permissions/CHANGELOG.md b/packages/permissions/CHANGELOG.md index 031316c05..d17da4028 100644 --- a/packages/permissions/CHANGELOG.md +++ b/packages/permissions/CHANGELOG.md @@ -1,5 +1,12 @@ # @object-ui/permissions +## 12.1.0 + +### Patch Changes + +- Updated dependencies [c31874d] + - @object-ui/types@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/permissions/package.json b/packages/permissions/package.json index f8d520032..c926736b2 100644 --- a/packages/permissions/package.json +++ b/packages/permissions/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/permissions", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "RBAC permission system for Object UI with object/field/row-level access control, permission guards, and hooks.", diff --git a/packages/plugin-ai/CHANGELOG.md b/packages/plugin-ai/CHANGELOG.md index 18405a258..09ef0d93e 100644 --- a/packages/plugin-ai/CHANGELOG.md +++ b/packages/plugin-ai/CHANGELOG.md @@ -1,5 +1,16 @@ # @object-ui/plugin-ai +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-ai/package.json b/packages/plugin-ai/package.json index 13db05402..0709b7843 100644 --- a/packages/plugin-ai/package.json +++ b/packages/plugin-ai/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-ai", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "main": "dist/index.umd.cjs", "module": "dist/index.js", diff --git a/packages/plugin-calendar/CHANGELOG.md b/packages/plugin-calendar/CHANGELOG.md index b99334b68..3fa5f4760 100644 --- a/packages/plugin-calendar/CHANGELOG.md +++ b/packages/plugin-calendar/CHANGELOG.md @@ -1,5 +1,22 @@ # @object-ui/plugin-calendar +## 12.1.0 + +### Patch Changes + +- Updated dependencies [47e72b8] +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/plugin-detail@12.1.0 + - @object-ui/components@12.1.0 + - @object-ui/fields@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + - @object-ui/mobile@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-calendar/package.json b/packages/plugin-calendar/package.json index 3829991fd..0cbd84671 100644 --- a/packages/plugin-calendar/package.json +++ b/packages/plugin-calendar/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-calendar", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Calendar view plugins for Object UI - includes both ObjectQL-integrated and standalone calendar components", diff --git a/packages/plugin-charts/CHANGELOG.md b/packages/plugin-charts/CHANGELOG.md index ea618054b..e00ca25b2 100644 --- a/packages/plugin-charts/CHANGELOG.md +++ b/packages/plugin-charts/CHANGELOG.md @@ -1,5 +1,18 @@ # @object-ui/plugin-charts +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-charts/package.json b/packages/plugin-charts/package.json index f24a7696f..eff5d76e9 100644 --- a/packages/plugin-charts/package.json +++ b/packages/plugin-charts/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-charts", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Chart components plugin for Object UI, powered by Recharts", diff --git a/packages/plugin-chatbot/CHANGELOG.md b/packages/plugin-chatbot/CHANGELOG.md index 573ff9195..070e9fef6 100644 --- a/packages/plugin-chatbot/CHANGELOG.md +++ b/packages/plugin-chatbot/CHANGELOG.md @@ -1,5 +1,16 @@ # @object-ui/plugin-chatbot +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-chatbot/package.json b/packages/plugin-chatbot/package.json index 2223ce447..371046137 100644 --- a/packages/plugin-chatbot/package.json +++ b/packages/plugin-chatbot/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-chatbot", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Chatbot interface plugin for Object UI", diff --git a/packages/plugin-dashboard/CHANGELOG.md b/packages/plugin-dashboard/CHANGELOG.md index 0e9d98f41..5a18fcbd2 100644 --- a/packages/plugin-dashboard/CHANGELOG.md +++ b/packages/plugin-dashboard/CHANGELOG.md @@ -1,5 +1,19 @@ # @object-ui/plugin-dashboard +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/fields@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-dashboard/package.json b/packages/plugin-dashboard/package.json index 1eda4f9f0..7c16745c5 100644 --- a/packages/plugin-dashboard/package.json +++ b/packages/plugin-dashboard/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-dashboard", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Dashboard plugin for Object UI", diff --git a/packages/plugin-designer/CHANGELOG.md b/packages/plugin-designer/CHANGELOG.md index 35e7a2c85..806131ed8 100644 --- a/packages/plugin-designer/CHANGELOG.md +++ b/packages/plugin-designer/CHANGELOG.md @@ -1,5 +1,23 @@ # @object-ui/plugin-designer +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] +- Updated dependencies [195121a] + - @object-ui/components@12.1.0 + - @object-ui/fields@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/plugin-form@12.1.0 + - @object-ui/plugin-grid@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + - @object-ui/data-objectstack@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-designer/package.json b/packages/plugin-designer/package.json index 711c9e3f2..14f4ccb34 100644 --- a/packages/plugin-designer/package.json +++ b/packages/plugin-designer/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-designer", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Visual designer plugin for Object UI with page, data model, process, and report designers plus collaborative editing.", diff --git a/packages/plugin-detail/CHANGELOG.md b/packages/plugin-detail/CHANGELOG.md index 0996e01c8..200886db5 100644 --- a/packages/plugin-detail/CHANGELOG.md +++ b/packages/plugin-detail/CHANGELOG.md @@ -1,5 +1,17 @@ # @object-ui/plugin-detail +## 12.1.0 + +### Patch Changes + +- 47e72b8: Fix a React #300 crash when drilling from a master record into a related child record. + + `DetailSection` placed its all-empty `return null` guard _before_ the virtual-scroll `useEffect`, so a section that rendered all-empty on one pass (effect skipped) and populated on the next (effect runs) changed its hook count between renders of the same reconciled fiber — React threw error #300 ("rendered more hooks than during the previous render"). This reliably tripped on the master-detail drill-in (e.g. Account → Project), showing an error boundary and bouncing the user away on refresh. The all-empty guard now runs after every hook, making the hook count invariant. + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] + - @object-ui/i18n@12.1.0 + ## 12.0.0 ### Minor Changes diff --git a/packages/plugin-detail/package.json b/packages/plugin-detail/package.json index bc00a2fa3..e705f3c4b 100644 --- a/packages/plugin-detail/package.json +++ b/packages/plugin-detail/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-detail", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "DetailView plugin for Object UI - comprehensive detail page with sections, tabs, and related lists", diff --git a/packages/plugin-editor/CHANGELOG.md b/packages/plugin-editor/CHANGELOG.md index 9d45e4799..6dac647e5 100644 --- a/packages/plugin-editor/CHANGELOG.md +++ b/packages/plugin-editor/CHANGELOG.md @@ -1,5 +1,16 @@ # @object-ui/plugin-editor +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-editor/package.json b/packages/plugin-editor/package.json index 033aff96b..5f7bcc80a 100644 --- a/packages/plugin-editor/package.json +++ b/packages/plugin-editor/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-editor", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Rich text editor plugin for Object UI, powered by Monaco Editor", diff --git a/packages/plugin-form/CHANGELOG.md b/packages/plugin-form/CHANGELOG.md index 774a22307..b90889a42 100644 --- a/packages/plugin-form/CHANGELOG.md +++ b/packages/plugin-form/CHANGELOG.md @@ -1,5 +1,26 @@ # @object-ui/plugin-form +## 12.1.0 + +### Patch Changes + +- 195121a: Studio form designer + preview now match the runtime form's column density. + + The Data pillar's **Form → Layout** designer laid every section out in a fixed 2-column grid capped at `max-w-3xl`, and **Form → Preview** capped the real `ObjectForm` at `max-w-2xl`. So on a wide screen the studio showed at most 2 columns while the record the end user actually edits spreads to up to 4 — the design surface misrepresented the real layout. + + `ObjectFormDesigner` now derives its column count the same way the runtime form does (`inferColumns` over the object's editable field count, objectui#2578) and lays each section out with the shared container-query grid classes (`containerGridColsFor`) inside a per-section `@container`, so a field-heavy object reaches 4 fields per row on wide screens and collapses to one column when the panel is narrow. Wide widgets (textarea/markdown/html/…) span the full row, mirroring the form. Both the layout and preview canvases were widened to `max-w-6xl` so the container queries can actually reach 4 columns. `containerGridColsFor` is now exported from `@object-ui/plugin-form` as the single source of truth for these grid classes. + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/fields@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + - @object-ui/permissions@12.1.0 + ## 12.0.0 ### Minor Changes diff --git a/packages/plugin-form/package.json b/packages/plugin-form/package.json index e58cbdc50..458eaf722 100644 --- a/packages/plugin-form/package.json +++ b/packages/plugin-form/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-form", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Form plugin for Object UI", diff --git a/packages/plugin-gantt/CHANGELOG.md b/packages/plugin-gantt/CHANGELOG.md index 93cad83de..830f88506 100644 --- a/packages/plugin-gantt/CHANGELOG.md +++ b/packages/plugin-gantt/CHANGELOG.md @@ -1,5 +1,21 @@ # @object-ui/plugin-gantt +## 12.1.0 + +### Patch Changes + +- Updated dependencies [47e72b8] +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/plugin-detail@12.1.0 + - @object-ui/components@12.1.0 + - @object-ui/fields@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-gantt/package.json b/packages/plugin-gantt/package.json index fdea139b9..74f4d7d3e 100644 --- a/packages/plugin-gantt/package.json +++ b/packages/plugin-gantt/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-gantt", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Gantt chart plugin for Object UI", diff --git a/packages/plugin-grid/CHANGELOG.md b/packages/plugin-grid/CHANGELOG.md index bafcdec03..f762468f8 100644 --- a/packages/plugin-grid/CHANGELOG.md +++ b/packages/plugin-grid/CHANGELOG.md @@ -1,5 +1,20 @@ # @object-ui/plugin-grid +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/fields@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + - @object-ui/mobile@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-grid/package.json b/packages/plugin-grid/package.json index 2900f960a..073bfd880 100644 --- a/packages/plugin-grid/package.json +++ b/packages/plugin-grid/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-grid", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Grid plugin for Object UI", diff --git a/packages/plugin-kanban/CHANGELOG.md b/packages/plugin-kanban/CHANGELOG.md index e88ce2d7d..b4580d51a 100644 --- a/packages/plugin-kanban/CHANGELOG.md +++ b/packages/plugin-kanban/CHANGELOG.md @@ -1,5 +1,21 @@ # @object-ui/plugin-kanban +## 12.1.0 + +### Patch Changes + +- Updated dependencies [47e72b8] +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/plugin-detail@12.1.0 + - @object-ui/components@12.1.0 + - @object-ui/fields@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-kanban/package.json b/packages/plugin-kanban/package.json index 19dbcd012..fbde0cf81 100644 --- a/packages/plugin-kanban/package.json +++ b/packages/plugin-kanban/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-kanban", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Kanban board plugin for Object UI, powered by dnd-kit", diff --git a/packages/plugin-list/CHANGELOG.md b/packages/plugin-list/CHANGELOG.md index 7744b91ea..fc9b6c442 100644 --- a/packages/plugin-list/CHANGELOG.md +++ b/packages/plugin-list/CHANGELOG.md @@ -1,5 +1,7 @@ # @object-ui/plugin-list +## 12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-list/package.json b/packages/plugin-list/package.json index 7d9041e3b..ffb4345ec 100644 --- a/packages/plugin-list/package.json +++ b/packages/plugin-list/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-list", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "ListView plugin for Object UI - unified view component with view type switching", diff --git a/packages/plugin-map/CHANGELOG.md b/packages/plugin-map/CHANGELOG.md index 363f14223..83044c6a0 100644 --- a/packages/plugin-map/CHANGELOG.md +++ b/packages/plugin-map/CHANGELOG.md @@ -1,5 +1,16 @@ # @object-ui/plugin-map +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-map/package.json b/packages/plugin-map/package.json index 96dd33690..5e02969ba 100644 --- a/packages/plugin-map/package.json +++ b/packages/plugin-map/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-map", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Map visualization plugin for Object UI", diff --git a/packages/plugin-markdown/CHANGELOG.md b/packages/plugin-markdown/CHANGELOG.md index a42465997..e5fd5f548 100644 --- a/packages/plugin-markdown/CHANGELOG.md +++ b/packages/plugin-markdown/CHANGELOG.md @@ -1,5 +1,16 @@ # @object-ui/plugin-markdown +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-markdown/package.json b/packages/plugin-markdown/package.json index e8b03bbfa..1285fae15 100644 --- a/packages/plugin-markdown/package.json +++ b/packages/plugin-markdown/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-markdown", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Markdown rendering plugin for Object UI, powered by react-markdown", diff --git a/packages/plugin-report/CHANGELOG.md b/packages/plugin-report/CHANGELOG.md index 2663b1780..d5388aa49 100644 --- a/packages/plugin-report/CHANGELOG.md +++ b/packages/plugin-report/CHANGELOG.md @@ -1,5 +1,20 @@ # @object-ui/plugin-report +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/fields@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/plugin-grid@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-report/package.json b/packages/plugin-report/package.json index a2fa4861d..c225fee68 100644 --- a/packages/plugin-report/package.json +++ b/packages/plugin-report/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-report", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "main": "dist/index.umd.cjs", "module": "dist/index.js", diff --git a/packages/plugin-timeline/CHANGELOG.md b/packages/plugin-timeline/CHANGELOG.md index b2c6b7445..712dc3e7a 100644 --- a/packages/plugin-timeline/CHANGELOG.md +++ b/packages/plugin-timeline/CHANGELOG.md @@ -1,5 +1,17 @@ # @object-ui/plugin-timeline +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + - @object-ui/mobile@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-timeline/package.json b/packages/plugin-timeline/package.json index 45706b9d3..29eb3c035 100644 --- a/packages/plugin-timeline/package.json +++ b/packages/plugin-timeline/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-timeline", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Timeline component plugin for Object UI", diff --git a/packages/plugin-tree/CHANGELOG.md b/packages/plugin-tree/CHANGELOG.md index 7ba8b126d..4dcd22297 100644 --- a/packages/plugin-tree/CHANGELOG.md +++ b/packages/plugin-tree/CHANGELOG.md @@ -1,5 +1,16 @@ # @object-ui/plugin-tree +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-tree/package.json b/packages/plugin-tree/package.json index bb85c3784..502c4fd3d 100644 --- a/packages/plugin-tree/package.json +++ b/packages/plugin-tree/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-tree", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Tree / tree-grid visualization plugin for Object UI", diff --git a/packages/plugin-view/CHANGELOG.md b/packages/plugin-view/CHANGELOG.md index c64b78331..10e0fc898 100644 --- a/packages/plugin-view/CHANGELOG.md +++ b/packages/plugin-view/CHANGELOG.md @@ -1,5 +1,21 @@ # @object-ui/plugin-view +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] +- Updated dependencies [195121a] + - @object-ui/components@12.1.0 + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/plugin-form@12.1.0 + - @object-ui/plugin-grid@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/plugin-view/package.json b/packages/plugin-view/package.json index 3a5050417..d7bf9a993 100644 --- a/packages/plugin-view/package.json +++ b/packages/plugin-view/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/plugin-view", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Object View plugin for Object UI", diff --git a/packages/providers/CHANGELOG.md b/packages/providers/CHANGELOG.md index 14d928404..d563114b0 100644 --- a/packages/providers/CHANGELOG.md +++ b/packages/providers/CHANGELOG.md @@ -1,5 +1,12 @@ # @object-ui/providers — Changelog +## 12.1.0 + +### Patch Changes + +- Updated dependencies [c31874d] + - @object-ui/types@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/providers/package.json b/packages/providers/package.json index 66a1506a2..3ffe3ff84 100644 --- a/packages/providers/package.json +++ b/packages/providers/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/providers", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Reusable context providers for ObjectUI applications", diff --git a/packages/react-runtime/CHANGELOG.md b/packages/react-runtime/CHANGELOG.md index 885fb6a5f..8535fc65c 100644 --- a/packages/react-runtime/CHANGELOG.md +++ b/packages/react-runtime/CHANGELOG.md @@ -1,5 +1,7 @@ # @object-ui/react-runtime +## 12.1.0 + ## 12.0.0 ## 11.5.0 diff --git a/packages/react-runtime/package.json b/packages/react-runtime/package.json index 373fd5cd1..50b6d9953 100644 --- a/packages/react-runtime/package.json +++ b/packages/react-runtime/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/react-runtime", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "sideEffects": false, "license": "MIT", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 807a49c2e..6bf57c835 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,17 @@ # @object-ui/react +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [e1840bf] +- Updated dependencies [c31874d] + - @object-ui/i18n@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/core@12.1.0 + - @object-ui/data-objectstack@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 8a98bdb54..fecddd3dd 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/react", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "React bindings and SchemaRenderer component for Object UI", diff --git a/packages/runner/CHANGELOG.md b/packages/runner/CHANGELOG.md index 5a91ed603..b18ca2ffb 100644 --- a/packages/runner/CHANGELOG.md +++ b/packages/runner/CHANGELOG.md @@ -1,5 +1,18 @@ # @object-ui/runner +## 12.1.0 + +### Patch Changes + +- Updated dependencies [6cbccf3] +- Updated dependencies [c31874d] + - @object-ui/components@12.1.0 + - @object-ui/types@12.1.0 + - @object-ui/plugin-kanban@12.1.0 + - @object-ui/plugin-charts@12.1.0 + - @object-ui/react@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/runner/package.json b/packages/runner/package.json index d4125adde..fac446f10 100644 --- a/packages/runner/package.json +++ b/packages/runner/package.json @@ -1,7 +1,7 @@ { "name": "@object-ui/runner", "private": false, - "version": "12.0.0", + "version": "12.1.0", "description": "Universal Object UI Application Runner", "type": "module", "homepage": "https://www.objectui.org/docs/utilities/runner", diff --git a/packages/sdui-parser/CHANGELOG.md b/packages/sdui-parser/CHANGELOG.md index 9fa7dc56f..707da041a 100644 --- a/packages/sdui-parser/CHANGELOG.md +++ b/packages/sdui-parser/CHANGELOG.md @@ -1,5 +1,7 @@ # @object-ui/sdui-parser +## 12.1.0 + ## 12.0.0 ## 11.5.0 diff --git a/packages/sdui-parser/package.json b/packages/sdui-parser/package.json index 53d72383e..befbc6ac4 100644 --- a/packages/sdui-parser/package.json +++ b/packages/sdui-parser/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/sdui-parser", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "sideEffects": false, "license": "MIT", diff --git a/packages/tenant/CHANGELOG.md b/packages/tenant/CHANGELOG.md index 4592c699e..181f69751 100644 --- a/packages/tenant/CHANGELOG.md +++ b/packages/tenant/CHANGELOG.md @@ -1,5 +1,12 @@ # @object-ui/tenant +## 12.1.0 + +### Patch Changes + +- Updated dependencies [c31874d] + - @object-ui/types@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/tenant/package.json b/packages/tenant/package.json index 1ed846cdc..7ad9c28d3 100644 --- a/packages/tenant/package.json +++ b/packages/tenant/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/tenant", - "version": "12.0.0", + "version": "12.1.0", "type": "module", "license": "MIT", "description": "Multi-tenancy support for Object UI with tenant isolation, scoped queries, and custom branding.", diff --git a/packages/types/CHANGELOG.md b/packages/types/CHANGELOG.md index 4def13392..11c4ae311 100644 --- a/packages/types/CHANGELOG.md +++ b/packages/types/CHANGELOG.md @@ -1,5 +1,15 @@ # @object-ui/types +## 12.1.0 + +### Minor Changes + +- c31874d: Record-header actions honour `Action.order`, so approval decisions no longer get buried in the `⋯` overflow menu (objectui#2339 / framework#2670). + + The `action:bar` renderer now stable-sorts its actions by an explicit **`order`** field (lower = higher / more prominent, default `0`) before the inline/overflow split. The sort is stable and treats unset `order` as `0`, so action groups where nobody sets `order` keep their exact registration order — existing toolbars are unaffected. `order` is added to `ActionSchema` in `@object-ui/types`, mirroring `Action.order` in `@objectstack/spec`. + + `RecordDetailView` now assigns the injected **Approve / Reject** decision buttons a strongly-negative `order` (and gives Approve the highlighted `primary` variant), so on a pending-approval record the approver's decision takes the primary-button slot and app `record_header` actions follow it — instead of the app having to hide its own actions to surface the decision. + ## 12.0.0 ### Minor Changes diff --git a/packages/types/package.json b/packages/types/package.json index 764f32944..123ff85f0 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@object-ui/types", - "version": "12.0.0", + "version": "12.1.0", "description": "Pure TypeScript type definitions for Object UI - The Protocol Layer", "type": "module", "sideEffects": false, diff --git a/packages/vscode-extension/CHANGELOG.md b/packages/vscode-extension/CHANGELOG.md index c08ecf18c..ff71b560f 100644 --- a/packages/vscode-extension/CHANGELOG.md +++ b/packages/vscode-extension/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 12.1.0 + +### Patch Changes + +- Updated dependencies [c31874d] + - @object-ui/types@12.1.0 + - @object-ui/core@12.1.0 + ## 12.0.0 ### Patch Changes diff --git a/packages/vscode-extension/package.json b/packages/vscode-extension/package.json index c815a8611..53adfde53 100644 --- a/packages/vscode-extension/package.json +++ b/packages/vscode-extension/package.json @@ -2,7 +2,7 @@ "name": "object-ui", "displayName": "Object UI", "description": "VSCode extension for Object UI - Schema-driven UI development with IntelliSense, validation, and live preview", - "version": "12.0.0", + "version": "12.1.0", "publisher": "objectui", "private": true, "icon": "icon.svg",