{"version":3,"file":"lucca-front-ng-software-icon-wrapper.mjs","sources":["../../../packages/ng/software-icon-wrapper/software-icon-wrapper-item.directive.ts","../../../packages/ng/software-icon-wrapper/translations.ts","../../../packages/ng/software-icon-wrapper/software-icon-wrapper.translate.ts","../../../packages/ng/software-icon-wrapper/software-icon-wrapper.component.ts","../../../packages/ng/software-icon-wrapper/software-icon-wrapper.component.html","../../../packages/ng/software-icon-wrapper/lucca-front-ng-software-icon-wrapper.ts"],"sourcesContent":["import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: '[SoftwareIconWrapperItem]',\n\tstandalone: true,\n})\nexport class SoftwareIconWrapperItemDirective {\n\treadonly templateRef = inject<TemplateRef<unknown>>(TemplateRef);\n}\n","export const Translations = {\n\tde: {\n\t\tseeMore: 'Weitere {{count}} Programme anzeigen',\n\t},\n\ten: {\n\t\tseeMore: 'See the {{count}} additional software programs',\n\t},\n\tes: {\n\t\tseeMore: 'Ver los {{count}} programas adicionales',\n\t},\n\tfr: {\n\t\tseeMore: 'Voir les {{count}} logiciels supplémentaires',\n\t},\n\tit: {\n\t\tseeMore: 'Vedi i {{count}} programmi aggiuntivi',\n\t},\n\tnl: {\n\t\tseeMore: 'Bekijk de {{count}} extra programma’s',\n\t},\n\tpt: {\n\t\tseeMore: 'Ver os {{count}} programas adicionais',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_SOFTWARE_ICON_WRAPPER_TRANSLATIONS = new InjectionToken('LuSoftwareIconWrapperTranslations', {\n\tfactory: () => luSoftwareIconWrapperTranslations,\n});\n\nexport type SoftwareIconWrapperTranslations = {\n\tseeMore: string;\n};\n\nexport const luSoftwareIconWrapperTranslations: LuTranslation<SoftwareIconWrapperTranslations> = Translations;\n","import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, contentChildren, input, numberAttribute, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { LU_SOFTWARE_ICON_WRAPPER } from '@lucca-front/ng/software-icon';\n\nimport { intlInputOptions, IntlParamsPipe } from '@lucca-front/ng/core';\nimport { PopoverDirective } from '@lucca-front/ng/popover2';\nimport { LU_SOFTWARE_ICON_WRAPPER_TRANSLATIONS } from './software-icon-wrapper.translate';\n\n@Component({\n\tselector: 'lu-software-icon-wrapper',\n\ttemplateUrl: './software-icon-wrapper.component.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\timports: [PopoverDirective, IntlParamsPipe, NgTemplateOutlet],\n\tproviders: [{ provide: LU_SOFTWARE_ICON_WRAPPER, useValue: true }],\n\thost: {\n\t\tclass: 'softwareIconWrapper',\n\t\t'[class.mod-XS]': 'size() === \"XS\"',\n\t\t'[class.mod-S]': 'size() === \"S\"',\n\t},\n})\nexport class SoftwareIconWrapperComponent {\n\treadonly max = input(0, { transform: numberAttribute });\n\treadonly size = input<'XS' | 'S' | ''>('');\n\treadonly intl = input(...intlInputOptions(LU_SOFTWARE_ICON_WRAPPER_TRANSLATIONS));\n\n\tprotected readonly items = contentChildren(TemplateRef, { descendants: true });\n\n\treadonly hiddenIcons = computed<readonly TemplateRef<unknown>[]>(() => {\n\t\treturn this.max() == null || this.max() <= 0 || this.items().length < this.max() ? [] : this.items().slice(this.max());\n\t});\n\n\treadonly visibleIcons = computed<readonly TemplateRef<unknown>[]>(() => {\n\t\treturn this.max() == null || this.max() <= 0 || this.items().length < this.max() ? this.items() : this.items().slice(0, this.hiddenCount() > 1 ? this.max() : this.max() + 1);\n\t});\n\n\treadonly hiddenCount = computed(() => this.hiddenIcons().length);\n}\n","<ul class=\"softwareIconWrapper-list\">\n\t@for (icon of visibleIcons(); track icon) {\n\t\t<li class=\"softwareIconWrapper-list-item\">\n\t\t\t<ng-container [ngTemplateOutlet]=\"icon\" />\n\t\t</li>\n\t}\n</ul>\n\n@if (hiddenCount() >= 2) {\n\t<button class=\"softwareIconWrapper-action\" type=\"button\" [luPopover2]=\"softwareIconWrapperPopover\" luPopoverTrigger=\"click+hover\">\n\t\t<div class=\"softwareIconWrapper-action-more\">\n\t\t\t<span aria-hidden=\"true\" [attr.data-content-before]=\"'+' + hiddenIcons().length\"></span>\n\t\t\t<span class=\"pr-u-mask\">{{ intl().seeMore | intlParams: { count: hiddenIcons().length } }}</span>\n\t\t</div>\n\t</button>\n\n\t<ng-template #softwareIconWrapperPopover>\n\t\t<ul class=\"popover-contentOptional softwareIconWrapper_popover\" [class]=\"size() ? `mod-${size()}` : null\">\n\t\t\t@for (icon of hiddenIcons(); track icon) {\n\t\t\t\t<li class=\"softwareIconWrapper_popover-item\">\n\t\t\t\t\t<ng-container [ngTemplateOutlet]=\"icon\" />\n\t\t\t\t</li>\n\t\t\t}\n\t\t</ul>\n\t</ng-template>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}