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; after pnpm changeset, update this document when you cut a release, and keep any per-package file in sync when it exists.
@signicat/catnip-components
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
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
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
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
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
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