Changelog
All notable changes to Catnip packages.
Versioning
Catnip follows Semantic Versioning:
- Major — Breaking changes
- Minor — New features, backward compatible
- Patch — Bug fixes
Releases are managed via Changesets. Packages are published to the Signicat GitLab npm registry.
Canonical history — Release notes for every publishable package are maintained on this page first. Some packages also ship a CHANGELOG.md in their npm tarball for convenience. When cutting a release, manually bump package.json versions and update this document (move Unreleased → version section). Do not use Changesets unless explicitly requested.
@signicat/catnip-components
Unreleased
1.0.10
- CatnipLink — Left/right icon treatments use the theme-aware button radius token.
- CatnipFieldLabel (breaking) — Removes the redundant standalone
ssize. Large labels now keep medium (500) weight and use a 24px info icon; optional text uses regular (400) weight and content/neutral/strongest. - CatnipSpinner (breaking) — Replaces
subtlewith the Figma-alignedarc(quarter/three-quarter) and adds an independentinversecolor treatment for dark and strong-color surfaces. - CatnipLink — Aligns icon interaction treatments with Figma: Secondary icons remain transparent on hover/press, while Tertiary icons use the neutral subtlest hover/pressed backgrounds.
- CatnipUser — Avatar initials prefer content/neutral/strongest-inverse and fall back to AA-safe pure black or white for custom
colorfills, including translucent fills when the underlying surface can be resolved. The catalogue's expandable picker keeps the trigger avatar color synchronized with the selected option. - CatnipCounter (breaking) — Aligns the API with Figma:
appearancenow accepts onlyprimary/secondary, while the new booleandisabledproperty composes with either appearance and applies its designed token treatment. - CatnipToggle — The custom-element host now shrink-wraps the 20px/28px control row without adding inline baseline space below it.
- CatnipCheckbox / CatnipChecklist / CatnipDropdown — Checked and indeterminate checkbox chrome now matches Figma: the filled box uses one uninterrupted semantic background colour, and component-specific check/dash vectors replace the differently proportioned catalogue icons.
- Dependencies — Picks up @signicat/catnip-design-tokens@1.0.4 and @signicat/catnip-css@1.0.5.
1.0.9
- Test selectors — Custom
testSelectorson one instance no longer leak into the shared defaults. Other instances of the same component (and instances created later) keep their defaultdata-testvalues.
1.0.8
- CatnipGraphic — In dark mode, graphics paint primary with Brand 100 and accent with Brand 600 (via
--catnip-graphic-primary/--catnip-graphic-accent). Light and EndUI are unchanged. - Dependencies — Picks up @signicat/catnip-design-tokens@1.0.3 and @signicat/catnip-css@1.0.4.
1.0.7
- CatnipAlert (breaking) — Removes the
toastappearance. Alert is in-flow only (banner,inline,inlineInverse,text) and defaults toinline. Viewport overlay feedback,duration,horizontalPosition, andverticalPositionmove tocatnip-toast. Banner still dismisses from the close button. - CatnipToast — New
catnip-toastviewport overlay with timed or persistent dismissal, close button, and the same intent / size / announcement / slot surface as Alert. - Dependencies — Picks up @signicat/catnip-design-tokens@1.0.2 and @signicat/catnip-assets@1.0.3.
1.0.6
- Documentation — Adds an agent skill page. Point coding agents at the published
SKILL.mdfor this docs environment (.devor.com) so they consume the full Catnip stack in product apps (components, React wrappers, CSS, tokens, icons, assets). The same file ships as@signicat/catnip-components/SKILL.md. - Package — Ships
html-custom-data.json(VS Code / Cursorhtml.customData) generated from the Custom Elements Manifest. The manifest and custom-data file are also published on the docs host as/custom-elements.jsonand/html-custom-data.json. - Documentation — Installation and Quickstart include copy-paste Vue
isCustomElement, TypeScriptwindow.Catnipreference, and editor custom-data setup. - CatnipFileItem —
showDownloadandshowDeletehide those actions onready/donerows (both default totrue).
1.0.5
- CatnipDropdown / CatnipListItem — Long option and list-item labels wrap. The open list is at least as wide as the trigger and grows up to
listMaxWidth(default 320px) so long values wrap instead of stretching the panel. - CatnipLink — Size styles keep text-token fallbacks (s 12/16, m 14/20, l 16/24, weight 500) so font-size is not empty when
--catnip-font-text-*is unset. - Typography — Drop invented weight presets (
--catnip-font-text-s-medium) and leftover Prime size/letter-spacing vars. Use the real--catnip-font-*preset plusfont-weightwhen the design needs medium. - CatnipInputDate —
valueslot customizes the selected-date display inside the default trigger;triggerslot replaces the whole field shell (same pattern as Dropdown). - CatnipInputDate — Range preset sidebar spans the full panel height (divider only, no List card shadow). Reset / Cancel / Apply sit under the calendars.
1.0.4
- CatnipTooltip — Anchor wrappers grow with the host (
flex-grow: 1) so a stretchedcatnip-tooltipno longer shrink-wraps and clips the available width of a slotted control. - CatnipInputFile (breaking) — Narrows the field-level
intentAPI to the implementedneutralanddangerpresentations. Warning and success remain available for individual supporting-text messages. - CatnipDrawer — Aligns the predefined desktop widths to the Drawer layout grid: S is now 492px and M is 578px; L remains 664px.
- CatnipStatus / CatnipBadge / CatnipLink — Uses the disabled subtle background token for filled disabled statuses, subtle disabled badges, and primary disabled link icon backgrounds.
- CatnipToggle — Aligns off-state borders, disabled icon and label colours, and 500-weight labels with Figma. Adds a focusable
readonlystate that exposesaria-readonly, preserves the current value, and rejects interaction. - Icons — Clear and toggle affordances use the renamed
cross-filledicon instead of the removedreseticon. - CatnipFileItem — Uses the strong success content colour for the completed metadata
tick-circlewhile retaining neutral percentage text. - CatnipAlert documentation — Restores a dismissed banner in the live example through a keyboard-accessible Show banner action, matching the existing toast preview workflow without changing the component's one-shot dismissal behaviour.
- CatnipProgress — Aligns the L presentation with Figma by using the text-l typography token and a 24px intent icon while preserving text-m and the 20px icon for M.
- CatnipBadge — Aligns outer padding with the updated Figma specification so one-icon badges render as 20px, 24px, and 28px squares at S, M, and L while labelled badges retain their separate inline label spacing.
- CatnipStepper — Keeps the docs playground warning above vertical previews without overlapping the component, exposes the omitted
stepNamePositionstate as(none)for warning-free hidden names, and restores Figma's marker-to-connector spacing in vertical and hidden-name horizontal layouts. - CatnipList / CatnipListItem — Aligns danger and disabled row states with Figma: unselected rows are transparent, danger hover uses the danger subtle surface, selected single-choice rows retain their semantic selection fill, and disabled styling takes precedence over danger.
- Documentation playground — Editable JSON arrays now remain the source of truth for live previews; option changes update Toggle Group, Checklist, and Radio Group immediately instead of being overwritten by fixed preview defaults. Tabs also keep the visual selection synchronized with
modelValueafter interaction. Local examples now cover Toggle Group and Dropdown country-picker states. - CatnipToggleGroup (breaking) — Removes the unsupported S size so the public API and docs expose only the Figma M/L variants. Option data also accepts an optional
iconrendered before the label, with M/L icon sizing and updated catalogue and local playground examples. - CatnipRangeInput (breaking) — Removes the unsupported S size so the public API and docs match Figma's M/L variants. The value tooltip pointer stays aligned with the thumb at the range ends as well as at 50%.
- CatnipCheckbox / CatnipChecklist — Aligns checkbox state styling with Figma: active unchecked boxes are transparent, disabled/read-only states override danger, unavailable fills and icons use disabled semantic tokens, and danger hover uses its dedicated border token. Initial indeterminate values now synchronize to the native checkbox, and forced-colors mode retains a visible focus indicator.
1.0.3
- Shared prop values — Common size, intent, appearance, orientation, placement, and alignment vocabularies now have canonical runtime values and TypeScript types, while each component remains narrowed to only the values it supports.
- Generated APIs — Custom Elements Manifest generation preserves literal unions derived from shared aliases so framework consumers retain precise public prop types and IDE autocomplete.
- Documentation — Component property tables consistently show exact literal unions, reusable complex types, defaults, and descriptions that match the implementation.
1.0.2
- Package types — The default export condition now exposes
dist/main.d.tsto NodeNext/bundler TypeScript consumers, including the React package's browser-only dynamic registration import.
1.0.1
- Styles — Shadow roots no longer duplicate component SCSS in a
<style>tag. CSS is applied only via constructedadoptedStyleSheets, shared across instances. - Overlays — Tooltips, dropdown/date/phone panels, and Tabs overflow menus park inside the open modal Dialog / Drawer (
<dialog>) and use the Popover API so they are not left inert ondocument.bodyundershowModal().
1.0.0
- Stable — First 1.0 (soft) release. Publishable Catnip packages are aligned at 1.0.0.
- CatnipDialog (breaking) — Footer is the
footerslot only. Removed generated cancel/submit buttons and thecancelText/submitText/*Button*/centeredFooter/footerButtonSizeprops, plusdialog-cancelanddialog-submit. - CatnipDialog —
padding(default/none) controls the surface inset.--catnip-dialog-paddingoverrides the length.--catnip-dialog-widthoverrides t-shirtsize(usemax-contentto hug content). - CatnipDrawer — Specs document
--catnip-drawer-widthon the host to override t-shirtsize(same pattern as Dialog).
0.0.60
- CatnipBadge (breaking) —
appearanceissubtle/strong(wasdefault/inverse).subtleis the wash;strongis the solid surface. - CatnipStatus (breaking) —
appearance(plain/filled) is removed. Usefilledfor the pill; off is indicator + label only. - CatnipButton / CatnipSplitButton — Secondary and ghost appearances use
--catnip-color-content-neutral-strongestfor label and icon colour (Figma: was primary strongest).
0.0.59
- CatnipRadio — Renders the visible ring, selected dot, and focus treatment as concentric vector circles so their shape and alignment remain stable when browser zoom maps CSS pixels to fractional device pixels.
0.0.58
- CatnipFileItem — In-progress metadata uses the
uploading-progressicon instead ofclock. - Host — Shared
:hostfont uses--catnip-font-family-default. - Dependencies — Picks up @signicat/catnip-assets@0.0.17 and @signicat/catnip-icons@0.0.17 (
downloading-progress,uploading-progress).
0.0.57
- CatnipStatus — Optional
leftIcon/leftIconSlotreplace the status dot with a catalog icon. Empty default slot uses icon-only layout (dot or icon). Setaria-labelfor the accessible name (role="img"); a development warning is logged when it is missing. Filled uses equal container padding, extra inline padding on the label wrap, and a tighter gap between indicator and value. The status dot stays circular (aspect-ratio: 1). - CatnipBadge — Empty default slot uses icon-only layout (label wrap and its inline padding are hidden). Set
aria-labelfor the accessible name (role="img"); a development warning is logged when it is missing. - CatnipInputNumber — Uses semantic primary/danger focus-border tokens, semantic warning/success border tokens, and non-layout-affecting inset strokes so sizes s/m/l render at their specified 32/40/48px heights without reducing the stepper targets.
- CatnipRadio — Aligns the 20/24px control envelopes and 16/20px visible circles with Figma; updates neutral, danger-hover, disabled, and read-only tokens; prevents danger styling from overriding disabled/read-only checked states; removes the normal unchecked fill; and keeps read-only options focusable without applying the component focus ring and exposes supported
aria-disabledsemantics. - Dependencies — Picks up @signicat/catnip-design-tokens@0.1.12 and @signicat/catnip-css@0.0.17 (
--catnip-color-border-danger-strong-hover).
0.0.56
- window.Catnip — First-wins host global for JS APIs (
version,registerTranslate,configure,parseEmitDetail,CatnipConfig). Micro-frontend remotes must usewindow.Catnipand must not import a second copy of the package for i18n or config. - Docs — Installation documents one instance of Catnip in micro-frontends (shell mounts components and CSS; remotes inherit that version).
0.0.55
- CatnipListItem / CatnipDropdownOption (breaking) — slots
leading/trailingare renamed toleft/right. - CatnipDialog / CatnipDrawer (breaking) — slots
headerSlot/footerSlotare renamed toheader/footer(same names as List). - CatnipDropdown (breaking) — slots
list-header/list-footerare renamed tolistHeader/listFooter. - CatnipAlert (breaking) —
alertIconis renamed toleftIcon. SlotalertIconSlotis renamed toleftIconSlot. - CatnipFileItem (breaking) — slot
iconSlotis renamed toleftIconSlot. - CatnipInputDate (breaking) —
calendarLayoutis renamed topanelOrientation. - CatnipStepper / CatnipInputFile (breaking) —
layout(horizontal/vertical) is renamed toorientation. Paginationlayout(default/compact) is unchanged. - CatnipDivider (breaking) —
verticalis replaced byorientation(horizontal/vertical).variantis renamed toappearance. - CatnipDialog / CatnipDrawer (breaking) —
hasBackdropBluris renamed tobackdropBlur. Drawerclose-dialog/after-dialog-closeare renamed toclose-drawer/after-drawer-close. Dialog keeps the dialog-named events andupdate:open. - CatnipInput (breaking) —
rightIconClickis renamed toright-icon-click. Test selector keytrailingButtonis renamed torightButton(defaultdata-testcatnip-input-right-button). - CatnipRangeInput (breaking) —
alwaysShowValueTooltipis renamed toshowValueTooltip. - CatnipCard (breaking) —
urlis renamed tohref. - CatnipSplitButton / CatnipTooltip — emit
open-changefor controlledopen(same pattern as Dropdown / Date / Phone). - Events — Documented the intentional split: modals use
update:open; popovers and fields useopen-change. Pagination keepspage-change;update:modelValueis canonical. - Dependencies — Picks up @signicat/catnip-assets@0.0.16, @signicat/catnip-icons@0.0.16, and @signicat/catnip-css@0.0.16 (updated
bookglyph).
0.0.54
- CatnipCard / CatnipUser (breaking) —
interactiveis a boolean (falseby default). Card no longer usesbehavior="container" | "interactive"; setinteractivefor the native link/button surface. User no longer usesinteraction="static" | "expandable" | "clickable"; setinteractivefor the pill button, and when true useinteraction="click"(default, no chevron) orinteraction="expand"(chevron, Dropdowntrigger). - CatnipUser — Extra end padding is for
interaction="expand"and for chips that show the name. Avatar-only click chips keep even padding. - CatnipTooltip (breaking) —
positionis removed. Useplacement(top,right,bottom,left) to match the floating-panel API.isSubtleis renamed tosubtle. - CatnipInputDate (breaking) —
placementis renamed topanelPlacement(HTML:panel-placement) so the calendar panel is distinct from Tooltipplacement. - CatnipDialog / CatnipDrawer (breaking) —
isOpenis renamed toopen. Dismissal emitsupdate:open(replacesupdate:isOpen). - CatnipAlert (breaking) —
closableis renamed toshowCloseButtonso it matches Dialog/Drawer (show the X). Dialog/Drawerclosablestill means allow Escape/backdrop dismiss. - CatnipChip (breaking) —
leadingIconis renamed toleftIcon(HTML:left-icon) to match Button, Link, Badge, and Input. The slot remainsleftIconSlot. - CatnipToggleGroup (breaking) —
variantis renamed toappearance(default|accent). - CatnipStepper (breaking) —
appearance(horizontal|vertical) is renamed tolayout. Step itemisActiveStepis renamed toactiveStep. - CatnipSpinner (breaking) —
isSubtleis renamed tosubtle.
0.0.53
- CatnipInputDate — Date picker v2: one combined trigger (leading calendar icon, typed value, chevron), dual-month or vertical calendars,
showPresetsrange sidebar with built-in rolling windows, Reset / Cancel / Apply for time and presets,calendarLayout/placement/panelAlign. Range no longer uses split From/To fields.showClearButtondefaults totrue. Range month/year header opens a year grid plus a month grid (side by side horizontally, stacked vertically); single date still uses the year grid. The trigger fills available width and wraps the value (growing in height) when the container is too narrow. Range time fields sit under each month with the same column divider; they are labeledHH:mmtext inputs (no native time picker). Rangehorizontalcalendars switch to the stacked vertical layout below 800px. The preset sidebar stretches with the calendar column (no fixed list height). - Fields — Input, Number, Phone, Chip, Date, File, Range, Dropdown, Checklist, Radio Group, Toggle Group, and Field Label hosts are
display: block; width: 100%so they fill the container. Pagination and Tabs do the same. Dropdown with a customtriggerslot still shrinks to the slotted control. Single Checkbox, Radio, and Toggle stay shrink-to-fit.
0.0.52
- CatnipLink (breaking) — Figma Link appearances
primary,secondary,tertiary, andunderline; sizes(kept defaultm); optionalleftIcon/rightIcon(off by default; passarrow-rightfor the trailing arrow); icon slots; primary/secondary hover-press icon pills; pill focus ring. Removes theunderlineboolean — useappearance="underline"for the always-underlined treatment. - Typography — Component styles use
font: var(--catnip-font-…)shorthands, with a separatefont-weightonly when the design needs a weight the token does not include.
0.0.51
- CatnipCard — New framework-agnostic
catnip-cardsurface with non-interactivecontainerand single-actioninteractivebehaviors. Interactive navigation uses a native anchor whenurlis present; in-page actions use a nativebutton type="button". Includes Figma-aligned default, hover, pressed, focus, and disabled treatments; native link attributes and safe_blankrelationships; accessible-name/current-item hooks; container/link/button disabled semantics; ordinary composed click behavior; a slot-only content API; stable test selector and CSS part; tests; catalogue accessibility guidance; live and local playground use cases; status registration; and a generated React wrapper.
0.0.50
- CatnipStepper — New WCAG 2.2 AA-oriented
catnip-stepperwith horizontal and vertical appearances, current Figma interaction styling, full-name-first responsive layout, accessible step-by-step overflow controls, ellipsis plus full-text title only for exceptionally long individual names, explicitshowStepsName, independentisActiveStepstate combined with default/completed/warning/danger intents, always-present completed connectors, native ordered-list andaria-current="step"semantics, optional native-button navigation with synchronizedstep-clickstate, disabled steps, localized assistive status text, development and missing-name warnings, tests, catalogue docs, playground demos, and a generated React wrapper.
0.0.49
- CatnipProgress — New determinate
catnip-progresscomponent with M/L sizes, default/success/warning/danger intents, optional label/percentage/icon presentation, ashowZeroIndicatormarker at 0%, native progress semantics, flow and upload guidance, tests, catalogue docs, and playground demos. Emptylabeluses bundledprogress.label. CatnipFileItem now composes its bar-only presentation (hideLabel,showZeroIndicatoroff) without changing File Item's public API; composed upload names usefileItem.uploadComplete/fileItem.uploadProgress.
0.0.48
- CatnipUser — Catalogue playground and local demos compose
interaction="expandable"catnip-useras a Dropdowntrigger. Native button clicks compose so Dropdown can open; there is no componentclickevent. Emptynameuses bundleduser.unassigned;unassignedLabeloverrides that copy. Displayedinitialsare clipped to two characters. Avatar initials ink follows fill luminance (on-primary on dark, content-primary on light).interactionreplaces theexpandableboolean:static(default),expandable(pill + chevron),clickable(same pill, no chevron).selectedis the open/pressed appearance when interactive; Dropdownaria-expandedon the host applies it too. The chevron rotates 180° whenselectedor when Dropdown setsaria-expanded.hideNameshows avatar-only.avatarslot and default name slot override the built-in circle and label. Named-slot presence ignores fallback nodes so Unassigned’s user icon does not loopslotchange. - CatnipDropdown — Custom
triggerslot now toggles open/close and applies combobox ARIA (aria-haspopup,aria-expanded,aria-controls) on the slotted control. - CatnipDropdown / CatnipInputPhone — Field
size="l"now applies listldensity to the open panel (rows inherit it).s/mkeep listm. - Dependencies — Picks up @signicat/catnip-design-tokens@0.1.11 and @signicat/catnip-css@0.0.15 (
--catnip-color-background-warning-subtle-hover).
0.0.47
- CatnipUser — Compact
catnip-userfrom Figma:name(empty = Unassigned + user icon), overridableinitials,color(default purple),clickablepill + chevron (no options list), anddisabled. Catalogue docs and playground included.
0.0.46
- Dependencies — Picks up @signicat/catnip-design-tokens@0.1.10, @signicat/catnip-assets@0.0.14, and @signicat/catnip-css@0.0.14 so Signicat lockups in
catnip-graphicuse--catnip-logo-background/--catnip-logo-content.
0.0.45
- CatnipBadge — New
catnip-badgecomponent with S/M/L sizes, default/inverse appearances, seven semantic intents, typed Catnip icon props, custom icon slots, tests, catalogue docs, and playground demos. - CatnipDrawer — New modal
catnip-drawercomponent with native dialog semantics, S/M/L widths and a CSS width override, full-width mobile behavior, controlled dismissal, focus containment and restoration, slot-only header/body/footer composition, backdrop options, tests, catalogue docs, and playground demos.
0.0.44
- CatnipPagination — New
catnip-pagination: layouts default (item range + page list) and compact (first/prev/current/of N/next/last);modelValuepage binding; ellipsis truncation; composes utilitycatnip-button. Catalogue docs and playground included. - CatnipInputNumber — Fix controlled
modelValuenot showing in the field until focus (display string now always syncs from the prop, including on mount).
0.0.43
- CatnipCounter — New
catnip-countercount badge: appearances primary / secondary / disabled; sizes s / m / l;valueprop. Catalogue docs and playground included.
0.0.42
- CatnipStatus — New
catnip-statusindicator (dot + label): intents neutral / informative / success / warning / danger / disabled / brand; appearances plain / filled; sizes m / l. Catalogue docs and playground included. - CatnipDropdown — Fix
list-header/list-footerslots in the teleported panel (reparent light-DOM content into the portal while open, same pattern as Tooltip). - Floating panel — Reposition when the anchor resizes (e.g. multi-select chips wrapping to more/fewer rows) via
ResizeObserverinuseFloatingAnchor. - CatnipDropdown — Keep the border under the Select all row, and sync it into teleported list portal styles so it renders in the open panel.
- CatnipDropdown — Controlled
openuses Tooltip-stylenulldefault and optimistic open state so the panel toggles even when the CE booleanopenprop lags. - FloatingPanel — Ignore the shadow host on outside-click (avoids fighting the trigger toggle) and restore VueUse default capture.
- CatnipDropdown / CatnipInputDate / CatnipInputPhone — Emit
open-changefor open state (replacesupdate:open, which Vue cannot listen to on custom elements). Always emitted on open/close. Use.open+@open-change. - Dependencies — Picks up @signicat/catnip-design-tokens@0.1.9.
0.0.41
- CatnipAlert — New
catnip-alertcomponent with Toast, Banner, Inline, Inline inverse, and Text appearances; six semantic intents; M/L sizes; intent-mapped Catnip icons and custom icon/content slots; persistent or timed dismissal; viewport positioning; live-region announcement levels; tests, catalogue docs, and playground demos.
0.0.40
- CatnipGraphic — Breaking: remove
--catnip-graphic-color/--catnip-graphic-accent-color. Color via--catnip-graphic-primaryand--catnip-graphic-accentonly (from:roottokens, or override on the host). Host no longer remaps primary tocurrentColor(that shadowed Brand 900). - Docs — Graphic overview / specs / guidelines and component-tokens page aligned with the two-token API.
- CatnipTable — New structural
catnip-table,catnip-table-row, andcatnip-table-cellcomposition (M/L density via Catnip font/space tokens, striped body rows, sticky header with opaque surface, selected row chrome). Cell content is slotted; no typed cell catalog. - CatnipTableCell — Presentational header sort UI via
sortable+activeSort(asc/desc); whole header cell is the hit target; iconssort/sort-up/sort-down; emitssort-click. Consumer owns sort state and data order. - Docs — Table catalogue pages (overview, specs, guidelines) with composition recipes for selection, sort, filters outside the header, caption/empty states, and more-actions menus. Playground preview matches the full composition demo. Badge / Avatar / Status called out as separate future primitives.
- Dependencies — Picks up @signicat/catnip-css@0.0.13.
0.0.39
- CatnipGraphic — Host remaps
--catnip-graphic-primaryfromcolor/--catnip-graphic-colorso SVGvar(--catnip-graphic-primary, currentColor)stays in sync with documented overrides. - Dependencies — Picks up @signicat/catnip-assets@0.0.13.
0.0.38
- CatnipGraphic — Consumes component tokens
--catnip-graphic-primary/--catnip-graphic-accent(host overrides viacolor/--catnip-graphic-colorand--catnip-graphic-accent/--catnip-graphic-accent-color). - Dependencies — Picks up @signicat/catnip-design-tokens@0.1.8 and @signicat/catnip-assets@0.0.12 (graphic tokens + tokenized illustration fills).
0.0.37
- CatnipButton — Main purpose uses component token
--catnip-button-radius(default pill via design-tokens:root; EndUI / whitelabel overrides viadata-theme="endui"). - Dependencies — Picks up @signicat/catnip-design-tokens@0.1.7 (EndUI theme + component tokens).
0.0.36
- CatnipDialog — New
catnip-dialogmodal component with native<dialog>semantics, prop- or slot-based header/footer sections, CatnipButton footer actions, backdrop click/blur options, focus trap, Escape handling, focus restoration, and catalogue/playground docs. - CatnipDialog — Dismissal actions are fully controlled: close requests emit
close-dialogandupdate:isOpen=false, then wait for the consumer to setisOpen=falsebefore removing the dialog. - CatnipDialog — Uses the browser's native
showModal()focus containment by default and keeps the custom Tab focus trap only for the non-modal fallback path. - CatnipDialog —
closable=falsenow blocks Escape and backdrop dismissal; generated close and enabled cancel buttons remain explicit dismissal routes. - Docs — Dialog live preview opens through a demo button, keeps the
isOpencontrol synchronized after internal dismissal, preserves explicitfalsevalues for default-enabled booleans such asshowCloseButton, and leaves submit dismissal decisions to the consumer.
0.0.35
- Release — Version bump for publish. No component API changes vs 0.0.34.
0.0.34
- CatnipInputFile — New
catnip-input-filedrag-and-drop upload field with horizontal/vertical layouts, M/L sizes, inline danger presentation, native file input, form association, and afilesslot for composingcatnip-file-itemrows. - CatnipInputFile — Drop-zone copy is configurable via props and named slots (
uploadLink,dragDrop,acceptHint,dragActive,errorTitle,errorHint). - CatnipFileItem — New
catnip-file-itemrow component for a single uploaded or processed file (ready,inProgress,done,warning,dangerstatuses; download, delete, cancel, retry, and dismiss actions; optional progress bar). - Docs — File Input and File Item catalogue pages, playground configuration, and sidebar entries.
- Docs — Split Button playground composition example with full keyboard navigation for consumer-rendered
catnip-listmenus (arrows, Home/End, Enter/Space, Escape, typeahead).
0.0.33
- CatnipRangeInput — New
catnip-range-inputfield component with native range semantics, shared field label/supporting-text patterns, M/L Figma-aligned sizes, optional min/max labels, hover/focus/drag value tooltip,alwaysShowValueTooltip, exact-value input, form association, docs, and playground support. - CatnipRangeInput —
min,max, andstepnormalize the selected value consistently across pointer, keyboard, and exact-value input interactions. Endpoint labels fall back to the currentmin/maxvalues unless customminLabel/maxLabeltext is provided. - CatnipRangeInput — Validation copy remains consumer-owned: pass dynamic messages through
supportingTextand driveintentfrom the consumer. Danger/warning/success state is reflected in supporting text and the optional value input; the slider track and thumb remain neutral/primary. - Docs — Range Input catalogue pages and live playground configuration keep
min,max,step, andmodelValuesynchronized.
0.0.32
- Dependencies — Version alignment with @signicat/catnip-design-tokens@0.1.6 and @signicat/catnip-css@0.0.12. No component source changes.
0.0.30
- CatnipRadio & CatnipRadioGroup — New radio and radio-group components (field label, options API, per-row validation, form association).
- FieldSupportingText — Supporting-text lines can include an
iconvia the{ text, icon?, intent? }object shape (used by Checkbox, Checklist, Radio, and RadioGroup). - CatnipCheckbox, CatnipToggle, CatnipRadio — Avoid false missing-label warnings on first paint (
initialAssumeHasContentfor default slot detection). - CatnipCheckbox — CheckboxControl hover selector fix and danger-state token alignment.
0.0.31
- Dependencies — Fix published dependency pins to @signicat/catnip-assets@0.0.11 (
countries/flags/svgexport), @signicat/catnip-css@0.0.11, and @signicat/catnip-icons@0.0.14. Resolves npm hoisting @signicat/catnip-assets@0.0.10 when upgrading css without a direct assets dependency. No component source changes.
0.0.29
- CatnipDropdown — Opt-in
select-allrow for multi-select dropdowns (checkbox, indeterminate state, toggles visible enabled rows; withfilterable, applies to filtered rows only). - CatnipInputDate — Restore
show-actionsfor panel Clear / Submit row (independent ofshow-time).
0.0.28
- CatnipSplitButton — New
catnip-split-buttondual-action control: main button (click) plus suffix trigger (suffix-click) for consumer-rendered related action surfaces. Includes controlledopenselected styling, default inactive/active suffix chevrons withsuffixInactiveIcon/suffixActiveIconslots,aria-controls/aria-haspopuphooks, appearancesprimary,secondary,ghost; sizess,m,l;intentdefault/danger; loading and disabled states; docs and playground. - CatnipButton — Figma token alignment for utility appearance (hover/active borders, disabled background/content tokens, pressed background token).
- CatnipChip — Figma token alignment for selected, selectable, and removable states (hover/pressed/focus, explicit heights per size, remove-button styling).
- CatnipInput — Focus rings for primary and danger intents use existing
border-*-focustokens; warning and success keepcontent-*-strongfor focus rings. - CatnipDropdownOption — Fix infinite
syncRegistry()retry when an option is mounted outsidecatnip-dropdown(DEV warning instead).
0.0.27
- Breaking —
catnip-illustration/CatnipIllustrationrenamed tocatnip-graphic/CatnipGraphic. CSS variables--catnip-illustration-*→--catnip-graphic-*; prop-key exportCATNIP_ILLUSTRATION_PROP_KEYS→CATNIP_GRAPHIC_PROP_KEYS. Docs moved from/components/illustrationto/components/graphic. - CatnipInputPhone — New
catnip-input-phonefield component with country picker, preloaded country flags from@signicat/catnip-assets, browser-locale country defaulting,+-prefixed paste splitting, compact JSON form serialization, locale strings, test selectors, docs, and playground support. - CatnipInputDate — Range mode shows From / To segment labels above each trigger (override via
startLabel/endLabelprops or slots). Range placeholders usedisplay-formathints instead of role names. - CatnipChecklist — New
catnip-checklistfield control (options+modelValue, label, supporting text,role="group"). - CatnipCheckbox — Visual alignment with Figma (radius, spacing, label weight, disabled/read-only checked states, hit target). Optional
supporting-textbelow the option row for per-option errors; group label/copy remains oncatnip-checklist. - CatnipInputDate — New
catnip-input-datefield component for single dates, date/time, and date ranges. Values stay canonical (YYYY-MM-DDorYYYY-MM-DDTHH:mm) while visible text can be changed with Day.js-style display formats. Includes floating calendar panel, range preview states, year selection, range-onlymaxRangeDays, optional inline clear button, optional Clear / Submit actions, locale strings, test selectors, docs, playground, and form-element registration. - CatnipListItem — Fix
leadingandtrailingslot forwarding on the publiccatnip-list-itemcustom element by detecting named host slots before rendering the internal row slot templates.
0.0.26
- CatnipDropdown — New
catnip-dropdownfield component with teleported list panel, single/multi selection, keyboard navigation, and slot-first customization. Supply options via theoptionsprop (plain{ value, label, … }rows) or<catnip-dropdown-option>child elements (rich slots);optionstakes precedence when both are present. Multi-selectdisplayMode:value,chips,count; overflow viamaxVisibleChips. Filterable lists support built-in label search (filterable,filterLocally) or parent-controlled filtering. - CatnipCheckbox — New
catnip-checkboxform control (sizes m / l, checked, indeterminate, disabled, read-only, danger). SharedCheckboxControlprimitive also powers multi-select rows incatnip-dropdownlists. - CatnipFieldLabel — New public
catnip-field-labelcustom element for labelling custom controls (native elements, third-party widgets). Same API as the label row embedded in Input, Number Input, and Chip Input; composite inputs unchanged. - CatnipInputChip — Draft line API: default embedded
catnip-inputuses internal draft withsetDraftValue()(set/reset) and optionalupdate:draftValue(observe).draftValueprop is ignored on the default path.draftInputslot: parent binds.draftValue; Add commits that value; parent clears afterupdate:modelValue.catnipInputapplies to the default draft input only. - Testing —
pnpm run testin @signicat/catnip-components (Vitest) for dropdown value, entries, registry, filter keyboard, and listbox helpers.
0.0.25
- CatnipInputNumber — Fix stepper + / − not incrementing past the first step when the field is focused (blur-before-click on nested stepper buttons; stale
modelValuefrom the parent resetting the value). Stepper clicks use@mousedown.capture.preventto keep focus on the input; ignore stale parentnullwhile a numeric value is active; commit blur from the live input value. - Docs — ComponentPlayground fixes
modelValuesync forcatnip-input-number: bridge pending value through prop sync, avoid re-applying confignullover a live value, set host.modelValuebefore removing the attribute.
0.0.24
- CatnipButton (breaking) — Rename prop
hierarchy→appearancewith valuesprimary,secondary,ghost, andtertiary. Renameshape→purposewith valuesmain(wasrounded) andutility(wassquared). Renameintentvalueneutral→default. Former tertiary (label-only) styling is nowghost;tertiaryis utility-only and uses a neutral subtle fill (no border in default states). - CatnipButton —
appearance="tertiary"withpurpose="main"coerces toprimary(dev warning).intent="danger"is only supported withappearanceprimaryorghost; other combinations coerce to primary + danger (dev warning).size="xs"requirespurpose="utility"; otherwise renders ass(dev warning). - CatnipButton — New
selectedprop (purpose="utility"only; ignored otherwise with dev warning). Setsaria-pressed="true"andcatnip-button--selected. Primary selected: strong-pressed fill with on-primary text. Secondary, ghost, and tertiary selected: primary subtle fill, primary strong border, primary strong text. - CatnipButton — Tertiary utility styles aligned with Figma:
background-neutral-subtle/-hover/-pressed, focus ring without inset border, disabledbackground-disabled-subtler+content-disabled-strong. - CatnipInputChip (breaking) — Rename from Tag Input: custom element
catnip-input-chip(wascatnip-input-tag), componentCatnipInputChip, propsminChips/maxChips/maxVisibleChips(wasminTags/maxTags/maxVisibleTags), locale keysinputChip.*, test selectorchips, exportCATNIP_INPUT_CHIP_PROP_KEYS(wasCATNIP_INPUT_TAG_PROP_KEYS). Docs catalogue pathinput-chip. - CatnipInputNumber — Stepper buttons use
appearance="tertiary"andpurpose="utility"(washierarchy="tertiary"). - CatnipInputChip — Show-more / show-less controls use
appearance="ghost"(was tertiary). - Docs — Button overview, specs, and playground updated for
appearance,purpose,intent,selected, and utility constraints. Chip Input docs and cross-links updated for the rename.
0.0.23
- CatnipInputNumber — New
catnip-input-numbercustom element for a single numeric value with trailing − / + steppers (CatnipButton, tertiary).modelValueisnumber | null(empty field →null;placeholderis display-only).min/maxclamp on commit;step(default1) drives steppers, Arrow Up / Arrow Down, and max fractional precision (e.g.0.01→ two decimals, rounded on blur and after stepping). Optional digit grouping viaseparateAt,separator(,**, **.**, space), and **decimalSeparator**; grouping applies on blur and after steppers while the emitted value stays unformatted. **role="spinbutton"** with **aria-valuenow** / **min** / **max**; stepper labels from locales **inputNumber.decrement** / **inputNumber.increment**. Same integrated label and supporting-text patterns as **CatnipInput** (**label**, **label.action**, **label.suffix** slots). Test selectors: **root**, **control**, **decrementButton**, **incrementButton**, **supportingText`. - Helpers — New
numberFormatmodule (formatGroupedNumber,parseGroupedNumber,clampNumber,getDecimalPlacesFromStep, etc.) shared by CatnipInputNumber display and parsing. - CatnipInputChip — Draft-input configuration forwards through a nested
catnipInputprop (for example.catnipInput="{ placeholder: 'Add a tag', leftIcon: 'search', showClearButton: true }"). The tag reservesmodelValue,type,hideLabel,name, andsupportingTexton the embedded input so chips, Add, supporting text, and the draft line stay aligned.size,intent,disabled,readonly, andrequiredstay top-level. - CatnipInputChip — Add-button configuration forwards through a nested
addButtonprop (same pattern ascatnipInput). The tag reservestype,disabled, andsize; everything else onCatnipButtonProps(hierarchy,shape,leftIcon,rightIcon,intent,ariaLabel,loading,name,value,form,autofocus,testSelectors) forwards as-is, plus a syntheticlabelfor the button's visible text. - Prop-key exports — Every CE component now exports a
CATNIP_<NAME>_PROP_KEYSarray from its*.types.ts(built fromdefaultProps):CATNIP_BUTTON_PROP_KEYS,CATNIP_INPUT_PROP_KEYS(full label + control surface;CATNIP_INPUT_CONTROL_PROP_KEYSstill ships for draft-only forwarding),CATNIP_INPUT_NUMBER_PROP_KEYS,CATNIP_INPUT_TAG_PROP_KEYS,CATNIP_CHIP_PROP_KEYS,CATNIP_ICON_PROP_KEYS,CATNIP_LINK_PROP_KEYS,CATNIP_TOGGLE_PROP_KEYS,CATNIP_TOOLTIP_PROP_KEYS,CATNIP_DIVIDER_PROP_KEYS,CATNIP_TABS_PROP_KEYS,CATNIP_ILLUSTRATION_PROP_KEYS,CATNIP_SPINNER_PROP_KEYS. Pair withmergePropsfor composed-parent forwarding. - CatnipInputChip —
maxVisibleTagscollapses long chip lists behind a tertiaryShow n morebutton; expanded view showsShow less. Labels come from new localesinputChip.showMore(with{count}placeholder) andinputChip.showLessand are overridable viashow-more-tags-label/show-less-tags-label. - CatnipInput / CatnipInputChip — Label row exposes
label,label.action, andlabel.suffixslots, matching the<child>.<slot>namespace convention used for nested forwarding. - CatnipInputChip — Draft-input slots forward as
catnipInput.leftIconSlot/catnipInput.rightIconSlot(same namespace as the prop). - CatnipChip (breaking) — Icon slots renamed
leadingIconSlot→leftIconSlotandtrailingIconSlot→rightIconSlotto match CatnipButton. Default-slot warn no longer relies on asetTimeout(100); usesnextTick+ a directassignedNodesread. - Test selectors —
testSelectorstype widened fromRecord<string, string> | stringto a recursiveTestSelectorTree | string; existing flat selector maps keep working. Composed hosts may forward a child’stestSelectorsvia a nested object (for example{ catnipInput: { leftAdornment: 'x' } }oncatnip-input-chip). NewasForwardedSelectors(value)helper fromuseTestSelectors:string→{ root: string }, object → as-is. - CatnipInputChip — Test-selector keys extended with
addButton,showMoreButton,showLessButton, andcatnipInput.addButton/showMoreButton/showLessButtonaccept either a string shorthand or a full CatnipButton selectors object;catnipInputis forwarded as the embedded<catnip-input>’s owntestSelectorsand deep-merged with that component’s defaults. - Composables — New
useCeSlots(renamed fromuseCeSlotPresence) collectsuseTrackedNamedSlots,useHostNamedSlotPresence(host-light-DOMMutationObserver),useDefaultSlotContentPresence, anduseDefaultSlotJoinedText. Replaces ad-hocslotchangewiring across CatnipButton, CatnipChip, CatnipToggle, and CatnipTooltip, and fixes a memory leak / flicker in CatnipInputChip that came from conditionally-rendered slots feedinguseSlots(). - Helpers — New generic
mergeProps<T>(source, overrides, keys, { guardedKeys })replacescatnipFieldLabelBind/catnipInputControlBind. Components export their own prop-key lists (FIELD_LABEL_PROP_KEYS/FIELD_LABEL_GUARDED_KEYS,CATNIP_INPUT_CONTROL_PROP_KEYS) so call-sites stay flat. - Internal restructure — Renamed under
src/components/_internal/:CatnipField/→Field/,CatnipFieldLabel/→FieldLabel/,CatnipFieldSupportingText/→FieldSupportingText/.FieldLabeldetectsaction/suffixthrough reactiveuseSlots()(parents conditionally render the named templates), so the old@slotchange+hasActionSlotdance is gone. - Docs — New Inputs overview groups shared Input, Number Input, and Chip Input behaviour. Catalogue docs and playground for
catnip-input-number(overview, specs, guidelines). Component API → Test selectors adds a Multiple subcomponents of the same type subsection covering role-based keys, repeated children, and nested forwarding; Input, Number Input, Chip Input, Tabs, Configuration, Inputs overview, and Contributing cross-link to it. - Docs build — New
apps/docs/scripts/clean-dist.jsruns beforepnpm run prebuildinapps/docsso stale playground assets are cleared on rebuild.
0.0.22
- Design tokens — Focus-visible
box-shadowstacks use--catnip-shadow-focus-default/--catnip-shadow-focus-danger. CatnipTooltip / CatnipTabs portaled surfaces use--catnip-shadow-elevation-3. - Colors — Invalid
--catnip-color-content-disabled-disabledreplaced with--catnip-color-content-on-disabledon CatnipButton; disabled primary background uses--catnip-color-background-disabled-stronger.
0.0.21
- Dependencies — Uses @signicat/catnip-design-tokens@0.1.5 and @signicat/catnip-css@0.0.9 from the workspace (shadow tokens and shadow utility variables). No source changes under
src/vs 0.0.20.
0.0.20
- Patch release; no changes under
src/vs 0.0.19 (republish / version alignment).
0.0.19
- CatnipButton —
:host([disabled])setscursor: not-allowedandpointer-events: noneso the custom element matches disabled native-button behavior.
0.0.18
- CatnipTooltip — optional
show-on-focus/showOnFocus(defaulttrue). Whentrigger="hover"and set tofalse, the tooltip follows hover only (pointer leave hides it even if the anchor stays focused). Tooltip specs updated.
0.0.17
- CatnipTooltip — new
size="s"(compact padding,--catnip-font-paragraph-s, smaller arrow).sizeoptions ares,m,l.
0.0.16
- CatnipTooltip (breaking) —
alignmentacceptsstart,center, andendonly (replacesnear,middle, andfar). Defaultcenter. Values map to floating cross-axis placement relative to the anchor. - CatnipTooltip — default
maxWidthis320px; pass an empty string to drop the cap. - CatnipTooltip —
:hostline-height: 0so inherited page line-height does not stretch the custom element’s box around small triggers.
0.0.15
- Shared styles — Removed custom
::-webkit-scrollbarrules;:hostdefault text color uses--catnip-color-content-neutral-strongest(with hex fallback). - Dependencies — @signicat/catnip-design-tokens@0.1.3 (base space scale source file renamed to
space.json; emitted--catnip-space-*unchanged).
0.0.14
- CatnipButton — semantic danger styling uses
--catnip-color-*-danger-*CSS variables (renamed from*-negative-*) to match @signicat/catnip-design-tokens@0.1.2. - Playground — vanilla demo text color fallback updated to the danger token name.
0.0.13
- CatnipTabs (breaking) — tabs are buttons only;
hrefremoved fromitemsand menu rows (legacyhrefkeys in JSON are ignored when normalizing). Use@update:modelValueand your router for SPA-style navigation and URLs.role="tablist"when there is at least one item. - CatnipTabs — optional
menuon a tab (dropdown rows); dismiss via VueUseonClickOutside;testSelectorsextended withtab,menuTrigger,menuRow(plus existingmenu); Escape and post-selection focus return to the menu trigger; trailing chevron rotates when the menu is open;aria-haspopup="menu"on the menu trigger. - CatnipTooltip — outside-click close uses VueUse
onClickOutsideinstead of a manual documentpointerdownlistener. - Dependencies — removed unused
click-outside-vue3. - Docs — tabs page and playgrounds aligned with button-only tabs; component catalogue tabs navigate with VitePress
useRouter().go.
0.0.12
- CatnipLink — optional
underlineprop (falseremoves underline; useful for card-style or icon-only links). - Styling — SCSS across components uses Catnip design token CSS variables with semantic-first hex fallbacks (buttons, chip, link, divider, spinner, illustration, toggle, tooltip, shared scrollbar helpers).
- Charts — default Chart.js colors resolved from
@signicat/catnip-design-tokens/js. - Docs — package
CHANGELOG.md; audit notes inCOLOR_TOKEN_AUDIT.md. - Uses @signicat/catnip-design-tokens from the workspace (CSS variables and optional
/jscolor constants, e.g. for charts).
0.0.11
- CatnipSelect — behaviour updates.
- CatnipButton — SCSS adjustments.
- CatnipChip — types, docs, playground, and catalogue/registry alignment.
- CatnipToggle — small bugfix.
- Manifest — custom-elements manifest updates for downstream tooling (including React wrappers).
- Picks up @signicat/catnip-css@0.0.5 and @signicat/catnip-design-tokens@0.1.0.
0.0.10
- CatnipToggle —
catnip-toggleswitch (form-associated,model-value/update:modelValue);reset+tick-filledicons; transparent thumb; 1px inset from track border; removed separatechangeevent. - CatnipLink —
catnip-linkcomponent and docs. - Docs / playground — ComponentPlayground two-way
modelValuefor toggle; full icon list for button (and icon) demos. - Picks up @signicat/catnip-assets@0.0.8 and @signicat/catnip-icons@0.0.11 (SVG updates).
0.0.9
- CatnipChip (
catnip-chip) — removable or selectable chip; sizes xs–l; leading icon prop and leftIconSlot / default / rightIconSlot;removeevent in removable mode;testSelectors; remove buttonaria-labeluses default-slot text (including wrapped elements). - CatnipButton —
catnipButtonEventsdropped from type exports (docs metadata only); use nativeclickon the element.
0.0.8
- Breaking — Removed
@signicat/catnip-components/standalonefrom npm. The IIFEcatnip-components.standalone.jsis built withpnpm run build:standaloneand omitted frompackage.jsonfiles; use static/CDN hosting (CI still builds it for GCS). Smallernpm installfor bundler-based apps. - Build — ES/UMD treat
@signicat/catnip-assets/illustrations/svgand@signicat/catnip-icons/svgas external so illustration and icon lazy chunks stay in those packages instead of being copied intocomponents/dist. - CatnipIllustration — illustrations and pictograms under
illustrations/(e.g.pictograms/…); appearance via design tokens / CSS on the host;loadIllustration(name); optionalwidth/height(0 = derive fromviewBox);--catnip-illustration-*/--catnip-pictogram-accent - Removed CatnipPictogram — use
catnip-illustrationwithpictograms/…names instead - CatnipDivider — horizontal/vertical divider with size, shape, variant, and
testSelectors - Web Components with ElementInternals form integration
0.0.7
- Monorepo — Storybook removed (
apps/storybook,*.stories.js, docs embed). Interactive examples use VitePress ComponentPlayground and/playgroundonly.
0.0.6
- testSelectors prop — Override
data-testattributes for testing. UseuseTestSelectorscomposable; defaults per component in Test Selectors docs - Standalone bundle — CDN consumers get Vue bundled; no need to import Vue separately
- Vue peer dependency — Vue moved from dependencies to
peerDependencies(^3.5.0) to avoid duplicate runtime in Vue apps - SSR fix —
_setAttroverride re-runs type conversion on every attribute change, fixing post-mountsetAttributefor SSR - Dynamic icon import — Icons loaded via dynamic import
- Standalone build — Playground excluded from standalone bundle; improved
assetFileNamestyping - Documentation — Slots and Test Selectors sections in component docs; Props table shows type (not options); Options column for enumerated props
0.0.5
- VitePress docs integration
- Component docs updates
0.0.4
- CatnipButton, CatnipIcon, CatnipSpinner, CatnipTooltip
- Style injection via adoptedStyleSheets
- Automatic type conversion for props
@signicat/catnip-design-tokens
Unreleased
1.0.4
- Semantic data colors — Dark-theme
--catnip-color-data-1now maps to Purple 300 and--catnip-color-data-4maps to Blue 300 for contrast with inverse avatar text.
1.0.3
- Graphic dark theme —
--catnip-graphic-primaryis Brand 100 and--catnip-graphic-accentis Brand 600 under[data-theme="dark"](newcomponent/graphic.dark.json). Light and EndUI values are unchanged.
1.0.2
- Primitive colors (breaking) — Renames the
accent-greenscale tomint(--catnip-color-mint-*,CatnipColorMint*). Semantic--catnip-color-accent-300still aliases Mint 300 by default (Steel 200 in EndUI). Chart--catnip-color-data-2still uses that scale (Mint 900 light, Mint 600 dark). - EndUI scoped theme — New
css/endui-scopedexport. Same[data-theme='endui']rule ascss/endui, plus the custom properties that reference those overrides, so a wrapperdata-theme="endui"recomputes primary content, background, border, and the default focus ring.css/enduistays the html-level file. - Accent color — New
--catnip-color-accent-300, aliased to Accent-Green 300 by default and Steel 200 underdata-theme="endui".--catnip-graphic-accentreferences it, so illustration accents follow the theme. - Semantic colors — Adds
--catnip-color-content-danger-strong-hover(default Red 800, dark Red 300). - Hero tokens —
--catnip-hero-primary(Brand 900),--catnip-hero-accent(Accent 300), and--catnip-hero-stroke(white). Light and dark share these values. EndUI follows the brand and accent remaps.
1.0.1
- Semantic colors — Adds neutral strong pressed border and disabled subtle content tokens for Toggle interaction states in default and dark themes.
1.0.0
- Stable — First 1.0 (soft) release. Version aligned with the other Catnip packages.
0.1.12
- Semantic colors — Adds
--catnip-color-border-danger-strong-hoverfor danger radio hover borders (light Red 700, dark Red 300).
0.1.11
- Semantic colors —
--catnip-color-background-warning-subtle-hover: light Orange 100, dark Orange 950.
0.1.10
- Component tokens —
--catnip-logo-background(Brand 900) and--catnip-logo-content(white) for Signicat lockup theming. Override on an ancestor for on-brand surfaces (e.g. navbar knockout).
0.1.9
- Semantic data colors — Synced
--catnip-color-data-1…8light/dark mappings with Figma (light: purple/500, accent-green/900, red/600, blue/500, orange/700, purple/800, green/950, red/900; dark: purple/400, accent-green/600, red/300, blue/400, orange/300, purple/200, green/100, red/50). - Exports —
./css/default.css,./css/dark.css, and./css/endui.cssaliases so CSS@imports with a.cssextension resolve (used by@signicat/catnip-cssnpm passthrough).
0.1.8
- Component tokens —
--catnip-graphic-primary(Brand 900) and--catnip-graphic-accent(Accent-Green-300) for illustration /catnip-graphictheming. EndUI sets--catnip-graphic-accentto Steel 50.
0.1.7
- EndUI (whitelabel) theme — New
css/endui/js/enduiexports; activate withdata-theme="endui". Remapscolor.brand.*to the blue palette and sets--catnip-button-radiustoradius.s(squared main buttons). Opt-in import from the tokens package (not bundled in@signicat/catnip-css). - Component tokens — New
src/tokens/component/layer; first token--catnip-button-radiusdefaults toradius.roundon:root.
0.1.6
- Typography — Code presets (
--catnip-font-code-*,CatnipFontCode*,.catnip-font-code-*) use a monospace stack via new--catnip-font-family-code(was Inter via--catnip-font-family-default).
0.1.5
- Shadows (breaking vs. 0.1.4) — Elevation names and variables use
elevation-1…elevation-4(--catnip-shadow-elevation-1,CatnipShadowElevation1, …) instead of zero-paddedelevation-01…. - Docs — Package README shadow section; design-tokens
CHANGELOG.mdin the npm tarball.
0.1.4
- Shadow tokens — New
semantic/shadow.json:elevation-1…elevation-4,focus-default,focus-danger, shipped as--catnip-shadow-*andCatnipShadow*JS exports (values aligned with Figma).
0.1.3
- Source layout — Renamed
src/tokens/base/spacing.json→space.jsonfor the base space scale. Thespacetoken tree and generated--catnip-space-*CSS variables and JS exports are unchanged.
0.1.2
- Semantic colors (breaking) — Aligned with Figma Light/Dark exports:
negative→danger,positive→success,notice→warningin token paths (CSS variables and JS exports). content.on.disabled— Replaces the oldcontent.disabled.disabledslot;background.disabled.subtler,background.neutral.strong,border.primary.focus, andborder.danger.focusadded.data— Light chart colors updated to match Figma; dark theme now definesdatatokens instead of inheriting light values.- Docs — Semantic colors and design-tokens README updated for the new naming and
datadark overrides.
0.1.1
- TypeScript — Generated
default.d.ts/dark.d.tsfor JS token exports; packagetypesand conditionalexportsso subpath imports resolve for editors andtsc.
0.1.0
- Restructured semantic tokens (consolidated
semantic/colorandsemantic/color.dark); removed superseded semantic token sources. - Refreshed base color, spacing, border, and shadow inputs; streamlined typography JSON and expanded font-related tokens.
- Token build pipeline updates (including typography build).
0.0.8
- Base and semantic tokens
- Light and dark themes
- CSS variables and JS exports
@signicat/catnip-css
Unreleased
1.0.5
- Dependencies — Rebuilds the bundled token CSS against @signicat/catnip-design-tokens@1.0.4 (dark
--catnip-color-data-1/--catnip-color-data-4).
1.0.4
- Dependencies — Rebuilds the bundled token CSS against @signicat/catnip-design-tokens@1.0.3 (dark
--catnip-graphic-*values).
1.0.3
- Dependencies — Rebuilds the bundled token CSS against @signicat/catnip-design-tokens@1.0.2 (
--catnip-color-accent-300,--catnip-color-content-danger-strong-hover,--catnip-hero-*) and @signicat/catnip-assets@1.0.3.
1.0.2
- Dependencies — Rebuilds against @signicat/catnip-assets@1.0.2 and @signicat/catnip-icons@1.0.2.
1.0.1
- Icon CSS — The historical 24px default now targets only
<i>elements with a.catnip-icon--*glyph class. Plain semantic<i>text inherits the surrounding typography instead of being enlarged. - Dependencies — Rebuilds against @signicat/catnip-assets@1.0.1, @signicat/catnip-design-tokens@1.0.1, and @signicat/catnip-icons@1.0.1.
1.0.0
- Stable — First 1.0 (soft) release. Version aligned with the other Catnip packages.
- Dependencies — Picks up @signicat/catnip-icons@1.0.0 and @signicat/catnip-design-tokens@1.0.0.
0.0.17
- Dependencies — Rebuilds the bundled token CSS with @signicat/catnip-design-tokens@0.1.12 (
--catnip-color-border-danger-strong-hover).
0.0.16
- Dependencies — Picks up @signicat/catnip-icons@0.0.16 (updated
bookglyph in the CDN icon font).
0.0.15
- Dependencies — Picks up @signicat/catnip-design-tokens@0.1.11 (
--catnip-color-background-warning-subtle-hover).
0.0.14
- Dependencies — Picks up @signicat/catnip-design-tokens@0.1.10 (logo component tokens
--catnip-logo-background/--catnip-logo-content) and @signicat/catnip-assets@0.0.14.
0.0.13
- Build / CDN — Dual stylesheet output: npm
styles.npm.csskeeps@importfor@signicat/catnip-design-tokens(default + dark) and@signicat/catnip-icons, plus Inter viaurl("@signicat/catnip-assets/fonts/inter/…")(no font files in the css tarball). CDNstyles.cssinlines tokens + icon webfont CSS, rewrites Inter to./fonts/inter/…, and ships icon + Inter font files underdist/for GCS upload. - Docs — CDN
css/…/styles.cssis self-contained; npm consumers resolve tokens/icons/Inter through package dependencies.
0.0.12
- Dependencies — Rebuilt
dist/styles.csswith @signicat/catnip-design-tokens@0.1.6 (code typography uses--catnip-font-family-code).
0.0.11
- Dependencies — Version alignment with @signicat/catnip-assets@0.0.11 and @signicat/catnip-icons@0.0.14.
0.0.10
- Patch release; dependency alignment with @signicat/catnip-assets@0.0.10 and @signicat/catnip-icons@0.0.13.
0.0.9
- Shadow utilities —
.catnip-shadow--*and legacy.shadow--*use--catnip-shadow-elevation-*and--catnip-shadow-focus-*from @signicat/catnip-design-tokens..shadow--popup-modalfixed to use design-token variables (no--catnip-box-shadow-pop-up). - Docs —
CHANGELOG.mdin the npm tarball.
0.0.8
- Patch release; no changes under
packages/css/styles/vs 0.0.7 (republish / version alignment).
0.0.7
- Patch release; no changes under
packages/css/styles/vs 0.0.6 (republish / version alignment).
0.0.6
- Rebuilt
dist/styles.cssso:rootincludes the full--catnip-space-*scale from @signicat/catnip-design-tokens (spacing utilities depend on these variables).
0.0.5
- Semantic typography and spacing SCSS (and optional backwards-compatibility layer) aligned with @signicat/catnip-design-tokens@0.1.0.
@signicat/catnip-components-react
Unreleased
1.0.10
- CatnipCounter — Generated wrapper narrows
appearancetoprimary/secondaryand adds the booleandisabledproperty. - CatnipFieldLabel (breaking) — Generated wrapper narrows
sizetom/l. - CatnipSpinner (breaking) — Generated wrapper replaces
subtlewitharc(quarter/three-quarter) andinverse. - Dependencies — Aligns with @signicat/catnip-components@1.0.10.
1.0.9
- Dependencies — Aligns with @signicat/catnip-components@1.0.9. No wrapper API changes.
1.0.8
- Dependencies — Aligns with @signicat/catnip-components@1.0.8. No wrapper API changes.
1.0.7
- CatnipToast — Generated React wrapper for
catnip-toast. CatnipAlert wrappers drop thetoastappearance and overlay duration/position props. Aligns with @signicat/catnip-components@1.0.7.
1.0.6
- Generated wrappers — Aligns with @signicat/catnip-components@1.0.6, including File Item
showDownloadandshowDelete. - Package — Ships
SKILL.md(copied from@signicat/catnip-components) as@signicat/catnip-components-react/SKILL.md.
1.0.5
- Generated wrappers — Aligns with @signicat/catnip-components@1.0.5, including Dropdown
listMaxWidthand Input Datevalue/triggerslots.
1.0.4
- Generated wrappers — Aligns with @signicat/catnip-components@1.0.4, including the M/L-only Range Input and Toggle Group APIs, per-option Toggle Group icons, the Toggle
readonlyprop, and the narrowed CatnipInputFileneutral/dangerintent API.
1.0.3
- Generated prop types — React wrappers preserve the component-specific literal unions produced from shared Catnip value types, keeping unsupported values out of TypeScript autocomplete and compile-time APIs.
- Build verification — Wrapper generation now verifies representative narrowed unions so future shared-type changes cannot silently widen React component props.
1.0.2
- React host props — Wrappers map idiomatic
classNameto the custom element's realclassattribute and preserve Reactstyle; the oldclassprop remains as a deprecated compatibility alias. - SSR — The default entry is safe to import during server rendering. Browser registration is guarded and exposed as
catnipComponentsReady; property assignment waits for custom-element upgrade so pre-upgrade object/array props cannot shadow accessors. - Micro-frontends — New
@signicat/catnip-components-react/wrappersentry exports wrappers without importing or registering another Catnip component runtime, so the shell can remain the single version owner. - Events — New
parseCatnipEventDetailhelper unwraps both directCustomEvent.detailvalues and Vue custom-element one-argument arrays. - Quality and docs — Runtime tests cover classes, inline styles, property assignment, late upgrades, events, refs, and event detail; build verification checks SSR imports/rendering. The React guide now documents installation, props, controlled state, events, slots, refs, SSR, micro-frontends, TypeScript, and troubleshooting.
1.0.1
- Dependencies — Version alignment with @signicat/catnip-components@1.0.1; generated wrapper APIs are unchanged.
1.0.0
- Stable — First 1.0 (soft) release. Version aligned with @signicat/catnip-components@1.0.0.
- CatnipDialog — Wrapper drops generated footer button props and
dialog-cancel/dialog-submit. Footer is thefooterslot.
0.0.60
- CatnipStatus — Wrapper drops
appearance. Usefilledfor the pill. - CatnipBadge — Wrapper
appearanceissubtle/strong. - Dependencies — Version alignment with @signicat/catnip-components@0.0.60.
0.0.59
- Dependencies — Version alignment with @signicat/catnip-components@0.0.59; generated wrapper APIs are unchanged.
0.0.58
- Dependencies — Version alignment with @signicat/catnip-components@0.0.58; generated wrapper APIs are unchanged.
0.0.57
- CatnipStatus — Wrapper picks up
leftIconandariaLabelfor icon and icon-only status. - CatnipBadge — Wrapper picks up
ariaLabelfor icon-only badge. - Dependencies — Version alignment with @signicat/catnip-components@0.0.57.
0.0.56
- Dependencies — Version alignment with @signicat/catnip-components@0.0.56.
0.0.55
- Slots — Wrappers pick up List item / dropdown option
left/right, Dialog/Drawerheader/footer, DropdownlistHeader/listFooter, AlertleftIcon/leftIconSlot, and File ItemleftIconSlot. - Naming — Wrappers pick up Date
panelOrientation, Stepper/Fileorientation, Dividerorientation/appearance, Dialog/DrawerbackdropBlur, Drawerclose-drawer/after-drawer-close, Inputright-icon-click, RangeshowValueTooltip, Cardhref, and Split Button/Tooltipopen-change. - Dependencies — Version alignment with @signicat/catnip-components@0.0.55.
0.0.54
- CatnipCard / CatnipUser — Wrappers pick up the
interactiveboolean (replaces Cardbehaviorand Userinteraction="static" | "expandable" | "clickable"). Userinteractionis nowclick|expandwhen interactive. - CatnipTooltip / CatnipInputDate — Wrappers pick up Tooltip
placement(replacesposition) and Date InputpanelPlacement. - Naming — Wrappers pick up Dialog/Drawer
open/update:open, AlertshowCloseButton, ChipleftIcon, Toggle Groupappearance, Stepperlayout/activeStep, and Tooltip/Spinnersubtle. - Dependencies — Version alignment with @signicat/catnip-components@0.0.54.
0.0.53
- CatnipInputDate — Regenerated React wrapper for date picker v2 (
showPresets,calendarLayout,placement,panelAlign, combined range trigger). - Dependencies — Version alignment with @signicat/catnip-components@0.0.53.
0.0.52
- CatnipLink — Regenerated React wrapper for the Figma Link appearances, sizes, and icon props.
- Dependencies — Version alignment with @signicat/catnip-components@0.0.52.
0.0.51
- CatnipCard — Generated React wrapper for
catnip-card. - Dependencies — Version alignment with @signicat/catnip-components@0.0.51.
0.0.50
- CatnipStepper — Generated React wrapper for
catnip-stepper. - Dependencies — Version alignment with @signicat/catnip-components@0.0.50.
0.0.49
- CatnipProgress — Generated React wrapper for
catnip-progress. - Dependencies — Version alignment with @signicat/catnip-components@0.0.49.
0.0.48
- Dependencies — Version alignment with @signicat/catnip-components@0.0.48.
0.0.47
- CatnipUser — Generated React wrapper for
catnip-user. - Dependencies — Version alignment with @signicat/catnip-components@0.0.47.
0.0.46
- Dependencies — Version alignment with @signicat/catnip-components@0.0.46.
0.0.45
- CatnipBadge — Generated React wrapper for
catnip-badge. - CatnipDrawer — Generated React wrapper for
catnip-drawer. - Dependencies — Version alignment with @signicat/catnip-components@0.0.45.
0.0.44
- CatnipPagination — Generated React wrapper for
catnip-pagination(regenerated from the custom-elements manifest). - Dependencies — Version alignment with @signicat/catnip-components@0.0.44.
0.0.43
- CatnipCounter — Generated React wrapper for
catnip-counter(regenerated from the custom-elements manifest). - Dependencies — Version alignment with @signicat/catnip-components@0.0.43.
0.0.42
- CatnipStatus — Generated React wrapper for
catnip-status(regenerated from the custom-elements manifest). - CatnipDropdown / CatnipInputDate / CatnipInputPhone — Regenerated wrappers for
open-change(replacesupdate:open). - Dependencies — Version alignment with @signicat/catnip-components@0.0.42.
0.0.41
- CatnipAlert — Generated React wrapper for
catnip-alert(regenerated from the custom-elements manifest). - Dependencies — Version alignment with @signicat/catnip-components@0.0.41.
0.0.40
- CatnipTable, CatnipTableRow, CatnipTableCell — Generated React wrappers for
catnip-table,catnip-table-row, andcatnip-table-cell(regenerated from the custom-elements manifest). - Dependencies — Version alignment with @signicat/catnip-components@0.0.40.
0.0.39
- Dependencies — Version alignment with @signicat/catnip-components@0.0.39.
0.0.38
- Dependencies — Version alignment with @signicat/catnip-components@0.0.38.
0.0.36
- CatnipDialog — Generated React wrapper for
catnip-dialog(regenerated from the custom-elements manifest). - Dependencies — Version alignment with @signicat/catnip-components@0.0.36.
0.0.35
- Dependencies — Version alignment with @signicat/catnip-components@0.0.35.
0.0.34
- CatnipInputFile & CatnipFileItem — Generated React wrappers for
catnip-input-fileandcatnip-file-item(regenerated from the custom-elements manifest). - Dependencies — Version alignment with @signicat/catnip-components@0.0.34.
0.0.33
- CatnipRangeInput — Generated React wrapper for
catnip-range-input(regenerated from the custom-elements manifest). - Dependencies — Version alignment with @signicat/catnip-components@0.0.33.
0.0.32
- Dependencies — Version alignment with @signicat/catnip-components@0.0.32.
0.0.31
- Dependencies — Version alignment with @signicat/catnip-components@0.0.31.
0.0.30
- Dependencies — Version alignment with @signicat/catnip-components@0.0.30 and updated custom element wrappers.
0.0.28
- CatnipSplitButton — Generated React wrapper for
catnip-split-button(regenerated from the custom-elements manifest). - Dependencies — Version alignment with @signicat/catnip-components@0.0.28.
0.0.27
- Dependencies — Version alignment with @signicat/catnip-components@0.0.27.
0.0.26
- CatnipDropdown / CatnipCheckbox — Generated React wrappers for
catnip-dropdown,catnip-dropdown-option, andcatnip-checkbox(regenerated from the custom-elements manifest). - Dependencies — Version alignment with @signicat/catnip-components@0.0.26.
0.0.25
- Dependencies — Version alignment with @signicat/catnip-components@0.0.25.
0.0.24
- CatnipInputChip — Generated
CatnipInputChipwrapper replacesCatnipInputTag(catnip-input-chipelement). - CatnipButton — React props reflect
appearance,purpose,intent(default/danger), andselected(wrappers regenerated from the updated custom-elements manifest). - Dependencies — Version alignment with @signicat/catnip-components@0.0.24.
0.0.23
- CatnipInputNumber — Generated
CatnipInputNumberReact wrapper (samecatnip-input-numberelement and events as other inputs). - Dependencies — Version alignment with @signicat/catnip-components@0.0.23 (wrappers regenerated from the updated custom-elements manifest).
0.0.22
- Versioning —
@signicat/catnip-components-reactnow uses the same version as@signicat/catnip-components(install both at 0.0.22). Wrapper code unchanged vs 0.0.5.
0.0.5
- Dependencies — Version alignment with @signicat/catnip-components@0.0.22 (no wrapper API changes). Superseded for install naming by 0.0.22.
0.0.4
- Dependencies — Version alignment with @signicat/catnip-components@0.0.21 (no wrapper API changes).
0.0.3
- Patch release for version alignment with @signicat/catnip-components@0.0.20 (no wrapper API changes).
0.0.2
- Generated React wrappers from the custom-elements manifest,
createCatnipForwardRefruntime, build verification, local playground, and docs (installation and usage). - Depends on @signicat/catnip-components@0.0.17.
@signicat/catnip-assets
Unreleased
1.0.3
- Hero illustrations — Aligns the hero set with Figma and removes illustrations that are no longer in the file. Remaining filenames drop
-signicat(hero/onboarding-signicatis nowhero/onboarding).hero/404-erroris nowhero/error-404, andhero/anti-money-laundering-amlis nowhero/aml. Those previous keys still resolve. Removed heroes do not. Hero SVGs paint with--catnip-hero-primary(Brand 900),--catnip-hero-accent(Accent 300), and--catnip-hero-stroke(white).
1.0.2
- Icons — Adds
content-leftandcontent-right. Removesbell-negative.
1.0.1
- Product illustrations — Updates
fraud-detectionto the latest Figma design. - Icons — Adds
all-documents,bell-negative,comment,created-by-me,product-news,promote-admin,section,speaker-disabled,trending-down,trending-flat,trending-up, andview-company-user-s-documentsfrom Figma, and renamesresettocross-filled.
1.0.0
- Stable — First 1.0 (soft) release. Version aligned with the other Catnip packages.
0.0.17
- Icons — New
downloading-progressanduploading-progressglyphs.
0.0.16
- Icons — Updated
bookglyph.
0.0.15
- Icons — New
bookicon.
0.0.14
- Signicat logos — Lockups under
illustrations/signicat-logos/use--catnip-logo-background/--catnip-logo-content(with Brand 900 / white fallbacks) so inlined logos follow design tokens; override those vars on brand surfaces for knockout.
0.0.13
- Illustrations — Primary fills use
var(--catnip-graphic-primary, currentColor)so tokenized primary applies when design tokens are present, with inheritedcurrentColoras the no-token fallback.
0.0.12
- Hero illustrations — Primary fills/strokes use
currentColor; accent fills usevar(--catnip-graphic-accent, #41FFD1)so colors follow graphic component tokens. - Pictograms & product marks — Same tokenized fills as heroes. Signicat logos stay hardcoded brand colors.
0.0.11
- Countries — Public
@signicat/catnip-assets/countriesexport with typed country metadata and@signicat/catnip-assets/countries/flags/svglazy flag loaders, including aggregateloadCountryFlags()preloading. - Icons — 7 new icons:
draw,hourglass,keyboard,no-category,signature-level-changes,validation, andworkflow-changes. - Illustrations — Hero illustration
hero/mint.
0.0.10
- Icons — 35 new icons added:
address-book,admin-settings,business,calendar-changes,code-off,code-on,delete-forever,demote-admin-role,e-signing,encrypted,focus,front-camera,infinity,metadata-changes,missed-deadline,nfc-chip,nfc-chip-circle,page-approved,private-message,remove-key,remove-user,rename,restore,save-contact,sealing,signature-collection,signature-with-custom-purpose,sim-card,star-filled,swap,switch-account,toggle,transfer-ownership,user-waiting, andzip-file.
0.0.9
- Icons —
cut.svg,paste.svg, andscissors.svgadded (clipboard-style actions).
0.0.8
- Icons —
tick-filled.svginset scaled to matchreset.svgoptical margin;close-filled.svgadded (toggle / future use).
0.0.7
- SVG maps —
illustrations-load.mjs+illustration-chunks/**withloadIllustration(name); pictograms use keys underillustrations/pictograms/(e.g. **pictograms/folder**) - Illustrations — single
src/illustrations/tree (products/,hero/,signicat-logos/,pictograms/, …); kebab-case keys underproducts/ - Removed — top-level
src/pictograms/and@signicat/catnip-assets/pictograms/svg(loadPictogram/pictogram-chunks); useillustrations/pictograms/andillustrations/svgonly - Breaking —
loadIllustration(theme, name)→loadIllustration(name); removedillustrationNamesLight,illustrationNamesDark, andCatnipIllustrationTheme - Hero and other illustration SVGs use lowercase kebab-case filenames where names have multiple words (aligned with pictogram naming)
- Docs — assets overview and Illustration component; pictograms documented under Pictograms
@signicat/catnip-icons
Unreleased
1.0.2
- Icons — Rebuilds the font and lazy SVG inventory with
content-leftandcontent-right.bell-negativeis removed fromCatnipIconName. - Dependencies — Rebuilds against @signicat/catnip-assets@1.0.2.
1.0.1
- Icons — Rebuilds the font and lazy SVG inventory with the new Figma icons;
cross-filledreplacesresetinCatnipIconName. - Dependencies — Rebuilds against @signicat/catnip-assets@1.0.1.
1.0.0
- Stable — First 1.0 (soft) release. Version aligned with the other Catnip packages.
- Dependencies — Rebuilt font + lazy SVG chunks from @signicat/catnip-assets@1.0.0.
0.0.17
- Icons — New
downloading-progressanduploading-progress. Rebuilt font + lazy SVG chunks from @signicat/catnip-assets@0.0.17.
0.0.16
- Icons — Rebuilt font + lazy SVG chunks from @signicat/catnip-assets@0.0.16 (updated
book).
0.0.15
- Icons — New
bookicon. Rebuilt font + lazy SVG chunks from @signicat/catnip-assets@0.0.15.
0.0.14
- Icons — 7 new icons:
draw,hourglass,keyboard,no-category,signature-level-changes,validation, andworkflow-changes. Rebuilt font + lazy SVG chunks from @signicat/catnip-assets@0.0.11.
0.0.13
- Icons — 35 new icons:
address-book,admin-settings,business,calendar-changes,code-off,code-on,delete-forever,demote-admin-role,e-signing,encrypted,focus,front-camera,infinity,metadata-changes,missed-deadline,nfc-chip,nfc-chip-circle,page-approved,private-message,remove-key,remove-user,rename,restore,save-contact,sealing,signature-collection,signature-with-custom-purpose,sim-card,star-filled,swap,switch-account,toggle,transfer-ownership,user-waiting, andzip-file. Rebuilt font + lazy SVG chunks from @signicat/catnip-assets@0.0.10.
0.0.12
- Patch release; no changes vs 0.0.11 in icon sources or build output (republish / version alignment).
0.0.11
- Rebuilt font + lazy SVG chunks from @signicat/catnip-assets@0.0.8 (includes
close-filled, updatedtick-filled).
0.0.10
- Icon webfont and SVG map
- iconNames export for component use