@indigina/ui-kit 1.1.246 → 1.1.248
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.
|
@@ -4063,6 +4063,9 @@ const expandCollapseAnimation = (property) => trigger(`${property}ExpandCollapse
|
|
|
4063
4063
|
})),
|
|
4064
4064
|
]),
|
|
4065
4065
|
]);
|
|
4066
|
+
const isAbsoluteLink = (link) => {
|
|
4067
|
+
return /^https?:\/\//.test(link);
|
|
4068
|
+
};
|
|
4066
4069
|
|
|
4067
4070
|
class KitNavigationMenuService {
|
|
4068
4071
|
constructor() {
|
|
@@ -4097,6 +4100,7 @@ class KitNavigationMenuSubmenuComponent {
|
|
|
4097
4100
|
this.logoClicked = new EventEmitter();
|
|
4098
4101
|
this.KitSvgIcon = KitSvgIcon;
|
|
4099
4102
|
this.rootPath = '/';
|
|
4103
|
+
this.isAbsoluteLink = isAbsoluteLink;
|
|
4100
4104
|
}
|
|
4101
4105
|
handleClick(item) {
|
|
4102
4106
|
if (!item.expanded && this.menuItem?.items) {
|
|
@@ -4116,7 +4120,7 @@ class KitNavigationMenuSubmenuComponent {
|
|
|
4116
4120
|
return `${location?.origin}/` === url;
|
|
4117
4121
|
}
|
|
4118
4122
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitNavigationMenuSubmenuComponent, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4119
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: KitNavigationMenuSubmenuComponent, isStandalone: false, selector: "kit-navigation-menu-submenu", inputs: { menuItem: "menuItem", appsMenuItems: "appsMenuItems", logoPath: "logoPath" }, outputs: { logoClicked: "logoClicked" }, ngImport: i0, template: "<div class=\"kit-navigation-menu-submenu\">\n <div class=\"nav-logo\">\n <a class=\"nav-logo-link\"\n [routerLink]=\"rootPath\"\n (click)=\"logoClicked.emit()\">\n @if (logoPath) {\n <div class=\"logo-wrapper\">\n <img [src]=\"logoPath\" alt=\"Logo\"/>\n </div>\n } @else {\n <kit-svg-icon class=\"seko-icon\"\n [icon]=\"KitSvgIcon.SEKO\"\n ></kit-svg-icon>\n <kit-svg-icon class=\"seko-360-icon\"\n [icon]=\"KitSvgIcon.SEKO_360\"\n ></kit-svg-icon>\n }\n </a>\n </div>\n @if (appsMenuItems) {\n <div class=\"apps-menu\">\n @for (item of appsMenuItems; track item) {\n <a class=\"app-link\"\n [class.active]=\"isAppItemActive(item.url)\"\n [href]=\"item.url\">\n <span class=\"app-link-btn\">\n <kit-svg-icon class=\"app-link-icon\"\n [icon]=\"item.name.toLowerCase()\"\n ></kit-svg-icon>\n </span>\n <span class=\"app-link-title\">{{ item.name }}</span>\n </a>\n }\n </div>\n } @else {\n <div class=\"main-menu\">\n <div class=\"nav-title\">{{ menuItem?.title }}</div>\n <div class=\"nav-list\">\n @for (child of menuItem?.items; track child) {\n @if (!child.items?.length) {\n @if (child.link) {\n <a class=\"nav-link\"\n
|
|
4123
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: KitNavigationMenuSubmenuComponent, isStandalone: false, selector: "kit-navigation-menu-submenu", inputs: { menuItem: "menuItem", appsMenuItems: "appsMenuItems", logoPath: "logoPath" }, outputs: { logoClicked: "logoClicked" }, ngImport: i0, template: "<div class=\"kit-navigation-menu-submenu\">\n <div class=\"nav-logo\">\n <a class=\"nav-logo-link\"\n [routerLink]=\"rootPath\"\n (click)=\"logoClicked.emit()\">\n @if (logoPath) {\n <div class=\"logo-wrapper\">\n <img [src]=\"logoPath\" alt=\"Logo\"/>\n </div>\n } @else {\n <kit-svg-icon class=\"seko-icon\"\n [icon]=\"KitSvgIcon.SEKO\"\n ></kit-svg-icon>\n <kit-svg-icon class=\"seko-360-icon\"\n [icon]=\"KitSvgIcon.SEKO_360\"\n ></kit-svg-icon>\n }\n </a>\n </div>\n @if (appsMenuItems) {\n <div class=\"apps-menu\">\n @for (item of appsMenuItems; track item) {\n <a class=\"app-link\"\n [class.active]=\"isAppItemActive(item.url)\"\n [href]=\"item.url\">\n <span class=\"app-link-btn\">\n <kit-svg-icon class=\"app-link-icon\"\n [icon]=\"item.name.toLowerCase()\"\n ></kit-svg-icon>\n </span>\n <span class=\"app-link-title\">{{ item.name }}</span>\n </a>\n }\n </div>\n } @else {\n <div class=\"main-menu\">\n <div class=\"nav-title\">{{ menuItem?.title }}</div>\n <div class=\"nav-list\">\n @for (child of menuItem?.items; track child) {\n @if (!child.items?.length) {\n @if (child.link) {\n @if (isAbsoluteLink(child.link)) {\n <a class=\"nav-link\"\n routerLinkActive=\"active\"\n [href]=\"child.link\">\n {{ child.title }}\n </a>\n } @else {\n <a class=\"nav-link\"\n routerLinkActive=\"active\"\n [routerLink]=\"child.link\">\n {{ child.title }}\n </a>\n }\n }\n }\n\n @if (child.items?.length) {\n <a class=\"nav-link\"\n [class.expanded]=\"child.expanded\"\n (click)=\"handleClick(child)\">\n {{ child.title }}\n <kit-svg-icon class=\"toggle-icon\"\n [icon]=\"KitSvgIcon.CHEVRON_DOWN\"\n ></kit-svg-icon>\n </a>\n\n @if (child?.expanded) {\n <div @heightExpandCollapseAnimation\n class=\"nav-list\">\n @for (subChild of child.items; track subChild) {\n @if (subChild.link) {\n @if (isAbsoluteLink(subChild.link)) {\n <a class=\"child-link\"\n routerLinkActive=\"active\"\n [href]=\"subChild.link\">\n {{ subChild.title }}\n </a>\n } @else {\n <a class=\"child-link\"\n routerLinkActive=\"active\"\n [routerLink]=\"subChild.link\">\n {{ subChild.title }}\n </a> \n }\n }\n }\n </div>\n }\n }\n }\n </div>\n </div>\n }\n</div>\n", styles: [".kit-navigation-menu-submenu{padding:0 15px;width:200px;height:100vh;color:var(--ui-kit-color-grey-10);box-sizing:border-box;border-right:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-white);overflow-y:auto;scrollbar-width:none}.kit-navigation-menu-submenu::-webkit-scrollbar{display:none}.kit-navigation-menu-submenu .nav-logo{position:sticky;top:0;padding:20px 5px;border-bottom:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-white);height:var(--ui-kit-header-height, 86px);box-sizing:border-box;display:flex;justify-content:center;align-items:center;z-index:1}.kit-navigation-menu-submenu .nav-logo-link{display:flex;align-items:center;gap:5px;height:100%;margin:auto;overflow:hidden}.kit-navigation-menu-submenu .nav-logo .logo-wrapper{width:100%;height:100%}.kit-navigation-menu-submenu .nav-logo .seko-icon{width:97px;height:29px}.kit-navigation-menu-submenu .nav-logo .seko-360-icon{height:20px;width:59px;fill:var(--ui-kit-color-main)}.kit-navigation-menu-submenu .apps-menu{display:flex;flex-direction:column;gap:15px;padding:15px 0}.kit-navigation-menu-submenu .app-link{display:flex;flex-direction:column;align-items:center;padding:20px;gap:20px;border-radius:8px;border:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-13);text-decoration:none}.kit-navigation-menu-submenu .app-link:not(.active):hover{border-color:var(--ui-kit-color-grey-12);background:var(--ui-kit-color-grey-11)}.kit-navigation-menu-submenu .app-link:not(.active):hover .app-link-title{border-color:var(--ui-kit-color-grey-12)}.kit-navigation-menu-submenu .app-link-btn{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:8px;background:var(--ui-kit-color-white);box-shadow:0 4px 6px #0000000d,0 10px 15px #0000001a}.kit-navigation-menu-submenu .app-link-icon{width:32px;height:32px;fill:var(--ui-kit-color-main);stroke:none}.kit-navigation-menu-submenu .app-link-title{display:flex;justify-content:center;padding-top:10px;width:100%;color:var(--ui-kit-color-grey-10);border-top:1px solid var(--ui-kit-color-grey-11);font-size:14px;font-weight:500;text-transform:uppercase}.kit-navigation-menu-submenu .app-link.active{cursor:default;pointer-events:none}.kit-navigation-menu-submenu .app-link.active .app-link-btn{background:var(--ui-kit-color-main)}.kit-navigation-menu-submenu .app-link.active .app-link-icon{fill:var(--ui-kit-color-white)}.kit-navigation-menu-submenu .nav-title{padding:15px 0;font-size:18px;font-weight:600}.kit-navigation-menu-submenu .nav-list{display:flex;flex-direction:column;gap:5px;overflow:hidden}.kit-navigation-menu-submenu .nav-link{display:flex;align-items:center;gap:8px;padding:10px 0;color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:500;text-decoration:none;line-height:20px;cursor:pointer}.kit-navigation-menu-submenu .nav-link .toggle-icon{width:16px;height:16px;fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-navigation-menu-submenu .nav-link:hover,.kit-navigation-menu-submenu .nav-link.active{color:var(--ui-kit-color-main)}.kit-navigation-menu-submenu .nav-link.active{pointer-events:none}.kit-navigation-menu-submenu .nav-link.expanded{color:var(--ui-kit-color-main)}.kit-navigation-menu-submenu .nav-link.expanded .toggle-icon{stroke:var(--ui-kit-color-main);transform:rotate(180deg)}.kit-navigation-menu-submenu .child-link{display:flex;align-items:center;gap:12px;position:relative;padding:10px 20px;color:var(--ui-kit-color-grey-14);font-size:14px;font-weight:400;border-radius:8px;line-height:20px;text-decoration:none}.kit-navigation-menu-submenu .child-link:hover{background:var(--ui-kit-color-grey-11)}.kit-navigation-menu-submenu .child-link.active{pointer-events:none}.kit-navigation-menu-submenu .child-link.active:before{content:\"\";position:absolute;left:0;width:7px;height:7px;border-radius:2px;background:var(--ui-kit-color-main)}.kit-navigation-menu-submenu .child-link.active:hover{background:none}\n"], dependencies: [{ kind: "directive", type: i1$7.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$7.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }], animations: [
|
|
4120
4124
|
expandCollapseAnimation('height'),
|
|
4121
4125
|
], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
4122
4126
|
}
|
|
@@ -4124,7 +4128,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
|
|
|
4124
4128
|
type: Component,
|
|
4125
4129
|
args: [{ selector: 'kit-navigation-menu-submenu', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
|
|
4126
4130
|
expandCollapseAnimation('height'),
|
|
4127
|
-
], standalone: false, template: "<div class=\"kit-navigation-menu-submenu\">\n <div class=\"nav-logo\">\n <a class=\"nav-logo-link\"\n [routerLink]=\"rootPath\"\n (click)=\"logoClicked.emit()\">\n @if (logoPath) {\n <div class=\"logo-wrapper\">\n <img [src]=\"logoPath\" alt=\"Logo\"/>\n </div>\n } @else {\n <kit-svg-icon class=\"seko-icon\"\n [icon]=\"KitSvgIcon.SEKO\"\n ></kit-svg-icon>\n <kit-svg-icon class=\"seko-360-icon\"\n [icon]=\"KitSvgIcon.SEKO_360\"\n ></kit-svg-icon>\n }\n </a>\n </div>\n @if (appsMenuItems) {\n <div class=\"apps-menu\">\n @for (item of appsMenuItems; track item) {\n <a class=\"app-link\"\n [class.active]=\"isAppItemActive(item.url)\"\n [href]=\"item.url\">\n <span class=\"app-link-btn\">\n <kit-svg-icon class=\"app-link-icon\"\n [icon]=\"item.name.toLowerCase()\"\n ></kit-svg-icon>\n </span>\n <span class=\"app-link-title\">{{ item.name }}</span>\n </a>\n }\n </div>\n } @else {\n <div class=\"main-menu\">\n <div class=\"nav-title\">{{ menuItem?.title }}</div>\n <div class=\"nav-list\">\n @for (child of menuItem?.items; track child) {\n @if (!child.items?.length) {\n @if (child.link) {\n <a class=\"nav-link\"\n
|
|
4131
|
+
], standalone: false, template: "<div class=\"kit-navigation-menu-submenu\">\n <div class=\"nav-logo\">\n <a class=\"nav-logo-link\"\n [routerLink]=\"rootPath\"\n (click)=\"logoClicked.emit()\">\n @if (logoPath) {\n <div class=\"logo-wrapper\">\n <img [src]=\"logoPath\" alt=\"Logo\"/>\n </div>\n } @else {\n <kit-svg-icon class=\"seko-icon\"\n [icon]=\"KitSvgIcon.SEKO\"\n ></kit-svg-icon>\n <kit-svg-icon class=\"seko-360-icon\"\n [icon]=\"KitSvgIcon.SEKO_360\"\n ></kit-svg-icon>\n }\n </a>\n </div>\n @if (appsMenuItems) {\n <div class=\"apps-menu\">\n @for (item of appsMenuItems; track item) {\n <a class=\"app-link\"\n [class.active]=\"isAppItemActive(item.url)\"\n [href]=\"item.url\">\n <span class=\"app-link-btn\">\n <kit-svg-icon class=\"app-link-icon\"\n [icon]=\"item.name.toLowerCase()\"\n ></kit-svg-icon>\n </span>\n <span class=\"app-link-title\">{{ item.name }}</span>\n </a>\n }\n </div>\n } @else {\n <div class=\"main-menu\">\n <div class=\"nav-title\">{{ menuItem?.title }}</div>\n <div class=\"nav-list\">\n @for (child of menuItem?.items; track child) {\n @if (!child.items?.length) {\n @if (child.link) {\n @if (isAbsoluteLink(child.link)) {\n <a class=\"nav-link\"\n routerLinkActive=\"active\"\n [href]=\"child.link\">\n {{ child.title }}\n </a>\n } @else {\n <a class=\"nav-link\"\n routerLinkActive=\"active\"\n [routerLink]=\"child.link\">\n {{ child.title }}\n </a>\n }\n }\n }\n\n @if (child.items?.length) {\n <a class=\"nav-link\"\n [class.expanded]=\"child.expanded\"\n (click)=\"handleClick(child)\">\n {{ child.title }}\n <kit-svg-icon class=\"toggle-icon\"\n [icon]=\"KitSvgIcon.CHEVRON_DOWN\"\n ></kit-svg-icon>\n </a>\n\n @if (child?.expanded) {\n <div @heightExpandCollapseAnimation\n class=\"nav-list\">\n @for (subChild of child.items; track subChild) {\n @if (subChild.link) {\n @if (isAbsoluteLink(subChild.link)) {\n <a class=\"child-link\"\n routerLinkActive=\"active\"\n [href]=\"subChild.link\">\n {{ subChild.title }}\n </a>\n } @else {\n <a class=\"child-link\"\n routerLinkActive=\"active\"\n [routerLink]=\"subChild.link\">\n {{ subChild.title }}\n </a> \n }\n }\n }\n </div>\n }\n }\n }\n </div>\n </div>\n }\n</div>\n", styles: [".kit-navigation-menu-submenu{padding:0 15px;width:200px;height:100vh;color:var(--ui-kit-color-grey-10);box-sizing:border-box;border-right:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-white);overflow-y:auto;scrollbar-width:none}.kit-navigation-menu-submenu::-webkit-scrollbar{display:none}.kit-navigation-menu-submenu .nav-logo{position:sticky;top:0;padding:20px 5px;border-bottom:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-white);height:var(--ui-kit-header-height, 86px);box-sizing:border-box;display:flex;justify-content:center;align-items:center;z-index:1}.kit-navigation-menu-submenu .nav-logo-link{display:flex;align-items:center;gap:5px;height:100%;margin:auto;overflow:hidden}.kit-navigation-menu-submenu .nav-logo .logo-wrapper{width:100%;height:100%}.kit-navigation-menu-submenu .nav-logo .seko-icon{width:97px;height:29px}.kit-navigation-menu-submenu .nav-logo .seko-360-icon{height:20px;width:59px;fill:var(--ui-kit-color-main)}.kit-navigation-menu-submenu .apps-menu{display:flex;flex-direction:column;gap:15px;padding:15px 0}.kit-navigation-menu-submenu .app-link{display:flex;flex-direction:column;align-items:center;padding:20px;gap:20px;border-radius:8px;border:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-13);text-decoration:none}.kit-navigation-menu-submenu .app-link:not(.active):hover{border-color:var(--ui-kit-color-grey-12);background:var(--ui-kit-color-grey-11)}.kit-navigation-menu-submenu .app-link:not(.active):hover .app-link-title{border-color:var(--ui-kit-color-grey-12)}.kit-navigation-menu-submenu .app-link-btn{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:8px;background:var(--ui-kit-color-white);box-shadow:0 4px 6px #0000000d,0 10px 15px #0000001a}.kit-navigation-menu-submenu .app-link-icon{width:32px;height:32px;fill:var(--ui-kit-color-main);stroke:none}.kit-navigation-menu-submenu .app-link-title{display:flex;justify-content:center;padding-top:10px;width:100%;color:var(--ui-kit-color-grey-10);border-top:1px solid var(--ui-kit-color-grey-11);font-size:14px;font-weight:500;text-transform:uppercase}.kit-navigation-menu-submenu .app-link.active{cursor:default;pointer-events:none}.kit-navigation-menu-submenu .app-link.active .app-link-btn{background:var(--ui-kit-color-main)}.kit-navigation-menu-submenu .app-link.active .app-link-icon{fill:var(--ui-kit-color-white)}.kit-navigation-menu-submenu .nav-title{padding:15px 0;font-size:18px;font-weight:600}.kit-navigation-menu-submenu .nav-list{display:flex;flex-direction:column;gap:5px;overflow:hidden}.kit-navigation-menu-submenu .nav-link{display:flex;align-items:center;gap:8px;padding:10px 0;color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:500;text-decoration:none;line-height:20px;cursor:pointer}.kit-navigation-menu-submenu .nav-link .toggle-icon{width:16px;height:16px;fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-navigation-menu-submenu .nav-link:hover,.kit-navigation-menu-submenu .nav-link.active{color:var(--ui-kit-color-main)}.kit-navigation-menu-submenu .nav-link.active{pointer-events:none}.kit-navigation-menu-submenu .nav-link.expanded{color:var(--ui-kit-color-main)}.kit-navigation-menu-submenu .nav-link.expanded .toggle-icon{stroke:var(--ui-kit-color-main);transform:rotate(180deg)}.kit-navigation-menu-submenu .child-link{display:flex;align-items:center;gap:12px;position:relative;padding:10px 20px;color:var(--ui-kit-color-grey-14);font-size:14px;font-weight:400;border-radius:8px;line-height:20px;text-decoration:none}.kit-navigation-menu-submenu .child-link:hover{background:var(--ui-kit-color-grey-11)}.kit-navigation-menu-submenu .child-link.active{pointer-events:none}.kit-navigation-menu-submenu .child-link.active:before{content:\"\";position:absolute;left:0;width:7px;height:7px;border-radius:2px;background:var(--ui-kit-color-main)}.kit-navigation-menu-submenu .child-link.active:hover{background:none}\n"] }]
|
|
4128
4132
|
}], ctorParameters: () => [{ type: Document, decorators: [{
|
|
4129
4133
|
type: Inject,
|
|
4130
4134
|
args: [DOCUMENT]
|
|
@@ -4157,6 +4161,7 @@ class KitNavigationMenuComponent {
|
|
|
4157
4161
|
this.KitSvgIcon = KitSvgIcon;
|
|
4158
4162
|
this.KitSvgIconType = KitSvgIconType;
|
|
4159
4163
|
this.KitTooltipPosition = KitTooltipPosition;
|
|
4164
|
+
this.isAbsoluteLink = isAbsoluteLink;
|
|
4160
4165
|
this.setExpandedStateOnRouterChange();
|
|
4161
4166
|
}
|
|
4162
4167
|
ngOnInit() {
|
|
@@ -4228,7 +4233,7 @@ class KitNavigationMenuComponent {
|
|
|
4228
4233
|
this.kitNavigationMenuService.setSelectedState(!!this.selectedItem()?.items, !!this.selectedAppsItems());
|
|
4229
4234
|
}
|
|
4230
4235
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitNavigationMenuComponent, deps: [{ token: i1$7.Router }, { token: KitNavigationMenuService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4231
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: KitNavigationMenuComponent, isStandalone: false, selector: "kit-navigation-menu", inputs: { menuItems: { classPropertyName: "menuItems", publicName: "menuItems", isSignal: true, isRequired: false, transformFunction: null }, appsMenuItems: { classPropertyName: "appsMenuItems", publicName: "appsMenuItems", isSignal: true, isRequired: false, transformFunction: null }, logoPath: { classPropertyName: "logoPath", publicName: "logoPath", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { menuItems: "menuItemsChange" }, ngImport: i0, template: "<div class=\"kit-navigation-menu\"\n [class.collapsed]=\"collapsed()\">\n <div class=\"main-panel\">\n @if (appsMenuItems().length > 1) {\n <button class=\"app-btn\"\n [class.active]=\"selectedAppsItems() && !collapsed()\"\n (click)=\"onAppsMenuButtonClick()\">\n <kit-svg-icon class=\"app-btn-icon\"\n [icon]=\"KitSvgIcon.FOUR_SQUARE\"\n ></kit-svg-icon>\n </button>\n }\n <div class=\"nav-list\">\n @for (item of menuItems(); track $index) {\n @if (item.items?.length) {\n <a class=\"nav-link\"\n kitTooltip\n kitTooltipFilter=\".nav-link\"\n [kitTooltipPosition]=\"KitTooltipPosition.RIGHT\"\n [title]=\"item.title\"\n [class.active]=\"item.active\"\n (click)=\"handleClick(item)\">\n @if (item.icon) {\n <ng-container *ngTemplateOutlet=\"linkIconTemplate; context: { $implicit: item }\"\n ></ng-container>\n }\n </a>\n } @else {\n @if (item.link) {\n <a class=\"nav-link\"\n
|
|
4236
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: KitNavigationMenuComponent, isStandalone: false, selector: "kit-navigation-menu", inputs: { menuItems: { classPropertyName: "menuItems", publicName: "menuItems", isSignal: true, isRequired: false, transformFunction: null }, appsMenuItems: { classPropertyName: "appsMenuItems", publicName: "appsMenuItems", isSignal: true, isRequired: false, transformFunction: null }, logoPath: { classPropertyName: "logoPath", publicName: "logoPath", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { menuItems: "menuItemsChange" }, ngImport: i0, template: "<div class=\"kit-navigation-menu\"\n [class.collapsed]=\"collapsed()\">\n <div class=\"main-panel\">\n @if (appsMenuItems().length > 1) {\n <button class=\"app-btn\"\n [class.active]=\"selectedAppsItems() && !collapsed()\"\n (click)=\"onAppsMenuButtonClick()\">\n <kit-svg-icon class=\"app-btn-icon\"\n [icon]=\"KitSvgIcon.FOUR_SQUARE\"\n ></kit-svg-icon>\n </button>\n }\n <div class=\"nav-list\">\n @for (item of menuItems(); track $index) {\n @if (item.items?.length) {\n <a class=\"nav-link\"\n kitTooltip\n kitTooltipFilter=\".nav-link\"\n [kitTooltipPosition]=\"KitTooltipPosition.RIGHT\"\n [title]=\"item.title\"\n [class.active]=\"item.active\"\n (click)=\"handleClick(item)\">\n @if (item.icon) {\n <ng-container *ngTemplateOutlet=\"linkIconTemplate; context: { $implicit: item }\"\n ></ng-container>\n }\n </a>\n } @else {\n @if (item.link) {\n @if (isAbsoluteLink(item.link)) {\n <a class=\"nav-link\"\n routerLinkActive=\"active\"\n kitTooltip\n kitTooltipFilter=\".nav-link\"\n [kitTooltipPosition]=\"KitTooltipPosition.RIGHT\"\n [title]=\"item.title\"\n [href]=\"item.link\"\n (click)=\"handleClick(item)\">\n @if (item.icon) {\n <ng-container *ngTemplateOutlet=\"linkIconTemplate; context: { $implicit: item }\"\n ></ng-container>\n }\n </a>\n } @else {\n <a class=\"nav-link\"\n routerLinkActive=\"active\"\n kitTooltip\n kitTooltipFilter=\".nav-link\"\n [kitTooltipPosition]=\"KitTooltipPosition.RIGHT\"\n [title]=\"item.title\"\n [routerLink]=\"item.link\"\n (click)=\"handleClick(item)\">\n @if (item.icon) {\n <ng-container *ngTemplateOutlet=\"linkIconTemplate; context: { $implicit: item }\"\n ></ng-container>\n }\n </a> \n }\n }\n }\n }\n </div>\n </div>\n\n @if (!collapsed() && (selectedItem()?.items || selectedAppsItems())) {\n <kit-navigation-menu-submenu class=\"sub-panel\"\n [@widthExpandCollapseAnimation]\n [menuItem]=\"selectedItem()\"\n [appsMenuItems]=\"selectedAppsItems()\"\n [logoPath]=\"logoPath\"\n (logoClicked)=\"handleLogoClick()\"\n ></kit-navigation-menu-submenu>\n }\n\n <ng-template #linkIconTemplate let-item>\n <kit-svg-icon class=\"nav-link-icon\"\n [icon]=\"item.icon\"\n [ngClass]=\"item?.iconType ?? KitSvgIconType.FILL\"\n ></kit-svg-icon>\n </ng-template>\n</div>\n", styles: [".kit-navigation-menu{display:flex;height:100%}.kit-navigation-menu .app-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:none;border-radius:8px;cursor:pointer}.kit-navigation-menu .app-btn-icon{width:16px;height:16px;fill:var(--ui-kit-color-white);stroke:var(--ui-kit-color-white)}.kit-navigation-menu .app-btn:hover{background:var(--ui-kit-color-grey-14)}.kit-navigation-menu .app-btn.active{background:var(--ui-kit-color-main)}.kit-navigation-menu .main-panel{display:flex;flex-direction:column;padding:25px 10px;width:56px;box-sizing:border-box}.kit-navigation-menu .main-panel:has(.app-btn){gap:46px}.kit-navigation-menu .main-panel:has(.app-btn) .nav-list{margin-top:0}.kit-navigation-menu .sub-panel{display:block;width:200px;overflow:hidden}.kit-navigation-menu .nav-list{display:flex;flex-direction:column;gap:30px;margin-top:82px}.kit-navigation-menu .nav-link{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;cursor:pointer}.kit-navigation-menu .nav-link:hover{background:var(--ui-kit-color-grey-14)}.kit-navigation-menu .nav-link.active{background:var(--ui-kit-color-main)}.kit-navigation-menu .nav-link-icon{display:block;width:16px;height:16px;flex-shrink:0}.kit-navigation-menu .nav-link-icon.fill{fill:var(--ui-kit-color-white);stroke:none}.kit-navigation-menu .nav-link-icon.stroke{fill:none;stroke:var(--ui-kit-color-white)}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }, { kind: "directive", type: i1$7.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$7.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: KitNavigationMenuSubmenuComponent, selector: "kit-navigation-menu-submenu", inputs: ["menuItem", "appsMenuItems", "logoPath"], outputs: ["logoClicked"] }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible"] }], animations: [
|
|
4232
4237
|
expandCollapseAnimation('width'),
|
|
4233
4238
|
], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
4234
4239
|
}
|
|
@@ -4236,7 +4241,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
|
|
|
4236
4241
|
type: Component,
|
|
4237
4242
|
args: [{ selector: 'kit-navigation-menu', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
|
|
4238
4243
|
expandCollapseAnimation('width'),
|
|
4239
|
-
], standalone: false, template: "<div class=\"kit-navigation-menu\"\n [class.collapsed]=\"collapsed()\">\n <div class=\"main-panel\">\n @if (appsMenuItems().length > 1) {\n <button class=\"app-btn\"\n [class.active]=\"selectedAppsItems() && !collapsed()\"\n (click)=\"onAppsMenuButtonClick()\">\n <kit-svg-icon class=\"app-btn-icon\"\n [icon]=\"KitSvgIcon.FOUR_SQUARE\"\n ></kit-svg-icon>\n </button>\n }\n <div class=\"nav-list\">\n @for (item of menuItems(); track $index) {\n @if (item.items?.length) {\n <a class=\"nav-link\"\n kitTooltip\n kitTooltipFilter=\".nav-link\"\n [kitTooltipPosition]=\"KitTooltipPosition.RIGHT\"\n [title]=\"item.title\"\n [class.active]=\"item.active\"\n (click)=\"handleClick(item)\">\n @if (item.icon) {\n <ng-container *ngTemplateOutlet=\"linkIconTemplate; context: { $implicit: item }\"\n ></ng-container>\n }\n </a>\n } @else {\n @if (item.link) {\n <a class=\"nav-link\"\n
|
|
4244
|
+
], standalone: false, template: "<div class=\"kit-navigation-menu\"\n [class.collapsed]=\"collapsed()\">\n <div class=\"main-panel\">\n @if (appsMenuItems().length > 1) {\n <button class=\"app-btn\"\n [class.active]=\"selectedAppsItems() && !collapsed()\"\n (click)=\"onAppsMenuButtonClick()\">\n <kit-svg-icon class=\"app-btn-icon\"\n [icon]=\"KitSvgIcon.FOUR_SQUARE\"\n ></kit-svg-icon>\n </button>\n }\n <div class=\"nav-list\">\n @for (item of menuItems(); track $index) {\n @if (item.items?.length) {\n <a class=\"nav-link\"\n kitTooltip\n kitTooltipFilter=\".nav-link\"\n [kitTooltipPosition]=\"KitTooltipPosition.RIGHT\"\n [title]=\"item.title\"\n [class.active]=\"item.active\"\n (click)=\"handleClick(item)\">\n @if (item.icon) {\n <ng-container *ngTemplateOutlet=\"linkIconTemplate; context: { $implicit: item }\"\n ></ng-container>\n }\n </a>\n } @else {\n @if (item.link) {\n @if (isAbsoluteLink(item.link)) {\n <a class=\"nav-link\"\n routerLinkActive=\"active\"\n kitTooltip\n kitTooltipFilter=\".nav-link\"\n [kitTooltipPosition]=\"KitTooltipPosition.RIGHT\"\n [title]=\"item.title\"\n [href]=\"item.link\"\n (click)=\"handleClick(item)\">\n @if (item.icon) {\n <ng-container *ngTemplateOutlet=\"linkIconTemplate; context: { $implicit: item }\"\n ></ng-container>\n }\n </a>\n } @else {\n <a class=\"nav-link\"\n routerLinkActive=\"active\"\n kitTooltip\n kitTooltipFilter=\".nav-link\"\n [kitTooltipPosition]=\"KitTooltipPosition.RIGHT\"\n [title]=\"item.title\"\n [routerLink]=\"item.link\"\n (click)=\"handleClick(item)\">\n @if (item.icon) {\n <ng-container *ngTemplateOutlet=\"linkIconTemplate; context: { $implicit: item }\"\n ></ng-container>\n }\n </a> \n }\n }\n }\n }\n </div>\n </div>\n\n @if (!collapsed() && (selectedItem()?.items || selectedAppsItems())) {\n <kit-navigation-menu-submenu class=\"sub-panel\"\n [@widthExpandCollapseAnimation]\n [menuItem]=\"selectedItem()\"\n [appsMenuItems]=\"selectedAppsItems()\"\n [logoPath]=\"logoPath\"\n (logoClicked)=\"handleLogoClick()\"\n ></kit-navigation-menu-submenu>\n }\n\n <ng-template #linkIconTemplate let-item>\n <kit-svg-icon class=\"nav-link-icon\"\n [icon]=\"item.icon\"\n [ngClass]=\"item?.iconType ?? KitSvgIconType.FILL\"\n ></kit-svg-icon>\n </ng-template>\n</div>\n", styles: [".kit-navigation-menu{display:flex;height:100%}.kit-navigation-menu .app-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:none;border-radius:8px;cursor:pointer}.kit-navigation-menu .app-btn-icon{width:16px;height:16px;fill:var(--ui-kit-color-white);stroke:var(--ui-kit-color-white)}.kit-navigation-menu .app-btn:hover{background:var(--ui-kit-color-grey-14)}.kit-navigation-menu .app-btn.active{background:var(--ui-kit-color-main)}.kit-navigation-menu .main-panel{display:flex;flex-direction:column;padding:25px 10px;width:56px;box-sizing:border-box}.kit-navigation-menu .main-panel:has(.app-btn){gap:46px}.kit-navigation-menu .main-panel:has(.app-btn) .nav-list{margin-top:0}.kit-navigation-menu .sub-panel{display:block;width:200px;overflow:hidden}.kit-navigation-menu .nav-list{display:flex;flex-direction:column;gap:30px;margin-top:82px}.kit-navigation-menu .nav-link{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;cursor:pointer}.kit-navigation-menu .nav-link:hover{background:var(--ui-kit-color-grey-14)}.kit-navigation-menu .nav-link.active{background:var(--ui-kit-color-main)}.kit-navigation-menu .nav-link-icon{display:block;width:16px;height:16px;flex-shrink:0}.kit-navigation-menu .nav-link-icon.fill{fill:var(--ui-kit-color-white);stroke:none}.kit-navigation-menu .nav-link-icon.stroke{fill:none;stroke:var(--ui-kit-color-white)}\n"] }]
|
|
4240
4245
|
}], ctorParameters: () => [{ type: i1$7.Router }, { type: KitNavigationMenuService }], propDecorators: { logoPath: [{
|
|
4241
4246
|
type: Input
|
|
4242
4247
|
}] } });
|
|
@@ -5959,8 +5964,10 @@ class KitCollapsedListComponent {
|
|
|
5959
5964
|
}
|
|
5960
5965
|
}
|
|
5961
5966
|
selectionChange(item) {
|
|
5962
|
-
this.
|
|
5963
|
-
|
|
5967
|
+
if (!this.disableActions()) {
|
|
5968
|
+
this.setSelectedItem(item);
|
|
5969
|
+
this.onSelectItem.emit(item);
|
|
5970
|
+
}
|
|
5964
5971
|
}
|
|
5965
5972
|
initResizeObserver() {
|
|
5966
5973
|
this.resizeObserver = new ResizeObserver(() => this.resize());
|