From 43fc9c3d661e4fb8010ca623d1394fa9da19f94f Mon Sep 17 00:00:00 2001 From: Dimitris - Rafail Katsampas Date: Thu, 27 Nov 2025 19:32:06 +0200 Subject: [PATCH 1/2] ref(SplitView): Module export improvements and corrections --- packages/core/ui/index.ts | 2 +- packages/core/ui/split-view/index.android.ts | 2 -- packages/core/ui/split-view/index.d.ts | 7 ++++++- packages/core/ui/split-view/index.ios.ts | 3 ++- packages/core/ui/split-view/split-view-common.ts | 9 +-------- 5 files changed, 10 insertions(+), 13 deletions(-) diff --git a/packages/core/ui/index.ts b/packages/core/ui/index.ts index ff1315e83a..2b545e5a8d 100644 --- a/packages/core/ui/index.ts +++ b/packages/core/ui/index.ts @@ -71,7 +71,7 @@ export { SegmentedBar, SegmentedBarItem } from './segmented-bar'; export type { SelectedIndexChangedEventData } from './segmented-bar'; export { Slider } from './slider'; export type { AccessibilityDecrementEventData, AccessibilityIncrementEventData } from './slider'; -export { SplitView } from './split-view'; +export * from './split-view'; export { addTaggedAdditionalCSS, removeTaggedAdditionalCSS, resolveFileNameFromUrl } from './styling/style-scope'; export { Background } from './styling/background'; diff --git a/packages/core/ui/split-view/index.android.ts b/packages/core/ui/split-view/index.android.ts index 74165742e0..54aa95a266 100644 --- a/packages/core/ui/split-view/index.android.ts +++ b/packages/core/ui/split-view/index.android.ts @@ -1,7 +1,5 @@ import { SplitViewBase } from './split-view-common'; -export { SplitBehavior, SplitRole, SplitStyle, SplitDisplayMode } from './split-view-common'; - export class SplitView extends SplitViewBase { // Android does not have a native SplitViewController equivalent. } diff --git a/packages/core/ui/split-view/index.d.ts b/packages/core/ui/split-view/index.d.ts index 25382fbcfa..83c8fd043a 100644 --- a/packages/core/ui/split-view/index.d.ts +++ b/packages/core/ui/split-view/index.d.ts @@ -1,6 +1,11 @@ import { SplitViewBase } from './split-view-common'; -export type { SplitBehavior, SplitRole, SplitStyle, SplitDisplayMode } from './split-view-common'; +// Note: Using 'inspector' splitRole does not (yet) require a distinct style; it's an optional trailing column. +export type SplitStyle = 'automatic' | 'double' | 'triple'; + +export type SplitRole = 'primary' | 'secondary' | 'supplementary' | 'inspector'; +export type SplitDisplayMode = 'automatic' | 'secondaryOnly' | 'oneBesideSecondary' | 'oneOverSecondary' | 'twoBesideSecondary' | 'twoOverSecondary' | 'twoDisplaceSecondary'; +export type SplitBehavior = 'automatic' | 'tile' | 'overlay' | 'displace'; /** * iOS UISplitViewController-backed container. diff --git a/packages/core/ui/split-view/index.ios.ts b/packages/core/ui/split-view/index.ios.ts index fc46ffd639..65b0baa405 100644 --- a/packages/core/ui/split-view/index.ios.ts +++ b/packages/core/ui/split-view/index.ios.ts @@ -1,7 +1,8 @@ -import { SplitViewBase, SplitRole, displayModeProperty, splitBehaviorProperty, preferredPrimaryColumnWidthFractionProperty, preferredSupplementaryColumnWidthFractionProperty, preferredInspectorColumnWidthFractionProperty } from './split-view-common'; +import { SplitViewBase, displayModeProperty, splitBehaviorProperty, preferredPrimaryColumnWidthFractionProperty, preferredSupplementaryColumnWidthFractionProperty, preferredInspectorColumnWidthFractionProperty } from './split-view-common'; import { View } from '../core/view'; import { layout } from '../../utils'; import { SDK_VERSION } from '../../utils/constants'; +import type { SplitRole } from '.'; @NativeClass class UISplitViewControllerDelegateImpl extends NSObject implements UISplitViewControllerDelegate { diff --git a/packages/core/ui/split-view/split-view-common.ts b/packages/core/ui/split-view/split-view-common.ts index 6abef4f7c9..98e9d5ed27 100644 --- a/packages/core/ui/split-view/split-view-common.ts +++ b/packages/core/ui/split-view/split-view-common.ts @@ -1,17 +1,10 @@ import { LayoutBase } from '../layouts/layout-base'; import { View, CSSType } from '../core/view'; import { Property, makeParser, makeValidator } from '../core/properties'; +import type { SplitBehavior, SplitDisplayMode, SplitRole, SplitStyle } from '.'; -export type SplitRole = 'primary' | 'secondary' | 'supplementary' | 'inspector'; const splitRoleConverter = makeParser(makeValidator('primary', 'secondary', 'supplementary', 'inspector')); - -// Note: Using 'inspector' splitRole does not (yet) require a distinct style; it's an optional trailing column. -export type SplitStyle = 'automatic' | 'double' | 'triple'; - -export type SplitDisplayMode = 'automatic' | 'secondaryOnly' | 'oneBesideSecondary' | 'oneOverSecondary' | 'twoBesideSecondary' | 'twoOverSecondary' | 'twoDisplaceSecondary'; const splitDisplayModeConverter = makeParser(makeValidator('automatic', 'secondaryOnly', 'oneBesideSecondary', 'oneOverSecondary', 'twoBesideSecondary', 'twoOverSecondary', 'twoDisplaceSecondary')); - -export type SplitBehavior = 'automatic' | 'tile' | 'overlay' | 'displace'; const splitBehaviorConverter = makeParser(makeValidator('automatic', 'tile', 'overlay', 'displace')); // Default child roles (helps authoring without setting splitRole on children) From 41d48e9e0e2ddc904d82a8d8e7ab088154ec4f77 Mon Sep 17 00:00:00 2001 From: Dimitris - Rafail Katsampas Date: Thu, 27 Nov 2025 19:35:03 +0200 Subject: [PATCH 2/2] chore: Export correction --- packages/core/ui/index.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/core/ui/index.ts b/packages/core/ui/index.ts index 2b545e5a8d..a98aa04599 100644 --- a/packages/core/ui/index.ts +++ b/packages/core/ui/index.ts @@ -71,7 +71,8 @@ export { SegmentedBar, SegmentedBarItem } from './segmented-bar'; export type { SelectedIndexChangedEventData } from './segmented-bar'; export { Slider } from './slider'; export type { AccessibilityDecrementEventData, AccessibilityIncrementEventData } from './slider'; -export * from './split-view'; +export { SplitView } from './split-view'; +export type { SplitStyle, SplitRole, SplitDisplayMode, SplitBehavior } from './split-view'; export { addTaggedAdditionalCSS, removeTaggedAdditionalCSS, resolveFileNameFromUrl } from './styling/style-scope'; export { Background } from './styling/background';