yukit-web 0.0.28 → 0.0.29

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,7 +1,7 @@
1
1
  {
2
2
  "name": "yukit-web",
3
3
  "description": "Angular UI component library for Yurest web applications.",
4
- "version": "0.0.28",
4
+ "version": "0.0.29",
5
5
  "author": {
6
6
  "name": "Yurest Solutions",
7
7
  "email": "develop@yurest.com"
@@ -262,6 +262,8 @@ type YuwComboboxValue = string | string[] | undefined;
262
262
  * - `clearAriaLabel`: When set, the clear button is shown on the single-selection control and
263
263
  * this is its accessible name; when absent, there is no clear button. One input, one source of
264
264
  * truth. User-facing text — the consuming app is responsible for providing it translated.
265
+ * - `keepValueOnEscape`: Stops Escape from clearing the selection when the list is closed, so a
266
+ * filter picker keeps its choices and Escape only dismisses.
265
267
  * - `inputId`: HTML `id` for the focusable control (the search input, or the trigger button when
266
268
  * `readonlyTrigger` is set), enabling external `<label for="...">` association.
267
269
  * - `readonlyTrigger`: Renders control as a button showing selected label, placing search input inside popover.
@@ -279,6 +281,7 @@ type YuwComboboxValue = string | string[] | undefined;
279
281
  * ```
280
282
  */
281
283
  declare class YuwComboboxComponent<TData = unknown> extends YuwValueAccessorBase<YuwComboboxValue> {
284
+ private readonly _element;
282
285
  private readonly _multipleBox;
283
286
  private readonly _panel;
284
287
  private readonly _singleBox;
@@ -287,6 +290,7 @@ declare class YuwComboboxComponent<TData = unknown> extends YuwValueAccessorBase
287
290
  readonly emptyText: _angular_core.InputSignal<string | undefined>;
288
291
  readonly inputId: _angular_core.InputSignal<string | undefined>;
289
292
  readonly invalid: _angular_core.InputSignalWithTransform<boolean, unknown>;
293
+ readonly keepValueOnEscape: _angular_core.InputSignalWithTransform<boolean, unknown>;
290
294
  readonly multiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
291
295
  readonly options: _angular_core.InputSignal<YuwComboboxOptionDto<TData>[]>;
292
296
  readonly placeholder: _angular_core.InputSignal<string | undefined>;
@@ -312,6 +316,7 @@ declare class YuwComboboxComponent<TData = unknown> extends YuwValueAccessorBase
312
316
  protected readonly _selectedValues: _angular_core.Signal<Set<string>>;
313
317
  protected readonly _singleValue: _angular_core.Signal<string | undefined>;
314
318
  protected readonly _triggerClass: _angular_core.Signal<string>;
319
+ constructor();
315
320
  /**
316
321
  * Focuses the field and opens its option list. For a combobox living inside a popover or sheet:
317
322
  * the container calls it when it opens, so the user sees the options without a second click.
@@ -320,8 +325,16 @@ declare class YuwComboboxComponent<TData = unknown> extends YuwValueAccessorBase
320
325
  protected _emptyValue(): YuwComboboxValue;
321
326
  protected _onFocusOut(event: FocusEvent): void;
322
327
  protected onValueChange(next: YuwComboboxValue | null): void;
328
+ /**
329
+ * The brain clears the whole selection when Escape is pressed with the list closed. While
330
+ * `keepValueOnEscape` is on, that reset is skipped for the duration of the Escape keydown only,
331
+ * so the clear button and programmatic resets still work and the event keeps propagating (an
332
+ * enclosing popover can still close on it). Nothing is registered while the input is off, and
333
+ * the returned function undoes it all.
334
+ */
335
+ private _guardEscape;
323
336
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<YuwComboboxComponent<any>, never>;
324
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<YuwComboboxComponent<any>, "yuw-combobox", never, { "clearAriaLabel": { "alias": "clearAriaLabel"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": true; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "readonlyTrigger": { "alias": "readonlyTrigger"; "required": false; "isSignal": true; }; "search": { "alias": "search"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "triggerAriaLabel": { "alias": "triggerAriaLabel"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "search": "searchChange"; "value": "valueChange"; }, ["itemTemplate"], never, true, never>;
337
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<YuwComboboxComponent<any>, "yuw-combobox", never, { "clearAriaLabel": { "alias": "clearAriaLabel"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "keepValueOnEscape": { "alias": "keepValueOnEscape"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": true; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "readonlyTrigger": { "alias": "readonlyTrigger"; "required": false; "isSignal": true; }; "search": { "alias": "search"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "triggerAriaLabel": { "alias": "triggerAriaLabel"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "search": "searchChange"; "value": "valueChange"; }, ["itemTemplate"], never, true, never>;
325
338
  }
326
339
 
327
340
  interface YuwPageSort {
@@ -419,7 +432,7 @@ declare class YuwButtonComponent {
419
432
  readonly size: _angular_core.InputSignal<"default" | "xs" | "sm" | "lg" | "icon" | "icon-xs" | "icon-sm" | "icon-lg" | null | undefined>;
420
433
  readonly target: _angular_core.InputSignal<string | undefined>;
421
434
  readonly transparent: _angular_core.InputSignalWithTransform<boolean, unknown>;
422
- readonly type: _angular_core.InputSignal<"button" | "submit" | "reset">;
435
+ readonly type: _angular_core.InputSignal<"button" | "reset" | "submit">;
423
436
  readonly userClass: _angular_core.InputSignal<string>;
424
437
  readonly variant: _angular_core.InputSignal<"link" | "default" | "secondary" | "destructive" | "outline" | "ghost" | null | undefined>;
425
438
  readonly yuwDropdownMenuTrigger: _angular_core.InputSignal<TemplateRef<unknown> | undefined>;
@@ -551,7 +564,7 @@ declare class YuwButtonGroupComponent {
551
564
  color: YuwColorDto;
552
565
  transparent: boolean;
553
566
  disabled: boolean;
554
- type: "button" | "submit" | "reset";
567
+ type: "button" | "reset" | "submit";
555
568
  class: string;
556
569
  id: string;
557
570
  label?: string;