ng-primitives 0.120.4 → 0.121.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/example-theme/index.css +9 -0
- package/fesm2022/ng-primitives-a11y.mjs +5 -5
- package/fesm2022/ng-primitives-a11y.mjs.map +1 -1
- package/fesm2022/ng-primitives-accordion.mjs +34 -51
- package/fesm2022/ng-primitives-accordion.mjs.map +1 -1
- package/fesm2022/ng-primitives-ai.mjs +39 -52
- package/fesm2022/ng-primitives-ai.mjs.map +1 -1
- package/fesm2022/ng-primitives-autofill.mjs +4 -4
- package/fesm2022/ng-primitives-autofill.mjs.map +1 -1
- package/fesm2022/ng-primitives-avatar.mjs +14 -17
- package/fesm2022/ng-primitives-avatar.mjs.map +1 -1
- package/fesm2022/ng-primitives-breadcrumbs.mjs +21 -21
- package/fesm2022/ng-primitives-breadcrumbs.mjs.map +1 -1
- package/fesm2022/ng-primitives-button.mjs +7 -9
- package/fesm2022/ng-primitives-button.mjs.map +1 -1
- package/fesm2022/ng-primitives-checkbox.mjs +15 -30
- package/fesm2022/ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/ng-primitives-combobox.mjs +60 -92
- package/fesm2022/ng-primitives-combobox.mjs.map +1 -1
- package/fesm2022/ng-primitives-common.mjs +4 -4
- package/fesm2022/ng-primitives-common.mjs.map +1 -1
- package/fesm2022/ng-primitives-context-menu.mjs +68 -121
- package/fesm2022/ng-primitives-context-menu.mjs.map +1 -1
- package/fesm2022/ng-primitives-date-picker.mjs +91 -115
- package/fesm2022/ng-primitives-date-picker.mjs.map +1 -1
- package/fesm2022/ng-primitives-dialog.mjs +35 -51
- package/fesm2022/ng-primitives-dialog.mjs.map +1 -1
- package/fesm2022/ng-primitives-file-upload.mjs +26 -53
- package/fesm2022/ng-primitives-file-upload.mjs.map +1 -1
- package/fesm2022/ng-primitives-focus-trap.mjs +5 -8
- package/fesm2022/ng-primitives-focus-trap.mjs.map +1 -1
- package/fesm2022/ng-primitives-form-field.mjs +39 -44
- package/fesm2022/ng-primitives-form-field.mjs.map +1 -1
- package/fesm2022/ng-primitives-input-otp.mjs +30 -43
- package/fesm2022/ng-primitives-input-otp.mjs.map +1 -1
- package/fesm2022/ng-primitives-input.mjs +6 -8
- package/fesm2022/ng-primitives-input.mjs.map +1 -1
- package/fesm2022/ng-primitives-interactions.mjs +31 -48
- package/fesm2022/ng-primitives-interactions.mjs.map +1 -1
- package/fesm2022/ng-primitives-internal.mjs +39 -35
- package/fesm2022/ng-primitives-internal.mjs.map +1 -1
- package/fesm2022/ng-primitives-listbox.mjs +34 -48
- package/fesm2022/ng-primitives-listbox.mjs.map +1 -1
- package/fesm2022/ng-primitives-menu.mjs +85 -151
- package/fesm2022/ng-primitives-menu.mjs.map +1 -1
- package/fesm2022/ng-primitives-meter.mjs +25 -36
- package/fesm2022/ng-primitives-meter.mjs.map +1 -1
- package/fesm2022/ng-primitives-navigation-menu.mjs +60 -108
- package/fesm2022/ng-primitives-navigation-menu.mjs.map +1 -1
- package/fesm2022/ng-primitives-number-field.mjs +35 -59
- package/fesm2022/ng-primitives-number-field.mjs.map +1 -1
- package/fesm2022/ng-primitives-pagination.mjs +270 -297
- package/fesm2022/ng-primitives-pagination.mjs.map +1 -1
- package/fesm2022/ng-primitives-popover.mjs +209 -223
- package/fesm2022/ng-primitives-popover.mjs.map +1 -1
- package/fesm2022/ng-primitives-portal.mjs +88 -59
- package/fesm2022/ng-primitives-portal.mjs.map +1 -1
- package/fesm2022/ng-primitives-progress.mjs +30 -41
- package/fesm2022/ng-primitives-progress.mjs.map +1 -1
- package/fesm2022/ng-primitives-radio.mjs +20 -30
- package/fesm2022/ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/ng-primitives-resize.mjs +3 -3
- package/fesm2022/ng-primitives-resize.mjs.map +1 -1
- package/fesm2022/ng-primitives-roving-focus.mjs +20 -34
- package/fesm2022/ng-primitives-roving-focus.mjs.map +1 -1
- package/fesm2022/ng-primitives-search.mjs +9 -9
- package/fesm2022/ng-primitives-search.mjs.map +1 -1
- package/fesm2022/ng-primitives-select.mjs +720 -620
- package/fesm2022/ng-primitives-select.mjs.map +1 -1
- package/fesm2022/ng-primitives-separator.mjs +4 -6
- package/fesm2022/ng-primitives-separator.mjs.map +1 -1
- package/fesm2022/ng-primitives-slider.mjs +63 -100
- package/fesm2022/ng-primitives-slider.mjs.map +1 -1
- package/fesm2022/ng-primitives-state.mjs +3 -3
- package/fesm2022/ng-primitives-state.mjs.map +1 -1
- package/fesm2022/ng-primitives-switch.mjs +15 -21
- package/fesm2022/ng-primitives-switch.mjs.map +1 -1
- package/fesm2022/ng-primitives-tabs.mjs +31 -41
- package/fesm2022/ng-primitives-tabs.mjs.map +1 -1
- package/fesm2022/ng-primitives-textarea.mjs +5 -7
- package/fesm2022/ng-primitives-textarea.mjs.map +1 -1
- package/fesm2022/ng-primitives-toast.mjs +30 -23
- package/fesm2022/ng-primitives-toast.mjs.map +1 -1
- package/fesm2022/ng-primitives-toggle-group.mjs +20 -36
- package/fesm2022/ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/ng-primitives-toggle.mjs +10 -19
- package/fesm2022/ng-primitives-toggle.mjs.map +1 -1
- package/fesm2022/ng-primitives-toolbar.mjs +4 -6
- package/fesm2022/ng-primitives-toolbar.mjs.map +1 -1
- package/fesm2022/ng-primitives-tooltip.mjs +401 -402
- package/fesm2022/ng-primitives-tooltip.mjs.map +1 -1
- package/fesm2022/ng-primitives-utils.mjs +5 -4
- package/fesm2022/ng-primitives-utils.mjs.map +1 -1
- package/package.json +56 -55
- package/schematics/ng-generate/templates/select/select.__fileSuffix@dasherize__.ts.template +48 -48
- package/{a11y/index.d.ts → types/ng-primitives-a11y.d.ts} +18 -24
- package/{accordion/index.d.ts → types/ng-primitives-accordion.d.ts} +85 -98
- package/{autofill/index.d.ts → types/ng-primitives-autofill.d.ts} +3 -10
- package/{avatar/index.d.ts → types/ng-primitives-avatar.d.ts} +7 -30
- package/{breadcrumbs/index.d.ts → types/ng-primitives-breadcrumbs.d.ts} +15 -70
- package/{button/index.d.ts → types/ng-primitives-button.d.ts} +23 -29
- package/{checkbox/index.d.ts → types/ng-primitives-checkbox.d.ts} +68 -74
- package/{combobox/index.d.ts → types/ng-primitives-combobox.d.ts} +35 -35
- package/{context-menu/index.d.ts → types/ng-primitives-context-menu.d.ts} +2 -1
- package/{date-picker/index.d.ts → types/ng-primitives-date-picker.d.ts} +2 -2
- package/{dialog/index.d.ts → types/ng-primitives-dialog.d.ts} +7 -2
- package/{file-upload/index.d.ts → types/ng-primitives-file-upload.d.ts} +5 -20
- package/{focus-trap/index.d.ts → types/ng-primitives-focus-trap.d.ts} +3 -10
- package/{form-field/index.d.ts → types/ng-primitives-form-field.d.ts} +9 -40
- package/{input/index.d.ts → types/ng-primitives-input.d.ts} +3 -10
- package/{menu/index.d.ts → types/ng-primitives-menu.d.ts} +17 -63
- package/{navigation-menu/index.d.ts → types/ng-primitives-navigation-menu.d.ts} +15 -70
- package/{number-field/index.d.ts → types/ng-primitives-number-field.d.ts} +80 -110
- package/types/ng-primitives-pagination.d.ts +502 -0
- package/{popover/index.d.ts → types/ng-primitives-popover.d.ts} +244 -57
- package/{portal/index.d.ts → types/ng-primitives-portal.d.ts} +22 -13
- package/{progress/index.d.ts → types/ng-primitives-progress.d.ts} +3 -10
- package/{roving-focus/index.d.ts → types/ng-primitives-roving-focus.d.ts} +65 -79
- package/types/ng-primitives-select.d.ts +687 -0
- package/{separator/index.d.ts → types/ng-primitives-separator.d.ts} +3 -10
- package/{slider/index.d.ts → types/ng-primitives-slider.d.ts} +76 -138
- package/{state/index.d.ts → types/ng-primitives-state.d.ts} +26 -21
- package/{switch/index.d.ts → types/ng-primitives-switch.d.ts} +50 -64
- package/{tabs/index.d.ts → types/ng-primitives-tabs.d.ts} +9 -40
- package/{textarea/index.d.ts → types/ng-primitives-textarea.d.ts} +3 -10
- package/{toast/index.d.ts → types/ng-primitives-toast.d.ts} +13 -1
- package/{toggle-group/index.d.ts → types/ng-primitives-toggle-group.d.ts} +75 -89
- package/{toggle/index.d.ts → types/ng-primitives-toggle.d.ts} +50 -56
- package/{toolbar/index.d.ts → types/ng-primitives-toolbar.d.ts} +3 -10
- package/types/ng-primitives-tooltip.d.ts +691 -0
- package/pagination/index.d.ts +0 -211
- package/select/index.d.ts +0 -396
- package/tooltip/index.d.ts +0 -384
- /package/{ai/index.d.ts → types/ng-primitives-ai.d.ts} +0 -0
- /package/{common/index.d.ts → types/ng-primitives-common.d.ts} +0 -0
- /package/{date-time-luxon/index.d.ts → types/ng-primitives-date-time-luxon.d.ts} +0 -0
- /package/{date-time/index.d.ts → types/ng-primitives-date-time.d.ts} +0 -0
- /package/{input-otp/index.d.ts → types/ng-primitives-input-otp.d.ts} +0 -0
- /package/{interactions/index.d.ts → types/ng-primitives-interactions.d.ts} +0 -0
- /package/{internal/index.d.ts → types/ng-primitives-internal.d.ts} +0 -0
- /package/{listbox/index.d.ts → types/ng-primitives-listbox.d.ts} +0 -0
- /package/{meter/index.d.ts → types/ng-primitives-meter.d.ts} +0 -0
- /package/{radio/index.d.ts → types/ng-primitives-radio.d.ts} +0 -0
- /package/{resize/index.d.ts → types/ng-primitives-resize.d.ts} +0 -0
- /package/{search/index.d.ts → types/ng-primitives-search.d.ts} +0 -0
- /package/{utils/index.d.ts → types/ng-primitives-utils.d.ts} +0 -0
- /package/{index.d.ts → types/ng-primitives.d.ts} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createOverlay, injectOverlay, coerceOffset, coerceFlip, coerceShift } from 'ng-primitives/portal';
|
|
1
|
+
import { createOverlay, injectOverlay, coerceOffset, coerceFlip, coerceShift, provideControlContainerIsolation } from 'ng-primitives/portal';
|
|
2
2
|
export { injectOverlayContext as injectMenuContext } from 'ng-primitives/portal';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
4
|
import { InjectionToken, inject, Injector, ViewContainerRef, signal, computed, effect, input, booleanAttribute, Directive, output, numberAttribute } from '@angular/core';
|
|
@@ -61,14 +61,14 @@ const [NgpMenuTriggerStateToken, ngpMenuTrigger, _injectMenuTriggerState, provid
|
|
|
61
61
|
const offset = controlled(_offset);
|
|
62
62
|
const context = controlled(_context);
|
|
63
63
|
// Internal state
|
|
64
|
-
const overlay = signal(null, ...(ngDevMode ? [{ debugName: "overlay" }] : []));
|
|
65
|
-
const open = computed(() => overlay()?.isOpen() ?? false, ...(ngDevMode ? [{ debugName: "open" }] : []));
|
|
66
|
-
const openOrigin = signal('program', ...(ngDevMode ? [{ debugName: "openOrigin" }] : []));
|
|
67
|
-
const closeOrigin = signal('program', ...(ngDevMode ? [{ debugName: "closeOrigin" }] : []));
|
|
64
|
+
const overlay = signal(null, ...(ngDevMode ? [{ debugName: "overlay" }] : /* istanbul ignore next */ []));
|
|
65
|
+
const open = computed(() => overlay()?.isOpen() ?? false, ...(ngDevMode ? [{ debugName: "open" }] : /* istanbul ignore next */ []));
|
|
66
|
+
const openOrigin = signal('program', ...(ngDevMode ? [{ debugName: "openOrigin" }] : /* istanbul ignore next */ []));
|
|
67
|
+
const closeOrigin = signal('program', ...(ngDevMode ? [{ debugName: "closeOrigin" }] : /* istanbul ignore next */ []));
|
|
68
68
|
// Track whether pointer is over trigger or content (for hover triggers)
|
|
69
|
-
const pointerOverTrigger = signal(false, ...(ngDevMode ? [{ debugName: "pointerOverTrigger" }] : []));
|
|
70
|
-
const pointerOverContent = signal(false, ...(ngDevMode ? [{ debugName: "pointerOverContent" }] : []));
|
|
71
|
-
const isPointerOverMenuArea = computed(() => pointerOverTrigger() || pointerOverContent(), ...(ngDevMode ? [{ debugName: "isPointerOverMenuArea" }] : []));
|
|
69
|
+
const pointerOverTrigger = signal(false, ...(ngDevMode ? [{ debugName: "pointerOverTrigger" }] : /* istanbul ignore next */ []));
|
|
70
|
+
const pointerOverContent = signal(false, ...(ngDevMode ? [{ debugName: "pointerOverContent" }] : /* istanbul ignore next */ []));
|
|
71
|
+
const isPointerOverMenuArea = computed(() => pointerOverTrigger() || pointerOverContent(), ...(ngDevMode ? [{ debugName: "isPointerOverMenuArea" }] : /* istanbul ignore next */ []));
|
|
72
72
|
// Reset pointer tracking when menu closes
|
|
73
73
|
effect(() => {
|
|
74
74
|
const isOpen = open();
|
|
@@ -80,7 +80,7 @@ const [NgpMenuTriggerStateToken, ngpMenuTrigger, _injectMenuTriggerState, provid
|
|
|
80
80
|
});
|
|
81
81
|
// Computed signal to determine if focus should be restored
|
|
82
82
|
// Only restore if opened via keyboard OR closed via keyboard
|
|
83
|
-
const shouldRestoreFocus = computed(() => openOrigin() === 'keyboard' || closeOrigin() === 'keyboard', ...(ngDevMode ? [{ debugName: "shouldRestoreFocus" }] : []));
|
|
83
|
+
const shouldRestoreFocus = computed(() => openOrigin() === 'keyboard' || closeOrigin() === 'keyboard', ...(ngDevMode ? [{ debugName: "shouldRestoreFocus" }] : /* istanbul ignore next */ []));
|
|
84
84
|
// Host bindings
|
|
85
85
|
attrBinding(element, 'aria-haspopup', 'true');
|
|
86
86
|
attrBinding(element, 'aria-expanded', open);
|
|
@@ -336,8 +336,8 @@ const [NgpMenuTriggerStateToken, ngpMenuTrigger, _injectMenuTriggerState, provid
|
|
|
336
336
|
flip,
|
|
337
337
|
};
|
|
338
338
|
});
|
|
339
|
-
function injectMenuTriggerState() {
|
|
340
|
-
return _injectMenuTriggerState();
|
|
339
|
+
function injectMenuTriggerState(options) {
|
|
340
|
+
return _injectMenuTriggerState(options);
|
|
341
341
|
}
|
|
342
342
|
|
|
343
343
|
const [NgpMenuStateToken, ngpMenu, injectMenuState, provideMenuState] = createPrimitive('NgpMenu', ({}) => {
|
|
@@ -348,7 +348,7 @@ const [NgpMenuStateToken, ngpMenu, injectMenuState, provideMenuState] = createPr
|
|
|
348
348
|
const parentMenu = injectMenuState({ optional: true, skipSelf: true });
|
|
349
349
|
// Always trap focus in menus per WAI-ARIA guidelines (Tab should not navigate within menus)
|
|
350
350
|
// Pass the open origin so focus trap uses the correct origin for :focus-visible styling
|
|
351
|
-
const openOrigin = computed(() => menuTrigger()?.openOrigin() ?? 'program', ...(ngDevMode ? [{ debugName: "openOrigin" }] : []));
|
|
351
|
+
const openOrigin = computed(() => menuTrigger()?.openOrigin() ?? 'program', ...(ngDevMode ? [{ debugName: "openOrigin" }] : /* istanbul ignore next */ []));
|
|
352
352
|
ngpFocusTrap({
|
|
353
353
|
focusOrigin: openOrigin,
|
|
354
354
|
});
|
|
@@ -438,9 +438,9 @@ const [NgpSubmenuTriggerStateToken, ngpSubmenuTrigger, injectSubmenuTriggerState
|
|
|
438
438
|
const placement = controlled(_placement);
|
|
439
439
|
const flip = controlled(_flip);
|
|
440
440
|
const offset = controlled(_offset);
|
|
441
|
-
const overlay = signal(null, ...(ngDevMode ? [{ debugName: "overlay" }] : []));
|
|
442
|
-
const open = computed(() => overlay()?.isOpen() ?? false, ...(ngDevMode ? [{ debugName: "open" }] : []));
|
|
443
|
-
const openOrigin = signal('program', ...(ngDevMode ? [{ debugName: "openOrigin" }] : []));
|
|
441
|
+
const overlay = signal(null, ...(ngDevMode ? [{ debugName: "overlay" }] : /* istanbul ignore next */ []));
|
|
442
|
+
const open = computed(() => overlay()?.isOpen() ?? false, ...(ngDevMode ? [{ debugName: "open" }] : /* istanbul ignore next */ []));
|
|
443
|
+
const openOrigin = signal('program', ...(ngDevMode ? [{ debugName: "openOrigin" }] : /* istanbul ignore next */ []));
|
|
444
444
|
// Subscribe to parent menu's closeSubmenus
|
|
445
445
|
parentMenu()
|
|
446
446
|
?.closeSubmenus.pipe(safeTakeUntilDestroyed())
|
|
@@ -601,45 +601,32 @@ class NgpSubmenuTrigger {
|
|
|
601
601
|
/**
|
|
602
602
|
* Access the submenu template ref.
|
|
603
603
|
*/
|
|
604
|
-
this.menu = input(undefined, ...(ngDevMode ?
|
|
605
|
-
alias: 'ngpSubmenuTrigger',
|
|
606
|
-
}]));
|
|
604
|
+
this.menu = input(undefined, { ...(ngDevMode ? { debugName: "menu" } : /* istanbul ignore next */ {}), alias: 'ngpSubmenuTrigger' });
|
|
607
605
|
/**
|
|
608
606
|
* Define if the trigger should be disabled.
|
|
609
607
|
* @default false
|
|
610
608
|
*/
|
|
611
|
-
this.disabled = input(false, ...(ngDevMode ?
|
|
612
|
-
|
|
613
|
-
alias: 'ngpSubmenuTriggerDisabled',
|
|
614
|
-
transform: booleanAttribute,
|
|
615
|
-
}]));
|
|
609
|
+
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), alias: 'ngpSubmenuTriggerDisabled',
|
|
610
|
+
transform: booleanAttribute });
|
|
616
611
|
/**
|
|
617
612
|
* Define the placement of the menu relative to the trigger.
|
|
618
613
|
* @default 'right-start'
|
|
619
614
|
*/
|
|
620
|
-
this.placement = input('right-start', ...(ngDevMode ?
|
|
621
|
-
alias: 'ngpSubmenuTriggerPlacement',
|
|
622
|
-
}]));
|
|
615
|
+
this.placement = input('right-start', { ...(ngDevMode ? { debugName: "placement" } : /* istanbul ignore next */ {}), alias: 'ngpSubmenuTriggerPlacement' });
|
|
623
616
|
/**
|
|
624
617
|
* Define the offset of the menu relative to the trigger.
|
|
625
618
|
* Can be a number (applies to mainAxis) or an object with mainAxis, crossAxis, and alignmentAxis.
|
|
626
619
|
* @default 0
|
|
627
620
|
*/
|
|
628
|
-
this.offset = input(0, ...(ngDevMode ?
|
|
629
|
-
|
|
630
|
-
alias: 'ngpSubmenuTriggerOffset',
|
|
631
|
-
transform: coerceOffset,
|
|
632
|
-
}]));
|
|
621
|
+
this.offset = input(0, { ...(ngDevMode ? { debugName: "offset" } : /* istanbul ignore next */ {}), alias: 'ngpSubmenuTriggerOffset',
|
|
622
|
+
transform: coerceOffset });
|
|
633
623
|
/**
|
|
634
624
|
* Define whether the menu should flip when there is not enough space for the menu.
|
|
635
625
|
* Can be a boolean to enable/disable, or an object with padding and fallbackPlacements options.
|
|
636
626
|
* @default true
|
|
637
627
|
*/
|
|
638
|
-
this.flip = input(true, ...(ngDevMode ?
|
|
639
|
-
|
|
640
|
-
alias: 'ngpSubmenuTriggerFlip',
|
|
641
|
-
transform: coerceFlip,
|
|
642
|
-
}]));
|
|
628
|
+
this.flip = input(true, { ...(ngDevMode ? { debugName: "flip" } : /* istanbul ignore next */ {}), alias: 'ngpSubmenuTriggerFlip',
|
|
629
|
+
transform: coerceFlip });
|
|
643
630
|
/**
|
|
644
631
|
* Access the menu trigger state.
|
|
645
632
|
*/
|
|
@@ -677,15 +664,15 @@ class NgpSubmenuTrigger {
|
|
|
677
664
|
focus(origin = 'program') {
|
|
678
665
|
this.state.focus(origin);
|
|
679
666
|
}
|
|
680
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
681
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
667
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpSubmenuTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
668
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: NgpSubmenuTrigger, isStandalone: true, selector: "[ngpSubmenuTrigger]", inputs: { menu: { classPropertyName: "menu", publicName: "ngpSubmenuTrigger", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "ngpSubmenuTriggerDisabled", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "ngpSubmenuTriggerPlacement", isSignal: true, isRequired: false, transformFunction: null }, offset: { classPropertyName: "offset", publicName: "ngpSubmenuTriggerOffset", isSignal: true, isRequired: false, transformFunction: null }, flip: { classPropertyName: "flip", publicName: "ngpSubmenuTriggerFlip", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
682
669
|
provideSubmenuTriggerState(),
|
|
683
670
|
// Also provide as NgpMenuTriggerStateToken so the submenu's menu-state
|
|
684
671
|
// can find this trigger's openOrigin for :focus-visible styling
|
|
685
672
|
{ provide: NgpMenuTriggerStateToken, useExisting: NgpSubmenuTriggerStateToken },
|
|
686
673
|
], exportAs: ["ngpSubmenuTrigger"], ngImport: i0 }); }
|
|
687
674
|
}
|
|
688
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
675
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpSubmenuTrigger, decorators: [{
|
|
689
676
|
type: Directive,
|
|
690
677
|
args: [{
|
|
691
678
|
selector: '[ngpSubmenuTrigger]',
|
|
@@ -755,24 +742,18 @@ const [NgpMenuItemStateToken, ngpMenuItem, injectMenuItemState, provideMenuItemS
|
|
|
755
742
|
class NgpMenuItem {
|
|
756
743
|
constructor() {
|
|
757
744
|
/** Whether the menu item is disabled */
|
|
758
|
-
this.disabled = input(false, ...(ngDevMode ?
|
|
759
|
-
|
|
760
|
-
alias: 'ngpMenuItemDisabled',
|
|
761
|
-
transform: booleanAttribute,
|
|
762
|
-
}]));
|
|
745
|
+
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), alias: 'ngpMenuItemDisabled',
|
|
746
|
+
transform: booleanAttribute });
|
|
763
747
|
/** Whether the menu should close when this item is selected */
|
|
764
|
-
this.closeOnSelect = input(true, ...(ngDevMode ?
|
|
765
|
-
|
|
766
|
-
alias: 'ngpMenuItemCloseOnSelect',
|
|
767
|
-
transform: booleanAttribute,
|
|
768
|
-
}]));
|
|
748
|
+
this.closeOnSelect = input(true, { ...(ngDevMode ? { debugName: "closeOnSelect" } : /* istanbul ignore next */ {}), alias: 'ngpMenuItemCloseOnSelect',
|
|
749
|
+
transform: booleanAttribute });
|
|
769
750
|
ngpMenuItem({ disabled: this.disabled, closeOnSelect: this.closeOnSelect });
|
|
770
751
|
ngpRovingFocusItem({ disabled: this.disabled });
|
|
771
752
|
}
|
|
772
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
773
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
753
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
754
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: NgpMenuItem, isStandalone: true, selector: "[ngpMenuItem]", inputs: { disabled: { classPropertyName: "disabled", publicName: "ngpMenuItemDisabled", isSignal: true, isRequired: false, transformFunction: null }, closeOnSelect: { classPropertyName: "closeOnSelect", publicName: "ngpMenuItemCloseOnSelect", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideMenuItemState(), provideRovingFocusItemState()], exportAs: ["ngpMenuItem"], ngImport: i0 }); }
|
|
774
755
|
}
|
|
775
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
756
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuItem, decorators: [{
|
|
776
757
|
type: Directive,
|
|
777
758
|
args: [{
|
|
778
759
|
selector: '[ngpMenuItem]',
|
|
@@ -814,21 +795,15 @@ const [NgpMenuItemCheckboxStateToken, ngpMenuItemCheckbox, injectMenuItemCheckbo
|
|
|
814
795
|
class NgpMenuItemCheckbox {
|
|
815
796
|
constructor() {
|
|
816
797
|
/** Whether the checkbox is checked */
|
|
817
|
-
this.checked = input(false, ...(ngDevMode ?
|
|
818
|
-
|
|
819
|
-
alias: 'ngpMenuItemCheckboxChecked',
|
|
820
|
-
transform: booleanAttribute,
|
|
821
|
-
}]));
|
|
798
|
+
this.checked = input(false, { ...(ngDevMode ? { debugName: "checked" } : /* istanbul ignore next */ {}), alias: 'ngpMenuItemCheckboxChecked',
|
|
799
|
+
transform: booleanAttribute });
|
|
822
800
|
/** Event emitted when the checked state changes */
|
|
823
801
|
this.checkedChange = output({
|
|
824
802
|
alias: 'ngpMenuItemCheckboxCheckedChange',
|
|
825
803
|
});
|
|
826
804
|
/** Whether the menu item checkbox is disabled */
|
|
827
|
-
this.disabled = input(false, ...(ngDevMode ?
|
|
828
|
-
|
|
829
|
-
alias: 'ngpMenuItemCheckboxDisabled',
|
|
830
|
-
transform: booleanAttribute,
|
|
831
|
-
}]));
|
|
805
|
+
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), alias: 'ngpMenuItemCheckboxDisabled',
|
|
806
|
+
transform: booleanAttribute });
|
|
832
807
|
ngpMenuItemCheckbox({
|
|
833
808
|
checked: this.checked,
|
|
834
809
|
disabled: this.disabled,
|
|
@@ -836,10 +811,10 @@ class NgpMenuItemCheckbox {
|
|
|
836
811
|
});
|
|
837
812
|
ngpRovingFocusItem({ disabled: this.disabled });
|
|
838
813
|
}
|
|
839
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
840
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
814
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuItemCheckbox, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
815
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: NgpMenuItemCheckbox, isStandalone: true, selector: "[ngpMenuItemCheckbox]", inputs: { checked: { classPropertyName: "checked", publicName: "ngpMenuItemCheckboxChecked", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "ngpMenuItemCheckboxDisabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checkedChange: "ngpMenuItemCheckboxCheckedChange" }, providers: [provideMenuItemCheckboxState(), provideRovingFocusItemState()], exportAs: ["ngpMenuItemCheckbox"], ngImport: i0 }); }
|
|
841
816
|
}
|
|
842
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
817
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuItemCheckbox, decorators: [{
|
|
843
818
|
type: Directive,
|
|
844
819
|
args: [{
|
|
845
820
|
selector: '[ngpMenuItemCheckbox]',
|
|
@@ -875,7 +850,7 @@ const [NgpMenuItemRadioStateToken, ngpMenuItemRadio, injectMenuItemRadioState, p
|
|
|
875
850
|
// Use base menu item behavior but don't close on select
|
|
876
851
|
ngpMenuItem({ disabled, closeOnSelect: signal(false), role: 'menuitemradio' });
|
|
877
852
|
// Computed checked state
|
|
878
|
-
const checked = computed(() => radioGroup()?.value() === value(), ...(ngDevMode ? [{ debugName: "checked" }] : []));
|
|
853
|
+
const checked = computed(() => radioGroup()?.value() === value(), ...(ngDevMode ? [{ debugName: "checked" }] : /* istanbul ignore next */ []));
|
|
879
854
|
// Host bindings
|
|
880
855
|
attrBinding(element, 'aria-checked', checked);
|
|
881
856
|
dataBinding(element, 'data-checked', checked);
|
|
@@ -900,13 +875,13 @@ class NgpMenuItemIndicator {
|
|
|
900
875
|
const element = injectElementRef();
|
|
901
876
|
const checkboxState = injectMenuItemCheckboxState({ optional: true });
|
|
902
877
|
const radioState = injectMenuItemRadioState({ optional: true });
|
|
903
|
-
const checked = computed(() => checkboxState()?.checked() ?? radioState()?.checked() ?? false, ...(ngDevMode ? [{ debugName: "checked" }] : []));
|
|
878
|
+
const checked = computed(() => checkboxState()?.checked() ?? radioState()?.checked() ?? false, ...(ngDevMode ? [{ debugName: "checked" }] : /* istanbul ignore next */ []));
|
|
904
879
|
dataBinding(element, 'data-checked', checked);
|
|
905
880
|
}
|
|
906
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
907
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
881
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuItemIndicator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
882
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: NgpMenuItemIndicator, isStandalone: true, selector: "[ngpMenuItemIndicator]", exportAs: ["ngpMenuItemIndicator"], ngImport: i0 }); }
|
|
908
883
|
}
|
|
909
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
884
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuItemIndicator, decorators: [{
|
|
910
885
|
type: Directive,
|
|
911
886
|
args: [{
|
|
912
887
|
selector: '[ngpMenuItemIndicator]',
|
|
@@ -920,9 +895,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
|
|
|
920
895
|
class NgpMenuItemRadioGroup {
|
|
921
896
|
constructor() {
|
|
922
897
|
/** The current value of the radio group */
|
|
923
|
-
this.value = input(null, ...(ngDevMode ?
|
|
924
|
-
alias: 'ngpMenuItemRadioGroupValue',
|
|
925
|
-
}]));
|
|
898
|
+
this.value = input(null, { ...(ngDevMode ? { debugName: "value" } : /* istanbul ignore next */ {}), alias: 'ngpMenuItemRadioGroupValue' });
|
|
926
899
|
/** Event emitted when the value changes */
|
|
927
900
|
this.valueChange = output({
|
|
928
901
|
alias: 'ngpMenuItemRadioGroupValueChange',
|
|
@@ -932,10 +905,10 @@ class NgpMenuItemRadioGroup {
|
|
|
932
905
|
onValueChange: value => this.valueChange.emit(value),
|
|
933
906
|
});
|
|
934
907
|
}
|
|
935
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
936
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
908
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuItemRadioGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
909
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: NgpMenuItemRadioGroup, isStandalone: true, selector: "[ngpMenuItemRadioGroup]", inputs: { value: { classPropertyName: "value", publicName: "ngpMenuItemRadioGroupValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "ngpMenuItemRadioGroupValueChange" }, providers: [provideMenuItemRadioGroupState()], exportAs: ["ngpMenuItemRadioGroup"], ngImport: i0 }); }
|
|
937
910
|
}
|
|
938
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
911
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuItemRadioGroup, decorators: [{
|
|
939
912
|
type: Directive,
|
|
940
913
|
args: [{
|
|
941
914
|
selector: '[ngpMenuItemRadioGroup]',
|
|
@@ -950,22 +923,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
|
|
|
950
923
|
class NgpMenuItemRadio {
|
|
951
924
|
constructor() {
|
|
952
925
|
/** The value this radio item represents */
|
|
953
|
-
this.value = input.required(...(ngDevMode ?
|
|
954
|
-
alias: 'ngpMenuItemRadioValue',
|
|
955
|
-
}]));
|
|
926
|
+
this.value = input.required({ ...(ngDevMode ? { debugName: "value" } : /* istanbul ignore next */ {}), alias: 'ngpMenuItemRadioValue' });
|
|
956
927
|
/** Whether the radio item is disabled */
|
|
957
|
-
this.disabled = input(false, ...(ngDevMode ?
|
|
958
|
-
|
|
959
|
-
alias: 'ngpMenuItemRadioDisabled',
|
|
960
|
-
transform: booleanAttribute,
|
|
961
|
-
}]));
|
|
928
|
+
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), alias: 'ngpMenuItemRadioDisabled',
|
|
929
|
+
transform: booleanAttribute });
|
|
962
930
|
ngpMenuItemRadio({ value: this.value, disabled: this.disabled });
|
|
963
931
|
ngpRovingFocusItem({ disabled: this.disabled });
|
|
964
932
|
}
|
|
965
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
966
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
933
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuItemRadio, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
934
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: NgpMenuItemRadio, isStandalone: true, selector: "[ngpMenuItemRadio]", inputs: { value: { classPropertyName: "value", publicName: "ngpMenuItemRadioValue", isSignal: true, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "ngpMenuItemRadioDisabled", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideMenuItemRadioState(), provideRovingFocusItemState()], exportAs: ["ngpMenuItemRadio"], ngImport: i0 }); }
|
|
967
935
|
}
|
|
968
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
936
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuItemRadio, decorators: [{
|
|
969
937
|
type: Directive,
|
|
970
938
|
args: [{
|
|
971
939
|
selector: '[ngpMenuItemRadio]',
|
|
@@ -986,111 +954,78 @@ class NgpMenuTrigger {
|
|
|
986
954
|
/**
|
|
987
955
|
* Access the menu template ref or ComponentType.
|
|
988
956
|
*/
|
|
989
|
-
this.menu = input(undefined, ...(ngDevMode ?
|
|
990
|
-
alias: 'ngpMenuTrigger',
|
|
991
|
-
}]));
|
|
957
|
+
this.menu = input(undefined, { ...(ngDevMode ? { debugName: "menu" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTrigger' });
|
|
992
958
|
/**
|
|
993
959
|
* Define if the trigger should be disabled.
|
|
994
960
|
* @default false
|
|
995
961
|
*/
|
|
996
|
-
this.disabled = input(false, ...(ngDevMode ?
|
|
997
|
-
|
|
998
|
-
alias: 'ngpMenuTriggerDisabled',
|
|
999
|
-
transform: booleanAttribute,
|
|
1000
|
-
}]));
|
|
962
|
+
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerDisabled',
|
|
963
|
+
transform: booleanAttribute });
|
|
1001
964
|
/**
|
|
1002
965
|
* Define the placement of the menu relative to the trigger.
|
|
1003
966
|
* @default 'bottom-start'
|
|
1004
967
|
*/
|
|
1005
|
-
this.placement = input(this.config.placement, ...(ngDevMode ?
|
|
1006
|
-
alias: 'ngpMenuTriggerPlacement',
|
|
1007
|
-
}]));
|
|
968
|
+
this.placement = input(this.config.placement, { ...(ngDevMode ? { debugName: "placement" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerPlacement' });
|
|
1008
969
|
/**
|
|
1009
970
|
* Define the offset of the menu relative to the trigger.
|
|
1010
971
|
* Can be a number (applies to mainAxis) or an object with mainAxis, crossAxis, and alignmentAxis.
|
|
1011
972
|
* @default 4
|
|
1012
973
|
*/
|
|
1013
|
-
this.offset = input(this.config.offset, ...(ngDevMode ?
|
|
1014
|
-
|
|
1015
|
-
alias: 'ngpMenuTriggerOffset',
|
|
1016
|
-
transform: coerceOffset,
|
|
1017
|
-
}]));
|
|
974
|
+
this.offset = input(this.config.offset, { ...(ngDevMode ? { debugName: "offset" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerOffset',
|
|
975
|
+
transform: coerceOffset });
|
|
1018
976
|
/**
|
|
1019
977
|
* Define whether the menu should flip when there is not enough space for the menu.
|
|
1020
978
|
* Can be a boolean to enable/disable, or an object with padding and fallbackPlacements options.
|
|
1021
979
|
* @default true
|
|
1022
980
|
*/
|
|
1023
|
-
this.flip = input(this.config.flip, ...(ngDevMode ?
|
|
1024
|
-
|
|
1025
|
-
alias: 'ngpMenuTriggerFlip',
|
|
1026
|
-
transform: coerceFlip,
|
|
1027
|
-
}]));
|
|
981
|
+
this.flip = input(this.config.flip, { ...(ngDevMode ? { debugName: "flip" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerFlip',
|
|
982
|
+
transform: coerceFlip });
|
|
1028
983
|
/**
|
|
1029
984
|
* Configure shift behavior to keep the menu in view.
|
|
1030
985
|
* Can be a boolean to enable/disable, or an object with padding and limiter options.
|
|
1031
986
|
* @default undefined (enabled by default in overlay)
|
|
1032
987
|
*/
|
|
1033
|
-
this.shift = input(this.config.shift, ...(ngDevMode ?
|
|
1034
|
-
|
|
1035
|
-
alias: 'ngpMenuTriggerShift',
|
|
1036
|
-
transform: coerceShift,
|
|
1037
|
-
}]));
|
|
988
|
+
this.shift = input(this.config.shift, { ...(ngDevMode ? { debugName: "shift" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerShift',
|
|
989
|
+
transform: coerceShift });
|
|
1038
990
|
/**
|
|
1039
991
|
* Define the container in which the menu should be attached.
|
|
1040
992
|
* @default document.body
|
|
1041
993
|
*/
|
|
1042
|
-
this.container = input(this.config.container, ...(ngDevMode ?
|
|
1043
|
-
alias: 'ngpMenuTriggerContainer',
|
|
1044
|
-
}]));
|
|
994
|
+
this.container = input(this.config.container, { ...(ngDevMode ? { debugName: "container" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerContainer' });
|
|
1045
995
|
/**
|
|
1046
996
|
* Defines how the menu behaves when the window is scrolled.
|
|
1047
997
|
* @default 'block'
|
|
1048
998
|
*/
|
|
1049
|
-
this.scrollBehavior = input(this.config.scrollBehavior, ...(ngDevMode ?
|
|
1050
|
-
alias: 'ngpMenuTriggerScrollBehavior',
|
|
1051
|
-
}]));
|
|
999
|
+
this.scrollBehavior = input(this.config.scrollBehavior, { ...(ngDevMode ? { debugName: "scrollBehavior" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerScrollBehavior' });
|
|
1052
1000
|
/**
|
|
1053
1001
|
* Define the cooldown duration in milliseconds.
|
|
1054
1002
|
* When moving from one menu to another within this duration,
|
|
1055
1003
|
* the showDelay is skipped for the new menu.
|
|
1056
1004
|
* @default 0
|
|
1057
1005
|
*/
|
|
1058
|
-
this.cooldown = input(this.config.cooldown, ...(ngDevMode ?
|
|
1059
|
-
|
|
1060
|
-
alias: 'ngpMenuTriggerCooldown',
|
|
1061
|
-
transform: numberAttribute,
|
|
1062
|
-
}]));
|
|
1006
|
+
this.cooldown = input(this.config.cooldown, { ...(ngDevMode ? { debugName: "cooldown" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerCooldown',
|
|
1007
|
+
transform: numberAttribute });
|
|
1063
1008
|
/**
|
|
1064
1009
|
* Provide context to the menu. This can be used to pass data to the menu content.
|
|
1065
1010
|
*/
|
|
1066
|
-
this.context = input(undefined, ...(ngDevMode ?
|
|
1067
|
-
alias: 'ngpMenuTriggerContext',
|
|
1068
|
-
}]));
|
|
1011
|
+
this.context = input(undefined, { ...(ngDevMode ? { debugName: "context" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerContext' });
|
|
1069
1012
|
/**
|
|
1070
1013
|
* Define which trigger types are enabled for the menu.
|
|
1071
1014
|
* @default ['click']
|
|
1072
1015
|
*/
|
|
1073
|
-
this.triggers = input(this.config.triggers, ...(ngDevMode ?
|
|
1074
|
-
alias: 'ngpMenuTriggerOpenTriggers',
|
|
1075
|
-
}]));
|
|
1016
|
+
this.triggers = input(this.config.triggers, { ...(ngDevMode ? { debugName: "triggers" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerOpenTriggers' });
|
|
1076
1017
|
/**
|
|
1077
1018
|
* Define the delay before the menu is displayed (hover/focus triggers).
|
|
1078
1019
|
* @default 0
|
|
1079
1020
|
*/
|
|
1080
|
-
this.showDelay = input(this.config.showDelay, ...(ngDevMode ?
|
|
1081
|
-
|
|
1082
|
-
alias: 'ngpMenuTriggerShowDelay',
|
|
1083
|
-
transform: numberAttribute,
|
|
1084
|
-
}]));
|
|
1021
|
+
this.showDelay = input(this.config.showDelay, { ...(ngDevMode ? { debugName: "showDelay" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerShowDelay',
|
|
1022
|
+
transform: numberAttribute });
|
|
1085
1023
|
/**
|
|
1086
1024
|
* Define the delay before the menu is hidden (hover/focus triggers).
|
|
1087
1025
|
* @default 0
|
|
1088
1026
|
*/
|
|
1089
|
-
this.hideDelay = input(this.config.hideDelay, ...(ngDevMode ?
|
|
1090
|
-
|
|
1091
|
-
alias: 'ngpMenuTriggerHideDelay',
|
|
1092
|
-
transform: numberAttribute,
|
|
1093
|
-
}]));
|
|
1027
|
+
this.hideDelay = input(this.config.hideDelay, { ...(ngDevMode ? { debugName: "hideDelay" } : /* istanbul ignore next */ {}), alias: 'ngpMenuTriggerHideDelay',
|
|
1028
|
+
transform: numberAttribute });
|
|
1094
1029
|
/**
|
|
1095
1030
|
* The menu trigger state.
|
|
1096
1031
|
*/
|
|
@@ -1131,10 +1066,10 @@ class NgpMenuTrigger {
|
|
|
1131
1066
|
toggle(event) {
|
|
1132
1067
|
this.state.toggle(event);
|
|
1133
1068
|
}
|
|
1134
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1135
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
1069
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1070
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: NgpMenuTrigger, isStandalone: true, selector: "[ngpMenuTrigger]", inputs: { menu: { classPropertyName: "menu", publicName: "ngpMenuTrigger", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "ngpMenuTriggerDisabled", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "ngpMenuTriggerPlacement", isSignal: true, isRequired: false, transformFunction: null }, offset: { classPropertyName: "offset", publicName: "ngpMenuTriggerOffset", isSignal: true, isRequired: false, transformFunction: null }, flip: { classPropertyName: "flip", publicName: "ngpMenuTriggerFlip", isSignal: true, isRequired: false, transformFunction: null }, shift: { classPropertyName: "shift", publicName: "ngpMenuTriggerShift", isSignal: true, isRequired: false, transformFunction: null }, container: { classPropertyName: "container", publicName: "ngpMenuTriggerContainer", isSignal: true, isRequired: false, transformFunction: null }, scrollBehavior: { classPropertyName: "scrollBehavior", publicName: "ngpMenuTriggerScrollBehavior", isSignal: true, isRequired: false, transformFunction: null }, cooldown: { classPropertyName: "cooldown", publicName: "ngpMenuTriggerCooldown", isSignal: true, isRequired: false, transformFunction: null }, context: { classPropertyName: "context", publicName: "ngpMenuTriggerContext", isSignal: true, isRequired: false, transformFunction: null }, triggers: { classPropertyName: "triggers", publicName: "ngpMenuTriggerOpenTriggers", isSignal: true, isRequired: false, transformFunction: null }, showDelay: { classPropertyName: "showDelay", publicName: "ngpMenuTriggerShowDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "ngpMenuTriggerHideDelay", isSignal: true, isRequired: false, transformFunction: null } }, providers: [provideMenuTriggerState()], exportAs: ["ngpMenuTrigger"], ngImport: i0 }); }
|
|
1136
1071
|
}
|
|
1137
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1072
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenuTrigger, decorators: [{
|
|
1138
1073
|
type: Directive,
|
|
1139
1074
|
args: [{
|
|
1140
1075
|
selector: '[ngpMenuTrigger]',
|
|
@@ -1153,11 +1088,8 @@ class NgpMenu {
|
|
|
1153
1088
|
* Whether focus should wrap around when reaching the end of the menu.
|
|
1154
1089
|
* @default true
|
|
1155
1090
|
*/
|
|
1156
|
-
this.wrap = input(this.config.wrap, ...(ngDevMode ?
|
|
1157
|
-
|
|
1158
|
-
alias: 'ngpMenuWrap',
|
|
1159
|
-
transform: booleanAttribute,
|
|
1160
|
-
}]));
|
|
1091
|
+
this.wrap = input(this.config.wrap, { ...(ngDevMode ? { debugName: "wrap" } : /* istanbul ignore next */ {}), alias: 'ngpMenuWrap',
|
|
1092
|
+
transform: booleanAttribute });
|
|
1161
1093
|
this.state = ngpMenu({ wrap: this.wrap });
|
|
1162
1094
|
ngpRovingFocusGroup({ inherit: false, wrap: this.wrap });
|
|
1163
1095
|
}
|
|
@@ -1165,15 +1097,16 @@ class NgpMenu {
|
|
|
1165
1097
|
closeAllMenus(origin) {
|
|
1166
1098
|
this.state.closeAllMenus(origin);
|
|
1167
1099
|
}
|
|
1168
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1169
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
1100
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenu, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1101
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: NgpMenu, isStandalone: true, selector: "[ngpMenu]", inputs: { wrap: { classPropertyName: "wrap", publicName: "ngpMenuWrap", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
1170
1102
|
// ensure we don't inherit the focus group from the parent menu if there is one
|
|
1171
1103
|
provideRovingFocusGroupState({ inherit: false }),
|
|
1172
1104
|
provideMenuState({ inherit: false }),
|
|
1173
1105
|
provideFocusTrapState(),
|
|
1106
|
+
provideControlContainerIsolation(),
|
|
1174
1107
|
], exportAs: ["ngpMenu"], ngImport: i0 }); }
|
|
1175
1108
|
}
|
|
1176
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1109
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: NgpMenu, decorators: [{
|
|
1177
1110
|
type: Directive,
|
|
1178
1111
|
args: [{
|
|
1179
1112
|
selector: '[ngpMenu]',
|
|
@@ -1183,6 +1116,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
|
|
|
1183
1116
|
provideRovingFocusGroupState({ inherit: false }),
|
|
1184
1117
|
provideMenuState({ inherit: false }),
|
|
1185
1118
|
provideFocusTrapState(),
|
|
1119
|
+
provideControlContainerIsolation(),
|
|
1186
1120
|
],
|
|
1187
1121
|
}]
|
|
1188
1122
|
}], ctorParameters: () => [], propDecorators: { wrap: [{ type: i0.Input, args: [{ isSignal: true, alias: "ngpMenuWrap", required: false }] }] } });
|