@sinequa/galactik 2.3.0 → 2.5.0
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/README.md +8 -0
- package/fesm2022/sinequa-galactik.mjs +726 -11
- package/fesm2022/sinequa-galactik.mjs.map +1 -1
- package/package.json +1 -1
- package/types/sinequa-galactik.d.ts +279 -15
package/package.json
CHANGED
|
@@ -226,6 +226,23 @@ export declare class BellIcon {
|
|
|
226
226
|
*/
|
|
227
227
|
export declare const BellIconComponent: typeof BellIcon;
|
|
228
228
|
export type BellIconComponent = BellIcon;
|
|
229
|
+
export declare class BellSlashIcon {
|
|
230
|
+
class: import("@angular/core").InputSignal<string | undefined>;
|
|
231
|
+
classes: import("@angular/core").Signal<string>;
|
|
232
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BellSlashIcon, never>;
|
|
233
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BellSlashIcon, "bell-slash, bell-slash-icon, BellSlash, BellSlashIcon", never, {
|
|
234
|
+
"class": {
|
|
235
|
+
"alias": "class";
|
|
236
|
+
"required": false;
|
|
237
|
+
"isSignal": true;
|
|
238
|
+
};
|
|
239
|
+
}, {}, never, never, true, never>;
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* @deprecated Use BellSlashIcon instead.
|
|
243
|
+
*/
|
|
244
|
+
export declare const BellSlashIconComponent: typeof BellSlashIcon;
|
|
245
|
+
export type BellSlashIconComponent = BellSlashIcon;
|
|
229
246
|
export declare class BookmarkIcon {
|
|
230
247
|
class: import("@angular/core").InputSignal<string | undefined>;
|
|
231
248
|
classes: import("@angular/core").Signal<string>;
|
|
@@ -1088,6 +1105,23 @@ export declare class GridIcon {
|
|
|
1088
1105
|
*/
|
|
1089
1106
|
export declare const GridIconComponent: typeof GridIcon;
|
|
1090
1107
|
export type GridIconComponent = GridIcon;
|
|
1108
|
+
export declare class GripVerticalIcon {
|
|
1109
|
+
class: import("@angular/core").InputSignal<string | undefined>;
|
|
1110
|
+
classes: import("@angular/core").Signal<string>;
|
|
1111
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<GripVerticalIcon, never>;
|
|
1112
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<GripVerticalIcon, "grip-vertical, grip-vertical-icon, GripVertical, GripVerticalIcon", never, {
|
|
1113
|
+
"class": {
|
|
1114
|
+
"alias": "class";
|
|
1115
|
+
"required": false;
|
|
1116
|
+
"isSignal": true;
|
|
1117
|
+
};
|
|
1118
|
+
}, {}, never, never, true, never>;
|
|
1119
|
+
}
|
|
1120
|
+
/**
|
|
1121
|
+
* @deprecated Use GripVerticalIcon instead.
|
|
1122
|
+
*/
|
|
1123
|
+
export declare const GripVerticalIconComponent: typeof GripVerticalIcon;
|
|
1124
|
+
export type GripVerticalIconComponent = GripVerticalIcon;
|
|
1091
1125
|
export declare class HighlighterIcon {
|
|
1092
1126
|
class: import("@angular/core").InputSignal<string | undefined>;
|
|
1093
1127
|
classes: import("@angular/core").Signal<string>;
|
|
@@ -1360,6 +1394,23 @@ export declare class LoadingCircleIcon {
|
|
|
1360
1394
|
*/
|
|
1361
1395
|
export declare const LoadingCircleIconComponent: typeof LoadingCircleIcon;
|
|
1362
1396
|
export type LoadingCircleIconComponent = LoadingCircleIcon;
|
|
1397
|
+
export declare class LockIcon {
|
|
1398
|
+
class: import("@angular/core").InputSignal<string | undefined>;
|
|
1399
|
+
classes: import("@angular/core").Signal<string>;
|
|
1400
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LockIcon, never>;
|
|
1401
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LockIcon, "lock, lock-icon, Lock, LockIcon", never, {
|
|
1402
|
+
"class": {
|
|
1403
|
+
"alias": "class";
|
|
1404
|
+
"required": false;
|
|
1405
|
+
"isSignal": true;
|
|
1406
|
+
};
|
|
1407
|
+
}, {}, never, never, true, never>;
|
|
1408
|
+
}
|
|
1409
|
+
/**
|
|
1410
|
+
* @deprecated Use LockIcon instead.
|
|
1411
|
+
*/
|
|
1412
|
+
export declare const LockIconComponent: typeof LockIcon;
|
|
1413
|
+
export type LockIconComponent = LockIcon;
|
|
1363
1414
|
export declare class MagnifyingGlassIcon {
|
|
1364
1415
|
class: import("@angular/core").InputSignal<string | undefined>;
|
|
1365
1416
|
classes: import("@angular/core").Signal<string>;
|
|
@@ -2711,12 +2762,71 @@ export declare const tooltipVariants: (props?: ({
|
|
|
2711
2762
|
interactive?: boolean | null | undefined;
|
|
2712
2763
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
2713
2764
|
type TooltipVariants = VariantProps<typeof tooltipVariants>;
|
|
2765
|
+
/**
|
|
2766
|
+
* `[truncated]` — tells whether the text of an element is cut off (a one-line `truncate` or a multi-line
|
|
2767
|
+
* `line-clamp-*`), so that a tooltip is shown only when it adds something:
|
|
2768
|
+
* `[tooltipDisabled]="!cut.isTruncated()"`. A tooltip that repeats a text already fully visible is noise;
|
|
2769
|
+
* one that is missing on a cut-off text hides information.
|
|
2770
|
+
*
|
|
2771
|
+
* The state is measured when the element is rendered, then again whenever its size changes.
|
|
2772
|
+
*
|
|
2773
|
+
* The element that is actually cut is the host by default. When the cut element is inside the host (a
|
|
2774
|
+
* component whose host is never clamped itself, like the label of a `<ListItemText>`), give its CSS selector
|
|
2775
|
+
* as the value: `truncated=".list-item-text"`.
|
|
2776
|
+
*
|
|
2777
|
+
* A tooltip is a pointer help: a host that cannot take the keyboard focus never opens it from the keyboard.
|
|
2778
|
+
* Give a keyboard user the full text another way — for instance by lifting the clamp while an ancestor has
|
|
2779
|
+
* `:focus-visible` (`in-focus-visible:line-clamp-none`).
|
|
2780
|
+
*
|
|
2781
|
+
* @example
|
|
2782
|
+
* ```html
|
|
2783
|
+
* <span class="truncate" truncated #cut="truncated" [tooltip]="label" [tooltipDisabled]="!cut.isTruncated()">{{ label }}</span>
|
|
2784
|
+
*
|
|
2785
|
+
* <ListItemText truncated=".list-item-text" #cut="truncated" [tooltip]="label" [tooltipDisabled]="!cut.isTruncated()">
|
|
2786
|
+
* {{ label }}
|
|
2787
|
+
* </ListItemText>
|
|
2788
|
+
* ```
|
|
2789
|
+
*/
|
|
2790
|
+
export declare class TruncatedDirective {
|
|
2791
|
+
/** CSS selector, relative to the host, of the element that is cut. Empty: the host itself. */
|
|
2792
|
+
readonly truncated: import("@angular/core").InputSignal<string>;
|
|
2793
|
+
private readonly host;
|
|
2794
|
+
private readonly cut;
|
|
2795
|
+
/** Whether the text is currently cut off. */
|
|
2796
|
+
readonly isTruncated: import("@angular/core").Signal<boolean>;
|
|
2797
|
+
constructor();
|
|
2798
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TruncatedDirective, never>;
|
|
2799
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TruncatedDirective, "[truncated]", ["truncated"], {
|
|
2800
|
+
"truncated": {
|
|
2801
|
+
"alias": "truncated";
|
|
2802
|
+
"required": false;
|
|
2803
|
+
"isSignal": true;
|
|
2804
|
+
};
|
|
2805
|
+
}, {}, never, never, true, never>;
|
|
2806
|
+
}
|
|
2714
2807
|
export declare class MenuComponent {
|
|
2715
2808
|
class: import("@angular/core").InputSignal<string | undefined>;
|
|
2716
2809
|
classes: import("@angular/core").Signal<string>;
|
|
2717
2810
|
ngMenu: Menu<any>;
|
|
2718
2811
|
readonly popover: PopoverDirective;
|
|
2812
|
+
private readonly host;
|
|
2813
|
+
/** Whether a submenu was open when the last Escape keydown started its way down to its target. */
|
|
2814
|
+
private submenuOpenAtEscape;
|
|
2719
2815
|
constructor();
|
|
2816
|
+
/**
|
|
2817
|
+
* Escape closes the menu and gives the focus back to its trigger.
|
|
2818
|
+
*
|
|
2819
|
+
* Left to the browser, it does nothing: a `popover="auto"` is dismissed by Escape through the browser's
|
|
2820
|
+
* close request, but `@angular/aria` handles the same keydown and calls `preventDefault()` on it, which
|
|
2821
|
+
* cancels that request — while its own Escape only closes a *sub*menu (a standalone `ngMenu` has no
|
|
2822
|
+
* trigger of its own to close). Hence it is done here.
|
|
2823
|
+
*
|
|
2824
|
+
* While a submenu is open, Escape stays with `@angular/aria`: it closes that submenu alone and puts the
|
|
2825
|
+
* focus back on the parent item (APG: one level per press); the next Escape then reaches this method.
|
|
2826
|
+
* Whether a submenu was open is read in the capture phase (see the constructor): by the time this bubbling
|
|
2827
|
+
* listener runs, `@angular/aria` has already closed it.
|
|
2828
|
+
*/
|
|
2829
|
+
onEscape(): void;
|
|
2720
2830
|
onClick(event: MouseEvent): void;
|
|
2721
2831
|
static ɵfac: i0.ɵɵFactoryDeclaration<MenuComponent, never>;
|
|
2722
2832
|
static ɵdir: i0.ɵɵDirectiveDeclaration<MenuComponent, "Menu,menu", ["menu"], {
|
|
@@ -3745,7 +3855,7 @@ export declare class ButtonComponent {
|
|
|
3745
3855
|
variant: import("@angular/core").InputSignal<"primary" | "secondary" | "none" | "light-accent" | "accent" | "tertiary" | null | undefined>;
|
|
3746
3856
|
scheme: import("@angular/core").InputSignal<"default" | "neutral" | null | undefined>;
|
|
3747
3857
|
iconOnly: import("@angular/core").InputSignal<boolean | null | undefined>;
|
|
3748
|
-
size: import("@angular/core").InputSignal<"small" | "
|
|
3858
|
+
size: import("@angular/core").InputSignal<"small" | "sm" | "md" | "xs" | "lg" | "xsmall" | "medium" | "large" | null | undefined>;
|
|
3749
3859
|
variants: import("@angular/core").Signal<string | undefined>;
|
|
3750
3860
|
static ɵfac: i0.ɵɵFactoryDeclaration<ButtonComponent, never>;
|
|
3751
3861
|
static ɵdir: i0.ɵɵDirectiveDeclaration<ButtonComponent, "button", never, {
|
|
@@ -3789,7 +3899,7 @@ declare const BUTTON_ICON_SOLO_CLASS = "btn-icon-solo";
|
|
|
3789
3899
|
declare const buttonVariants: (props?: ({
|
|
3790
3900
|
variant?: "primary" | "secondary" | "none" | "light-accent" | "accent" | "tertiary" | null | undefined;
|
|
3791
3901
|
scheme?: "default" | "neutral" | null | undefined;
|
|
3792
|
-
size?: "small" | "
|
|
3902
|
+
size?: "small" | "sm" | "md" | "xs" | "lg" | "xsmall" | "medium" | "large" | null | undefined;
|
|
3793
3903
|
iconOnly?: boolean | null | undefined;
|
|
3794
3904
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
3795
3905
|
type ButtonVariants = VariantProps<typeof buttonVariants>;
|
|
@@ -3813,7 +3923,7 @@ export declare class ToggleComponent {
|
|
|
3813
3923
|
/** Palette : `unique` (primaire) ou `multi` (secondaire). */
|
|
3814
3924
|
readonly variant: import("@angular/core").InputSignal<"multi" | "unique" | null | undefined>;
|
|
3815
3925
|
/** Taille (`sm`/`md`, alias `small`/`medium`). */
|
|
3816
|
-
readonly size: import("@angular/core").InputSignal<"small" | "
|
|
3926
|
+
readonly size: import("@angular/core").InputSignal<"small" | "sm" | "md" | "medium" | null | undefined>;
|
|
3817
3927
|
/** Pilule carrée (icône seule). */
|
|
3818
3928
|
readonly iconOnly: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
3819
3929
|
/** Discriminant de rendu d'icône (piloté par le consommateur). */
|
|
@@ -3886,7 +3996,7 @@ export declare class ToggleItemComponent {
|
|
|
3886
3996
|
/** Palette explicite ; à défaut, héritée du `<ToggleGroup>` parent, sinon `unique`. */
|
|
3887
3997
|
readonly variant: import("@angular/core").InputSignal<"multi" | "unique" | null | undefined>;
|
|
3888
3998
|
/** Taille (`sm`/`md`, alias `small`/`medium`). */
|
|
3889
|
-
readonly size: import("@angular/core").InputSignal<"small" | "
|
|
3999
|
+
readonly size: import("@angular/core").InputSignal<"small" | "sm" | "md" | "medium" | null | undefined>;
|
|
3890
4000
|
/** Pilule carrée (icône seule). */
|
|
3891
4001
|
readonly iconOnly: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
3892
4002
|
/** Discriminant de rendu d'icône (piloté par le consommateur). */
|
|
@@ -4023,7 +4133,7 @@ export declare const TOGGLE_ICON_CLASS = "toggle-icon";
|
|
|
4023
4133
|
export declare const TOGGLE_LABEL_CLASS = "toggle-label";
|
|
4024
4134
|
export declare const toggleVariants: (props?: ({
|
|
4025
4135
|
variant?: "multi" | "unique" | null | undefined;
|
|
4026
|
-
size?: "small" | "
|
|
4136
|
+
size?: "small" | "sm" | "md" | "medium" | null | undefined;
|
|
4027
4137
|
iconOnly?: boolean | null | undefined;
|
|
4028
4138
|
showIcon?: boolean | null | undefined;
|
|
4029
4139
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
@@ -5004,7 +5114,7 @@ export declare class TagComponent {
|
|
|
5004
5114
|
class: import("@angular/core").InputSignal<string | undefined>;
|
|
5005
5115
|
variant: import("@angular/core").InputSignal<"primary" | "secondary" | null | undefined>;
|
|
5006
5116
|
scheme: import("@angular/core").InputSignal<"error" | "sage" | "success" | "almond" | "pink" | "grey" | "yellow" | "cherry" | "indigo" | "cyan" | "warning" | "info" | null | undefined>;
|
|
5007
|
-
size: import("@angular/core").InputSignal<"small" | "
|
|
5117
|
+
size: import("@angular/core").InputSignal<"small" | "sm" | "md" | "xs" | "xsmall" | "medium" | null | undefined>;
|
|
5008
5118
|
variants: import("@angular/core").Signal<string>;
|
|
5009
5119
|
static ɵfac: i0.ɵɵFactoryDeclaration<TagComponent, never>;
|
|
5010
5120
|
static ɵdir: i0.ɵɵDirectiveDeclaration<TagComponent, "tag, Tag", never, {
|
|
@@ -5036,7 +5146,7 @@ declare const TAG_FLAG_CLASS = "tag-flag";
|
|
|
5036
5146
|
declare const tagVariants: (props?: ({
|
|
5037
5147
|
variant?: "primary" | "secondary" | null | undefined;
|
|
5038
5148
|
scheme?: "error" | "sage" | "success" | "almond" | "pink" | "grey" | "yellow" | "cherry" | "indigo" | "cyan" | "warning" | "info" | null | undefined;
|
|
5039
|
-
size?: "small" | "
|
|
5149
|
+
size?: "small" | "sm" | "md" | "xs" | "xsmall" | "medium" | null | undefined;
|
|
5040
5150
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
5041
5151
|
type TagVariants = VariantProps<typeof tagVariants>;
|
|
5042
5152
|
/**
|
|
@@ -5440,14 +5550,14 @@ export declare class AvatarFallbackComponent {
|
|
|
5440
5550
|
canrender: import("@angular/core").WritableSignal<boolean>;
|
|
5441
5551
|
class: import("@angular/core").InputSignal<string | undefined>;
|
|
5442
5552
|
/** Explicite ; à défaut, hérité de l'`<avatar>` parent, sinon `"large"` (aligné sur le cva). */
|
|
5443
|
-
size: import("@angular/core").InputSignal<"small" | "
|
|
5553
|
+
size: import("@angular/core").InputSignal<"small" | "xsmall" | "medium" | "large" | null | undefined>;
|
|
5444
5554
|
/** Explicite ; à défaut, hérité de l'`<avatar>` parent, sinon `"primary"`. */
|
|
5445
5555
|
fill: import("@angular/core").InputSignal<"primary" | "secondary" | null | undefined>;
|
|
5446
5556
|
/** Explicite ; à défaut, hérité de l'`<avatar>` parent, sinon `"sage"`. */
|
|
5447
5557
|
scheme: import("@angular/core").InputSignal<"error" | "sage" | "success" | "almond" | "pink" | "grey" | "yellow" | "cherry" | "indigo" | "cyan" | "warning" | "info" | null | undefined>;
|
|
5448
5558
|
/** Conteneur parent, pour hériter size/fill/scheme par défaut. */
|
|
5449
5559
|
private readonly avatar;
|
|
5450
|
-
protected readonly resolvedSize: import("@angular/core").Signal<NonNullable<"small" | "
|
|
5560
|
+
protected readonly resolvedSize: import("@angular/core").Signal<NonNullable<"small" | "xsmall" | "medium" | "large" | null | undefined>>;
|
|
5451
5561
|
protected readonly resolvedFill: import("@angular/core").Signal<NonNullable<"primary" | "secondary" | null | undefined>>;
|
|
5452
5562
|
protected readonly resolvedScheme: import("@angular/core").Signal<NonNullable<"error" | "sage" | "success" | "almond" | "pink" | "grey" | "yellow" | "cherry" | "indigo" | "cyan" | "warning" | "info" | null | undefined>>;
|
|
5453
5563
|
variants: import("@angular/core").Signal<string>;
|
|
@@ -5529,7 +5639,7 @@ export declare class AvatarComponent {
|
|
|
5529
5639
|
avatarImage: import("@angular/core").Signal<AvatarImageComponent | undefined>;
|
|
5530
5640
|
avatarFallback: import("@angular/core").Signal<AvatarFallbackComponent | undefined>;
|
|
5531
5641
|
class: import("@angular/core").InputSignal<string | undefined>;
|
|
5532
|
-
size: import("@angular/core").InputSignal<"small" | "
|
|
5642
|
+
size: import("@angular/core").InputSignal<"small" | "xsmall" | "medium" | "large" | null | undefined>;
|
|
5533
5643
|
fill: import("@angular/core").InputSignal<"primary" | "secondary" | null | undefined>;
|
|
5534
5644
|
scheme: import("@angular/core").InputSignal<"error" | "sage" | "success" | "almond" | "pink" | "grey" | "yellow" | "cherry" | "indigo" | "cyan" | "warning" | "info" | null | undefined>;
|
|
5535
5645
|
variants: import("@angular/core").Signal<string>;
|
|
@@ -5590,7 +5700,7 @@ declare const avatarVariants: (props?: ({
|
|
|
5590
5700
|
content?: "picture" | "initials" | null | undefined;
|
|
5591
5701
|
style?: "primary" | "secondary" | null | undefined;
|
|
5592
5702
|
scheme?: "error" | "sage" | "success" | "almond" | "pink" | "grey" | "yellow" | "cherry" | "indigo" | "cyan" | "warning" | "info" | null | undefined;
|
|
5593
|
-
size?: "small" | "
|
|
5703
|
+
size?: "small" | "xsmall" | "medium" | "large" | null | undefined;
|
|
5594
5704
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
5595
5705
|
type AvatarVariants = VariantProps<typeof avatarVariants>;
|
|
5596
5706
|
/** Left icon slot — tags its host with the `link-icon-left` class and pins it to the start. */
|
|
@@ -5648,7 +5758,7 @@ export declare class LinkIconRightDirective {
|
|
|
5648
5758
|
*/
|
|
5649
5759
|
export declare class LinkComponent {
|
|
5650
5760
|
class: import("@angular/core").InputSignal<string | undefined>;
|
|
5651
|
-
size: import("@angular/core").InputSignal<"small" | "
|
|
5761
|
+
size: import("@angular/core").InputSignal<"small" | "sm" | "md" | "medium" | null | undefined>;
|
|
5652
5762
|
visited: import("@angular/core").InputSignal<boolean | null | undefined>;
|
|
5653
5763
|
icon: import("@angular/core").InputSignal<boolean | null | undefined>;
|
|
5654
5764
|
openWindow: import("@angular/core").InputSignal<boolean | null | undefined>;
|
|
@@ -5707,13 +5817,13 @@ export declare class LinkComponent {
|
|
|
5707
5817
|
}
|
|
5708
5818
|
export declare const LINK_LABEL_CLASS = "link-label";
|
|
5709
5819
|
declare const linkVariants: (props?: ({
|
|
5710
|
-
size?: "small" | "
|
|
5820
|
+
size?: "small" | "sm" | "md" | "medium" | null | undefined;
|
|
5711
5821
|
visited?: boolean | null | undefined;
|
|
5712
5822
|
icon?: boolean | null | undefined;
|
|
5713
5823
|
openWindow?: boolean | null | undefined;
|
|
5714
5824
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
5715
5825
|
export declare const linkIconVariants: (props?: ({
|
|
5716
|
-
size?: "small" | "
|
|
5826
|
+
size?: "small" | "sm" | "md" | "medium" | null | undefined;
|
|
5717
5827
|
position?: "right" | "left" | null | undefined;
|
|
5718
5828
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
5719
5829
|
type LinkVariants = VariantProps<typeof linkVariants>;
|
|
@@ -6201,7 +6311,14 @@ declare abstract class SearchBarBase implements FormValueControl<string> {
|
|
|
6201
6311
|
* (`<SearchBar [formField]="form.query" />`).
|
|
6202
6312
|
*/
|
|
6203
6313
|
value: import("@angular/core").ModelSignal<string>;
|
|
6204
|
-
/**
|
|
6314
|
+
/**
|
|
6315
|
+
* Emitted with the current query, always a `string`: when the built-in send button is activated (click or Enter on
|
|
6316
|
+
* it) and, on the plain bar, when Enter is pressed in the field. The bar with `suggestions` is a combobox, so
|
|
6317
|
+
* Enter in its field commits the active option instead and does not emit.
|
|
6318
|
+
*
|
|
6319
|
+
* The native DOM `search` event of the inner `<input type="search">` (fired by Chromium on Enter) is stopped
|
|
6320
|
+
* inside the component: `(search)` on the host never receives an `Event`.
|
|
6321
|
+
*/
|
|
6205
6322
|
search: import("@angular/core").OutputEmitterRef<string>;
|
|
6206
6323
|
placeholder: import("@angular/core").InputSignal<string>;
|
|
6207
6324
|
/**
|
|
@@ -6250,6 +6367,12 @@ declare abstract class SearchBarBase implements FormValueControl<string> {
|
|
|
6250
6367
|
searchIconClass: import("@angular/core").Signal<string>;
|
|
6251
6368
|
clearSearch(e: Event): void;
|
|
6252
6369
|
emitSearch(e: Event): void;
|
|
6370
|
+
/**
|
|
6371
|
+
* Enter in the field of the plain bar: emits the current text, and leaves the keydown to bubble up to the host
|
|
6372
|
+
* (unlike `emitSearch`, which is for the buttons). Ignored while an IME composition is running — that Enter
|
|
6373
|
+
* validates the candidate, not the search — and while disabled.
|
|
6374
|
+
*/
|
|
6375
|
+
emitSearchOnEnter(e: Event): void;
|
|
6253
6376
|
static ɵfac: i0.ɵɵFactoryDeclaration<SearchBarBase, never>;
|
|
6254
6377
|
static ɵdir: i0.ɵɵDirectiveDeclaration<SearchBarBase, never, never, {
|
|
6255
6378
|
"value": {
|
|
@@ -7955,6 +8078,147 @@ export declare const resizableHandleVariants: (props?: ({
|
|
|
7955
8078
|
withHandle?: boolean | null | undefined;
|
|
7956
8079
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7957
8080
|
type ResizableHandleVariants = VariantProps<typeof resizableHandleVariants>;
|
|
8081
|
+
/**
|
|
8082
|
+
* `[sortable]` — makes the items of a list reorderable by drag and drop, with the browser's own drag and drop
|
|
8083
|
+
* (no dependency), and from the keyboard with <kbd>Alt</kbd> + <kbd>↑</kbd> / <kbd>↓</kbd>.
|
|
8084
|
+
*
|
|
8085
|
+
* The directive owns the gesture, not the data. It is given the items in their current order and reports the new
|
|
8086
|
+
* order through `(reorder)`; saving it, and updating the list it was given, is up to the consumer. While an item is
|
|
8087
|
+
* dragged the others slide out of the way and a slightly tilted copy of the dragged item follows the pointer, leaning
|
|
8088
|
+
* the other way when it goes up; dropped, it settles in its slot. A drag that is abandoned (dropped outside the list,
|
|
8089
|
+
* <kbd>Esc</kbd>) leaves the order as it was and nothing is emitted.
|
|
8090
|
+
*
|
|
8091
|
+
* Render the list from `items()` — the order **shown**, which is the given order, or the order the drop would give
|
|
8092
|
+
* while an item is being dragged — and mark each element with `[sortableItem]`, giving the item. Track the `@for` by
|
|
8093
|
+
* the item itself: the elements are moved, not recreated, which is what lets them slide and keep the focus.
|
|
8094
|
+
*
|
|
8095
|
+
* The dragged item's element carries `data-dragging` (a placeholder to style: `data-dragging:bg-…`). The copy that follows
|
|
8096
|
+
* the pointer is built from the dragged element, so it looks like it, and is placed in the top layer, above a popover
|
|
8097
|
+
* that may host the list.
|
|
8098
|
+
*
|
|
8099
|
+
* A touch screen that does not start a native drag has no way to reorder: the keyboard shortcut is the only
|
|
8100
|
+
* alternative, and it is not available there either.
|
|
8101
|
+
*
|
|
8102
|
+
* @example
|
|
8103
|
+
* ```html
|
|
8104
|
+
* <ul [sortable]="tags()" #sortable="sortable" (reorder)="tags.set($event)" [sortableAnnounce]="moved">
|
|
8105
|
+
* @for (tag of sortable.items(); track tag) {
|
|
8106
|
+
* <li [sortableItem]="tag" class="data-dragging:opacity-40">{{ tag }}</li>
|
|
8107
|
+
* }
|
|
8108
|
+
* </ul>
|
|
8109
|
+
* ```
|
|
8110
|
+
*/
|
|
8111
|
+
export declare class SortableDirective<T = unknown> {
|
|
8112
|
+
/** The items, in their current order. */
|
|
8113
|
+
readonly sortable: import("@angular/core").InputSignal<readonly T[]>;
|
|
8114
|
+
/** Turns the reordering off: nothing is draggable, the keyboard shortcut does nothing. */
|
|
8115
|
+
readonly sortableDisabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
8116
|
+
/**
|
|
8117
|
+
* Text announced to screen readers after a keyboard move: « "Annual report" moved to position 2 of 3 ». The
|
|
8118
|
+
* library translates nothing, so without it a move is silent.
|
|
8119
|
+
*/
|
|
8120
|
+
readonly sortableAnnounce: import("@angular/core").InputSignal<((item: T, position: number, total: number) => string) | undefined>;
|
|
8121
|
+
/** The new order, when an item is dropped in a new place or moved from the keyboard. */
|
|
8122
|
+
readonly reorder: import("@angular/core").OutputEmitterRef<T[]>;
|
|
8123
|
+
private readonly document;
|
|
8124
|
+
private readonly injector;
|
|
8125
|
+
private readonly entries;
|
|
8126
|
+
/** The order the list would take if the dragged item were dropped now. */
|
|
8127
|
+
private readonly preview;
|
|
8128
|
+
private readonly draggedItem;
|
|
8129
|
+
/** The item being dragged, if any. */
|
|
8130
|
+
readonly dragged: import("@angular/core").Signal<T | undefined>;
|
|
8131
|
+
/** The order to render: the one given, or the preview of the drop while an item is being dragged. */
|
|
8132
|
+
readonly items: import("@angular/core").Signal<readonly T[]>;
|
|
8133
|
+
private ghost;
|
|
8134
|
+
private stopGhost;
|
|
8135
|
+
/** True from the drop (or the end of an abandoned drag) until the copy has settled in its slot. */
|
|
8136
|
+
private landing;
|
|
8137
|
+
private liveRegion;
|
|
8138
|
+
constructor();
|
|
8139
|
+
/** @internal */
|
|
8140
|
+
startDrag(event: DragEvent, item: T, row: HTMLElement): void;
|
|
8141
|
+
/** @internal Over an item: the dragged item takes the place of that item's half under the pointer, and the others shift. */
|
|
8142
|
+
dragOver(event: DragEvent, item: T, row: HTMLElement): void;
|
|
8143
|
+
/** Anywhere in the list — between two items, in its margin — a drop is accepted: it lands where the preview is. */
|
|
8144
|
+
protected onContainerDragOver(event: DragEvent): void;
|
|
8145
|
+
protected onDrop(event: DragEvent): void;
|
|
8146
|
+
/** @internal The end of every drag, dropped or not: `drop` has already started the landing, which is then left alone. */
|
|
8147
|
+
endDrag(): void;
|
|
8148
|
+
/**
|
|
8149
|
+
* What follows the pointer: a copy of the item, tilted and lifted by a shadow, drawn here rather than handed to
|
|
8150
|
+
* `setDragImage` — a browser may flatten or ignore the transform of a drag image, and a drag image cannot move
|
|
8151
|
+
* with the page. The native image is made invisible. The copy is a `popover` so that it sits in the top layer.
|
|
8152
|
+
*/
|
|
8153
|
+
private startGhost;
|
|
8154
|
+
/**
|
|
8155
|
+
* Ends the drag smoothly: the copy glides to the slot it was dropped in (or, for an abandoned drag, back to where
|
|
8156
|
+
* the item came from), straightens, and its shadow fades — then it gives way to the real item.
|
|
8157
|
+
*/
|
|
8158
|
+
private land;
|
|
8159
|
+
/** Runs `change`, which reorders the items, and slides each item from where it was to where it now is. */
|
|
8160
|
+
private slide;
|
|
8161
|
+
/** @internal Alt + ↑ / ↓: moves `item` one place. The focus follows it, and the move is announced. */
|
|
8162
|
+
moveBy(item: T, delta: -1 | 1): void;
|
|
8163
|
+
/** A visually hidden live region, created on the first announcement and shared by the whole list. */
|
|
8164
|
+
private announce;
|
|
8165
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SortableDirective<any>, never>;
|
|
8166
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<SortableDirective<any>, "[sortable]", ["sortable"], {
|
|
8167
|
+
"sortable": {
|
|
8168
|
+
"alias": "sortable";
|
|
8169
|
+
"required": true;
|
|
8170
|
+
"isSignal": true;
|
|
8171
|
+
};
|
|
8172
|
+
"sortableDisabled": {
|
|
8173
|
+
"alias": "sortableDisabled";
|
|
8174
|
+
"required": false;
|
|
8175
|
+
"isSignal": true;
|
|
8176
|
+
};
|
|
8177
|
+
"sortableAnnounce": {
|
|
8178
|
+
"alias": "sortableAnnounce";
|
|
8179
|
+
"required": false;
|
|
8180
|
+
"isSignal": true;
|
|
8181
|
+
};
|
|
8182
|
+
}, {
|
|
8183
|
+
"reorder": "reorder";
|
|
8184
|
+
}, ["entries"], never, true, never>;
|
|
8185
|
+
}
|
|
8186
|
+
/**
|
|
8187
|
+
* `[sortableItem]` — one reorderable element of a `[sortable]` list; the value is the item it stands for. The
|
|
8188
|
+
* element becomes draggable, carries `data-dragging` while it is the one being dragged, and answers to
|
|
8189
|
+
* <kbd>Alt</kbd> + <kbd>↑</kbd> / <kbd>↓</kbd> while it has the focus.
|
|
8190
|
+
*
|
|
8191
|
+
* `[sortableItemDisabled]` keeps one item from being moved — by the pointer or by the keyboard — while the others
|
|
8192
|
+
* stay free to move, and may be dropped before or after it: it is not moved by the user, but its position still
|
|
8193
|
+
* shifts to make room. A disabled item carries `data-disabled`.
|
|
8194
|
+
*/
|
|
8195
|
+
export declare class SortableItemDirective<T = unknown> {
|
|
8196
|
+
/** The item this element stands for — the same value as in the list given to `[sortable]`. */
|
|
8197
|
+
readonly sortableItem: import("@angular/core").InputSignal<T>;
|
|
8198
|
+
protected readonly list: SortableDirective<T>;
|
|
8199
|
+
readonly element: HTMLElement;
|
|
8200
|
+
/** Keeps this item from being moved, by the pointer or by the keyboard. The others stay free to move around it. */
|
|
8201
|
+
readonly sortableItemDisabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
8202
|
+
/** Not movable: this item is disabled, or the whole list is. */
|
|
8203
|
+
protected readonly locked: import("@angular/core").Signal<boolean>;
|
|
8204
|
+
protected readonly dragging: import("@angular/core").Signal<boolean>;
|
|
8205
|
+
protected onDragStart(event: DragEvent): void;
|
|
8206
|
+
/** Only when the element itself has the focus (Alt + arrows inside a field or a button of the item are theirs), and it is not disabled. */
|
|
8207
|
+
protected onMoveKey(event: Event, delta: -1 | 1): void;
|
|
8208
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SortableItemDirective<any>, never>;
|
|
8209
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<SortableItemDirective<any>, "[sortableItem]", never, {
|
|
8210
|
+
"sortableItem": {
|
|
8211
|
+
"alias": "sortableItem";
|
|
8212
|
+
"required": true;
|
|
8213
|
+
"isSignal": true;
|
|
8214
|
+
};
|
|
8215
|
+
"sortableItemDisabled": {
|
|
8216
|
+
"alias": "sortableItemDisabled";
|
|
8217
|
+
"required": false;
|
|
8218
|
+
"isSignal": true;
|
|
8219
|
+
};
|
|
8220
|
+
}, {}, never, never, true, never>;
|
|
8221
|
+
}
|
|
7958
8222
|
/**
|
|
7959
8223
|
* Observes viewport breakpoints.
|
|
7960
8224
|
*
|