Commit Graph

17 Commits

Author SHA1 Message Date
Ashley Hunter ecb098bb3d test: cover wait-for-element-animations helper
Active-animation collection (filtering finished, subtree, null-safety) and the
finish/fallback-timer behaviour that replaced the fixed close delay.
2026-06-16 23:56:56 +01:00
Patrick c7f2e0ce09 fix: address overlay review feedback 2026-06-13 15:36:28 -04:00
Patrick c7fb7469d6 fix: restore overlay dismissal semantics 2026-06-13 14:32:40 -04:00
Patrick ba74c53c97 refactor: split dialog and overlay primitives 2026-06-13 14:32:40 -04:00
Youssef Chaygani c5afdcdabf fix: allow undefined in value model signals for autocomplete, combobox, and select (#1423)
* fix: allow undefined in value model signals for autocomplete, combobox, and select

Closes: #1387

* fix(select): guard undefined in select/select-multiple key-manager effect values

* feat: explicit check for undefined value

---------

Co-authored-by: Marc Stammerjohann <8985933+marcjulian@users.noreply.github.com>
2026-06-08 12:17:50 +02:00
Marc Stammerjohann f585b9e2e5 feat: track autocomplete/combox/select input/trigger width (#1336)
* feat(select): track trigger width changes

* feat(combobox): track input width changes

* feat(autocomplete): track input width changes

* feat: update snapshot

* feat: use injectElementSize to track input/trigger width changes

* feat: add getBoundingClientRect() as fallback for potential offsetWidth = 0 in safari

* feat: update snapshot
2026-04-30 15:00:36 +02:00
Oussema Sahbeni 432c4f9310 fix(collapsible): correctly measure dimensions of initially hidden content (#1255)
* fix(collapsible): correctly measure dimensions of initially hidden content

* chore: format

---------

Co-authored-by: Marc Stammerjohann <8985933+marcjulian@users.noreply.github.com>
2026-03-06 12:29:06 +01:00
Toni Škobić 23971603a1 fix(slider): fix lint 2026-02-07 01:05:39 +01:00
Toni Škobić 164688ea6f feat(slider): implement inverted feature 2026-02-07 00:14:02 +01:00
Toni Škobić a1d6771d2b feat(slider): implement el size signal 2026-02-07 00:14:02 +01:00
Marc Stammerjohann 546aab9be2 feat: add combobox primitive (#1127)
* feat(combobox): add combobox primitive

* feat(combobox): add combobox primitive deps

* docs(combobox): add more combobox examples

* feat(combobox): sort changeDetection

* feat(combobox): lint compliant

* fix(combobox): rename class input

* feat(combobox): add combobox multiple selection w/ chips

* add support for BrnComboboxBase
* add multiple examples
* add button icon-xs size

* feat(combobox): add brn combobox trigger to handle disabled

* fix(combobox): lint issues

* feat(combobox): reset search and close popover on selection in multiple popover

* applies when a search term is available

* fix(combobox): lint issue

* fix(combobox): skip anchor when inside a combobox content

* fix(combobox): use brn popover trigger

* docs(combobox): clean up combobox preview code

* test(combobox): update story and e2e test

* docs(command): show combobox example

* docs(combobox): add new flag

* chore(cli): generate combobox

* feat(combobox): add isItemEqualToValue function

* docs(combobox): add config section w/ filter and object options

* feat(combobox): update snapshot

* docs(combobox): remove duplicate formGroup
2026-01-14 10:25:31 +01:00
Marc Stammerjohann c74e74b343 feat: dropdown menu polishing (#1017)
* refactor(dropdown-menu): change components to directes if possible

* update input types

# Conflicts:
#	libs/helm/menu/src/lib/hlm-menu-bar.ts
#	libs/helm/menu/src/lib/hlm-menu-group.ts
#	libs/helm/menu/src/lib/hlm-menu-label.ts
#	libs/helm/menu/src/lib/hlm-menu-separator.ts
#	libs/helm/menu/src/lib/hlm-menu-shortcut.ts
#	libs/helm/menu/src/lib/hlm-menu.ts
#	libs/helm/menu/src/lib/hlm-sub-menu.ts

* docs(dropdown-menu): update imports

* docs(dropdown-menu): add checkboxes and radio-group examples

* feat(dropdown-menu): update styles, add data-slot

* feat(dropdown-menu): update snapshot

* fix(dropdown-menu): update storybook sideOffset args

# Conflicts:
#	apps/ui-storybook/.storybook/tailwind.css

* feat(menubar): generate helm menubar entrypoint

* feat(dropdown-menu): generate helm dropdown-menu entrypoint

* feat(context-menu): generate helm context-menu entrypoint

* docs: add about section

* feat(dropdown-menu): move menu-align to core, update type imports

* fix(dropdown-menu): lint issues

* feat(dropdown-menu): update snapshot

* feat(cli): remove context and menubar special case in ui cli

* feat(cli): load importAlias in healthcheck and pass to fix context

* feat(cli): pass importAlias to healtcheck detect too

* add components.json to healthcheck generator test
* return default importAlias in case components.json is missing/invalid

* feat(cli): add hlm-menu healtcheck and update imports

* docs(context-menu): update preview

* feat(dropdown-menu): simplify radio and checkbox selector by removing item

* feat(dropdown-menu): add migration for hlm-menu and tests

* feat(dropdown-menu): add more migration and tests, skip menu components

* feat(dropdown-menu): allow trigger to select not only button (like hlm-avatar)

* feat(cli): handle more menu imports

* docs(dropdown-menu): dogfooding healthcheck migration

* docs(dropdown-menu): improve dropdown side/alignment

* feat(dropdown-menu): avoid icon color overwrite

* docs: remove old menu import

* feat(dropdown-menu): remove helm/brain menu package

* docs: update api primitives

* docs: add new flag to menu components

* fix(dialog): resolving dialog change detection issues (#2)

* fix(dialog): resolving dialog change detection issues

* refactor: removing unused code

* fix: updating snapshot

* refactor: improving type safety

* feat(dropdown-menu): add disabled prop to menu-item, change selector to button

* docs: remove resolved comment

---------

Co-authored-by: Ashley Hunter <ashley.hunter@hotmail.co.uk>
2025-11-25 11:29:36 +01:00
Marc Stammerjohann 8c95b38e2e feat: collapsible polishing (#976) 2025-11-11 19:25:18 +01:00
Marc Stammerjohann e3a0eaf944 feat: improve autocomplete form (#965)
* refactor(autocomplete): simplify  BrnAutocompleteSearchInput w/o search value control

* feat(autocomplete): debounce search input, fix form write opens options

* refactor(autocomplete): infer input type

* refactor(autocomplete): simplify selection cleared

* refactor(autocomplete): update imports

* feat(autocomplete): update snapshot

* feat(autocomplete): require select and form support

* feat(autocomplete): fix keyboard navigation and test

* feat(autocomplete): polish button type, value generic, and default values

* feat(autocomplete): compute displaySearchValue based on displayWith or transformValueToSearch

* use in write and option select

* feat(autocomplete): add generic for transformed value, add example

* docs(autocomplete): fix example type

* feat(autocomplete): update snapshot

* feat(autocomplete): remove displayWith from token as the context is not available there

---------

Co-authored-by: Merlin <merlin.moos@oldendorff.com>
2025-10-29 10:39:38 +01:00
Toni Škobić 1801c9007f feat(navigation-menu): add navigation menu (#951)
* feat(navigation-menu): init brain

* feat(navigation-menu): init helm

* feat(navigation-menu): init inputs for root comp

* feat(navigation-menu): setup contexts and scaffolds comps WIP

* feat(cli): init trigger component

* feat(navigation-menu): init content comp and fix selectors

* feat(navigation-menu): create link comp and improve others

* feat(navigation-menu): create hlm directives WIP and export from index.ts

* feat(navigation-menu): start working on rendering content

* refactor(hover-card): move createHoverObservable to core

* feat(navigation-menu): init content service and rendering content WIP

* fix(hover-card): fix overlay position strategy position expression

* feat(navigation-menu): render content using angular cdk overlay WIP

* feat(navigation-menu): set delay duration on open

* feat(navigation-menu): show/hide content in all cases

* docs(navigation-menu): improve docs WIP

* feat(navigation-menu): move content related type to service class

* feat(navigation-menu): implement skip animation logic

* fix(navigation-menu): fix navigation mouse out behaviour

* docs(navigation-menu): add brain and helm api

* feat(navigation-menu): detach content on animation end

* refactor(navigation-menu): refactor setting data-motion logic

* docs(navigation-menu): add trigger chevron icon

* feat(navigation-menu): adjust content position

* docs(navigation-menu): add new badge

* feat(navigation-menu): support nested nav menu

* feat(navigation-menu): add missing orientation data attr

* feat(navigation-menu): add full support for dir and orientation

* fix(navigation-menu): apply dir to content overlay

* feat(navigation-menu): add support for tab and escape

* feat(navigation-menu): add hlm nav link

* feat(navigation-menu): close content on disabled item hover

* fix(navigation-menu): fix hover bug and rename variable

* fix(navigation-menu): add distinct hover

* fix(navigation-menu): fix animations and sub nav handling

* fix(navigation-menu): make button focusable in Safari, remove focused Observable

* feat(navigation-menu): implement keyboard focus

* feat(navigation-menu): comply with ARIA

* style: fix CSS popover and accent vars

* feat(navigation-menu): minor animation and render adjustments

* docs: write navigation menu docs WIP

* docs: remove redundant text

* docs: add navigation menu to storybook

* docs: modify nav menu example description

* docs: fix meta and title

* docs: remove accidentally added side nav content

* style: format

* fix(navigation-menu): fix token desc

* fix(tooltip): move computedPrevious to core

* fix(navigation-menu): expose isOpenDelayed as readonly

* fix(navigation-menu): rename hlmLink to hlmNavLink

* docs: update ui docs snapshot

* refactor: address lint issues

* chore: run format

* docs(navigation-menu): fix vertical menu width

* docs(navigation-menu): fix nested menu width

* fix(navigation-menu): resolve PR comments

* fix(navigation-menu): fix list styles

* fix(navigation-menu): add missing data-slot

* fix(navigation-menu): fix examples wrong href to docs

* feat(navigation-menu): add active input to link el
2025-10-28 21:09:38 +01:00
moosme adf55dbdd3 refactor: polish imports (#890)
Co-authored-by: Merlin <merlin.moos@oldendorff.com>
2025-09-27 17:52:14 -04:00
Ashley Hunter 74d4016e1f refactor: move core to brain (#548)
* refactor: move core to brain

* refactor: migrating core imports

* refactor: updating deps

* refactor: updating generator

* refactor: fixing import

* refactor: updating cli

* refactor: updating templates

* fix: merge latest changes

* fix: tests
2025-01-08 23:12:22 +01:00