@siemens/element-ng 51.0.0-rc.8 → 51.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/fesm2022/siemens-element-ng-ag-grid.mjs +17 -25
  2. package/fesm2022/siemens-element-ng-ag-grid.mjs.map +1 -1
  3. package/fesm2022/siemens-element-ng-application-header.mjs +2 -2
  4. package/fesm2022/siemens-element-ng-application-header.mjs.map +1 -1
  5. package/fesm2022/siemens-element-ng-avatar.mjs +3 -3
  6. package/fesm2022/siemens-element-ng-avatar.mjs.map +1 -1
  7. package/fesm2022/siemens-element-ng-chat-messages.mjs +123 -23
  8. package/fesm2022/siemens-element-ng-chat-messages.mjs.map +1 -1
  9. package/fesm2022/siemens-element-ng-color-picker.mjs +18 -18
  10. package/fesm2022/siemens-element-ng-color-picker.mjs.map +1 -1
  11. package/fesm2022/siemens-element-ng-column-selection-dialog.mjs +2 -2
  12. package/fesm2022/siemens-element-ng-column-selection-dialog.mjs.map +1 -1
  13. package/fesm2022/siemens-element-ng-dashboard.mjs +4 -4
  14. package/fesm2022/siemens-element-ng-dashboard.mjs.map +1 -1
  15. package/fesm2022/siemens-element-ng-date-range-filter.mjs +2 -2
  16. package/fesm2022/siemens-element-ng-date-range-filter.mjs.map +1 -1
  17. package/fesm2022/siemens-element-ng-datepicker.mjs +4 -4
  18. package/fesm2022/siemens-element-ng-datepicker.mjs.map +1 -1
  19. package/fesm2022/siemens-element-ng-file-uploader.mjs +2 -2
  20. package/fesm2022/siemens-element-ng-file-uploader.mjs.map +1 -1
  21. package/fesm2022/siemens-element-ng-filtered-search.mjs +2 -2
  22. package/fesm2022/siemens-element-ng-filtered-search.mjs.map +1 -1
  23. package/fesm2022/siemens-element-ng-form.mjs +19 -6
  24. package/fesm2022/siemens-element-ng-form.mjs.map +1 -1
  25. package/fesm2022/siemens-element-ng-formly.mjs +4 -4
  26. package/fesm2022/siemens-element-ng-formly.mjs.map +1 -1
  27. package/fesm2022/siemens-element-ng-icon.mjs +1 -1
  28. package/fesm2022/siemens-element-ng-icon.mjs.map +1 -1
  29. package/fesm2022/siemens-element-ng-info-page.mjs +2 -2
  30. package/fesm2022/siemens-element-ng-info-page.mjs.map +1 -1
  31. package/fesm2022/siemens-element-ng-landing-page.mjs +4 -4
  32. package/fesm2022/siemens-element-ng-landing-page.mjs.map +1 -1
  33. package/fesm2022/siemens-element-ng-list-details.mjs +62 -16
  34. package/fesm2022/siemens-element-ng-list-details.mjs.map +1 -1
  35. package/fesm2022/siemens-element-ng-main-detail-container.mjs +72 -24
  36. package/fesm2022/siemens-element-ng-main-detail-container.mjs.map +1 -1
  37. package/fesm2022/siemens-element-ng-maplibre.mjs +282 -6
  38. package/fesm2022/siemens-element-ng-maplibre.mjs.map +1 -1
  39. package/fesm2022/siemens-element-ng-markdown-hightlighter-highlightjs.mjs +2 -2
  40. package/fesm2022/siemens-element-ng-markdown-hightlighter-highlightjs.mjs.map +1 -1
  41. package/fesm2022/siemens-element-ng-menu.mjs +6 -6
  42. package/fesm2022/siemens-element-ng-menu.mjs.map +1 -1
  43. package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs +6 -6
  44. package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs.map +1 -1
  45. package/fesm2022/siemens-element-ng-navbar-vertical.mjs +4 -4
  46. package/fesm2022/siemens-element-ng-navbar-vertical.mjs.map +1 -1
  47. package/fesm2022/siemens-element-ng-result-details-list.mjs +2 -2
  48. package/fesm2022/siemens-element-ng-result-details-list.mjs.map +1 -1
  49. package/fesm2022/siemens-element-ng-select.mjs +44 -5
  50. package/fesm2022/siemens-element-ng-select.mjs.map +1 -1
  51. package/fesm2022/siemens-element-ng-side-panel.mjs +48 -13
  52. package/fesm2022/siemens-element-ng-side-panel.mjs.map +1 -1
  53. package/fesm2022/siemens-element-ng-slider.mjs +2 -2
  54. package/fesm2022/siemens-element-ng-slider.mjs.map +1 -1
  55. package/fesm2022/siemens-element-ng-source-chip.mjs +2 -2
  56. package/fesm2022/siemens-element-ng-source-chip.mjs.map +1 -1
  57. package/fesm2022/siemens-element-ng-split.mjs +18 -16
  58. package/fesm2022/siemens-element-ng-split.mjs.map +1 -1
  59. package/fesm2022/siemens-element-ng-status-bar.mjs +2 -2
  60. package/fesm2022/siemens-element-ng-status-bar.mjs.map +1 -1
  61. package/fesm2022/siemens-element-ng-status-toggle.mjs +2 -2
  62. package/fesm2022/siemens-element-ng-status-toggle.mjs.map +1 -1
  63. package/fesm2022/siemens-element-ng-summary-chip.mjs +2 -2
  64. package/fesm2022/siemens-element-ng-summary-chip.mjs.map +1 -1
  65. package/fesm2022/siemens-element-ng-summary-widget.mjs +2 -2
  66. package/fesm2022/siemens-element-ng-summary-widget.mjs.map +1 -1
  67. package/fesm2022/siemens-element-ng-system-banner.mjs +5 -5
  68. package/fesm2022/siemens-element-ng-system-banner.mjs.map +1 -1
  69. package/fesm2022/siemens-element-ng-tabs.mjs +93 -71
  70. package/fesm2022/siemens-element-ng-tabs.mjs.map +1 -1
  71. package/fesm2022/siemens-element-ng-toast-notification.mjs +2 -2
  72. package/fesm2022/siemens-element-ng-toast-notification.mjs.map +1 -1
  73. package/fesm2022/siemens-element-ng-tour.mjs +2 -2
  74. package/fesm2022/siemens-element-ng-tour.mjs.map +1 -1
  75. package/fesm2022/siemens-element-ng-translate.mjs.map +1 -1
  76. package/fesm2022/siemens-element-ng-tree-view.mjs +4 -4
  77. package/fesm2022/siemens-element-ng-tree-view.mjs.map +1 -1
  78. package/package.json +4 -4
  79. package/schematics/collection.json +5 -0
  80. package/schematics/migrate-tabs-legacy/index.js +5 -0
  81. package/schematics/migrate-tabs-legacy/migrate-tabs-legacy-rule.js +675 -0
  82. package/schematics/migrate-tabs-legacy/schema.json +14 -0
  83. package/schematics/migrations/data/css-custom-properties.js +67 -1
  84. package/schematics/migrations/data/element-class-changes.js +31 -12
  85. package/schematics/ng-update/migrate-list-details-units.js +86 -0
  86. package/schematics/ng-update/migrate-main-detail-units.js +89 -0
  87. package/schematics/ng-update/migrate-split-collapse.js +1 -32
  88. package/schematics/ng-update/migrate-split-scale.js +524 -0
  89. package/schematics/ng-update/migrate-split-sizes.js +5 -3
  90. package/schematics/ng-update/migrate-to-v51.js +6 -0
  91. package/schematics/utils/index.js +1 -0
  92. package/schematics/utils/template-edit-utils.js +35 -0
  93. package/schematics/utils/template-utils.js +31 -45
  94. package/template-i18n.json +1 -0
  95. package/types/siemens-element-ng-avatar.d.ts +1 -1
  96. package/types/siemens-element-ng-chat-messages.d.ts +81 -17
  97. package/types/siemens-element-ng-form.d.ts +3 -0
  98. package/types/siemens-element-ng-list-details.d.ts +25 -3
  99. package/types/siemens-element-ng-main-detail-container.d.ts +23 -3
  100. package/types/siemens-element-ng-maplibre.d.ts +131 -7
  101. package/types/siemens-element-ng-select.d.ts +31 -4
  102. package/types/siemens-element-ng-side-panel.d.ts +17 -3
  103. package/types/siemens-element-ng-split.d.ts +3 -10
  104. package/types/siemens-element-ng-system-banner.d.ts +2 -2
  105. package/types/siemens-element-ng-translate.d.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"siemens-element-ng-markdown-hightlighter-highlightjs.mjs","sources":["../../../../projects/element-ng/markdown/hightlighter/highlightjs/si-markdown-highlightjs.component.ts","../../../../projects/element-ng/markdown/hightlighter/highlightjs/si-markdown-highlightjs.component.html","../../../../projects/element-ng/markdown/hightlighter/highlightjs/si-markdown-highlightjs.highlighter.ts","../../../../projects/element-ng/markdown/hightlighter/highlightjs/index.ts","../../../../projects/element-ng/markdown/hightlighter/highlightjs/siemens-element-ng-markdown-hightlighter-highlightjs.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Component, inject, input } from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { computedAsync, type SiMarkdownHighlighterComponent } from '@siemens/element-ng/markdown';\nimport { type Language } from 'highlight.js';\nimport hljs from 'highlight.js/lib/core';\nimport langBash from 'highlight.js/lib/languages/bash';\nimport langCss from 'highlight.js/lib/languages/css';\nimport langJs from 'highlight.js/lib/languages/javascript';\nimport langJson from 'highlight.js/lib/languages/json';\nimport langMarkdown from 'highlight.js/lib/languages/markdown';\nimport langPython from 'highlight.js/lib/languages/python';\nimport langScss from 'highlight.js/lib/languages/scss';\nimport langTs from 'highlight.js/lib/languages/typescript';\nimport langXml from 'highlight.js/lib/languages/xml';\n\nimport {\n HighlightJSLanguageLoader,\n SiMarkdownHighlightJsOptions\n} from './si-markdown-highlightjs.types';\n\n// some common languages are built-in for initial loading speed\nhljs.registerLanguage('javascript', langJs);\nhljs.registerLanguage('typescript', langTs);\nhljs.registerLanguage('json', langJson);\nhljs.registerLanguage('css', langCss);\nhljs.registerLanguage('scss', langScss);\nhljs.registerLanguage('bash', langBash);\nhljs.registerLanguage('python', langPython);\nhljs.registerLanguage('xml', langXml);\nhljs.registerLanguage('markdown', langMarkdown);\n\nconst getHljsLang = async (\n lang: string,\n loader?: HighlightJSLanguageLoader\n): Promise<Language | undefined> => {\n const loadedLang = hljs.getLanguage(lang);\n if (loadedLang) {\n return loadedLang;\n }\n\n if (loader) {\n const importLang = await loader(lang);\n if (importLang) {\n hljs.registerLanguage(lang, importLang.default);\n return hljs.getLanguage(lang);\n }\n }\n return undefined;\n};\n\n@Component({\n selector: 'si-markdown-highlightjs',\n templateUrl: './si-markdown-highlightjs.component.html',\n styleUrl: './si-markdown-highlightjs.component.scss',\n host: {\n class: 'd-block'\n }\n})\nexport class SiMarkdownHightlightJsComponent implements SiMarkdownHighlighterComponent {\n private readonly sanitizer = inject(DomSanitizer);\n readonly code = input.required<string>();\n readonly language = input.required<string>();\n readonly updateLanguage = input.required<(lang?: string) => void>();\n readonly options = input<SiMarkdownHighlightJsOptions>();\n\n protected readonly highlighted = computedAsync({\n params: () => ({ code: this.code(), language: this.language(), options: this.options() }),\n computation: params => this.highlight(params.code, params.language, params.options),\n initial: undefined\n });\n\n private async highlight(\n code: string,\n language: string,\n options: SiMarkdownHighlightJsOptions = {}\n ): Promise<SafeHtml> {\n let highlighted = '';\n if (!language && options?.autoDetectLanguage) {\n try {\n const res = hljs.highlightAuto(code, undefined);\n highlighted = res.value;\n if (res.language) {\n const lang = hljs.getLanguage(res.language);\n this.updateLanguage()(lang?.name);\n } else {\n this.updateLanguage()(language);\n }\n } catch {\n // ignored\n }\n } else {\n const hljsLang = await getHljsLang(language, options.languageLoader);\n if (hljsLang) {\n this.updateLanguage()(hljsLang.name);\n try {\n highlighted = hljs.highlight(code, { ...options, language }).value;\n } catch {\n // ignored\n }\n } else {\n this.updateLanguage()(language);\n }\n }\n return highlighted ? this.sanitizer.bypassSecurityTrustHtml(highlighted) : '';\n }\n}\n","@let html = highlighted();\n@if (html) {\n <pre class=\"border-0 m-0 p-0\"><code [innerHTML]=\"html\"></code></pre>\n} @else {\n <pre class=\"border-0 m-0 p-0\"><code>{{ code() }} </code></pre>\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\n\nimport { type SiMarkdownHighlighter } from '@siemens/element-ng/markdown';\n\nimport { SiMarkdownHightlightJsComponent } from './si-markdown-highlightjs.component';\nimport { SiMarkdownHighlightJsOptions } from './si-markdown-highlightjs.types';\n\n/**\n * Code highlighter using Highlight.js\n * @param options - Options passed to highlight.js\n * @returns highlighter configuration for `SiMarkdownOptions.setCodeHighlighter()`\n */\nexport const siMarkdownHighlightJs = (\n options?: SiMarkdownHighlightJsOptions\n): SiMarkdownHighlighter => {\n return {\n component: SiMarkdownHightlightJsComponent,\n options\n };\n};\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-markdown-highlightjs.types';\nexport * from './si-markdown-highlightjs.highlighter';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"siemens-element-ng-markdown-hightlighter-highlightjs.mjs","sources":["../../../../projects/element-ng/markdown/hightlighter/highlightjs/si-markdown-highlightjs.component.ts","../../../../projects/element-ng/markdown/hightlighter/highlightjs/si-markdown-highlightjs.component.html","../../../../projects/element-ng/markdown/hightlighter/highlightjs/si-markdown-highlightjs.highlighter.ts","../../../../projects/element-ng/markdown/hightlighter/highlightjs/index.ts","../../../../projects/element-ng/markdown/hightlighter/highlightjs/siemens-element-ng-markdown-hightlighter-highlightjs.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Component, inject, input } from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { computedAsync, type SiMarkdownHighlighterComponent } from '@siemens/element-ng/markdown';\nimport { type Language } from 'highlight.js';\nimport hljs from 'highlight.js/lib/core';\nimport langBash from 'highlight.js/lib/languages/bash';\nimport langCss from 'highlight.js/lib/languages/css';\nimport langJs from 'highlight.js/lib/languages/javascript';\nimport langJson from 'highlight.js/lib/languages/json';\nimport langMarkdown from 'highlight.js/lib/languages/markdown';\nimport langPython from 'highlight.js/lib/languages/python';\nimport langScss from 'highlight.js/lib/languages/scss';\nimport langTs from 'highlight.js/lib/languages/typescript';\nimport langXml from 'highlight.js/lib/languages/xml';\n\nimport {\n HighlightJSLanguageLoader,\n SiMarkdownHighlightJsOptions\n} from './si-markdown-highlightjs.types';\n\n// some common languages are built-in for initial loading speed\nhljs.registerLanguage('javascript', langJs);\nhljs.registerLanguage('typescript', langTs);\nhljs.registerLanguage('json', langJson);\nhljs.registerLanguage('css', langCss);\nhljs.registerLanguage('scss', langScss);\nhljs.registerLanguage('bash', langBash);\nhljs.registerLanguage('python', langPython);\nhljs.registerLanguage('xml', langXml);\nhljs.registerLanguage('markdown', langMarkdown);\n\nconst getHljsLang = async (\n lang: string,\n loader?: HighlightJSLanguageLoader\n): Promise<Language | undefined> => {\n const loadedLang = hljs.getLanguage(lang);\n if (loadedLang) {\n return loadedLang;\n }\n\n if (loader) {\n const importLang = await loader(lang);\n if (importLang) {\n hljs.registerLanguage(lang, importLang.default);\n return hljs.getLanguage(lang);\n }\n }\n return undefined;\n};\n\n@Component({\n selector: 'si-markdown-highlightjs',\n templateUrl: './si-markdown-highlightjs.component.html',\n styleUrl: './si-markdown-highlightjs.component.scss',\n host: {\n class: 'd-block'\n }\n})\nexport class SiMarkdownHightlightJsComponent implements SiMarkdownHighlighterComponent {\n private readonly sanitizer = inject(DomSanitizer);\n readonly code = input.required<string>();\n readonly language = input.required<string>();\n readonly updateLanguage = input.required<(lang?: string) => void>();\n readonly options = input<SiMarkdownHighlightJsOptions>();\n\n protected readonly highlighted = computedAsync({\n params: () => ({ code: this.code(), language: this.language(), options: this.options() }),\n computation: params => this.highlight(params.code, params.language, params.options),\n initial: undefined\n });\n\n private async highlight(\n code: string,\n language: string,\n options: SiMarkdownHighlightJsOptions = {}\n ): Promise<SafeHtml> {\n let highlighted = '';\n if (!language && options?.autoDetectLanguage) {\n try {\n const res = hljs.highlightAuto(code, undefined);\n highlighted = res.value;\n if (res.language) {\n const lang = hljs.getLanguage(res.language);\n this.updateLanguage()(lang?.name);\n } else {\n this.updateLanguage()(language);\n }\n } catch {\n // ignored\n }\n } else {\n const hljsLang = await getHljsLang(language, options.languageLoader);\n if (hljsLang) {\n this.updateLanguage()(hljsLang.name);\n try {\n highlighted = hljs.highlight(code, { ...options, language }).value;\n } catch {\n // ignored\n }\n } else {\n this.updateLanguage()(language);\n }\n }\n return highlighted ? this.sanitizer.bypassSecurityTrustHtml(highlighted) : '';\n }\n}\n","@let html = highlighted();\n@if (html) {\n <pre class=\"border-0 m-0 p-0\"><code [innerHTML]=\"html\"></code></pre>\n} @else {\n <pre class=\"border-0 m-0 p-0\"><code>{{ code() }} </code></pre>\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\n\nimport { type SiMarkdownHighlighter } from '@siemens/element-ng/markdown';\n\nimport { SiMarkdownHightlightJsComponent } from './si-markdown-highlightjs.component';\nimport { SiMarkdownHighlightJsOptions } from './si-markdown-highlightjs.types';\n\n/**\n * Code highlighter using Highlight.js\n * @param options - Options passed to highlight.js\n * @returns highlighter configuration for `SiMarkdownOptions.setCodeHighlighter()`\n */\nexport const siMarkdownHighlightJs = (\n options?: SiMarkdownHighlightJsOptions\n): SiMarkdownHighlighter => {\n return {\n component: SiMarkdownHightlightJsComponent,\n options\n };\n};\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-markdown-highlightjs.types';\nexport * from './si-markdown-highlightjs.highlighter';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -166,7 +166,7 @@ class SiMenuItemCheckboxComponent extends SiMenuItemBase {
166
166
  return this.cdkMenuItemCheckbox.checked;
167
167
  }
168
168
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMenuItemCheckboxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
169
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiMenuItemCheckboxComponent, isStandalone: true, selector: "si-menu-item-checkbox, button[si-menu-item-checkbox]", usesInheritance: true, hostDirectives: [{ directive: i1.CdkMenuItemCheckbox, inputs: ["cdkMenuItemChecked", "checked", "cdkMenuItemDisabled", "disabled"], outputs: ["cdkMenuItemTriggered", "triggered"] }, { directive: i1.CdkMenuTrigger }], ngImport: i0, template: "<div class=\"item-wrapper\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked && !hideCheckmark) {\n <si-icon class=\"icon\" [icon]=\"icons.elementOk\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }] });
169
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiMenuItemCheckboxComponent, isStandalone: true, selector: "si-menu-item-checkbox, button[si-menu-item-checkbox]", usesInheritance: true, hostDirectives: [{ directive: i1.CdkMenuItemCheckbox, inputs: ["cdkMenuItemChecked", "checked", "cdkMenuItemDisabled", "disabled"], outputs: ["cdkMenuItemTriggered", "triggered"] }, { directive: i1.CdkMenuTrigger }], ngImport: i0, template: "<div class=\"item-wrapper text-nowrap\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked && !hideCheckmark) {\n <si-icon class=\"icon\" [icon]=\"icons.elementOk\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }] });
170
170
  }
171
171
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMenuItemCheckboxComponent, decorators: [{
172
172
  type: Component,
@@ -177,7 +177,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
177
177
  outputs: ['cdkMenuItemTriggered: triggered']
178
178
  },
179
179
  CdkMenuTrigger
180
- ], template: "<div class=\"item-wrapper\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked && !hideCheckmark) {\n <si-icon class=\"icon\" [icon]=\"icons.elementOk\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"] }]
180
+ ], template: "<div class=\"item-wrapper text-nowrap\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked && !hideCheckmark) {\n <si-icon class=\"icon\" [icon]=\"icons.elementOk\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"] }]
181
181
  }] });
182
182
 
183
183
  /**
@@ -191,7 +191,7 @@ class SiMenuItemRadioComponent extends SiMenuItemBase {
191
191
  return this.cdkMenuItemRadio.checked;
192
192
  }
193
193
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMenuItemRadioComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
194
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiMenuItemRadioComponent, isStandalone: true, selector: "si-menu-item-radio", usesInheritance: true, hostDirectives: [{ directive: i1.CdkMenuItemRadio, inputs: ["cdkMenuItemChecked", "checked", "cdkMenuItemDisabled", "disabled"], outputs: ["cdkMenuItemTriggered", "triggered"] }, { directive: i1.CdkMenuTrigger }], ngImport: i0, template: "<div class=\"item-wrapper\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked) {\n <si-icon class=\"icon-sm me-1\" [icon]=\"icons.elementRecordFilled\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }] });
194
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiMenuItemRadioComponent, isStandalone: true, selector: "si-menu-item-radio", usesInheritance: true, hostDirectives: [{ directive: i1.CdkMenuItemRadio, inputs: ["cdkMenuItemChecked", "checked", "cdkMenuItemDisabled", "disabled"], outputs: ["cdkMenuItemTriggered", "triggered"] }, { directive: i1.CdkMenuTrigger }], ngImport: i0, template: "<div class=\"item-wrapper text-nowrap\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked) {\n <si-icon class=\"icon-sm me-1\" [icon]=\"icons.elementRecordFilled\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }] });
195
195
  }
196
196
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMenuItemRadioComponent, decorators: [{
197
197
  type: Component,
@@ -202,7 +202,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
202
202
  outputs: ['cdkMenuItemTriggered: triggered']
203
203
  },
204
204
  CdkMenuTrigger
205
- ], template: "<div class=\"item-wrapper\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked) {\n <si-icon class=\"icon-sm me-1\" [icon]=\"icons.elementRecordFilled\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"] }]
205
+ ], template: "<div class=\"item-wrapper text-nowrap\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked) {\n <si-icon class=\"icon-sm me-1\" [icon]=\"icons.elementRecordFilled\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"] }]
206
206
  }] });
207
207
 
208
208
  /**
@@ -219,7 +219,7 @@ class SiMenuItemComponent extends SiMenuItemBase {
219
219
  return this.menuTrigger?.isOpen();
220
220
  }
221
221
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMenuItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
222
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiMenuItemComponent, isStandalone: true, selector: "si-menu-item, a[si-menu-item], button[si-menu-item]", host: { properties: { "class.active": "hasSubmenu && isExpanded" } }, usesInheritance: true, hostDirectives: [{ directive: i1.CdkMenuItem, inputs: ["cdkMenuItemDisabled", "disabled"], outputs: ["cdkMenuItemTriggered", "triggered"] }], ngImport: i0, template: "<div class=\"item-wrapper\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n <ng-content select=\".end\" />\n @if (hasSubmenu) {\n <si-icon class=\"icon submenu\" [icon]=\"icons.elementRight2\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }] });
222
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiMenuItemComponent, isStandalone: true, selector: "si-menu-item, a[si-menu-item], button[si-menu-item]", host: { properties: { "class.active": "hasSubmenu && isExpanded" } }, usesInheritance: true, hostDirectives: [{ directive: i1.CdkMenuItem, inputs: ["cdkMenuItemDisabled", "disabled"], outputs: ["cdkMenuItemTriggered", "triggered"] }], ngImport: i0, template: "<div class=\"item-wrapper text-nowrap\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n <ng-content select=\".end\" />\n @if (hasSubmenu) {\n <si-icon class=\"icon submenu\" [icon]=\"icons.elementRight2\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }] });
223
223
  }
224
224
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiMenuItemComponent, decorators: [{
225
225
  type: Component,
@@ -231,7 +231,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
231
231
  inputs: ['cdkMenuItemDisabled: disabled'],
232
232
  outputs: ['cdkMenuItemTriggered: triggered']
233
233
  }
234
- ], template: "<div class=\"item-wrapper\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n <ng-content select=\".end\" />\n @if (hasSubmenu) {\n <si-icon class=\"icon submenu\" [icon]=\"icons.elementRight2\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"] }]
234
+ ], template: "<div class=\"item-wrapper text-nowrap\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n <ng-content select=\".end\" />\n @if (hasSubmenu) {\n <si-icon class=\"icon submenu\" [icon]=\"icons.elementRight2\" />\n }\n </div>\n</div>\n", styles: [".item-wrapper{display:flex;align-items:center;flex:1;min-inline-size:var(--si-sys-sizing-icon-md)}.item-title:empty,.item-end:empty{display:none!important}:host-context(si-menu-bar,si-content-action-bar) :host{--btn-bg: var(--si-sys-background-1);--btn-font-weight: 400;min-inline-size:auto!important}:host-context(si-menu-bar,si-content-action-bar) .btn+:host{margin-inline-start:1px!important}:host-context(si-menu-bar,si-content-action-bar) .item-wrapper{justify-content:center}:host-context(si-menu-bar,si-content-action-bar) .icon{margin-inline:0;margin-block:calc(var(--si-sys-sizing-spacing-y-10) * -1)}:host-context(si-menu-bar,si-content-action-bar) .item-end{margin-inline-end:0!important}:host-context(si-menu-bar,si-content-action-bar) .item-title{padding-inline-start:0;flex:0 1 auto}:host-context(si-menu-bar,si-content-action-bar) .item-title:empty+.item-end{display:none!important}:host-context(si-menu-bar,si-content-action-bar) .icon+.item-title{padding-inline-start:var(--si-sys-sizing-spacing-x-20)}:host-context(si-menu-bar,si-content-action-bar) .item-end .submenu{transform:rotate(90deg)}:host-context(si-menu-bar,si-content-action-bar).active .item-end .submenu{transform:rotate(270deg)}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .icon{margin-inline:0}:host-context(si-menu-bar,si-content-action-bar)[aria-haspopup] .item-title{padding-inline-start:var(--si-sys-sizing-spacing-y-20)!important}:host-context(.card-outline){background-color:transparent}\n"] }]
235
235
  }] });
236
236
 
237
237
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"siemens-element-ng-menu.mjs","sources":["../../../../projects/element-ng/menu/si-menu-bar.directive.ts","../../../../projects/element-ng/menu/si-menu-divider.directive.ts","../../../../projects/element-ng/menu/si-menu-action.service.ts","../../../../projects/element-ng/menu/si-menu-factory-item-guard.directive.ts","../../../../projects/element-ng/menu/si-menu-header.directive.ts","../../../../projects/element-ng/menu/si-menu-item-base.directive.ts","../../../../projects/element-ng/menu/si-menu-item-checkbox.component.ts","../../../../projects/element-ng/menu/si-menu-item-checkbox.component.html","../../../../projects/element-ng/menu/si-menu-item-radio.component.ts","../../../../projects/element-ng/menu/si-menu-item-radio.component.html","../../../../projects/element-ng/menu/si-menu-item.component.ts","../../../../projects/element-ng/menu/si-menu-item.component.html","../../../../projects/element-ng/menu/si-menu.directive.ts","../../../../projects/element-ng/menu/si-menu-factory.component.ts","../../../../projects/element-ng/menu/si-menu-factory.component.html","../../../../projects/element-ng/menu/si-menu.module.ts","../../../../projects/element-ng/menu/index.ts","../../../../projects/element-ng/menu/siemens-element-ng-menu.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CdkMenuBar, CdkTargetMenuAim } from '@angular/cdk/menu';\nimport { Directive, inject, input } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-menu-bar',\n host: {\n class: 'd-inline-flex btn-group',\n '[tabindex]': 'tabIndex'\n },\n hostDirectives: [CdkMenuBar, CdkTargetMenuAim]\n})\nexport class SiMenuBarDirective {\n private menuBar = inject(CdkMenuBar, { self: true });\n\n protected get tabIndex(): 0 | -1 | null {\n return this.disabled() ? -1 : this.menuBar._getTabIndex();\n }\n\n /**\n * Sets the menu-bar disabled, i.e. sets tabindex=\"-1\"\n */\n readonly disabled = input<boolean>();\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Directive } from '@angular/core';\n\n@Directive({\n // violating eslint rule, to a have clean API\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-menu-divider',\n host: {\n class: 'd-block dropdown-divider'\n }\n})\nexport class SiMenuDividerDirective {}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { MenuItemAction, MenuItemCheckbox, MenuItemRadio } from './si-menu-model';\n\n/**\n * Implement and provide this to an {@link SiMenuFactoryComponent}\n * to receive trigger events.\n */\nexport abstract class SiMenuActionService {\n /** Will be called by {@link SiMenuFactoryComponent} if an action is defined with a string instead of a function. */\n abstract actionTriggered(\n item: MenuItemAction | MenuItemRadio | MenuItemCheckbox,\n actionParam?: any\n ): void;\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Directive } from '@angular/core';\nimport { MenuItem as MenuItemLegacy } from '@siemens/element-ng/common';\n\nimport { MenuItem } from './si-menu-model';\n\n/** Required to have compiler checks on the factory template */\n@Directive({ selector: '[siMenuFactoryItemGuard]' })\nexport class SiMenuFactoryItemGuardDirective {\n static ngTemplateContextGuard(\n dir: SiMenuFactoryItemGuardDirective,\n ctx: any\n ): ctx is { $implicit: MenuItemLegacy | MenuItem } {\n return true;\n }\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Directive } from '@angular/core';\n\n@Directive({\n // violating eslint rule, to a have clean API\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-menu-header',\n host: {\n class: 'dropdown-item-text dropdown-header'\n }\n})\nexport class SiMenuHeaderDirective {}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CDK_MENU } from '@angular/cdk/menu';\nimport { booleanAttribute, computed, Directive, inject, input } from '@angular/core';\n\n@Directive({\n host: {\n class: 'focus-inside',\n '[class.disabled]': 'disabled()',\n '[class]': 'isInBar ? \"btn btn-tertiary\" : \"dropdown-item\"'\n }\n})\nexport abstract class SiMenuItemBase {\n /** Content displayed in the menu item's badge. */\n readonly badge = input<string | number>();\n /**\n * Color variant of the menu item's badge.\n *\n * @defaultValue 'secondary'\n */\n readonly badgeColor = input('secondary');\n /** Icon displayed before the menu item label. */\n readonly icon = input<string>();\n\n /**\n * Whether to show a dot badge on the icon. A string or number is shown as dot content.\n *\n * @defaultValue false\n */\n readonly iconBadgeDot = input<boolean | string | number | undefined>(false);\n\n /**\n * Whether the menu item is disabled.\n *\n * @defaultValue false\n */\n readonly disabled = input(false, { transform: booleanAttribute });\n\n protected readonly isInBar = inject(CDK_MENU, { optional: true })?.orientation === 'horizontal';\n\n protected readonly badgeDotHasContent = computed(() => {\n return typeof this.iconBadgeDot() === 'string' || typeof this.iconBadgeDot() === 'number';\n });\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CDK_MENU, CdkMenuItemCheckbox, CdkMenuTrigger } from '@angular/cdk/menu';\nimport { Component, inject } from '@angular/core';\nimport { elementOk } from '@siemens/element-icons';\nimport { addIcons, SiIconComponent } from '@siemens/element-ng/icon';\n\nimport { SiMenuItemBase } from './si-menu-item-base.directive';\n\n@Component({\n selector: 'si-menu-item-checkbox, button[si-menu-item-checkbox]',\n imports: [SiIconComponent],\n templateUrl: './si-menu-item-checkbox.component.html',\n styleUrl: './si-menu-item.component.scss',\n hostDirectives: [\n {\n directive: CdkMenuItemCheckbox,\n inputs: ['cdkMenuItemChecked: checked', 'cdkMenuItemDisabled: disabled'],\n outputs: ['cdkMenuItemTriggered: triggered']\n },\n CdkMenuTrigger\n ]\n})\nexport class SiMenuItemCheckboxComponent extends SiMenuItemBase {\n private cdkMenuItemCheckbox = inject(CdkMenuItemCheckbox);\n protected readonly icons = addIcons({ elementOk });\n protected readonly hideCheckmark = inject(CDK_MENU).orientation === 'horizontal';\n\n protected get checked(): boolean {\n return this.cdkMenuItemCheckbox.checked;\n }\n}\n","<div class=\"item-wrapper\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked && !hideCheckmark) {\n <si-icon class=\"icon\" [icon]=\"icons.elementOk\" />\n }\n </div>\n</div>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CdkMenuItemRadio, CdkMenuTrigger } from '@angular/cdk/menu';\nimport { Component, inject } from '@angular/core';\nimport { elementRecordFilled } from '@siemens/element-icons';\nimport { addIcons, SiIconComponent } from '@siemens/element-ng/icon';\n\nimport { SiMenuItemBase } from './si-menu-item-base.directive';\n\n@Component({\n selector: 'si-menu-item-radio',\n imports: [SiIconComponent],\n templateUrl: './si-menu-item-radio.component.html',\n styleUrl: './si-menu-item.component.scss',\n hostDirectives: [\n {\n directive: CdkMenuItemRadio,\n inputs: ['cdkMenuItemChecked: checked', 'cdkMenuItemDisabled: disabled'],\n outputs: ['cdkMenuItemTriggered: triggered']\n },\n CdkMenuTrigger\n ]\n})\nexport class SiMenuItemRadioComponent extends SiMenuItemBase {\n private cdkMenuItemRadio = inject(CdkMenuItemRadio);\n protected readonly icons = addIcons({ elementRecordFilled });\n protected get checked(): boolean {\n return this.cdkMenuItemRadio.checked;\n }\n}\n","<div class=\"item-wrapper\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked) {\n <si-icon class=\"icon-sm me-1\" [icon]=\"icons.elementRecordFilled\" />\n }\n </div>\n</div>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CdkMenuItem, MENU_TRIGGER } from '@angular/cdk/menu';\nimport { Component, inject } from '@angular/core';\nimport { elementRight2 } from '@siemens/element-icons';\nimport { addIcons, SiIconComponent } from '@siemens/element-ng/icon';\n\nimport { SiMenuItemBase } from './si-menu-item-base.directive';\n\n@Component({\n selector: 'si-menu-item, a[si-menu-item], button[si-menu-item]',\n imports: [SiIconComponent],\n templateUrl: './si-menu-item.component.html',\n styleUrl: './si-menu-item.component.scss',\n host: {\n '[class.active]': 'hasSubmenu && isExpanded'\n },\n hostDirectives: [\n {\n directive: CdkMenuItem,\n inputs: ['cdkMenuItemDisabled: disabled'],\n outputs: ['cdkMenuItemTriggered: triggered']\n }\n ]\n})\nexport class SiMenuItemComponent extends SiMenuItemBase {\n private menuTrigger = inject(MENU_TRIGGER, { optional: true, self: true });\n protected readonly icons = addIcons({ elementRight2 });\n protected get hasSubmenu(): boolean {\n return !!this.menuTrigger?.menuTemplateRef;\n }\n\n protected get isExpanded(): boolean | undefined {\n return this.menuTrigger?.isOpen();\n }\n}\n","<div class=\"item-wrapper\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n <ng-content select=\".end\" />\n @if (hasSubmenu) {\n <si-icon class=\"icon submenu\" [icon]=\"icons.elementRight2\" />\n }\n </div>\n</div>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CdkMenu, CdkTargetMenuAim } from '@angular/cdk/menu';\nimport { Directive } from '@angular/core';\n\n@Directive({\n // violating eslint rule, to a have clean API\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-menu',\n host: {\n class: 'd-block dropdown-menu position-static'\n },\n hostDirectives: [CdkMenu, CdkTargetMenuAim]\n})\nexport class SiMenuDirective {}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CdkMenuGroup, CdkMenuTrigger } from '@angular/cdk/menu';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { MenuItem as MenuItemLegacy } from '@siemens/element-ng/common';\nimport { SiLinkActionService, SiLinkModule } from '@siemens/element-ng/link';\nimport { SiTranslatePipe } from '@siemens/element-translate-ng/translate';\n\nimport { SiMenuActionService } from './si-menu-action.service';\nimport { SiMenuDividerDirective } from './si-menu-divider.directive';\nimport { SiMenuFactoryItemGuardDirective } from './si-menu-factory-item-guard.directive';\nimport { SiMenuHeaderDirective } from './si-menu-header.directive';\nimport { SiMenuItemCheckboxComponent } from './si-menu-item-checkbox.component';\nimport { SiMenuItemRadioComponent } from './si-menu-item-radio.component';\nimport { SiMenuItemComponent } from './si-menu-item.component';\nimport { MenuItem, MenuItemAction, MenuItemCheckbox, MenuItemRadio } from './si-menu-model';\nimport { SiMenuDirective } from './si-menu.directive';\n\n@Component({\n selector: 'si-menu-factory',\n imports: [\n SiMenuDirective,\n SiMenuItemComponent,\n SiMenuItemRadioComponent,\n SiMenuItemCheckboxComponent,\n SiMenuHeaderDirective,\n SiMenuDividerDirective,\n SiLinkModule,\n CdkMenuTrigger,\n SiTranslatePipe,\n CdkMenuGroup,\n NgTemplateOutlet,\n RouterLink,\n SiMenuFactoryItemGuardDirective\n ],\n templateUrl: './si-menu-factory.component.html',\n changeDetection: ChangeDetectionStrategy.Eager\n})\nexport class SiMenuFactoryComponent {\n /** Menu items to render. Supports legacy and current menu item models. */\n readonly items = input<readonly (MenuItemLegacy | MenuItem)[]>();\n /** Parameter passed to triggered menu item actions. */\n readonly actionParam = input();\n\n private linkActionService = inject(SiLinkActionService, { optional: true });\n private menuActionService = inject(SiMenuActionService, { optional: true });\n\n protected trackItem(index: number, item: MenuItemLegacy | MenuItem): string | number {\n if ('id' in item && item.id) {\n return item.id;\n }\n if ('label' in item && item.label) {\n return item.label;\n }\n if ('title' in item && item.title) {\n return item.title;\n }\n return index;\n }\n\n protected isNewItemStyle(item: MenuItemLegacy | MenuItem): item is MenuItem {\n return 'label' in item || item.type === 'divider' || item.type === 'radio-group';\n }\n\n protected isLegacyItemStyle(item: MenuItemLegacy | MenuItem): item is MenuItemLegacy {\n return !this.isNewItemStyle(item);\n }\n\n protected radioOrCheckboxTriggered(item: MenuItemLegacy): void {\n if (typeof item.action === 'function') {\n item.action(this.actionParam());\n } else {\n this.linkActionService?.emit(item, this.actionParam());\n }\n }\n\n protected runAction(item: MenuItemAction | MenuItemRadio | MenuItemCheckbox): void {\n if (typeof item.action === 'function') {\n item.action(this.actionParam(), item as any); // typescript cannot level down the item type properly\n }\n\n if (typeof item.action === 'string') {\n this.menuActionService?.actionTriggered(item, this.actionParam());\n }\n }\n}\n","<si-menu>\n @for (item of items(); track trackItem($index, item)) {\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\" />\n }\n <ng-template #itemTemplate let-item siMenuFactoryItemGuard>\n @if (isNewItemStyle(item)) {\n @switch (item.type) {\n @case ('group') {\n <si-menu-item\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n [cdkMenuTriggerFor]=\"submenu\"\n [cdkMenuTriggerData]=\"{ $implicit: item.children }\"\n >{{ item.label | translate }}\n </si-menu-item>\n <ng-template #submenu>\n <si-menu-factory [items]=\"item.children\" [actionParam]=\"actionParam()\" />\n </ng-template>\n }\n @case ('action') {\n <si-menu-item\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n (triggered)=\"runAction(item)\"\n >{{ item.label | translate }}\n </si-menu-item>\n }\n @case ('router-link') {\n <a\n si-menu-item\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n [routerLink]=\"item.routerLink\"\n [queryParams]=\"item.extras?.queryParams\"\n [queryParamsHandling]=\"item.extras?.queryParamsHandling\"\n [fragment]=\"item.extras?.fragment\"\n [state]=\"item.extras?.state\"\n [relativeTo]=\"item.extras?.relativeTo\"\n [preserveFragment]=\"item.extras?.preserveFragment\"\n [skipLocationChange]=\"item.extras?.skipLocationChange\"\n [replaceUrl]=\"item.extras?.replaceUrl\"\n >{{ item.label | translate }}\n </a>\n }\n @case ('link') {\n <a\n si-menu-item\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n [href]=\"item.href\"\n [target]=\"item.target\"\n >{{ item.label | translate }}\n </a>\n }\n @case ('radio-group') {\n <div cdkMenuGroup>\n @for (radioItem of item.children; track radioItem) {\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: radioItem }\" />\n }\n </div>\n }\n @case ('radio') {\n <si-menu-item-radio\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n [checked]=\"item.checked\"\n (triggered)=\"runAction(item)\"\n >{{ item.label | translate }}\n </si-menu-item-radio>\n }\n @case ('checkbox') {\n <si-menu-item-checkbox\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n [checked]=\"item.checked\"\n (triggered)=\"runAction(item)\"\n >{{ item.label | translate }}\n </si-menu-item-checkbox>\n }\n @case ('header') {\n <si-menu-header>{{ item.label | translate }}</si-menu-header>\n }\n @case ('divider') {\n <si-menu-divider />\n }\n }\n } @else if (isLegacyItemStyle(item)) {\n @switch (item.type) {\n @case ('radio') {\n <si-menu-item-radio\n [attr.data-id]=\"item.id\"\n [checked]=\"item.selectionState === 'radio'\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [icon]=\"item.icon\"\n [disabled]=\"item.disabled\"\n [iconBadgeDot]=\"item.badgeDot\"\n (triggered)=\"radioOrCheckboxTriggered(item)\"\n >\n {{ item.title | translate }}\n </si-menu-item-radio>\n }\n @case ('check') {\n <si-menu-item-checkbox\n [attr.data-id]=\"item.id\"\n [checked]=\"item.selectionState === 'check'\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [icon]=\"item.icon\"\n [disabled]=\"item.disabled\"\n [iconBadgeDot]=\"item.badgeDot\"\n (triggered)=\"radioOrCheckboxTriggered(item)\"\n >\n {{ item.title | translate }}\n </si-menu-item-checkbox>\n }\n @default {\n @if (item.isHeading) {\n <div class=\"dropdown-item-text dropdown-header\">\n {{ item.title | translate }}\n </div>\n } @else {\n @if (item.title !== '-') {\n <a\n si-menu-item\n activeClass=\"active\"\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [icon]=\"item.icon\"\n [disabled]=\"item.disabled\"\n [siLink]=\"item\"\n [iconBadgeDot]=\"item.badgeDot\"\n [actionParam]=\"actionParam()\"\n [cdkMenuTriggerFor]=\"item.items ? submenu : null\"\n [cdkMenuTriggerData]=\"item\"\n >\n {{ item.title | translate }}\n </a>\n <ng-template #submenu>\n <si-menu-factory [items]=\"item.items!\" [actionParam]=\"actionParam()\" />\n </ng-template>\n } @else {\n <div class=\"dropdown-divider\"></div>\n }\n }\n }\n }\n }\n </ng-template>\n</si-menu>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { NgModule } from '@angular/core';\n\nimport { SiMenuBarDirective } from './si-menu-bar.directive';\nimport { SiMenuDividerDirective } from './si-menu-divider.directive';\nimport { SiMenuFactoryComponent } from './si-menu-factory.component';\nimport { SiMenuHeaderDirective } from './si-menu-header.directive';\nimport { SiMenuItemCheckboxComponent } from './si-menu-item-checkbox.component';\nimport { SiMenuItemRadioComponent } from './si-menu-item-radio.component';\nimport { SiMenuItemComponent } from './si-menu-item.component';\nimport { SiMenuDirective } from './si-menu.directive';\n\n@NgModule({\n imports: [\n SiMenuBarDirective,\n SiMenuDirective,\n SiMenuDividerDirective,\n SiMenuFactoryComponent,\n SiMenuHeaderDirective,\n SiMenuItemCheckboxComponent,\n SiMenuItemComponent,\n SiMenuItemRadioComponent\n ],\n exports: [\n SiMenuBarDirective,\n SiMenuDirective,\n SiMenuDividerDirective,\n SiMenuFactoryComponent,\n SiMenuHeaderDirective,\n SiMenuItemCheckboxComponent,\n SiMenuItemComponent,\n SiMenuItemRadioComponent\n ]\n})\nexport class SiMenuModule {}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-menu.module';\nexport * from './si-menu-item.component';\nexport * from './si-menu-item-checkbox.component';\nexport * from './si-menu-item-radio.component';\nexport * from './si-menu.directive';\nexport * from './si-menu-bar.directive';\nexport * from './si-menu-header.directive';\nexport * from './si-menu-divider.directive';\nexport * from './si-menu-factory.component';\nexport * from './si-menu-model';\nexport * from './si-menu-action.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":";;;;;;;;;;;;AAAA;;;AAGG;MAaU,kBAAkB,CAAA;IACrB,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAEpD,IAAA,IAAc,QAAQ,GAAA;AACpB,QAAA,OAAO,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;IAC3D;AAEA;;AAEG;AACM,IAAA,QAAQ,GAAG,KAAK;4FAAW;uGAVzB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,UAAA,EAAA,UAAA,EAAA,EAAA,cAAA,EAAA,yBAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAT9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;AAET,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,yBAAyB;AAChC,wBAAA,YAAY,EAAE;AACf,qBAAA;AACD,oBAAA,cAAc,EAAE,CAAC,UAAU,EAAE,gBAAgB;AAC9C,iBAAA;;;ACfD;;;AAGG;MAWU,sBAAsB,CAAA;uGAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,0BAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBARlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;;AAGT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE;AACR;AACF,iBAAA;;;ACPD;;;AAGG;MACmB,mBAAmB,CAAA;AAMxC;;AChBD;;;AAGG;AAMH;MAEa,+BAA+B,CAAA;AAC1C,IAAA,OAAO,sBAAsB,CAC3B,GAAoC,EACpC,GAAQ,EAAA;AAER,QAAA,OAAO,IAAI;IACb;uGANW,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAA/B,+BAA+B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAA/B,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAD3C,SAAS;mBAAC,EAAE,QAAQ,EAAE,0BAA0B,EAAE;;;ACVnD;;;AAGG;MAWU,qBAAqB,CAAA;uGAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,oCAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBARjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;;AAGT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE;AACR;AACF,iBAAA;;;ACbD;;;AAGG;MAWmB,cAAc,CAAA;;AAEzB,IAAA,KAAK,GAAG,KAAK;yFAAmB;AACzC;;;;AAIG;IACM,UAAU,GAAG,KAAK,CAAC,WAAW;mFAAC;;AAE/B,IAAA,IAAI,GAAG,KAAK;wFAAU;AAE/B;;;;AAIG;IACM,YAAY,GAAG,KAAK,CAAwC,KAAK;qFAAC;AAE3E;;;;AAIG;IACM,QAAQ,GAAG,KAAK,CAAC,KAAK,gFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAE9C,IAAA,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,KAAK,YAAY;AAE5E,IAAA,kBAAkB,GAAG,QAAQ,CAAC,MAAK;AACpD,QAAA,OAAO,OAAO,IAAI,CAAC,YAAY,EAAE,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,YAAY,EAAE,KAAK,QAAQ;IAC3F,CAAC;2FAAC;uGA9BkB,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,OAAA,EAAA,oDAAA,EAAA,EAAA,cAAA,EAAA,cAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAPnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,cAAc;AACrB,wBAAA,kBAAkB,EAAE,YAAY;AAChC,wBAAA,SAAS,EAAE;AACZ;AACF,iBAAA;;;ACbD;;;AAGG;AAsBG,MAAO,2BAA4B,SAAQ,cAAc,CAAA;AACrD,IAAA,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC;AACtC,IAAA,KAAK,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;IAC/B,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,KAAK,YAAY;AAEhF,IAAA,IAAc,OAAO,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,mBAAmB,CAAC,OAAO;IACzC;uGAPW,2BAA2B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAA3B,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sDAAA,EAAA,eAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,SAAA,EAAA,qBAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,sBAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECzBxC,2tBAoBA,EAAA,MAAA,EAAA,CAAA,49CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDPY,eAAe,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAYd,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAdvC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,sDAAsD,EAAA,OAAA,EACvD,CAAC,eAAe,CAAC,EAAA,cAAA,EAGV;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,mBAAmB;AAC9B,4BAAA,MAAM,EAAE,CAAC,6BAA6B,EAAE,+BAA+B,CAAC;4BACxE,OAAO,EAAE,CAAC,iCAAiC;AAC5C,yBAAA;wBACD;AACD,qBAAA,EAAA,QAAA,EAAA,2tBAAA,EAAA,MAAA,EAAA,CAAA,49CAAA,CAAA,EAAA;;;AEvBH;;;AAGG;AAsBG,MAAO,wBAAyB,SAAQ,cAAc,CAAA;AAClD,IAAA,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAChC,IAAA,KAAK,GAAG,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;AAC5D,IAAA,IAAc,OAAO,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO;IACtC;uGALW,wBAAwB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,SAAA,EAAA,qBAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,sBAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECzBrC,2tBAoBA,EAAA,MAAA,EAAA,CAAA,49CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDPY,eAAe,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAYd,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAdpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,EAAA,OAAA,EACrB,CAAC,eAAe,CAAC,EAAA,cAAA,EAGV;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,gBAAgB;AAC3B,4BAAA,MAAM,EAAE,CAAC,6BAA6B,EAAE,+BAA+B,CAAC;4BACxE,OAAO,EAAE,CAAC,iCAAiC;AAC5C,yBAAA;wBACD;AACD,qBAAA,EAAA,QAAA,EAAA,2tBAAA,EAAA,MAAA,EAAA,CAAA,49CAAA,CAAA,EAAA;;;AEvBH;;;AAGG;AAwBG,MAAO,mBAAoB,SAAQ,cAAc,CAAA;AAC7C,IAAA,WAAW,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACvD,IAAA,KAAK,GAAG,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;AACtD,IAAA,IAAc,UAAU,GAAA;AACtB,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe;IAC5C;AAEA,IAAA,IAAc,UAAU,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE;IACnC;uGATW,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,cAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,WAAA,EAAA,MAAA,EAAA,CAAA,qBAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,sBAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3BhC,4vBAqBA,EAAA,MAAA,EAAA,CAAA,49CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDRY,eAAe,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAcd,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAhB/B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qDAAqD,EAAA,OAAA,EACtD,CAAC,eAAe,CAAC,EAAA,IAAA,EAGpB;AACJ,wBAAA,gBAAgB,EAAE;qBACnB,EAAA,cAAA,EACe;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,WAAW;4BACtB,MAAM,EAAE,CAAC,+BAA+B,CAAC;4BACzC,OAAO,EAAE,CAAC,iCAAiC;AAC5C;AACF,qBAAA,EAAA,QAAA,EAAA,4vBAAA,EAAA,MAAA,EAAA,CAAA,49CAAA,CAAA,EAAA;;;AEzBH;;;AAGG;MAaU,eAAe,CAAA;uGAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,SAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,uCAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,OAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAT3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;;AAGT,oBAAA,QAAQ,EAAE,SAAS;AACnB,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE;AACR,qBAAA;AACD,oBAAA,cAAc,EAAE,CAAC,OAAO,EAAE,gBAAgB;AAC3C,iBAAA;;;ACfD;;;AAGG;MAuCU,sBAAsB,CAAA;;AAExB,IAAA,KAAK,GAAG,KAAK;yFAA0C;;AAEvD,IAAA,WAAW,GAAG,KAAK;+FAAE;IAEtB,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACnE,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAEjE,SAAS,CAAC,KAAa,EAAE,IAA+B,EAAA;QAChE,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE;YAC3B,OAAO,IAAI,CAAC,EAAE;QAChB;QACA,IAAI,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;YACjC,OAAO,IAAI,CAAC,KAAK;QACnB;QACA,IAAI,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;YACjC,OAAO,IAAI,CAAC,KAAK;QACnB;AACA,QAAA,OAAO,KAAK;IACd;AAEU,IAAA,cAAc,CAAC,IAA+B,EAAA;AACtD,QAAA,OAAO,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa;IAClF;AAEU,IAAA,iBAAiB,CAAC,IAA+B,EAAA;AACzD,QAAA,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;IACnC;AAEU,IAAA,wBAAwB,CAAC,IAAoB,EAAA;AACrD,QAAA,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE;YACrC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjC;aAAO;AACL,YAAA,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;QACxD;IACF;AAEU,IAAA,SAAS,CAAC,IAAuD,EAAA;AACzE,QAAA,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE;AACrC,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAW,CAAC,CAAC;QAC/C;AAEA,QAAA,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;AACnC,YAAA,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;QACnE;IACF;uGA9CW,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAtB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1CnC,i8MA+KA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDrIa,sBAAsB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAjB/B,eAAe,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACf,mBAAmB,EAAA,QAAA,EAAA,qDAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnB,wBAAwB,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACxB,2BAA2B,EAAA,QAAA,EAAA,sDAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC3B,qBAAqB,EAAA,QAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACrB,sBAAsB,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACtB,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,aAAA,EAAA,YAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACZ,cAAc,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,mBAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,iCAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,EAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAEd,YAAY,EAAA,QAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACZ,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,UAAU,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,MAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACV,+BAA+B,gEAJ/B,eAAe,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,CAAA;;2FASN,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBApBlC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EAAA,OAAA,EAClB;wBACP,eAAe;wBACf,mBAAmB;wBACnB,wBAAwB;wBACxB,2BAA2B;wBAC3B,qBAAqB;wBACrB,sBAAsB;wBACtB,YAAY;wBACZ,cAAc;wBACd,eAAe;wBACf,YAAY;wBACZ,gBAAgB;wBAChB,UAAU;wBACV;qBACD,EAAA,eAAA,EAEgB,uBAAuB,CAAC,KAAK,EAAA,QAAA,EAAA,i8MAAA,EAAA;;;AExChD;;;AAGG;MAkCU,YAAY,CAAA;uGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAZ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YApBrB,kBAAkB;YAClB,eAAe;YACf,sBAAsB;YACtB,sBAAsB;YACtB,qBAAqB;YACrB,2BAA2B;YAC3B,mBAAmB;AACnB,YAAA,wBAAwB,aAGxB,kBAAkB;YAClB,eAAe;YACf,sBAAsB;YACtB,sBAAsB;YACtB,qBAAqB;YACrB,2BAA2B;YAC3B,mBAAmB;YACnB,wBAAwB,CAAA,EAAA,CAAA;AAGf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YAjBrB,sBAAsB;YAEtB,2BAA2B;YAC3B,mBAAmB;YACnB,wBAAwB,CAAA,EAAA,CAAA;;2FAaf,YAAY,EAAA,UAAA,EAAA,CAAA;kBAtBxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,kBAAkB;wBAClB,eAAe;wBACf,sBAAsB;wBACtB,sBAAsB;wBACtB,qBAAqB;wBACrB,2BAA2B;wBAC3B,mBAAmB;wBACnB;AACD,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,kBAAkB;wBAClB,eAAe;wBACf,sBAAsB;wBACtB,sBAAsB;wBACtB,qBAAqB;wBACrB,2BAA2B;wBAC3B,mBAAmB;wBACnB;AACD;AACF,iBAAA;;;ACpCD;;;AAGG;;ACHH;;AAEG;;;;"}
1
+ {"version":3,"file":"siemens-element-ng-menu.mjs","sources":["../../../../projects/element-ng/menu/si-menu-bar.directive.ts","../../../../projects/element-ng/menu/si-menu-divider.directive.ts","../../../../projects/element-ng/menu/si-menu-action.service.ts","../../../../projects/element-ng/menu/si-menu-factory-item-guard.directive.ts","../../../../projects/element-ng/menu/si-menu-header.directive.ts","../../../../projects/element-ng/menu/si-menu-item-base.directive.ts","../../../../projects/element-ng/menu/si-menu-item-checkbox.component.ts","../../../../projects/element-ng/menu/si-menu-item-checkbox.component.html","../../../../projects/element-ng/menu/si-menu-item-radio.component.ts","../../../../projects/element-ng/menu/si-menu-item-radio.component.html","../../../../projects/element-ng/menu/si-menu-item.component.ts","../../../../projects/element-ng/menu/si-menu-item.component.html","../../../../projects/element-ng/menu/si-menu.directive.ts","../../../../projects/element-ng/menu/si-menu-factory.component.ts","../../../../projects/element-ng/menu/si-menu-factory.component.html","../../../../projects/element-ng/menu/si-menu.module.ts","../../../../projects/element-ng/menu/index.ts","../../../../projects/element-ng/menu/siemens-element-ng-menu.ts"],"sourcesContent":["/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CdkMenuBar, CdkTargetMenuAim } from '@angular/cdk/menu';\nimport { Directive, inject, input } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-menu-bar',\n host: {\n class: 'd-inline-flex btn-group',\n '[tabindex]': 'tabIndex'\n },\n hostDirectives: [CdkMenuBar, CdkTargetMenuAim]\n})\nexport class SiMenuBarDirective {\n private menuBar = inject(CdkMenuBar, { self: true });\n\n protected get tabIndex(): 0 | -1 | null {\n return this.disabled() ? -1 : this.menuBar._getTabIndex();\n }\n\n /**\n * Sets the menu-bar disabled, i.e. sets tabindex=\"-1\"\n */\n readonly disabled = input<boolean>();\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Directive } from '@angular/core';\n\n@Directive({\n // violating eslint rule, to a have clean API\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-menu-divider',\n host: {\n class: 'd-block dropdown-divider'\n }\n})\nexport class SiMenuDividerDirective {}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { MenuItemAction, MenuItemCheckbox, MenuItemRadio } from './si-menu-model';\n\n/**\n * Implement and provide this to an {@link SiMenuFactoryComponent}\n * to receive trigger events.\n */\nexport abstract class SiMenuActionService {\n /** Will be called by {@link SiMenuFactoryComponent} if an action is defined with a string instead of a function. */\n abstract actionTriggered(\n item: MenuItemAction | MenuItemRadio | MenuItemCheckbox,\n actionParam?: any\n ): void;\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Directive } from '@angular/core';\nimport { MenuItem as MenuItemLegacy } from '@siemens/element-ng/common';\n\nimport { MenuItem } from './si-menu-model';\n\n/** Required to have compiler checks on the factory template */\n@Directive({ selector: '[siMenuFactoryItemGuard]' })\nexport class SiMenuFactoryItemGuardDirective {\n static ngTemplateContextGuard(\n dir: SiMenuFactoryItemGuardDirective,\n ctx: any\n ): ctx is { $implicit: MenuItemLegacy | MenuItem } {\n return true;\n }\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { Directive } from '@angular/core';\n\n@Directive({\n // violating eslint rule, to a have clean API\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-menu-header',\n host: {\n class: 'dropdown-item-text dropdown-header'\n }\n})\nexport class SiMenuHeaderDirective {}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CDK_MENU } from '@angular/cdk/menu';\nimport { booleanAttribute, computed, Directive, inject, input } from '@angular/core';\n\n@Directive({\n host: {\n class: 'focus-inside',\n '[class.disabled]': 'disabled()',\n '[class]': 'isInBar ? \"btn btn-tertiary\" : \"dropdown-item\"'\n }\n})\nexport abstract class SiMenuItemBase {\n /** Content displayed in the menu item's badge. */\n readonly badge = input<string | number>();\n /**\n * Color variant of the menu item's badge.\n *\n * @defaultValue 'secondary'\n */\n readonly badgeColor = input('secondary');\n /** Icon displayed before the menu item label. */\n readonly icon = input<string>();\n\n /**\n * Whether to show a dot badge on the icon. A string or number is shown as dot content.\n *\n * @defaultValue false\n */\n readonly iconBadgeDot = input<boolean | string | number | undefined>(false);\n\n /**\n * Whether the menu item is disabled.\n *\n * @defaultValue false\n */\n readonly disabled = input(false, { transform: booleanAttribute });\n\n protected readonly isInBar = inject(CDK_MENU, { optional: true })?.orientation === 'horizontal';\n\n protected readonly badgeDotHasContent = computed(() => {\n return typeof this.iconBadgeDot() === 'string' || typeof this.iconBadgeDot() === 'number';\n });\n}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CDK_MENU, CdkMenuItemCheckbox, CdkMenuTrigger } from '@angular/cdk/menu';\nimport { Component, inject } from '@angular/core';\nimport { elementOk } from '@siemens/element-icons';\nimport { addIcons, SiIconComponent } from '@siemens/element-ng/icon';\n\nimport { SiMenuItemBase } from './si-menu-item-base.directive';\n\n@Component({\n selector: 'si-menu-item-checkbox, button[si-menu-item-checkbox]',\n imports: [SiIconComponent],\n templateUrl: './si-menu-item-checkbox.component.html',\n styleUrl: './si-menu-item.component.scss',\n hostDirectives: [\n {\n directive: CdkMenuItemCheckbox,\n inputs: ['cdkMenuItemChecked: checked', 'cdkMenuItemDisabled: disabled'],\n outputs: ['cdkMenuItemTriggered: triggered']\n },\n CdkMenuTrigger\n ]\n})\nexport class SiMenuItemCheckboxComponent extends SiMenuItemBase {\n private cdkMenuItemCheckbox = inject(CdkMenuItemCheckbox);\n protected readonly icons = addIcons({ elementOk });\n protected readonly hideCheckmark = inject(CDK_MENU).orientation === 'horizontal';\n\n protected get checked(): boolean {\n return this.cdkMenuItemCheckbox.checked;\n }\n}\n","<div class=\"item-wrapper text-nowrap\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked && !hideCheckmark) {\n <si-icon class=\"icon\" [icon]=\"icons.elementOk\" />\n }\n </div>\n</div>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CdkMenuItemRadio, CdkMenuTrigger } from '@angular/cdk/menu';\nimport { Component, inject } from '@angular/core';\nimport { elementRecordFilled } from '@siemens/element-icons';\nimport { addIcons, SiIconComponent } from '@siemens/element-ng/icon';\n\nimport { SiMenuItemBase } from './si-menu-item-base.directive';\n\n@Component({\n selector: 'si-menu-item-radio',\n imports: [SiIconComponent],\n templateUrl: './si-menu-item-radio.component.html',\n styleUrl: './si-menu-item.component.scss',\n hostDirectives: [\n {\n directive: CdkMenuItemRadio,\n inputs: ['cdkMenuItemChecked: checked', 'cdkMenuItemDisabled: disabled'],\n outputs: ['cdkMenuItemTriggered: triggered']\n },\n CdkMenuTrigger\n ]\n})\nexport class SiMenuItemRadioComponent extends SiMenuItemBase {\n private cdkMenuItemRadio = inject(CdkMenuItemRadio);\n protected readonly icons = addIcons({ elementRecordFilled });\n protected get checked(): boolean {\n return this.cdkMenuItemRadio.checked;\n }\n}\n","<div class=\"item-wrapper text-nowrap\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n @if (checked) {\n <si-icon class=\"icon-sm me-1\" [icon]=\"icons.elementRecordFilled\" />\n }\n </div>\n</div>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CdkMenuItem, MENU_TRIGGER } from '@angular/cdk/menu';\nimport { Component, inject } from '@angular/core';\nimport { elementRight2 } from '@siemens/element-icons';\nimport { addIcons, SiIconComponent } from '@siemens/element-ng/icon';\n\nimport { SiMenuItemBase } from './si-menu-item-base.directive';\n\n@Component({\n selector: 'si-menu-item, a[si-menu-item], button[si-menu-item]',\n imports: [SiIconComponent],\n templateUrl: './si-menu-item.component.html',\n styleUrl: './si-menu-item.component.scss',\n host: {\n '[class.active]': 'hasSubmenu && isExpanded'\n },\n hostDirectives: [\n {\n directive: CdkMenuItem,\n inputs: ['cdkMenuItemDisabled: disabled'],\n outputs: ['cdkMenuItemTriggered: triggered']\n }\n ]\n})\nexport class SiMenuItemComponent extends SiMenuItemBase {\n private menuTrigger = inject(MENU_TRIGGER, { optional: true, self: true });\n protected readonly icons = addIcons({ elementRight2 });\n protected get hasSubmenu(): boolean {\n return !!this.menuTrigger?.menuTemplateRef;\n }\n\n protected get isExpanded(): boolean | undefined {\n return this.menuTrigger?.isOpen();\n }\n}\n","<div class=\"item-wrapper text-nowrap\">\n @let iconValue = icon();\n @if (iconValue && !badgeDotHasContent()) {\n <si-icon class=\"icon\" [class.badge-dot]=\"iconBadgeDot()\" [icon]=\"iconValue\" />\n } @else if (iconValue && badgeDotHasContent()) {\n <si-icon class=\"icon badge-dot\" [icon]=\"iconValue\" />\n <span class=\"badge-text\">{{ iconBadgeDot() }}</span>\n }\n <span class=\"item-title\">\n <ng-content />\n </span>\n <div class=\"item-end ms-2 d-flex me-n3 gap-1\">\n @if (badge()) {\n <span class=\"mx-0 badge\" [class]=\"`bg-${badgeColor()}`\">{{ badge() }}</span>\n }\n <ng-content select=\".end\" />\n @if (hasSubmenu) {\n <si-icon class=\"icon submenu\" [icon]=\"icons.elementRight2\" />\n }\n </div>\n</div>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CdkMenu, CdkTargetMenuAim } from '@angular/cdk/menu';\nimport { Directive } from '@angular/core';\n\n@Directive({\n // violating eslint rule, to a have clean API\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'si-menu',\n host: {\n class: 'd-block dropdown-menu position-static'\n },\n hostDirectives: [CdkMenu, CdkTargetMenuAim]\n})\nexport class SiMenuDirective {}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { CdkMenuGroup, CdkMenuTrigger } from '@angular/cdk/menu';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { MenuItem as MenuItemLegacy } from '@siemens/element-ng/common';\nimport { SiLinkActionService, SiLinkModule } from '@siemens/element-ng/link';\nimport { SiTranslatePipe } from '@siemens/element-translate-ng/translate';\n\nimport { SiMenuActionService } from './si-menu-action.service';\nimport { SiMenuDividerDirective } from './si-menu-divider.directive';\nimport { SiMenuFactoryItemGuardDirective } from './si-menu-factory-item-guard.directive';\nimport { SiMenuHeaderDirective } from './si-menu-header.directive';\nimport { SiMenuItemCheckboxComponent } from './si-menu-item-checkbox.component';\nimport { SiMenuItemRadioComponent } from './si-menu-item-radio.component';\nimport { SiMenuItemComponent } from './si-menu-item.component';\nimport { MenuItem, MenuItemAction, MenuItemCheckbox, MenuItemRadio } from './si-menu-model';\nimport { SiMenuDirective } from './si-menu.directive';\n\n@Component({\n selector: 'si-menu-factory',\n imports: [\n SiMenuDirective,\n SiMenuItemComponent,\n SiMenuItemRadioComponent,\n SiMenuItemCheckboxComponent,\n SiMenuHeaderDirective,\n SiMenuDividerDirective,\n SiLinkModule,\n CdkMenuTrigger,\n SiTranslatePipe,\n CdkMenuGroup,\n NgTemplateOutlet,\n RouterLink,\n SiMenuFactoryItemGuardDirective\n ],\n templateUrl: './si-menu-factory.component.html',\n changeDetection: ChangeDetectionStrategy.Eager\n})\nexport class SiMenuFactoryComponent {\n /** Menu items to render. Supports legacy and current menu item models. */\n readonly items = input<readonly (MenuItemLegacy | MenuItem)[]>();\n /** Parameter passed to triggered menu item actions. */\n readonly actionParam = input();\n\n private linkActionService = inject(SiLinkActionService, { optional: true });\n private menuActionService = inject(SiMenuActionService, { optional: true });\n\n protected trackItem(index: number, item: MenuItemLegacy | MenuItem): string | number {\n if ('id' in item && item.id) {\n return item.id;\n }\n if ('label' in item && item.label) {\n return item.label;\n }\n if ('title' in item && item.title) {\n return item.title;\n }\n return index;\n }\n\n protected isNewItemStyle(item: MenuItemLegacy | MenuItem): item is MenuItem {\n return 'label' in item || item.type === 'divider' || item.type === 'radio-group';\n }\n\n protected isLegacyItemStyle(item: MenuItemLegacy | MenuItem): item is MenuItemLegacy {\n return !this.isNewItemStyle(item);\n }\n\n protected radioOrCheckboxTriggered(item: MenuItemLegacy): void {\n if (typeof item.action === 'function') {\n item.action(this.actionParam());\n } else {\n this.linkActionService?.emit(item, this.actionParam());\n }\n }\n\n protected runAction(item: MenuItemAction | MenuItemRadio | MenuItemCheckbox): void {\n if (typeof item.action === 'function') {\n item.action(this.actionParam(), item as any); // typescript cannot level down the item type properly\n }\n\n if (typeof item.action === 'string') {\n this.menuActionService?.actionTriggered(item, this.actionParam());\n }\n }\n}\n","<si-menu>\n @for (item of items(); track trackItem($index, item)) {\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\" />\n }\n <ng-template #itemTemplate let-item siMenuFactoryItemGuard>\n @if (isNewItemStyle(item)) {\n @switch (item.type) {\n @case ('group') {\n <si-menu-item\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n [cdkMenuTriggerFor]=\"submenu\"\n [cdkMenuTriggerData]=\"{ $implicit: item.children }\"\n >{{ item.label | translate }}\n </si-menu-item>\n <ng-template #submenu>\n <si-menu-factory [items]=\"item.children\" [actionParam]=\"actionParam()\" />\n </ng-template>\n }\n @case ('action') {\n <si-menu-item\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n (triggered)=\"runAction(item)\"\n >{{ item.label | translate }}\n </si-menu-item>\n }\n @case ('router-link') {\n <a\n si-menu-item\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n [routerLink]=\"item.routerLink\"\n [queryParams]=\"item.extras?.queryParams\"\n [queryParamsHandling]=\"item.extras?.queryParamsHandling\"\n [fragment]=\"item.extras?.fragment\"\n [state]=\"item.extras?.state\"\n [relativeTo]=\"item.extras?.relativeTo\"\n [preserveFragment]=\"item.extras?.preserveFragment\"\n [skipLocationChange]=\"item.extras?.skipLocationChange\"\n [replaceUrl]=\"item.extras?.replaceUrl\"\n >{{ item.label | translate }}\n </a>\n }\n @case ('link') {\n <a\n si-menu-item\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n [href]=\"item.href\"\n [target]=\"item.target\"\n >{{ item.label | translate }}\n </a>\n }\n @case ('radio-group') {\n <div cdkMenuGroup>\n @for (radioItem of item.children; track radioItem) {\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: radioItem }\" />\n }\n </div>\n }\n @case ('radio') {\n <si-menu-item-radio\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n [checked]=\"item.checked\"\n (triggered)=\"runAction(item)\"\n >{{ item.label | translate }}\n </si-menu-item-radio>\n }\n @case ('checkbox') {\n <si-menu-item-checkbox\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [disabled]=\"item.disabled\"\n [icon]=\"item.icon\"\n [iconBadgeDot]=\"item.iconBadge\"\n [checked]=\"item.checked\"\n (triggered)=\"runAction(item)\"\n >{{ item.label | translate }}\n </si-menu-item-checkbox>\n }\n @case ('header') {\n <si-menu-header>{{ item.label | translate }}</si-menu-header>\n }\n @case ('divider') {\n <si-menu-divider />\n }\n }\n } @else if (isLegacyItemStyle(item)) {\n @switch (item.type) {\n @case ('radio') {\n <si-menu-item-radio\n [attr.data-id]=\"item.id\"\n [checked]=\"item.selectionState === 'radio'\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [icon]=\"item.icon\"\n [disabled]=\"item.disabled\"\n [iconBadgeDot]=\"item.badgeDot\"\n (triggered)=\"radioOrCheckboxTriggered(item)\"\n >\n {{ item.title | translate }}\n </si-menu-item-radio>\n }\n @case ('check') {\n <si-menu-item-checkbox\n [attr.data-id]=\"item.id\"\n [checked]=\"item.selectionState === 'check'\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [icon]=\"item.icon\"\n [disabled]=\"item.disabled\"\n [iconBadgeDot]=\"item.badgeDot\"\n (triggered)=\"radioOrCheckboxTriggered(item)\"\n >\n {{ item.title | translate }}\n </si-menu-item-checkbox>\n }\n @default {\n @if (item.isHeading) {\n <div class=\"dropdown-item-text dropdown-header\">\n {{ item.title | translate }}\n </div>\n } @else {\n @if (item.title !== '-') {\n <a\n si-menu-item\n activeClass=\"active\"\n [attr.data-id]=\"item.id\"\n [badge]=\"item.badge\"\n [badgeColor]=\"item.badgeColor ?? 'secondary'\"\n [icon]=\"item.icon\"\n [disabled]=\"item.disabled\"\n [siLink]=\"item\"\n [iconBadgeDot]=\"item.badgeDot\"\n [actionParam]=\"actionParam()\"\n [cdkMenuTriggerFor]=\"item.items ? submenu : null\"\n [cdkMenuTriggerData]=\"item\"\n >\n {{ item.title | translate }}\n </a>\n <ng-template #submenu>\n <si-menu-factory [items]=\"item.items!\" [actionParam]=\"actionParam()\" />\n </ng-template>\n } @else {\n <div class=\"dropdown-divider\"></div>\n }\n }\n }\n }\n }\n </ng-template>\n</si-menu>\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nimport { NgModule } from '@angular/core';\n\nimport { SiMenuBarDirective } from './si-menu-bar.directive';\nimport { SiMenuDividerDirective } from './si-menu-divider.directive';\nimport { SiMenuFactoryComponent } from './si-menu-factory.component';\nimport { SiMenuHeaderDirective } from './si-menu-header.directive';\nimport { SiMenuItemCheckboxComponent } from './si-menu-item-checkbox.component';\nimport { SiMenuItemRadioComponent } from './si-menu-item-radio.component';\nimport { SiMenuItemComponent } from './si-menu-item.component';\nimport { SiMenuDirective } from './si-menu.directive';\n\n@NgModule({\n imports: [\n SiMenuBarDirective,\n SiMenuDirective,\n SiMenuDividerDirective,\n SiMenuFactoryComponent,\n SiMenuHeaderDirective,\n SiMenuItemCheckboxComponent,\n SiMenuItemComponent,\n SiMenuItemRadioComponent\n ],\n exports: [\n SiMenuBarDirective,\n SiMenuDirective,\n SiMenuDividerDirective,\n SiMenuFactoryComponent,\n SiMenuHeaderDirective,\n SiMenuItemCheckboxComponent,\n SiMenuItemComponent,\n SiMenuItemRadioComponent\n ]\n})\nexport class SiMenuModule {}\n","/**\n * Copyright (c) Siemens 2016 - 2026\n * SPDX-License-Identifier: MIT\n */\nexport * from './si-menu.module';\nexport * from './si-menu-item.component';\nexport * from './si-menu-item-checkbox.component';\nexport * from './si-menu-item-radio.component';\nexport * from './si-menu.directive';\nexport * from './si-menu-bar.directive';\nexport * from './si-menu-header.directive';\nexport * from './si-menu-divider.directive';\nexport * from './si-menu-factory.component';\nexport * from './si-menu-model';\nexport * from './si-menu-action.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
@@ -416,7 +416,7 @@ class SiNavbarVerticalNextItemComponent {
416
416
  }
417
417
  }
418
418
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiNavbarVerticalNextItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
419
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiNavbarVerticalNextItemComponent, isStandalone: true, selector: "a[si-navbar-vertical-next-item], button[si-navbar-vertical-next-item]", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: true, isRequired: false, transformFunction: null }, badgeColor: { classPropertyName: "badgeColor", publicName: "badgeColor", isSignal: true, isRequired: false, transformFunction: null }, hideBadgeWhenCollapsed: { classPropertyName: "hideBadgeWhenCollapsed", publicName: "hideBadgeWhenCollapsed", isSignal: true, isRequired: false, transformFunction: null }, activeOverride: { classPropertyName: "activeOverride", publicName: "activeOverride", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "triggered()" }, properties: { "class.active": "showActive()", "class.hide-badge-collapsed": "hideBadgeWhenCollapsed()" }, classAttribute: "navbar-vertical-item focus-inside" }, ngImport: i0, template: "@let icon = this.icon();\n@if (icon) {\n <si-icon class=\"icon\" [icon]=\"icon\" />\n}\n<div class=\"item-title text-truncate si-h5\">{{ label() }}</div>\n@if (!navbar.textOnly() && formattedBadge()) {\n @let badgeColor = this.badgeColor();\n <span\n [class]=\"[\n 'badge',\n badgeColor ? `bg-${badgeColor}` : 'bg-default',\n textOnlyBadge() ? 'badge-text-only' : '',\n navbar.collapsed() ? 'badge-collapsed' : ''\n ]\"\n >{{ formattedBadge() }}</span\n >\n}\n@if (group) {\n <si-icon\n class=\"dropdown-caret me-0 text-primary\"\n [icon]=\"group.flyoutMode() ? icons.elementRight2 : icons.elementDown2\"\n />\n}\n", styles: [":host(.navbar-vertical-item){display:flex;align-items:center;position:relative;color:var(--si-sys-text-primary);background:none;border:0;font-size:var(--si-sys-typography-font-size-body);padding-block:var(--si-sys-sizing-spacing-y-40);padding-inline:0 var(--si-sys-sizing-spacing-x-50);min-inline-size:0;min-block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-50));inline-size:100%;border-radius:0}:host(.navbar-vertical-item) .item-title{margin-inline-start:var(--si-sys-sizing-spacing-x-50)}:host(.navbar-vertical-item) .icon{margin-inline-start:var(--si-sys-sizing-spacing-x-50);padding-inline:var(--si-sys-sizing-spacing-x-10);padding-block:var(--si-sys-sizing-spacing-y-10)}:host(.navbar-vertical-item) .icon+.item-title{margin-inline-start:var(--si-sys-sizing-spacing-x-40)}:host(.navbar-vertical-item).show .badge:not(.badge-collapsed){display:none}:host(.navbar-vertical-item):not(.show) .badge+.dropdown-caret{margin-inline:0;padding-inline:0}:host(.navbar-vertical-item).active{color:var(--si-sys-text-accent-active);background:var(--si-sys-background-selected)}:host(.navbar-vertical-item).active:after{content:\"\";position:absolute;inset-block:0;inset-inline-start:0;inline-size:4px;background:var(--si-sys-border-accent-active)}:host(.navbar-vertical-item):hover{text-decoration:none;background:var(--si-sys-background-hover)}:host-context(si-navbar-vertical-next-items > .navbar-vertical-item)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-items > si-navbar-vertical-next-group)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-items > si-navbar-flyout-anchor)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > .navbar-vertical-item)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > si-navbar-vertical-next-group)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > si-navbar-flyout-anchor)+:host(.navbar-vertical-item){margin-block-start:var(--si-sys-sizing-spacing-y-40)}:host-context(.nav-text-only si-navbar-vertical-next-group) .item-title{margin-inline-start:0}:host-context(si-navbar-vertical-next-group) :host(.navbar-vertical-item){padding-inline-start:var(--si-sys-sizing-spacing-x-90)}:host-context(si-navbar-vertical-next-group) :host(.navbar-vertical-item) .item-title{font-weight:400}:host-context(.dropdown-menu) :host(.navbar-vertical-item){padding-inline-start:0}:host-context(.dropdown-menu) :host(.navbar-vertical-item) .item-title{font-weight:400}:host-context(.nav-collapsed) .badge{position:absolute;inset-block-start:var(--si-sys-sizing-spacing-y-20);inset-inline-end:var(--si-sys-sizing-spacing-x-30);min-inline-size:.875rem;border-radius:.4375rem;font-size:var(--si-sys-typography-font-size-body-sm);line-height:.875rem;padding-block:0;padding-inline:var(--si-sys-sizing-spacing-x-20);font-family:var(--element-body-font-family);font-weight:600;text-align:center}:host-context(.nav-collapsed) .badge.badge-text-only{color:transparent;font-size:0}:host-context(.nav-collapsed) :is(.item-title,.dropdown-caret){position:absolute!important;inline-size:1px!important;block-size:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}:host-context(.nav-collapsed).hide-badge-collapsed .badge{display:none}.badge{margin-inline:auto 0}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }] });
419
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiNavbarVerticalNextItemComponent, isStandalone: true, selector: "a[si-navbar-vertical-next-item], button[si-navbar-vertical-next-item]", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: true, isRequired: false, transformFunction: null }, badgeColor: { classPropertyName: "badgeColor", publicName: "badgeColor", isSignal: true, isRequired: false, transformFunction: null }, hideBadgeWhenCollapsed: { classPropertyName: "hideBadgeWhenCollapsed", publicName: "hideBadgeWhenCollapsed", isSignal: true, isRequired: false, transformFunction: null }, activeOverride: { classPropertyName: "activeOverride", publicName: "activeOverride", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "triggered()" }, properties: { "class.active": "showActive()", "class.hide-badge-collapsed": "hideBadgeWhenCollapsed()" }, classAttribute: "navbar-vertical-item focus-inside" }, ngImport: i0, template: "@let icon = this.icon();\n@if (icon) {\n <si-icon class=\"icon\" [icon]=\"icon\" />\n}\n<div class=\"item-title text-truncate si-h5\">{{ label() }}</div>\n@if (!navbar.textOnly() && formattedBadge()) {\n @let badgeColor = this.badgeColor();\n <span\n [class]=\"[\n 'badge',\n badgeColor ? `bg-${badgeColor}` : 'bg-default',\n textOnlyBadge() ? 'badge-text-only' : '',\n navbar.collapsed() ? 'badge-collapsed' : ''\n ]\"\n >{{ formattedBadge() }}</span\n >\n}\n@if (group) {\n <si-icon\n class=\"dropdown-caret me-0 text-primary\"\n [icon]=\"group.flyoutMode() ? icons.elementRight2 : icons.elementDown2\"\n />\n}\n", styles: [":host(.navbar-vertical-item){display:flex;align-items:center;position:relative;color:var(--si-sys-text-primary);background:none;border:0;font-size:var(--si-sys-typography-font-size-body);padding-block:var(--si-sys-sizing-spacing-y-40);padding-inline:0 var(--si-sys-sizing-spacing-x-50);min-inline-size:0;min-block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-50));inline-size:100%;border-radius:0}:host(.navbar-vertical-item) .item-title{margin-inline-start:var(--si-sys-sizing-spacing-x-50)}:host(.navbar-vertical-item) .icon{margin-inline-start:var(--si-sys-sizing-spacing-x-50);padding-inline:var(--si-sys-sizing-spacing-x-10);padding-block:var(--si-sys-sizing-spacing-y-10)}:host(.navbar-vertical-item) .icon+.item-title{margin-inline-start:var(--si-sys-sizing-spacing-x-40)}:host(.navbar-vertical-item).show .badge:not(.badge-collapsed){display:none}:host(.navbar-vertical-item):not(.show) .badge+.dropdown-caret{margin-inline:0;padding-inline:0}:host(.navbar-vertical-item).active{color:var(--si-sys-text-accent-active);background:var(--si-sys-background-active)}:host(.navbar-vertical-item).active:after{content:\"\";position:absolute;inset-block:0;inset-inline-start:0;inline-size:4px;background:var(--si-sys-border-accent-active)}:host(.navbar-vertical-item):hover{text-decoration:none;background:var(--si-sys-background-hover)}:host-context(si-navbar-vertical-next-items > .navbar-vertical-item)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-items > si-navbar-vertical-next-group)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-items > si-navbar-flyout-anchor)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > .navbar-vertical-item)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > si-navbar-vertical-next-group)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > si-navbar-flyout-anchor)+:host(.navbar-vertical-item){margin-block-start:var(--si-sys-sizing-spacing-y-40)}:host-context(.nav-text-only si-navbar-vertical-next-group) .item-title{margin-inline-start:0}:host-context(si-navbar-vertical-next-group) :host(.navbar-vertical-item){padding-inline-start:var(--si-sys-sizing-spacing-x-90)}:host-context(si-navbar-vertical-next-group) :host(.navbar-vertical-item) .item-title{font-weight:400}:host-context(.dropdown-menu) :host(.navbar-vertical-item){padding-inline-start:0}:host-context(.dropdown-menu) :host(.navbar-vertical-item) .item-title{font-weight:400}:host-context(.nav-collapsed) .badge{position:absolute;inset-block-start:var(--si-sys-sizing-spacing-y-20);inset-inline-end:var(--si-sys-sizing-spacing-x-30);min-inline-size:.875rem;border-radius:.4375rem;font-size:var(--si-sys-typography-font-size-body-sm);line-height:.875rem;padding-block:0;padding-inline:var(--si-sys-sizing-spacing-x-20);font-family:var(--element-body-font-family);font-weight:600;text-align:center}:host-context(.nav-collapsed) .badge.badge-text-only{color:transparent;font-size:0}:host-context(.nav-collapsed) :is(.item-title,.dropdown-caret){position:absolute!important;inline-size:1px!important;block-size:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}:host-context(.nav-collapsed).hide-badge-collapsed .badge{display:none}.badge{margin-inline:auto 0}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }] });
420
420
  }
421
421
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiNavbarVerticalNextItemComponent, decorators: [{
422
422
  type: Component,
@@ -425,7 +425,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
425
425
  '[class.active]': 'showActive()',
426
426
  '[class.hide-badge-collapsed]': 'hideBadgeWhenCollapsed()',
427
427
  '(click)': 'triggered()'
428
- }, template: "@let icon = this.icon();\n@if (icon) {\n <si-icon class=\"icon\" [icon]=\"icon\" />\n}\n<div class=\"item-title text-truncate si-h5\">{{ label() }}</div>\n@if (!navbar.textOnly() && formattedBadge()) {\n @let badgeColor = this.badgeColor();\n <span\n [class]=\"[\n 'badge',\n badgeColor ? `bg-${badgeColor}` : 'bg-default',\n textOnlyBadge() ? 'badge-text-only' : '',\n navbar.collapsed() ? 'badge-collapsed' : ''\n ]\"\n >{{ formattedBadge() }}</span\n >\n}\n@if (group) {\n <si-icon\n class=\"dropdown-caret me-0 text-primary\"\n [icon]=\"group.flyoutMode() ? icons.elementRight2 : icons.elementDown2\"\n />\n}\n", styles: [":host(.navbar-vertical-item){display:flex;align-items:center;position:relative;color:var(--si-sys-text-primary);background:none;border:0;font-size:var(--si-sys-typography-font-size-body);padding-block:var(--si-sys-sizing-spacing-y-40);padding-inline:0 var(--si-sys-sizing-spacing-x-50);min-inline-size:0;min-block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-50));inline-size:100%;border-radius:0}:host(.navbar-vertical-item) .item-title{margin-inline-start:var(--si-sys-sizing-spacing-x-50)}:host(.navbar-vertical-item) .icon{margin-inline-start:var(--si-sys-sizing-spacing-x-50);padding-inline:var(--si-sys-sizing-spacing-x-10);padding-block:var(--si-sys-sizing-spacing-y-10)}:host(.navbar-vertical-item) .icon+.item-title{margin-inline-start:var(--si-sys-sizing-spacing-x-40)}:host(.navbar-vertical-item).show .badge:not(.badge-collapsed){display:none}:host(.navbar-vertical-item):not(.show) .badge+.dropdown-caret{margin-inline:0;padding-inline:0}:host(.navbar-vertical-item).active{color:var(--si-sys-text-accent-active);background:var(--si-sys-background-selected)}:host(.navbar-vertical-item).active:after{content:\"\";position:absolute;inset-block:0;inset-inline-start:0;inline-size:4px;background:var(--si-sys-border-accent-active)}:host(.navbar-vertical-item):hover{text-decoration:none;background:var(--si-sys-background-hover)}:host-context(si-navbar-vertical-next-items > .navbar-vertical-item)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-items > si-navbar-vertical-next-group)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-items > si-navbar-flyout-anchor)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > .navbar-vertical-item)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > si-navbar-vertical-next-group)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > si-navbar-flyout-anchor)+:host(.navbar-vertical-item){margin-block-start:var(--si-sys-sizing-spacing-y-40)}:host-context(.nav-text-only si-navbar-vertical-next-group) .item-title{margin-inline-start:0}:host-context(si-navbar-vertical-next-group) :host(.navbar-vertical-item){padding-inline-start:var(--si-sys-sizing-spacing-x-90)}:host-context(si-navbar-vertical-next-group) :host(.navbar-vertical-item) .item-title{font-weight:400}:host-context(.dropdown-menu) :host(.navbar-vertical-item){padding-inline-start:0}:host-context(.dropdown-menu) :host(.navbar-vertical-item) .item-title{font-weight:400}:host-context(.nav-collapsed) .badge{position:absolute;inset-block-start:var(--si-sys-sizing-spacing-y-20);inset-inline-end:var(--si-sys-sizing-spacing-x-30);min-inline-size:.875rem;border-radius:.4375rem;font-size:var(--si-sys-typography-font-size-body-sm);line-height:.875rem;padding-block:0;padding-inline:var(--si-sys-sizing-spacing-x-20);font-family:var(--element-body-font-family);font-weight:600;text-align:center}:host-context(.nav-collapsed) .badge.badge-text-only{color:transparent;font-size:0}:host-context(.nav-collapsed) :is(.item-title,.dropdown-caret){position:absolute!important;inline-size:1px!important;block-size:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}:host-context(.nav-collapsed).hide-badge-collapsed .badge{display:none}.badge{margin-inline:auto 0}\n"] }]
428
+ }, template: "@let icon = this.icon();\n@if (icon) {\n <si-icon class=\"icon\" [icon]=\"icon\" />\n}\n<div class=\"item-title text-truncate si-h5\">{{ label() }}</div>\n@if (!navbar.textOnly() && formattedBadge()) {\n @let badgeColor = this.badgeColor();\n <span\n [class]=\"[\n 'badge',\n badgeColor ? `bg-${badgeColor}` : 'bg-default',\n textOnlyBadge() ? 'badge-text-only' : '',\n navbar.collapsed() ? 'badge-collapsed' : ''\n ]\"\n >{{ formattedBadge() }}</span\n >\n}\n@if (group) {\n <si-icon\n class=\"dropdown-caret me-0 text-primary\"\n [icon]=\"group.flyoutMode() ? icons.elementRight2 : icons.elementDown2\"\n />\n}\n", styles: [":host(.navbar-vertical-item){display:flex;align-items:center;position:relative;color:var(--si-sys-text-primary);background:none;border:0;font-size:var(--si-sys-typography-font-size-body);padding-block:var(--si-sys-sizing-spacing-y-40);padding-inline:0 var(--si-sys-sizing-spacing-x-50);min-inline-size:0;min-block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-50));inline-size:100%;border-radius:0}:host(.navbar-vertical-item) .item-title{margin-inline-start:var(--si-sys-sizing-spacing-x-50)}:host(.navbar-vertical-item) .icon{margin-inline-start:var(--si-sys-sizing-spacing-x-50);padding-inline:var(--si-sys-sizing-spacing-x-10);padding-block:var(--si-sys-sizing-spacing-y-10)}:host(.navbar-vertical-item) .icon+.item-title{margin-inline-start:var(--si-sys-sizing-spacing-x-40)}:host(.navbar-vertical-item).show .badge:not(.badge-collapsed){display:none}:host(.navbar-vertical-item):not(.show) .badge+.dropdown-caret{margin-inline:0;padding-inline:0}:host(.navbar-vertical-item).active{color:var(--si-sys-text-accent-active);background:var(--si-sys-background-active)}:host(.navbar-vertical-item).active:after{content:\"\";position:absolute;inset-block:0;inset-inline-start:0;inline-size:4px;background:var(--si-sys-border-accent-active)}:host(.navbar-vertical-item):hover{text-decoration:none;background:var(--si-sys-background-hover)}:host-context(si-navbar-vertical-next-items > .navbar-vertical-item)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-items > si-navbar-vertical-next-group)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-items > si-navbar-flyout-anchor)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > .navbar-vertical-item)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > si-navbar-vertical-next-group)+:host(.navbar-vertical-item),:host-context(si-navbar-vertical-next-footer-items > si-navbar-flyout-anchor)+:host(.navbar-vertical-item){margin-block-start:var(--si-sys-sizing-spacing-y-40)}:host-context(.nav-text-only si-navbar-vertical-next-group) .item-title{margin-inline-start:0}:host-context(si-navbar-vertical-next-group) :host(.navbar-vertical-item){padding-inline-start:var(--si-sys-sizing-spacing-x-90)}:host-context(si-navbar-vertical-next-group) :host(.navbar-vertical-item) .item-title{font-weight:400}:host-context(.dropdown-menu) :host(.navbar-vertical-item){padding-inline-start:0}:host-context(.dropdown-menu) :host(.navbar-vertical-item) .item-title{font-weight:400}:host-context(.nav-collapsed) .badge{position:absolute;inset-block-start:var(--si-sys-sizing-spacing-y-20);inset-inline-end:var(--si-sys-sizing-spacing-x-30);min-inline-size:.875rem;border-radius:.4375rem;font-size:var(--si-sys-typography-font-size-body-sm);line-height:.875rem;padding-block:0;padding-inline:var(--si-sys-sizing-spacing-x-20);font-family:var(--element-body-font-family);font-weight:600;text-align:center}:host-context(.nav-collapsed) .badge.badge-text-only{color:transparent;font-size:0}:host-context(.nav-collapsed) :is(.item-title,.dropdown-caret){position:absolute!important;inline-size:1px!important;block-size:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}:host-context(.nav-collapsed).hide-badge-collapsed .badge{display:none}.badge{margin-inline:auto 0}\n"] }]
429
429
  }], propDecorators: { icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], badge: [{ type: i0.Input, args: [{ isSignal: true, alias: "badge", required: false }] }], badgeColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "badgeColor", required: false }] }], hideBadgeWhenCollapsed: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideBadgeWhenCollapsed", required: false }] }], activeOverride: [{ type: i0.Input, args: [{ isSignal: true, alias: "activeOverride", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }] } });
430
430
 
431
431
  /**
@@ -660,7 +660,7 @@ class SiNavbarVerticalNextComponent {
660
660
  this.chipMenu()?.close();
661
661
  }
662
662
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiNavbarVerticalNextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
663
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiNavbarVerticalNextComponent, isStandalone: true, selector: "si-navbar-vertical-next", inputs: { collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, textOnly: { classPropertyName: "textOnly", publicName: "textOnly", isSignal: true, isRequired: false, transformFunction: null }, inlineCollapse: { classPropertyName: "inlineCollapse", publicName: "inlineCollapse", isSignal: true, isRequired: false, transformFunction: null }, alwaysFlyout: { classPropertyName: "alwaysFlyout", publicName: "alwaysFlyout", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, toggleButtonText: { classPropertyName: "toggleButtonText", publicName: "toggleButtonText", isSignal: true, isRequired: false, transformFunction: null }, stateId: { classPropertyName: "stateId", publicName: "stateId", isSignal: true, isRequired: false, transformFunction: null }, skipLinkNavigationLabel: { classPropertyName: "skipLinkNavigationLabel", publicName: "skipLinkNavigationLabel", isSignal: true, isRequired: false, transformFunction: null }, skipLinkMainContentLabel: { classPropertyName: "skipLinkMainContentLabel", publicName: "skipLinkMainContentLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { collapsed: "collapsedChange" }, host: { properties: { "class.nav-collapsed": "collapsed()", "class.nav-text-only": "textOnly()", "class.nav-inline-collapse": "inlineCollapse()", "class.has-visible-chip": "hasVisibleChip()", "class.visible": "visible()", "class.ready": "ready()" }, classAttribute: "si-layout-inner ready" }, providers: [{ provide: SI_NAVBAR_VERTICAL_NEXT, useExisting: SiNavbarVerticalNextComponent }], queries: [{ propertyName: "itemsComponent", first: true, predicate: SiNavbarVerticalNextItemsComponent, descendants: true, isSignal: true }, { propertyName: "items", predicate: SiNavbarVerticalNextItemComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "chipMenu", first: true, predicate: SiNavbarVerticalNextChipMenuComponent, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "@if (visible()) {\n @if (smallScreen() && !collapsed()) {\n <div class=\"modal-backdrop\" animate.leave=\"backdrop-leave\" (click)=\"toggleCollapse()\"></div>\n }\n <nav\n tabindex=\"-1\"\n class=\"background-1 focus-sub-inside\"\n [class.expanded]=\"!collapsed()\"\n [siSkipLinkTarget]=\"skipLinkNavigationLabel()\"\n [class.text-only]=\"textOnly()\"\n >\n <div class=\"collapse-toggle ms-auto\">\n <div class=\"mobile-drawer focus-inside\">\n <button\n type=\"button\"\n class=\"btn btn-icon toggle-button\"\n [class.btn-ghost]=\"chipMode()\"\n [class.btn-tertiary-ghost]=\"!chipMode()\"\n [attr.aria-label]=\"toggleButtonText() | translate\"\n [attr.aria-expanded]=\"!collapsed()\"\n (click)=\"toggleCollapse()\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"toggleIcon()\" />\n </button>\n </div>\n </div>\n @if (hasVisibleChip()) {\n <si-navbar-vertical-next-chip-menu />\n }\n <div\n class=\"nav-content\"\n [attr.inert]=\"chipMode() ? '' : null\"\n [attr.aria-hidden]=\"chipMode() ? 'true' : null\"\n >\n <ng-content select=\"si-navbar-vertical-next-search\" />\n <ng-content select=\"si-navbar-vertical-next-items\" />\n <ng-content select=\"si-navbar-vertical-next-footer-items\" />\n </div>\n </nav>\n @if (inlineCollapse()) {\n <div class=\"toggle-placeholder\" aria-hidden=\"true\"></div>\n }\n}\n<main\n class=\"si-layout-inner focus-none\"\n tabindex=\"-1\"\n [siSkipLinkTarget]=\"skipLinkMainContentLabel()\"\n>\n <ng-content />\n</main>\n", styles: [":host{display:block;--si-layout-header-first-element-offset: 40px}:host.ready:not(.visible){padding-inline-start:0!important}:host.ready{transition:padding-inline-start calc(.5s * var(--element-animations-enabled, 1))}nav{display:flex;flex-direction:column;position:fixed;z-index:1031;inset-block-start:calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px));inset-block-end:0;inset-inline-start:0;inline-size:0;transition:inline-size calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-collapsed) nav{z-index:1030}nav.expanded{inline-size:240px}.mobile-drawer{display:block;text-align:end;border:0;inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50));color:var(--si-sys-text-primary);padding-block:var(--si-sys-sizing-spacing-y-20);padding-inline:var(--si-sys-sizing-spacing-x-40);margin-block-start:var(--si-sys-sizing-spacing-y-40);border-start-end-radius:var(--element-radius-2);border-end-end-radius:var(--element-radius-2);transition:inline-size calc(.5s * var(--element-animations-enabled, 1)) ease,background-color calc(.5s * var(--element-animations-enabled, 1)) ease,box-shadow calc(.5s * var(--element-animations-enabled, 1)) ease}:host(:not(.nav-collapsed):not(.nav-inline-collapse)) .mobile-drawer{inline-size:240px}.modal-backdrop{z-index:1031;transition:opacity calc(.15s * var(--element-animations-enabled, 1)) linear;opacity:1}@starting-style{.modal-backdrop{opacity:0}}.modal-backdrop.backdrop-leave{opacity:0}:host(.nav-text-only:not(.nav-inline-collapse)).nav-collapsed .mobile-drawer{background:var(--si-sys-background-1);box-shadow:0 0 4px var(--element-box-shadow-color-1),0 4px 4px var(--element-box-shadow-color-2)}@media(max-width:575.98px){:host.nav-collapsed .mobile-drawer{background:var(--si-sys-background-1);box-shadow:0 0 4px var(--element-box-shadow-color-1),0 4px 4px var(--element-box-shadow-color-2)}}@media(min-width:576px){:host:not(.nav-text-only),:host:not(.nav-collapsed),:host(.nav-inline-collapse){--si-layout-header-first-element-offset: 0}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)){padding-inline-start:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50))}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)) nav{inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50))}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)) nav.expanded{inline-size:240px}}@media(min-width:992px){:host:not(.nav-collapsed){padding-inline-start:240px}}.nav-content{display:flex;flex-direction:column;flex:1 1 auto;min-block-size:0}:host(.nav-inline-collapse){--si-layout-header-first-element-offset: 0;--si-navbar-parked-inline-start: var(--si-sys-sizing-spacing-x-60)}@media(min-width:768px){:host(.nav-inline-collapse){--si-navbar-parked-inline-start: var(--si-sys-sizing-spacing-x-90)}}:host(.nav-inline-collapse) nav{overflow:hidden}:host(.nav-inline-collapse) nav:before{content:\"\";position:absolute;inset:0;background:var(--si-sys-background-1);z-index:1;pointer-events:none}:host(.nav-inline-collapse) .nav-content{position:relative;z-index:2}:host(.nav-inline-collapse) .mobile-drawer:before{content:\"\";display:block;block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40))}:host(.nav-inline-collapse) .toggle-placeholder{block-size:0;margin-block-start:0;transition:block-size calc(.5s * var(--element-animations-enabled, 1)) ease,margin-block-start calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-inline-collapse) .toggle-button{position:fixed;z-index:1031;inset-block-start:calc(calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px)) + var(--si-sys-sizing-spacing-y-40) + var(--si-sys-sizing-spacing-y-20));inset-inline-start:calc(240px - calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40)) - var(--si-sys-sizing-spacing-x-40));transition:inset-inline-start calc(.5s * var(--element-animations-enabled, 1)) ease,inset-block-start calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-inline-collapse).nav-collapsed .toggle-placeholder{block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40));margin-block-start:var(--si-sys-sizing-spacing-y-60)}:host(.nav-inline-collapse).nav-collapsed .toggle-button{inset-block-start:calc(calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px)) + var(--si-sys-sizing-spacing-y-60));inset-inline-start:var(--si-navbar-parked-inline-start)}:host(.has-visible-chip) .toggle-button{border-start-end-radius:0;border-end-end-radius:0}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "component", type: SiNavbarVerticalNextChipMenuComponent, selector: "si-navbar-vertical-next-chip-menu" }, { kind: "directive", type: SiSkipLinkTargetDirective, selector: "[siSkipLinkTarget]", inputs: ["siSkipLinkTarget"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
663
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiNavbarVerticalNextComponent, isStandalone: true, selector: "si-navbar-vertical-next", inputs: { collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, textOnly: { classPropertyName: "textOnly", publicName: "textOnly", isSignal: true, isRequired: false, transformFunction: null }, inlineCollapse: { classPropertyName: "inlineCollapse", publicName: "inlineCollapse", isSignal: true, isRequired: false, transformFunction: null }, alwaysFlyout: { classPropertyName: "alwaysFlyout", publicName: "alwaysFlyout", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, toggleButtonText: { classPropertyName: "toggleButtonText", publicName: "toggleButtonText", isSignal: true, isRequired: false, transformFunction: null }, stateId: { classPropertyName: "stateId", publicName: "stateId", isSignal: true, isRequired: false, transformFunction: null }, skipLinkNavigationLabel: { classPropertyName: "skipLinkNavigationLabel", publicName: "skipLinkNavigationLabel", isSignal: true, isRequired: false, transformFunction: null }, skipLinkMainContentLabel: { classPropertyName: "skipLinkMainContentLabel", publicName: "skipLinkMainContentLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { collapsed: "collapsedChange" }, host: { properties: { "class.nav-collapsed": "collapsed()", "class.nav-text-only": "textOnly()", "class.nav-inline-collapse": "inlineCollapse()", "class.has-visible-chip": "hasVisibleChip()", "class.visible": "visible()", "class.ready": "ready()" }, classAttribute: "si-layout-inner ready" }, providers: [{ provide: SI_NAVBAR_VERTICAL_NEXT, useExisting: SiNavbarVerticalNextComponent }], queries: [{ propertyName: "itemsComponent", first: true, predicate: SiNavbarVerticalNextItemsComponent, descendants: true, isSignal: true }, { propertyName: "items", predicate: SiNavbarVerticalNextItemComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "chipMenu", first: true, predicate: SiNavbarVerticalNextChipMenuComponent, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "@if (visible()) {\n @if (smallScreen() && !collapsed()) {\n <div class=\"modal-backdrop\" animate.leave=\"backdrop-leave\" (click)=\"toggleCollapse()\"></div>\n }\n <nav\n tabindex=\"-1\"\n class=\"background-1 focus-sub-inside\"\n [class.expanded]=\"!collapsed()\"\n [siSkipLinkTarget]=\"skipLinkNavigationLabel()\"\n [class.text-only]=\"textOnly()\"\n >\n <div class=\"collapse-toggle ms-auto\">\n <div class=\"mobile-drawer focus-inside\">\n <button\n type=\"button\"\n class=\"btn btn-icon toggle-button\"\n [class.btn-ghost]=\"chipMode()\"\n [class.btn-tertiary-ghost]=\"!chipMode()\"\n [attr.aria-label]=\"toggleButtonText() | translate\"\n [attr.aria-expanded]=\"!collapsed()\"\n (click)=\"toggleCollapse()\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"toggleIcon()\" />\n </button>\n </div>\n </div>\n @if (hasVisibleChip()) {\n <si-navbar-vertical-next-chip-menu />\n }\n <div\n class=\"nav-content\"\n [attr.inert]=\"chipMode() ? '' : null\"\n [attr.aria-hidden]=\"chipMode() ? 'true' : null\"\n >\n <ng-content select=\"si-navbar-vertical-next-search\" />\n <ng-content select=\"si-navbar-vertical-next-items\" />\n <ng-content select=\"si-navbar-vertical-next-footer-items\" />\n </div>\n </nav>\n @if (inlineCollapse()) {\n <div class=\"toggle-placeholder\" aria-hidden=\"true\"></div>\n }\n}\n<main\n class=\"si-layout-inner focus-none\"\n tabindex=\"-1\"\n [siSkipLinkTarget]=\"skipLinkMainContentLabel()\"\n>\n <ng-content />\n</main>\n", styles: [":host{display:block;--si-layout-header-first-element-offset: 40px}:host.ready:not(.visible){padding-inline-start:0!important}:host.ready{transition:padding-inline-start calc(.5s * var(--element-animations-enabled, 1))}nav{display:flex;flex-direction:column;position:fixed;z-index:1031;inset-block-start:calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px));inset-block-end:0;inset-inline-start:0;inline-size:0;transition:inline-size calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-collapsed) nav{z-index:1030}nav.expanded{inline-size:240px}.mobile-drawer{display:block;text-align:end;border:0;inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50));color:var(--si-sys-text-primary);padding-block:var(--si-sys-sizing-spacing-y-20);padding-inline:var(--si-sys-sizing-spacing-x-40);margin-block-start:var(--si-sys-sizing-spacing-y-40);border-start-end-radius:var(--element-radius-2);border-end-end-radius:var(--element-radius-2);transition:inline-size calc(.5s * var(--element-animations-enabled, 1)) ease,background-color calc(.5s * var(--element-animations-enabled, 1)) ease,box-shadow calc(.5s * var(--element-animations-enabled, 1)) ease}:host(:not(.nav-collapsed):not(.nav-inline-collapse)) .mobile-drawer{inline-size:240px}.modal-backdrop{z-index:1031;transition:opacity calc(.15s * var(--element-animations-enabled, 1)) linear;opacity:1}@starting-style{.modal-backdrop{opacity:0}}.modal-backdrop.backdrop-leave{opacity:0}:host(.nav-text-only:not(.nav-inline-collapse)).nav-collapsed .mobile-drawer{background:var(--si-sys-background-1);box-shadow:var(--si-sys-effects-shadow-1)}@media(max-width:575.98px){:host.nav-collapsed .mobile-drawer{background:var(--si-sys-background-1);box-shadow:var(--si-sys-effects-shadow-1)}}@media(min-width:576px){:host:not(.nav-text-only),:host:not(.nav-collapsed),:host(.nav-inline-collapse){--si-layout-header-first-element-offset: 0}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)){padding-inline-start:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50))}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)) nav{inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50))}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)) nav.expanded{inline-size:240px}}@media(min-width:992px){:host:not(.nav-collapsed){padding-inline-start:240px}}.nav-content{display:flex;flex-direction:column;flex:1 1 auto;min-block-size:0}:host(.nav-inline-collapse){--si-layout-header-first-element-offset: 0;--si-navbar-parked-inline-start: var(--si-sys-sizing-spacing-x-60)}@media(min-width:768px){:host(.nav-inline-collapse){--si-navbar-parked-inline-start: var(--si-sys-sizing-spacing-x-90)}}:host(.nav-inline-collapse) nav{overflow:hidden}:host(.nav-inline-collapse) nav:before{content:\"\";position:absolute;inset:0;background:var(--si-sys-background-1);z-index:1;pointer-events:none}:host(.nav-inline-collapse) .nav-content{position:relative;z-index:2}:host(.nav-inline-collapse) .mobile-drawer:before{content:\"\";display:block;block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40))}:host(.nav-inline-collapse) .toggle-placeholder{block-size:0;margin-block-start:0;transition:block-size calc(.5s * var(--element-animations-enabled, 1)) ease,margin-block-start calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-inline-collapse) .toggle-button{position:fixed;z-index:1031;inset-block-start:calc(calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px)) + var(--si-sys-sizing-spacing-y-40) + var(--si-sys-sizing-spacing-y-20));inset-inline-start:calc(240px - calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40)) - var(--si-sys-sizing-spacing-x-40));transition:inset-inline-start calc(.5s * var(--element-animations-enabled, 1)) ease,inset-block-start calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-inline-collapse).nav-collapsed .toggle-placeholder{block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40));margin-block-start:var(--si-sys-sizing-spacing-y-60)}:host(.nav-inline-collapse).nav-collapsed .toggle-button{inset-block-start:calc(calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px)) + var(--si-sys-sizing-spacing-y-60));inset-inline-start:var(--si-navbar-parked-inline-start)}:host(.has-visible-chip) .toggle-button{border-start-end-radius:0;border-end-end-radius:0}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "component", type: SiNavbarVerticalNextChipMenuComponent, selector: "si-navbar-vertical-next-chip-menu" }, { kind: "directive", type: SiSkipLinkTargetDirective, selector: "[siSkipLinkTarget]", inputs: ["siSkipLinkTarget"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
664
664
  }
665
665
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiNavbarVerticalNextComponent, decorators: [{
666
666
  type: Component,
@@ -677,7 +677,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
677
677
  '[class.has-visible-chip]': 'hasVisibleChip()',
678
678
  '[class.visible]': 'visible()',
679
679
  '[class.ready]': 'ready()'
680
- }, template: "@if (visible()) {\n @if (smallScreen() && !collapsed()) {\n <div class=\"modal-backdrop\" animate.leave=\"backdrop-leave\" (click)=\"toggleCollapse()\"></div>\n }\n <nav\n tabindex=\"-1\"\n class=\"background-1 focus-sub-inside\"\n [class.expanded]=\"!collapsed()\"\n [siSkipLinkTarget]=\"skipLinkNavigationLabel()\"\n [class.text-only]=\"textOnly()\"\n >\n <div class=\"collapse-toggle ms-auto\">\n <div class=\"mobile-drawer focus-inside\">\n <button\n type=\"button\"\n class=\"btn btn-icon toggle-button\"\n [class.btn-ghost]=\"chipMode()\"\n [class.btn-tertiary-ghost]=\"!chipMode()\"\n [attr.aria-label]=\"toggleButtonText() | translate\"\n [attr.aria-expanded]=\"!collapsed()\"\n (click)=\"toggleCollapse()\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"toggleIcon()\" />\n </button>\n </div>\n </div>\n @if (hasVisibleChip()) {\n <si-navbar-vertical-next-chip-menu />\n }\n <div\n class=\"nav-content\"\n [attr.inert]=\"chipMode() ? '' : null\"\n [attr.aria-hidden]=\"chipMode() ? 'true' : null\"\n >\n <ng-content select=\"si-navbar-vertical-next-search\" />\n <ng-content select=\"si-navbar-vertical-next-items\" />\n <ng-content select=\"si-navbar-vertical-next-footer-items\" />\n </div>\n </nav>\n @if (inlineCollapse()) {\n <div class=\"toggle-placeholder\" aria-hidden=\"true\"></div>\n }\n}\n<main\n class=\"si-layout-inner focus-none\"\n tabindex=\"-1\"\n [siSkipLinkTarget]=\"skipLinkMainContentLabel()\"\n>\n <ng-content />\n</main>\n", styles: [":host{display:block;--si-layout-header-first-element-offset: 40px}:host.ready:not(.visible){padding-inline-start:0!important}:host.ready{transition:padding-inline-start calc(.5s * var(--element-animations-enabled, 1))}nav{display:flex;flex-direction:column;position:fixed;z-index:1031;inset-block-start:calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px));inset-block-end:0;inset-inline-start:0;inline-size:0;transition:inline-size calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-collapsed) nav{z-index:1030}nav.expanded{inline-size:240px}.mobile-drawer{display:block;text-align:end;border:0;inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50));color:var(--si-sys-text-primary);padding-block:var(--si-sys-sizing-spacing-y-20);padding-inline:var(--si-sys-sizing-spacing-x-40);margin-block-start:var(--si-sys-sizing-spacing-y-40);border-start-end-radius:var(--element-radius-2);border-end-end-radius:var(--element-radius-2);transition:inline-size calc(.5s * var(--element-animations-enabled, 1)) ease,background-color calc(.5s * var(--element-animations-enabled, 1)) ease,box-shadow calc(.5s * var(--element-animations-enabled, 1)) ease}:host(:not(.nav-collapsed):not(.nav-inline-collapse)) .mobile-drawer{inline-size:240px}.modal-backdrop{z-index:1031;transition:opacity calc(.15s * var(--element-animations-enabled, 1)) linear;opacity:1}@starting-style{.modal-backdrop{opacity:0}}.modal-backdrop.backdrop-leave{opacity:0}:host(.nav-text-only:not(.nav-inline-collapse)).nav-collapsed .mobile-drawer{background:var(--si-sys-background-1);box-shadow:0 0 4px var(--element-box-shadow-color-1),0 4px 4px var(--element-box-shadow-color-2)}@media(max-width:575.98px){:host.nav-collapsed .mobile-drawer{background:var(--si-sys-background-1);box-shadow:0 0 4px var(--element-box-shadow-color-1),0 4px 4px var(--element-box-shadow-color-2)}}@media(min-width:576px){:host:not(.nav-text-only),:host:not(.nav-collapsed),:host(.nav-inline-collapse){--si-layout-header-first-element-offset: 0}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)){padding-inline-start:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50))}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)) nav{inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50))}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)) nav.expanded{inline-size:240px}}@media(min-width:992px){:host:not(.nav-collapsed){padding-inline-start:240px}}.nav-content{display:flex;flex-direction:column;flex:1 1 auto;min-block-size:0}:host(.nav-inline-collapse){--si-layout-header-first-element-offset: 0;--si-navbar-parked-inline-start: var(--si-sys-sizing-spacing-x-60)}@media(min-width:768px){:host(.nav-inline-collapse){--si-navbar-parked-inline-start: var(--si-sys-sizing-spacing-x-90)}}:host(.nav-inline-collapse) nav{overflow:hidden}:host(.nav-inline-collapse) nav:before{content:\"\";position:absolute;inset:0;background:var(--si-sys-background-1);z-index:1;pointer-events:none}:host(.nav-inline-collapse) .nav-content{position:relative;z-index:2}:host(.nav-inline-collapse) .mobile-drawer:before{content:\"\";display:block;block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40))}:host(.nav-inline-collapse) .toggle-placeholder{block-size:0;margin-block-start:0;transition:block-size calc(.5s * var(--element-animations-enabled, 1)) ease,margin-block-start calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-inline-collapse) .toggle-button{position:fixed;z-index:1031;inset-block-start:calc(calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px)) + var(--si-sys-sizing-spacing-y-40) + var(--si-sys-sizing-spacing-y-20));inset-inline-start:calc(240px - calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40)) - var(--si-sys-sizing-spacing-x-40));transition:inset-inline-start calc(.5s * var(--element-animations-enabled, 1)) ease,inset-block-start calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-inline-collapse).nav-collapsed .toggle-placeholder{block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40));margin-block-start:var(--si-sys-sizing-spacing-y-60)}:host(.nav-inline-collapse).nav-collapsed .toggle-button{inset-block-start:calc(calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px)) + var(--si-sys-sizing-spacing-y-60));inset-inline-start:var(--si-navbar-parked-inline-start)}:host(.has-visible-chip) .toggle-button{border-start-end-radius:0;border-end-end-radius:0}\n"] }]
680
+ }, template: "@if (visible()) {\n @if (smallScreen() && !collapsed()) {\n <div class=\"modal-backdrop\" animate.leave=\"backdrop-leave\" (click)=\"toggleCollapse()\"></div>\n }\n <nav\n tabindex=\"-1\"\n class=\"background-1 focus-sub-inside\"\n [class.expanded]=\"!collapsed()\"\n [siSkipLinkTarget]=\"skipLinkNavigationLabel()\"\n [class.text-only]=\"textOnly()\"\n >\n <div class=\"collapse-toggle ms-auto\">\n <div class=\"mobile-drawer focus-inside\">\n <button\n type=\"button\"\n class=\"btn btn-icon toggle-button\"\n [class.btn-ghost]=\"chipMode()\"\n [class.btn-tertiary-ghost]=\"!chipMode()\"\n [attr.aria-label]=\"toggleButtonText() | translate\"\n [attr.aria-expanded]=\"!collapsed()\"\n (click)=\"toggleCollapse()\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"toggleIcon()\" />\n </button>\n </div>\n </div>\n @if (hasVisibleChip()) {\n <si-navbar-vertical-next-chip-menu />\n }\n <div\n class=\"nav-content\"\n [attr.inert]=\"chipMode() ? '' : null\"\n [attr.aria-hidden]=\"chipMode() ? 'true' : null\"\n >\n <ng-content select=\"si-navbar-vertical-next-search\" />\n <ng-content select=\"si-navbar-vertical-next-items\" />\n <ng-content select=\"si-navbar-vertical-next-footer-items\" />\n </div>\n </nav>\n @if (inlineCollapse()) {\n <div class=\"toggle-placeholder\" aria-hidden=\"true\"></div>\n }\n}\n<main\n class=\"si-layout-inner focus-none\"\n tabindex=\"-1\"\n [siSkipLinkTarget]=\"skipLinkMainContentLabel()\"\n>\n <ng-content />\n</main>\n", styles: [":host{display:block;--si-layout-header-first-element-offset: 40px}:host.ready:not(.visible){padding-inline-start:0!important}:host.ready{transition:padding-inline-start calc(.5s * var(--element-animations-enabled, 1))}nav{display:flex;flex-direction:column;position:fixed;z-index:1031;inset-block-start:calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px));inset-block-end:0;inset-inline-start:0;inline-size:0;transition:inline-size calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-collapsed) nav{z-index:1030}nav.expanded{inline-size:240px}.mobile-drawer{display:block;text-align:end;border:0;inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50));color:var(--si-sys-text-primary);padding-block:var(--si-sys-sizing-spacing-y-20);padding-inline:var(--si-sys-sizing-spacing-x-40);margin-block-start:var(--si-sys-sizing-spacing-y-40);border-start-end-radius:var(--element-radius-2);border-end-end-radius:var(--element-radius-2);transition:inline-size calc(.5s * var(--element-animations-enabled, 1)) ease,background-color calc(.5s * var(--element-animations-enabled, 1)) ease,box-shadow calc(.5s * var(--element-animations-enabled, 1)) ease}:host(:not(.nav-collapsed):not(.nav-inline-collapse)) .mobile-drawer{inline-size:240px}.modal-backdrop{z-index:1031;transition:opacity calc(.15s * var(--element-animations-enabled, 1)) linear;opacity:1}@starting-style{.modal-backdrop{opacity:0}}.modal-backdrop.backdrop-leave{opacity:0}:host(.nav-text-only:not(.nav-inline-collapse)).nav-collapsed .mobile-drawer{background:var(--si-sys-background-1);box-shadow:var(--si-sys-effects-shadow-1)}@media(max-width:575.98px){:host.nav-collapsed .mobile-drawer{background:var(--si-sys-background-1);box-shadow:var(--si-sys-effects-shadow-1)}}@media(min-width:576px){:host:not(.nav-text-only),:host:not(.nav-collapsed),:host(.nav-inline-collapse){--si-layout-header-first-element-offset: 0}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)){padding-inline-start:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50))}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)) nav{inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-50))}:host:where(:not(.nav-text-only):not(.nav-inline-collapse)) nav.expanded{inline-size:240px}}@media(min-width:992px){:host:not(.nav-collapsed){padding-inline-start:240px}}.nav-content{display:flex;flex-direction:column;flex:1 1 auto;min-block-size:0}:host(.nav-inline-collapse){--si-layout-header-first-element-offset: 0;--si-navbar-parked-inline-start: var(--si-sys-sizing-spacing-x-60)}@media(min-width:768px){:host(.nav-inline-collapse){--si-navbar-parked-inline-start: var(--si-sys-sizing-spacing-x-90)}}:host(.nav-inline-collapse) nav{overflow:hidden}:host(.nav-inline-collapse) nav:before{content:\"\";position:absolute;inset:0;background:var(--si-sys-background-1);z-index:1;pointer-events:none}:host(.nav-inline-collapse) .nav-content{position:relative;z-index:2}:host(.nav-inline-collapse) .mobile-drawer:before{content:\"\";display:block;block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40))}:host(.nav-inline-collapse) .toggle-placeholder{block-size:0;margin-block-start:0;transition:block-size calc(.5s * var(--element-animations-enabled, 1)) ease,margin-block-start calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-inline-collapse) .toggle-button{position:fixed;z-index:1031;inset-block-start:calc(calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px)) + var(--si-sys-sizing-spacing-y-40) + var(--si-sys-sizing-spacing-y-20));inset-inline-start:calc(240px - calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40)) - var(--si-sys-sizing-spacing-x-40));transition:inset-inline-start calc(.5s * var(--element-animations-enabled, 1)) ease,inset-block-start calc(.5s * var(--element-animations-enabled, 1)) ease}:host(.nav-inline-collapse).nav-collapsed .toggle-placeholder{block-size:calc(1lh + 2 * var(--si-sys-sizing-spacing-y-40));margin-block-start:var(--si-sys-sizing-spacing-y-60)}:host(.nav-inline-collapse).nav-collapsed .toggle-button{inset-block-start:calc(calc(var(--si-sys-sizing-sizing-100) + 1px + var(--element-titlebar-spacing, 0px) + var(--element-system-banner-spacing, 0px)) + var(--si-sys-sizing-spacing-y-60));inset-inline-start:var(--si-navbar-parked-inline-start)}:host(.has-visible-chip) .toggle-button{border-start-end-radius:0;border-end-end-radius:0}\n"] }]
681
681
  }], ctorParameters: () => [], propDecorators: { collapsed: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsed", required: false }] }, { type: i0.Output, args: ["collapsedChange"] }], textOnly: [{ type: i0.Input, args: [{ isSignal: true, alias: "textOnly", required: false }] }], inlineCollapse: [{ type: i0.Input, args: [{ isSignal: true, alias: "inlineCollapse", required: false }] }], alwaysFlyout: [{ type: i0.Input, args: [{ isSignal: true, alias: "alwaysFlyout", required: false }] }], visible: [{ type: i0.Input, args: [{ isSignal: true, alias: "visible", required: false }] }], toggleButtonText: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleButtonText", required: false }] }], stateId: [{ type: i0.Input, args: [{ isSignal: true, alias: "stateId", required: false }] }], skipLinkNavigationLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "skipLinkNavigationLabel", required: false }] }], skipLinkMainContentLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "skipLinkMainContentLabel", required: false }] }], chipMenu: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SiNavbarVerticalNextChipMenuComponent), { isSignal: true }] }], itemsComponent: [{ type: i0.ContentChild, args: [i0.forwardRef(() => SiNavbarVerticalNextItemsComponent), { isSignal: true }] }], items: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => SiNavbarVerticalNextItemComponent), { ...{
682
682
  descendants: true
683
683
  }, isSignal: true }] }] } });
@@ -849,11 +849,11 @@ class SiNavbarVerticalNextSearchComponent {
849
849
  setTimeout(() => this.searchBar().focus());
850
850
  }
851
851
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiNavbarVerticalNextSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
852
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.8", type: SiNavbarVerticalNextSearchComponent, isStandalone: true, selector: "si-navbar-vertical-next-search", inputs: { placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { searchChange: "searchChange" }, viewQueries: [{ propertyName: "searchBar", first: true, predicate: SiSearchBarComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<si-search-bar\n class=\"mx-4\"\n colorVariant=\"base-0\"\n prohibitedCharacters=\"*?\"\n [placeholder]=\"placeholder() | translate\"\n [debounceTime]=\"debounceTime()\"\n [showIcon]=\"true\"\n (searchChange)=\"searchChange.emit($event)\"\n/>\n<button\n type=\"button\"\n class=\"btn-search background-0 px-3 mx-4 mobile text-secondary\"\n [attr.aria-label]=\"placeholder() | translate\"\n (click)=\"expandForSearch()\"\n>\n <si-icon class=\"icon\" [icon]=\"icons.elementSearch\" />\n</button>\n", styles: [":host{display:flex;align-items:center;margin-block-start:var(--si-sys-sizing-spacing-y-40);padding-block:var(--si-sys-sizing-spacing-y-20);overflow-x:hidden}:host-context(.nav-collapsed){display:none}:host-context(.nav-collapsed) si-search-bar{display:none}si-search-bar{inline-size:100%}.btn-search{display:none;border:0;border-radius:var(--element-radius-2);block-size:calc(1lh + var(--si-sys-sizing-spacing-y-40) * 2);inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-20));text-align:start}@media(min-width:576px){:host-context(:not(.nav-text-only).nav-collapsed){display:flex}.btn-search{display:none}:host-context(.nav-collapsed) .btn-search{display:block}}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "component", type: SiSearchBarComponent, selector: "si-search-bar", inputs: ["debounceTime", "prohibitedCharacters", "placeholder", "showIcon", "value", "readonly", "colorVariant", "disabled", "maxlength", "clearButtonAriaLabel"], outputs: ["searchChange"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
852
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.8", type: SiNavbarVerticalNextSearchComponent, isStandalone: true, selector: "si-navbar-vertical-next-search", inputs: { placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { searchChange: "searchChange" }, viewQueries: [{ propertyName: "searchBar", first: true, predicate: SiSearchBarComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<si-search-bar\n class=\"mx-4\"\n colorVariant=\"base-0\"\n prohibitedCharacters=\"*?\"\n [placeholder]=\"placeholder() | translate\"\n [debounceTime]=\"debounceTime()\"\n [showIcon]=\"true\"\n (searchChange)=\"searchChange.emit($event)\"\n/>\n<button\n type=\"button\"\n class=\"btn-search background-0 px-3 mx-4 mobile text-secondary\"\n [attr.aria-label]=\"placeholder() | translate\"\n (click)=\"expandForSearch()\"\n>\n <si-icon class=\"icon\" [icon]=\"icons.elementSearch\" />\n</button>\n", styles: [":host{display:flex;align-items:center;margin-block-start:var(--si-sys-sizing-spacing-y-40);padding-block:var(--si-sys-sizing-spacing-y-20);overflow-x:hidden}:host-context(.nav-collapsed){display:none}:host-context(.nav-collapsed) si-search-bar{display:none}si-search-bar{inline-size:100%}.btn-search{display:none;border:0;border-radius:var(--element-radius-2);block-size:var(--si-sys-sizing-sizing-80);inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-20));text-align:start}@media(min-width:576px){:host-context(:not(.nav-text-only).nav-collapsed){display:flex}.btn-search{display:none}:host-context(.nav-collapsed) .btn-search{display:block}}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "component", type: SiSearchBarComponent, selector: "si-search-bar", inputs: ["debounceTime", "prohibitedCharacters", "placeholder", "showIcon", "value", "readonly", "colorVariant", "disabled", "maxlength", "clearButtonAriaLabel"], outputs: ["searchChange"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
853
853
  }
854
854
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiNavbarVerticalNextSearchComponent, decorators: [{
855
855
  type: Component,
856
- args: [{ selector: 'si-navbar-vertical-next-search', imports: [SiIconComponent, SiSearchBarComponent, SiTranslatePipe], template: "<si-search-bar\n class=\"mx-4\"\n colorVariant=\"base-0\"\n prohibitedCharacters=\"*?\"\n [placeholder]=\"placeholder() | translate\"\n [debounceTime]=\"debounceTime()\"\n [showIcon]=\"true\"\n (searchChange)=\"searchChange.emit($event)\"\n/>\n<button\n type=\"button\"\n class=\"btn-search background-0 px-3 mx-4 mobile text-secondary\"\n [attr.aria-label]=\"placeholder() | translate\"\n (click)=\"expandForSearch()\"\n>\n <si-icon class=\"icon\" [icon]=\"icons.elementSearch\" />\n</button>\n", styles: [":host{display:flex;align-items:center;margin-block-start:var(--si-sys-sizing-spacing-y-40);padding-block:var(--si-sys-sizing-spacing-y-20);overflow-x:hidden}:host-context(.nav-collapsed){display:none}:host-context(.nav-collapsed) si-search-bar{display:none}si-search-bar{inline-size:100%}.btn-search{display:none;border:0;border-radius:var(--element-radius-2);block-size:calc(1lh + var(--si-sys-sizing-spacing-y-40) * 2);inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-20));text-align:start}@media(min-width:576px){:host-context(:not(.nav-text-only).nav-collapsed){display:flex}.btn-search{display:none}:host-context(.nav-collapsed) .btn-search{display:block}}\n"] }]
856
+ args: [{ selector: 'si-navbar-vertical-next-search', imports: [SiIconComponent, SiSearchBarComponent, SiTranslatePipe], template: "<si-search-bar\n class=\"mx-4\"\n colorVariant=\"base-0\"\n prohibitedCharacters=\"*?\"\n [placeholder]=\"placeholder() | translate\"\n [debounceTime]=\"debounceTime()\"\n [showIcon]=\"true\"\n (searchChange)=\"searchChange.emit($event)\"\n/>\n<button\n type=\"button\"\n class=\"btn-search background-0 px-3 mx-4 mobile text-secondary\"\n [attr.aria-label]=\"placeholder() | translate\"\n (click)=\"expandForSearch()\"\n>\n <si-icon class=\"icon\" [icon]=\"icons.elementSearch\" />\n</button>\n", styles: [":host{display:flex;align-items:center;margin-block-start:var(--si-sys-sizing-spacing-y-40);padding-block:var(--si-sys-sizing-spacing-y-20);overflow-x:hidden}:host-context(.nav-collapsed){display:none}:host-context(.nav-collapsed) si-search-bar{display:none}si-search-bar{inline-size:100%}.btn-search{display:none;border:0;border-radius:var(--element-radius-2);block-size:var(--si-sys-sizing-sizing-80);inline-size:calc(1.5rem + 2 * var(--si-sys-sizing-spacing-x-20));text-align:start}@media(min-width:576px){:host-context(:not(.nav-text-only).nav-collapsed){display:flex}.btn-search{display:none}:host-context(.nav-collapsed) .btn-search{display:block}}\n"] }]
857
857
  }], propDecorators: { placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], debounceTime: [{ type: i0.Input, args: [{ isSignal: true, alias: "debounceTime", required: false }] }], searchChange: [{ type: i0.Output, args: ["searchChange"] }], searchBar: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SiSearchBarComponent), { isSignal: true }] }] } });
858
858
 
859
859
  /**