Skip to content

Releases: POLPROG-TECH/Native-UI

@polprog/native-ui@1.7.0

Choose a tag to compare

@github-actions github-actions released this 23 Jun 21:24
0df0572

Minor Changes

  • ba99bda: Add the Bloom theme variant and a theme config key.

    NativeUIProvider now accepts theme: 'default' | 'bloom' | ThemeVariant. A theme variant bundles a complete visual identity (colour palette, corner radii, elevation, type density, and default fonts) behind one name and restyles every component. The new Bloom variant is a soft, rounded look: violet/pink accents, rounded corners, purple-tinted neutrals, and Outfit + Plus Jakarta Sans typography. The original look ships unchanged as the Aurora ('default') variant, so existing apps are unaffected.

    FontFamilies gains an optional display group so a variant can pair a heading family with a separate body family. New exports: THEME_VARIANTS, defaultThemeVariant, bloomThemeVariant, resolveThemeVariant, defaultColorPalette, bloomColorPalette, BLOOM_PRESETS, bloomFontFamilies, and the types ThemeVariant, ThemeVariantName, ColorPalette, TextRamp, SemanticRamp, NeutralRamp, BloomPreset, BorderRadiusScale.

@polprog/native-ui@1.6.0

Choose a tag to compare

@github-actions github-actions released this 05 Jun 21:52
c123bc3

Minor Changes

  • 7e2e2a6: Add the ActionTile component, a decimal input parser, and a long-value fix for StatTile.

    New components

    • ActionTile - compact tappable tile with a tinted icon chip and a label below, built for quick-action grids on dashboards and home screens. Supports tones (primary/success/warning/error/neutral), a disabled state, accessibilityLabel override, debounced press handling and light haptics, matching the other interactive controls.

    New utilities

    • parseDecimalInput - parses a user-entered number accepting both comma and dot as the decimal separator (European keyboards), returning NaN for empty or non-numeric input so callers can validate.

    Fixes

    • StatTile now renders long values on a single shrink-to-fit line (numberOfLines={1}, adjustsFontSizeToFit, minimumFontScale={0.7}) instead of overflowing.

    Tests & Storybook

    • Added unit coverage for ActionTile and parseDecimalInput, a long-value test for StatTile, and an ActionTile Storybook page with a quick-actions grid.

@polprog/native-ui@1.5.0

Choose a tag to compare

@github-actions github-actions released this 31 May 19:57
38f699c

Minor Changes

  • cfe95b8: Code-quality audit fixes across the component library.

    Accessibility

    • Input / TextArea now append their error message to the accessible label and TextArea exposes a disabled accessibility state.
    • Switch makes the entire label/subtitle row tappable and exposes the subtitle in the accessible name; the inner native switch is hidden from assistive tech when wrapped.
    • Modal and BottomSheet backdrops are now exposed as a dismiss button (or hidden when non-dismissable), and decorative handles/glyphs in BottomSheet, Select, ListItem and Checkbox are hidden from screen readers.

    API

    • Input and TextArea now forward refs to the underlying TextInput.
    • Radio accepts a style prop and triggers light haptics on press, matching Checkbox/Switch.
    • Box now extends ViewProps, fixing the previously mistyped accessibilityRole and untyped passthrough props.
    • The selectedValue / onValueChange aliases on Select are marked @deprecated.

    Performance

    • Button, IconButton, Switch, Checkbox and Radio are wrapped in React.memo, with memoized styles and a shared useDebouncedPress hook for press handling.
    • Select uses useWindowDimensions and memoized callbacks instead of inline closures.

    Types

    • elevation tokens are now strongly typed via the exported Elevation type, removing as ViewStyle casts throughout the library.

    A new public useDebouncedPress hook is exported for consumers.

    Docs

@polprog/native-ui@1.4.0

Choose a tag to compare

@github-actions github-actions released this 09 May 11:33
497572a

Minor Changes

  • 6ebdff9: feat(DatePickerInput): Full-featured cross-platform date/time picker

    • Added mode prop supporting date, time, and datetime modes
    • Added disabled, placeholder, testID, icon props
    • Implemented controlled open/close via isOpen / onOpen / onClose
    • Added clearable / onClear props for clearing selected value
    • Android datetime mode: two-step picker flow (date → time)
    • iOS: compact native picker with placeholder-first flow support
    • DEV-only console warning when peer dependency is missing
    • Created DateRangePickerInput composite component for date range selection
    • Storybook story with playground and multiple variants

@polprog/native-ui@1.3.1

Choose a tag to compare

@github-actions github-actions released this 05 May 14:19
b718ade

Patch Changes

  • 223a23c: Code quality sweep: performance, accessibility, and DRY improvements across 10 components.

    Performance

    • ListItem - wrapped in React.memo
    • Chip - handlePress stabilised with useCallback.
    • SettingsRow / SettingsSwitchRow - merged iconColorMap memoised with useMemo.
    • Select - SelectRow.onPress closure replaced with stable value + onSelect props, eliminating per-option re-renders.
    • Countdown - onExpire moved to a ref to avoid unnecessary effect re-runs.

    Accessibility

    • Modal - replaced incorrect accessibilityRole="alert" with accessibilityViewIsModal.
    • BottomSheet / Select sheet - replaced hardcoded paddingBottom: 34 with useSafeAreaInsets().bottom.
    • Select - replaced hardcoded maxHeight: 320 with 40% of window height for better scaling with large text sizes.

    DRY / Maintainability

    • Extracted shared FieldLabel and FieldError components; refactored Input, TextArea, and Select to use them.

@polprog/native-ui@1.3.0

Choose a tag to compare

@github-actions github-actions released this 23 Apr 22:41
08c6b6b

Minor Changes

  • 58820f9: Component bug fixes, single-responsibility refactors, and a test-coverage push past 90%.

    Fixes

    • SearchBar - honour parent-driven resets even when the debounce timer is in flight.
    • BottomTabBar - hide the badge for 0, negative, and empty-string counts.
    • Countdown - clear the interval the moment the counter expires instead of leaking timers.
    • BottomSheet - respect theme.reduceAnimations on exit, not only on enter.
    • Toast - treat duration: 0 as sticky rather than collapsing to the default 3 s timeout.
    • ErrorBoundary - treat resetKeys transitioning between defined and undefined (and back) as a reset trigger.

    Refactor

    • Extracted helpers, hooks, and subcomponents across SearchBar, BottomTabBar, Countdown, BottomSheet, Toast, and ErrorBoundary for clearer single-responsibility boundaries.

    Tests & infrastructure

    • Added suites for Avatar, Skeleton, ScreenContainer, Modal, BottomSheet, ConfettiOverlay, Select, InputPrompt, Divider, Heading, SectionLabel, PaginationDots, MarqueeText, PressableScale, responsive tokens, useResponsiveSpacing, and ThemeProvider.
    • Centralised React Native and Reanimated jest mocks, injected __DEV__ globally.

@polprog/native-ui@1.2.0

Choose a tag to compare

@polprog/native-ui@1.2.0

Minor Changes

  • ec695b5: Add new BottomTabBar, Countdown, and StatTile components with Storybook docs and MSW support.
  • c7ac7bb: Add 22 component test suites (351 tests) covering BottomTabBar, Card, Checkbox, Chip, Countdown, EmptyState, ErrorBoundary, IconButton, Input, ListHeader, ListItem, ListSection, ListSwitchItem, ProgressBar, Radio, SearchBar, Section, SettingsRow, Spinner, StatTile, Switch, and TextArea. Raise coverage thresholds to 50%.
  • c7ac7bb: Improve react-native mock with aria-label, aria-selected, and disabled guard on Switch for accessible testing under jsdom.

Patch Changes

  • d9fb8fa: Fix Storybook play-test queries: use role="tab" for BottomTabBar items, add debounce wait for IconButton, and pointerEventsCheck: 0 for disabled buttons.
  • de7a826: Remove changeset check from pre-push hook that was blocking the changesets release bot.

All notable changes to this package will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

Releases are managed via Changesets.
To add a changelog entry, run npx changeset from the monorepo root.

@polprog/native-ui@1.1.0

Choose a tag to compare

Minor Changes

  • 1dc6ab5: Added semantic tokens layer, strict TypeScript, ESLint a11y rules, and changesets for automated versioning.

All notable changes to this package will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

Releases are managed via Changesets.
To add a changelog entry, run npx changeset from the monorepo root.