aril 0.0.13 → 0.0.15
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/esm2022/http/lib/enums.mjs +3 -1
- package/esm2022/theme/layout/app/layout/app.layout.component.mjs +20 -4
- package/esm2022/theme/layout/app/menu/app.menu.component.mjs +13 -1
- package/esm2022/theme/layout/app/sidebar/app.sidebar.component.mjs +8 -4
- package/esm2022/theme/layout/service/app.layout.service.mjs +1 -1
- package/esm2022/theme/layout/service/app.menu.service.mjs +2 -1
- package/esm2022/ui/button/src/button.component.mjs +3 -3
- package/esm2022/ui/mask/src/mask.component.mjs +2 -2
- package/esm2022/ui/number/src/number.component.mjs +2 -2
- package/esm2022/ui/password/src/password.component.mjs +2 -2
- package/esm2022/ui/selectBox/src/select-box.component.mjs +3 -3
- package/esm2022/ui/table/src/table-column.component.mjs +1 -1
- package/esm2022/ui/text/src/text.component.mjs +2 -2
- package/esm2022/ui/tree/src/tree.component.mjs +3 -16
- package/esm2022/util/lib/src/interfaces.mjs +1 -1
- package/esm2022/util/lib/src/module-router.mjs +3 -2
- package/esm2022/util/lib/src/types.mjs +1 -1
- package/fesm2022/aril-http.mjs +2 -0
- package/fesm2022/aril-http.mjs.map +1 -1
- package/fesm2022/aril-theme-layout.mjs +38 -5
- package/fesm2022/aril-theme-layout.mjs.map +1 -1
- package/fesm2022/aril-ui-button.mjs +2 -2
- package/fesm2022/aril-ui-button.mjs.map +1 -1
- package/fesm2022/aril-ui-mask.mjs +1 -1
- package/fesm2022/aril-ui-mask.mjs.map +1 -1
- package/fesm2022/aril-ui-number.mjs +1 -1
- package/fesm2022/aril-ui-number.mjs.map +1 -1
- package/fesm2022/aril-ui-password.mjs +1 -1
- package/fesm2022/aril-ui-password.mjs.map +1 -1
- package/fesm2022/aril-ui-selectBox.mjs +2 -2
- package/fesm2022/aril-ui-selectBox.mjs.map +1 -1
- package/fesm2022/aril-ui-table.mjs.map +1 -1
- package/fesm2022/aril-ui-text.mjs +1 -1
- package/fesm2022/aril-ui-text.mjs.map +1 -1
- package/fesm2022/aril-ui-tree.mjs +2 -15
- package/fesm2022/aril-ui-tree.mjs.map +1 -1
- package/fesm2022/aril-util-lib.mjs +2 -1
- package/fesm2022/aril-util-lib.mjs.map +1 -1
- package/http/lib/enums.d.ts +3 -1
- package/package.json +1 -1
- package/styles/ui/ui.common.scss +24 -8
- package/theme/layout/app/layout/app.layout.component.d.ts +5 -2
- package/theme/layout/app/layout/app.layout.component.ts +30 -3
- package/theme/layout/app/menu/app.menu.component.d.ts +6 -0
- package/theme/layout/app/menu/app.menu.component.ts +10 -0
- package/theme/layout/app/menu/app.sub.menu.component.html +9 -0
- package/theme/layout/app/sidebar/app.sidebar.component.d.ts +3 -1
- package/theme/layout/app/sidebar/app.sidebar.component.html +8 -0
- package/theme/layout/app/sidebar/app.sidebar.component.ts +8 -5
- package/theme/layout/service/app.layout.service.ts +178 -178
- package/theme/layout/service/app.menu.service.d.ts +2 -0
- package/theme/layout/service/app.menu.service.ts +2 -0
- package/ui/button/src/button.component.d.ts +1 -1
- package/ui/mask/src/mask.component.d.ts +1 -1
- package/ui/number/src/number.component.d.ts +1 -1
- package/ui/password/src/password.component.d.ts +1 -1
- package/ui/text/src/text.component.d.ts +2 -2
- package/ui/tree/src/tree.component.d.ts +0 -3
- package/util/lib/src/interfaces.d.ts +3 -0
- package/util/lib/src/module-router.d.ts +1 -1
- package/util/lib/src/types.d.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril-theme-layout.mjs","sources":["../../projects/aril/theme/layout/service/app.menu.service.ts","../../projects/aril/theme/layout/service/app.layout.service.ts","../../projects/aril/theme/layout/app/menu/app.menu.component.ts","../../projects/aril/theme/layout/app/menu/app.menu.component.html","../../projects/aril/theme/layout/app/sidebar/app.sidebar.component.ts","../../projects/aril/theme/layout/app/sidebar/app.sidebar.component.html","../../projects/aril/theme/layout/app/breadcrumb/app.breadcrumb.component.ts","../../projects/aril/theme/layout/app/breadcrumb/app.breadcrumb.component.html","../../projects/aril/theme/layout/app/topbar/app.topbar.component.ts","../../projects/aril/theme/layout/app/topbar/app.topbar.component.html","../../projects/aril/theme/layout/app/profileSidebar/app.profilesidebar.component.ts","../../projects/aril/theme/layout/app/profileSidebar/app.profilesidebar.component.html","../../projects/aril/theme/layout/app/config/app.config.component.ts","../../projects/aril/theme/layout/app/config/app.config.component.html","../../projects/aril/theme/layout/app/layout/app.layout.component.ts","../../projects/aril/theme/layout/app/layout/app.layout.component.html","../../projects/aril/theme/layout/aril-theme-layout.ts"],"sourcesContent":["import { Injectable, signal } from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { MenuItem } from 'primeng/api';\n\nimport { MenuChangeEvent } from './menuchangeevent';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class MenuService {\n\tprivate menuSource = new Subject<MenuChangeEvent>();\n\tprivate resetSource = new Subject();\n\n\tpublic menuItems = signal<MenuItem[]>([]);\n\n\tmenuSource$ = this.menuSource.asObservable();\n\tresetSource$ = this.resetSource.asObservable();\n\n\tonMenuStateChange(event: MenuChangeEvent) {\n\t\tthis.menuSource.next(event);\n\t}\n\n\treset() {\n\t\tthis.resetSource.next(true);\n\t}\n}\n","import { Injectable, effect, signal } from '@angular/core';\n\nimport { Subject } from 'rxjs';\n\nexport type MenuMode = 'static' | 'overlay' | 'horizontal' | 'slim' | 'slim-plus' | 'reveal' | 'drawer';\n\nexport type ColorScheme = 'light' | 'dark' | 'dim';\n\nexport type MenuColorScheme = 'colorScheme' | 'primaryColor' | 'transparent';\n\nexport interface AppConfig {\n\tinputStyle: string;\n\tcolorScheme: ColorScheme;\n\ttheme: string;\n\tripple: boolean;\n\tmenuMode: MenuMode;\n\tscale: number;\n\tmenuTheme: MenuColorScheme;\n}\n\ninterface LayoutState {\n\tstaticMenuDesktopInactive: boolean;\n\toverlayMenuActive: boolean;\n\tprofileSidebarVisible: boolean;\n\tconfigSidebarVisible: boolean;\n\tstaticMenuMobileActive: boolean;\n\tmenuHoverActive: boolean;\n\tsidebarActive: boolean;\n\tanchored: boolean;\n}\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class LayoutService {\n\t_config: AppConfig = {\n\t\tripple: false,\n\t\tinputStyle: 'filled',\n\t\tmenuMode: 'horizontal',\n\t\tcolorScheme: 'light',\n\t\ttheme: 'indigo',\n\t\tscale: 12,\n\t\tmenuTheme: 'colorScheme'\n\t};\n\n\t// TODO: Set User Config\n\tconfig = signal<AppConfig>(this._config);\n\n\tstate: LayoutState = {\n\t\tstaticMenuDesktopInactive: false,\n\t\toverlayMenuActive: false,\n\t\tprofileSidebarVisible: false,\n\t\tconfigSidebarVisible: false,\n\t\tstaticMenuMobileActive: false,\n\t\tmenuHoverActive: false,\n\t\tsidebarActive: false,\n\t\tanchored: false\n\t};\n\n\tprivate configUpdate = new Subject<AppConfig>();\n\n\tprivate overlayOpen = new Subject<any>();\n\n\tconfigUpdate$ = this.configUpdate.asObservable();\n\n\toverlayOpen$ = this.overlayOpen.asObservable();\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tconst config = this.config();\n\t\t\tif (this.updateStyle(config)) {\n\t\t\t\tthis.changeTheme();\n\t\t\t}\n\t\t\tthis.changeScale(config.scale);\n\t\t\tthis.onConfigUpdate();\n\t\t});\n\t}\n\n\tupdateStyle(config: AppConfig) {\n\t\treturn config.theme !== this._config.theme || config.colorScheme !== this._config.colorScheme;\n\t}\n\n\tonMenuToggle() {\n\t\tif (this.isOverlay()) {\n\t\t\tthis.state.overlayMenuActive = !this.state.overlayMenuActive;\n\n\t\t\tif (this.state.overlayMenuActive) {\n\t\t\t\tthis.overlayOpen.next(null);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDesktop()) {\n\t\t\tthis.state.staticMenuDesktopInactive = !this.state.staticMenuDesktopInactive;\n\t\t} else {\n\t\t\tthis.state.staticMenuMobileActive = !this.state.staticMenuMobileActive;\n\n\t\t\tif (this.state.staticMenuMobileActive) {\n\t\t\t\tthis.overlayOpen.next(null);\n\t\t\t}\n\t\t}\n\t}\n\n\tonOverlaySubmenuOpen() {\n\t\tthis.overlayOpen.next(null);\n\t}\n\n\tshowProfileSidebar() {\n\t\tthis.state.profileSidebarVisible = true;\n\t}\n\n\tshowConfigSidebar() {\n\t\tthis.state.configSidebarVisible = true;\n\t}\n\n\tisOverlay() {\n\t\treturn this.config().menuMode === 'overlay';\n\t}\n\n\tisDesktop() {\n\t\treturn window.innerWidth > 991;\n\t}\n\n\tisSlim() {\n\t\treturn this.config().menuMode === 'slim';\n\t}\n\n\tisSlimPlus() {\n\t\treturn this.config().menuMode === 'slim-plus';\n\t}\n\n\tisHorizontal() {\n\t\treturn this.config().menuMode === 'horizontal';\n\t}\n\n\tisMobile() {\n\t\treturn !this.isDesktop();\n\t}\n\n\tonConfigUpdate() {\n\t\tthis._config = { ...this.config() };\n\t\tthis.configUpdate.next(this.config());\n\t}\n\n\tchangeTheme() {\n\t\tconst config = this.config();\n\t\tconst themeLink = <HTMLLinkElement>document.getElementById('theme-link');\n\t\tconst themeLinkHref = themeLink.getAttribute('href')!;\n\t\tconst newHref = themeLinkHref\n\t\t\t.split('/')\n\t\t\t.map((el) =>\n\t\t\t\tel == this._config.theme ? (el = config.theme)\n\t\t\t\t: el == `theme-${this._config.colorScheme}` ? (el = `theme-${config.colorScheme}`)\n\t\t\t\t: el\n\t\t\t)\n\t\t\t.join('/');\n\n\t\tthis.replaceThemeLink(newHref);\n\t}\n\n\treplaceThemeLink(href: string) {\n\t\tconst id = 'theme-link';\n\t\tlet themeLink = <HTMLLinkElement>document.getElementById(id);\n\t\tconst cloneLinkElement = <HTMLLinkElement>themeLink.cloneNode(true);\n\n\t\tcloneLinkElement.setAttribute('href', href);\n\t\tcloneLinkElement.setAttribute('id', id + '-clone');\n\n\t\tthemeLink.parentNode!.insertBefore(cloneLinkElement, themeLink.nextSibling);\n\t\tcloneLinkElement.addEventListener('load', () => {\n\t\t\tthemeLink.remove();\n\t\t\tcloneLinkElement.setAttribute('id', id);\n\t\t});\n\t}\n\n\tchangeScale(value: number) {\n\t\tdocument.documentElement.style.fontSize = `${value}px`;\n\t}\n}\n","import { NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n\tChangeDetectorRef,\n\tComponent,\n\tElementRef,\n\tHostBinding,\n\tInput,\n\tOnDestroy,\n\tOnInit,\n\tViewChild,\n\tinject\n} from '@angular/core';\nimport { NavigationEnd, Router, RouterLink, RouterLinkActive } from '@angular/router';\nimport { animate, state, style, transition, trigger, AnimationEvent } from '@angular/animations';\n\nimport { MenuItem } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { RippleModule } from 'primeng/ripple';\nimport { TooltipModule } from 'primeng/tooltip';\n\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { MenuService } from '../../service/app.menu.service';\nimport { LayoutService } from '../../service/app.layout.service';\n\n@Component({\n\tstandalone: true,\n\tselector: '[app-menuitem]',\n\ttemplate: `\n\t\t<ng-container>\n\t\t\t@if (root) {\n\t\t\t\t<div class=\"layout-menuitem-root-text\">\n\t\t\t\t\t{{ item.label }}\n\t\t\t\t</div>\n\t\t\t}\n\t\t\t@if (item.items?.length) {\n\t\t\t\t<a\n\t\t\t\t\t[attr.href]=\"item.url\"\n\t\t\t\t\t(click)=\"itemClick($event)\"\n\t\t\t\t\t(mouseenter)=\"onMouseEnter()\"\n\t\t\t\t\t[attr.target]=\"item.target\"\n\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\tpRipple\n\t\t\t\t\t[pTooltip]=\"item.label\"\n\t\t\t\t\t[tooltipDisabled]=\"!(isSlim && root && !active)\">\n\t\t\t\t\t<i [ngClass]=\"item.icon\" class=\"layout-menuitem-icon\"></i>\n\t\t\t\t\t<span class=\"layout-menuitem-text\">{{ item.label }}</span>\n\t\t\t\t\t@if (item.items) {\n\t\t\t\t\t\t<i class=\"pi pi-fw pi-angle-down layout-submenu-toggler\"></i>\n\t\t\t\t\t}\n\t\t\t\t</a>\n\t\t\t} @else {\n\t\t\t\t<a\n\t\t\t\t\t(click)=\"itemClick($event)\"\n\t\t\t\t\t(mouseenter)=\"onMouseEnter()\"\n\t\t\t\t\t[routerLink]=\"item.routerLink\"\n\t\t\t\t\trouterLinkActive=\"active-route\"\n\t\t\t\t\t[routerLinkActiveOptions]=\"\n\t\t\t\t\t\titem.routerLinkActiveOptions || {\n\t\t\t\t\t\t\tpaths: 'exact',\n\t\t\t\t\t\t\tqueryParams: 'ignored',\n\t\t\t\t\t\t\tmatrixParams: 'ignored',\n\t\t\t\t\t\t\tfragment: 'ignored'\n\t\t\t\t\t\t}\n\t\t\t\t\t\"\n\t\t\t\t\t[fragment]=\"item.fragment\"\n\t\t\t\t\t[queryParamsHandling]=\"item.queryParamsHandling\"\n\t\t\t\t\t[preserveFragment]=\"item.preserveFragment\"\n\t\t\t\t\t[skipLocationChange]=\"item.skipLocationChange\"\n\t\t\t\t\t[replaceUrl]=\"item.replaceUrl\"\n\t\t\t\t\t[state]=\"item.state\"\n\t\t\t\t\t[queryParams]=\"item.queryParams\"\n\t\t\t\t\t[attr.target]=\"item.target\"\n\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\tpRipple\n\t\t\t\t\t[pTooltip]=\"item.label\"\n\t\t\t\t\t[tooltipDisabled]=\"!(isSlim && root)\">\n\t\t\t\t\t<i [ngClass]=\"item.icon\" class=\"layout-menuitem-icon\"></i>\n\n\t\t\t\t\t<span class=\"layout-menuitem-text\">{{ item.label }}</span>\n\n\t\t\t\t\t@if (item.items) {\n\t\t\t\t\t\t<i class=\"pi pi-fw pi-angle-down layout-submenu-toggler\"></i>\n\t\t\t\t\t}\n\t\t\t\t</a>\n\t\t\t}\n\n\t\t\t@if (item.items) {\n\t\t\t\t<ul #submenu [@children]=\"submenuAnimation\" (@children.done)=\"onSubmenuAnimated($event)\">\n\t\t\t\t\t@for (child of item.items; track child; let i = $index) {\n\t\t\t\t\t\t<li app-menuitem [item]=\"child\" [index]=\"i\" [parentKey]=\"key\"></li>\n\t\t\t\t\t}\n\t\t\t\t</ul>\n\t\t\t}\n\t\t</ng-container>\n\t`,\n\timports: [NgClass, RouterLink, RouterLinkActive, NgTemplateOutlet, TooltipModule, RippleModule],\n\tanimations: [\n\t\ttrigger('children', [\n\t\t\tstate(\n\t\t\t\t'collapsed',\n\t\t\t\tstyle({\n\t\t\t\t\theight: '0'\n\t\t\t\t})\n\t\t\t),\n\t\t\tstate(\n\t\t\t\t'expanded',\n\t\t\t\tstyle({\n\t\t\t\t\theight: '*'\n\t\t\t\t})\n\t\t\t),\n\t\t\tstate(\n\t\t\t\t'hidden',\n\t\t\t\tstyle({\n\t\t\t\t\tdisplay: 'none'\n\t\t\t\t})\n\t\t\t),\n\t\t\tstate(\n\t\t\t\t'visible',\n\t\t\t\tstyle({\n\t\t\t\t\tdisplay: 'block'\n\t\t\t\t})\n\t\t\t),\n\t\t\ttransition('collapsed <=> expanded', animate('400ms cubic-bezier(0.86, 0, 0.07, 1)'))\n\t\t])\n\t]\n})\nexport class AppMenuItemComponent implements OnInit, OnDestroy {\n\t@Input() item!: MenuItem;\n\n\t@Input() index!: number;\n\n\t@Input() @HostBinding('class.layout-root-menuitem') root!: boolean;\n\n\t@Input() parentKey!: string;\n\n\t@ViewChild('submenu') submenu!: ElementRef;\n\n\tactive = false;\n\n\tmenuSourceSubscription: Subscription;\n\n\tmenuResetSubscription: Subscription;\n\n\tkey: string = '';\n\n\tconstructor(\n\t\tpublic layoutService: LayoutService,\n\t\tprivate cd: ChangeDetectorRef,\n\t\tpublic router: Router,\n\t\tprivate menuService: MenuService\n\t) {\n\t\tthis.menuSourceSubscription = this.menuService.menuSource$.subscribe((value) => {\n\t\t\tPromise.resolve(null).then(() => {\n\t\t\t\tif (value.routeEvent) {\n\t\t\t\t\tthis.active = value.key === this.key || value.key.startsWith(this.key + '-') ? true : false;\n\t\t\t\t} else {\n\t\t\t\t\tif (value.key !== this.key && !value.key.startsWith(this.key + '-')) {\n\t\t\t\t\t\tthis.active = false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\tthis.menuResetSubscription = this.menuService.resetSource$.subscribe(() => {\n\t\t\tthis.active = false;\n\t\t});\n\n\t\tthis.router.events.pipe(filter((event) => event instanceof NavigationEnd)).subscribe((params) => {\n\t\t\tif (this.isSlimPlus || this.isSlim || this.isHorizontal) {\n\t\t\t\tthis.active = false;\n\t\t\t} else {\n\t\t\t\tif (this.item.routerLink) {\n\t\t\t\t\tthis.updateActiveStateFromRoute();\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tngOnInit() {\n\t\tthis.key = this.parentKey ? this.parentKey + '-' + this.index : String(this.index);\n\n\t\tif (!(this.isSlimPlus || this.isSlim || this.isHorizontal) && this.item.routerLink) {\n\t\t\tthis.updateActiveStateFromRoute();\n\t\t}\n\t}\n\n\tngAfterViewChecked() {\n\t\tif (\n\t\t\tthis.root &&\n\t\t\tthis.active &&\n\t\t\tthis.layoutService.isDesktop() &&\n\t\t\t(this.layoutService.isHorizontal() || this.layoutService.isSlim() || this.layoutService.isSlimPlus())\n\t\t) {\n\t\t\tthis.calculatePosition(this.submenu?.nativeElement, this.submenu?.nativeElement.parentElement);\n\t\t}\n\t}\n\n\tupdateActiveStateFromRoute() {\n\t\tlet activeRoute = this.router.isActive(this.item.routerLink[0], {\n\t\t\tpaths: 'exact',\n\t\t\tqueryParams: 'ignored',\n\t\t\tmatrixParams: 'ignored',\n\t\t\tfragment: 'ignored'\n\t\t});\n\n\t\tif (activeRoute) {\n\t\t\tthis.menuService.onMenuStateChange({ key: this.key, routeEvent: true });\n\t\t}\n\t}\n\n\tonSubmenuAnimated(event: AnimationEvent) {\n\t\tif (\n\t\t\tevent.toState === 'visible' &&\n\t\t\tthis.layoutService.isDesktop() &&\n\t\t\t(this.layoutService.isHorizontal() || this.layoutService.isSlim() || this.layoutService.isSlimPlus())\n\t\t) {\n\t\t\tconst el = <HTMLUListElement>event.element;\n\t\t\tconst elParent = <HTMLUListElement>el.parentElement;\n\t\t\tthis.calculatePosition(el, elParent);\n\t\t}\n\t}\n\n\tcalculatePosition(overlay: HTMLElement, target: HTMLElement) {\n\t\tif (overlay) {\n\t\t\tconst { left, top } = target.getBoundingClientRect();\n\t\t\tconst [vWidth, vHeight] = [window.innerWidth, window.innerHeight];\n\t\t\tconst [oWidth, oHeight] = [overlay.offsetWidth, overlay.offsetHeight];\n\t\t\tconst scrollbarWidth = DomHandler.calculateScrollbarWidth();\n\t\t\t// reset\n\t\t\toverlay.style.top = '';\n\t\t\toverlay.style.left = '';\n\n\t\t\tif (this.layoutService.isHorizontal()) {\n\t\t\t\tconst width = left + oWidth + scrollbarWidth;\n\t\t\t\toverlay.style.left = vWidth < width ? `${left - (width - vWidth)}px` : `${left}px`;\n\t\t\t} else if (this.layoutService.isSlim() || this.layoutService.isSlimPlus()) {\n\t\t\t\tconst height = top + oHeight;\n\t\t\t\toverlay.style.top = vHeight < height ? `${top - (height - vHeight)}px` : `${top}px`;\n\t\t\t}\n\t\t}\n\t}\n\n\titemClick(event: Event) {\n\t\t// avoid processing disabled items\n\t\tif (this.item.disabled) {\n\t\t\tevent.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\t// navigate with hover\n\t\tif ((this.root && this.isSlim) || this.isHorizontal || this.isSlimPlus) {\n\t\t\tthis.layoutService.state.menuHoverActive = !this.layoutService.state.menuHoverActive;\n\t\t}\n\n\t\t// execute command\n\t\tif (this.item.command) {\n\t\t\tthis.item.command({ originalEvent: event, item: this.item });\n\t\t}\n\n\t\t// toggle active state\n\t\tif (this.item.items) {\n\t\t\tthis.active = !this.active;\n\n\t\t\tif (this.root && this.active && (this.isSlim || this.isHorizontal || this.isSlimPlus)) {\n\t\t\t\tthis.layoutService.onOverlaySubmenuOpen();\n\t\t\t}\n\t\t} else {\n\t\t\tif (this.layoutService.isMobile()) {\n\t\t\t\tthis.layoutService.state.staticMenuMobileActive = false;\n\t\t\t}\n\n\t\t\tif (this.isSlim || this.isHorizontal || this.isSlimPlus) {\n\t\t\t\tthis.menuService.reset();\n\t\t\t\tthis.layoutService.state.menuHoverActive = false;\n\t\t\t}\n\t\t}\n\n\t\tthis.menuService.onMenuStateChange({ key: this.key });\n\t}\n\n\tonMouseEnter() {\n\t\t// activate item on hover\n\t\tif (this.root && (this.isSlim || this.isHorizontal || this.isSlimPlus) && this.layoutService.isDesktop()) {\n\t\t\tif (this.layoutService.state.menuHoverActive) {\n\t\t\t\tthis.active = true;\n\t\t\t\tthis.menuService.onMenuStateChange({ key: this.key });\n\t\t\t}\n\t\t}\n\t}\n\n\tget submenuAnimation() {\n\t\tif (\n\t\t\tthis.layoutService.isDesktop() &&\n\t\t\t(this.layoutService.isHorizontal() || this.layoutService.isSlim() || this.layoutService.isSlimPlus())\n\t\t) {\n\t\t\treturn this.active ? 'visible' : 'hidden';\n\t\t} else\n\t\t\treturn (\n\t\t\t\tthis.root ? 'expanded'\n\t\t\t\t: this.active ? 'expanded'\n\t\t\t\t: 'collapsed'\n\t\t\t);\n\t}\n\n\tget isHorizontal() {\n\t\treturn this.layoutService.isHorizontal();\n\t}\n\n\tget isSlim() {\n\t\treturn this.layoutService.isSlim();\n\t}\n\n\tget isSlimPlus() {\n\t\treturn this.layoutService.isSlimPlus();\n\t}\n\n\t@HostBinding('class.active-menuitem')\n\tget activeClass() {\n\t\treturn this.active && !this.root;\n\t}\n\n\tngOnDestroy() {\n\t\tif (this.menuSourceSubscription) {\n\t\t\tthis.menuSourceSubscription.unsubscribe();\n\t\t}\n\n\t\tif (this.menuResetSubscription) {\n\t\t\tthis.menuResetSubscription.unsubscribe();\n\t\t}\n\t}\n}\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-menu',\n\timports: [AppMenuItemComponent],\n\ttemplateUrl: './app.menu.component.html'\n})\nexport class AppMenuComponent {\n\tmenuService = inject(MenuService);\n}\n","<ul class=\"layout-menu\">\n\t@for (item of menuService.menuItems(); track $index) {\n\t\t@if (item.separator) {\n\t\t\t<li class=\"menu-separator\"></li>\n\t\t} @else {\n\t\t\t<li app-menuitem [item]=\"item\" [index]=\"$index\" [root]=\"true\"></li>\n\t\t}\n\t}\n</ul>\n","import { RouterLink } from '@angular/router';\nimport { Component, ElementRef, ViewChild } from '@angular/core';\n\nimport { LayoutService } from '../../service/app.layout.service';\nimport { AppMenuComponent } from '../menu/app.menu.component';\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-sidebar',\n\timports: [RouterLink, AppMenuComponent],\n\ttemplateUrl: './app.sidebar.component.html'\n})\nexport class AppSidebarComponent {\n\ttimeout: any = null;\n\n\t@ViewChild('menuContainer') menuContainer!: ElementRef;\n\tconstructor(\n\t\tpublic layoutService: LayoutService,\n\t\tpublic el: ElementRef\n\t) {}\n\n\tonMouseEnter() {\n\t\tif (!this.layoutService.state.anchored) {\n\t\t\tif (this.timeout) {\n\t\t\t\tclearTimeout(this.timeout);\n\t\t\t\tthis.timeout = null;\n\t\t\t}\n\t\t\tthis.layoutService.state.sidebarActive = true;\n\t\t}\n\t}\n\n\tonMouseLeave() {\n\t\tif (!this.layoutService.state.anchored) {\n\t\t\tif (!this.timeout) {\n\t\t\t\tthis.timeout = setTimeout(() => (this.layoutService.state.sidebarActive = false), 300);\n\t\t\t}\n\t\t}\n\t}\n\n\tanchor() {\n\t\tthis.layoutService.state.anchored = !this.layoutService.state.anchored;\n\t}\n}\n","<div class=\"layout-sidebar\" (mouseenter)=\"onMouseEnter()\" (mouseleave)=\"onMouseLeave()\">\n\t<div class=\"sidebar-header\">\n\t\t<a [routerLink]=\"['/']\" class=\"app-logo\">\n\t\t\t<svg viewBox=\"0 0 124 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class=\"app-logo-normal\">\n\t\t\t\t<path\n\t\t\t\t\td=\"M10.4851 0L0 20.9465H3.53702L10.4856 6.07843L17.2944 20.9465H20.9715L10.4851 0Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M13.84 15.7927L16.2077 21.0016H11.7682L13.84 15.7927Z\" fill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M9.04645 21.0016L6.67875 15.7927L4.60701 21.0016H9.04645Z\" fill=\"var(--logo-color)\" />\n\t\t\t\t<path\n\t\t\t\t\td=\"M40.9033 14.5217H34.771L33.1753 18.0007H30.8467L37.9346 2.77661L44.772 18.0007H42.4062L40.9033 14.5217ZM40.022 12.49L37.8975 7.61938L35.6709 12.49H40.022Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t\t<path\n\t\t\t\t\td=\"M52.4927 12.1838V18.0007H50.3311V3.67651H52.7803C53.9802 3.67651 54.8862 3.76001 55.4985 3.927C56.117 4.09399 56.6613 4.40942 57.1314 4.87329C57.954 5.67733 58.3652 6.69165 58.3652 7.91626C58.3652 9.22746 57.9261 10.2665 57.0479 11.0334C56.1696 11.8004 54.9852 12.1838 53.4946 12.1838H52.4927ZM52.4927 10.1799H53.2998C55.2852 10.1799 56.2778 9.4161 56.2778 7.88843C56.2778 6.41024 55.2542 5.67114 53.207 5.67114H52.4927V10.1799Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t\t<path\n\t\t\t\t\td=\"M63.6367 10.7737C63.6367 8.75741 64.3758 7.02563 65.854 5.57837C67.326 4.1311 69.0949 3.40747 71.1607 3.40747C73.2017 3.40747 74.952 4.13729 76.4116 5.59692C77.8775 7.05656 78.6104 8.80998 78.6104 10.8572C78.6104 12.9167 77.8744 14.664 76.4024 16.0989C74.9242 17.54 73.1398 18.2605 71.0493 18.2605C69.2001 18.2605 67.5394 17.6204 66.0674 16.3401C64.447 14.9237 63.6367 13.0683 63.6367 10.7737ZM65.8169 10.8015C65.8169 12.3848 66.3488 13.6868 67.4126 14.7073C68.4702 15.7278 69.6918 16.238 71.0772 16.238C72.5801 16.238 73.848 15.7185 74.8809 14.6794C75.9138 13.628 76.4302 12.3477 76.4302 10.8386C76.4302 9.31095 75.9199 8.03068 74.8994 6.9978C73.8851 5.95874 72.6296 5.43921 71.1328 5.43921C69.6423 5.43921 68.3836 5.95874 67.357 6.9978C66.3303 8.0245 65.8169 9.2924 65.8169 10.8015Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M87.2495 3.67651V15.969H91.4615V18.0007H85.0879V3.67651H87.2495Z\" fill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M99.4327 3.67651V15.969H103.645V18.0007H97.271V3.67651H99.4327Z\" fill=\"var(--logo-color)\" />\n\t\t\t\t<path\n\t\t\t\t\td=\"M108.146 10.7737C108.146 8.75741 108.885 7.02563 110.363 5.57837C111.835 4.1311 113.604 3.40747 115.67 3.40747C117.711 3.40747 119.461 4.13729 120.921 5.59692C122.387 7.05656 123.12 8.80998 123.12 10.8572C123.12 12.9167 122.384 14.664 120.912 16.0989C119.433 17.54 117.649 18.2605 115.559 18.2605C113.709 18.2605 112.049 17.6204 110.577 16.3401C108.956 14.9237 108.146 13.0683 108.146 10.7737ZM110.326 10.8015C110.326 12.3848 110.858 13.6868 111.922 14.7073C112.98 15.7278 114.201 16.238 115.586 16.238C117.089 16.238 118.357 15.7185 119.39 14.6794C120.423 13.628 120.94 12.3477 120.94 10.8386C120.94 9.31095 120.429 8.03068 119.409 6.9978C118.394 5.95874 117.139 5.43921 115.642 5.43921C114.152 5.43921 112.893 5.95874 111.866 6.9978C110.84 8.0245 110.326 9.2924 110.326 10.8015Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t</svg>\n\t\t\t<svg\n\t\t\t\twidth=\"21\"\n\t\t\t\theight=\"22\"\n\t\t\t\tviewBox=\"0 0 21 22\"\n\t\t\t\tfill=\"none\"\n\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\tclass=\"app-logo-small\">\n\t\t\t\t<path\n\t\t\t\t\td=\"M10.4851 0L0 20.9465H3.53702L10.4856 6.07843L17.2944 20.9465H20.9715L10.4851 0Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M13.8399 15.793L16.2076 21.0019H11.7681L13.8399 15.793Z\" fill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M9.04637 21.0019L6.67867 15.793L4.60693 21.0019H9.04637Z\" fill=\"var(--logo-color)\" />\n\t\t\t</svg>\n\t\t</a>\n\t\t<button class=\"layout-sidebar-anchor p-link z-2 mb-2\" type=\"button\" (click)=\"anchor()\"></button>\n\t</div>\n\n\t<div #menuContainer class=\"layout-menu-container\">\n\t\t<app-menu></app-menu>\n\t</div>\n</div>\n","import { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { ActivatedRouteSnapshot, NavigationEnd, Router } from '@angular/router';\n\nimport { BehaviorSubject } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\ninterface Breadcrumb {\n\tlabel: string;\n\turl?: string;\n}\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-breadcrumb',\n\timports: [NgTemplateOutlet, AsyncPipe],\n\ttemplateUrl: './app.breadcrumb.component.html'\n})\nexport class AppBreadcrumbComponent {\n\tprivate readonly _breadcrumbs$ = new BehaviorSubject<Breadcrumb[]>([]);\n\n\treadonly breadcrumbs$ = this._breadcrumbs$.asObservable();\n\n\tconstructor(private router: Router) {\n\t\tthis.router.events.pipe(filter((event) => event instanceof NavigationEnd)).subscribe((event) => {\n\t\t\tconst root = this.router.routerState.snapshot.root;\n\t\t\tconst breadcrumbs: Breadcrumb[] = [];\n\t\t\tthis.addBreadcrumb(root, [], breadcrumbs);\n\n\t\t\tthis._breadcrumbs$.next(breadcrumbs);\n\t\t});\n\t}\n\n\tprivate addBreadcrumb(route: ActivatedRouteSnapshot, parentUrl: string[], breadcrumbs: Breadcrumb[]) {\n\t\tconst routeUrl = parentUrl.concat(route.url.map((url) => url.path));\n\t\tconst breadcrumb = route.data['breadcrumb'];\n\t\tconst parentBreadcrumb = route.parent && route.parent.data ? route.parent.data['breadcrumb'] : null;\n\n\t\tif (breadcrumb && breadcrumb !== parentBreadcrumb) {\n\t\t\tbreadcrumbs.push({\n\t\t\t\tlabel: route.data['breadcrumb'],\n\t\t\t\turl: '/' + routeUrl.join('/')\n\t\t\t});\n\t\t}\n\n\t\tif (route.firstChild) {\n\t\t\tthis.addBreadcrumb(route.firstChild, routeUrl, breadcrumbs);\n\t\t}\n\t}\n}\n","<nav class=\"layout-breadcrumb\">\n\t<ol>\n\t\t@for (item of breadcrumbs$ | async; track item; let last = $last) {\n\t\t\t<li>{{ item.label }}</li>\n\t\t\t@if (!last) {\n\t\t\t\t<li class=\"layout-breadcrumb-chevron\">/</li>\n\t\t\t}\n\t\t}\n\t</ol>\n</nav>\n","import { Component, ElementRef, ViewChild } from '@angular/core';\nimport { ButtonModule } from 'primeng/button';\n\nimport { LayoutService } from '../../service/app.layout.service';\nimport { AppBreadcrumbComponent } from '../breadcrumb/app.breadcrumb.component';\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-topbar',\n\timports: [ButtonModule, AppBreadcrumbComponent],\n\ttemplateUrl: './app.topbar.component.html'\n})\nexport class AppTopbarComponent {\n\t@ViewChild('menubutton') menuButton!: ElementRef;\n\n\tconstructor(public layoutService: LayoutService) {}\n\n\tonMenuButtonClick() {\n\t\tthis.layoutService.onMenuToggle();\n\t}\n\n\tonProfileButtonClick() {\n\t\tthis.layoutService.showProfileSidebar();\n\t}\n\tonConfigButtonClick() {\n\t\tthis.layoutService.showConfigSidebar();\n\t}\n}\n","<div class=\"layout-topbar\">\n\t<div class=\"topbar-start\">\n\t\t<button #menubutton type=\"button\" class=\"topbar-menubutton p-link p-trigger\" (click)=\"onMenuButtonClick()\">\n\t\t\t<i class=\"pi pi-bars\"></i>\n\t\t</button>\n\n\t\t<!-- <app-breadcrumb class=\"topbar-breadcrumb\"></app-breadcrumb> -->\n\t</div>\n\n\t<div class=\"topbar-end\">\n\t\t<ul class=\"topbar-menu\">\n\t\t\t<li class=\"topbar-search\">\n\t\t\t\t<span class=\"p-input-icon-left\">\n\t\t\t\t\t<i class=\"pi pi-search\"></i>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\tpInputText\n\t\t\t\t\t\tplaceholder=\"Search\"\n\t\t\t\t\t\tclass=\"p-inputtext p-component p-element w-12rem sm:w-full\" />\n\t\t\t\t</span>\n\t\t\t</li>\n\t\t\t<!-- <li class=\"ml-3\">\n\t\t\t\t<button\n\t\t\t\t\tpButton\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\ticon=\"pi pi-cog\"\n\t\t\t\t\tclass=\"p-button-text p-button-secondary p-button-rounded flex-shrink-0\"\n\t\t\t\t\t(click)=\"onConfigButtonClick()\"></button>\n\t\t\t</li> -->\n\t\t\t<li class=\"topbar-profile\">\n\t\t\t\t<button type=\"button\" class=\"p-link\" (click)=\"onProfileButtonClick()\">\n\t\t\t\t\t<img src=\"assets/images/avatar.png\" alt=\"Profile\" />\n\t\t\t\t</button>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n</div>\n","import { Component } from '@angular/core';\n\nimport { TagModule } from 'primeng/tag';\nimport { SidebarModule } from 'primeng/sidebar';\n\nimport { LayoutService } from '../../service/app.layout.service';\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-profilemenu',\n\timports: [SidebarModule, TagModule],\n\ttemplateUrl: './app.profilesidebar.component.html'\n})\nexport class AppProfileSidebarComponent {\n\tconstructor(public layoutService: LayoutService) {}\n\n\tget visible(): boolean {\n\t\treturn this.layoutService.state.profileSidebarVisible;\n\t}\n\n\tset visible(_val: boolean) {\n\t\tthis.layoutService.state.profileSidebarVisible = _val;\n\t}\n}\n","<p-sidebar\n\t[(visible)]=\"visible\"\n\tposition=\"right\"\n\t[transitionOptions]=\"'.3s cubic-bezier(0, 0, 0.2, 1)'\"\n\tstyleClass=\"layout-profile-sidebar w-full sm:w-25rem\">\n\t<div class=\"flex flex-column mx-auto md:mx-0\">\n\t\t<span class=\"mb-2 font-semibold\">Welcome</span>\n\t\t<span class=\"text-color-secondary font-medium mb-5\">Isabella Andolini</span>\n\n\t\t<ul class=\"list-none m-0 p-0\">\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-user text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Profile</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">Lorem ipsum date visale</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-user text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Billing</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">Amet mimin mıollit</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-cog text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Settings</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">Exercitation veniam</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-power-off text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Sign Out</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">Sed ut perspiciatis</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n\n\t<div class=\"flex flex-column mt-5 mx-auto md:mx-0\">\n\t\t<span class=\"mb-2 font-semibold\">Notifications</span>\n\t\t<span class=\"text-color-secondary font-medium mb-5\">You have 3 notifications</span>\n\n\t\t<ul class=\"list-none m-0 p-0\">\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-comment text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Your post has new comments</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">5 min ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-trash text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Your post has been deleted</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">15min ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-folder text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Post has been updated</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">3h ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n\n\t<div class=\"flex flex-column mt-5 mx-auto md:mx-0\">\n\t\t<span class=\"mb-2 font-semibold\">Messages</span>\n\t\t<span class=\"text-color-secondary font-medium mb-5\">You have new messages</span>\n\n\t\t<ul class=\"list-none m-0 p-0\">\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<img src=\"assets/demo/images/avatar/circle/avatar-m-8.png\" alt=\"Avatar\" class=\"w-2rem h-2rem\" />\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">James Robinson</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">10 min ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<p-tag value=\"3\" class=\"ml-auto\"></p-tag>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<img src=\"assets/demo/images/avatar/circle/avatar-f-8.png\" alt=\"Avatar\" class=\"w-2rem h-2rem\" />\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Mary Watson</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">15min ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<p-tag value=\"1\" class=\"ml-auto\"></p-tag>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<img src=\"assets/demo/images/avatar/circle/avatar-f-4.png\" alt=\"Avatar\" class=\"w-2rem h-2rem\" />\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Aisha Webb</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">3h ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<p-tag value=\"2\" class=\"ml-auto\"></p-tag>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n</p-sidebar>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { NgClass, NgStyle } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { SidebarModule } from 'primeng/sidebar';\nimport { RadioButtonModule } from 'primeng/radiobutton';\nimport { ButtonModule } from 'primeng/button';\nimport { InputSwitchModule } from 'primeng/inputswitch';\n\nimport { MenuService } from '../../service/app.menu.service';\nimport { ColorScheme, LayoutService, MenuColorScheme, MenuMode } from '../../service/app.layout.service';\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-config',\n\timports: [FormsModule, SidebarModule, RadioButtonModule, ButtonModule, InputSwitchModule, NgStyle, NgClass],\n\ttemplateUrl: './app.config.component.html'\n})\nexport class AppConfigComponent implements OnInit {\n\t@Input() minimal: boolean = false;\n\n\tcomponentThemes: any[] = [];\n\n\tscales: number[] = [12, 13, 14, 15, 16];\n\n\tconstructor(\n\t\tpublic layoutService: LayoutService,\n\t\tpublic menuService: MenuService\n\t) {}\n\n\tget visible(): boolean {\n\t\treturn this.layoutService.state.configSidebarVisible;\n\t}\n\tset visible(_val: boolean) {\n\t\tthis.layoutService.state.configSidebarVisible = _val;\n\t}\n\n\tget scale(): number {\n\t\treturn this.layoutService.config().scale;\n\t}\n\tset scale(_val: number) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tscale: _val\n\t\t}));\n\t}\n\n\tget menuMode(): MenuMode {\n\t\treturn this.layoutService.config().menuMode;\n\t}\n\tset menuMode(_val: MenuMode) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tmenuMode: _val\n\t\t}));\n\t\tif (this.layoutService.isSlimPlus() || this.layoutService.isSlim() || this.layoutService.isHorizontal()) {\n\t\t\tthis.menuService.reset();\n\t\t}\n\t}\n\n\tget colorScheme(): ColorScheme {\n\t\treturn this.layoutService.config().colorScheme;\n\t}\n\tset colorScheme(_val: ColorScheme) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tcolorScheme: _val\n\t\t}));\n\t}\n\n\tget inputStyle(): string {\n\t\treturn this.layoutService.config().inputStyle;\n\t}\n\tset inputStyle(_val: string) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tinputStyle: _val\n\t\t}));\n\t}\n\n\tget ripple(): boolean {\n\t\treturn this.layoutService.config().ripple;\n\t}\n\tset ripple(_val: boolean) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tripple: _val\n\t\t}));\n\t}\n\n\tget menuTheme(): MenuColorScheme {\n\t\treturn this.layoutService.config().menuTheme;\n\t}\n\tset menuTheme(_val: MenuColorScheme) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tmenuTheme: _val\n\t\t}));\n\t}\n\n\tget theme(): string {\n\t\treturn this.layoutService.config().theme;\n\t}\n\tset theme(_val: string) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\ttheme: _val\n\t\t}));\n\t}\n\n\tngOnInit() {\n\t\tthis.componentThemes = [\n\t\t\t{ name: 'indigo', color: '#6366F1' },\n\t\t\t{ name: 'blue', color: '#3B82F6' },\n\t\t\t{ name: 'purple', color: '#8B5CF6' },\n\t\t\t{ name: 'teal', color: '#14B8A6' },\n\t\t\t{ name: 'cyan', color: '#06b6d4' },\n\t\t\t{ name: 'green', color: '#10b981' },\n\t\t\t{ name: 'orange', color: '#f59e0b' },\n\t\t\t{ name: 'pink', color: '#d946ef' }\n\t\t];\n\t}\n\n\tonConfigButtonClick() {\n\t\tthis.layoutService.showConfigSidebar();\n\t}\n\n\tchangeColorScheme(colorScheme: ColorScheme) {\n\t\tthis.colorScheme = colorScheme;\n\t}\n\n\tchangeTheme(theme: string) {\n\t\tthis.theme = theme;\n\t}\n\n\tdecrementScale() {\n\t\tthis.scale--;\n\t}\n\n\tincrementScale() {\n\t\tthis.scale++;\n\t}\n}\n","<button class=\"layout-config-button p-link\" type=\"button\" (click)=\"onConfigButtonClick()\">\n\t<i class=\"pi pi-cog\"></i>\n</button>\n\n<p-sidebar\n\t[(visible)]=\"visible\"\n\tposition=\"right\"\n\t[transitionOptions]=\"'.3s cubic-bezier(0, 0, 0.2, 1)'\"\n\tstyleClass=\"layout-config-sidebar w-18rem\">\n\t<h5>Themes</h5>\n\t<div class=\"flex flex-wrap row-gap-3\">\n\t\t@for (theme of componentThemes; track theme) {\n\t\t\t<div class=\"w-3\">\n\t\t\t\t<button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclass=\"cursor-pointer p-link w-2rem h-2rem border-circle flex-shrink-0 flex align-items-center justify-content-center\"\n\t\t\t\t\t(click)=\"changeTheme(theme.name)\"\n\t\t\t\t\t[ngStyle]=\"{ 'background-color': theme.color }\">\n\t\t\t\t\t@if (theme.name == this.layoutService.config().theme) {\n\t\t\t\t\t\t<i class=\"pi pi-check text-white\"></i>\n\t\t\t\t\t}\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t}\n\t</div>\n\n\t<h5>Scale</h5>\n\t<div class=\"flex align-items-center\">\n\t\t<button\n\t\t\ticon=\"pi pi-minus\"\n\t\t\ttype=\"button\"\n\t\t\tpButton\n\t\t\t(click)=\"decrementScale()\"\n\t\t\tclass=\"p-button-text p-button-rounded w-2rem h-2rem mr-2\"\n\t\t\t[disabled]=\"scale === scales[0]\"></button>\n\t\t<div class=\"flex gap-2 align-items-center\">\n\t\t\t@for (s of scales; track s) {\n\t\t\t\t<i class=\"pi pi-circle-fill text-300\" [ngClass]=\"{ 'text-primary-500': s === scale }\"></i>\n\t\t\t}\n\t\t</div>\n\t\t<button\n\t\t\ticon=\"pi pi-plus\"\n\t\t\ttype=\"button\"\n\t\t\tpButton\n\t\t\t(click)=\"incrementScale()\"\n\t\t\tclass=\"p-button-text p-button-rounded w-2rem h-2rem ml-2\"\n\t\t\t[disabled]=\"scale === scales[scales.length - 1]\"></button>\n\t</div>\n\n\t@if (!minimal) {\n\t\t<h5>Menu Type</h5>\n\t\t<div class=\"flex flex-wrap row-gap-3\">\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"static\" [(ngModel)]=\"menuMode\" inputId=\"mode1\"></p-radioButton>\n\t\t\t\t<label for=\"mode1\">Static</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"overlay\" [(ngModel)]=\"menuMode\" inputId=\"mode2\"></p-radioButton>\n\t\t\t\t<label for=\"mode2\">Overlay</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"slim\" [(ngModel)]=\"menuMode\" inputId=\"mode3\"></p-radioButton>\n\t\t\t\t<label for=\"mode3\">Slim</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"slim-plus\" [(ngModel)]=\"menuMode\" inputId=\"mode4\"></p-radioButton>\n\t\t\t\t<label for=\"mode3\">Slim +</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"reveal\" [(ngModel)]=\"menuMode\" inputId=\"mode6\"></p-radioButton>\n\t\t\t\t<label for=\"mode5\">Reveal</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"drawer\" [(ngModel)]=\"menuMode\" inputId=\"mode7\"></p-radioButton>\n\t\t\t\t<label for=\"mode6\">Drawer</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"horizontal\" [(ngModel)]=\"menuMode\" inputId=\"mode5\"></p-radioButton>\n\t\t\t\t<label for=\"mode4\">Horizontal</label>\n\t\t\t</div>\n\t\t</div>\n\t\t<h5>Menu Theme</h5>\n\t\t<div class=\"field-radiobutton\">\n\t\t\t<p-radioButton\n\t\t\t\tname=\"menuTheme\"\n\t\t\t\tvalue=\"colorScheme\"\n\t\t\t\t[(ngModel)]=\"menuTheme\"\n\t\t\t\tinputId=\"menutheme-colorscheme\"></p-radioButton>\n\t\t\t<label for=\"menutheme-colorscheme\">Color Scheme</label>\n\t\t</div>\n\t\t<div class=\"field-radiobutton\">\n\t\t\t<p-radioButton\n\t\t\t\tname=\"menuTheme\"\n\t\t\t\tvalue=\"primaryColor\"\n\t\t\t\t[(ngModel)]=\"menuTheme\"\n\t\t\t\tinputId=\"menutheme-primarycolor\"></p-radioButton>\n\t\t\t<label for=\"menutheme-primarycolor\">Primary Color</label>\n\t\t</div>\n\t\t<div class=\"field-radiobutton\">\n\t\t\t<p-radioButton\n\t\t\t\tname=\"menuTheme\"\n\t\t\t\tvalue=\"transparent\"\n\t\t\t\t[(ngModel)]=\"menuTheme\"\n\t\t\t\tinputId=\"menutheme-transparent\"></p-radioButton>\n\t\t\t<label for=\"menutheme-transparent\">Transparent</label>\n\t\t</div>\n\t}\n\n\t<h5>Color Scheme</h5>\n\t<div class=\"field-radiobutton\">\n\t\t<p-radioButton name=\"colorScheme\" value=\"light\" [(ngModel)]=\"colorScheme\" inputId=\"mode-light\"></p-radioButton>\n\t\t<label for=\"mode-light\">Light</label>\n\t</div>\n\t<div class=\"field-radiobutton\">\n\t\t<p-radioButton name=\"colorScheme\" value=\"dim\" [(ngModel)]=\"colorScheme\" inputId=\"mode-dim\"></p-radioButton>\n\t\t<label for=\"mode-dim\">Dim</label>\n\t</div>\n\t<div class=\"field-radiobutton\">\n\t\t<p-radioButton name=\"colorScheme\" value=\"dark\" [(ngModel)]=\"colorScheme\" inputId=\"mode-dark\"></p-radioButton>\n\t\t<label for=\"mode-dark\">Dark</label>\n\t</div>\n\n\t@if (!minimal) {\n\t\t<h5>Input Style</h5>\n\t\t<div class=\"flex\">\n\t\t\t<div class=\"field-radiobutton flex-1\">\n\t\t\t\t<p-radioButton\n\t\t\t\t\tname=\"inputStyle\"\n\t\t\t\t\tvalue=\"outlined\"\n\t\t\t\t\t[(ngModel)]=\"inputStyle\"\n\t\t\t\t\tinputId=\"outlined_input\"></p-radioButton>\n\t\t\t\t<label for=\"outlined_input\">Outlined</label>\n\t\t\t</div>\n\t\t\t<div class=\"field-radiobutton flex-1\">\n\t\t\t\t<p-radioButton name=\"inputStyle\" value=\"filled\" [(ngModel)]=\"inputStyle\" inputId=\"filled_input\"></p-radioButton>\n\t\t\t\t<label for=\"filled_input\">Filled</label>\n\t\t\t</div>\n\t\t</div>\n\t\t<h5>Ripple Effect</h5>\n\t\t<p-inputSwitch [(ngModel)]=\"ripple\"></p-inputSwitch>\n\t}\n</p-sidebar>\n","import { NgClass } from '@angular/common';\nimport { Component, OnDestroy, Renderer2, ViewChild, effect, input } from '@angular/core';\nimport { ActivatedRoute, NavigationEnd, Router, RouterOutlet } from '@angular/router';\n\nimport { MenuItem } from 'primeng/api';\nimport { filter, Subscription } from 'rxjs';\n\nimport { MenuService } from '../../service/app.menu.service';\nimport { AppSidebarComponent } from '../sidebar/app.sidebar.component';\nimport { AppTopbarComponent } from '../topbar/app.topbar.component';\nimport { AppBreadcrumbComponent } from '../breadcrumb/app.breadcrumb.component';\nimport { AppProfileSidebarComponent } from '../profileSidebar/app.profilesidebar.component';\nimport { LayoutService } from '../../service/app.layout.service';\nimport { AppConfigComponent } from '../config/app.config.component';\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-layout',\n\timports: [\n\t\tNgClass,\n\t\tRouterOutlet,\n\t\tAppSidebarComponent,\n\t\tAppTopbarComponent,\n\t\tAppBreadcrumbComponent,\n\t\tAppProfileSidebarComponent,\n\t\tAppConfigComponent\n\t],\n\ttemplateUrl: './app.layout.component.html'\n})\nexport class AppLayoutComponent implements OnDestroy {\n\tsidebarItems = input<MenuItem[]>([]);\n\n\toverlayMenuOpenSubscription: Subscription;\n\n\tmenuOutsideClickListener: any;\n\n\tmenuScrollListener: any;\n\n\t@ViewChild(AppSidebarComponent) appSidebar!: AppSidebarComponent;\n\n\t@ViewChild(AppTopbarComponent) appTopbar!: AppTopbarComponent;\n\n\tconstructor(\n\t\tprivate menuService: MenuService,\n\t\tpublic layoutService: LayoutService,\n\t\tpublic renderer: Renderer2,\n\t\tpublic router: Router,\n\t\tprivate route: ActivatedRoute\n\t) {\n\t\tthis.overlayMenuOpenSubscription = this.layoutService.overlayOpen$.subscribe(() => {\n\t\t\tif (!this.menuOutsideClickListener) {\n\t\t\t\tthis.menuOutsideClickListener = this.renderer.listen('document', 'click', (event) => {\n\t\t\t\t\tconst isOutsideClicked = !(\n\t\t\t\t\t\tthis.appSidebar.el.nativeElement.isSameNode(event.target) ||\n\t\t\t\t\t\tthis.appSidebar.el.nativeElement.contains(event.target) ||\n\t\t\t\t\t\tthis.appTopbar.menuButton.nativeElement.isSameNode(event.target) ||\n\t\t\t\t\t\tthis.appTopbar.menuButton.nativeElement.contains(event.target)\n\t\t\t\t\t);\n\t\t\t\t\tif (isOutsideClicked) {\n\t\t\t\t\t\tthis.hideMenu();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t(this.layoutService.isHorizontal() || this.layoutService.isSlim() || this.layoutService.isSlimPlus()) &&\n\t\t\t\t!this.menuScrollListener\n\t\t\t) {\n\t\t\t\tthis.menuScrollListener = this.renderer.listen(\n\t\t\t\t\tthis.appSidebar.menuContainer.nativeElement,\n\t\t\t\t\t'scroll',\n\t\t\t\t\t(event) => {\n\t\t\t\t\t\tif (this.layoutService.isDesktop()) {\n\t\t\t\t\t\t\tthis.hideMenu();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (this.layoutService.state.staticMenuMobileActive) {\n\t\t\t\tthis.blockBodyScroll();\n\t\t\t}\n\t\t});\n\n\t\tthis.router.events.pipe(filter((event) => event instanceof NavigationEnd)).subscribe(() => {\n\t\t\tthis.hideMenu();\n\t\t});\n\n\t\teffect(\n\t\t\t() => {\n\t\t\t\tthis.menuService.menuItems.set(this.sidebarItems());\n\t\t\t},\n\t\t\t{ allowSignalWrites: true }\n\t\t);\n\t}\n\n\tblockBodyScroll(): void {\n\t\tif (document.body.classList) {\n\t\t\tdocument.body.classList.add('blocked-scroll');\n\t\t} else {\n\t\t\tdocument.body.className += ' blocked-scroll';\n\t\t}\n\t}\n\n\tunblockBodyScroll(): void {\n\t\tif (document.body.classList) {\n\t\t\tdocument.body.classList.remove('blocked-scroll');\n\t\t} else {\n\t\t\tdocument.body.className = document.body.className.replace(\n\t\t\t\tnew RegExp('(^|\\\\b)' + 'blocked-scroll'.split(' ').join('|') + '(\\\\b|$)', 'gi'),\n\t\t\t\t' '\n\t\t\t);\n\t\t}\n\t}\n\n\thideMenu() {\n\t\tthis.layoutService.state.overlayMenuActive = false;\n\t\tthis.layoutService.state.staticMenuMobileActive = false;\n\t\tthis.layoutService.state.menuHoverActive = false;\n\t\tthis.menuService.reset();\n\n\t\tif (this.menuOutsideClickListener) {\n\t\t\tthis.menuOutsideClickListener();\n\t\t\tthis.menuOutsideClickListener = null;\n\t\t}\n\n\t\tif (this.menuScrollListener) {\n\t\t\tthis.menuScrollListener();\n\t\t\tthis.menuScrollListener = null;\n\t\t}\n\n\t\tthis.unblockBodyScroll();\n\t}\n\n\tget containerClass() {\n\t\treturn {\n\t\t\t'layout-light': this.layoutService.config().colorScheme === 'light',\n\t\t\t'layout-dim': this.layoutService.config().colorScheme === 'dim',\n\t\t\t'layout-dark': this.layoutService.config().colorScheme === 'dark',\n\t\t\t'layout-colorscheme-menu': this.layoutService.config().menuTheme === 'colorScheme',\n\t\t\t'layout-primarycolor-menu': this.layoutService.config().menuTheme === 'primaryColor',\n\t\t\t'layout-transparent-menu': this.layoutService.config().menuTheme === 'transparent',\n\t\t\t'layout-overlay': this.layoutService.config().menuMode === 'overlay',\n\t\t\t'layout-static': this.layoutService.config().menuMode === 'static',\n\t\t\t'layout-slim': this.layoutService.config().menuMode === 'slim',\n\t\t\t'layout-slim-plus': this.layoutService.config().menuMode === 'slim-plus',\n\t\t\t'layout-horizontal': this.layoutService.config().menuMode === 'horizontal',\n\t\t\t'layout-reveal': this.layoutService.config().menuMode === 'reveal',\n\t\t\t'layout-drawer': this.layoutService.config().menuMode === 'drawer',\n\t\t\t'layout-static-inactive':\n\t\t\t\tthis.layoutService.state.staticMenuDesktopInactive && this.layoutService.config().menuMode === 'static',\n\t\t\t'layout-overlay-active': this.layoutService.state.overlayMenuActive,\n\t\t\t'layout-mobile-active': this.layoutService.state.staticMenuMobileActive,\n\t\t\t'p-input-filled': this.layoutService.config().inputStyle === 'filled',\n\t\t\t'p-ripple-disabled': !this.layoutService.config().ripple,\n\t\t\t'layout-sidebar-active': this.layoutService.state.sidebarActive,\n\t\t\t'layout-sidebar-anchored': this.layoutService.state.anchored\n\t\t};\n\t}\n\n\tngOnDestroy() {\n\t\tif (this.overlayMenuOpenSubscription) {\n\t\t\tthis.overlayMenuOpenSubscription.unsubscribe();\n\t\t}\n\n\t\tif (this.menuOutsideClickListener) {\n\t\t\tthis.menuOutsideClickListener();\n\t\t}\n\t}\n}\n","<div class=\"layout-container\" [ngClass]=\"containerClass\">\n\t<app-sidebar></app-sidebar>\n\t<div class=\"layout-content-wrapper\">\n\t\t<app-topbar></app-topbar>\n\t\t<!-- <app-breadcrumb class=\"content-breadcrumb\"></app-breadcrumb> -->\n\t\t<div class=\"layout-content\">\n\t\t\t<router-outlet></router-outlet>\n\t\t</div>\n\t</div>\n\t<app-profilemenu></app-profilemenu>\n\t<app-config></app-config>\n\t<div class=\"layout-mask\"></div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.LayoutService","i2","i3.MenuService","i1","i3","i2.MenuService","i4","i5","filter","i1.MenuService","i2.LayoutService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aril-theme-layout.mjs","sources":["../../projects/aril/theme/layout/service/app.menu.service.ts","../../projects/aril/theme/layout/service/app.layout.service.ts","../../projects/aril/theme/layout/app/menu/app.menu.component.ts","../../projects/aril/theme/layout/app/menu/app.menu.component.html","../../projects/aril/theme/layout/app/menu/app.sub.menu.component.html","../../projects/aril/theme/layout/app/sidebar/app.sidebar.component.ts","../../projects/aril/theme/layout/app/sidebar/app.sidebar.component.html","../../projects/aril/theme/layout/app/breadcrumb/app.breadcrumb.component.ts","../../projects/aril/theme/layout/app/breadcrumb/app.breadcrumb.component.html","../../projects/aril/theme/layout/app/topbar/app.topbar.component.ts","../../projects/aril/theme/layout/app/topbar/app.topbar.component.html","../../projects/aril/theme/layout/app/profileSidebar/app.profilesidebar.component.ts","../../projects/aril/theme/layout/app/profileSidebar/app.profilesidebar.component.html","../../projects/aril/theme/layout/app/config/app.config.component.ts","../../projects/aril/theme/layout/app/config/app.config.component.html","../../projects/aril/theme/layout/app/layout/app.layout.component.ts","../../projects/aril/theme/layout/app/layout/app.layout.component.html","../../projects/aril/theme/layout/aril-theme-layout.ts"],"sourcesContent":["import { Injectable, signal } from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { MenuItem } from 'primeng/api';\nimport { Interfaces } from 'aril/util/lib';\n\nimport { MenuChangeEvent } from './menuchangeevent';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class MenuService {\n\tprivate menuSource = new Subject<MenuChangeEvent>();\n\tprivate resetSource = new Subject();\n\n\tpublic menuItems = signal<MenuItem[]>([]);\n\tpublic subMenuItems = signal<Interfaces.MapStringArray<MenuItem>>({});\n\n\tmenuSource$ = this.menuSource.asObservable();\n\tresetSource$ = this.resetSource.asObservable();\n\n\tonMenuStateChange(event: MenuChangeEvent) {\n\t\tthis.menuSource.next(event);\n\t}\n\n\treset() {\n\t\tthis.resetSource.next(true);\n\t}\n}\n","import { Injectable, effect, signal } from '@angular/core';\r\n\r\nimport { Subject } from 'rxjs';\r\n\r\nexport type MenuMode = 'static' | 'overlay' | 'horizontal' | 'slim' | 'slim-plus' | 'reveal' | 'drawer';\r\n\r\nexport type ColorScheme = 'light' | 'dark' | 'dim';\r\n\r\nexport type MenuColorScheme = 'colorScheme' | 'primaryColor' | 'transparent';\r\n\r\nexport interface AppConfig {\r\n\tinputStyle: string;\r\n\tcolorScheme: ColorScheme;\r\n\ttheme: string;\r\n\tripple: boolean;\r\n\tmenuMode: MenuMode;\r\n\tscale: number;\r\n\tmenuTheme: MenuColorScheme;\r\n}\r\n\r\ninterface LayoutState {\r\n\tstaticMenuDesktopInactive: boolean;\r\n\toverlayMenuActive: boolean;\r\n\tprofileSidebarVisible: boolean;\r\n\tconfigSidebarVisible: boolean;\r\n\tstaticMenuMobileActive: boolean;\r\n\tmenuHoverActive: boolean;\r\n\tsidebarActive: boolean;\r\n\tanchored: boolean;\r\n}\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class LayoutService {\r\n\t_config: AppConfig = {\r\n\t\tripple: false,\r\n\t\tinputStyle: 'filled',\r\n\t\tmenuMode: 'horizontal',\r\n\t\tcolorScheme: 'light',\r\n\t\ttheme: 'indigo',\r\n\t\tscale: 12,\r\n\t\tmenuTheme: 'colorScheme'\r\n\t};\r\n\r\n\t// TODO: Set User Config\r\n\tconfig = signal<AppConfig>(this._config);\r\n\r\n\tstate: LayoutState = {\r\n\t\tstaticMenuDesktopInactive: false,\r\n\t\toverlayMenuActive: false,\r\n\t\tprofileSidebarVisible: false,\r\n\t\tconfigSidebarVisible: false,\r\n\t\tstaticMenuMobileActive: false,\r\n\t\tmenuHoverActive: false,\r\n\t\tsidebarActive: false,\r\n\t\tanchored: false\r\n\t};\r\n\r\n\tprivate configUpdate = new Subject<AppConfig>();\r\n\r\n\tprivate overlayOpen = new Subject<any>();\r\n\r\n\tconfigUpdate$ = this.configUpdate.asObservable();\r\n\r\n\toverlayOpen$ = this.overlayOpen.asObservable();\r\n\r\n\tconstructor() {\r\n\t\teffect(() => {\r\n\t\t\tconst config = this.config();\r\n\t\t\tif (this.updateStyle(config)) {\r\n\t\t\t\tthis.changeTheme();\r\n\t\t\t}\r\n\t\t\tthis.changeScale(config.scale);\r\n\t\t\tthis.onConfigUpdate();\r\n\t\t});\r\n\t}\r\n\r\n\tupdateStyle(config: AppConfig) {\r\n\t\treturn config.theme !== this._config.theme || config.colorScheme !== this._config.colorScheme;\r\n\t}\r\n\r\n\tonMenuToggle() {\r\n\t\tif (this.isOverlay()) {\r\n\t\t\tthis.state.overlayMenuActive = !this.state.overlayMenuActive;\r\n\r\n\t\t\tif (this.state.overlayMenuActive) {\r\n\t\t\t\tthis.overlayOpen.next(null);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (this.isDesktop()) {\r\n\t\t\tthis.state.staticMenuDesktopInactive = !this.state.staticMenuDesktopInactive;\r\n\t\t} else {\r\n\t\t\tthis.state.staticMenuMobileActive = !this.state.staticMenuMobileActive;\r\n\r\n\t\t\tif (this.state.staticMenuMobileActive) {\r\n\t\t\t\tthis.overlayOpen.next(null);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tonOverlaySubmenuOpen() {\r\n\t\tthis.overlayOpen.next(null);\r\n\t}\r\n\r\n\tshowProfileSidebar() {\r\n\t\tthis.state.profileSidebarVisible = true;\r\n\t}\r\n\r\n\tshowConfigSidebar() {\r\n\t\tthis.state.configSidebarVisible = true;\r\n\t}\r\n\r\n\tisOverlay() {\r\n\t\treturn this.config().menuMode === 'overlay';\r\n\t}\r\n\r\n\tisDesktop() {\r\n\t\treturn window.innerWidth > 991;\r\n\t}\r\n\r\n\tisSlim() {\r\n\t\treturn this.config().menuMode === 'slim';\r\n\t}\r\n\r\n\tisSlimPlus() {\r\n\t\treturn this.config().menuMode === 'slim-plus';\r\n\t}\r\n\r\n\tisHorizontal() {\r\n\t\treturn this.config().menuMode === 'horizontal';\r\n\t}\r\n\r\n\tisMobile() {\r\n\t\treturn !this.isDesktop();\r\n\t}\r\n\r\n\tonConfigUpdate() {\r\n\t\tthis._config = { ...this.config() };\r\n\t\tthis.configUpdate.next(this.config());\r\n\t}\r\n\r\n\tchangeTheme() {\r\n\t\tconst config = this.config();\r\n\t\tconst themeLink = <HTMLLinkElement>document.getElementById('theme-link');\r\n\t\tconst themeLinkHref = themeLink.getAttribute('href')!;\r\n\t\tconst newHref = themeLinkHref\r\n\t\t\t.split('/')\r\n\t\t\t.map((el) =>\r\n\t\t\t\tel == this._config.theme ? (el = config.theme)\r\n\t\t\t\t: el == `theme-${this._config.colorScheme}` ? (el = `theme-${config.colorScheme}`)\r\n\t\t\t\t: el\r\n\t\t\t)\r\n\t\t\t.join('/');\r\n\r\n\t\tthis.replaceThemeLink(newHref);\r\n\t}\r\n\r\n\treplaceThemeLink(href: string) {\r\n\t\tconst id = 'theme-link';\r\n\t\tlet themeLink = <HTMLLinkElement>document.getElementById(id);\r\n\t\tconst cloneLinkElement = <HTMLLinkElement>themeLink.cloneNode(true);\r\n\r\n\t\tcloneLinkElement.setAttribute('href', href);\r\n\t\tcloneLinkElement.setAttribute('id', id + '-clone');\r\n\r\n\t\tthemeLink.parentNode!.insertBefore(cloneLinkElement, themeLink.nextSibling);\r\n\t\tcloneLinkElement.addEventListener('load', () => {\r\n\t\t\tthemeLink.remove();\r\n\t\t\tcloneLinkElement.setAttribute('id', id);\r\n\t\t});\r\n\t}\r\n\r\n\tchangeScale(value: number) {\r\n\t\tdocument.documentElement.style.fontSize = `${value}px`;\r\n\t}\r\n}\r\n","import { NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n\tChangeDetectorRef,\n\tComponent,\n\tElementRef,\n\tHostBinding,\n\tInput,\n\tOnDestroy,\n\tOnInit,\n\tViewChild,\n\tinject\n} from '@angular/core';\nimport { NavigationEnd, Router, RouterLink, RouterLinkActive } from '@angular/router';\nimport { animate, state, style, transition, trigger, AnimationEvent } from '@angular/animations';\n\nimport { MenuItem } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { RippleModule } from 'primeng/ripple';\nimport { TooltipModule } from 'primeng/tooltip';\n\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { MenuService } from '../../service/app.menu.service';\nimport { LayoutService } from '../../service/app.layout.service';\n\n@Component({\n\tstandalone: true,\n\tselector: '[app-menuitem]',\n\ttemplate: `\n\t\t<ng-container>\n\t\t\t@if (root) {\n\t\t\t\t<div class=\"layout-menuitem-root-text\">\n\t\t\t\t\t{{ item.label }}\n\t\t\t\t</div>\n\t\t\t}\n\t\t\t@if (item.items?.length) {\n\t\t\t\t<a\n\t\t\t\t\t[attr.href]=\"item.url\"\n\t\t\t\t\t(click)=\"itemClick($event)\"\n\t\t\t\t\t(mouseenter)=\"onMouseEnter()\"\n\t\t\t\t\t[attr.target]=\"item.target\"\n\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\tpRipple\n\t\t\t\t\t[pTooltip]=\"item.label\"\n\t\t\t\t\t[tooltipDisabled]=\"!(isSlim && root && !active)\">\n\t\t\t\t\t<i [ngClass]=\"item.icon\" class=\"layout-menuitem-icon\"></i>\n\t\t\t\t\t<span class=\"layout-menuitem-text\">{{ item.label }}</span>\n\t\t\t\t\t@if (item.items) {\n\t\t\t\t\t\t<i class=\"pi pi-fw pi-angle-down layout-submenu-toggler\"></i>\n\t\t\t\t\t}\n\t\t\t\t</a>\n\t\t\t} @else {\n\t\t\t\t<a\n\t\t\t\t\t(click)=\"itemClick($event)\"\n\t\t\t\t\t(mouseenter)=\"onMouseEnter()\"\n\t\t\t\t\t[routerLink]=\"item.routerLink\"\n\t\t\t\t\trouterLinkActive=\"active-route\"\n\t\t\t\t\t[routerLinkActiveOptions]=\"\n\t\t\t\t\t\titem.routerLinkActiveOptions || {\n\t\t\t\t\t\t\tpaths: 'exact',\n\t\t\t\t\t\t\tqueryParams: 'ignored',\n\t\t\t\t\t\t\tmatrixParams: 'ignored',\n\t\t\t\t\t\t\tfragment: 'ignored'\n\t\t\t\t\t\t}\n\t\t\t\t\t\"\n\t\t\t\t\t[fragment]=\"item.fragment\"\n\t\t\t\t\t[queryParamsHandling]=\"item.queryParamsHandling\"\n\t\t\t\t\t[preserveFragment]=\"item.preserveFragment\"\n\t\t\t\t\t[skipLocationChange]=\"item.skipLocationChange\"\n\t\t\t\t\t[replaceUrl]=\"item.replaceUrl\"\n\t\t\t\t\t[state]=\"item.state\"\n\t\t\t\t\t[queryParams]=\"item.queryParams\"\n\t\t\t\t\t[attr.target]=\"item.target\"\n\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\tpRipple\n\t\t\t\t\t[pTooltip]=\"item.label\"\n\t\t\t\t\t[tooltipDisabled]=\"!(isSlim && root)\">\n\t\t\t\t\t<i [ngClass]=\"item.icon\" class=\"layout-menuitem-icon\"></i>\n\n\t\t\t\t\t<span class=\"layout-menuitem-text\">{{ item.label }}</span>\n\n\t\t\t\t\t@if (item.items) {\n\t\t\t\t\t\t<i class=\"pi pi-fw pi-angle-down layout-submenu-toggler\"></i>\n\t\t\t\t\t}\n\t\t\t\t</a>\n\t\t\t}\n\n\t\t\t@if (item.items) {\n\t\t\t\t<ul #submenu [@children]=\"submenuAnimation\" (@children.done)=\"onSubmenuAnimated($event)\">\n\t\t\t\t\t@for (child of item.items; track child; let i = $index) {\n\t\t\t\t\t\t<li app-menuitem [item]=\"child\" [index]=\"i\" [parentKey]=\"key\"></li>\n\t\t\t\t\t}\n\t\t\t\t</ul>\n\t\t\t}\n\t\t</ng-container>\n\t`,\n\timports: [NgClass, RouterLink, RouterLinkActive, NgTemplateOutlet, TooltipModule, RippleModule],\n\tanimations: [\n\t\ttrigger('children', [\n\t\t\tstate(\n\t\t\t\t'collapsed',\n\t\t\t\tstyle({\n\t\t\t\t\theight: '0'\n\t\t\t\t})\n\t\t\t),\n\t\t\tstate(\n\t\t\t\t'expanded',\n\t\t\t\tstyle({\n\t\t\t\t\theight: '*'\n\t\t\t\t})\n\t\t\t),\n\t\t\tstate(\n\t\t\t\t'hidden',\n\t\t\t\tstyle({\n\t\t\t\t\tdisplay: 'none'\n\t\t\t\t})\n\t\t\t),\n\t\t\tstate(\n\t\t\t\t'visible',\n\t\t\t\tstyle({\n\t\t\t\t\tdisplay: 'block'\n\t\t\t\t})\n\t\t\t),\n\t\t\ttransition('collapsed <=> expanded', animate('400ms cubic-bezier(0.86, 0, 0.07, 1)'))\n\t\t])\n\t]\n})\nexport class AppMenuItemComponent implements OnInit, OnDestroy {\n\t@Input() item!: MenuItem;\n\n\t@Input() index!: number;\n\n\t@Input() @HostBinding('class.layout-root-menuitem') root!: boolean;\n\n\t@Input() parentKey!: string;\n\n\t@ViewChild('submenu') submenu!: ElementRef;\n\n\tactive = false;\n\n\tmenuSourceSubscription: Subscription;\n\n\tmenuResetSubscription: Subscription;\n\n\tkey: string = '';\n\n\tconstructor(\n\t\tpublic layoutService: LayoutService,\n\t\tprivate cd: ChangeDetectorRef,\n\t\tpublic router: Router,\n\t\tprivate menuService: MenuService\n\t) {\n\t\tthis.menuSourceSubscription = this.menuService.menuSource$.subscribe((value) => {\n\t\t\tPromise.resolve(null).then(() => {\n\t\t\t\tif (value.routeEvent) {\n\t\t\t\t\tthis.active = value.key === this.key || value.key.startsWith(this.key + '-') ? true : false;\n\t\t\t\t} else {\n\t\t\t\t\tif (value.key !== this.key && !value.key.startsWith(this.key + '-')) {\n\t\t\t\t\t\tthis.active = false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\tthis.menuResetSubscription = this.menuService.resetSource$.subscribe(() => {\n\t\t\tthis.active = false;\n\t\t});\n\n\t\tthis.router.events.pipe(filter((event) => event instanceof NavigationEnd)).subscribe((params) => {\n\t\t\tif (this.isSlimPlus || this.isSlim || this.isHorizontal) {\n\t\t\t\tthis.active = false;\n\t\t\t} else {\n\t\t\t\tif (this.item.routerLink) {\n\t\t\t\t\tthis.updateActiveStateFromRoute();\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tngOnInit() {\n\t\tthis.key = this.parentKey ? this.parentKey + '-' + this.index : String(this.index);\n\n\t\tif (!(this.isSlimPlus || this.isSlim || this.isHorizontal) && this.item.routerLink) {\n\t\t\tthis.updateActiveStateFromRoute();\n\t\t}\n\t}\n\n\tngAfterViewChecked() {\n\t\tif (\n\t\t\tthis.root &&\n\t\t\tthis.active &&\n\t\t\tthis.layoutService.isDesktop() &&\n\t\t\t(this.layoutService.isHorizontal() || this.layoutService.isSlim() || this.layoutService.isSlimPlus())\n\t\t) {\n\t\t\tthis.calculatePosition(this.submenu?.nativeElement, this.submenu?.nativeElement.parentElement);\n\t\t}\n\t}\n\n\tupdateActiveStateFromRoute() {\n\t\tlet activeRoute = this.router.isActive(this.item.routerLink[0], {\n\t\t\tpaths: 'exact',\n\t\t\tqueryParams: 'ignored',\n\t\t\tmatrixParams: 'ignored',\n\t\t\tfragment: 'ignored'\n\t\t});\n\n\t\tif (activeRoute) {\n\t\t\tthis.menuService.onMenuStateChange({ key: this.key, routeEvent: true });\n\t\t}\n\t}\n\n\tonSubmenuAnimated(event: AnimationEvent) {\n\t\tif (\n\t\t\tevent.toState === 'visible' &&\n\t\t\tthis.layoutService.isDesktop() &&\n\t\t\t(this.layoutService.isHorizontal() || this.layoutService.isSlim() || this.layoutService.isSlimPlus())\n\t\t) {\n\t\t\tconst el = <HTMLUListElement>event.element;\n\t\t\tconst elParent = <HTMLUListElement>el.parentElement;\n\t\t\tthis.calculatePosition(el, elParent);\n\t\t}\n\t}\n\n\tcalculatePosition(overlay: HTMLElement, target: HTMLElement) {\n\t\tif (overlay) {\n\t\t\tconst { left, top } = target.getBoundingClientRect();\n\t\t\tconst [vWidth, vHeight] = [window.innerWidth, window.innerHeight];\n\t\t\tconst [oWidth, oHeight] = [overlay.offsetWidth, overlay.offsetHeight];\n\t\t\tconst scrollbarWidth = DomHandler.calculateScrollbarWidth();\n\t\t\t// reset\n\t\t\toverlay.style.top = '';\n\t\t\toverlay.style.left = '';\n\n\t\t\tif (this.layoutService.isHorizontal()) {\n\t\t\t\tconst width = left + oWidth + scrollbarWidth;\n\t\t\t\toverlay.style.left = vWidth < width ? `${left - (width - vWidth)}px` : `${left}px`;\n\t\t\t} else if (this.layoutService.isSlim() || this.layoutService.isSlimPlus()) {\n\t\t\t\tconst height = top + oHeight;\n\t\t\t\toverlay.style.top = vHeight < height ? `${top - (height - vHeight)}px` : `${top}px`;\n\t\t\t}\n\t\t}\n\t}\n\n\titemClick(event: Event) {\n\t\t// avoid processing disabled items\n\t\tif (this.item.disabled) {\n\t\t\tevent.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\t// navigate with hover\n\t\tif ((this.root && this.isSlim) || this.isHorizontal || this.isSlimPlus) {\n\t\t\tthis.layoutService.state.menuHoverActive = !this.layoutService.state.menuHoverActive;\n\t\t}\n\n\t\t// execute command\n\t\tif (this.item.command) {\n\t\t\tthis.item.command({ originalEvent: event, item: this.item });\n\t\t}\n\n\t\t// toggle active state\n\t\tif (this.item.items) {\n\t\t\tthis.active = !this.active;\n\n\t\t\tif (this.root && this.active && (this.isSlim || this.isHorizontal || this.isSlimPlus)) {\n\t\t\t\tthis.layoutService.onOverlaySubmenuOpen();\n\t\t\t}\n\t\t} else {\n\t\t\tif (this.layoutService.isMobile()) {\n\t\t\t\tthis.layoutService.state.staticMenuMobileActive = false;\n\t\t\t}\n\n\t\t\tif (this.isSlim || this.isHorizontal || this.isSlimPlus) {\n\t\t\t\tthis.menuService.reset();\n\t\t\t\tthis.layoutService.state.menuHoverActive = false;\n\t\t\t}\n\t\t}\n\n\t\tthis.menuService.onMenuStateChange({ key: this.key });\n\t}\n\n\tonMouseEnter() {\n\t\t// activate item on hover\n\t\tif (this.root && (this.isSlim || this.isHorizontal || this.isSlimPlus) && this.layoutService.isDesktop()) {\n\t\t\tif (this.layoutService.state.menuHoverActive) {\n\t\t\t\tthis.active = true;\n\t\t\t\tthis.menuService.onMenuStateChange({ key: this.key });\n\t\t\t}\n\t\t}\n\t}\n\n\tget submenuAnimation() {\n\t\tif (\n\t\t\tthis.layoutService.isDesktop() &&\n\t\t\t(this.layoutService.isHorizontal() || this.layoutService.isSlim() || this.layoutService.isSlimPlus())\n\t\t) {\n\t\t\treturn this.active ? 'visible' : 'hidden';\n\t\t} else\n\t\t\treturn (\n\t\t\t\tthis.root ? 'expanded'\n\t\t\t\t: this.active ? 'expanded'\n\t\t\t\t: 'collapsed'\n\t\t\t);\n\t}\n\n\tget isHorizontal() {\n\t\treturn this.layoutService.isHorizontal();\n\t}\n\n\tget isSlim() {\n\t\treturn this.layoutService.isSlim();\n\t}\n\n\tget isSlimPlus() {\n\t\treturn this.layoutService.isSlimPlus();\n\t}\n\n\t@HostBinding('class.active-menuitem')\n\tget activeClass() {\n\t\treturn this.active && !this.root;\n\t}\n\n\tngOnDestroy() {\n\t\tif (this.menuSourceSubscription) {\n\t\t\tthis.menuSourceSubscription.unsubscribe();\n\t\t}\n\n\t\tif (this.menuResetSubscription) {\n\t\t\tthis.menuResetSubscription.unsubscribe();\n\t\t}\n\t}\n}\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-menu',\n\timports: [AppMenuItemComponent],\n\ttemplateUrl: './app.menu.component.html'\n})\nexport class AppMenuComponent {\n\tmenuService = inject(MenuService);\n}\n@Component({\n\tstandalone: true,\n\tselector: 'app-sub-menu',\n\timports: [AppMenuItemComponent],\n\ttemplateUrl: './app.sub.menu.component.html'\n})\nexport class AppSubMenuComponent {\n\tmenuService = inject(MenuService);\n\tglobalThis: any = globalThis;\n}\n","<ul class=\"layout-menu\">\n\t@for (item of menuService.menuItems(); track $index) {\n\t\t@if (item.separator) {\n\t\t\t<li class=\"menu-separator\"></li>\n\t\t} @else {\n\t\t\t<li app-menuitem [item]=\"item\" [index]=\"$index\" [root]=\"true\"></li>\n\t\t}\n\t}\n</ul>\n","<ul class=\"layout-menu\">\r\n\t@for (subItem of menuService.subMenuItems()[globalThis.activeMF]; track $index) {\r\n\t\t@if (subItem.separator) {\r\n\t\t\t<li class=\"menu-separator\"></li>\r\n\t\t} @else {\r\n\t\t\t<li app-menuitem [item]=\"subItem\" [index]=\"$index\" [root]=\"true\"></li>\r\n\t\t}\r\n\t}\r\n</ul>\r\n","import { RouterLink } from '@angular/router';\nimport { Component, ElementRef, ViewChild } from '@angular/core';\n\nimport { LayoutService } from '../../service/app.layout.service';\nimport { AppMenuComponent, AppSubMenuComponent } from '../menu/app.menu.component';\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-sidebar',\n\timports: [RouterLink, AppMenuComponent, AppSubMenuComponent],\n\ttemplateUrl: './app.sidebar.component.html'\n})\nexport class AppSidebarComponent {\n\tconstructor(\n\t\tpublic layoutService: LayoutService,\n\t\tpublic el: ElementRef\n\t) {}\n\n\ttimeout: any = null;\n\tglobalThis: any = globalThis;\n\n\t@ViewChild('menuContainer') menuContainer!: ElementRef;\n\t@ViewChild('subMenuContainer') subMenuContainer!: ElementRef;\n\n\tonMouseEnter() {\n\t\tif (!this.layoutService.state.anchored) {\n\t\t\tif (this.timeout) {\n\t\t\t\tclearTimeout(this.timeout);\n\t\t\t\tthis.timeout = null;\n\t\t\t}\n\t\t\tthis.layoutService.state.sidebarActive = true;\n\t\t}\n\t}\n\n\tonMouseLeave() {\n\t\tif (!this.layoutService.state.anchored) {\n\t\t\tif (!this.timeout) {\n\t\t\t\tthis.timeout = setTimeout(() => (this.layoutService.state.sidebarActive = false), 300);\n\t\t\t}\n\t\t}\n\t}\n\n\tanchor() {\n\t\tthis.layoutService.state.anchored = !this.layoutService.state.anchored;\n\t}\n}\n","<div class=\"layout-sidebar\" (mouseenter)=\"onMouseEnter()\" (mouseleave)=\"onMouseLeave()\">\n\t<div class=\"sidebar-header\">\n\t\t<a [routerLink]=\"['/']\" class=\"app-logo\">\n\t\t\t<svg viewBox=\"0 0 124 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class=\"app-logo-normal\">\n\t\t\t\t<path\n\t\t\t\t\td=\"M10.4851 0L0 20.9465H3.53702L10.4856 6.07843L17.2944 20.9465H20.9715L10.4851 0Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M13.84 15.7927L16.2077 21.0016H11.7682L13.84 15.7927Z\" fill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M9.04645 21.0016L6.67875 15.7927L4.60701 21.0016H9.04645Z\" fill=\"var(--logo-color)\" />\n\t\t\t\t<path\n\t\t\t\t\td=\"M40.9033 14.5217H34.771L33.1753 18.0007H30.8467L37.9346 2.77661L44.772 18.0007H42.4062L40.9033 14.5217ZM40.022 12.49L37.8975 7.61938L35.6709 12.49H40.022Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t\t<path\n\t\t\t\t\td=\"M52.4927 12.1838V18.0007H50.3311V3.67651H52.7803C53.9802 3.67651 54.8862 3.76001 55.4985 3.927C56.117 4.09399 56.6613 4.40942 57.1314 4.87329C57.954 5.67733 58.3652 6.69165 58.3652 7.91626C58.3652 9.22746 57.9261 10.2665 57.0479 11.0334C56.1696 11.8004 54.9852 12.1838 53.4946 12.1838H52.4927ZM52.4927 10.1799H53.2998C55.2852 10.1799 56.2778 9.4161 56.2778 7.88843C56.2778 6.41024 55.2542 5.67114 53.207 5.67114H52.4927V10.1799Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t\t<path\n\t\t\t\t\td=\"M63.6367 10.7737C63.6367 8.75741 64.3758 7.02563 65.854 5.57837C67.326 4.1311 69.0949 3.40747 71.1607 3.40747C73.2017 3.40747 74.952 4.13729 76.4116 5.59692C77.8775 7.05656 78.6104 8.80998 78.6104 10.8572C78.6104 12.9167 77.8744 14.664 76.4024 16.0989C74.9242 17.54 73.1398 18.2605 71.0493 18.2605C69.2001 18.2605 67.5394 17.6204 66.0674 16.3401C64.447 14.9237 63.6367 13.0683 63.6367 10.7737ZM65.8169 10.8015C65.8169 12.3848 66.3488 13.6868 67.4126 14.7073C68.4702 15.7278 69.6918 16.238 71.0772 16.238C72.5801 16.238 73.848 15.7185 74.8809 14.6794C75.9138 13.628 76.4302 12.3477 76.4302 10.8386C76.4302 9.31095 75.9199 8.03068 74.8994 6.9978C73.8851 5.95874 72.6296 5.43921 71.1328 5.43921C69.6423 5.43921 68.3836 5.95874 67.357 6.9978C66.3303 8.0245 65.8169 9.2924 65.8169 10.8015Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M87.2495 3.67651V15.969H91.4615V18.0007H85.0879V3.67651H87.2495Z\" fill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M99.4327 3.67651V15.969H103.645V18.0007H97.271V3.67651H99.4327Z\" fill=\"var(--logo-color)\" />\n\t\t\t\t<path\n\t\t\t\t\td=\"M108.146 10.7737C108.146 8.75741 108.885 7.02563 110.363 5.57837C111.835 4.1311 113.604 3.40747 115.67 3.40747C117.711 3.40747 119.461 4.13729 120.921 5.59692C122.387 7.05656 123.12 8.80998 123.12 10.8572C123.12 12.9167 122.384 14.664 120.912 16.0989C119.433 17.54 117.649 18.2605 115.559 18.2605C113.709 18.2605 112.049 17.6204 110.577 16.3401C108.956 14.9237 108.146 13.0683 108.146 10.7737ZM110.326 10.8015C110.326 12.3848 110.858 13.6868 111.922 14.7073C112.98 15.7278 114.201 16.238 115.586 16.238C117.089 16.238 118.357 15.7185 119.39 14.6794C120.423 13.628 120.94 12.3477 120.94 10.8386C120.94 9.31095 120.429 8.03068 119.409 6.9978C118.394 5.95874 117.139 5.43921 115.642 5.43921C114.152 5.43921 112.893 5.95874 111.866 6.9978C110.84 8.0245 110.326 9.2924 110.326 10.8015Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t</svg>\n\t\t\t<svg\n\t\t\t\twidth=\"21\"\n\t\t\t\theight=\"22\"\n\t\t\t\tviewBox=\"0 0 21 22\"\n\t\t\t\tfill=\"none\"\n\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\tclass=\"app-logo-small\">\n\t\t\t\t<path\n\t\t\t\t\td=\"M10.4851 0L0 20.9465H3.53702L10.4856 6.07843L17.2944 20.9465H20.9715L10.4851 0Z\"\n\t\t\t\t\tfill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M13.8399 15.793L16.2076 21.0019H11.7681L13.8399 15.793Z\" fill=\"var(--logo-color)\" />\n\t\t\t\t<path d=\"M9.04637 21.0019L6.67867 15.793L4.60693 21.0019H9.04637Z\" fill=\"var(--logo-color)\" />\n\t\t\t</svg>\n\t\t</a>\n\t\t<button class=\"layout-sidebar-anchor p-link z-2 mb-2\" type=\"button\" (click)=\"anchor()\"></button>\n\t</div>\n\n\t<div #menuContainer class=\"layout-menu-container\">\n\t\t<app-menu></app-menu>\n\t</div>\n</div>\n\n@if (globalThis.isMFEMode && globalThis.activeMF) {\n\t<div class=\"layout-sidebar\" (mouseenter)=\"onMouseEnter()\" (mouseleave)=\"onMouseLeave()\">\n\t\t<div #subMenuContainer class=\"layout-menu-container\">\n\t\t\t<app-sub-menu></app-sub-menu>\n\t\t</div>\n\t</div>\n}\n","import { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { ActivatedRouteSnapshot, NavigationEnd, Router } from '@angular/router';\n\nimport { BehaviorSubject } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\ninterface Breadcrumb {\n\tlabel: string;\n\turl?: string;\n}\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-breadcrumb',\n\timports: [NgTemplateOutlet, AsyncPipe],\n\ttemplateUrl: './app.breadcrumb.component.html'\n})\nexport class AppBreadcrumbComponent {\n\tprivate readonly _breadcrumbs$ = new BehaviorSubject<Breadcrumb[]>([]);\n\n\treadonly breadcrumbs$ = this._breadcrumbs$.asObservable();\n\n\tconstructor(private router: Router) {\n\t\tthis.router.events.pipe(filter((event) => event instanceof NavigationEnd)).subscribe((event) => {\n\t\t\tconst root = this.router.routerState.snapshot.root;\n\t\t\tconst breadcrumbs: Breadcrumb[] = [];\n\t\t\tthis.addBreadcrumb(root, [], breadcrumbs);\n\n\t\t\tthis._breadcrumbs$.next(breadcrumbs);\n\t\t});\n\t}\n\n\tprivate addBreadcrumb(route: ActivatedRouteSnapshot, parentUrl: string[], breadcrumbs: Breadcrumb[]) {\n\t\tconst routeUrl = parentUrl.concat(route.url.map((url) => url.path));\n\t\tconst breadcrumb = route.data['breadcrumb'];\n\t\tconst parentBreadcrumb = route.parent && route.parent.data ? route.parent.data['breadcrumb'] : null;\n\n\t\tif (breadcrumb && breadcrumb !== parentBreadcrumb) {\n\t\t\tbreadcrumbs.push({\n\t\t\t\tlabel: route.data['breadcrumb'],\n\t\t\t\turl: '/' + routeUrl.join('/')\n\t\t\t});\n\t\t}\n\n\t\tif (route.firstChild) {\n\t\t\tthis.addBreadcrumb(route.firstChild, routeUrl, breadcrumbs);\n\t\t}\n\t}\n}\n","<nav class=\"layout-breadcrumb\">\n\t<ol>\n\t\t@for (item of breadcrumbs$ | async; track item; let last = $last) {\n\t\t\t<li>{{ item.label }}</li>\n\t\t\t@if (!last) {\n\t\t\t\t<li class=\"layout-breadcrumb-chevron\">/</li>\n\t\t\t}\n\t\t}\n\t</ol>\n</nav>\n","import { Component, ElementRef, ViewChild } from '@angular/core';\nimport { ButtonModule } from 'primeng/button';\n\nimport { LayoutService } from '../../service/app.layout.service';\nimport { AppBreadcrumbComponent } from '../breadcrumb/app.breadcrumb.component';\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-topbar',\n\timports: [ButtonModule, AppBreadcrumbComponent],\n\ttemplateUrl: './app.topbar.component.html'\n})\nexport class AppTopbarComponent {\n\t@ViewChild('menubutton') menuButton!: ElementRef;\n\n\tconstructor(public layoutService: LayoutService) {}\n\n\tonMenuButtonClick() {\n\t\tthis.layoutService.onMenuToggle();\n\t}\n\n\tonProfileButtonClick() {\n\t\tthis.layoutService.showProfileSidebar();\n\t}\n\tonConfigButtonClick() {\n\t\tthis.layoutService.showConfigSidebar();\n\t}\n}\n","<div class=\"layout-topbar\">\n\t<div class=\"topbar-start\">\n\t\t<button #menubutton type=\"button\" class=\"topbar-menubutton p-link p-trigger\" (click)=\"onMenuButtonClick()\">\n\t\t\t<i class=\"pi pi-bars\"></i>\n\t\t</button>\n\n\t\t<!-- <app-breadcrumb class=\"topbar-breadcrumb\"></app-breadcrumb> -->\n\t</div>\n\n\t<div class=\"topbar-end\">\n\t\t<ul class=\"topbar-menu\">\n\t\t\t<li class=\"topbar-search\">\n\t\t\t\t<span class=\"p-input-icon-left\">\n\t\t\t\t\t<i class=\"pi pi-search\"></i>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\tpInputText\n\t\t\t\t\t\tplaceholder=\"Search\"\n\t\t\t\t\t\tclass=\"p-inputtext p-component p-element w-12rem sm:w-full\" />\n\t\t\t\t</span>\n\t\t\t</li>\n\t\t\t<!-- <li class=\"ml-3\">\n\t\t\t\t<button\n\t\t\t\t\tpButton\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\ticon=\"pi pi-cog\"\n\t\t\t\t\tclass=\"p-button-text p-button-secondary p-button-rounded flex-shrink-0\"\n\t\t\t\t\t(click)=\"onConfigButtonClick()\"></button>\n\t\t\t</li> -->\n\t\t\t<li class=\"topbar-profile\">\n\t\t\t\t<button type=\"button\" class=\"p-link\" (click)=\"onProfileButtonClick()\">\n\t\t\t\t\t<img src=\"assets/images/avatar.png\" alt=\"Profile\" />\n\t\t\t\t</button>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n</div>\n","import { Component } from '@angular/core';\n\nimport { TagModule } from 'primeng/tag';\nimport { SidebarModule } from 'primeng/sidebar';\n\nimport { LayoutService } from '../../service/app.layout.service';\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-profilemenu',\n\timports: [SidebarModule, TagModule],\n\ttemplateUrl: './app.profilesidebar.component.html'\n})\nexport class AppProfileSidebarComponent {\n\tconstructor(public layoutService: LayoutService) {}\n\n\tget visible(): boolean {\n\t\treturn this.layoutService.state.profileSidebarVisible;\n\t}\n\n\tset visible(_val: boolean) {\n\t\tthis.layoutService.state.profileSidebarVisible = _val;\n\t}\n}\n","<p-sidebar\n\t[(visible)]=\"visible\"\n\tposition=\"right\"\n\t[transitionOptions]=\"'.3s cubic-bezier(0, 0, 0.2, 1)'\"\n\tstyleClass=\"layout-profile-sidebar w-full sm:w-25rem\">\n\t<div class=\"flex flex-column mx-auto md:mx-0\">\n\t\t<span class=\"mb-2 font-semibold\">Welcome</span>\n\t\t<span class=\"text-color-secondary font-medium mb-5\">Isabella Andolini</span>\n\n\t\t<ul class=\"list-none m-0 p-0\">\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-user text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Profile</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">Lorem ipsum date visale</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-user text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Billing</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">Amet mimin mıollit</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-cog text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Settings</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">Exercitation veniam</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-power-off text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Sign Out</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">Sed ut perspiciatis</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n\n\t<div class=\"flex flex-column mt-5 mx-auto md:mx-0\">\n\t\t<span class=\"mb-2 font-semibold\">Notifications</span>\n\t\t<span class=\"text-color-secondary font-medium mb-5\">You have 3 notifications</span>\n\n\t\t<ul class=\"list-none m-0 p-0\">\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-comment text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Your post has new comments</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">5 min ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-trash text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Your post has been deleted</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">15min ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<i class=\"pi pi-folder text-xl text-primary\"></i>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Post has been updated</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">3h ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n\n\t<div class=\"flex flex-column mt-5 mx-auto md:mx-0\">\n\t\t<span class=\"mb-2 font-semibold\">Messages</span>\n\t\t<span class=\"text-color-secondary font-medium mb-5\">You have new messages</span>\n\n\t\t<ul class=\"list-none m-0 p-0\">\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<img src=\"assets/demo/images/avatar/circle/avatar-m-8.png\" alt=\"Avatar\" class=\"w-2rem h-2rem\" />\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">James Robinson</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">10 min ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<p-tag value=\"3\" class=\"ml-auto\"></p-tag>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<img src=\"assets/demo/images/avatar/circle/avatar-f-8.png\" alt=\"Avatar\" class=\"w-2rem h-2rem\" />\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Mary Watson</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">15min ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<p-tag value=\"1\" class=\"ml-auto\"></p-tag>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\tclass=\"cursor-pointer flex surface-border mb-3 p-3 align-items-center border-1 surface-border border-round hover:surface-hover transition-colors transition-duration-150\">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<img src=\"assets/demo/images/avatar/circle/avatar-f-4.png\" alt=\"Avatar\" class=\"w-2rem h-2rem\" />\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t\t<span class=\"mb-2 font-semibold\">Aisha Webb</span>\n\t\t\t\t\t\t<p class=\"text-color-secondary m-0\">3h ago</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<p-tag value=\"2\" class=\"ml-auto\"></p-tag>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n</p-sidebar>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { NgClass, NgStyle } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { SidebarModule } from 'primeng/sidebar';\nimport { RadioButtonModule } from 'primeng/radiobutton';\nimport { ButtonModule } from 'primeng/button';\nimport { InputSwitchModule } from 'primeng/inputswitch';\n\nimport { MenuService } from '../../service/app.menu.service';\nimport { ColorScheme, LayoutService, MenuColorScheme, MenuMode } from '../../service/app.layout.service';\n\n@Component({\n\tstandalone: true,\n\tselector: 'app-config',\n\timports: [FormsModule, SidebarModule, RadioButtonModule, ButtonModule, InputSwitchModule, NgStyle, NgClass],\n\ttemplateUrl: './app.config.component.html'\n})\nexport class AppConfigComponent implements OnInit {\n\t@Input() minimal: boolean = false;\n\n\tcomponentThemes: any[] = [];\n\n\tscales: number[] = [12, 13, 14, 15, 16];\n\n\tconstructor(\n\t\tpublic layoutService: LayoutService,\n\t\tpublic menuService: MenuService\n\t) {}\n\n\tget visible(): boolean {\n\t\treturn this.layoutService.state.configSidebarVisible;\n\t}\n\tset visible(_val: boolean) {\n\t\tthis.layoutService.state.configSidebarVisible = _val;\n\t}\n\n\tget scale(): number {\n\t\treturn this.layoutService.config().scale;\n\t}\n\tset scale(_val: number) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tscale: _val\n\t\t}));\n\t}\n\n\tget menuMode(): MenuMode {\n\t\treturn this.layoutService.config().menuMode;\n\t}\n\tset menuMode(_val: MenuMode) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tmenuMode: _val\n\t\t}));\n\t\tif (this.layoutService.isSlimPlus() || this.layoutService.isSlim() || this.layoutService.isHorizontal()) {\n\t\t\tthis.menuService.reset();\n\t\t}\n\t}\n\n\tget colorScheme(): ColorScheme {\n\t\treturn this.layoutService.config().colorScheme;\n\t}\n\tset colorScheme(_val: ColorScheme) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tcolorScheme: _val\n\t\t}));\n\t}\n\n\tget inputStyle(): string {\n\t\treturn this.layoutService.config().inputStyle;\n\t}\n\tset inputStyle(_val: string) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tinputStyle: _val\n\t\t}));\n\t}\n\n\tget ripple(): boolean {\n\t\treturn this.layoutService.config().ripple;\n\t}\n\tset ripple(_val: boolean) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tripple: _val\n\t\t}));\n\t}\n\n\tget menuTheme(): MenuColorScheme {\n\t\treturn this.layoutService.config().menuTheme;\n\t}\n\tset menuTheme(_val: MenuColorScheme) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\tmenuTheme: _val\n\t\t}));\n\t}\n\n\tget theme(): string {\n\t\treturn this.layoutService.config().theme;\n\t}\n\tset theme(_val: string) {\n\t\tthis.layoutService.config.update((config) => ({\n\t\t\t...config,\n\t\t\ttheme: _val\n\t\t}));\n\t}\n\n\tngOnInit() {\n\t\tthis.componentThemes = [\n\t\t\t{ name: 'indigo', color: '#6366F1' },\n\t\t\t{ name: 'blue', color: '#3B82F6' },\n\t\t\t{ name: 'purple', color: '#8B5CF6' },\n\t\t\t{ name: 'teal', color: '#14B8A6' },\n\t\t\t{ name: 'cyan', color: '#06b6d4' },\n\t\t\t{ name: 'green', color: '#10b981' },\n\t\t\t{ name: 'orange', color: '#f59e0b' },\n\t\t\t{ name: 'pink', color: '#d946ef' }\n\t\t];\n\t}\n\n\tonConfigButtonClick() {\n\t\tthis.layoutService.showConfigSidebar();\n\t}\n\n\tchangeColorScheme(colorScheme: ColorScheme) {\n\t\tthis.colorScheme = colorScheme;\n\t}\n\n\tchangeTheme(theme: string) {\n\t\tthis.theme = theme;\n\t}\n\n\tdecrementScale() {\n\t\tthis.scale--;\n\t}\n\n\tincrementScale() {\n\t\tthis.scale++;\n\t}\n}\n","<button class=\"layout-config-button p-link\" type=\"button\" (click)=\"onConfigButtonClick()\">\n\t<i class=\"pi pi-cog\"></i>\n</button>\n\n<p-sidebar\n\t[(visible)]=\"visible\"\n\tposition=\"right\"\n\t[transitionOptions]=\"'.3s cubic-bezier(0, 0, 0.2, 1)'\"\n\tstyleClass=\"layout-config-sidebar w-18rem\">\n\t<h5>Themes</h5>\n\t<div class=\"flex flex-wrap row-gap-3\">\n\t\t@for (theme of componentThemes; track theme) {\n\t\t\t<div class=\"w-3\">\n\t\t\t\t<button\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclass=\"cursor-pointer p-link w-2rem h-2rem border-circle flex-shrink-0 flex align-items-center justify-content-center\"\n\t\t\t\t\t(click)=\"changeTheme(theme.name)\"\n\t\t\t\t\t[ngStyle]=\"{ 'background-color': theme.color }\">\n\t\t\t\t\t@if (theme.name == this.layoutService.config().theme) {\n\t\t\t\t\t\t<i class=\"pi pi-check text-white\"></i>\n\t\t\t\t\t}\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t}\n\t</div>\n\n\t<h5>Scale</h5>\n\t<div class=\"flex align-items-center\">\n\t\t<button\n\t\t\ticon=\"pi pi-minus\"\n\t\t\ttype=\"button\"\n\t\t\tpButton\n\t\t\t(click)=\"decrementScale()\"\n\t\t\tclass=\"p-button-text p-button-rounded w-2rem h-2rem mr-2\"\n\t\t\t[disabled]=\"scale === scales[0]\"></button>\n\t\t<div class=\"flex gap-2 align-items-center\">\n\t\t\t@for (s of scales; track s) {\n\t\t\t\t<i class=\"pi pi-circle-fill text-300\" [ngClass]=\"{ 'text-primary-500': s === scale }\"></i>\n\t\t\t}\n\t\t</div>\n\t\t<button\n\t\t\ticon=\"pi pi-plus\"\n\t\t\ttype=\"button\"\n\t\t\tpButton\n\t\t\t(click)=\"incrementScale()\"\n\t\t\tclass=\"p-button-text p-button-rounded w-2rem h-2rem ml-2\"\n\t\t\t[disabled]=\"scale === scales[scales.length - 1]\"></button>\n\t</div>\n\n\t@if (!minimal) {\n\t\t<h5>Menu Type</h5>\n\t\t<div class=\"flex flex-wrap row-gap-3\">\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"static\" [(ngModel)]=\"menuMode\" inputId=\"mode1\"></p-radioButton>\n\t\t\t\t<label for=\"mode1\">Static</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"overlay\" [(ngModel)]=\"menuMode\" inputId=\"mode2\"></p-radioButton>\n\t\t\t\t<label for=\"mode2\">Overlay</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"slim\" [(ngModel)]=\"menuMode\" inputId=\"mode3\"></p-radioButton>\n\t\t\t\t<label for=\"mode3\">Slim</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"slim-plus\" [(ngModel)]=\"menuMode\" inputId=\"mode4\"></p-radioButton>\n\t\t\t\t<label for=\"mode3\">Slim +</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"reveal\" [(ngModel)]=\"menuMode\" inputId=\"mode6\"></p-radioButton>\n\t\t\t\t<label for=\"mode5\">Reveal</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"drawer\" [(ngModel)]=\"menuMode\" inputId=\"mode7\"></p-radioButton>\n\t\t\t\t<label for=\"mode6\">Drawer</label>\n\t\t\t</div>\n\t\t\t<div class=\"flex align-items-center gap-2 w-6\">\n\t\t\t\t<p-radioButton name=\"menuMode\" value=\"horizontal\" [(ngModel)]=\"menuMode\" inputId=\"mode5\"></p-radioButton>\n\t\t\t\t<label for=\"mode4\">Horizontal</label>\n\t\t\t</div>\n\t\t</div>\n\t\t<h5>Menu Theme</h5>\n\t\t<div class=\"field-radiobutton\">\n\t\t\t<p-radioButton\n\t\t\t\tname=\"menuTheme\"\n\t\t\t\tvalue=\"colorScheme\"\n\t\t\t\t[(ngModel)]=\"menuTheme\"\n\t\t\t\tinputId=\"menutheme-colorscheme\"></p-radioButton>\n\t\t\t<label for=\"menutheme-colorscheme\">Color Scheme</label>\n\t\t</div>\n\t\t<div class=\"field-radiobutton\">\n\t\t\t<p-radioButton\n\t\t\t\tname=\"menuTheme\"\n\t\t\t\tvalue=\"primaryColor\"\n\t\t\t\t[(ngModel)]=\"menuTheme\"\n\t\t\t\tinputId=\"menutheme-primarycolor\"></p-radioButton>\n\t\t\t<label for=\"menutheme-primarycolor\">Primary Color</label>\n\t\t</div>\n\t\t<div class=\"field-radiobutton\">\n\t\t\t<p-radioButton\n\t\t\t\tname=\"menuTheme\"\n\t\t\t\tvalue=\"transparent\"\n\t\t\t\t[(ngModel)]=\"menuTheme\"\n\t\t\t\tinputId=\"menutheme-transparent\"></p-radioButton>\n\t\t\t<label for=\"menutheme-transparent\">Transparent</label>\n\t\t</div>\n\t}\n\n\t<h5>Color Scheme</h5>\n\t<div class=\"field-radiobutton\">\n\t\t<p-radioButton name=\"colorScheme\" value=\"light\" [(ngModel)]=\"colorScheme\" inputId=\"mode-light\"></p-radioButton>\n\t\t<label for=\"mode-light\">Light</label>\n\t</div>\n\t<div class=\"field-radiobutton\">\n\t\t<p-radioButton name=\"colorScheme\" value=\"dim\" [(ngModel)]=\"colorScheme\" inputId=\"mode-dim\"></p-radioButton>\n\t\t<label for=\"mode-dim\">Dim</label>\n\t</div>\n\t<div class=\"field-radiobutton\">\n\t\t<p-radioButton name=\"colorScheme\" value=\"dark\" [(ngModel)]=\"colorScheme\" inputId=\"mode-dark\"></p-radioButton>\n\t\t<label for=\"mode-dark\">Dark</label>\n\t</div>\n\n\t@if (!minimal) {\n\t\t<h5>Input Style</h5>\n\t\t<div class=\"flex\">\n\t\t\t<div class=\"field-radiobutton flex-1\">\n\t\t\t\t<p-radioButton\n\t\t\t\t\tname=\"inputStyle\"\n\t\t\t\t\tvalue=\"outlined\"\n\t\t\t\t\t[(ngModel)]=\"inputStyle\"\n\t\t\t\t\tinputId=\"outlined_input\"></p-radioButton>\n\t\t\t\t<label for=\"outlined_input\">Outlined</label>\n\t\t\t</div>\n\t\t\t<div class=\"field-radiobutton flex-1\">\n\t\t\t\t<p-radioButton name=\"inputStyle\" value=\"filled\" [(ngModel)]=\"inputStyle\" inputId=\"filled_input\"></p-radioButton>\n\t\t\t\t<label for=\"filled_input\">Filled</label>\n\t\t\t</div>\n\t\t</div>\n\t\t<h5>Ripple Effect</h5>\n\t\t<p-inputSwitch [(ngModel)]=\"ripple\"></p-inputSwitch>\n\t}\n</p-sidebar>\n","import { NgClass } from '@angular/common';\nimport { Component, OnDestroy, Renderer2, ViewChild, effect, input } from '@angular/core';\nimport { ActivatedRoute, NavigationEnd, Router, RouterOutlet } from '@angular/router';\n\nimport { MenuItem } from 'primeng/api';\nimport { filter, Subscription } from 'rxjs';\nimport { Interfaces } from 'aril/util/lib';\n\nimport { MenuService } from '../../service/app.menu.service';\nimport { AppSidebarComponent } from '../sidebar/app.sidebar.component';\nimport { AppTopbarComponent } from '../topbar/app.topbar.component';\nimport { AppBreadcrumbComponent } from '../breadcrumb/app.breadcrumb.component';\nimport { AppProfileSidebarComponent } from '../profileSidebar/app.profilesidebar.component';\nimport { LayoutService } from '../../service/app.layout.service';\nimport { AppConfigComponent } from '../config/app.config.component';\n@Component({\n\tstandalone: true,\n\tselector: 'app-layout',\n\timports: [\n\t\tNgClass,\n\t\tRouterOutlet,\n\t\tAppSidebarComponent,\n\t\tAppTopbarComponent,\n\t\tAppBreadcrumbComponent,\n\t\tAppProfileSidebarComponent,\n\t\tAppConfigComponent\n\t],\n\ttemplateUrl: './app.layout.component.html'\n})\nexport class AppLayoutComponent implements OnDestroy {\n\t/* Router Inputs */\n\tmenuItems = input<MenuItem[]>([]);\n\tsubMenuItems = input<Interfaces.MapStringArray<MenuItem>>({});\n\n\toverlayMenuOpenSubscription: Subscription;\n\n\tmenuOutsideClickListener: any;\n\n\tmenuScrollListener: any;\n\tsubMenuScrollListener: any;\n\n\t@ViewChild(AppSidebarComponent) appSidebar!: AppSidebarComponent;\n\n\t@ViewChild(AppTopbarComponent) appTopbar!: AppTopbarComponent;\n\n\tconstructor(\n\t\tprivate menuService: MenuService,\n\t\tpublic layoutService: LayoutService,\n\t\tpublic renderer: Renderer2,\n\t\tpublic router: Router,\n\t\tprivate route: ActivatedRoute\n\t) {\n\t\tthis.overlayMenuOpenSubscription = this.layoutService.overlayOpen$.subscribe(() => {\n\t\t\tif (!this.menuOutsideClickListener) {\n\t\t\t\tthis.menuOutsideClickListener = this.renderer.listen('document', 'click', (event) => {\n\t\t\t\t\tconst isOutsideClicked = !(\n\t\t\t\t\t\tthis.appSidebar.el.nativeElement.isSameNode(event.target) ||\n\t\t\t\t\t\tthis.appSidebar.el.nativeElement.contains(event.target) ||\n\t\t\t\t\t\tthis.appTopbar.menuButton.nativeElement.isSameNode(event.target) ||\n\t\t\t\t\t\tthis.appTopbar.menuButton.nativeElement.contains(event.target)\n\t\t\t\t\t);\n\t\t\t\t\tif (isOutsideClicked) {\n\t\t\t\t\t\tthis.hideMenu();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t(this.layoutService.isHorizontal() || this.layoutService.isSlim() || this.layoutService.isSlimPlus()) &&\n\t\t\t\t!this.menuScrollListener\n\t\t\t) {\n\t\t\t\tthis.menuScrollListener = this.renderer.listen(\n\t\t\t\t\tthis.appSidebar.menuContainer.nativeElement,\n\t\t\t\t\t'scroll',\n\t\t\t\t\t(event) => {\n\t\t\t\t\t\tif (this.layoutService.isDesktop()) {\n\t\t\t\t\t\t\tthis.hideMenu();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\tif (this.subMenuItems()) {\n\t\t\t\t\tthis.subMenuScrollListener = this.renderer.listen(\n\t\t\t\t\t\tthis.appSidebar.subMenuContainer.nativeElement,\n\t\t\t\t\t\t'scroll',\n\t\t\t\t\t\t(event) => {\n\t\t\t\t\t\t\tif (this.layoutService.isDesktop()) {\n\t\t\t\t\t\t\t\tthis.hideMenu();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (this.layoutService.state.staticMenuMobileActive) {\n\t\t\t\tthis.blockBodyScroll();\n\t\t\t}\n\t\t});\n\n\t\tthis.router.events.pipe(filter((event) => event instanceof NavigationEnd)).subscribe(() => {\n\t\t\tthis.hideMenu();\n\t\t});\n\n\t\teffect(\n\t\t\t() => {\n\t\t\t\tthis.menuService.menuItems.set(this.menuItems());\n\t\t\t},\n\t\t\t{ allowSignalWrites: true }\n\t\t);\n\n\t\teffect(\n\t\t\t() => {\n\t\t\t\tthis.menuService.subMenuItems.set(this.subMenuItems());\n\t\t\t},\n\t\t\t{ allowSignalWrites: true }\n\t\t);\n\t}\n\n\tblockBodyScroll(): void {\n\t\tif (document.body.classList) {\n\t\t\tdocument.body.classList.add('blocked-scroll');\n\t\t} else {\n\t\t\tdocument.body.className += ' blocked-scroll';\n\t\t}\n\t}\n\n\tunblockBodyScroll(): void {\n\t\tif (document.body.classList) {\n\t\t\tdocument.body.classList.remove('blocked-scroll');\n\t\t} else {\n\t\t\tdocument.body.className = document.body.className.replace(\n\t\t\t\tnew RegExp('(^|\\\\b)' + 'blocked-scroll'.split(' ').join('|') + '(\\\\b|$)', 'gi'),\n\t\t\t\t' '\n\t\t\t);\n\t\t}\n\t}\n\n\thideMenu() {\n\t\tthis.layoutService.state.overlayMenuActive = false;\n\t\tthis.layoutService.state.staticMenuMobileActive = false;\n\t\tthis.layoutService.state.menuHoverActive = false;\n\t\tthis.menuService.reset();\n\n\t\tif (this.menuOutsideClickListener) {\n\t\t\tthis.menuOutsideClickListener();\n\t\t\tthis.menuOutsideClickListener = null;\n\t\t}\n\n\t\tif (this.menuScrollListener) {\n\t\t\tthis.menuScrollListener();\n\t\t\tthis.menuScrollListener = null;\n\t\t}\n\n\t\tif (this.subMenuScrollListener) {\n\t\t\tthis.subMenuScrollListener();\n\t\t\tthis.subMenuScrollListener = null;\n\t\t}\n\n\t\tthis.unblockBodyScroll();\n\t}\n\n\tget containerClass() {\n\t\treturn {\n\t\t\t'layout-light': this.layoutService.config().colorScheme === 'light',\n\t\t\t'layout-dim': this.layoutService.config().colorScheme === 'dim',\n\t\t\t'layout-dark': this.layoutService.config().colorScheme === 'dark',\n\t\t\t'layout-colorscheme-menu': this.layoutService.config().menuTheme === 'colorScheme',\n\t\t\t'layout-primarycolor-menu': this.layoutService.config().menuTheme === 'primaryColor',\n\t\t\t'layout-transparent-menu': this.layoutService.config().menuTheme === 'transparent',\n\t\t\t'layout-overlay': this.layoutService.config().menuMode === 'overlay',\n\t\t\t'layout-static': this.layoutService.config().menuMode === 'static',\n\t\t\t'layout-slim': this.layoutService.config().menuMode === 'slim',\n\t\t\t'layout-slim-plus': this.layoutService.config().menuMode === 'slim-plus',\n\t\t\t'layout-horizontal': this.layoutService.config().menuMode === 'horizontal',\n\t\t\t'layout-reveal': this.layoutService.config().menuMode === 'reveal',\n\t\t\t'layout-drawer': this.layoutService.config().menuMode === 'drawer',\n\t\t\t'layout-static-inactive':\n\t\t\t\tthis.layoutService.state.staticMenuDesktopInactive && this.layoutService.config().menuMode === 'static',\n\t\t\t'layout-overlay-active': this.layoutService.state.overlayMenuActive,\n\t\t\t'layout-mobile-active': this.layoutService.state.staticMenuMobileActive,\n\t\t\t'p-input-filled': this.layoutService.config().inputStyle === 'filled',\n\t\t\t'p-ripple-disabled': !this.layoutService.config().ripple,\n\t\t\t'layout-sidebar-active': this.layoutService.state.sidebarActive,\n\t\t\t'layout-sidebar-anchored': this.layoutService.state.anchored\n\t\t};\n\t}\n\n\tngOnDestroy() {\n\t\tif (this.overlayMenuOpenSubscription) {\n\t\t\tthis.overlayMenuOpenSubscription.unsubscribe();\n\t\t}\n\n\t\tif (this.menuOutsideClickListener) {\n\t\t\tthis.menuOutsideClickListener();\n\t\t}\n\t}\n}\n","<div class=\"layout-container\" [ngClass]=\"containerClass\">\n\t<app-sidebar></app-sidebar>\n\t<div class=\"layout-content-wrapper\">\n\t\t<app-topbar></app-topbar>\n\t\t<!-- <app-breadcrumb class=\"content-breadcrumb\"></app-breadcrumb> -->\n\t\t<div class=\"layout-content\">\n\t\t\t<router-outlet></router-outlet>\n\t\t</div>\n\t</div>\n\t<app-profilemenu></app-profilemenu>\n\t<app-config></app-config>\n\t<div class=\"layout-mask\"></div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.LayoutService","i2","i3.MenuService","i1","i3","i2.MenuService","i4","i5","filter","i1.MenuService","i2.LayoutService"],"mappings":"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"}
|
|
@@ -25,11 +25,11 @@ class ButtonComponent {
|
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
27
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: ButtonComponent, isStandalone: true, selector: "aril-button:not([click])", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, raised: { classPropertyName: "raised", publicName: "raised", isSignal: true, isRequired: false, transformFunction: null }, outlined: { classPropertyName: "outlined", publicName: "outlined", isSignal: true, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "<p-button\n\t[label]=\"label()\"\n\t[badge]=\"badge()\"\n\t[icon]=\"_icon()\"\n\ticonPos=\"left\"\n\t[disabled]=\"disabled()\"\n\t[styleClass]=\"_styleClass()\"\n\t[loading]=\"loading()\"\n\t(onClick)=\"clickEvent.emit()\">\n</p-button>\n", dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "size", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: ButtonComponent, isStandalone: true, selector: "aril-button:not([click])", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, raised: { classPropertyName: "raised", publicName: "raised", isSignal: true, isRequired: false, transformFunction: null }, outlined: { classPropertyName: "outlined", publicName: "outlined", isSignal: true, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "<p-button\n\t[label]=\"label()\"\n\t[badge]=\"badge()\"\n\t[icon]=\"_icon()\"\n\ticonPos=\"left\"\n\t[disabled]=\"disabled()\"\n\t[styleClass]=\"_styleClass()\"\n\t[loading]=\"loading()\"\n\t(onClick)=\"clickEvent.emit($event)\">\n</p-button>\n", dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "size", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
29
29
|
}
|
|
30
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
|
-
args: [{ standalone: true, selector: 'aril-button:not([click])', imports: [ButtonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<p-button\n\t[label]=\"label()\"\n\t[badge]=\"badge()\"\n\t[icon]=\"_icon()\"\n\ticonPos=\"left\"\n\t[disabled]=\"disabled()\"\n\t[styleClass]=\"_styleClass()\"\n\t[loading]=\"loading()\"\n\t(onClick)=\"clickEvent.emit()\">\n</p-button>\n" }]
|
|
32
|
+
args: [{ standalone: true, selector: 'aril-button:not([click])', imports: [ButtonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<p-button\n\t[label]=\"label()\"\n\t[badge]=\"badge()\"\n\t[icon]=\"_icon()\"\n\ticonPos=\"left\"\n\t[disabled]=\"disabled()\"\n\t[styleClass]=\"_styleClass()\"\n\t[loading]=\"loading()\"\n\t(onClick)=\"clickEvent.emit($event)\">\n</p-button>\n" }]
|
|
33
33
|
}], propDecorators: { clickEvent: [{
|
|
34
34
|
type: Output
|
|
35
35
|
}] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril-ui-button.mjs","sources":["../../projects/aril/ui/button/src/button.component.ts","../../projects/aril/ui/button/src/button.component.html","../../projects/aril/ui/button/src/split-button.component.ts","../../projects/aril/ui/button/src/split-button.component.html","../../projects/aril/ui/button/aril-ui-button.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, EventEmitter, input, Output } from '@angular/core';\n\nimport { ButtonModule } from 'primeng/button';\n\nimport { PrimeIcon, iconTransform } from 'aril/ui/lib';\n\ntype Size = 'sm' | 'md' | 'lg';\nexport type Colors = 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'help' | 'danger';\n\n@Component({\n\tstandalone: true,\n\tselector: 'aril-button:not([click])',\n\ttemplateUrl: './button.component.html',\n\timports: [ButtonModule],\n\tchangeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ButtonComponent {\n\tlabel = input<string>();\n\tloading = input<boolean>(false);\n\tdisabled = input<boolean>(false);\n\traised = input<boolean>(true);\n\toutlined = input<boolean>(false);\n\tbadge = input<string>();\n\tsize = input<Size>('md');\n\ticon = input<PrimeIcon>();\n\tcolor = input.required<Colors>();\n\n\t@Output() clickEvent: EventEmitter<
|
|
1
|
+
{"version":3,"file":"aril-ui-button.mjs","sources":["../../projects/aril/ui/button/src/button.component.ts","../../projects/aril/ui/button/src/button.component.html","../../projects/aril/ui/button/src/split-button.component.ts","../../projects/aril/ui/button/src/split-button.component.html","../../projects/aril/ui/button/aril-ui-button.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, EventEmitter, input, Output } from '@angular/core';\n\nimport { ButtonModule } from 'primeng/button';\n\nimport { PrimeIcon, iconTransform } from 'aril/ui/lib';\n\ntype Size = 'sm' | 'md' | 'lg';\nexport type Colors = 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'help' | 'danger';\n\n@Component({\n\tstandalone: true,\n\tselector: 'aril-button:not([click])',\n\ttemplateUrl: './button.component.html',\n\timports: [ButtonModule],\n\tchangeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ButtonComponent {\n\tlabel = input<string>();\n\tloading = input<boolean>(false);\n\tdisabled = input<boolean>(false);\n\traised = input<boolean>(true);\n\toutlined = input<boolean>(false);\n\tbadge = input<string>();\n\tsize = input<Size>('md');\n\ticon = input<PrimeIcon>();\n\tcolor = input.required<Colors>();\n\n\t@Output() clickEvent: EventEmitter<Event> = new EventEmitter<Event>();\n\n\t_icon = computed(() => iconTransform(this.icon()!));\n\n\t_color = computed(() => `p-button-${this.color()}`);\n\n\t_styleClass = computed(() => {\n\t\treturn `${this.raised() ? `p-button-raised` : ''} ${this.outlined() ? `p-button-outlined` : ''} ${this.size() ? `p-button-${this.size()}` : ''} ${this._color()}`;\n\t});\n}\n","<p-button\n\t[label]=\"label()\"\n\t[badge]=\"badge()\"\n\t[icon]=\"_icon()\"\n\ticonPos=\"left\"\n\t[disabled]=\"disabled()\"\n\t[styleClass]=\"_styleClass()\"\n\t[loading]=\"loading()\"\n\t(onClick)=\"clickEvent.emit($event)\">\n</p-button>\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { MenuItem } from 'primeng/api';\nimport { SplitButtonModule } from 'primeng/splitbutton';\n\nimport { ButtonComponent } from './button.component';\n\n@Component({\n\tstandalone: true,\n\tselector: 'aril-split-button',\n\ttemplateUrl: './split-button.component.html',\n\timports: [SplitButtonModule],\n\tchangeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SplitButtonComponent extends ButtonComponent {\n\tmenu = input.required<MenuItem[]>();\n}\n","<p-splitButton [label]=\"label()\" [icon]=\"_icon()\" [styleClass]=\"_styleClass()\" [model]=\"menu()\" [disabled]=\"disabled()\">\n</p-splitButton>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@ class MaskComponent extends BaseInputComponent {
|
|
|
23
23
|
super(...arguments);
|
|
24
24
|
this.mask = input.required();
|
|
25
25
|
this.slotChar = input('_');
|
|
26
|
-
this.placeholder = input();
|
|
26
|
+
this.placeholder = input('');
|
|
27
27
|
this.maxlength = input(100);
|
|
28
28
|
this.usageInGrid = input(true);
|
|
29
29
|
this.tabindex = input();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril-ui-mask.mjs","sources":["../../projects/aril/ui/mask/src/mask.component.ts","../../projects/aril/ui/mask/src/mask.component.html","../../projects/aril/ui/mask/aril-ui-mask.ts"],"sourcesContent":["import { Component, input } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { NgStyle } from '@angular/common';\n\nimport { InputMaskModule } from 'primeng/inputmask';\n\nimport { BaseInputComponent, InputErrorMessagePipe, ValueAccessorDirective } from 'aril/ui/lib';\n\n/**\n * a - alphabetic characters\n * 9 - numeric characters\n * * - alphanumeric characters\n * ? - optional characters\n * formatting characters -> (), -\n */\n\n/* TODO\n 1. HostAttributeToken\n*/\n\n@Component({\n\tstandalone: true,\n\tselector: 'aril-mask[ngModel], aril-mask[formControl], aril-mask[formControlName]',\n\ttemplateUrl: './mask.component.html',\n\tstyleUrl: './mask.component.css',\n\timports: [ReactiveFormsModule, NgStyle, InputMaskModule, InputErrorMessagePipe],\n\thostDirectives: [ValueAccessorDirective]\n})\nexport class MaskComponent extends BaseInputComponent {\n\tmask = input.required<string>();\n\tslotChar = input<string>('_');\n\tplaceholder = input<string>();\n\tmaxlength = input<number>(100);\n\tusageInGrid = input<boolean>(true);\n\ttabindex = input<number>();\n\n\tshowTooltip = false;\n}\n","<div style=\"position: relative\" [ngStyle]=\"!usageInGrid ? { display: 'inline-block' } : {}\">\n\t<p-inputMask\n\t\t[mask]=\"mask()\"\n\t\t[slotChar]=\"slotChar()\"\n\t\t[placeholder]=\"placeholder()\"\n\t\t[maxlength]=\"maxlength()\"\n\t\t[formControl]=\"ngControl.control\"\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\n\t\t(onFocus)=\"showTooltip = true\"\n\t\t(onBlur)=\"showTooltip = false\">\n\t</p-inputMask>\n\t@if (ngControl.invalid && showTooltip) {\n\t\t<div class=\"custom-tooltip tooltipErrorMessage\">\n\t\t\t{{ ngControl.control.value | inputErrorMessage: ngControl }}\n\t\t</div>\n\t}\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;AAQA;;;;;;AAMG;AAEH;;AAEE;AAUI,MAAO,aAAc,SAAQ,kBAAkB,CAAA;AARrD,IAAA,WAAA,GAAA;;AASC,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAU,CAAC;AAChC,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAS,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"aril-ui-mask.mjs","sources":["../../projects/aril/ui/mask/src/mask.component.ts","../../projects/aril/ui/mask/src/mask.component.html","../../projects/aril/ui/mask/aril-ui-mask.ts"],"sourcesContent":["import { Component, input } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { NgStyle } from '@angular/common';\n\nimport { InputMaskModule } from 'primeng/inputmask';\n\nimport { BaseInputComponent, InputErrorMessagePipe, ValueAccessorDirective } from 'aril/ui/lib';\n\n/**\n * a - alphabetic characters\n * 9 - numeric characters\n * * - alphanumeric characters\n * ? - optional characters\n * formatting characters -> (), -\n */\n\n/* TODO\n 1. HostAttributeToken\n*/\n\n@Component({\n\tstandalone: true,\n\tselector: 'aril-mask[ngModel], aril-mask[formControl], aril-mask[formControlName]',\n\ttemplateUrl: './mask.component.html',\n\tstyleUrl: './mask.component.css',\n\timports: [ReactiveFormsModule, NgStyle, InputMaskModule, InputErrorMessagePipe],\n\thostDirectives: [ValueAccessorDirective]\n})\nexport class MaskComponent extends BaseInputComponent {\n\tmask = input.required<string>();\n\tslotChar = input<string>('_');\n\tplaceholder = input<string>('');\n\tmaxlength = input<number>(100);\n\tusageInGrid = input<boolean>(true);\n\ttabindex = input<number>();\n\n\tshowTooltip = false;\n}\n","<div style=\"position: relative\" [ngStyle]=\"!usageInGrid ? { display: 'inline-block' } : {}\">\n\t<p-inputMask\n\t\t[mask]=\"mask()\"\n\t\t[slotChar]=\"slotChar()\"\n\t\t[placeholder]=\"placeholder()\"\n\t\t[maxlength]=\"maxlength()\"\n\t\t[formControl]=\"ngControl.control\"\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\n\t\t(onFocus)=\"showTooltip = true\"\n\t\t(onBlur)=\"showTooltip = false\">\n\t</p-inputMask>\n\t@if (ngControl.invalid && showTooltip) {\n\t\t<div class=\"custom-tooltip tooltipErrorMessage\">\n\t\t\t{{ ngControl.control.value | inputErrorMessage: ngControl }}\n\t\t</div>\n\t}\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ class NumberComponent extends BaseInputComponent {
|
|
|
15
15
|
this.min = input();
|
|
16
16
|
this.max = input();
|
|
17
17
|
this.showButtons = input(false);
|
|
18
|
-
this.placeholder = input();
|
|
18
|
+
this.placeholder = input('');
|
|
19
19
|
this.prefix = input();
|
|
20
20
|
this.suffix = input();
|
|
21
21
|
this.maxlength = input();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril-ui-number.mjs","sources":["../../projects/aril/ui/number/src/number.component.ts","../../projects/aril/ui/number/src/number.component.html","../../projects/aril/ui/number/aril-ui-number.ts"],"sourcesContent":["import { Component, computed, input } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { TooltipModule } from 'primeng/tooltip';\nimport { InputNumberModule } from 'primeng/inputnumber';\n\nimport { BaseInputComponent, InputErrorMessagePipe, ValueAccessorDirective } from 'aril/ui/lib';\n\n/* TODO\n 1. HostAttributeToken\n*/\n\ntype ButtonLayouts = 'stacked' | 'horizontal' | 'vertical';\n\n@Component({\n\tstandalone: true,\n\tselector: 'aril-number[ngModel], aril-number[formControl], aril-number[formControlName]',\n\ttemplateUrl: './number.component.html',\n\timports: [ReactiveFormsModule, InputNumberModule, TooltipModule, InputErrorMessagePipe],\n\thostDirectives: [ValueAccessorDirective]\n})\nexport class NumberComponent extends BaseInputComponent {\n\tmin = input<number>();\n\tmax = input<number>();\n\tshowButtons = input(false);\n\tplaceholder = input<string>();\n\tprefix = input<string>();\n\tsuffix = input<string>();\n\tmaxlength = input<any>();\n\tshowClear = input(false);\n\tuseGrouping = input(true);\n\tmaxDigits = input<number>();\n\tminDigits = input<number>();\n\ttabindex = input<number>();\n\tbuttonLayout = input<ButtonLayouts>('stacked');\n\n\t_style = computed(() => (this.buttonLayout() == 'vertical' ? { width: '3rem' } : {}));\n}\n","<p-inputNumber\n\t[min]=\"min()\"\n\t[max]=\"max()\"\n\tmode=\"decimal\"\n\tlocale=\"en-US\"\n\t[prefix]=\"prefix()\"\n\t[suffix]=\"suffix()\"\n\t[maxlength]=\"maxlength()\"\n\t[showClear]=\"showClear()\"\n\t[style]=\"_style()\"\n\t[tabindex]=\"tabindex()\"\n\tspinnerMode=\"vertical\"\n\t[useGrouping]=\"useGrouping()\"\n\t[placeholder]=\"placeholder()\"\n\t[showButtons]=\"showButtons()\"\n\t[maxFractionDigits]=\"maxDigits()\"\n\t[minFractionDigits]=\"minDigits()\"\n\t[buttonLayout]=\"buttonLayout()\"\n\tincrementButtonClass=\"p-button-info\"\n\tdecrementButtonClass=\"p-button-danger\"\n\t[pTooltip]=\"ngControl.invalid ? (ngControl.control.value | inputErrorMessage: ngControl) : ''\"\n\t[tooltipOptions]=\"tooltipOptions\"\n\t[formControl]=\"ngControl.control\"\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\n</p-inputNumber>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;AAqBM,MAAO,eAAgB,SAAQ,kBAAkB,CAAA;AAPvD,IAAA,WAAA,GAAA;;QAQC,IAAG,CAAA,GAAA,GAAG,KAAK,EAAU,CAAC;QACtB,IAAG,CAAA,GAAA,GAAG,KAAK,EAAU,CAAC;AACtB,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"aril-ui-number.mjs","sources":["../../projects/aril/ui/number/src/number.component.ts","../../projects/aril/ui/number/src/number.component.html","../../projects/aril/ui/number/aril-ui-number.ts"],"sourcesContent":["import { Component, computed, input } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { TooltipModule } from 'primeng/tooltip';\nimport { InputNumberModule } from 'primeng/inputnumber';\n\nimport { BaseInputComponent, InputErrorMessagePipe, ValueAccessorDirective } from 'aril/ui/lib';\n\n/* TODO\n 1. HostAttributeToken\n*/\n\ntype ButtonLayouts = 'stacked' | 'horizontal' | 'vertical';\n\n@Component({\n\tstandalone: true,\n\tselector: 'aril-number[ngModel], aril-number[formControl], aril-number[formControlName]',\n\ttemplateUrl: './number.component.html',\n\timports: [ReactiveFormsModule, InputNumberModule, TooltipModule, InputErrorMessagePipe],\n\thostDirectives: [ValueAccessorDirective]\n})\nexport class NumberComponent extends BaseInputComponent {\n\tmin = input<number>();\n\tmax = input<number>();\n\tshowButtons = input(false);\n\tplaceholder = input<string>('');\n\tprefix = input<string>();\n\tsuffix = input<string>();\n\tmaxlength = input<any>();\n\tshowClear = input(false);\n\tuseGrouping = input(true);\n\tmaxDigits = input<number>();\n\tminDigits = input<number>();\n\ttabindex = input<number>();\n\tbuttonLayout = input<ButtonLayouts>('stacked');\n\n\t_style = computed(() => (this.buttonLayout() == 'vertical' ? { width: '3rem' } : {}));\n}\n","<p-inputNumber\n\t[min]=\"min()\"\n\t[max]=\"max()\"\n\tmode=\"decimal\"\n\tlocale=\"en-US\"\n\t[prefix]=\"prefix()\"\n\t[suffix]=\"suffix()\"\n\t[maxlength]=\"maxlength()\"\n\t[showClear]=\"showClear()\"\n\t[style]=\"_style()\"\n\t[tabindex]=\"tabindex()\"\n\tspinnerMode=\"vertical\"\n\t[useGrouping]=\"useGrouping()\"\n\t[placeholder]=\"placeholder()\"\n\t[showButtons]=\"showButtons()\"\n\t[maxFractionDigits]=\"maxDigits()\"\n\t[minFractionDigits]=\"minDigits()\"\n\t[buttonLayout]=\"buttonLayout()\"\n\tincrementButtonClass=\"p-button-info\"\n\tdecrementButtonClass=\"p-button-danger\"\n\t[pTooltip]=\"ngControl.invalid ? (ngControl.control.value | inputErrorMessage: ngControl) : ''\"\n\t[tooltipOptions]=\"tooltipOptions\"\n\t[formControl]=\"ngControl.control\"\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\">\n</p-inputNumber>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|