# ngwr — full reference > Generated from the library source: every entry point with its import path, > selector(s), public exports, and description. For exact input / output > signatures read the bundled `.d.ts` types. Concise quick-ref: /llms.txt > > One component at a time: every docs page also ships as markdown at the same > URL plus `.md` — e.g. https://ngwr.dev/reference/components/select.md ## ngwr/action-sheet - import: `import { WrActionSheet } from 'ngwr/action-sheet'` - selector: `wr-action-sheet` - exports: WrActionSheet, WrActionSheetAction - An iOS-style bottom sheet of choices — a data-driven preset over the drawer, with destructive and cancel roles. ## ngwr/affix - import: `import { WrAffix } from 'ngwr/affix'` - selector: `[wrAffix]` - exports: WrAffix - Stick-on-scroll directive. Combines native CSS `position: sticky` with an `IntersectionObserver` sentinel that toggles a `wr-affix--active` class while pinned — so you can style the stuck state (shadow, background, shrink) without a scroll listener. ## ngwr/alert - import: `import { WrAlert } from 'ngwr/alert'` - selector: `wr-alert` - exports: WrAlert, WrAlertType - Inline status banner — info, success, warning, danger, neutral, offline. ## ngwr/anchor - import: `import { WrAnchor } from 'ngwr/anchor'` - selector: `wr-anchor` - exports: WrAnchor, WrAnchorLink - Scroll-spy in-page navigation. Click a link to smooth-scroll; the closest visible heading auto-highlights. ## ngwr/aurora - import: `import { WrAurora } from 'ngwr/aurora'` - selector: `wr-aurora` - exports: WrAurora - Flowing northern-lights ribbons rendered with a WebGL2 simplex-noise shader, ramped across three colour stops. Use as a hero / section background. ## ngwr/avatar - import: `import { WrAvatar } from 'ngwr/avatar'` - selector: `wr-avatar` - exports: WrAvatar, WrAvatarSize, WrAvatarShape - Image avatar with a fixed square or rounded shape. Shows a spinner while the image loads. ## ngwr/back-top - import: `import { WrBackTop } from 'ngwr/back-top'` - selector: `wr-back-top` - exports: WrBackTop - Pinned floating button that appears once the user has scrolled past `visibilityThreshold` and scrolls to the top on click. ## ngwr/badge - import: `import { WrBadge } from 'ngwr/badge'` - selector: `wr-badge`, `wr-tag` - exports: WrBadge, WrTag, WrBadgeSize, WrBadgeShape, WrTagIconPosition - Small status indicator with color variants and optional pill shape. Reach for `` (in the same entry) when you need a richer label — icons, loading state, outlined / transparent styles. ## ngwr/bar-chart - import: `import { WrBarChart } from 'ngwr/bar-chart'` - selector: `wr-bar-chart` - exports: WrBarChart, WrBarChartDatum - Vertical bars, one series. Per-bar color overrides via the `color` field. ## ngwr/blur-text - import: `import { WrBlurText } from 'ngwr/blur-text'` - selector: `wr-blur-text` - exports: WrBlurText - Reveals text by blurring each piece in from a coloured offset, through a half-blurred mid-step, into the steady state. Triggers on viewport entry. Dependency-free port — uses `IntersectionObserver` + Web Animations API. ## ngwr/border-glow - import: `import { WrBorderGlow } from 'ngwr/border-glow'` - selector: `wr-border-glow` - exports: WrBorderGlow - Cursor-tracked glowing border card. A cone of light follows the pointer along the perimeter, brightening as the cursor approaches an edge. Optional `[animated]` mode plays a one-shot sweep on mount. ## ngwr/breadcrumbs - import: `import { WrBreadcrumbs } from 'ngwr/breadcrumbs'` - selector: `wr-breadcrumbs-item`, `wr-breadcrumbs` - exports: WrBreadcrumbs, WrBreadcrumbsItem - Navigation trail showing the user's location in the site hierarchy. `` renders as a `
  • ` containing either an `` (when linked) or a `` (the final crumb). Separator is a CSS pseudo-element so it doesn't pollute the accessibility tree. Each item accepts an optional leading icon. ## ngwr/burger - import: `import { WrBurger } from 'ngwr/burger'` - selector: `wr-burger` - exports: WrBurger - Animated menu toggle — three SVG strokes morph between a hamburger and a close mark. Two-way bindable, so it pairs naturally with a ``. ## ngwr/button - import: `import { WrButton } from 'ngwr/button'` - selector: `wr-btn-group`, `wr-btn`, `button[wr-btn]`, `a[wr-btn]` - exports: WrButton, WrButtonGroup, WrButtonSize, WrButtonShape, WrButtonIconPosition - Trigger an action. Renders as , button[wr-btn], or a[wr-btn]. ## ngwr/button/testing - import: `import { WrButtonHarness } from 'ngwr/button/testing'` - exports: WrButtonHarness, WrButtonHarnessFilters ## ngwr/calendar - import: `import { WrCalendar } from 'ngwr/calendar'` - selector: `wr-calendar` - exports: WrCalendar, WrCalendarMode, WrCalendarRange - Month-view calendar — standalone widget for picking a single date or a date range. Built on the `WrDateAdapter` abstraction. Click the header label to zoom into month / year quick-pick views. ## ngwr/calendar-heatmap - import: `import { WrCalendarHeatmap } from 'ngwr/calendar-heatmap'` - selector: `wr-calendar-heatmap` - exports: WrCalendarHeatmap, WrHeatmapDatum - Year-grid heatmap — the classic GitHub contributions layout. ## ngwr/card - import: `import { WrCard } from 'ngwr/card'` - selector: `wr-card`, `wr-card-header`, `wr-card-footer` - exports: WrCard, WrCardHeader, WrCardFooter - Surface container with optional header / footer slots. Bordered by default; toggle hoverable for clickable lists and loading for in-place data refresh. ## ngwr/carousel - import: `import { WrCarousel } from 'ngwr/carousel'` - selector: `wr-carousel-slide`, `wr-carousel` - exports: WrCarousel, WrCarouselSlide - Slide carousel with prev/next, dots, and optional autoplay. Autoplay holds while the pointer is over it, while focus is inside it, and while a drag is in flight — hovering is not a way to stop moving content for someone who never uses a mouse, which is what WCAG 2.2.2 asks for. ## ngwr/carousel/testing - import: `import { WrCarouselHarness } from 'ngwr/carousel/testing'` - exports: WrCarouselHarness, WrCarouselHarnessFilters ## ngwr/cascader - import: `import { WrCascader } from 'ngwr/cascader'` - selector: `wr-cascader` - exports: WrCascader, WrCascaderOption, WrCascaderSize - Multi-level select. Drills through hierarchical categories one column at a time; picking a leaf commits the full path. A signal-forms native control — it implements `FormValueControl`, so `[formField]` binds straight to its `value` model (`readonly T[]`). `[(value)]` works standalone, and `[(ngModel)]` / reactive forms keep working through Angular's bridge. ## ngwr/cascader/testing - import: `import { WrCascaderColumnHarness } from 'ngwr/cascader/testing'` - exports: WrCascaderColumnHarness, WrCascaderHarness, WrCascaderOptionHarness, WrCascaderColumnHarnessFilters, WrCascaderHarnessFilters, WrCascaderOptionHarnessFilters ## ngwr/checkbox - import: `import { WrCheckbox } from 'ngwr/checkbox'` - selector: `wr-checkbox-group`, `wr-checkbox` - exports: WrCheckbox, WrCheckboxSize, WrCheckboxGroup, WR_CHECKBOX_GROUP, WrCheckboxGroupContext - Two-state checkbox. Standalone (boolean) or inside (array of values). ## ngwr/checkbox/testing - import: `import { WrCheckboxHarness } from 'ngwr/checkbox/testing'` - exports: WrCheckboxHarness, WrCheckboxHarnessFilters ## ngwr/circular-text - import: `import { WrCircularText } from 'ngwr/circular-text'` - selector: `wr-circular-text` - exports: WrCircularText, WrCircularTextHover - Text laid out around a circle, with the whole circle spinning on a keyframe. Hover behaviour swaps the spin rate (or pauses) without resetting the rotation angle. Pure CSS port — no JS animation loop. ## ngwr/click-spark - import: `import { WrClickSpark } from 'ngwr/click-spark'` - selector: `wr-click-spark` - exports: WrClickSpark, WrClickSparkEasing - Click ripple. Bursts a ring of short line sparks from the click point across any projected content. The canvas overlay has `pointer-events: none`, so projected DOM stays fully interactive. ## ngwr/clipboard - import: `import { WrClipboard } from 'ngwr/clipboard'` - exports: WrClipboard, WrClipboardPermission - Programmatic clipboard read and write. Uses `navigator.clipboard.writeText` when available, with a hidden-textarea + `execCommand` fallback for non-secure contexts. ## ngwr/collapse - import: `import { WrCollapse } from 'ngwr/collapse'` - selector: `wr-accordion`, `wr-collapse-group`, `wr-collapse` - exports: WrCollapse, WrCollapseGroup, WrAccordion, WR_COLLAPSE_GROUP, WrCollapseGroupContext - Expandable panel with a clickable header. Two-way binds `open`. Wrap in `` for single-open behavior. ## ngwr/collapse/testing - import: `import { WrCollapseGroupHarness } from 'ngwr/collapse/testing'` - exports: WrCollapseGroupHarness, WrCollapseHarness, WrCollapseGroupHarnessFilters, WrCollapseHarnessFilters ## ngwr/color-picker - import: `import { WrColorPicker } from 'ngwr/color-picker'` - selector: `[wrColorPickerTrigger]`, `wr-color-picker` - exports: WrColorPicker, WrColorPickerTrigger, hslToRgb, hsvToRgb, parseHex, rgbToHsl, rgbToHsv, toHex, WrHsl, WrHsv, WrRgb, WrColorFormat - HSV canvas + hue / alpha sliders + HEX / RGB / HSL inputs + optional swatches. Use `` inline or anchor it to a button with `[wrColorPickerTrigger]`. ## ngwr/command-palette - import: `import { WrCommandPalette } from 'ngwr/command-palette'` - selector: `wr-command-palette` - exports: WrCommandPalette, WrCommandItem, WrCommandGroup - ⌘K-style centred modal with a search input and filtered list of actions. Items group automatically, support icons, descriptions, and shortcut hints. Bind a global hotkey (default `mod+k`) or open it programmatically. ## ngwr/command-palette/testing - import: `import { WrCommandPaletteGroupHarness } from 'ngwr/command-palette/testing'` - exports: WrCommandPaletteGroupHarness, WrCommandPaletteHarness, WrCommandPaletteItemHarness, WrCommandPaletteGroupHarnessFilters, WrCommandPaletteHarnessFilters, WrCommandPaletteItemHarnessFilters ## ngwr/compare - import: `import { WrCompare } from 'ngwr/compare'` - selector: `wr-compare` - exports: WrCompare - Before/after split with a draggable divider. Project anything (images, text, divs, components) via `[wrCompareBefore]` and `[wrCompareAfter]` attributes — the component stacks them and clips the after side. ## ngwr/confetti - import: `import { WrConfetti } from 'ngwr/confetti'` - exports: WrConfetti, WrConfettiOptions - Imperative confetti service. Inject `WrConfetti` and call `.fire()` on a celebration event. ## ngwr/config - import: `import { provideWrConfig } from 'ngwr/config'` - exports: provideWrConfig, useConfigValue, WR_CONFIG, WrConfig, WrControlDefaults, WrControlSize ## ngwr/context-menu - import: `import { WrContextMenu } from 'ngwr/context-menu'` - selector: `wr-context-menu-divider`, `wr-context-menu-item`, `wr-context-menu`, `[wrContextMenu]` - exports: WrContextMenu, WrContextMenuPanel, WrContextMenuItem, WrContextMenuDivider - Attach `[wrContextMenu]` to any element to open a `` at the pointer position on right-click. Native browser menu is suppressed on the host. ## ngwr/context-menu/testing - import: `import { WrContextMenuHarness } from 'ngwr/context-menu/testing'` - exports: WrContextMenuHarness, WrContextMenuItemHarness, WrContextMenuHarnessFilters, WrContextMenuItemHarnessFilters ## ngwr/cookie - import: `import { WrCookie } from 'ngwr/cookie'` - exports: WrCookie, WrCookieOptions - Thin, SSR-safe `document.cookie` wrapper modelled after `WrStorage`. Read, write, delete, and list cookies — with typed options for expiry, path, domain, secure, and SameSite. ## ngwr/counter - import: `import { WrCounter } from 'ngwr/counter'` - selector: `wr-count-up`, `wr-counter` - exports: WrCounter, WrCounterMode, WrCountUp, WrCountUpDirection, WrCountUpEasing, WrCountUpTrigger - Animated number display. Use **odometer** mode for rolling-digit motion (mechanical counter look) or **tween** mode for an eased count-up from the previous value. ## ngwr/date-adapter - import: `import { WrDateAdapter } from 'ngwr/date-adapter'` - exports: WrDateAdapter, WrNativeDateAdapter, provideWrDateAdapter, WrDateAdapterOptions, WR_DATE_LOCALE, WrDateFormat, isNamedFormat ## ngwr/date-adapter-fns - import: `import { WrDateFnsAdapter } from 'ngwr/date-adapter-fns'` - exports: WrDateFnsAdapter, provideWrDateFnsAdapter ## ngwr/date-adapter-luxon - import: `import { WrLuxonAdapter } from 'ngwr/date-adapter-luxon'` - exports: WrLuxonAdapter, provideWrLuxonAdapter ## ngwr/date-picker - import: `import { WrDatePicker } from 'ngwr/date-picker'` - selector: `wr-date-picker`, `wr-date-range-picker` - exports: WrDatePicker, WrDateRangePicker, WrDateRange - Unified date / time / date-time picker. `` + popover for every mode — overlay content swaps based on `[mode]`. Parses on every keystroke (silently — only emits when valid), reformats canonical on blur. Format driven by `WrDateAdapter`. ## ngwr/date-picker/testing - import: `import { WrDatePickerDayHarness } from 'ngwr/date-picker/testing'` - exports: WrDatePickerDayHarness, WrDatePickerHarness, WrDateRangePickerHarness, WrDatePickerDayHarnessFilters, WrDatePickerHarnessFilters, WrDatePickerTimeFields, WrDateRangePickerHarnessFilters ## ngwr/decrypt-text - import: `import { WrDecryptText } from 'ngwr/decrypt-text'` - selector: `wr-decrypt-text` - exports: WrDecryptText, WrDecryptTextAnimateOn, WrDecryptTextClickMode, WrDecryptTextRevealDirection - Reveals a string by scrambling characters and progressively replacing scramble glyphs with the originals. Sequential reveal in three directions, or non-sequential settle after N iterations. Four trigger modes: hover, click, view, in-view + hover. Dependency-free port — signals + `setInterval`. ## ngwr/density - import: `import { WrDensity } from 'ngwr/density'` - selector: `[wrDensity]` - exports: WrDensity, WrDensityDirective, provideWrDensity, WR_DENSITY_CONFIG, DEFAULT_WR_DENSITY_CONFIG, WrDensityValue, WrDensityConfig - Density scale — `sm` / `md` / `lg` / `touch` — applied as CSS-variable multipliers on per-component paddings. `md` is the default and resolves to `1` everywhere; `touch` enlarges hit areas for finger input. Persisted via WrStorage and overrideable per-subtree with the `[wrDensity]` directive. ## ngwr/descriptions - import: `import { WrDescriptions } from 'ngwr/descriptions'` - selector: `wr-description-item`, `wr-descriptions` - exports: WrDescriptions, WrDescriptionItem - Read-only labeled key/value list. `inline` for label-left / value-right, `bordered` for a card. ## ngwr/dialog - import: `import { WrDialog } from 'ngwr/dialog'` - selector: `[wrDialogClose]`, `[wrDialogContent]`, `[wrDialogFooter]`, `[wrDialogTitle]` - exports: WrDialog, WrDialogRef, WR_DIALOG_DATA, WR_DIALOG_REF, WrDialogOptions, WrDialogTitle, WrDialogContent, WrDialogFooter, WrDialogClose - Modal dialogs via a service that wraps @angular/cdk/dialog. Open any component as a dialog and read its close result as a Promise. ## ngwr/dialog/testing - import: `import { WrDialogHarness } from 'ngwr/dialog/testing'` - exports: WrDialogHarness, WrDialogHarnessFilters ## ngwr/directives - import: `import { WrAutofocus } from 'ngwr/directives'` - selector: `[wrAutofocus]`, `textarea[wrAutosize]`, `[wrClickOutside]`, `[wrCopyToClipboard]` - exports: WrAutofocus, WrAutosize, WrClickOutside, WrCopyToClipboard ## ngwr/divider - import: `import { WrDivider } from 'ngwr/divider'` - selector: `wr-divider` - exports: WrDivider, WrDividerType, WrDividerAlign - Horizontal separator. Solid, dashed, or dotted; tinted with any theme color. ## ngwr/donut-chart - import: `import { WrDonutChart } from 'ngwr/donut-chart'` - selector: `wr-donut-chart` - exports: WrDonutChart, WrDonutSegment - Ring chart with optional center label / value. Set `thickness="0"` for a solid pie. ## ngwr/drag-drop - import: `import { WrSortableList } from 'ngwr/drag-drop'` - selector: `[wrDragHandle]`, `wr-sortable-list` - exports: WrSortableList, WrSortableReorderEvent, WrDragHandle - `` wraps CDK's `cdkDropList` + `cdkDrag` with a signal-based two-way `[(items)]` binding. Includes the `[wrDragHandle]` helper and themed `.cdk-drag-preview` / `.cdk-drag-placeholder` defaults. Touch-ready: a default touch start-delay lets a quick swipe scroll the list while a hold begins a drag. ## ngwr/drawer - import: `import { WrDrawer } from 'ngwr/drawer'` - selector: `[wrDrawerClose]`, `[wrDrawerContent]`, `[wrDrawerFooter]`, `[wrDrawerTitle]`, `wr-drawer` - exports: WrDrawer, WrDrawerManager, WrDrawerRef, WR_DRAWER_DATA, WR_DRAWER_REF, WrDrawerTitle, WrDrawerContent, WrDrawerFooter, WrDrawerClose, WrDrawerOptions, WrDrawerPosition - Side panel that slides in from any edge. Use the component when the markup lives in your template, or `WrDrawerManager` to open any component as a drawer and read its close result. ## ngwr/drawer/testing - import: `import { WrDrawerHarness } from 'ngwr/drawer/testing'` - exports: WrDrawerHarness, WrDrawerHarnessFilters ## ngwr/dropdown - import: `import { WrDropdown } from 'ngwr/dropdown'` - selector: `wr-dropdown-item`, `wr-dropdown-menu`, `[wrDropdown]` - exports: WrDropdown, WrDropdownMenu, WrDropdownItem, WrDropdownPosition, WrDropdownTrigger - Attach a floating menu to any trigger via the wrDropdown directive. Built on CDK Overlay — handles outside clicks, Escape, and edge collisions. ## ngwr/dropdown/testing - import: `import { WrDropdownHarness } from 'ngwr/dropdown/testing'` - exports: WrDropdownHarness, WrDropdownItemHarness, WrDropdownHarnessFilters, WrDropdownItemHarnessFilters ## ngwr/empty - import: `import { WrEmpty } from 'ngwr/empty'` - selector: `wr-empty` - exports: WrEmpty - Empty-state placeholder for when the underlying data is missing. Project a description and an optional `[wrEmptyActions]` row. ## ngwr/event-calendar - import: `import { WrEventCalendar } from 'ngwr/event-calendar'` - selector: `ng-template[wrCalendarEvent]`, `wr-event-calendar` - exports: WrEventCalendar, WrCalendarEventTemplate, WrCalendarEvent, WrCalendarEventChange, WrCalendarEventContext, WrCalendarSlot, WrCalendarView - Month, week and day views of a set of events — draggable, resizable, keyboard-operable. ## ngwr/falling-text - import: `import { WrFallingText } from 'ngwr/falling-text'` - selector: `wr-falling-text` - exports: WrFallingText, WrFallingTextTrigger - Words fall like physical bodies — gravity, wall / floor collision, body-to-body bouncing, and cursor drag-to-pick-up. Words start at their typeset position and release into the simulator on trigger. Reactbits' original uses matter-js; this port ships a minimal in-house AABB physics simulator so there's no extra runtime dependency. ## ngwr/file-upload - import: `import { WrFileUpload } from 'ngwr/file-upload'` - selector: `wr-file-upload` - exports: WrFileUpload, WrFileUploadRejection, WrFileUploadRejectionReason - Drag-and-drop zone with click-to-browse and an optional file list. Value type is `File | File[] | null`. Rejected files surface through the `(rejected)` output. ## ngwr/file-upload/testing - import: `import { WrFileUploadHarness } from 'ngwr/file-upload/testing'` - exports: WrFileUploadHarness, WrFileUploadHarnessFilters ## ngwr/form - import: `import { WrFormItem } from 'ngwr/form'` - selector: `wr-form-error`, `wr-form-field`, `wr-form-item` - exports: WrFormItem, WrFormField, WrFormError, WR_FORM_FIELD, WrFormFieldContext, WR_FORM_ERRORS, WR_FORM_ERROR_FALLBACKS, provideWrFormErrors, WrFormErrorContext, WrFormErrorMessage, WrFormErrorMessages - Layout helpers: wraps a label + control + error message; renders inline error text. ## ngwr/form/testing - import: `import { WrFormFieldHarness } from 'ngwr/form/testing'` - exports: WrFormFieldHarness, WrFormItemHarness, WrFormFieldError, WrFormFieldErrorSource, WrFormFieldHarnessFilters, WrFormItemHarnessFilters ## ngwr/fuzzy-text - import: `import { WrFuzzyText } from 'ngwr/fuzzy-text'` - selector: `wr-fuzzy-text` - exports: WrFuzzyText, WrFuzzyTextDirection - Canvas-rendered fuzzy text — each row (or column) is offset by a random amount per frame for a TV-static or motion-blur look. Intensity ramps up on hover, click, and during periodic glitch bursts. ## ngwr/gauge - import: `import { WrGauge } from 'ngwr/gauge'` - selector: `wr-gauge` - exports: WrGauge - Semicircle progress display — read-only, perfect for utilisation and score widgets. ## ngwr/glitch-text - import: `import { WrGlitchText } from 'ngwr/glitch-text'` - selector: `wr-glitch-text` - exports: WrGlitchText - Colour-split horizontal-tear glitch on the provided text. Defaults to glitching on hover; flip `[enableOnHover]` to play constantly. Pure CSS port — two pseudo-element clones with offset coloured shadows and a clip-path keyframe. ## ngwr/gradient-text - import: `import { WrGradientText } from 'ngwr/gradient-text'` - selector: `wr-gradient-text` - exports: WrGradientText, WrGradientTextDirection - Animated multi-stop gradient text. The gradient slides across the text via `background-clip: text`. Optional border variant wraps the text in a dark pill with the same animated gradient as a border ring. Pure CSS port — no JS animation loop. ## ngwr/hotkey - import: `import { WrHotkey } from 'ngwr/hotkey'` - selector: `[wrHotkey]` - exports: WrHotkey, WrHotkeyBinding, parseHotkeySpec, matchesHotkey, WrParsedHotkey, WrHotkeyHandle, WrHotkeyOptions, WrHotkeySpec - Global keybinding registry. Specs like `mod+k` — `mod` auto-resolves to Cmd on macOS / Ctrl elsewhere. Skips bindings while an input / textarea has focus by default. `[wrHotkey]` is the declarative form of the same registry — also global unless you pass `[scoped]="true"` to limit it to the host element. ## ngwr/i18n - import: `import { WrI18n } from 'ngwr/i18n'` - selector: `[wrT]` - exports: WrI18n, WrTPipe, WrTDirective, WR_I18N_CONFIG, DEFAULT_WR_I18N_CONFIG, WrI18nCatalog, WrI18nConfig, WrI18nConfigResolved, WrI18nParams, WrI18nMissingHandler, WR_I18N_LOADER, WrI18nLoader, WR_I18N_BASE_CATALOGS, WrI18nBaseCatalogs, WrI18nStaticLoader, WrI18nStaticCatalogs, WrI18nStaticScopedCatalogs, WrI18nHttpLoader, WrI18nHttpLoaderConfig, provideWrI18n, provideWrI18nBaseCatalogs, provideWrI18nStaticLoader, provideWrI18nHttpLoader, ProvideWrI18nOptions, useI18nText, readI18nText, useI18nFormatter - Reactive i18n service. Active locale lives on a signal, catalogs load lazily through a swappable loader (HTTP or static), and double-brace placeholders interpolate at render time. Scopes let feature modules ship and load their own catalogs. ## ngwr/i18n/en - import: `import { wrEn } from 'ngwr/i18n/en'` - exports: wrEn ## ngwr/i18n/ru - import: `import { wrRu } from 'ngwr/i18n/ru'` - exports: wrRu ## ngwr/icon - import: `import { WrIcon } from 'ngwr/icon'` - selector: `wr-icon` - exports: WrIcon, provideWrIcons, svgIcon, WrIconDef, WrIconName - The icon renderer. Resolves a registered name from the `provideWrIcons` registry and inlines its SVG. ngwr ships no built-in icons — bring your own via an adapter or `svgIcon()`. ## ngwr/icon/adapters/feather - import: `import { feather } from 'ngwr/icon/adapters/feather'` - exports: feather, featherIcons ## ngwr/icon/adapters/lucide - import: `import { lucide } from 'ngwr/icon/adapters/lucide'` - exports: lucide, lucideIcons, LucideIconNode ## ngwr/image-cropper - import: `import { WrImageCropper } from 'ngwr/image-cropper'` - selector: `wr-image-cropper` - exports: WrImageCropper, WrCropRect, WrCropHandle, WrImageOutputType - DOM-based crop UI. Drag the box to move, drag any of the eight handles to resize. Optional `[aspectRatio]` locks the box shape. `(cropped)` fires with a `Blob` after each drag end — wire to upload or preview. ## ngwr/input - import: `import { WrInput } from 'ngwr/input'` - selector: `[wrInputPrefix]`, `[wrInputSuffix]`, `input[wrInput]`, `textarea[wrInput]`, `wr-input-group`, `wr-password-toggle` - exports: WrInput, WrInputPrefix, WrInputSuffix, WrInputGroup, WrPasswordToggle, WrInputType, WrInputSize - Attribute directive applied to a native `` (or `