Skip to content

Releases

v0.27.0

Choose a tag to compare

@github-actions github-actions released this 09 Nov 14:23
e7540d1

Added

  • npm run check validates manifest platforms (#95). Rule M011 rejects unknown platform keys and non-Mortar… type names, and, when native/ is present, a declared SwiftUI or Compose type that the native sources do not define. search_components results include platforms.
  • Repository automation, slice 1 of #62. Dependabot for npm and GitHub Actions (weekly, grouped; no auto-merge), issue forms for bug / component / theming / docs, CodeQL and dependency-review workflows, a weekly health check that opens an issue on failure, and proposed labels in .github/LABELS.md. Still open for a later slice: dependency auto-merge, release-please / Changesets, Claude Code Action, Scorecard, and the maintainer policy decisions listed on #62.

v0.26.0

Choose a tag to compare

@github-actions github-actions released this 09 Nov 13:50
3cdbe0b

Added

  • Contained overlay portals for embedded widgets (#101). ThemeProvider scope="container" mounts an overlay host inside its wrapper. Modal and SlideOver accept portal="contained" to render into that host with local backdrop bounds, focus trapping, Escape handling and the container's theme, without covering unrelated host-page controls. The default portal="document" is unchanged. Menus and listboxes still use the existing body-level theme portal so they are not clipped.
  • mortar audit flags ancestor CSS that restyles Mortar controls (ancestor-override, #107). An obvious local selector such as .toolbar button that sets background, border, typography or radius, and reaches a Mortar control under a matching host ancestor in the JSX, is an error. Layout-only rules (margin, display, flex, gap, …) and the same selector over a native control (with Mortar used elsewhere) are not flagged. Nested or ambiguous selectors stay a manual review.

v0.25.0

Choose a tag to compare

@github-actions github-actions released this 09 Nov 13:13
e9170a6

Added

  • mortar audit flags mis-migrated Input adornments (input-static-action, input-absolute-adornment, #104). Static text in Input action should be prefix/suffix; an absolutely positioned decorative sibling next to a labeled Input should be leadingIcon/trailingIcon. The Input contract and DESIGN.md document that action is for an attached control, not generic end content. A browser fixture checks that icons and suffixes align with the text box, not the label.

v0.24.0

Choose a tag to compare

@github-actions github-actions released this 09 Nov 12:33
b6b977c

Added

  • mortar audit flags block elements in phrasing-only slots (invalid-phrasing, #102). Banner children and AuthLayout description are rendered inside a <p>, so a nested <div>, <p>, heading or similar is invalid HTML. Contracts list these as phrasingSlots and say they are phrasing-only; the audit reports obvious block JSX in them. Keep announcements and auth descriptions as text, links or emphasis; use Section for full marketing blocks.

v0.23.0

Choose a tag to compare

@github-actions github-actions released this 09 Nov 12:18
59ea89d

Added

  • mortar audit legacy-package rule (#65). Flags imports and package.json dependencies of the retired private-registry package (see Migration). The message says to install and import @tonycodes-ui/mortar. A leftover node_modules tree for the old name does not count as installing the public package.

v0.22.3

Choose a tag to compare

@github-actions github-actions released this 09 Nov 11:51
797b1b1

Fixed

  • Switch, Checkbox, Input and PasswordInput reject React children (#98). Their types no longer inherit children from the native input attributes (the accessible name is label), and a leftover child is dropped so it cannot be forwarded onto a void <input> and crash React. mortar audit reports JSX body children on components with no children slot as unknown-prop.

v0.22.2

Choose a tag to compare

@github-actions github-actions released this 09 Nov 11:28
0d1b734

Added

  • Package metadata for npmjs presentation (#63): keywords, engines.node >= 22 (matching the CLI and CI), and README badges for npm version, provenance, CI and the MIT licence. Repository and bugs URLs were already set. Remaining #63 work (Pages DNS cut-over, retiring the old registry, consumer migrations) is maintainer-side.

Fixed

  • mortar audit no longer misreads apostrophes in JSX slot text as props (#100). An expression such as footer={<>Don't have an account?</>} was treated as if the apostrophe opened a JavaScript string, so the scanner swallowed the rest of the tag and reported false unknown-prop findings (export, default, App). Brace skipping now uses the same quote-start rule as string blanking: an apostrophe in JSX text is not a string delimiter.

v0.22.1

Choose a tag to compare

@github-actions github-actions released this 08 Nov 12:50
2ef4f34

Changed

  • 0.22.0 is the first Android version in GitHub Packages (#95) (#120)

v0.22.0

Choose a tag to compare

@github-actions github-actions released this 08 Nov 12:14
0784798

Added

  • Mortar for Jetpack Compose is published to GitHub Packages (#95), as codes.tony:mortar at each release's version, from https://maven.pkg.github.com/tonycodes/mortar. A new workflow publishes after each release of main, at its tag, with the run's own GITHUB_TOKEN. See Native apps.

v0.21.0

Choose a tag to compare

@github-actions github-actions released this 08 Nov 11:24
342fb6d

Added

  • Native equivalents in manifests and agent tools (#95). The 15 components with SwiftUI and Compose versions declare them as platforms in their manifests and the catalogue. get_component shows them under native with their imports; a build packet for an iOS, iPadOS or Android brief adds get_guide native and a native section listing them; the agent skill and MCP instructions point native apps at the libraries.