@flywheel-io/vision 21.3.1 → 21.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/fesm2022/flywheel-io-vision.mjs +2233 -1735
- package/fesm2022/flywheel-io-vision.mjs.map +1 -1
- package/global.scss +1 -0
- package/package.json +1 -1
- package/styles.css +60 -0
- package/types/flywheel-io-vision.d.ts +179 -10
package/global.scss
CHANGED
package/package.json
CHANGED
package/styles.css
CHANGED
|
@@ -288,6 +288,66 @@ Color Palettes for use with vision's theming system
|
|
|
288
288
|
|
|
289
289
|
/* stylelint-disable */
|
|
290
290
|
/* stylelint-disable */
|
|
291
|
+
html {
|
|
292
|
+
--card-background: #ffffffff;
|
|
293
|
+
--card-header: #f9f9f9ff;
|
|
294
|
+
--green-base: #14ae5cff;
|
|
295
|
+
--green-border: #14ae5c66;
|
|
296
|
+
--green-dark: #076d37ff;
|
|
297
|
+
--green-focus: #14ae5c1a;
|
|
298
|
+
--green-hover: #14ae5c0d;
|
|
299
|
+
--green-light: #e9f9efff;
|
|
300
|
+
--green-medium: #0c924bff;
|
|
301
|
+
--orange-base: #c47e09ff;
|
|
302
|
+
--orange-border: #f59e0b66;
|
|
303
|
+
--orange-dark: #935f07ff;
|
|
304
|
+
--orange-focus: #f59e0b1a;
|
|
305
|
+
--orange-hover: #f59e0b0d;
|
|
306
|
+
--orange-light: #fef5e7ff;
|
|
307
|
+
--orange-medium: #ac6f08ff;
|
|
308
|
+
--page-light: #ffffffff;
|
|
309
|
+
--page-shaded: #f1f3f4ff;
|
|
310
|
+
--primary-base: #1b68faff;
|
|
311
|
+
--primary-border: #1b69fa66;
|
|
312
|
+
--primary-dark: #103e96ff;
|
|
313
|
+
--primary-focus: #1b69fa1a;
|
|
314
|
+
--primary-hover: #1b69fa0d;
|
|
315
|
+
--primary-light: #e8f0ffff;
|
|
316
|
+
--primary-medium: #1653c8ff;
|
|
317
|
+
--red-base: #d73d3dff;
|
|
318
|
+
--red-border: #f0434366;
|
|
319
|
+
--red-dark: #782222ff;
|
|
320
|
+
--red-focus: #f043431a;
|
|
321
|
+
--red-hover: #f043430d;
|
|
322
|
+
--red-light: #fdececff;
|
|
323
|
+
--red-medium: #a73030ff;
|
|
324
|
+
--secondary-base: #b080fcff;
|
|
325
|
+
--secondary-border: #b081fc66;
|
|
326
|
+
--secondary-dark: #6a4d97ff;
|
|
327
|
+
--secondary-focus: #b081fc1a;
|
|
328
|
+
--secondary-hover: #b081fc0d;
|
|
329
|
+
--secondary-light: #f7f2ffff;
|
|
330
|
+
--secondary-medium: #8d66caff;
|
|
331
|
+
--separations-base: #e3e6eaff;
|
|
332
|
+
--separations-divider: #00000026;
|
|
333
|
+
--separations-input: #00000040;
|
|
334
|
+
--separations-overlay: #00000040;
|
|
335
|
+
--separations-border: #e6e6eaff;
|
|
336
|
+
--sidebar-base: #0a1936ff;
|
|
337
|
+
--slate-base: #748295ff;
|
|
338
|
+
--slate-border: #74829566;
|
|
339
|
+
--slate-dark: #464e59ff;
|
|
340
|
+
--slate-focus: #7482951a;
|
|
341
|
+
--slate-hover: #7482950d;
|
|
342
|
+
--slate-light: #f1f3f4ff;
|
|
343
|
+
--slate-medium: #5d6877ff;
|
|
344
|
+
--typography-base: #000000ff;
|
|
345
|
+
--typography-contrast: #ffffffff;
|
|
346
|
+
--typography-disabled: #c4c4c4ff;
|
|
347
|
+
--typography-light: #8996a9ff;
|
|
348
|
+
--typography-muted: #5d6877ff;
|
|
349
|
+
}
|
|
350
|
+
|
|
291
351
|
h1 {
|
|
292
352
|
font-family: Inter, sans-serif;
|
|
293
353
|
color: var(--typography-base);
|
|
@@ -4,7 +4,7 @@ import * as i1 from '@angular/common';
|
|
|
4
4
|
import { Location } from '@angular/common';
|
|
5
5
|
import { SafeStyle } from '@angular/platform-browser';
|
|
6
6
|
import * as i2 from '@angular/forms';
|
|
7
|
-
import { ControlValueAccessor, FormControl, FormControlStatus, FormGroup, ValidatorFn, AbstractControl, NgControl } from '@angular/forms';
|
|
7
|
+
import { ControlValueAccessor, FormControl, FormControlStatus, FormGroup, AsyncValidatorFn, ValidatorFn, AbstractControl, NgControl } from '@angular/forms';
|
|
8
8
|
import * as i2$1 from '@angular/cdk/dialog';
|
|
9
9
|
import { DialogRef, DialogConfig, Dialog } from '@angular/cdk/dialog';
|
|
10
10
|
import * as i3 from '@angular/cdk/overlay';
|
|
@@ -694,6 +694,149 @@ declare class FwChipModule {
|
|
|
694
694
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<FwChipModule>;
|
|
695
695
|
}
|
|
696
696
|
|
|
697
|
+
interface RgbaColor {
|
|
698
|
+
r: number;
|
|
699
|
+
g: number;
|
|
700
|
+
b: number;
|
|
701
|
+
a: number;
|
|
702
|
+
}
|
|
703
|
+
interface HslaColor {
|
|
704
|
+
h: number;
|
|
705
|
+
s: number;
|
|
706
|
+
l: number;
|
|
707
|
+
a: number;
|
|
708
|
+
}
|
|
709
|
+
interface HsvaColor {
|
|
710
|
+
h: number;
|
|
711
|
+
s: number;
|
|
712
|
+
v: number;
|
|
713
|
+
a: number;
|
|
714
|
+
}
|
|
715
|
+
/**
|
|
716
|
+
* PROTOTYPE-ONLY color math. In fw-ohif-v3's CustomColorPicker this is delegated
|
|
717
|
+
* entirely to tinycolor2. Whether Vision takes a small color-conversion dependency
|
|
718
|
+
* or keeps a hand-rolled util like this is an open decision for the real port
|
|
719
|
+
* (see the color-picker spike doc).
|
|
720
|
+
*/
|
|
721
|
+
declare function clamp(value: number, min: number, max: number): number;
|
|
722
|
+
declare function rgbaToHsva({ r, g, b, a }: RgbaColor): HsvaColor;
|
|
723
|
+
declare function hsvaToRgba({ h, s, v, a }: HsvaColor): RgbaColor;
|
|
724
|
+
declare function hsvaToHsla({ h, s, v, a }: HsvaColor): HslaColor;
|
|
725
|
+
declare function hslaToHsva({ h, s, l, a }: HslaColor): HsvaColor;
|
|
726
|
+
declare function rgbaToHex8(rgba: RgbaColor): string;
|
|
727
|
+
declare function rgbaToHex(rgba: RgbaColor): string;
|
|
728
|
+
/** Accepts #rgb, #rrggbb, or #rrggbbaa (with or without leading #). Returns null if unparseable. */
|
|
729
|
+
declare function hexToRgba(hex: string): RgbaColor | null;
|
|
730
|
+
declare const DEFAULT_RGBA: RgbaColor;
|
|
731
|
+
declare const MAX_PRESET_COLORS = 12;
|
|
732
|
+
declare const DEFAULT_PRESET_COLORS: string[];
|
|
733
|
+
|
|
734
|
+
type ColorFormat = 'hex' | 'rgb' | 'hsl' | 'hsv';
|
|
735
|
+
/**
|
|
736
|
+
* Form control component for picking an RGBA color via saturation/hue/alpha pickers, hex/RGB/HSL/HSV
|
|
737
|
+
* text inputs, and preset swatches, with Angular forms integration. Ported from fw-ohif-v3's
|
|
738
|
+
* CustomColorPicker (React/react-color).
|
|
739
|
+
* @see [Vision storybook](https://cdn.flywheel.io/docs/vision/master/?path=/docs/components-color-picker--docs)
|
|
740
|
+
* @see [[extensions/flywheel-ui/src/components/CustomColorPicker/CustomColorPicker.tsx]] (source)
|
|
741
|
+
*/
|
|
742
|
+
declare class FwColorPickerComponent implements ControlValueAccessor {
|
|
743
|
+
/** Bound color value, RGBA. Mirrors the source's `rgbCode` prop. */
|
|
744
|
+
readonly rgba: _angular_core.ModelSignal<RgbaColor>;
|
|
745
|
+
/** Preset swatch colors as hex/hex8 strings. Mirrors the source's `colors` prop. Capped at {@link MAX_PRESET_COLORS}. */
|
|
746
|
+
readonly presetColors: _angular_core.ModelSignal<string[]>;
|
|
747
|
+
protected readonly cappedPresetColors: _angular_core.Signal<string[]>;
|
|
748
|
+
/** Hides the alpha slider + opacity input, e.g. for label colors. */
|
|
749
|
+
readonly showAlpha: _angular_core.ModelSignal<boolean>;
|
|
750
|
+
/** Adds a drop shadow, for when the picker is shown in a popout/overlay so it stands out from what's behind it. */
|
|
751
|
+
readonly showShadow: _angular_core.InputSignal<boolean>;
|
|
752
|
+
/** Emits the current color as a 6-digit hex string whenever it changes. */
|
|
753
|
+
readonly hexChange: _angular_core.OutputEmitterRef<string>;
|
|
754
|
+
/** Emits the currently selected color when the Save button is clicked. */
|
|
755
|
+
readonly save: _angular_core.OutputEmitterRef<RgbaColor>;
|
|
756
|
+
/** Emits when the Cancel button is clicked. Does not revert `rgba` — the consumer decides what "cancel" means. */
|
|
757
|
+
readonly cancel: _angular_core.OutputEmitterRef<void>;
|
|
758
|
+
private readonly saturationEl;
|
|
759
|
+
private readonly hueEl;
|
|
760
|
+
private readonly alphaEl;
|
|
761
|
+
private readonly formatSelectEl;
|
|
762
|
+
/**
|
|
763
|
+
* The format dropdown mirrors fw-select's look (fw-text-input trigger + fw-menu-container /
|
|
764
|
+
* fw-menu / fw-menu-item options) but is driven by this plain signal instead of fw-select
|
|
765
|
+
* itself. fw-select opens its own CdkMenuTrigger overlay; when this component is shown inside
|
|
766
|
+
* a CdkMenuTrigger-based popout (see the "As Popout" story), CDK's outside-click handling
|
|
767
|
+
* doesn't recognize fw-select's overlay as part of the popout's menu stack and closes the
|
|
768
|
+
* popout the instant it's clicked. Revisit using fw-select directly once that's fixed upstream.
|
|
769
|
+
*/
|
|
770
|
+
protected readonly formatMenuOpen: _angular_core.WritableSignal<boolean>;
|
|
771
|
+
protected readonly formatMenuId: string;
|
|
772
|
+
protected readonly colorFormat: _angular_core.WritableSignal<ColorFormat>;
|
|
773
|
+
protected readonly hsva: _angular_core.Signal<HsvaColor>;
|
|
774
|
+
protected readonly hsla: _angular_core.Signal<HslaColor>;
|
|
775
|
+
protected readonly hex: _angular_core.Signal<string>;
|
|
776
|
+
/**
|
|
777
|
+
* Hue and saturation become mathematically undetermined at s=0 (gray: r===g===b, so
|
|
778
|
+
* rgbaToHsva's delta is 0 and it always reports hue 0) and at v=0 (black: saturation is
|
|
779
|
+
* likewise unrecoverable from RGB alone). Since `hsva` is fully re-derived from `rgba` on every
|
|
780
|
+
* read, dragging the saturation pointer to the far left (or down to the bottom) would otherwise
|
|
781
|
+
* silently reset whatever hue/saturation was previously selected, snapping the hue track back
|
|
782
|
+
* to red and leaving it unresponsive. These two signals hold onto the last determinate
|
|
783
|
+
* hue/saturation so the hue track and saturation-area background stay put through a trip
|
|
784
|
+
* across the undetermined edge; `displayHsva` is what every read site (drag handlers, pointer
|
|
785
|
+
* positions, saturation-area background) should use instead of raw `hsva()`.
|
|
786
|
+
*/
|
|
787
|
+
private readonly stickyHue;
|
|
788
|
+
private readonly stickySaturation;
|
|
789
|
+
protected readonly displayHsva: _angular_core.Signal<HsvaColor>;
|
|
790
|
+
protected readonly displayHsla: _angular_core.Signal<HslaColor>;
|
|
791
|
+
protected readonly saturationBackground: _angular_core.Signal<string>;
|
|
792
|
+
protected readonly saturationPointerStyle: _angular_core.Signal<{
|
|
793
|
+
left: string;
|
|
794
|
+
top: string;
|
|
795
|
+
}>;
|
|
796
|
+
protected readonly huePointerStyle: _angular_core.Signal<{
|
|
797
|
+
left: string;
|
|
798
|
+
}>;
|
|
799
|
+
protected readonly alphaPointerStyle: _angular_core.Signal<{
|
|
800
|
+
left: string;
|
|
801
|
+
}>;
|
|
802
|
+
protected readonly alphaTrackBackground: _angular_core.Signal<string>;
|
|
803
|
+
protected readonly draggingTrack: _angular_core.WritableSignal<"hue" | "alpha">;
|
|
804
|
+
protected readonly formatOptions: {
|
|
805
|
+
value: ColorFormat;
|
|
806
|
+
label: string;
|
|
807
|
+
}[];
|
|
808
|
+
protected readonly colorFormatLabel: _angular_core.Signal<string>;
|
|
809
|
+
private onChange;
|
|
810
|
+
private onTouched;
|
|
811
|
+
constructor();
|
|
812
|
+
writeValue(value: RgbaColor): void;
|
|
813
|
+
registerOnChange(fn: (value: RgbaColor) => void): void;
|
|
814
|
+
registerOnTouched(fn: () => void): void;
|
|
815
|
+
private commit;
|
|
816
|
+
private commitFromHsva;
|
|
817
|
+
protected onSaturationPointerDown(event: PointerEvent): void;
|
|
818
|
+
private dragSaturation;
|
|
819
|
+
protected onHuePointerDown(event: PointerEvent): void;
|
|
820
|
+
private dragHue;
|
|
821
|
+
protected onAlphaPointerDown(event: PointerEvent): void;
|
|
822
|
+
private dragAlpha;
|
|
823
|
+
protected toggleFormatMenu(): void;
|
|
824
|
+
protected onFormatChange(format: string | string[]): void;
|
|
825
|
+
protected onDocumentClick(event: MouseEvent): void;
|
|
826
|
+
protected onHexInput(value: string): void;
|
|
827
|
+
protected onRgbChannelInput(channel: 'r' | 'g' | 'b', value: string): void;
|
|
828
|
+
protected onHslChannelInput(channel: 'h' | 's' | 'l', value: string): void;
|
|
829
|
+
protected onHsvChannelInput(channel: 'h' | 's' | 'v', value: string): void;
|
|
830
|
+
protected onOpacityInput(value: string): void;
|
|
831
|
+
protected onSwatchClick(color: string): void;
|
|
832
|
+
protected isSwatchSelected(color: string): boolean;
|
|
833
|
+
protected readonly hex8: _angular_core.Signal<string>;
|
|
834
|
+
protected onSave(): void;
|
|
835
|
+
protected onCancel(): void;
|
|
836
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FwColorPickerComponent, never>;
|
|
837
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FwColorPickerComponent, "fw-color-picker", never, { "rgba": { "alias": "rgba"; "required": false; "isSignal": true; }; "presetColors": { "alias": "presetColors"; "required": false; "isSignal": true; }; "showAlpha": { "alias": "showAlpha"; "required": false; "isSignal": true; }; "showShadow": { "alias": "showShadow"; "required": false; "isSignal": true; }; }, { "rgba": "rgbaChange"; "presetColors": "presetColorsChange"; "showAlpha": "showAlphaChange"; "hexChange": "hexChange"; "save": "save"; "cancel": "cancel"; }, never, never, true, never>;
|
|
838
|
+
}
|
|
839
|
+
|
|
697
840
|
/**
|
|
698
841
|
* Form control component for a labeled row containing a switch or checkbox, toggled by clicking anywhere on the row
|
|
699
842
|
* @see [Vision storybook](https://cdn.flywheel.io/docs/vision/master/?path=/docs/form-controls-contained-input--docs)
|
|
@@ -1181,7 +1324,7 @@ declare class FwFormRendererComponent {
|
|
|
1181
1324
|
}
|
|
1182
1325
|
|
|
1183
1326
|
declare class FwValidators {
|
|
1184
|
-
static phone:
|
|
1327
|
+
static phone: AsyncValidatorFn;
|
|
1185
1328
|
static email: ValidatorFn;
|
|
1186
1329
|
static url: ValidatorFn;
|
|
1187
1330
|
}
|
|
@@ -1813,6 +1956,7 @@ declare class FwMenuContainerComponent implements AfterViewInit {
|
|
|
1813
1956
|
readonly focusFilterOnMount: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
1814
1957
|
readonly offset: _angular_core.InputSignal<string>;
|
|
1815
1958
|
emptyText: _angular_core.InputSignal<string>;
|
|
1959
|
+
readonly disableWrapperScroll: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
1816
1960
|
filteredMenuItems: FwMenuItemComponent[];
|
|
1817
1961
|
filteredMenuItemChange: _angular_core.OutputEmitterRef<FwMenuItemComponent[]>;
|
|
1818
1962
|
private defaultFilterFn;
|
|
@@ -1827,6 +1971,7 @@ declare class FwMenuContainerComponent implements AfterViewInit {
|
|
|
1827
1971
|
childSeparators: _angular_core.Signal<readonly FwMenuSeparatorComponent[]>;
|
|
1828
1972
|
childGroups: _angular_core.Signal<readonly FwMenuItemGroupComponent[]>;
|
|
1829
1973
|
private combinedMenuItems;
|
|
1974
|
+
noResults: _angular_core.Signal<boolean>;
|
|
1830
1975
|
readonly keyHandler: _angular_core.InputSignal<(event: KeyboardEvent) => void>;
|
|
1831
1976
|
get classes(): string;
|
|
1832
1977
|
get style(): SafeStyle;
|
|
@@ -1835,12 +1980,11 @@ declare class FwMenuContainerComponent implements AfterViewInit {
|
|
|
1835
1980
|
updateScrollState(): void;
|
|
1836
1981
|
startScroll(direction: 'up' | 'down'): void;
|
|
1837
1982
|
stopScroll(): void;
|
|
1838
|
-
noResults: _angular_core.WritableSignal<boolean>;
|
|
1839
1983
|
handleFilterClick(event: Event): void;
|
|
1840
1984
|
handleFilterInput(event: Event): void;
|
|
1841
1985
|
onFilterChange(filter: string): void;
|
|
1842
1986
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FwMenuContainerComponent, never>;
|
|
1843
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FwMenuContainerComponent, "fw-menu-container, fw-menu-filter", never, { "width": { "alias": "width"; "required": false; "isSignal": true; }; "maxHeight": { "alias": "maxHeight"; "required": false; "isSignal": true; }; "minHeight": { "alias": "minHeight"; "required": false; "isSignal": true; }; "border": { "alias": "border"; "required": false; "isSignal": true; }; "shadow": { "alias": "shadow"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "filterText": { "alias": "filterText"; "required": false; "isSignal": true; }; "focusFilterOnMount": { "alias": "focusFilterOnMount"; "required": false; "isSignal": true; }; "offset": { "alias": "offset"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "filterFn": { "alias": "filterFn"; "required": false; "isSignal": true; }; "additionalMenuItems": { "alias": "additionalMenuItems"; "required": false; "isSignal": true; }; "additionalGroups": { "alias": "additionalGroups"; "required": false; "isSignal": true; }; "additionalSeparators": { "alias": "additionalSeparators"; "required": false; "isSignal": true; }; "keyHandler": { "alias": "keyHandler"; "required": false; "isSignal": true; }; }, { "filteredMenuItemChange": "filteredMenuItemChange"; "filterChanged": "filterChanged"; }, ["menu", "childMenuItems", "childSeparators", "childGroups"], [".filter-content", "*", "custom-menu-items"], true, never>;
|
|
1987
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FwMenuContainerComponent, "fw-menu-container, fw-menu-filter", never, { "width": { "alias": "width"; "required": false; "isSignal": true; }; "maxHeight": { "alias": "maxHeight"; "required": false; "isSignal": true; }; "minHeight": { "alias": "minHeight"; "required": false; "isSignal": true; }; "border": { "alias": "border"; "required": false; "isSignal": true; }; "shadow": { "alias": "shadow"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "filterText": { "alias": "filterText"; "required": false; "isSignal": true; }; "focusFilterOnMount": { "alias": "focusFilterOnMount"; "required": false; "isSignal": true; }; "offset": { "alias": "offset"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "disableWrapperScroll": { "alias": "disableWrapperScroll"; "required": false; "isSignal": true; }; "filterFn": { "alias": "filterFn"; "required": false; "isSignal": true; }; "additionalMenuItems": { "alias": "additionalMenuItems"; "required": false; "isSignal": true; }; "additionalGroups": { "alias": "additionalGroups"; "required": false; "isSignal": true; }; "additionalSeparators": { "alias": "additionalSeparators"; "required": false; "isSignal": true; }; "keyHandler": { "alias": "keyHandler"; "required": false; "isSignal": true; }; }, { "filteredMenuItemChange": "filteredMenuItemChange"; "filterChanged": "filterChanged"; }, ["menu", "childMenuItems", "childSeparators", "childGroups"], [".filter-content", "*", "custom-menu-items"], true, never>;
|
|
1844
1988
|
}
|
|
1845
1989
|
|
|
1846
1990
|
/**
|
|
@@ -2209,9 +2353,17 @@ declare class FwSelectMenuComponent implements OnInit, OnDestroy, ControlValueAc
|
|
|
2209
2353
|
maxOptionsHeight: _angular_core.InputSignal<string>;
|
|
2210
2354
|
size: _angular_core.InputSignal<"large" | "medium" | "small">;
|
|
2211
2355
|
placeholder: _angular_core.InputSignal<string>;
|
|
2356
|
+
/**
|
|
2357
|
+
* Renders the `options` list in a `cdk-virtual-scroll-viewport` instead of one `fw-menu-item` per
|
|
2358
|
+
* option, so opening the panel stays fast with large option sets.
|
|
2359
|
+
* ! WARNING ! only works with the `options` input, not with content-projected menu items
|
|
2360
|
+
*/
|
|
2361
|
+
virtualScroll: _angular_core.InputSignal<boolean>;
|
|
2362
|
+
virtualScrollItemSize: _angular_core.InputSignal<number>;
|
|
2212
2363
|
trigger: CdkMenuTrigger;
|
|
2213
2364
|
textInput: FwTextInputComponent;
|
|
2214
2365
|
menu: _angular_core.Signal<FwMenuComponent>;
|
|
2366
|
+
private virtualScrollViewport;
|
|
2215
2367
|
/**
|
|
2216
2368
|
* The control itself, which is only as wide as `width()`. The host element is a block element and
|
|
2217
2369
|
* so can be considerably wider, and a click in that gap is an outside click.
|
|
@@ -2245,6 +2397,14 @@ declare class FwSelectMenuComponent implements OnInit, OnDestroy, ControlValueAc
|
|
|
2245
2397
|
* ! WARNING ! only works with content-projected menu items, does not work with the `options` input
|
|
2246
2398
|
*/
|
|
2247
2399
|
filterFn: _angular_core.InputSignal<MenuFilterFn>;
|
|
2400
|
+
/**
|
|
2401
|
+
* Height of the virtual-scroll viewport. Capped at `maxOptionsHeight()`, minus the filter box's
|
|
2402
|
+
* height (64px) when `showFilter()` is on since the filter box sits above the viewport inside the
|
|
2403
|
+
* same fixed-height panel. Below that cap, the viewport sizes down to fit the actual item count
|
|
2404
|
+
* (via CSS `min()`, since `maxOptionsHeight()` can be any CSS length) so a short options list
|
|
2405
|
+
* doesn't leave empty space under it.
|
|
2406
|
+
*/
|
|
2407
|
+
virtualScrollViewportHeight: _angular_core.Signal<string>;
|
|
2248
2408
|
inputDisplayValue: _angular_core.Signal<string>;
|
|
2249
2409
|
get value(): any;
|
|
2250
2410
|
set value(newValue: any);
|
|
@@ -2252,6 +2412,10 @@ declare class FwSelectMenuComponent implements OnInit, OnDestroy, ControlValueAc
|
|
|
2252
2412
|
constructor();
|
|
2253
2413
|
ngOnInit(): void;
|
|
2254
2414
|
private findRenderedMenuItem;
|
|
2415
|
+
trackByTrackingId: (_index: number, item: {
|
|
2416
|
+
trackingId: string;
|
|
2417
|
+
}) => string;
|
|
2418
|
+
private scrollOptionIntoView;
|
|
2255
2419
|
selectTitle: _angular_core.WritableSignal<string>;
|
|
2256
2420
|
private subscribeToMenuItems;
|
|
2257
2421
|
private menuItemsWatcher;
|
|
@@ -2308,7 +2472,7 @@ declare class FwSelectMenuComponent implements OnInit, OnDestroy, ControlValueAc
|
|
|
2308
2472
|
onFilterChanged(value: string): void;
|
|
2309
2473
|
onInputChange(event: Event): void;
|
|
2310
2474
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FwSelectMenuComponent, never>;
|
|
2311
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FwSelectMenuComponent, "fw-select", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "valueProperty": { "alias": "valueProperty"; "required": false; "isSignal": true; }; "useFullOptionAsValue": { "alias": "useFullOptionAsValue"; "required": false; "isSignal": true; }; "titleProperty": { "alias": "titleProperty"; "required": false; "isSignal": true; }; "iconProperty": { "alias": "iconProperty"; "required": false; "isSignal": true; }; "staticIcon": { "alias": "staticIcon"; "required": false; "isSignal": true; }; "descriptionProperty": { "alias": "descriptionProperty"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "showReset": { "alias": "showReset"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errored": { "alias": "errored"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "optionsWidth": { "alias": "optionsWidth"; "required": false; "isSignal": true; }; "minOptionsHeight": { "alias": "minOptionsHeight"; "required": false; "isSignal": true; }; "maxOptionsHeight": { "alias": "maxOptionsHeight"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "valueDisplayFn": { "alias": "valueDisplayFn"; "required": false; "isSignal": true; }; "filterFn": { "alias": "filterFn"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; }; }, { "disabled": "disabledChange"; "change": "change"; "filterChanged": "filterChanged"; }, ["menuItems", "menuItemGroups", "menuSeparators"], ["[fw-menu-item, fw-menu-separator, fw-menu-item-group]"], true, never>;
|
|
2475
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FwSelectMenuComponent, "fw-select", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "valueProperty": { "alias": "valueProperty"; "required": false; "isSignal": true; }; "useFullOptionAsValue": { "alias": "useFullOptionAsValue"; "required": false; "isSignal": true; }; "titleProperty": { "alias": "titleProperty"; "required": false; "isSignal": true; }; "iconProperty": { "alias": "iconProperty"; "required": false; "isSignal": true; }; "staticIcon": { "alias": "staticIcon"; "required": false; "isSignal": true; }; "descriptionProperty": { "alias": "descriptionProperty"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "showReset": { "alias": "showReset"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errored": { "alias": "errored"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "optionsWidth": { "alias": "optionsWidth"; "required": false; "isSignal": true; }; "minOptionsHeight": { "alias": "minOptionsHeight"; "required": false; "isSignal": true; }; "maxOptionsHeight": { "alias": "maxOptionsHeight"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; "isSignal": true; }; "virtualScrollItemSize": { "alias": "virtualScrollItemSize"; "required": false; "isSignal": true; }; "valueDisplayFn": { "alias": "valueDisplayFn"; "required": false; "isSignal": true; }; "filterFn": { "alias": "filterFn"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; }; }, { "disabled": "disabledChange"; "change": "change"; "filterChanged": "filterChanged"; }, ["menuItems", "menuItemGroups", "menuSeparators"], ["[fw-menu-item, fw-menu-separator, fw-menu-item-group]"], true, never>;
|
|
2312
2476
|
}
|
|
2313
2477
|
|
|
2314
2478
|
/**
|
|
@@ -2403,7 +2567,7 @@ declare class FwPhoneInputComponent implements OnInit, OnChanges, ControlValueAc
|
|
|
2403
2567
|
get format(): PhoneNumberFormat;
|
|
2404
2568
|
set format(value: PhoneNumberFormat);
|
|
2405
2569
|
countryChanged: EventEmitter<Country>;
|
|
2406
|
-
trigger: CdkMenuTrigger
|
|
2570
|
+
readonly trigger: _angular_core.Signal<CdkMenuTrigger>;
|
|
2407
2571
|
phoneFormattedNational: string | undefined;
|
|
2408
2572
|
allCountryList: Array<Country>;
|
|
2409
2573
|
preferredCountryList: Array<Country>;
|
|
@@ -2415,7 +2579,11 @@ declare class FwPhoneInputComponent implements OnInit, OnChanges, ControlValueAc
|
|
|
2415
2579
|
private _format;
|
|
2416
2580
|
private _numberObject;
|
|
2417
2581
|
private _previousFormattedNumber;
|
|
2418
|
-
|
|
2582
|
+
private _phoneLib;
|
|
2583
|
+
private _pendingValue;
|
|
2584
|
+
protected readonly libraryReady: _angular_core.WritableSignal<boolean>;
|
|
2585
|
+
private readonly _libraryReadyPromise;
|
|
2586
|
+
static getPhoneNumberPlaceHolder(countryISOCode: CountryCode): Promise<string | undefined>;
|
|
2419
2587
|
onTouched: () => void;
|
|
2420
2588
|
onChange: any;
|
|
2421
2589
|
constructor();
|
|
@@ -2432,6 +2600,7 @@ declare class FwPhoneInputComponent implements OnInit, OnChanges, ControlValueAc
|
|
|
2432
2600
|
registerOnTouched(fn: any): void;
|
|
2433
2601
|
setDisabledState(isDisabled: boolean): void;
|
|
2434
2602
|
writeValue(value: any): void;
|
|
2603
|
+
private applyWriteValue;
|
|
2435
2604
|
private get formattedPhoneNumber();
|
|
2436
2605
|
private formatAsYouTypeIfEnabled;
|
|
2437
2606
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FwPhoneInputComponent, never>;
|
|
@@ -2954,7 +3123,7 @@ declare class FwTextAreaInputComponent implements ControlValueAccessor {
|
|
|
2954
3123
|
*/
|
|
2955
3124
|
declare class FwTextAreaInputModule {
|
|
2956
3125
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FwTextAreaInputModule, never>;
|
|
2957
|
-
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<FwTextAreaInputModule, never, [typeof i1.CommonModule, typeof i2.ReactiveFormsModule, typeof i3$1.TextFieldModule, typeof
|
|
3126
|
+
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<FwTextAreaInputModule, never, [typeof i1.CommonModule, typeof i2.ReactiveFormsModule, typeof i3$1.TextFieldModule, typeof FwTextAreaInputComponent], [typeof FwTextAreaInputComponent]>;
|
|
2958
3127
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<FwTextAreaInputModule>;
|
|
2959
3128
|
}
|
|
2960
3129
|
|
|
@@ -3107,5 +3276,5 @@ declare class FwWrappedInputModule {
|
|
|
3107
3276
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<FwWrappedInputModule>;
|
|
3108
3277
|
}
|
|
3109
3278
|
|
|
3110
|
-
export { DialogWidth, FieldType, FwAlertComponent, FwAlertModule, FwAppIconComponent, FwAppIconModule, FwAvatarComponent, FwAvatarListComponent, FwAvatarModule, FwBackButtonComponent, FwBadgeComponent, FwBadgeModule, FwBreadcrumbsComponent, FwBreadcrumbsModule, FwButtonComponent, FwButtonDangerDirective, FwButtonDirective, FwButtonGroupComponent, FwButtonGroupModule, FwButtonModule, FwButtonPrimaryDirective, FwButtonSecondaryDirective, FwButtonSuccessDirective, FwButtonToggleComponent, FwButtonToggleItemComponent, FwButtonToggleModule, FwCardAttributeComponent, FwCardAuthorComponent, FwCardComponent, FwCardContentComponent, FwCardFooterComponent, FwCardHeaderComponent, FwCardModule, FwCell, FwCellDef, FwCheckboxComponent, FwCheckboxGroupComponent, FwCheckboxModule, FwChipComponent, FwChipModule, FwColumnDef, FwContainedInputComponent, FwContainedInputModule, FwCrumbComponent, FwDateInputComponent, FwDateInputModule, FwDialogActionsComponent, FwDialogComponent, FwDialogConfirmComponent, FwDialogContentComponent, FwDialogHeaderComponent, FwDialogService, FwDialogSimpleComponent, FwDialogsModule, FwFooterCell, FwFooterCellDef, FwFooterRow, FwFooterRowDef, FwFormHeadingComponent, FwFormHeadingModule, FwFormRendererComponent, FwGridComponent, FwGridItemComponent, FwHeaderCell, FwHeaderCellDef, FwHeaderRow, FwHeaderRowDef, FwIconButtonComponent, FwIconButtonModule, FwIconComponent, FwIconModule, FwLayoutContextComponent, FwLayoutGroupComponent, FwLayoutPanelComponent, FwLayoutSidebarComponent, FwLayoutToolbarComponent, FwLayoutsModule, FwMenuCloseTriggersDirective, FwMenuComponent, FwMenuContainerComponent, FwMenuHeaderComponent, FwMenuItemComponent, FwMenuItemGroupComponent, FwMenuModule, FwMenuSeparatorComponent, FwMenuSubItemComponent, FwMultiSelectMenuComponent, FwNavbarComponent, FwNavbarHeaderComponent, FwNavbarItemComponent, FwNavbarModule, FwNavbarSubItemComponent, FwNoDataRow, FwNumberInputComponent, FwNumberInputModule, FwPaginatorAdvancedComponent, FwPaginatorComponent, FwPaginatorModule, FwPhoneInputComponent, FwPhoneInputModule, FwPopoverComponent, FwPopoverModule, FwPopoverPanelComponent, FwProgressBarComponent, FwProgressModule, FwProgressSpinnerComponent, FwRadioComponent, FwRadioGroupComponent, FwRadioModule, FwRow, FwRowDef, FwSectionHeadingComponent, FwSectionHeadingModule, FwSelectMenuComponent, FwSelectMenuModule, FwSnackbarComponent, FwSnackbarContainerComponent, FwSnackbarModule, FwSnackbarService, FwStepComponent, FwStepDecoratorComponent, FwStepperComponent, FwStepperModule, FwSubsectionHeadingComponent, FwSwitchComponent, FwSwitchModule, FwTabComponent, FwTabPanelComponent, FwTableComponent, FwTableDenseComponent, FwTableModule, FwTabsComponent, FwTabsModule, FwTagComponent, FwTagModule, FwTextAreaInputComponent, FwTextAreaInputModule, FwTextComponent, FwTextInputComponent, FwTextInputModule, FwTimeZoneSelectComponent, FwTooltipComponent, FwTooltipDirective, FwTooltipModule, FwTooltipPanelComponent, FwTypeaheadComponent, FwValidators, FwWrappedInputComponent, FwWrappedInputModule, LayoutWidth, MenuManagerService, MenuRegisterDirective, MinimalTranslationService, NoopValueAccessorDirective, TranslationService, allIcons, genMessageId, notBeforeDate, notFutureDate };
|
|
3111
|
-
export type { CustomField, CustomForm, CustomSection, DelayLength$3 as DelayLength, FwButtonColorOption, FwDialogConfig, FwDialogRef, FwPaginatorEvent, FwSnackbarMessage, IconSize, IconType, LogicRule, MenuFilterFn, PaginationPage, PopoverPosition, SimplePosition };
|
|
3279
|
+
export { DEFAULT_PRESET_COLORS, DEFAULT_RGBA, DialogWidth, FieldType, FwAlertComponent, FwAlertModule, FwAppIconComponent, FwAppIconModule, FwAvatarComponent, FwAvatarListComponent, FwAvatarModule, FwBackButtonComponent, FwBadgeComponent, FwBadgeModule, FwBreadcrumbsComponent, FwBreadcrumbsModule, FwButtonComponent, FwButtonDangerDirective, FwButtonDirective, FwButtonGroupComponent, FwButtonGroupModule, FwButtonModule, FwButtonPrimaryDirective, FwButtonSecondaryDirective, FwButtonSuccessDirective, FwButtonToggleComponent, FwButtonToggleItemComponent, FwButtonToggleModule, FwCardAttributeComponent, FwCardAuthorComponent, FwCardComponent, FwCardContentComponent, FwCardFooterComponent, FwCardHeaderComponent, FwCardModule, FwCell, FwCellDef, FwCheckboxComponent, FwCheckboxGroupComponent, FwCheckboxModule, FwChipComponent, FwChipModule, FwColorPickerComponent, FwColumnDef, FwContainedInputComponent, FwContainedInputModule, FwCrumbComponent, FwDateInputComponent, FwDateInputModule, FwDialogActionsComponent, FwDialogComponent, FwDialogConfirmComponent, FwDialogContentComponent, FwDialogHeaderComponent, FwDialogService, FwDialogSimpleComponent, FwDialogsModule, FwFooterCell, FwFooterCellDef, FwFooterRow, FwFooterRowDef, FwFormHeadingComponent, FwFormHeadingModule, FwFormRendererComponent, FwGridComponent, FwGridItemComponent, FwHeaderCell, FwHeaderCellDef, FwHeaderRow, FwHeaderRowDef, FwIconButtonComponent, FwIconButtonModule, FwIconComponent, FwIconModule, FwLayoutContextComponent, FwLayoutGroupComponent, FwLayoutPanelComponent, FwLayoutSidebarComponent, FwLayoutToolbarComponent, FwLayoutsModule, FwMenuCloseTriggersDirective, FwMenuComponent, FwMenuContainerComponent, FwMenuHeaderComponent, FwMenuItemComponent, FwMenuItemGroupComponent, FwMenuModule, FwMenuSeparatorComponent, FwMenuSubItemComponent, FwMultiSelectMenuComponent, FwNavbarComponent, FwNavbarHeaderComponent, FwNavbarItemComponent, FwNavbarModule, FwNavbarSubItemComponent, FwNoDataRow, FwNumberInputComponent, FwNumberInputModule, FwPaginatorAdvancedComponent, FwPaginatorComponent, FwPaginatorModule, FwPhoneInputComponent, FwPhoneInputModule, FwPopoverComponent, FwPopoverModule, FwPopoverPanelComponent, FwProgressBarComponent, FwProgressModule, FwProgressSpinnerComponent, FwRadioComponent, FwRadioGroupComponent, FwRadioModule, FwRow, FwRowDef, FwSectionHeadingComponent, FwSectionHeadingModule, FwSelectMenuComponent, FwSelectMenuModule, FwSnackbarComponent, FwSnackbarContainerComponent, FwSnackbarModule, FwSnackbarService, FwStepComponent, FwStepDecoratorComponent, FwStepperComponent, FwStepperModule, FwSubsectionHeadingComponent, FwSwitchComponent, FwSwitchModule, FwTabComponent, FwTabPanelComponent, FwTableComponent, FwTableDenseComponent, FwTableModule, FwTabsComponent, FwTabsModule, FwTagComponent, FwTagModule, FwTextAreaInputComponent, FwTextAreaInputModule, FwTextComponent, FwTextInputComponent, FwTextInputModule, FwTimeZoneSelectComponent, FwTooltipComponent, FwTooltipDirective, FwTooltipModule, FwTooltipPanelComponent, FwTypeaheadComponent, FwValidators, FwWrappedInputComponent, FwWrappedInputModule, LayoutWidth, MAX_PRESET_COLORS, MenuManagerService, MenuRegisterDirective, MinimalTranslationService, NoopValueAccessorDirective, TranslationService, allIcons, clamp, genMessageId, hexToRgba, hslaToHsva, hsvaToHsla, hsvaToRgba, notBeforeDate, notFutureDate, rgbaToHex, rgbaToHex8, rgbaToHsva };
|
|
3280
|
+
export type { CustomField, CustomForm, CustomSection, DelayLength$3 as DelayLength, FwButtonColorOption, FwDialogConfig, FwDialogRef, FwPaginatorEvent, FwSnackbarMessage, HslaColor, HsvaColor, IconSize, IconType, LogicRule, MenuFilterFn, PaginationPage, PopoverPosition, RgbaColor, SimplePosition };
|