Commit Graph
597 Commits
Author SHA1 Message Date
Clintchiz 646814d6df Fix production dynamic-page modules and trusted email previews
Quality / quality (ubuntu-latest) (push) Canceled after 0s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-10-01 19:47:16 +05:30
ClintchizandClaude Opus 5.5 9030e7d3a3 fix(ui): readable date-time trigger, showcase code panel, release ui 0.8.88
- DatePicker trigger shows the value formatted in the component locale
  ("Oct 2, 2026 · 9:30 AM", "Jul 15, 2026"); the hidden input still submits
  the ISO value.
- Showcase playground code panel: the reactive runtime read "{...}" in the
  rewritten code as interpolations and blanked every object in array props.
  Braces are now written as their own spans, like the server-rendered code.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 16:23:13 +05:30
ClintchizandClaude Opus 5.5 1bed8e4b74 feat(ui): component redesign pass and fixes, release ui 0.8.87
Redesign
- Shared field foundation rules (duplicated across 15 form components and
  emitted globally) are now identical everywhere, so later copies no longer
  silently override earlier redesigns.
- Drawn checkbox and radio controls, white switch thumbs (the thumb was the
  text colour, a black blob in light mode), recessed field wells, keycap
  actions in Modal, Drawer, Popover, Toaster, Pagination, Stepper, DataTable.
- Menus (Dropdown, ContextMenu, Popover, Select dropdown, Navbar panels) share
  one flat raised panel with neutral hover rows and mono section labels.
- Alerts with an accent rail and icon chip; card headers without the grey
  band; accordion, collapse, list, list group, timeline, stats, metrics,
  chat, skeleton, avatar group, clipboard, splitter, section, sidebar,
  navbar and upload progress restyled.
- Chart rebuilt: nice y-axis ticks, gridlines, rounded bars, line and area
  modes, hover tooltips, hidden series leave the scale.

Fixes
- Checkbox and radio labels toggle their input again (empty for="" broke it).
- TimePicker kept every clicked time pressed; only the chosen hour and
  minute are pressed now, and nothing is pressed before a value exists.
- ColorPicker hex readout now follows the picked colour.
- Disabled FileInput no longer shows the native file-input text.
- Date and time panels float instead of pushing content.
- ContextMenu opened at the pointer closes on scroll.
- Drawer left/top/bottom placements slide from their own edge again.
- Image-only Card no longer renders an empty body strip.
- Timeline supports item.time, current/upcoming states, sizes and
  compact/alternate variants; showcase demos use distinct variants.
- ChatBubble: delivery receipts (sending/sent/delivered/read/failed/error)
  and meta aligned to its bubble.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 16:18:13 +05:30
Clintchiz 5eae6f3b3c Fix Trusted Types navigation and fragment history loops 2026-09-30 14:21:13 +05:30
ClintchizandClaude Opus 5.5 1179fc2810 chore(release): redesign UI tokens and publish styles 0.8.26, ui 0.8.86
Visual-only redesign ("instrument panel"): cool graphite neutrals for light
and dark, layered hairline elevation, larger radii, a mono token for
eyebrows/data, keycap-style solid and secondary buttons, recessed input
wells and tab tracks, a stronger dialog, and a theme-driven focus outline.
No props, outputs or behaviour change.

Also records the already-published csr 0.8.42, styles 0.8.25 and ui 0.8.85
changes (optional chaining/nullish in the reactive runtime, shared
theme/accent cookie sync, BackToTop hidden attribute).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 12:00:27 +05:30
Clintchiz f4eaf416be fix(build): serve stable aliases for lazy plugin runtimes 2026-09-25 01:38:33 +05:30
Clintchiz dfb507ffb3 fix(viewer): bundle published runtime dependencies 2026-09-25 01:33:27 +05:30
Clintchiz c77f5e1cec Refresh UI components and showcase; release updated framework packages 2026-09-20 18:13:24 +05:30
ClintchizandClaude Opus 5 d800228585 Release @wrnexus/ui 0.8.82
Carries the selected-tab and clipboard contrast fix.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 16:33:12 +05:30
ClintchizandClaude Opus 5 03efca5bda Lift the selected tab and clipboard label above 4.5:1
Both drew small text in the raw accent, which misses the contrast floor on
a dark surface. They now blend the accent toward the text colour, as the
unselected tab already does.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 16:32:20 +05:30
ClintchizandClaude Opus 5 32d3cac828 Release @wrnexus/ui 0.8.81
Carries the link-button and tab contrast fixes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 16:30:09 +05:30
ClintchizandClaude Opus 5 b34930f8f6 Stop link buttons claiming a pressed state, and lift tab contrast
A Button rendered as a link emitted aria-pressed="", which is not allowed
on a link and fails an accessibility check on every page that uses one
for a secondary action. A link has no pressed state, so the attribute is
gone from that branch; a real button still carries it.

An unselected tab used the muted text colour, which does not reach 4.5:1
against the tab strip at this size. It now blends back toward the text
colour, and the selected tab still reads as selected through its surface,
accent and shadow.

The visual contract manifest is regenerated to match.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 16:29:05 +05:30
ClintchizandClaude Opus 5 2d9797856d Release the thirteen changed packages
Published to the private registry: auth 0.8.32, cli 0.8.70, compiler
0.8.29, core 0.8.15, csr 0.8.40, dev-server 0.8.65, payment 0.8.8, pwa
0.8.11, ssr 0.8.11, styles 0.8.22, test 0.8.15, ui 0.8.80 and viewer
0.8.12.

This records the version bumps and the lockfile. The package sources are
staged from the working tree, so the tarballs also carry source changes
that are still uncommitted here.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 12:34:46 +05:30
ClintchizandClaude Opus 5 cc464afdfb Give the generated server module the workspace's own @wrnexus/core
The execution tests wrote the generated module to an OS tmpdir and
junctioned @wrnexus/core in beside it. On Windows that tmpdir sits on
another volume, and the junction resolved to a second copy of the
package: the request context lives in an AsyncLocalStorage inside core,
so the module read a store the test could never populate and all six
execution tests failed with "needs a request context".

The module is now written inside the repo, where resolution walks up to
this workspace's node_modules and finds the same instance the test
holds. That identity is the whole point, so the junction is gone.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 12:27:32 +05:30
ClintchizandClaude Opus 5 a154e6c26e Keep a loop item's property from being read as a prop of the same name
A component that renders a list, such as FeatureGrid, passes each item
into a child: title={item.title || item.label || "Feature"}. The
compiler decided whether that attribute needed a client binding by
searching the expression for each prop name, so `item.label` matched the
grid's own `label` prop and a binding was emitted.

On hydration the binding is re-evaluated where the loop item is out of
scope, so the expression fell through to its default and replaced the
server's value: every card's title became "Feature". A name after a dot
belongs to whatever precedes it, so it no longer counts as a reference.

Timeline headings follow the same idea: its items were always h4, which
skipped a level and broke the heading order of a page that gives the
timeline no title of its own. They now take h3 in that case.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 12:09:28 +05:30
Clintchiz a4a31032b9 Ship file viewer, editor improvements, and private package releases 2026-09-09 11:20:11 +05:30
Clintchiz 645914955c Expand reusable email section presets
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 21:56:10 +05:30
Clintchiz 01abe351e9 Add reusable read-only CodeMirror source viewer
Quality / quality (ubuntu-latest) (push) Failing after 2s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 21:41:59 +05:30
Clintchiz 9f2b5bb5d9 Apply button visuals to the clickable surface across email targets
Quality / quality (ubuntu-latest) (push) Failing after 11m40s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 21:31:06 +05:30
Clintchiz 45343760e0 Let canvas toolbar inherit the editor preference accent
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 21:18:44 +05:30
Clintchiz 01c1aa567e Isolate block drag handles from selection and editing
Quality / quality (ubuntu-latest) (push) Failing after 10m0s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 21:10:10 +05:30
Clintchiz 640dadaa75 Use compact accessible SVG actions for selected blocks
Quality / quality (ubuntu-latest) (push) Failing after 11m24s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 20:52:29 +05:30
Clintchiz eb1875f0bc Expose reusable builder kit surfaces and email preset pack
Quality / quality (ubuntu-latest) (push) Failing after 10m2s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 19:51:57 +05:30
Clintchiz e019ac34c8 Expose browser-safe email preview rendering
Quality / quality (ubuntu-latest) (push) Failing after 10m35s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 19:39:16 +05:30
Clintchiz 1f90e01e6e Bound style components and unify button style validation
Quality / quality (ubuntu-latest) (push) Failing after 25m18s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 19:08:47 +05:30
Clintchiz 14669bb4f3 Share base style syntax between rendering and editor validation
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 19:06:09 +05:30
Clintchiz 16d804e16f Centralize palette block creation in the email framework
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 18:59:28 +05:30
Clintchiz 89954181ec Expose browser-safe email block definitions
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 18:46:59 +05:30
Clintchiz 0fa3c01a16 Preserve video thumbnail height and verify social target outputs
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 18:43:48 +05:30
Clintchiz df382ed550 Make AMP brand logos responsive within configured width
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 18:28:25 +05:30
Clintchiz 33e350a66a Preserve configured brand logo dimensions across email targets
Quality / quality (ubuntu-latest) (push) Failing after 10m2s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 18:24:38 +05:30
Clintchiz c023a98052 Avoid repeated canvas scans during drag registration
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 18:14:51 +05:30
Clintchiz d41eda7050 Clean partial editor mounts and failed refreshes
Quality / quality (ubuntu-latest) (push) Failing after 10m2s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 18:07:35 +05:30
Clintchiz 3da88510df Constrain email table sizing around intrinsic image widths
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 18:05:16 +05:30
Clintchiz b0fca36bca Apply brand defaults to MJML survey and product buttons
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 17:56:46 +05:30
Clintchiz 07ed6b2596 Preserve image accessibility and dimensions in MJML
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 17:54:05 +05:30
Clintchiz 1c05e02d94 Preserve supported MJML button appearance on import
Quality / quality (ubuntu-latest) (push) Failing after 10m19s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 17:18:57 +05:30
Clintchiz f5139f2c82 Import supported MJML header metadata and typography
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 17:10:25 +05:30
Clintchiz 69db4bd62e Normalize imported column rows and validate MJML documents
Quality / quality (ubuntu-latest) (push) Failing after 10m1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 17:06:23 +05:30
Clintchiz 4e0f5adb5f Preserve global typography and metadata in MJML exports
Quality / quality (ubuntu-latest) (push) Failing after 0s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 17:02:11 +05:30
Clintchiz 6afffe9f08 Keep keyboard drag targets aligned with movement axis
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 16:55:47 +05:30
Clintchiz ca2fcb4016 Filter invalid nested drag targets before collision selection
Quality / quality (ubuntu-latest) (push) Failing after 9m59s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 16:46:01 +05:30
Clintchiz 88207cdd48 Add shared canvas annotation and drag handle runtime
Quality / quality (ubuntu-latest) (push) Failing after 10m0s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 16:33:56 +05:30
Clintchiz 0f8d10eb91 Support explicit empty slot drop zones in shared editor
Quality / quality (ubuntu-latest) (push) Failing after 22s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 16:28:11 +05:30
Clintchiz 7110e1a7f1 Align email buttons consistently across formats and directions
Quality / quality (ubuntu-latest) (push) Failing after 0s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 16:21:08 +05:30
Clintchiz f9cf2a648a Honor button typography and radius across email formats
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 16:18:18 +05:30
Clintchiz a1704877e8 Protect editor sessions from unsaved link navigation and unload
Quality / quality (ubuntu-latest) (push) Failing after 10m2s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 16:15:01 +05:30
Clintchiz 88f2e456ef fix(email): validate MJML before exposing exports
Quality / quality (ubuntu-latest) (push) Failing after 1s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 15:59:56 +05:30
Clintchiz 2a93e141aa fix(email): wrap root blocks in valid MJML layouts
Quality / quality (ubuntu-latest) (push) Failing after 10m0s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 15:56:23 +05:30
Clintchiz 7afd60e812 fix(email): inherit button brand colors across render targets
Quality / quality (ubuntu-latest) (push) Failing after 22s
Quality / quality (windows-latest) (push) Canceled after 0s
2026-09-05 15:51:43 +05:30