From bc43548f66efa4b1b70f95eb6046b8da5c94f6fa Mon Sep 17 00:00:00 2001 From: Szymon Chmal Date: Tue, 3 Feb 2026 11:54:42 +0100 Subject: [PATCH 1/2] feat: support both relative and absolute positioning --- .../ios/absolute-positioning-basic.png | Bin 0 -> 21802 bytes .../ios/absolute-positioning-corners.png | Bin 0 -> 35055 bytes .../__image_snapshots__/ios/badge-overlay.png | Bin 0 -> 25644 bytes .../ios/relative-positioning-basic.png | Bin 0 -> 23347 bytes .../ios/relative-positioning-negative.png | Bin 0 -> 23930 bytes .../ios/static-positioning.png | Bin 0 -> 22717 bytes .../ios/z-index-layering.png | Bin 0 -> 24553 bytes example/__tests__/ios/positioning.harness.tsx | 46 +++ example/app/testing-grounds/positioning.tsx | 5 + .../live-activities/WorkoutLiveActivityUI.tsx | 1 + .../testing-grounds/TestingGroundsScreen.tsx | 7 + .../positioning/PositioningExamples.tsx | 360 ++++++++++++++++++ .../positioning/PositioningScreen.tsx | 136 +++++++ ios/ui/Style/CompositeStyle.swift | 7 +- ios/ui/Style/LayoutStyle.swift | 3 +- ios/ui/Style/StyleConverter.swift | 36 +- src/components/VoltraView.tsx | 18 +- src/styles/types.ts | 1 + website/docs/ios/development/styling.md | 17 +- 19 files changed, 617 insertions(+), 20 deletions(-) create mode 100644 example/__tests__/ios/__image_snapshots__/ios/absolute-positioning-basic.png create mode 100644 example/__tests__/ios/__image_snapshots__/ios/absolute-positioning-corners.png create mode 100644 example/__tests__/ios/__image_snapshots__/ios/badge-overlay.png create mode 100644 example/__tests__/ios/__image_snapshots__/ios/relative-positioning-basic.png create mode 100644 example/__tests__/ios/__image_snapshots__/ios/relative-positioning-negative.png create mode 100644 example/__tests__/ios/__image_snapshots__/ios/static-positioning.png create mode 100644 example/__tests__/ios/__image_snapshots__/ios/z-index-layering.png create mode 100644 example/__tests__/ios/positioning.harness.tsx create mode 100644 example/app/testing-grounds/positioning.tsx create mode 100644 example/screens/testing-grounds/positioning/PositioningExamples.tsx create mode 100644 example/screens/testing-grounds/positioning/PositioningScreen.tsx diff --git a/example/__tests__/ios/__image_snapshots__/ios/absolute-positioning-basic.png b/example/__tests__/ios/__image_snapshots__/ios/absolute-positioning-basic.png new file mode 100644 index 0000000000000000000000000000000000000000..b779010efd3ae0215b37ed964f57aa8a9ff77ce2 GIT binary patch literal 21802 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 P_^ewKwz_&%{Jy^di4A4f literal 0 HcmV?d00001 diff --git a/example/__tests__/ios/__image_snapshots__/ios/badge-overlay.png b/example/__tests__/ios/__image_snapshots__/ios/badge-overlay.png new file mode 100644 index 0000000000000000000000000000000000000000..bb459d3bafee3a72a3545fd6f27cf4f100dab13f GIT binary patch literal 25644 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%0AMst6W5lYVFd*jI6M-$#Y@ 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 O^V=o$i@E2G{r(TovCEtQ literal 0 HcmV?d00001 diff --git a/example/__tests__/ios/__image_snapshots__/ios/static-positioning.png b/example/__tests__/ios/__image_snapshots__/ios/static-positioning.png new file mode 100644 index 0000000000000000000000000000000000000000..536cf65fe36fc0236cd97e11453e28dc778f7c6e GIT binary patch literal 22717 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 => { + return test(`should match snapshot for ${name}`, async () => { + await render( + + + + ) + + const previewElement = await screen.findByTestId('preview') + const screenshot = await screen.screenshot(previewElement) + await expect(screenshot).toMatchImageSnapshot({ + name: name.toLowerCase().replace(/\s+/g, '-'), + }) + }) +} + +describe('Positioning snapshots', () => { + snapshotTest('Static Positioning', StaticPositioningExample) + + snapshotTest('Relative Positioning Basic', RelativePositioningBasicExample) + + snapshotTest('Relative Positioning Negative', RelativePositioningNegativeExample) + + snapshotTest('Absolute Positioning Basic', AbsolutePositioningBasicExample) + + snapshotTest('Absolute Positioning Corners', AbsolutePositioningCornersExample) + + snapshotTest('Z-Index Layering', ZIndexLayeringExample) + + snapshotTest('Badge Overlay', BadgeOverlayExample) +}) diff --git a/example/app/testing-grounds/positioning.tsx b/example/app/testing-grounds/positioning.tsx new file mode 100644 index 0000000..6d9e54e --- /dev/null +++ b/example/app/testing-grounds/positioning.tsx @@ -0,0 +1,5 @@ +import PositioningScreen from '~/screens/testing-grounds/positioning/PositioningScreen' + +export default function PositioningIndex() { + return +} diff --git a/example/components/live-activities/WorkoutLiveActivityUI.tsx b/example/components/live-activities/WorkoutLiveActivityUI.tsx index 1c49b87..ae9b97f 100644 --- a/example/components/live-activities/WorkoutLiveActivityUI.tsx +++ b/example/components/live-activities/WorkoutLiveActivityUI.tsx @@ -220,6 +220,7 @@ export function WorkoutLiveActivityUI({ heartRate, distance, pace, startTime }: + + {/* This box has left/top but NO position - should be centered and ignore left/top */} + + Static + (Centered) + + + + ) +} + +export function RelativePositioningBasicExample({ testID }: PositioningExampleProps) { + return ( + + + {/* Reference box showing natural position (top-left) */} + + Natural + + + {/* Relatively positioned box - offset from natural position */} + + Relative + +20, +10 + + + + ) +} + +export function RelativePositioningNegativeExample({ testID }: PositioningExampleProps) { + return ( + + + {/* Reference box at center */} + + Natural + + + {/* Relatively positioned with negative offset */} + + Relative + -15, -15 + + + + ) +} + +export function AbsolutePositioningBasicExample({ testID }: PositioningExampleProps) { + return ( + + + {/* Crosshair marker at (50, 50) to show center point */} + + + {/* Absolutely positioned box - center should be at (50, 50) */} + + Absolute + @50, 50 + + + + ) +} + +export function AbsolutePositioningCornersExample({ testID }: PositioningExampleProps) { + return ( + + + + {/* Top-left box */} + + 30,30 + + + {/* Bottom-right box */} + + 200,170 + + + {/* Center box */} + + 115,100 + + + {/* Center marker */} + + + {/* Bottom-right corner marker */} + + + {/* Top-left corner marker */} + + + + + ) +} + +export function ZIndexLayeringExample({ testID }: PositioningExampleProps) { + return ( + + + {/* Bottom layer (zIndex: 1) */} + + z: 1 + + + {/* Middle layer (zIndex: 2) */} + + z: 2 + + + {/* Top layer (zIndex: 3) */} + + z: 3 + + + + ) +} + +export function BadgeOverlayExample({ testID }: PositioningExampleProps) { + return ( + + + {/* Avatar with badge overlay */} + + + + {/* Notification Badge - Absolutely positioned on avatar */} + + 3 + + + + {/* Info */} + + John Doe + Software Engineer + + + + ) +} diff --git a/example/screens/testing-grounds/positioning/PositioningScreen.tsx b/example/screens/testing-grounds/positioning/PositioningScreen.tsx new file mode 100644 index 0000000..c62fd2e --- /dev/null +++ b/example/screens/testing-grounds/positioning/PositioningScreen.tsx @@ -0,0 +1,136 @@ +import { Link } from 'expo-router' +import React from 'react' +import { FlatList, StyleSheet, Text, View } from 'react-native' + +import { Button } from '~/components/Button' +import { Card } from '~/components/Card' + +import { + AbsolutePositioningBasicExample, + AbsolutePositioningCornersExample, + BadgeOverlayExample, + RelativePositioningBasicExample, + RelativePositioningNegativeExample, + StaticPositioningExample, + ZIndexLayeringExample, +} from './PositioningExamples' + +const POSITIONING_DATA = [ + { + id: 'static-default', + title: 'Static Positioning (Default)', + description: 'When position is not set or set to "static", left and top are ignored. Box should stay centered.', + Component: StaticPositioningExample, + }, + { + id: 'relative-basic', + title: 'Relative Positioning - Basic', + description: + 'position: "relative" offsets the box from its natural position. left: 20, top: 10 moves it right and down.', + Component: RelativePositioningBasicExample, + }, + { + id: 'relative-negative', + title: 'Relative Positioning - Negative Offset', + description: 'Negative values move the box left (negative left) and up (negative top) from its natural position.', + Component: RelativePositioningNegativeExample, + }, + { + id: 'absolute-basic', + title: 'Absolute Positioning - Center-Based', + description: + 'position: "absolute" places the CENTER of the box at the coordinates. left: 50, top: 50 means center at (50, 50).', + Component: AbsolutePositioningBasicExample, + }, + { + id: 'absolute-corners', + title: 'Absolute Positioning - Four Corners', + description: 'Demonstrating absolute positioning at different coordinates. Red dots mark the center points.', + Component: AbsolutePositioningCornersExample, + }, + { + id: 'zindex-layering', + title: 'Z-Index Layering', + description: 'Using zIndex with positioning to control stacking order.', + Component: ZIndexLayeringExample, + }, + { + id: 'practical-overlay', + title: 'Practical Example - Badge Overlay', + description: 'Using absolute positioning to create a notification badge on a profile card.', + Component: BadgeOverlayExample, + }, +] + +export default function PositioningScreen() { + const renderHeader = () => ( + <> + Positioning Examples + + Explore Voltra's positioning modes: static (default), relative (offset from natural position), and absolute + (center-based coordinates). Red dots mark reference points in absolute positioning examples. + + + ) + + const renderItem = ({ item }: { item: (typeof POSITIONING_DATA)[0] }) => { + const { Component } = item + return ( + + {item.title} + {item.description} + + + ) + } + + const renderFooter = () => ( + + +