@filip.mazev/blocks 1.4.17 → 1.4.18
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/filip.mazev-blocks-core.mjs +56 -9
- package/fesm2022/filip.mazev-blocks-core.mjs.map +1 -1
- package/fesm2022/filip.mazev-blocks-forms.mjs +2 -0
- package/fesm2022/filip.mazev-blocks-forms.mjs.map +1 -1
- package/fesm2022/filip.mazev-blocks-navigation.mjs +1176 -11
- package/fesm2022/filip.mazev-blocks-navigation.mjs.map +1 -1
- package/fesm2022/filip.mazev-blocks-primitives.mjs +441 -7
- package/fesm2022/filip.mazev-blocks-primitives.mjs.map +1 -1
- package/fesm2022/filip.mazev-blocks.mjs +1 -1
- package/fesm2022/filip.mazev-blocks.mjs.map +1 -1
- package/package.json +1 -1
- package/types/filip.mazev-blocks-core.d.ts +19 -2
- package/types/filip.mazev-blocks-navigation.d.ts +348 -4
- package/types/filip.mazev-blocks-primitives.d.ts +112 -0
- package/types/filip.mazev-blocks.d.ts +1 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { BxSurfaceDirective } from "@filip.mazev/blocks/effects";
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
import { ChangeDetectionStrategy, Component, DestroyRef, Directive, ElementRef, HostListener, InjectionToken, NgZone, PLATFORM_ID, Pipe, TemplateRef, ViewContainerRef, afterEveryRender, afterNextRender, afterRenderEffect, booleanAttribute, computed, contentChild, contentChildren, effect, forwardRef, inject, input, model, output, signal, viewChild, viewChildren } from "@angular/core";
|
|
3
|
+
import { ChangeDetectionStrategy, Component, DestroyRef, Directive, ElementRef, HostListener, Injectable, InjectionToken, NgZone, PLATFORM_ID, Pipe, TemplateRef, ViewContainerRef, afterEveryRender, afterNextRender, afterRenderEffect, booleanAttribute, computed, contentChild, contentChildren, effect, forwardRef, inject, input, model, output, signal, untracked, viewChild, viewChildren } from "@angular/core";
|
|
4
4
|
import { BX_I18N, BxA11yService, BxOverlayPositionService, BxShortcutService, inheritOverlayTheme, isTextWithKey, resolveText, resolveTokenToCssVar, trackOverlayOrigin, uuidv4 } from "@filip.mazev/blocks/core";
|
|
5
5
|
import { Icon } from "@filip.mazev/blocks/icons";
|
|
6
|
-
import { AriaDescriber, FocusMonitor } from "@angular/cdk/a11y";
|
|
6
|
+
import { AriaDescriber, FocusMonitor, FocusTrapFactory } from "@angular/cdk/a11y";
|
|
7
7
|
import { Overlay } from "@angular/cdk/overlay";
|
|
8
8
|
import { ComponentPortal, TemplatePortal } from "@angular/cdk/portal";
|
|
9
9
|
import { createGlassTransition, inheritGlassLighting } from "@filip.mazev/blocks/effects/runtime";
|
|
@@ -106,7 +106,7 @@ var Menu = class Menu {
|
|
|
106
106
|
selector: "bx-menu",
|
|
107
107
|
ngImport: i0,
|
|
108
108
|
template: "<div data-bx-surface=\"solid\" role=\"menu\" class=\"bx-menu-wrapper\" [class.bx-menu-animated]=\"isAnimated()\">\n <ng-content></ng-content>\n</div>\n",
|
|
109
|
-
styles: [":host{display:block}.bx-menu-wrapper{--bx-glass-surface: var(--bx-bg-surface);--bx-glass-text: var(--bx-text-primary);--bx-glass-edge: var(--bx-border-default);--bx-glass-shadow: 0 2px 4px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--bx-glass-radius: var(--bx-rounded-lg, .75rem);background-color:var(--bx-glass-surface);border:1px solid var(--bx-glass-edge);border-radius:var(--bx-glass-radius, var(--bx-rounded-lg, .75rem));box-shadow:0 2px 4px #0000001a,0 1px 2px -1px #0000001a;padding:.25rem;display:flex;flex-direction:column;min-width:12rem}.bx-menu-wrapper[data-bx-surface=solid]{background:var(--bx-glass-surface)!important;-webkit-backdrop-filter:none;backdrop-filter:none}.bx-menu-wrapper.bx-menu-animated{transition:transform .2s cubic-bezier(.25,.8,.25,1)}.bx-menu-wrapper{transform-origin:top}.bx-menu-wrapper.is-hidden{opacity:0;transform:scaleY(.95);pointer-events:none}:host([data-bx-surface]){border-radius:var(--bx-glass-radius, var(--bx-rounded-lg, .75rem));--bx-glass-shadow: 0 2px 4px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);color:var(--bx-glass-text, var(--bx-text-primary))}:host([data-bx-surface]) .bx-menu-wrapper{background:transparent;border-color:transparent;border-radius:inherit;box-shadow:none}\n"],
|
|
109
|
+
styles: [":host{display:block}.bx-menu-wrapper{--bx-glass-surface: var(--bx-bg-surface);--bx-glass-text: var(--bx-text-primary);--bx-glass-edge: var(--bx-border-default);--bx-glass-shadow: 0 2px 4px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--bx-glass-radius: var(--bx-rounded-lg, .75rem);background-color:var(--bx-glass-surface);border:1px solid var(--bx-glass-edge);border-radius:var(--bx-glass-radius, var(--bx-rounded-lg, .75rem));box-shadow:0 2px 4px #0000001a,0 1px 2px -1px #0000001a;padding:.25rem;display:flex;flex-direction:column;gap:var(--bx-menu-item-gap, 0);box-sizing:border-box;min-width:var(--bx-menu-min-width, 12rem);max-width:100%}.bx-menu-wrapper[data-bx-surface=solid]{background:var(--bx-glass-surface)!important;-webkit-backdrop-filter:none;backdrop-filter:none}.bx-menu-wrapper.bx-menu-animated{transition:transform .2s cubic-bezier(.25,.8,.25,1)}.bx-menu-wrapper{transform-origin:top}.bx-menu-wrapper.is-hidden{opacity:0;transform:scaleY(.95);pointer-events:none}:host([data-bx-surface]){border-radius:var(--bx-glass-radius, var(--bx-rounded-lg, .75rem));--bx-glass-shadow: 0 2px 4px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);color:var(--bx-glass-text, var(--bx-text-primary))}:host([data-bx-surface]) .bx-menu-wrapper{background:transparent;border-color:transparent;border-radius:inherit;box-shadow:none}\n"],
|
|
110
110
|
changeDetection: i0.ChangeDetectionStrategy.OnPush
|
|
111
111
|
});
|
|
112
112
|
};
|
|
@@ -121,7 +121,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
121
121
|
selector: "bx-menu",
|
|
122
122
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
123
123
|
template: "<div data-bx-surface=\"solid\" role=\"menu\" class=\"bx-menu-wrapper\" [class.bx-menu-animated]=\"isAnimated()\">\n <ng-content></ng-content>\n</div>\n",
|
|
124
|
-
styles: [":host{display:block}.bx-menu-wrapper{--bx-glass-surface: var(--bx-bg-surface);--bx-glass-text: var(--bx-text-primary);--bx-glass-edge: var(--bx-border-default);--bx-glass-shadow: 0 2px 4px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--bx-glass-radius: var(--bx-rounded-lg, .75rem);background-color:var(--bx-glass-surface);border:1px solid var(--bx-glass-edge);border-radius:var(--bx-glass-radius, var(--bx-rounded-lg, .75rem));box-shadow:0 2px 4px #0000001a,0 1px 2px -1px #0000001a;padding:.25rem;display:flex;flex-direction:column;min-width:12rem}.bx-menu-wrapper[data-bx-surface=solid]{background:var(--bx-glass-surface)!important;-webkit-backdrop-filter:none;backdrop-filter:none}.bx-menu-wrapper.bx-menu-animated{transition:transform .2s cubic-bezier(.25,.8,.25,1)}.bx-menu-wrapper{transform-origin:top}.bx-menu-wrapper.is-hidden{opacity:0;transform:scaleY(.95);pointer-events:none}:host([data-bx-surface]){border-radius:var(--bx-glass-radius, var(--bx-rounded-lg, .75rem));--bx-glass-shadow: 0 2px 4px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);color:var(--bx-glass-text, var(--bx-text-primary))}:host([data-bx-surface]) .bx-menu-wrapper{background:transparent;border-color:transparent;border-radius:inherit;box-shadow:none}\n"]
|
|
124
|
+
styles: [":host{display:block}.bx-menu-wrapper{--bx-glass-surface: var(--bx-bg-surface);--bx-glass-text: var(--bx-text-primary);--bx-glass-edge: var(--bx-border-default);--bx-glass-shadow: 0 2px 4px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--bx-glass-radius: var(--bx-rounded-lg, .75rem);background-color:var(--bx-glass-surface);border:1px solid var(--bx-glass-edge);border-radius:var(--bx-glass-radius, var(--bx-rounded-lg, .75rem));box-shadow:0 2px 4px #0000001a,0 1px 2px -1px #0000001a;padding:.25rem;display:flex;flex-direction:column;gap:var(--bx-menu-item-gap, 0);box-sizing:border-box;min-width:var(--bx-menu-min-width, 12rem);max-width:100%}.bx-menu-wrapper[data-bx-surface=solid]{background:var(--bx-glass-surface)!important;-webkit-backdrop-filter:none;backdrop-filter:none}.bx-menu-wrapper.bx-menu-animated{transition:transform .2s cubic-bezier(.25,.8,.25,1)}.bx-menu-wrapper{transform-origin:top}.bx-menu-wrapper.is-hidden{opacity:0;transform:scaleY(.95);pointer-events:none}:host([data-bx-surface]){border-radius:var(--bx-glass-radius, var(--bx-rounded-lg, .75rem));--bx-glass-shadow: 0 2px 4px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);color:var(--bx-glass-text, var(--bx-text-primary))}:host([data-bx-surface]) .bx-menu-wrapper{background:transparent;border-color:transparent;border-radius:inherit;box-shadow:none}\n"]
|
|
125
125
|
}]
|
|
126
126
|
}]
|
|
127
127
|
});
|
|
@@ -2559,6 +2559,7 @@ var Tag = class Tag {
|
|
|
2559
2559
|
}, ...ngDevMode ? [{ debugName: "resolvedTrailingNumber" }] : /* istanbul ignore next */ []);
|
|
2560
2560
|
palette = computed(() => TAG_PALETTES[this.color() ?? this.config().color ?? "accent"], ...ngDevMode ? [{ debugName: "palette" }] : /* istanbul ignore next */ []);
|
|
2561
2561
|
isNumberOnly = computed(() => !this.resolvedText() && !this.resolvedLeadingIcon() && !this.resolvedTrailingIcon() && !!this.resolvedLeadingNumber() !== !!this.resolvedTrailingNumber(), ...ngDevMode ? [{ debugName: "isNumberOnly" }] : /* istanbul ignore next */ []);
|
|
2562
|
+
opaque = input(void 0, ...ngDevMode ? [{ debugName: "opaque" }] : /* istanbul ignore next */ []);
|
|
2562
2563
|
text = input(void 0, ...ngDevMode ? [{ debugName: "text" }] : /* istanbul ignore next */ []);
|
|
2563
2564
|
config = input({}, ...ngDevMode ? [{ debugName: "config" }] : /* istanbul ignore next */ []);
|
|
2564
2565
|
color = input(void 0, ...ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []);
|
|
@@ -2594,6 +2595,13 @@ var Tag = class Tag {
|
|
|
2594
2595
|
isStandalone: true,
|
|
2595
2596
|
selector: "bx-tag",
|
|
2596
2597
|
inputs: {
|
|
2598
|
+
opaque: {
|
|
2599
|
+
classPropertyName: "opaque",
|
|
2600
|
+
publicName: "opaque",
|
|
2601
|
+
isSignal: true,
|
|
2602
|
+
isRequired: false,
|
|
2603
|
+
transformFunction: null
|
|
2604
|
+
},
|
|
2597
2605
|
text: {
|
|
2598
2606
|
classPropertyName: "text",
|
|
2599
2607
|
publicName: "text",
|
|
@@ -2729,7 +2737,7 @@ var Tag = class Tag {
|
|
|
2729
2737
|
isSignal: true
|
|
2730
2738
|
}],
|
|
2731
2739
|
ngImport: i0,
|
|
2732
|
-
template: "<span class=\"bx-tag\" bxSurface [bxSurfaceInteractive]=\"false\"\n [class.is-filled]=\"resolvedVariant() === 'filled'\" [class.is-outlined]=\"resolvedVariant() === 'outlined'\"\n [class.is-small]=\"resolvedSize() === 'small'\" [class.is-disabled]=\"disabled()\" [class.is-number-only]=\"isNumberOnly()\"\n [attr.aria-disabled]=\"disabled() ? 'true' : null\" [attr.role]=\"resolvedAriaLabel() ? 'group' : null\" [attr.aria-label]=\"resolvedAriaLabel() || null\"\n [attr.tabindex]=\"resolvedTooltip() && focusable() ? 0 : null\" [bxTooltip]=\"resolvedTooltip()\" [placement]=\"tooltipPlacement()\" bxTooltipTouch=\"longpress\">\n @if (resolvedLeadingIcon(); as icon) { <bx-icon [name]=\"icon\" [size]=\"resolvedIconSize()\" /> }\n @if (resolvedLeadingNumber()) { <span class=\"bx-tag-number\">{{ resolvedLeadingNumber() }}</span> }\n @if (resolvedText()) { <span class=\"bx-tag-text\" bxTruncate>{{ resolvedText() }}</span> }\n @if (resolvedTrailingNumber()) { <span class=\"bx-tag-number\">{{ resolvedTrailingNumber() }}</span> }\n @if (resolvedTrailingIcon(); as icon) { <bx-icon [name]=\"icon\" [size]=\"resolvedIconSize()\" /> }\n</span>\n",
|
|
2740
|
+
template: "<span class=\"bx-tag\" bxSurface [bxSurfaceInteractive]=\"false\" [bxReducedTransparency]=\"(opaque() ?? config().opaque) ? true : undefined\"\n [class.is-filled]=\"resolvedVariant() === 'filled'\" [class.is-outlined]=\"resolvedVariant() === 'outlined'\"\n [class.is-small]=\"resolvedSize() === 'small'\" [class.is-disabled]=\"disabled()\" [class.is-number-only]=\"isNumberOnly()\"\n [attr.aria-disabled]=\"disabled() ? 'true' : null\" [attr.role]=\"resolvedAriaLabel() ? 'group' : null\" [attr.aria-label]=\"resolvedAriaLabel() || null\"\n [attr.tabindex]=\"resolvedTooltip() && focusable() ? 0 : null\" [bxTooltip]=\"resolvedTooltip()\" [placement]=\"tooltipPlacement()\" bxTooltipTouch=\"longpress\">\n @if (resolvedLeadingIcon(); as icon) { <bx-icon [name]=\"icon\" [size]=\"resolvedIconSize()\" /> }\n @if (resolvedLeadingNumber()) { <span class=\"bx-tag-number\">{{ resolvedLeadingNumber() }}</span> }\n @if (resolvedText()) { <span class=\"bx-tag-text\" bxTruncate>{{ resolvedText() }}</span> }\n @if (resolvedTrailingNumber()) { <span class=\"bx-tag-number\">{{ resolvedTrailingNumber() }}</span> }\n @if (resolvedTrailingIcon(); as icon) { <bx-icon [name]=\"icon\" [size]=\"resolvedIconSize()\" /> }\n</span>\n",
|
|
2733
2741
|
styles: [":host{display:inline-flex;min-inline-size:0;max-inline-size:100%;vertical-align:middle}.bx-tag{--bx-glass-surface: var(--bx-tag-background, var(--bx-tag-role-tonal));--bx-glass-text: var(--bx-tag-color, var(--bx-tag-role-text));--bx-glass-edge: var(--bx-tag-border, var(--bx-tag-role-border));--bx-glass-radius: var(--bx-tag-radius, .25rem);--bx-glass-shadow: var(--bx-tag-shadow, none);position:relative;display:inline-flex;align-items:center;justify-content:center;min-inline-size:0;max-inline-size:100%;box-sizing:border-box;gap:var(--bx-tag-gap, .25rem);padding:var(--bx-tag-padding, .25rem .5rem);border:1px solid var(--bx-glass-edge);border-radius:var(--bx-glass-radius);background:var(--bx-glass-surface);color:var(--bx-glass-text);font:inherit;font-size:var(--bx-tag-font-size, .8125rem);line-height:1.4;white-space:nowrap}.bx-tag.is-filled{--bx-glass-surface: var(--bx-tag-background, var(--bx-tag-role-fill));--bx-glass-text: var(--bx-tag-color, var(--bx-tag-role-on-fill));--bx-glass-min-opacity: var(--bx-tag-fill-opacity, .85)}.bx-tag.is-outlined{--bx-glass-surface: var(--bx-tag-background, var(--bx-bg-surface));--bx-glass-opacity: var(--bx-tag-outline-opacity, .12)}.bx-tag.is-small{font-size:var(--bx-tag-font-size, .75rem);padding-block:.125rem}.bx-tag.is-disabled{opacity:var(--bx-tag-disabled-opacity, .5)}.bx-tag.is-number-only{--bx-glass-radius: 50%;inline-size:max-content;min-inline-size:var(--bx-tag-number-size, 1.875rem);aspect-ratio:1;padding:var(--bx-tag-number-padding, .35em)}.bx-tag.is-number-only.is-small{min-inline-size:var(--bx-tag-number-size, 1.5rem)}.bx-tag:focus-visible{outline:2px solid var(--bx-border-brand);outline-offset:2px}.bx-tag-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-inline-size:1.1em;padding-inline:.25em;border-radius:var(--bx-tag-counter-radius, .25rem);background:var(--bx-tag-counter-background, color-mix(in srgb, currentcolor 12%, transparent));font-variant-numeric:tabular-nums}.is-number-only .bx-tag-number{background:transparent;padding:0}@media(forced-colors:active){.bx-tag.is-disabled{color:GrayText;border-color:GrayText;opacity:1}}\n"],
|
|
2734
2742
|
dependencies: [
|
|
2735
2743
|
{
|
|
@@ -2805,7 +2813,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2805
2813
|
"[style.--bx-tag-role-tonal]": "palette().tonal",
|
|
2806
2814
|
"[style.--bx-tag-role-border]": "palette().border"
|
|
2807
2815
|
},
|
|
2808
|
-
template: "<span class=\"bx-tag\" bxSurface [bxSurfaceInteractive]=\"false\"\n [class.is-filled]=\"resolvedVariant() === 'filled'\" [class.is-outlined]=\"resolvedVariant() === 'outlined'\"\n [class.is-small]=\"resolvedSize() === 'small'\" [class.is-disabled]=\"disabled()\" [class.is-number-only]=\"isNumberOnly()\"\n [attr.aria-disabled]=\"disabled() ? 'true' : null\" [attr.role]=\"resolvedAriaLabel() ? 'group' : null\" [attr.aria-label]=\"resolvedAriaLabel() || null\"\n [attr.tabindex]=\"resolvedTooltip() && focusable() ? 0 : null\" [bxTooltip]=\"resolvedTooltip()\" [placement]=\"tooltipPlacement()\" bxTooltipTouch=\"longpress\">\n @if (resolvedLeadingIcon(); as icon) { <bx-icon [name]=\"icon\" [size]=\"resolvedIconSize()\" /> }\n @if (resolvedLeadingNumber()) { <span class=\"bx-tag-number\">{{ resolvedLeadingNumber() }}</span> }\n @if (resolvedText()) { <span class=\"bx-tag-text\" bxTruncate>{{ resolvedText() }}</span> }\n @if (resolvedTrailingNumber()) { <span class=\"bx-tag-number\">{{ resolvedTrailingNumber() }}</span> }\n @if (resolvedTrailingIcon(); as icon) { <bx-icon [name]=\"icon\" [size]=\"resolvedIconSize()\" /> }\n</span>\n",
|
|
2816
|
+
template: "<span class=\"bx-tag\" bxSurface [bxSurfaceInteractive]=\"false\" [bxReducedTransparency]=\"(opaque() ?? config().opaque) ? true : undefined\"\n [class.is-filled]=\"resolvedVariant() === 'filled'\" [class.is-outlined]=\"resolvedVariant() === 'outlined'\"\n [class.is-small]=\"resolvedSize() === 'small'\" [class.is-disabled]=\"disabled()\" [class.is-number-only]=\"isNumberOnly()\"\n [attr.aria-disabled]=\"disabled() ? 'true' : null\" [attr.role]=\"resolvedAriaLabel() ? 'group' : null\" [attr.aria-label]=\"resolvedAriaLabel() || null\"\n [attr.tabindex]=\"resolvedTooltip() && focusable() ? 0 : null\" [bxTooltip]=\"resolvedTooltip()\" [placement]=\"tooltipPlacement()\" bxTooltipTouch=\"longpress\">\n @if (resolvedLeadingIcon(); as icon) { <bx-icon [name]=\"icon\" [size]=\"resolvedIconSize()\" /> }\n @if (resolvedLeadingNumber()) { <span class=\"bx-tag-number\">{{ resolvedLeadingNumber() }}</span> }\n @if (resolvedText()) { <span class=\"bx-tag-text\" bxTruncate>{{ resolvedText() }}</span> }\n @if (resolvedTrailingNumber()) { <span class=\"bx-tag-number\">{{ resolvedTrailingNumber() }}</span> }\n @if (resolvedTrailingIcon(); as icon) { <bx-icon [name]=\"icon\" [size]=\"resolvedIconSize()\" /> }\n</span>\n",
|
|
2809
2817
|
styles: [":host{display:inline-flex;min-inline-size:0;max-inline-size:100%;vertical-align:middle}.bx-tag{--bx-glass-surface: var(--bx-tag-background, var(--bx-tag-role-tonal));--bx-glass-text: var(--bx-tag-color, var(--bx-tag-role-text));--bx-glass-edge: var(--bx-tag-border, var(--bx-tag-role-border));--bx-glass-radius: var(--bx-tag-radius, .25rem);--bx-glass-shadow: var(--bx-tag-shadow, none);position:relative;display:inline-flex;align-items:center;justify-content:center;min-inline-size:0;max-inline-size:100%;box-sizing:border-box;gap:var(--bx-tag-gap, .25rem);padding:var(--bx-tag-padding, .25rem .5rem);border:1px solid var(--bx-glass-edge);border-radius:var(--bx-glass-radius);background:var(--bx-glass-surface);color:var(--bx-glass-text);font:inherit;font-size:var(--bx-tag-font-size, .8125rem);line-height:1.4;white-space:nowrap}.bx-tag.is-filled{--bx-glass-surface: var(--bx-tag-background, var(--bx-tag-role-fill));--bx-glass-text: var(--bx-tag-color, var(--bx-tag-role-on-fill));--bx-glass-min-opacity: var(--bx-tag-fill-opacity, .85)}.bx-tag.is-outlined{--bx-glass-surface: var(--bx-tag-background, var(--bx-bg-surface));--bx-glass-opacity: var(--bx-tag-outline-opacity, .12)}.bx-tag.is-small{font-size:var(--bx-tag-font-size, .75rem);padding-block:.125rem}.bx-tag.is-disabled{opacity:var(--bx-tag-disabled-opacity, .5)}.bx-tag.is-number-only{--bx-glass-radius: 50%;inline-size:max-content;min-inline-size:var(--bx-tag-number-size, 1.875rem);aspect-ratio:1;padding:var(--bx-tag-number-padding, .35em)}.bx-tag.is-number-only.is-small{min-inline-size:var(--bx-tag-number-size, 1.5rem)}.bx-tag:focus-visible{outline:2px solid var(--bx-border-brand);outline-offset:2px}.bx-tag-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-inline-size:1.1em;padding-inline:.25em;border-radius:var(--bx-tag-counter-radius, .25rem);background:var(--bx-tag-counter-background, color-mix(in srgb, currentcolor 12%, transparent));font-variant-numeric:tabular-nums}.is-number-only .bx-tag-number{background:transparent;padding:0}@media(forced-colors:active){.bx-tag.is-disabled{color:GrayText;border-color:GrayText;opacity:1}}\n"]
|
|
2810
2818
|
}]
|
|
2811
2819
|
}],
|
|
@@ -2814,6 +2822,14 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2814
2822
|
type: i0.ViewChild,
|
|
2815
2823
|
args: [i0.forwardRef(() => TruncateDirective), { isSignal: true }]
|
|
2816
2824
|
}],
|
|
2825
|
+
opaque: [{
|
|
2826
|
+
type: i0.Input,
|
|
2827
|
+
args: [{
|
|
2828
|
+
isSignal: true,
|
|
2829
|
+
alias: "opaque",
|
|
2830
|
+
required: false
|
|
2831
|
+
}]
|
|
2832
|
+
}],
|
|
2817
2833
|
text: [{
|
|
2818
2834
|
type: i0.Input,
|
|
2819
2835
|
args: [{
|
|
@@ -2952,6 +2968,424 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2952
2968
|
}]
|
|
2953
2969
|
}
|
|
2954
2970
|
});
|
|
2955
|
-
|
|
2971
|
+
var MenuCascadeService = class MenuCascadeService {
|
|
2972
|
+
entries = /* @__PURE__ */ new Set();
|
|
2973
|
+
activate(trigger) {
|
|
2974
|
+
const ancestors = /* @__PURE__ */ new Set();
|
|
2975
|
+
let parent = trigger.menuParent();
|
|
2976
|
+
while (parent) {
|
|
2977
|
+
ancestors.add(parent);
|
|
2978
|
+
parent = parent.menuParent();
|
|
2979
|
+
}
|
|
2980
|
+
for (const entry of [...this.entries]) if (!ancestors.has(entry) && entry !== trigger) entry.close();
|
|
2981
|
+
this.entries.add(trigger);
|
|
2982
|
+
}
|
|
2983
|
+
remove(trigger) {
|
|
2984
|
+
this.entries.delete(trigger);
|
|
2985
|
+
}
|
|
2986
|
+
closeChildren(trigger) {
|
|
2987
|
+
for (const entry of [...this.entries]) if (entry.menuParent() === trigger) entry.close();
|
|
2988
|
+
}
|
|
2989
|
+
contains(trigger, target) {
|
|
2990
|
+
return trigger.contains(target) || [...this.entries].some((entry) => entry.menuParent() === trigger && this.contains(entry, target));
|
|
2991
|
+
}
|
|
2992
|
+
hasOpenMenus() {
|
|
2993
|
+
return this.entries.size > 0;
|
|
2994
|
+
}
|
|
2995
|
+
repositionChildren(trigger) {
|
|
2996
|
+
for (const entry of [...this.entries]) if (entry.menuParent() === trigger) entry.reposition();
|
|
2997
|
+
}
|
|
2998
|
+
closeAll(restoreFocus = false) {
|
|
2999
|
+
[...this.entries].find((entry) => !entry.menuParent())?.close(restoreFocus);
|
|
3000
|
+
}
|
|
3001
|
+
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
3002
|
+
minVersion: "12.0.0",
|
|
3003
|
+
version: "22.2.3",
|
|
3004
|
+
ngImport: i0,
|
|
3005
|
+
type: MenuCascadeService,
|
|
3006
|
+
deps: [],
|
|
3007
|
+
target: i0.ɵɵFactoryTarget.Injectable
|
|
3008
|
+
});
|
|
3009
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
3010
|
+
minVersion: "12.0.0",
|
|
3011
|
+
version: "22.2.3",
|
|
3012
|
+
ngImport: i0,
|
|
3013
|
+
type: MenuCascadeService,
|
|
3014
|
+
providedIn: "root"
|
|
3015
|
+
});
|
|
3016
|
+
};
|
|
3017
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
3018
|
+
minVersion: "12.0.0",
|
|
3019
|
+
version: "22.2.3",
|
|
3020
|
+
ngImport: i0,
|
|
3021
|
+
type: MenuCascadeService,
|
|
3022
|
+
decorators: [{
|
|
3023
|
+
type: Injectable,
|
|
3024
|
+
args: [{ providedIn: "root" }]
|
|
3025
|
+
}]
|
|
3026
|
+
});
|
|
3027
|
+
function navigateMenuKey(event, menu) {
|
|
3028
|
+
if (![
|
|
3029
|
+
"ArrowDown",
|
|
3030
|
+
"ArrowUp",
|
|
3031
|
+
"Home",
|
|
3032
|
+
"End"
|
|
3033
|
+
].includes(event.key)) return false;
|
|
3034
|
+
const items = Array.from(menu.querySelectorAll("[role=\"menuitem\"]")).filter((item) => item.closest("[role=\"menu\"]") === menu && !item.matches(":disabled, [aria-disabled=\"true\"]") && item.getClientRects().length > 0);
|
|
3035
|
+
if (!items.length) return false;
|
|
3036
|
+
const current = items.indexOf(menu.ownerDocument.activeElement);
|
|
3037
|
+
const index = event.key === "Home" ? 0 : event.key === "End" ? items.length - 1 : event.key === "ArrowDown" ? (current + 1) % items.length : (current - 1 + items.length) % items.length;
|
|
3038
|
+
event.preventDefault();
|
|
3039
|
+
event.stopPropagation();
|
|
3040
|
+
items[index].focus();
|
|
3041
|
+
return true;
|
|
3042
|
+
}
|
|
3043
|
+
var MenuTriggerDirective = class MenuTriggerDirective {
|
|
3044
|
+
source = inject(ElementRef).nativeElement;
|
|
3045
|
+
overlay = inject(Overlay);
|
|
3046
|
+
overlayContext = inject(BX_OVERLAY_CONTEXT, { optional: true });
|
|
3047
|
+
zone = inject(NgZone);
|
|
3048
|
+
positions = inject(BxOverlayPositionService);
|
|
3049
|
+
cascade = inject(MenuCascadeService);
|
|
3050
|
+
vcr = inject(ViewContainerRef);
|
|
3051
|
+
traps = inject(FocusTrapFactory);
|
|
3052
|
+
opened = signal(false, ...ngDevMode ? [{ debugName: "opened" }] : /* istanbul ignore next */ []);
|
|
3053
|
+
overlayId = signal(null, ...ngDevMode ? [{ debugName: "overlayId" }] : /* istanbul ignore next */ []);
|
|
3054
|
+
isOpen = this.opened.asReadonly();
|
|
3055
|
+
bxMenuTrigger = input.required(...ngDevMode ? [{ debugName: "bxMenuTrigger" }] : /* istanbul ignore next */ []);
|
|
3056
|
+
menuOrigin = input(void 0, ...ngDevMode ? [{ debugName: "menuOrigin" }] : /* istanbul ignore next */ []);
|
|
3057
|
+
menuParent = input(void 0, ...ngDevMode ? [{ debugName: "menuParent" }] : /* istanbul ignore next */ []);
|
|
3058
|
+
menuSide = input("right", ...ngDevMode ? [{ debugName: "menuSide" }] : /* istanbul ignore next */ []);
|
|
3059
|
+
menuHover = input(true, ...ngDevMode ? [{ debugName: "menuHover" }] : /* istanbul ignore next */ []);
|
|
3060
|
+
menuLabel = input("", ...ngDevMode ? [{ debugName: "menuLabel" }] : /* istanbul ignore next */ []);
|
|
3061
|
+
menuPinned = input(false, ...ngDevMode ? [{ debugName: "menuPinned" }] : /* istanbul ignore next */ []);
|
|
3062
|
+
menuOpened = output();
|
|
3063
|
+
menuClosed = output();
|
|
3064
|
+
overlayRef;
|
|
3065
|
+
trap;
|
|
3066
|
+
subscriptions = new Subscription();
|
|
3067
|
+
disconnectTheme;
|
|
3068
|
+
hoverTimer;
|
|
3069
|
+
positionTracker;
|
|
3070
|
+
constructor() {
|
|
3071
|
+
inject(DestroyRef).onDestroy(() => this.close());
|
|
3072
|
+
effect(() => {
|
|
3073
|
+
const label = this.menuLabel();
|
|
3074
|
+
const opened = this.isOpen();
|
|
3075
|
+
untracked(() => {
|
|
3076
|
+
if (opened) this.overlayRef?.overlayElement.querySelector("[role=\"menu\"]")?.setAttribute("aria-label", label || this.source.getAttribute("aria-label") || this.source.textContent?.trim() || "");
|
|
3077
|
+
});
|
|
3078
|
+
});
|
|
3079
|
+
}
|
|
3080
|
+
toggle(event) {
|
|
3081
|
+
event.preventDefault();
|
|
3082
|
+
event.stopPropagation();
|
|
3083
|
+
if (this.isOpen()) this.close(true);
|
|
3084
|
+
else this.open(true);
|
|
3085
|
+
}
|
|
3086
|
+
open(focus = false) {
|
|
3087
|
+
this.cancelClose();
|
|
3088
|
+
if (this.isOpen()) {
|
|
3089
|
+
if (focus) this.focusFirst();
|
|
3090
|
+
return;
|
|
3091
|
+
}
|
|
3092
|
+
if (!this.source.ownerDocument.defaultView || this.source.matches(":disabled, [aria-disabled=\"true\"]")) return;
|
|
3093
|
+
this.cascade.activate(this);
|
|
3094
|
+
const overlay = this.overlay.create({
|
|
3095
|
+
positionStrategy: this.positions.getSubmenuStrategy(this.menuOrigin() ?? this.source, this.menuSide()),
|
|
3096
|
+
scrollStrategy: this.overlay.scrollStrategies.noop(),
|
|
3097
|
+
usePopover: !!this.overlayContext?.useTopLayer || !!this.source.closest("dialog, [role=\"dialog\"], [role=\"alertdialog\"], bx-modal, bx-modal-core, [popover]"),
|
|
3098
|
+
direction: "ltr",
|
|
3099
|
+
hasBackdrop: false
|
|
3100
|
+
});
|
|
3101
|
+
this.overlayRef = overlay;
|
|
3102
|
+
this.overlayId.set(overlay.overlayElement.id);
|
|
3103
|
+
this.opened.set(true);
|
|
3104
|
+
this.disconnectTheme = inheritOverlayTheme(this.source, overlay.overlayElement);
|
|
3105
|
+
this.subscriptions = new Subscription();
|
|
3106
|
+
overlay.attach(new TemplatePortal(this.bxMenuTrigger(), this.vcr)).detectChanges();
|
|
3107
|
+
const menu = overlay.overlayElement.querySelector("[role=\"menu\"]");
|
|
3108
|
+
if (menu) menu.setAttribute("aria-label", this.menuLabel() || this.source.getAttribute("aria-label") || this.source.textContent?.trim() || "");
|
|
3109
|
+
this.trap = this.traps.create(overlay.overlayElement);
|
|
3110
|
+
const tracker = this.zone.runOutsideAngular(() => trackOverlayOrigin(overlay, this.menuOrigin() ?? this.source, {
|
|
3111
|
+
onPosition: () => this.cascade.repositionChildren(this),
|
|
3112
|
+
onOriginHidden: () => this.zone.run(() => this.close())
|
|
3113
|
+
}));
|
|
3114
|
+
this.positionTracker = tracker;
|
|
3115
|
+
this.subscriptions.add(() => {
|
|
3116
|
+
tracker();
|
|
3117
|
+
this.positionTracker = void 0;
|
|
3118
|
+
});
|
|
3119
|
+
if (this.overlayRef !== overlay) return;
|
|
3120
|
+
this.subscriptions.add(overlay.keydownEvents().subscribe((event) => this.onMenuKey(event)));
|
|
3121
|
+
this.subscriptions.add(overlay.outsidePointerEvents().subscribe((event) => {
|
|
3122
|
+
if (event.target instanceof Node && !this.cascade.contains(this, event.target)) this.close();
|
|
3123
|
+
}));
|
|
3124
|
+
this.subscriptions.add(overlay.detachments().subscribe(() => this.close()));
|
|
3125
|
+
const enter = () => this.cancelClose();
|
|
3126
|
+
const leave = () => this.scheduleClose();
|
|
3127
|
+
overlay.overlayElement.addEventListener("pointerenter", enter);
|
|
3128
|
+
overlay.overlayElement.addEventListener("pointerleave", leave);
|
|
3129
|
+
this.subscriptions.add(() => {
|
|
3130
|
+
overlay.overlayElement.removeEventListener("pointerenter", enter);
|
|
3131
|
+
overlay.overlayElement.removeEventListener("pointerleave", leave);
|
|
3132
|
+
});
|
|
3133
|
+
overlay.updatePosition();
|
|
3134
|
+
if (focus) this.focusFirst();
|
|
3135
|
+
this.menuOpened.emit();
|
|
3136
|
+
}
|
|
3137
|
+
close(restoreFocus = false) {
|
|
3138
|
+
this.cancelClose();
|
|
3139
|
+
if (!this.overlayRef) return;
|
|
3140
|
+
this.cascade.closeChildren(this);
|
|
3141
|
+
const overlay = this.overlayRef;
|
|
3142
|
+
this.overlayRef = void 0;
|
|
3143
|
+
if (restoreFocus || overlay.overlayElement.contains(this.source.ownerDocument.activeElement)) this.source.focus({ preventScroll: true });
|
|
3144
|
+
this.subscriptions.unsubscribe();
|
|
3145
|
+
this.trap?.destroy();
|
|
3146
|
+
this.trap = void 0;
|
|
3147
|
+
this.disconnectTheme?.();
|
|
3148
|
+
this.disconnectTheme = void 0;
|
|
3149
|
+
overlay.dispose();
|
|
3150
|
+
this.cascade.remove(this);
|
|
3151
|
+
this.overlayId.set(null);
|
|
3152
|
+
this.opened.set(false);
|
|
3153
|
+
this.menuClosed.emit();
|
|
3154
|
+
}
|
|
3155
|
+
reposition() {
|
|
3156
|
+
this.positionTracker?.reposition();
|
|
3157
|
+
}
|
|
3158
|
+
contains(target) {
|
|
3159
|
+
return this.source.contains(target) || !!this.overlayRef?.overlayElement.contains(target);
|
|
3160
|
+
}
|
|
3161
|
+
scheduleClose() {
|
|
3162
|
+
if (this.menuPinned()) return;
|
|
3163
|
+
this.cancelClose();
|
|
3164
|
+
this.hoverTimer = this.source.ownerDocument.defaultView?.setTimeout(() => {
|
|
3165
|
+
const focused = this.source.ownerDocument.activeElement;
|
|
3166
|
+
if (!focused || !this.cascade.contains(this, focused)) this.close();
|
|
3167
|
+
}, 240);
|
|
3168
|
+
}
|
|
3169
|
+
onPointerEnter(event) {
|
|
3170
|
+
if (this.menuHover() && event.pointerType !== "touch") this.open();
|
|
3171
|
+
}
|
|
3172
|
+
onKey(event) {
|
|
3173
|
+
if (![
|
|
3174
|
+
this.menuSide() === "right" ? "ArrowRight" : "ArrowLeft",
|
|
3175
|
+
"ArrowDown",
|
|
3176
|
+
"ArrowUp"
|
|
3177
|
+
].includes(event.key)) return;
|
|
3178
|
+
event.preventDefault();
|
|
3179
|
+
event.stopPropagation();
|
|
3180
|
+
this.open(true);
|
|
3181
|
+
}
|
|
3182
|
+
cancelClose() {
|
|
3183
|
+
this.source.ownerDocument.defaultView?.clearTimeout(this.hoverTimer);
|
|
3184
|
+
this.hoverTimer = void 0;
|
|
3185
|
+
this.menuParent()?.cancelClose();
|
|
3186
|
+
}
|
|
3187
|
+
focusFirst() {
|
|
3188
|
+
this.overlayRef?.overlayElement.querySelector("[role=\"menuitem\"]:not(:disabled):not([aria-disabled=\"true\"])")?.focus();
|
|
3189
|
+
}
|
|
3190
|
+
onMenuKey(event) {
|
|
3191
|
+
if (event.defaultPrevented) return;
|
|
3192
|
+
const backward = this.menuSide() === "right" ? "ArrowLeft" : "ArrowRight";
|
|
3193
|
+
if (event.key === "Escape" || event.key === backward) {
|
|
3194
|
+
event.preventDefault();
|
|
3195
|
+
event.stopPropagation();
|
|
3196
|
+
this.close(true);
|
|
3197
|
+
return;
|
|
3198
|
+
}
|
|
3199
|
+
const menu = event.target?.closest("[role=\"menu\"]");
|
|
3200
|
+
if (menu) navigateMenuKey(event, menu);
|
|
3201
|
+
}
|
|
3202
|
+
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
3203
|
+
minVersion: "12.0.0",
|
|
3204
|
+
version: "22.2.3",
|
|
3205
|
+
ngImport: i0,
|
|
3206
|
+
type: MenuTriggerDirective,
|
|
3207
|
+
deps: [],
|
|
3208
|
+
target: i0.ɵɵFactoryTarget.Directive
|
|
3209
|
+
});
|
|
3210
|
+
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
3211
|
+
minVersion: "17.1.0",
|
|
3212
|
+
version: "22.2.3",
|
|
3213
|
+
type: MenuTriggerDirective,
|
|
3214
|
+
isStandalone: true,
|
|
3215
|
+
selector: "[bxMenuTrigger]",
|
|
3216
|
+
inputs: {
|
|
3217
|
+
bxMenuTrigger: {
|
|
3218
|
+
classPropertyName: "bxMenuTrigger",
|
|
3219
|
+
publicName: "bxMenuTrigger",
|
|
3220
|
+
isSignal: true,
|
|
3221
|
+
isRequired: true,
|
|
3222
|
+
transformFunction: null
|
|
3223
|
+
},
|
|
3224
|
+
menuOrigin: {
|
|
3225
|
+
classPropertyName: "menuOrigin",
|
|
3226
|
+
publicName: "menuOrigin",
|
|
3227
|
+
isSignal: true,
|
|
3228
|
+
isRequired: false,
|
|
3229
|
+
transformFunction: null
|
|
3230
|
+
},
|
|
3231
|
+
menuParent: {
|
|
3232
|
+
classPropertyName: "menuParent",
|
|
3233
|
+
publicName: "menuParent",
|
|
3234
|
+
isSignal: true,
|
|
3235
|
+
isRequired: false,
|
|
3236
|
+
transformFunction: null
|
|
3237
|
+
},
|
|
3238
|
+
menuSide: {
|
|
3239
|
+
classPropertyName: "menuSide",
|
|
3240
|
+
publicName: "menuSide",
|
|
3241
|
+
isSignal: true,
|
|
3242
|
+
isRequired: false,
|
|
3243
|
+
transformFunction: null
|
|
3244
|
+
},
|
|
3245
|
+
menuHover: {
|
|
3246
|
+
classPropertyName: "menuHover",
|
|
3247
|
+
publicName: "menuHover",
|
|
3248
|
+
isSignal: true,
|
|
3249
|
+
isRequired: false,
|
|
3250
|
+
transformFunction: null
|
|
3251
|
+
},
|
|
3252
|
+
menuLabel: {
|
|
3253
|
+
classPropertyName: "menuLabel",
|
|
3254
|
+
publicName: "menuLabel",
|
|
3255
|
+
isSignal: true,
|
|
3256
|
+
isRequired: false,
|
|
3257
|
+
transformFunction: null
|
|
3258
|
+
},
|
|
3259
|
+
menuPinned: {
|
|
3260
|
+
classPropertyName: "menuPinned",
|
|
3261
|
+
publicName: "menuPinned",
|
|
3262
|
+
isSignal: true,
|
|
3263
|
+
isRequired: false,
|
|
3264
|
+
transformFunction: null
|
|
3265
|
+
}
|
|
3266
|
+
},
|
|
3267
|
+
outputs: {
|
|
3268
|
+
menuOpened: "menuOpened",
|
|
3269
|
+
menuClosed: "menuClosed"
|
|
3270
|
+
},
|
|
3271
|
+
host: {
|
|
3272
|
+
listeners: {
|
|
3273
|
+
"click": "toggle($event)",
|
|
3274
|
+
"pointerleave": "scheduleClose()",
|
|
3275
|
+
"pointerenter": "onPointerEnter($event)",
|
|
3276
|
+
"keydown": "onKey($event)"
|
|
3277
|
+
},
|
|
3278
|
+
properties: {
|
|
3279
|
+
"attr.aria-haspopup": "\"menu\"",
|
|
3280
|
+
"attr.aria-expanded": "isOpen()",
|
|
3281
|
+
"attr.aria-controls": "overlayId()"
|
|
3282
|
+
}
|
|
3283
|
+
},
|
|
3284
|
+
exportAs: ["bxMenuTrigger"],
|
|
3285
|
+
ngImport: i0
|
|
3286
|
+
});
|
|
3287
|
+
};
|
|
3288
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
3289
|
+
minVersion: "12.0.0",
|
|
3290
|
+
version: "22.2.3",
|
|
3291
|
+
ngImport: i0,
|
|
3292
|
+
type: MenuTriggerDirective,
|
|
3293
|
+
decorators: [{
|
|
3294
|
+
type: Directive,
|
|
3295
|
+
args: [{
|
|
3296
|
+
selector: "[bxMenuTrigger]",
|
|
3297
|
+
exportAs: "bxMenuTrigger",
|
|
3298
|
+
host: {
|
|
3299
|
+
"[attr.aria-haspopup]": "\"menu\"",
|
|
3300
|
+
"[attr.aria-expanded]": "isOpen()",
|
|
3301
|
+
"[attr.aria-controls]": "overlayId()"
|
|
3302
|
+
}
|
|
3303
|
+
}]
|
|
3304
|
+
}],
|
|
3305
|
+
ctorParameters: () => [],
|
|
3306
|
+
propDecorators: {
|
|
3307
|
+
bxMenuTrigger: [{
|
|
3308
|
+
type: i0.Input,
|
|
3309
|
+
args: [{
|
|
3310
|
+
isSignal: true,
|
|
3311
|
+
alias: "bxMenuTrigger",
|
|
3312
|
+
required: true
|
|
3313
|
+
}]
|
|
3314
|
+
}],
|
|
3315
|
+
menuOrigin: [{
|
|
3316
|
+
type: i0.Input,
|
|
3317
|
+
args: [{
|
|
3318
|
+
isSignal: true,
|
|
3319
|
+
alias: "menuOrigin",
|
|
3320
|
+
required: false
|
|
3321
|
+
}]
|
|
3322
|
+
}],
|
|
3323
|
+
menuParent: [{
|
|
3324
|
+
type: i0.Input,
|
|
3325
|
+
args: [{
|
|
3326
|
+
isSignal: true,
|
|
3327
|
+
alias: "menuParent",
|
|
3328
|
+
required: false
|
|
3329
|
+
}]
|
|
3330
|
+
}],
|
|
3331
|
+
menuSide: [{
|
|
3332
|
+
type: i0.Input,
|
|
3333
|
+
args: [{
|
|
3334
|
+
isSignal: true,
|
|
3335
|
+
alias: "menuSide",
|
|
3336
|
+
required: false
|
|
3337
|
+
}]
|
|
3338
|
+
}],
|
|
3339
|
+
menuHover: [{
|
|
3340
|
+
type: i0.Input,
|
|
3341
|
+
args: [{
|
|
3342
|
+
isSignal: true,
|
|
3343
|
+
alias: "menuHover",
|
|
3344
|
+
required: false
|
|
3345
|
+
}]
|
|
3346
|
+
}],
|
|
3347
|
+
menuLabel: [{
|
|
3348
|
+
type: i0.Input,
|
|
3349
|
+
args: [{
|
|
3350
|
+
isSignal: true,
|
|
3351
|
+
alias: "menuLabel",
|
|
3352
|
+
required: false
|
|
3353
|
+
}]
|
|
3354
|
+
}],
|
|
3355
|
+
menuPinned: [{
|
|
3356
|
+
type: i0.Input,
|
|
3357
|
+
args: [{
|
|
3358
|
+
isSignal: true,
|
|
3359
|
+
alias: "menuPinned",
|
|
3360
|
+
required: false
|
|
3361
|
+
}]
|
|
3362
|
+
}],
|
|
3363
|
+
menuOpened: [{
|
|
3364
|
+
type: i0.Output,
|
|
3365
|
+
args: ["menuOpened"]
|
|
3366
|
+
}],
|
|
3367
|
+
menuClosed: [{
|
|
3368
|
+
type: i0.Output,
|
|
3369
|
+
args: ["menuClosed"]
|
|
3370
|
+
}],
|
|
3371
|
+
toggle: [{
|
|
3372
|
+
type: HostListener,
|
|
3373
|
+
args: ["click", ["$event"]]
|
|
3374
|
+
}],
|
|
3375
|
+
scheduleClose: [{
|
|
3376
|
+
type: HostListener,
|
|
3377
|
+
args: ["pointerleave"]
|
|
3378
|
+
}],
|
|
3379
|
+
onPointerEnter: [{
|
|
3380
|
+
type: HostListener,
|
|
3381
|
+
args: ["pointerenter", ["$event"]]
|
|
3382
|
+
}],
|
|
3383
|
+
onKey: [{
|
|
3384
|
+
type: HostListener,
|
|
3385
|
+
args: ["keydown", ["$event"]]
|
|
3386
|
+
}]
|
|
3387
|
+
}
|
|
3388
|
+
});
|
|
3389
|
+
export { BX_OVERLAY_CONTEXT, BxOverlayContextDirective, ContextMenuDirective, DropdownDirective, LoadingIndicator, LoadingSpinner, Menu, MenuCascadeService, MenuItem, MenuTriggerDirective, ProgressBar, Tab, TabContentDirective, Tabs, Tag, Tooltip, TooltipDirective, TruncateDirective, TruncatedTextPipe, navigateMenuKey, truncatedText };
|
|
2956
3390
|
|
|
2957
3391
|
//# sourceMappingURL=filip.mazev-blocks-primitives.mjs.map
|