Skip to content

Releases: webjsdev/webjs

@webjsdev/core 0.7.42

Choose a tag to compare

@github-actions github-actions released this 22 Jul 11:32
ffded86

Fixes

  • correct core .d.ts type surface (phantom base + register param) (#1038) 2cb78130

    • fix: stop core overlay leaking WebComponentBase as a value export

    WebComponentBase is an internal base class the runtime never exports,
    but the .d.ts declared it as an abstract class. A class is a value as

@webjsdev/cli 0.10.45

Choose a tag to compare

@github-actions github-actions released this 22 Jul 11:32
ffded86

Features

  • add streaming-action, view-transition, and webjs-suspense gallery demos (#1039) 7e523375

    • feat: add streaming-action gallery demo (for await over an async generator)

    A use-server action returning an async generator, consumed at the call
    site with for await so tokens render as they arrive. Fills a gallery gap:

  • fold auth into the default template as a gallery card, drop saas (#1040) 94b3b82a

    • chore: start auth gallery card work

    • feat(scaffold): add auth gallery card (login, session, protected route)

@webjsdev/server 0.8.55

Choose a tag to compare

@github-actions github-actions released this 21 Jul 11:45
832f29e

Features

  • Elision tokens track the native light-DOM slot surface (#1022) 842f9f84. Component elision drops the removed setSlotContent / hasSlot client-method signals and narrows the dynamic-slot detector to the native read surface (slotchange, assignedNodes / assignedElements / assignedSlot), so a display-only slotted wrapper stays elidable while a component that genuinely reads its slots still ships.

@webjsdev/core 0.7.41

Choose a tag to compare

@github-actions github-actions released this 21 Jul 11:45
832f29e

Breaking

  • The WebJs-specific light-DOM slot API is removed in favour of the native DOM slot API (#1022). setSlotContent(), hasSlot(), and the this.slots record no longer exist. Light DOM and shadow DOM now share one native surface: read slotted content with assignedNodes() / assignedElements() / assignedSlot / slotchange, and write it with appendChild / insertBefore / removeChild / el.slot = / innerHTML. Conditioning a render() on the slot record is gone. Use CSS :has() / slot:empty or a slotchange listener instead.

Features

  • Full light-DOM slot parity with shadow DOM (native API, one writer) (#1022) 842f9f84. Light-DOM <slot> now behaves identically to shadow DOM: post-mount native writes are live, the full read surface matches, and flipping static shadow changes nothing else. Built on a single-writer record model that ends the pre-#1016 three-observer bug lineage.

Fixes

  • Project forwarded-slot content and named-slot slices on the client (#1026) 4367b318. A template that forwards its slot into a nested component (html\`) now projects on client mount, not only during SSR (#1023), and a layout's ${children}` partitioned across multiple named slots now re-projects every named slice across a soft-nav swap, not just the default slice (#1024).

@webjsdev/server 0.8.54

Choose a tag to compare

@github-actions github-actions released this 20 Jul 05:54
0ad854e

Features

  • rebuild the client-router swap on route-keyed comment boundaries (#1016) 01b21276

    • fix: full-load a soft nav fired while the document is still parsing

    Phase 0 of the router/slot structural rebuild (#1013): the quick win.

@webjsdev/core 0.7.40

Choose a tag to compare

@github-actions github-actions released this 20 Jul 05:54
0ad854e

Features

  • rebuild the client-router swap on route-keyed comment boundaries (#1016) 01b21276

    • fix: full-load a soft nav fired while the document is still parsing

    Phase 0 of the router/slot structural rebuild (#1013): the quick win.

Fixes

  • preserve comment markers when parsing a client-router navigation (#1010) 6cb3e8dc

    • fix: preserve comment markers when parsing a client-router navigation

    Document.parseHTMLUnsafe strips every HTML comment in Chromium 150, and
    parseHTML routed every doctype'd response through it. The whole partial-swap

@webjsdev/core 0.7.39

Choose a tag to compare

@github-actions github-actions released this 15 Jul 19:09
7bd8416

Fixes

  • recover a dropped wj:children close marker on soft nav (#994) 779dbb1d
    Recover an orphaned wj:children open marker whose close comment was dropped by the browser parser (a cross-engine parse race seen on Android Chrome and desktop Chromium), so a soft nav takes the correct scoped swap and the outer-layout navbar keeps its DOM identity instead of being wiped by the destructive full-body fallback. Bound the recovered range against the well-formed side's trailing-sibling count so a footer in the marker's own parent is preserved, and keep buildHaveHeader strict so an orphaned page fetches the full page where the bounding aligns.

@webjsdev/cli 0.10.44

Choose a tag to compare

@github-actions github-actions released this 15 Jul 19:09
7bd8416

Features

  • add webjs-frame gallery demo and rework the server-actions demo (#989) 69b3e3f9
    • feat: add webjs-frame partial-swap gallery demo

    • fix: prune modules/frames in gallery:clear reset

@webjsdev/ui 0.3.9

Choose a tag to compare

@github-actions github-actions released this 14 Jul 12:20
1a339aa

Features

  • local-first registry resolution + on-demand example delivery (#984) 5e9be0b1
    • init / add / list / view resolve components from the packaged registry with no network round-trip; a custom --registry (or REGISTRY_URL) still fetches, and diff keeps comparing against the live upstream.
    • add copies a Tier-1 helper as a lean file (the class helpers plus a pointer) and strips the worked @​example; the full structural example is served on demand by webjsui view and the new read-only MCP ui tool (one shared @​webjsdev/ui/registry/extract projector).
    • diff now compares each local file against what add would write (import-rewrite plus example-strip), so a pristine install diffs clean.
    • init exits non-zero when the theme tokens cannot be written (previously a silent, unstyled install), and add self-heals missing tokens.

@webjsdev/server 0.8.53

Choose a tag to compare

@github-actions github-actions released this 14 Jul 08:39
bcb2bed

Fixes

  • reactive-props-no-class-field false positive on object-literal keys in a method (#980) f55eab75