@elasticias/ui 1.0.45 → 1.0.47

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.45",
3
+ "version": "1.0.47",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.0.0",
6
6
  "@angular/core": "^21.0.0",
@@ -4594,6 +4594,23 @@ input.ef-input[type='number'] {
4594
4594
  margin: calc(-1 * var(--s-4)) calc(-1 * var(--s-4)) 0;
4595
4595
  padding: 10px var(--s-4);
4596
4596
  }
4597
+
4598
+ /* Identity on top, actions on a row of their own beneath it. Sharing one
4599
+ line, five or six actions left the identity a column about 80px wide: the
4600
+ order number broke over three lines and the reference, payment state and
4601
+ date were cut to "AND-202…". Save keeps the far end, as on desktop. */
4602
+ .detail-toolbar .left,
4603
+ .detail-toolbar .right {
4604
+ flex: 1 1 100%;
4605
+ }
4606
+
4607
+ .detail-toolbar .right .sep {
4608
+ display: none;
4609
+ }
4610
+
4611
+ .detail-toolbar .right > :last-child {
4612
+ margin-inline-start: auto;
4613
+ }
4597
4614
  }
4598
4615
 
4599
4616
  /* The date trigger's value can be long; on a phone it takes the room it has
@@ -5,7 +5,7 @@ import { EfDataCardColumn, ScreenContext, EfDetailToolbarAction, EfSearchToolbar
5
5
  export { EfBoundedDateRange, EfDataCardColumn, EfDataCardColumnAlign, EfDataCardColumnMobileRole, EfDataCardColumnType, EfDataCardSort, EfDataCardSortDirection, EfDatePresetKey, EfDateRange, EfDetailToolbarAction, EfSearchToolbarAction } from '@elasticias/screens';
6
6
  import { Menu } from 'primeng/menu';
7
7
  import * as _elasticias_core from '@elasticias/core';
8
- import { EfBuildPackage, EfModule, EfNavSection, EfNavItem, EfModuleId, EfToast, EfToastAction, EfThemeConfigService } from '@elasticias/core';
8
+ import { EfBuildPackage, EfSessionIdleService, EfModule, EfNavSection, EfNavItem, EfModuleId, EfToast, EfToastAction, EfThemeConfigService } from '@elasticias/core';
9
9
  import * as i1 from 'primeng/tooltip';
10
10
  import { BlockableUI } from 'primeng/api';
11
11
  import { SafeResourceUrl } from '@angular/platform-browser';
@@ -760,7 +760,8 @@ declare class EfProductCatalogueComponent implements OnChanges {
760
760
  /**
761
761
  * Dynamic action descriptor for `ef-dialog`. The dialog renders one
762
762
  * `<button class="btn …">` per entry, in array order (left → right);
763
- * the rightmost entry is the focused / "primary" by convention.
763
+ * the rightmost entry is the "primary" by convention. Focus goes to the
764
+ * first focusable element unless an entry sets `autofocus`.
764
765
  *
765
766
  * When `command` returns a `Promise`, the button auto-toggles
766
767
  * `.is-loading` for the duration and the dialog closes when it
@@ -786,6 +787,14 @@ interface EfDialogAction {
786
787
  dismiss?: boolean;
787
788
  /** Render the button as disabled. */
788
789
  disabled?: boolean;
790
+ /**
791
+ * Focus this button when the dialog opens, instead of PrimeNG's first
792
+ * focusable element. For a dialog whose first button is the destructive
793
+ * one ("sign out" before "stay"), so Enter does the safe thing. Opt-in:
794
+ * focusing the rightmost button everywhere would put Enter on "delete" in
795
+ * every confirmation.
796
+ */
797
+ autofocus?: boolean;
789
798
  /** Render the button as loading (in-flight). Mutated automatically
790
799
  * by the dialog when the command returns a Promise. */
791
800
  loading?: boolean;
@@ -907,6 +916,7 @@ declare class EfDialogComponent {
907
916
  /** ViewChild ref to the default-action footer template — used in the
908
917
  * `'primeng'` variant via [footerTemplate] input. */
909
918
  defaultFooterTpl?: TemplateRef<void>;
919
+ private dialog?;
910
920
  /** Severity → default header icon. Override per-instance with `[icon]`. */
911
921
  private static readonly SEV_ICONS;
912
922
  get effectiveStyleClass(): string;
@@ -921,6 +931,8 @@ declare class EfDialogComponent {
921
931
  actionClass(a: EfDialogAction): string;
922
932
  handleActionClick(a: EfDialogAction, index: number): void;
923
933
  handleVisibleChange(value: boolean): void;
934
+ /** True when an action takes focus on open, so PrimeNG must not. */
935
+ get hasAutofocusAction(): boolean;
924
936
  handleShow(): void;
925
937
  handleHide(): void;
926
938
  /** Default cancel — emits and closes. */
@@ -1190,6 +1202,32 @@ declare class EfShortcutsDialogComponent {
1190
1202
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EfShortcutsDialogComponent, "ef-shortcuts-dialog", never, { "visible": { "alias": "visible"; "required": false; "isSignal": true; }; }, { "visible": "visibleChange"; }, never, never, true, never>;
1191
1203
  }
1192
1204
 
1205
+ /**
1206
+ * The last minute before an idle sign-out. Host it once at the app root; it
1207
+ * opens only while `EfSessionIdleService` counts down, which only happens
1208
+ * for a session the app started.
1209
+ *
1210
+ * Closing it any way other than "sign out" (the close button, Escape) counts
1211
+ * as "still here": whoever closed it is at the screen. "Stay" takes focus on
1212
+ * open, so Enter from someone just back at the keyboard keeps the session.
1213
+ *
1214
+ * Sign-out goes through `EF_SESSION`, like `ef-app-top`'s. Without it the
1215
+ * button is not offered, and the countdown still ends the session through
1216
+ * the app's idle callback.
1217
+ *
1218
+ * Translation keys the app provides: `session_idle_warning_title`,
1219
+ * `session_idle_warning_body` (with `{{seconds}}`), `session_idle_stay`,
1220
+ * `common_logout`.
1221
+ */
1222
+ declare class EfSessionIdleDialogComponent {
1223
+ protected readonly idle: EfSessionIdleService;
1224
+ private readonly session;
1225
+ protected readonly secondsLeft: _angular_core.Signal<number>;
1226
+ protected readonly actions: EfDialogAction[];
1227
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<EfSessionIdleDialogComponent, never>;
1228
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EfSessionIdleDialogComponent, "ef-session-idle-dialog", never, {}, {}, never, never, true, never>;
1229
+ }
1230
+
1193
1231
  declare class EfFieldsetComponent {
1194
1232
  /** Direct legend text (not translated) */
1195
1233
  legend?: string;
@@ -6237,5 +6275,5 @@ declare class EfEmailMetricsCardComponent {
6237
6275
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EfEmailMetricsCardComponent, "ef-email-metrics-card", never, { "metrics": { "alias": "metrics"; "required": false; "isSignal": true; }; "recentEvents": { "alias": "recentEvents"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; }, { "rangeChange": "rangeChange"; }, never, never, true, never>;
6238
6276
  }
6239
6277
 
6240
- export { EF_BADGE_BG_COLORS, EF_BADGE_BG_LIGHT_COLORS, EF_BADGE_BORDER_COLORS, EF_BADGE_DEFAULTS, EF_BADGE_TEXT_COLORS, EF_CHART_PALETTE, EF_DATATABLE_ACTIONS_DEFAULTS, EF_DATATABLE_COLUMN_DEFAULTS, EF_DATATABLE_DEFAULTS, EF_DATA_CARD_MOBILE_LAYOUT, EF_STATUS_COLORS, EF_STATUS_COLOR_ALIASES, EfAboutDialogComponent, EfActivationFilterComponent, EfAppMainComponent, EfAppShellComponent, EfAppShellMobileComponent, EfAppTopComponent, EfBadgeComponent, EfBlockUiComponent, EfBlockableDivComponent, EfBottomSheetComponent, EfBuildStampComponent, EfBulkBarComponent, EfButtonComponent, EfButtonGroupComponent, EfCardComponent, EfChangeHistoryComponent, EfChangePasswordComponent, EfChartComponent, EfCheckboxComponent, EfClearButtonComponent, EfColumnHeaderTemplateDirective, EfColumnTemplateDirective, EfCompactPipe, EfConfirmDialogComponent, EfCurrencyPipe, EfDataCardComponent, EfDatatableActionBarComponent, EfDatatableComponent, EfDatepickerAdvancedComponent, EfDatepickerComponent, EfDetailToolbarComponent, EfDialogComponent, EfEmailMetricsCardComponent, EfEmptyStateComponent, EfFabComponent, EfFieldsetComponent, EfFilterDrawerComponent, EfFilterPillComponent, EfFormGridComponent, EfInputNumberComponent, EfInputTextComponent, EfKpiCardComponent, EfLabelComponent, EfModuleRailComponent, EfModuleSideComponent, EfMultiSelectComponent, EfOrderBuilderComponent, EfOrderSummaryComponent, EfOverflowTooltipDirective, EfPagerComponent, EfPasswordComponent, EfPdfPreviewComponent, EfPillGroupComponent, EfPresetPillComponent, EfPriceDisplayComponent, EfProductCatalogueComponent, EfProductCatalogueFilterComponent, EfProductTypeaheadComponent, EfProfileChipComponent, EfProfileMenuComponent, EfPulseComponent, EfQuantitySelectorComponent, EfQuantityStepperComponent, EfRadioComponent, EfRankListComponent, EfReadOnlyDirective, EfRowActionsComponent, EfSearchToolbarComponent, EfSelectButtonComponent, EfSelectComponent, EfServerErrorsDirective, EfShortcutsDialogComponent, EfSkeletonComponent, EfSmartBarComponent, EfStatsComponent, EfStatusChipComponent, EfTabPanelDirective, EfTabsComponent, EfTextareaComponent, EfThemeConfiguratorComponent, EfThemeToggleComponent, EfTimelineComponent, EfToastRegionComponent, EfToggleSwitchComponent, EfToolbarComponent, EfTooltipDirective, EfTotalsComponent, OrderEntityHelper, OrderLineItemHelper, TruncatePipe, buildChartConfig, getColumnAlignment, mergeColumnDefaults, resolveEfStatusColor };
6278
+ export { EF_BADGE_BG_COLORS, EF_BADGE_BG_LIGHT_COLORS, EF_BADGE_BORDER_COLORS, EF_BADGE_DEFAULTS, EF_BADGE_TEXT_COLORS, EF_CHART_PALETTE, EF_DATATABLE_ACTIONS_DEFAULTS, EF_DATATABLE_COLUMN_DEFAULTS, EF_DATATABLE_DEFAULTS, EF_DATA_CARD_MOBILE_LAYOUT, EF_STATUS_COLORS, EF_STATUS_COLOR_ALIASES, EfAboutDialogComponent, EfActivationFilterComponent, EfAppMainComponent, EfAppShellComponent, EfAppShellMobileComponent, EfAppTopComponent, EfBadgeComponent, EfBlockUiComponent, EfBlockableDivComponent, EfBottomSheetComponent, EfBuildStampComponent, EfBulkBarComponent, EfButtonComponent, EfButtonGroupComponent, EfCardComponent, EfChangeHistoryComponent, EfChangePasswordComponent, EfChartComponent, EfCheckboxComponent, EfClearButtonComponent, EfColumnHeaderTemplateDirective, EfColumnTemplateDirective, EfCompactPipe, EfConfirmDialogComponent, EfCurrencyPipe, EfDataCardComponent, EfDatatableActionBarComponent, EfDatatableComponent, EfDatepickerAdvancedComponent, EfDatepickerComponent, EfDetailToolbarComponent, EfDialogComponent, EfEmailMetricsCardComponent, EfEmptyStateComponent, EfFabComponent, EfFieldsetComponent, EfFilterDrawerComponent, EfFilterPillComponent, EfFormGridComponent, EfInputNumberComponent, EfInputTextComponent, EfKpiCardComponent, EfLabelComponent, EfModuleRailComponent, EfModuleSideComponent, EfMultiSelectComponent, EfOrderBuilderComponent, EfOrderSummaryComponent, EfOverflowTooltipDirective, EfPagerComponent, EfPasswordComponent, EfPdfPreviewComponent, EfPillGroupComponent, EfPresetPillComponent, EfPriceDisplayComponent, EfProductCatalogueComponent, EfProductCatalogueFilterComponent, EfProductTypeaheadComponent, EfProfileChipComponent, EfProfileMenuComponent, EfPulseComponent, EfQuantitySelectorComponent, EfQuantityStepperComponent, EfRadioComponent, EfRankListComponent, EfReadOnlyDirective, EfRowActionsComponent, EfSearchToolbarComponent, EfSelectButtonComponent, EfSelectComponent, EfServerErrorsDirective, EfSessionIdleDialogComponent, EfShortcutsDialogComponent, EfSkeletonComponent, EfSmartBarComponent, EfStatsComponent, EfStatusChipComponent, EfTabPanelDirective, EfTabsComponent, EfTextareaComponent, EfThemeConfiguratorComponent, EfThemeToggleComponent, EfTimelineComponent, EfToastRegionComponent, EfToggleSwitchComponent, EfToolbarComponent, EfTooltipDirective, EfTotalsComponent, OrderEntityHelper, OrderLineItemHelper, TruncatePipe, buildChartConfig, getColumnAlignment, mergeColumnDefaults, resolveEfStatusColor };
6241
6279
  export type { CatalogueProduct, CatalogueProductVariant, CategoryAssignment, CategoryGroup, CategoryItem, DatatableSearchEntity, DocumentConfig, EfAboutServer, EfBadgeColor, EfBadgeConfig, EfBadgeSize, EfBadgeVariant, EfButtonComptoirSeverity, EfButtonPrimeNGSeverity, EfButtonSeverity, EfChangeHistoryEntry, EfChangeHistoryFieldChange, EfChangePasswordSubmit, EfChartSeries, EfChartType, EfDataCardMobileLayout, EfDataCardRowAction, EfDatatableActions, EfDatatableColumn, EfDatatableColumnAlign, EfDatatableColumnType, EfDatatableConfig, EfDateFieldValue, EfDatePreset, EfDialogAction, EfDialogSeverity, EfDialogSize, EfFabPosition, EfKpiDeltaTone, EfKpiSparkline, EfPillItem, EfPresetItem, EfProfileMenuItem, EfRankRow, EfRowAction, EfSkeletonVariant, EfStatsRow, EfStatusColor, EfStatusReferenceItem, EfTabItem, EfTabsModule, EfTabsVariant, EfTimelineItem, EfTimelineState, EfToastRegionPosition, EfTotalsGrand, EfTotalsRow, HighlightSegment, OrderChangeInfo, OrderEntity, OrderLineItem, OrderProductsSummary, OrderSummaryItem, ProductCountGroup, ProductCountGroupLabel, ProductTypeaheadRow, ProductTypeaheadSelection, ProductWithCountGroup, SelectedFilter, ValidationResult };