Repository navigation
Releases
Release 2026-11-08 01:58
Published packages
- @awdlab/jig-mcp: 0.0.5 → 0.0.6
- @awdlab/jig-custom-types: 0.0.2 → 0.0.3
- @awdlab/jig-themes: 0.0.10 → 0.0.11
- @awdlab/jig: 0.0.13 → 0.0.14
- @awdlab/jig-playwright: 0.0.8 → 0.0.9
@awdlab/jig-mcp 0.0.6
Added
- The package now includes the MIT
LICENSEfile.
@awdlab/jig-custom-types 0.0.3
Added
- The MIT
LICENSEfile is now included in the package distribution.
Changed
- The package manifest is now marked with
sideEffects: falseto enable bundler tree-shaking optimizations.
@awdlab/jig-themes 0.0.11
boxes, while Material gains a backdrop token part for dialog and drawer.
* Shade's message and spinner now support the color input, and Nova's controlRing accepts an optional ring color.
* Barrel index.ts files are added to api/style, api/theme, and `api/utils
@awdlab/jig 0.0.14
Breaking
- The roving focus entry point has moved from
@awdlab/jig/roving-focusto@awdlab/jig/roving-group. - Directive attributes and class property names have been aligned across controls:
[jig-scroller]is now[jigScroller],[scrollShadowTarget]is now
@awdlab/jig-playwright 0.0.9
Breaking
- Deep imports into
dist/are blocked because the package now defines anexportsmap allowing only the package root andpackage.jsonto be imported. - Indexed harness accessors now universally follow the
get{X}ByIndexnaming pattern across harnesses, includingJigTableHarness,JigButtonGroupHarness, `JigFilterBuilder
Release 2026-11-04 23:00
Published packages
- @awdlab/jig-themes: 0.0.9 → 0.0.10
- @awdlab/jig: 0.0.12 → 0.0.13
@awdlab/jig-themes 0.0.10
Changed
- The
jig-slidertrack press area is now2remtall, shows a pointer cursor, and reaches past the track's ends, overhanging the control by up to0.5remalong its long sides unless it isdisabledorreadonly.
@awdlab/jig 0.0.13
track now moves the value live by jumping the nearest handle to the pointer and tracking it until release, firing valueCommit.
Wait, what about the press area?
"The press area is now 2rem tall, shows a pointer cursor and reaches past the track's ends, overhanging the control by up to 0.5rem along its
Release 2026-10-26 18:37
Published packages
- @awdlab/jig-mcp: 0.0.4 → 0.0.5
- @awdlab/jig: 0.0.11 → 0.0.12
@awdlab/jig-mcp 0.0.5
Fixed
get_controlnames each control's real entry point (such as@awdlab/jig/table) instead of the empty@awdlab/jigroot.
Added
- The PrimeNG migration maps
p-table,pSortableColumn,p-columnFilter,pFrozenColumn, andp-contextMenuinput by input.
@awdlab/jig 0.0.12
Added
jig-tablesupportssortLocally, allowing rows to render in the provided order while the header continues to drive[(sort)].jigTableFilterableColumnsupports…AutoApplyto show apply and cancel buttons and…AllowMultipleto restrict filtering to a single condition.- List filters in `jig-
Release 2026-10-26 09:11
Published packages
- @awdlab/jig-mcp: 0.0.3 → 0.0.4
- @awdlab/jig-themes: 0.0.8 → 0.0.9
- @awdlab/jig: 0.0.10 → 0.0.11
- @awdlab/jig-playwright: 0.0.7 → 0.0.8
@awdlab/jig-mcp 0.0.4
- Release tooling only. No @awdlab/jig-mcp changes.
@awdlab/jig-themes 0.0.9
Added
- Disabled days in
jig-calendarare now styled using the newday-disabledclass.
@awdlab/jig 0.0.11
Breaking
jig-input-fieldno longer has aninputIdinput; set the ID directly on the projected control instead.jig-calendarno longer provides a fallback "Date" label, and thecalendar.inputtranslation key has been removed.
Fixed
- Checkbox and switch controls no longer throw an error when configuring
labelledBy. jig-button-groupnow exposesrole="group"on its host and maintains its tab stop on the focused button.- Select
@awdlab/jig-playwright 0.0.8
Added
JigCalendarHarnessprovides adayDisabledlocator to target disabled calendar days.JigSelectHarnessprovides acomboboxlocator to target the combobox element.
Release 2026-10-24 17:34
Published packages
- @awdlab/jig-custom-types: 0.0.1 → 0.0.2
- @awdlab/jig-themes: 0.0.7 → 0.0.8
- @awdlab/jig: 0.0.9 → 0.0.10
- @awdlab/jig-playwright: 0.0.6 → 0.0.7
@awdlab/jig-custom-types 0.0.2
Added
- The
JigCustomTypesinterface can now be augmented to declare app-defined kinds and colors alongside theme defaults.
@awdlab/jig-themes 0.0.8
-safe declaration that updates theme.kinds, theme.colors, and theme.defaults.
* ThemeKind<Control> and ThemeColor expose the active theme's kinds and colors as types, and createTheme now retains the COLORS parameter in its return type.
* `### Fixed`
*
@awdlab/jig 0.0.10
Breaking
jig-filteris renamed tojig-filter-field(JigFiltertoJigFilterField, entry point@awdlab/jig/filter-field), andjig-filter-list-boxhas been removed.JigFilterPropertynow validates property keys against `Extract<AllKeysOfUnion
@awdlab/jig-playwright 0.0.7
- Release tooling only. No @awdlab/jig-playwright changes.
Release 2026-10-23 20:15
Published packages
- @awdlab/jig: 0.0.8 → 0.0.9
- @awdlab/jig-playwright: 0.0.5 → 0.0.6
@awdlab/jig 0.0.9
.
"Group the bullets under ### Breaking, ### Fixed and ### Added, in that order, and use ### Changed for dependency bumps and anything that fits none of the three. Omit a group with no bullets."
Yes! provideJigControls() and provideJigConfig() returning EnvironmentProviders is breaking because spreading no longer type-checks
@awdlab/jig-playwright 0.0.6
Fixed
JigTableHarness.rowAction()now locates row action buttons usingdata-testidinstead ofdata-test-id. This aligns the harness with the updated test ID attribute rendered on row action controls.
Release 2026-10-21 19:25 CEST
Published packages
- @awdlab/jig: 0.0.6 → 0.0.7
- @awdlab/jig-themes: 0.0.5 → 0.0.6
- @awdlab/jig-mcp: 0.0.2 → 0.0.3
@awdlab/jig 0.0.7
Fixed
- Validator directives on jig controls work again under
ngModel,[formControl]andformControlName(angular/angular#69756). A staticrequirednext to[formControl]is still disabled by Angular — useValidators.required. jigInputreportsaria-invalidunder reactive and template-driven forms.- An invalid
<form>no longer paints every field inside it red; a field reflects only its own control.
@awdlab/jig-themes 0.0.6
Fixed
- An invalid form no longer marks every field inside it. The nova, shade and material
jig-input-fieldparts matched any field nested under an.ng-invalid.ng-touchedancestor.
@awdlab/jig-mcp 0.0.3
Changed
- Guidance update:
invalidis set automatically by every form binding — signal, reactive and template-driven — and only needs binding for validity from outside Angular forms.
Release 2026-10-22 00:55 CEST
Published packages
- @awdlab/jig: 0.0.7 → 0.0.8
- @awdlab/jig-themes: 0.0.6 → 0.0.7
@awdlab/jig 0.0.8
Breaking
ValueControlBase.invalidStateandJigInput.invalidStateare public; they were protected.jig-input-fieldno longer infers invalid state from a plain<input>. Bind[invalid]for controls that are not jig controls.
Fixed
styleScopeactually scopes the generated CSS.applyTheme()passed ascopekey while the generators readstyleScope, so every rule fell back to:root.- A scoped theme matches dark mode on an ancestor (
:root.dark &), and a top-level@mediablock is emitted inside the scope selector. - SSR and the client no longer hand out the same auto-generated element id — the counter crosses the boundary via
TransferState. - Injected
<style>elements carry Angular'sCSP_NONCE, and style text is written withtextContentinstead ofinnerHTML. jig-input-fieldreads invalid state from the projected control instead of guessing it with:has(.ng-invalid.ng-touched)selectors.
Added
- Security guide: CSP, Trusted Types, icon trust, passthrough attributes, persisted state.
@awdlab/jig-themes 0.0.7
Breaking
jig-input-fieldtheme parts style a singleinvalidclass reported by the control, instead of matching:has(.ng-invalid.ng-touched)/:has([aria-invalid='true']). Custom field parts that restated those selectors need updating.
Fixed
styleScopeactually scopes the generated CSS — the generators readstyleScopewhileapplyTheme()passedscope, so every rule fell back to:rootand two themes on one page overwrote each other.- A scoped theme matches dark mode on an ancestor (
:root.dark &); unscoped themes keep emitting&.dark. - A top-level
@mediablock is emitted with its rules inside the scope selector;@keyframesand other non-style at-rules stay global. - Generated
<style>elements carry Angular'sCSP_NONCE(or thenonceoption outside Angular), so a nonce-basedstyle-srcno longer drops them. - Style content is written with
textContent, keeping the library clear of Trusted Types sinks.
Release 2026-10-21 07:45 CEST
Published packages
- @awdlab/jig: 0.0.5 → 0.0.6
- @awdlab/jig-playwright: 0.0.4 → 0.0.5
- @awdlab/jig-mcp: 0.0.1 → 0.0.2
@awdlab/jig 0.0.6
Fixed
- A pre-filled reactive or template-driven value no longer disappears from
jigInput. The directive's element sync overwrote whatDefaultValueAccessorhad just written, so edit forms rendered blank.
Changed
- Angular 22.1 → 22.2.3 across the catalog;
@ngneers/signal-translatepeer widened to^22. No migrations to run.
@awdlab/jig-playwright 0.0.5
Changed
- Peers on
@playwright/test^1.64.1, and the Angular catalog moves to 22.2.3. No source changes.
@awdlab/jig-mcp 0.0.2
Changed
- Picks up
@modelcontextprotocol/sdk^1.32.1andzod^4.6.7. No source changes.
Release 2026-08-27 12:02 CEST
Published packages
- @awdlab/jig-mcp: 0.0.1-next.1 → 0.0.1
@awdlab/jig-mcp 0.0.1
First stable release.
Fixed
- The stdio JSON-RPC channel no longer breaks on startup.
init.jswas imported eagerly and pulls inawesome-logging, which writes escape sequences to stdout and hijacks stdin on import; it is now loaded lazily, only for theinitcommand.
Added
- The knowledge pack covers every public directive, including the table's structure directives.