@elasticias/ui 1.0.13 → 1.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elasticias/ui",
3
- "version": "1.0.13",
3
+ "version": "1.0.14",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.0.0",
6
6
  "@angular/core": "^21.0.0",
@@ -888,7 +888,8 @@
888
888
  than inventing a third kind of icon button. */
889
889
 
890
890
  .ef-theme-toggle,
891
- .ef-app-top__logout {
891
+ .ef-app-top__logout,
892
+ .ef-app-top__action {
892
893
  appearance: none;
893
894
  background: var(--paper-alt);
894
895
  border: 1px solid var(--rule);
@@ -906,13 +907,15 @@
906
907
  }
907
908
 
908
909
  .ef-theme-toggle:hover,
909
- .ef-app-top__logout:hover {
910
+ .ef-app-top__logout:hover,
911
+ .ef-app-top__action:hover {
910
912
  color: var(--text);
911
913
  border-color: var(--ink-400);
912
914
  }
913
915
 
914
916
  .ef-theme-toggle:focus-visible,
915
- .ef-app-top__logout:focus-visible {
917
+ .ef-app-top__logout:focus-visible,
918
+ .ef-app-top__action:focus-visible {
916
919
  outline: 0;
917
920
  border-color: var(--tenant-400);
918
921
  box-shadow: 0 0 0 4px var(--tenant-100);
@@ -920,7 +923,8 @@
920
923
  }
921
924
 
922
925
  .ef-theme-toggle i,
923
- .ef-app-top__logout i {
926
+ .ef-app-top__logout i,
927
+ .ef-app-top__action i {
924
928
  font-size: 14px;
925
929
  line-height: 1;
926
930
  }
@@ -2,7 +2,7 @@ import * as _angular_core from '@angular/core';
2
2
  import { PipeTransform, OnInit, OnChanges, TemplateRef, EventEmitter, AfterContentInit, OnDestroy, SimpleChanges, InjectionToken, AfterViewInit } from '@angular/core';
3
3
  import { Menu } from 'primeng/menu';
4
4
  import * as _elasticias_core from '@elasticias/core';
5
- import { EfBuildPackage, EfModule, EfNavSection, EfNavItem, EfModuleId, EfToast, EfToastAction, EfThemeConfigService } from '@elasticias/core';
5
+ import { EfBuildPackage, EfShortcutGroup, EfModule, EfNavSection, EfNavItem, EfModuleId, EfToast, EfToastAction, EfThemeConfigService } from '@elasticias/core';
6
6
  import * as i1 from 'primeng/tooltip';
7
7
  import * as _elasticias_screens from '@elasticias/screens';
8
8
  import { ScreenContext, EfDetailToolbarAction, EfSearchToolbarAction, EfDataCardColumn, EfDataCardSort, EfDateRange, EfDatePresetKey } from '@elasticias/screens';
@@ -1098,9 +1098,13 @@ declare class EfShortcutsDialogComponent {
1098
1098
  private readonly shortcutService;
1099
1099
  /** Two-way open state. */
1100
1100
  readonly visible: _angular_core.ModelSignal<boolean>;
1101
- protected readonly groups: _angular_core.Signal<_elasticias_core.EfShortcutGroup[]>;
1102
- /** Only macOS reads `⌘` at a glance. Everyone else needs the line
1103
- * spelling out that it means Ctrl. */
1101
+ /** `list()`, reordered Global → Screen → Row. An unrecognised group
1102
+ * (a future tier this component doesn't know about yet) sorts last
1103
+ * rather than being dropped. */
1104
+ protected readonly groups: _angular_core.Signal<EfShortcutGroup[]>;
1105
+ /** Only macOS shows every chip already resolved to its own glyphs.
1106
+ * Everyone else gets a line saying the chips already match their
1107
+ * system, since nothing here prints a Mac glyph for them to decode. */
1104
1108
  protected readonly isMacPlatform: boolean;
1105
1109
  protected readonly closeAction: EfDialogAction[];
1106
1110
  protected formatKeys(keys: string): string;
@@ -4694,8 +4698,8 @@ declare class EfEmptyStateComponent {
4694
4698
  /**
4695
4699
  * Comptoir smart bar — the search/filter card every list screen
4696
4700
  * starts with. Composes:
4697
- * 1. Search input (with `⌘K` kbd hint) + Effacer / Rechercher
4698
- * action buttons.
4701
+ * 1. Search input (with an optional keyboard-shortcut hint chip) +
4702
+ * Effacer / Rechercher action buttons.
4699
4703
  * 2. A filter-row slot for `[filters]` (pill-group + filter-pill +
4700
4704
  * preset-pill + "+ Plus de filtres").
4701
4705
  * 3. A drawer slot for `[drawer]` (advanced filters via
@@ -4705,6 +4709,12 @@ declare class EfEmptyStateComponent {
4705
4709
  * for two-way binding, or watch the (search) output for explicit
4706
4710
  * Rechercher clicks.
4707
4711
  *
4712
+ * `shortcut` defaults to `'mod+k'`: this component registers it with
4713
+ * `EfShortcutService` and focuses the search input when it fires (the
4714
+ * user still has to type and submit; the shortcut only gets them into
4715
+ * the field). Pass `[shortcut]="null"` on a screen with a second smart
4716
+ * bar so only one of them claims the binding.
4717
+ *
4708
4718
  * ```html
4709
4719
  * <ef-smart-bar
4710
4720
  * [(searchText)]="searchQuery"
@@ -4724,6 +4734,12 @@ declare class EfEmptyStateComponent {
4724
4734
  * ```
4725
4735
  */
4726
4736
  declare class EfSmartBarComponent {
4737
+ private readonly shortcuts;
4738
+ /** Distinguishes this instance's registration from any other
4739
+ * ef-smart-bar on screen, the same convention ef-row-actions uses. */
4740
+ private static nextInstanceId;
4741
+ private readonly instanceId;
4742
+ private readonly searchInput;
4727
4743
  /** Two-way bound search input. */
4728
4744
  readonly searchText: _angular_core.ModelSignal<string>;
4729
4745
  readonly placeholderKey: _angular_core.InputSignal<string>;
@@ -4735,12 +4751,18 @@ declare class EfSmartBarComponent {
4735
4751
  readonly hideClear: _angular_core.InputSignalWithTransform<boolean, unknown>;
4736
4752
  readonly hideSearch: _angular_core.InputSignalWithTransform<boolean, unknown>;
4737
4753
  readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
4754
+ /** Keyboard shortcut that focuses the search input. `null` opts out
4755
+ * (a screen with two smart bars registers the binding on only one
4756
+ * of them). Defaults to `'mod+k'`. */
4757
+ readonly shortcut: _angular_core.InputSignal<string>;
4758
+ protected readonly kbdLabel: _angular_core.Signal<string>;
4738
4759
  readonly search: _angular_core.OutputEmitterRef<string>;
4739
4760
  readonly clear: _angular_core.OutputEmitterRef<void>;
4761
+ constructor();
4740
4762
  onSubmit(): void;
4741
4763
  onClear(): void;
4742
4764
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EfSmartBarComponent, never>;
4743
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<EfSmartBarComponent, "ef-smart-bar", never, { "searchText": { "alias": "searchText"; "required": false; "isSignal": true; }; "placeholderKey": { "alias": "placeholderKey"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "clearLabelKey": { "alias": "clearLabelKey"; "required": false; "isSignal": true; }; "clearTitleKey": { "alias": "clearTitleKey"; "required": false; "isSignal": true; }; "searchLabelKey": { "alias": "searchLabelKey"; "required": false; "isSignal": true; }; "showKbdHint": { "alias": "showKbdHint"; "required": false; "isSignal": true; }; "hideClear": { "alias": "hideClear"; "required": false; "isSignal": true; }; "hideSearch": { "alias": "hideSearch"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, { "searchText": "searchTextChange"; "search": "search"; "clear": "clear"; }, never, ["[filters]", "[drawer]"], true, never>;
4765
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EfSmartBarComponent, "ef-smart-bar", never, { "searchText": { "alias": "searchText"; "required": false; "isSignal": true; }; "placeholderKey": { "alias": "placeholderKey"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "clearLabelKey": { "alias": "clearLabelKey"; "required": false; "isSignal": true; }; "clearTitleKey": { "alias": "clearTitleKey"; "required": false; "isSignal": true; }; "searchLabelKey": { "alias": "searchLabelKey"; "required": false; "isSignal": true; }; "showKbdHint": { "alias": "showKbdHint"; "required": false; "isSignal": true; }; "hideClear": { "alias": "hideClear"; "required": false; "isSignal": true; }; "hideSearch": { "alias": "hideSearch"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "shortcut": { "alias": "shortcut"; "required": false; "isSignal": true; }; }, { "searchText": "searchTextChange"; "search": "search"; "clear": "clear"; }, never, ["[filters]", "[drawer]"], true, never>;
4744
4766
  }
4745
4767
 
4746
4768
  /**