@lucca-front/ng 21.1.2 → 21.1.3

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 (42) hide show
  1. package/fesm2022/lucca-front-ng-callout.mjs +2 -2
  2. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  3. package/fesm2022/lucca-front-ng-core-select.mjs +5 -2
  4. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  5. package/fesm2022/lucca-front-ng-date2.mjs +2 -2
  6. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  7. package/fesm2022/lucca-front-ng-dialog.mjs +1 -1
  8. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  9. package/fesm2022/lucca-front-ng-form-field.mjs +4 -4
  10. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  11. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +2 -2
  12. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
  13. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +163 -64
  14. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  15. package/fesm2022/lucca-front-ng-forms.mjs +14 -14
  16. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-highlight-data.mjs.map +1 -1
  18. package/fesm2022/lucca-front-ng-multi-select.mjs +20 -10
  19. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  20. package/fesm2022/lucca-front-ng-resource-card.mjs +2 -2
  21. package/fesm2022/lucca-front-ng-resource-card.mjs.map +1 -1
  22. package/fesm2022/lucca-front-ng-simple-select.mjs +5 -4
  23. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  24. package/fesm2022/lucca-front-ng-skeleton.mjs +4 -4
  25. package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
  26. package/fesm2022/lucca-front-ng-toast.mjs +2 -2
  27. package/fesm2022/lucca-front-ng-toast.mjs.map +1 -1
  28. package/fesm2022/lucca-front-ng-tooltip.mjs +129 -162
  29. package/fesm2022/lucca-front-ng-tooltip.mjs.map +1 -1
  30. package/package.json +14 -14
  31. package/schematics/lib/component-mapper.js +1 -1
  32. package/schematics/lib/css-mapper.js +1 -1
  33. package/schematics/lu-button/index.js +1 -1
  34. package/schematics/lu-container/index.js +1 -1
  35. package/schematics/lu-icon/index.js +1 -1
  36. package/schematics/lu-loading/index.js +1 -1
  37. package/schematics/lu-select/index.js +1 -1
  38. package/schematics/lu-text-input/index.js +1 -1
  39. package/schematics/new-icons/index.js +1 -1
  40. package/src/components/cdk/_global.scss +8 -8
  41. package/types/lucca-front-ng-forms-rich-text-input.d.ts +69 -14
  42. package/types/lucca-front-ng-tooltip.d.ts +9 -17
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-skeleton.mjs","sources":["../../../packages/ng/skeleton/skeleton-button/skeleton-button.component.ts","../../../packages/ng/skeleton/skeleton-button/skeleton-button.component.html","../../../packages/ng/skeleton/skeleton-data-table/skeleton-data-table.component.ts","../../../packages/ng/skeleton/skeleton-data-table/skeleton-data-table.component.html","../../../packages/ng/skeleton/skeleton-field/skeleton-field.component.ts","../../../packages/ng/skeleton/skeleton-field/skeleton-field.component.html","../../../packages/ng/skeleton/skeleton-header/skeleton-header.component.ts","../../../packages/ng/skeleton/skeleton-header/skeleton-header.component.html","../../../packages/ng/skeleton/skeleton-index-table/skeleton-index-table.component.ts","../../../packages/ng/skeleton/skeleton-index-table/skeleton-index-table.component.html","../../../packages/ng/skeleton/skeleton-resource-card/skeleton-resource-card.component.ts","../../../packages/ng/skeleton/skeleton-resource-card/skeleton-resource-card.component.html","../../../packages/ng/skeleton/skeleton-table/skeleton-table.component.ts","../../../packages/ng/skeleton/skeleton-table/skeleton-table.component.html","../../../packages/ng/skeleton/lucca-front-ng-skeleton.ts"],"sourcesContent":["import { booleanAttribute, ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n\tselector: 'lu-skeleton-button',\n\ttemplateUrl: './skeleton-button.component.html',\n\tstyleUrl: './skeleton-button.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkeletonButtonComponent {\n\t/**\n\t * Applies dark color for skeleton\n\t */\n\treadonly dark = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Changes the size of the skeleton button\n\t */\n\treadonly size = input<'XS' | 'S' | 'M'>();\n}\n","<div class=\"skeleton is-loading\" [class.mod-dark]=\"dark()\" inert=\"inert\">\n\t<div class=\"button\" [class.mod-dark]=\"dark()\" [class]=\"size() ? `mod-${size()}` : null\">\n\t\t<span class=\"skeleton-item\" [class]=\"size() ? `pr-u-body${size()}` : null\"></span>\n\t</div>\n</div>\n","import { NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nexport type ColAlignDataTable = 'start' | 'center' | 'end';\n\n@Component({\n\tselector: 'lu-skeleton-data-table',\n\ttemplateUrl: './skeleton-data-table.component.html',\n\tstyleUrl: './skeleton-data-table.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [NgTemplateOutlet],\n})\nexport class SkeletonDataTableComponent {\n\t/**\n\t * Skeleton only show in data table body\n\t */\n\treadonly dataTableBodyOnly = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Defines the number of cols (5 by default)\n\t */\n\treadonly cols = input<number>(5);\n\n\treadonly colsAlign = input<Record<number, ColAlignDataTable>>({});\n\n\t/**\n\t * Defines the number of row (8 by default)\n\t */\n\treadonly rows = input<number>(8);\n\n\treadonly colsNumber = computed<unknown[]>(() => new Array(this.cols()));\n\treadonly rowsNumber = computed<unknown[]>(() => new Array(this.rows()));\n\n\treadonly getRandomPercent = (min: number = 33, max: number = 66): string => `${Math.floor(Math.random() * (max - min) + min).toString()}%`;\n}\n","@if (dataTableBodyOnly()) {\n\t<ng-container *ngTemplateOutlet=\"tbody\" />\n} @else {\n\t<div class=\"dataTableWrapper\">\n\t\t<table class=\"dataTable mod-layoutFixed skeleton is-loading\" inert=\"inert\">\n\t\t\t<thead class=\"dataTable-head\">\n\t\t\t\t<tr class=\"dataTable-head-row\">\n\t\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t\t<th class=\"dataTable-head-row-cell\" scope=\"col\">\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tclass=\"skeleton-item\"\n\t\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"getRandomPercent()\"\n\t\t\t\t\t\t\t></span>\n\t\t\t\t\t\t</th>\n\t\t\t\t\t}\n\t\t\t\t</tr>\n\t\t\t</thead>\n\t\t\t<ng-container *ngTemplateOutlet=\"tbody\" />\n\t\t</table>\n\t</div>\n}\n<ng-template #tbody>\n\t<tbody class=\"dataTable-body\">\n\t\t@for (row of rowsNumber(); track row) {\n\t\t\t<tr class=\"dataTable-body-row\">\n\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t<td class=\"dataTable-body-row-cell\">\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclass=\"skeleton-item\"\n\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"getRandomPercent()\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t</td>\n\t\t\t\t}\n\t\t\t</tr>\n\t\t}\n\t</tbody>\n</ng-template>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, input, numberAttribute } from '@angular/core';\n\n@Component({\n\tselector: 'lu-skeleton-field',\n\ttemplateUrl: './skeleton-field.component.html',\n\tstyleUrl: './skeleton-field.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkeletonFieldComponent {\n\t/**\n\t * Applies dark color for skeleton\n\t */\n\treadonly dark = input<boolean, boolean | `${boolean}`>(false, { transform: booleanAttribute });\n\n\t/**\n\t * Hide the field label skeleton\n\t */\n\treadonly hiddenLabel = input<boolean, boolean | `${boolean}`>(false, { transform: booleanAttribute });\n\n\t/**\n\t * Defines the number of row\n\t */\n\treadonly rows = input<number, number | `${number}`>(1, { transform: numberAttribute });\n\n\treadonly lines = computed(() => Array.from({ length: this.rows() }));\n\n\treadonly getRandomPercent = (min: number = 33, max: number = 66): string => `${Math.floor(Math.random() * (max - min) + min).toString()}%`;\n}\n","<div class=\"form-field skeleton is-loading\" [class.mod-dark]=\"dark()\" inert=\"inert\">\n\t@if (!hiddenLabel()) {\n\t\t<span class=\"skeleton-item\" [style.--components-skeleton-text-width]=\"getRandomPercent()\"></span>\n\t}\n\t<div class=\"textField\">\n\t\t<div class=\"textField-input\">\n\t\t\t<span class=\"textField-input-value\">\n\t\t\t\t@for (line of lines(); track $index) {\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass=\"skeleton-item\"\n\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"$last ? getRandomPercent() : getRandomPercent(98, 100)\"\n\t\t\t\t\t></span>\n\t\t\t\t}\n\t\t\t</span>\n\t\t</div>\n\t</div>\n</div>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n\tselector: 'lu-skeleton-header',\n\ttemplateUrl: './skeleton-header.component.html',\n\tstyleUrl: './skeleton-header.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkeletonHeaderComponent {\n\t/**\n\t * Applies dark color for skeleton\n\t */\n\treadonly dark = input(false, { transform: booleanAttribute });\n}\n","<header class=\"pageHeader skeleton is-loading\" [class.mod-dark]=\"dark()\" inert=\"inert\">\n\t<div class=\"pageHeader-content\">\n\t\t<div class=\"pageHeader-content-title pr-u-flexGrow1\">\n\t\t\t<h1 class=\"pr-u-margin0 skeleton-item\" style=\"--components-skeleton-text-width: 80%\"></h1>\n\t\t</div>\n\t\t<div class=\"pageHeader-content-actions\">\n\t\t\t<span class=\"pr-u-h1 skeleton-item\"></span>\n\t\t</div>\n\t</div>\n\t<div class=\"pageHeader-description\">\n\t\t<p class=\"pr-u-marginBlockEnd0 skeleton-item\" style=\"--components-skeleton-text-width: 70%\"></p>\n\t\t<p class=\"pr-u-marginBlockEnd0 skeleton-item\" style=\"--components-skeleton-text-width: 40%\"></p>\n\t</div>\n</header>\n","import { NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nexport type ColAlignIndexTable = 'start' | 'center' | 'end';\n\n@Component({\n\tselector: 'lu-skeleton-index-table',\n\ttemplateUrl: './skeleton-index-table.component.html',\n\tstyleUrl: './skeleton-index-table.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [NgTemplateOutlet],\n})\nexport class SkeletonIndexTableComponent {\n\t/**\n\t * Skeleton only show in index table body\n\t */\n\treadonly tableBodyOnly = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Defines the number of cols (5 by default)\n\t */\n\treadonly cols = input<number>(5);\n\n\treadonly colsAlign = input<Record<number, ColAlignIndexTable>>({});\n\n\t/**\n\t * Defines the number of row (8 by default)\n\t */\n\treadonly rows = input<number>(8);\n\n\treadonly rowsNumber = computed<unknown[]>(() => new Array(this.rows()));\n\treadonly colsNumber = computed<unknown[]>(() => new Array(this.cols()));\n\n\treadonly getRandomPercent = (min: number = 33, max: number = 66): string => `${Math.floor(Math.random() * (max - min) + min).toString()}%`;\n}\n","@if (tableBodyOnly()) {\n\t<ng-container *ngTemplateOutlet=\"tbody\" />\n} @else {\n\t<table class=\"indexTable mod-layoutFixed skeleton is-loading\" inert=\"inert\">\n\t\t<thead class=\"indexTable-head\">\n\t\t\t<tr class=\"indexTable-head-row\">\n\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t<th class=\"indexTable-head-row-cell\" scope=\"col\">\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclass=\"skeleton-item mod-dark\"\n\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"getRandomPercent()\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t</th>\n\t\t\t\t}\n\t\t\t</tr>\n\t\t</thead>\n\t\t<ng-container *ngTemplateOutlet=\"tbody\" />\n\t</table>\n}\n<ng-template #tbody>\n\t<tbody class=\"indexTable-body\">\n\t\t@for (row of rowsNumber(); track row) {\n\t\t\t<tr class=\"indexTable-body-row\">\n\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t<td class=\"indexTable-body-row-cell\">\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclass=\"skeleton-item\"\n\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"getRandomPercent()\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t</td>\n\t\t\t\t}\n\t\t\t</tr>\n\t\t}\n\t</tbody>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, computed, input, numberAttribute } from '@angular/core';\n\n@Component({\n\tselector: 'lu-skeleton-resource-card',\n\ttemplateUrl: './skeleton-resource-card.component.html',\n\tstyleUrl: './skeleton-resource-card.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkeletonResourceCardComponent {\n\t/**\n\t * Defines the number of description lines in resource card\n\t */\n\tdescriptionLines = input(0, { transform: numberAttribute });\n\n\treadonly lines = computed(() => Array.from({ length: this.descriptionLines() }));\n\n\tgetRandomPercent = (min: number = 33, max: number = 66): string => `${Math.floor(Math.random() * (max - min) + min).toString()}%`;\n}\n","<div class=\"resourceCard skeleton is-loading\" inert=\"inert\">\n\t<div class=\"resourceCard-layout\">\n\t\t<div class=\"resourceCard-layout-header\">\n\t\t\t<h3 class=\"skeleton-item\" [style.--components-skeleton-text-width]=\"getRandomPercent()\"></h3>\n\t\t</div>\n\t\t@if (descriptionLines() > 0) {\n\t\t\t<div class=\"resourceCard-layout-content\">\n\t\t\t\t@for (line of lines(); track $index) {\n\t\t\t\t\t<span class=\"skeleton-item\" [style.--components-skeleton-text-width]=\"getRandomPercent(98, 100)\"></span>\n\t\t\t\t}\n\t\t\t</div>\n\t\t}\n\t</div>\n</div>\n","import { NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nexport type ColAlignTable = 'start' | 'center' | 'end';\n\n@Component({\n\tselector: 'lu-skeleton-table',\n\ttemplateUrl: './skeleton-table.component.html',\n\tstyleUrl: './skeleton-table.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [NgTemplateOutlet],\n})\nexport class SkeletonTableComponent {\n\t/**\n\t * Skeleton only show in table body\n\t */\n\treadonly tableBodyOnly = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Defines the number of cols (5 by default)\n\t */\n\treadonly cols = input<number>(5);\n\n\treadonly colsAlign = input<Record<number, ColAlignTable>>({});\n\n\t/**\n\t * Defines the number of row (8 by default)\n\t */\n\treadonly rows = input<number>(8);\n\n\treadonly colsNumber = computed<unknown[]>(() => new Array(this.cols()));\n\treadonly rowsNumber = computed<unknown[]>(() => new Array(this.rows()));\n\n\treadonly randomPercent: string = `${Math.floor(Math.random() * (66 - 33) + 33).toString()}%`;\n}\n","@if (tableBodyOnly()) {\n\t<ng-container *ngTemplateOutlet=\"tbody\" />\n} @else {\n\t<table class=\"table skeleton is-loading\" inert=\"inert\">\n\t\t<thead class=\"table-head\">\n\t\t\t<tr class=\"table-head-row\">\n\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t<th class=\"table-head-row-cell\">\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclass=\"skeleton-item mod-dark pr-u-bodyS\"\n\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"randomPercent\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t</th>\n\t\t\t\t}\n\t\t\t</tr>\n\t\t</thead>\n\t\t<ng-container *ngTemplateOutlet=\"tbody\" />\n\t</table>\n}\n<ng-template #tbody>\n\t<tbody class=\"table-body\">\n\t\t@for (row of rowsNumber(); track row) {\n\t\t\t<tr class=\"table-body-row\">\n\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t<td class=\"table-body-row-cell\">\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclass=\"skeleton-item\"\n\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"randomPercent\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t</td>\n\t\t\t\t}\n\t\t\t</tr>\n\t\t}\n\t</tbody>\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-skeleton.mjs","sources":["../../../packages/ng/skeleton/skeleton-button/skeleton-button.component.ts","../../../packages/ng/skeleton/skeleton-button/skeleton-button.component.html","../../../packages/ng/skeleton/skeleton-data-table/skeleton-data-table.component.ts","../../../packages/ng/skeleton/skeleton-data-table/skeleton-data-table.component.html","../../../packages/ng/skeleton/skeleton-field/skeleton-field.component.ts","../../../packages/ng/skeleton/skeleton-field/skeleton-field.component.html","../../../packages/ng/skeleton/skeleton-header/skeleton-header.component.ts","../../../packages/ng/skeleton/skeleton-header/skeleton-header.component.html","../../../packages/ng/skeleton/skeleton-index-table/skeleton-index-table.component.ts","../../../packages/ng/skeleton/skeleton-index-table/skeleton-index-table.component.html","../../../packages/ng/skeleton/skeleton-resource-card/skeleton-resource-card.component.ts","../../../packages/ng/skeleton/skeleton-resource-card/skeleton-resource-card.component.html","../../../packages/ng/skeleton/skeleton-table/skeleton-table.component.ts","../../../packages/ng/skeleton/skeleton-table/skeleton-table.component.html","../../../packages/ng/skeleton/lucca-front-ng-skeleton.ts"],"sourcesContent":["import { booleanAttribute, ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n\tselector: 'lu-skeleton-button',\n\ttemplateUrl: './skeleton-button.component.html',\n\tstyleUrl: './skeleton-button.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkeletonButtonComponent {\n\t/**\n\t * Applies dark color for skeleton\n\t */\n\treadonly dark = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Changes the size of the skeleton button\n\t */\n\treadonly size = input<'XS' | 'S' | 'M'>();\n}\n","<div class=\"skeleton is-loading\" [class.mod-dark]=\"dark()\" inert=\"inert\">\n\t<div class=\"button\" [class.mod-dark]=\"dark()\" [class]=\"size() ? `mod-${size()}` : null\">\n\t\t<span class=\"skeleton-item\" [class]=\"size() ? `pr-u-body${size()}` : null\"></span>\n\t</div>\n</div>\n","import { NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nexport type ColAlignDataTable = 'start' | 'center' | 'end';\n\n@Component({\n\tselector: 'lu-skeleton-data-table',\n\ttemplateUrl: './skeleton-data-table.component.html',\n\tstyleUrl: './skeleton-data-table.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [NgTemplateOutlet],\n})\nexport class SkeletonDataTableComponent {\n\t/**\n\t * Skeleton only show in data table body\n\t */\n\treadonly dataTableBodyOnly = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Defines the number of cols (5 by default)\n\t */\n\treadonly cols = input<number>(5);\n\n\treadonly colsAlign = input<Record<number, ColAlignDataTable>>({});\n\n\t/**\n\t * Defines the number of row (8 by default)\n\t */\n\treadonly rows = input<number>(8);\n\n\treadonly colsNumber = computed<unknown[]>(() => new Array(this.cols()));\n\treadonly rowsNumber = computed<unknown[]>(() => new Array(this.rows()));\n\n\treadonly getRandomPercent = (min: number = 33, max: number = 66): string => `${Math.floor(Math.random() * (max - min) + min).toString()}%`;\n}\n","@if (dataTableBodyOnly()) {\n\t<ng-container *ngTemplateOutlet=\"tbody\" />\n} @else {\n\t<div class=\"dataTableWrapper\">\n\t\t<table class=\"dataTable mod-layoutFixed skeleton is-loading\" inert=\"inert\">\n\t\t\t<thead class=\"dataTable-head\">\n\t\t\t\t<tr class=\"dataTable-head-row\">\n\t\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t\t<th class=\"dataTable-head-row-cell\" scope=\"col\">\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tclass=\"skeleton-item\"\n\t\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"getRandomPercent()\"\n\t\t\t\t\t\t\t></span>\n\t\t\t\t\t\t</th>\n\t\t\t\t\t}\n\t\t\t\t</tr>\n\t\t\t</thead>\n\t\t\t<ng-container *ngTemplateOutlet=\"tbody\" />\n\t\t</table>\n\t</div>\n}\n<ng-template #tbody>\n\t<tbody class=\"dataTable-body\">\n\t\t@for (row of rowsNumber(); track row) {\n\t\t\t<tr class=\"dataTable-body-row\">\n\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t<td class=\"dataTable-body-row-cell\">\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclass=\"skeleton-item\"\n\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"getRandomPercent()\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t</td>\n\t\t\t\t}\n\t\t\t</tr>\n\t\t}\n\t</tbody>\n</ng-template>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, input, numberAttribute } from '@angular/core';\n\n@Component({\n\tselector: 'lu-skeleton-field',\n\ttemplateUrl: './skeleton-field.component.html',\n\tstyleUrl: './skeleton-field.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkeletonFieldComponent {\n\t/**\n\t * Applies dark color for skeleton\n\t */\n\treadonly dark = input<boolean, boolean | `${boolean}`>(false, { transform: booleanAttribute });\n\n\t/**\n\t * Hide the field label skeleton\n\t */\n\treadonly hiddenLabel = input<boolean, boolean | `${boolean}`>(false, { transform: booleanAttribute });\n\n\t/**\n\t * Defines the number of row\n\t */\n\treadonly rows = input<number, number | `${number}`>(1, { transform: numberAttribute });\n\n\treadonly lines = computed(() => Array.from({ length: this.rows() }));\n\n\treadonly getRandomPercent = (min: number = 33, max: number = 66): string => `${Math.floor(Math.random() * (max - min) + min).toString()}%`;\n}\n","<div class=\"form-field skeleton is-loading\" [class.mod-dark]=\"dark()\" inert=\"inert\">\n\t@if (!hiddenLabel()) {\n\t\t<span class=\"skeleton-item\" [style.--components-skeleton-text-width]=\"getRandomPercent()\"></span>\n\t}\n\t<div class=\"textField\">\n\t\t<div class=\"textField-input\">\n\t\t\t<span class=\"textField-input-value\">\n\t\t\t\t@for (line of lines(); track $index) {\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass=\"skeleton-item\"\n\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"$last ? getRandomPercent() : getRandomPercent(98, 100)\"\n\t\t\t\t\t></span>\n\t\t\t\t}\n\t\t\t</span>\n\t\t</div>\n\t</div>\n</div>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n\tselector: 'lu-skeleton-header',\n\ttemplateUrl: './skeleton-header.component.html',\n\tstyleUrl: './skeleton-header.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkeletonHeaderComponent {\n\t/**\n\t * Applies dark color for skeleton\n\t */\n\treadonly dark = input(false, { transform: booleanAttribute });\n}\n","<header class=\"pageHeader skeleton is-loading\" [class.mod-dark]=\"dark()\" inert=\"inert\">\n\t<div class=\"pageHeader-content\">\n\t\t<div class=\"pageHeader-content-title pr-u-flexGrow1\">\n\t\t\t<h1 class=\"pr-u-margin0 skeleton-item\" style=\"--components-skeleton-text-width: 80%\"></h1>\n\t\t</div>\n\t\t<div class=\"pageHeader-content-actions\">\n\t\t\t<span class=\"pr-u-h1 skeleton-item\"></span>\n\t\t</div>\n\t</div>\n\t<div class=\"pageHeader-description\">\n\t\t<p class=\"pr-u-marginBlockEnd0 skeleton-item\" style=\"--components-skeleton-text-width: 70%\"></p>\n\t\t<p class=\"pr-u-marginBlockEnd0 skeleton-item\" style=\"--components-skeleton-text-width: 40%\"></p>\n\t</div>\n</header>\n","import { NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nexport type ColAlignIndexTable = 'start' | 'center' | 'end';\n\n@Component({\n\tselector: 'lu-skeleton-index-table',\n\ttemplateUrl: './skeleton-index-table.component.html',\n\tstyleUrl: './skeleton-index-table.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [NgTemplateOutlet],\n})\nexport class SkeletonIndexTableComponent {\n\t/**\n\t * Skeleton only show in index table body\n\t */\n\treadonly tableBodyOnly = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Defines the number of cols (5 by default)\n\t */\n\treadonly cols = input<number>(5);\n\n\treadonly colsAlign = input<Record<number, ColAlignIndexTable>>({});\n\n\t/**\n\t * Defines the number of row (8 by default)\n\t */\n\treadonly rows = input<number>(8);\n\n\treadonly rowsNumber = computed<unknown[]>(() => new Array(this.rows()));\n\treadonly colsNumber = computed<unknown[]>(() => new Array(this.cols()));\n\n\treadonly getRandomPercent = (min: number = 33, max: number = 66): string => `${Math.floor(Math.random() * (max - min) + min).toString()}%`;\n}\n","@if (tableBodyOnly()) {\n\t<ng-container *ngTemplateOutlet=\"tbody\" />\n} @else {\n\t<table class=\"indexTable mod-layoutFixed skeleton is-loading\" inert=\"inert\">\n\t\t<thead class=\"indexTable-head\">\n\t\t\t<tr class=\"indexTable-head-row\">\n\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t<th class=\"indexTable-head-row-cell\" scope=\"col\">\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclass=\"skeleton-item mod-dark\"\n\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"getRandomPercent()\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t</th>\n\t\t\t\t}\n\t\t\t</tr>\n\t\t</thead>\n\t\t<ng-container *ngTemplateOutlet=\"tbody\" />\n\t</table>\n}\n<ng-template #tbody>\n\t<tbody class=\"indexTable-body\">\n\t\t@for (row of rowsNumber(); track row) {\n\t\t\t<tr class=\"indexTable-body-row\">\n\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t<td class=\"indexTable-body-row-cell\">\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclass=\"skeleton-item\"\n\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"getRandomPercent()\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t</td>\n\t\t\t\t}\n\t\t\t</tr>\n\t\t}\n\t</tbody>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, computed, input, numberAttribute } from '@angular/core';\n\n@Component({\n\tselector: 'lu-skeleton-resource-card',\n\ttemplateUrl: './skeleton-resource-card.component.html',\n\tstyleUrl: './skeleton-resource-card.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkeletonResourceCardComponent {\n\t/**\n\t * Defines the number of description lines in resource card\n\t */\n\tdescriptionLines = input(0, { transform: numberAttribute });\n\n\treadonly lines = computed(() => Array.from({ length: this.descriptionLines() }));\n\n\tgetRandomPercent = (min: number = 33, max: number = 66): string => `${Math.floor(Math.random() * (max - min) + min).toString()}%`;\n}\n","<div class=\"resourceCard skeleton is-loading\" inert=\"inert\">\n\t<div class=\"resourceCard-layout\">\n\t\t<div class=\"resourceCard-layout-header\">\n\t\t\t<h3 class=\"skeleton-item\" [style.--components-skeleton-text-width]=\"getRandomPercent()\"></h3>\n\t\t</div>\n\t\t@if (descriptionLines() > 0) {\n\t\t\t<div class=\"resourceCard-layout-content\">\n\t\t\t\t@for (line of lines(); track $index) {\n\t\t\t\t\t<span class=\"skeleton-item\" [style.--components-skeleton-text-width]=\"getRandomPercent(98, 100)\"></span>\n\t\t\t\t}\n\t\t\t</div>\n\t\t}\n\t</div>\n</div>\n","import { NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nexport type ColAlignTable = 'start' | 'center' | 'end';\n\n@Component({\n\tselector: 'lu-skeleton-table',\n\ttemplateUrl: './skeleton-table.component.html',\n\tstyleUrl: './skeleton-table.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [NgTemplateOutlet],\n})\nexport class SkeletonTableComponent {\n\t/**\n\t * Skeleton only show in table body\n\t */\n\treadonly tableBodyOnly = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Defines the number of cols (5 by default)\n\t */\n\treadonly cols = input<number>(5);\n\n\treadonly colsAlign = input<Record<number, ColAlignTable>>({});\n\n\t/**\n\t * Defines the number of row (8 by default)\n\t */\n\treadonly rows = input<number>(8);\n\n\treadonly colsNumber = computed<unknown[]>(() => new Array(this.cols()));\n\treadonly rowsNumber = computed<unknown[]>(() => new Array(this.rows()));\n\n\treadonly randomPercent: string = `${Math.floor(Math.random() * (66 - 33) + 33).toString()}%`;\n}\n","@if (tableBodyOnly()) {\n\t<ng-container *ngTemplateOutlet=\"tbody\" />\n} @else {\n\t<table class=\"table skeleton is-loading\" inert=\"inert\">\n\t\t<thead class=\"table-head\">\n\t\t\t<tr class=\"table-head-row\">\n\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t<th class=\"table-head-row-cell\">\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclass=\"skeleton-item mod-dark pr-u-bodyS\"\n\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"randomPercent\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t</th>\n\t\t\t\t}\n\t\t\t</tr>\n\t\t</thead>\n\t\t<ng-container *ngTemplateOutlet=\"tbody\" />\n\t</table>\n}\n<ng-template #tbody>\n\t<tbody class=\"table-body\">\n\t\t@for (row of rowsNumber(); track row) {\n\t\t\t<tr class=\"table-body-row\">\n\t\t\t\t@for (col of colsNumber(); track col; let i = $index) {\n\t\t\t\t\t<td class=\"table-body-row-cell\">\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclass=\"skeleton-item\"\n\t\t\t\t\t\t\t[class.mod-alignRight]=\"colsAlign()[i] === 'end'\"\n\t\t\t\t\t\t\t[class.mod-alignCenter]=\"colsAlign()[i] === 'center'\"\n\t\t\t\t\t\t\t[style.--components-skeleton-text-width]=\"randomPercent\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t</td>\n\t\t\t\t}\n\t\t\t</tr>\n\t\t}\n\t</tbody>\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -110,11 +110,11 @@ class LuToastsComponent {
110
110
  return this.#toastsService.isOnlyDismissibleManually(toast);
111
111
  }
112
112
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: LuToastsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
113
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: LuToastsComponent, isStandalone: true, selector: "lu-toasts", inputs: { bottom: { classPropertyName: "bottom", publicName: "bottom", isSignal: true, isRequired: false, transformFunction: null }, sources: { classPropertyName: "sources", publicName: "sources", isSignal: true, isRequired: false, transformFunction: null }, intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"toasts\" aria-live=\"polite\" [class.mod-bottom]=\"bottom()\">\n\t@for (toast of toasts$ | async; track toast.id) {\n\t\t<div class=\"toasts-item\" [class]=\"paletteClassByToastType[toast.type]\">\n\t\t\t@if (toast.type) {\n\t\t\t\t<span class=\"toast-item-icon lucca-icon\" aria-hidden=\"true\" [class]=\"iconClassByToastType[toast.type]\"></span>\n\t\t\t}\n\t\t\t<div class=\"toast-item-content\">\n\t\t\t\t@if (toast.title) {\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<strong>{{ toast.title }}</strong>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t\t@if (isStringPortalContent(toast.message)) {\n\t\t\t\t\t<p class=\"toast-item-content-description\" [innerHtml]=\"toast.message\"></p>\n\t\t\t\t} @else {\n\t\t\t\t\t<ng-container *luPortal=\"toast.message\" />\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"toasts-item-kill button\"\n\t\t\t\t(click)=\"removeToast(toast)\"\n\t\t\t\t(animationend)=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? removeToast(toast) : null\"\n\t\t\t\t[style.animation-duration]=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? toast.duration + 'ms' : null\"\n\t\t\t>\n\t\t\t\t<span class=\"lucca-icon icon-signClose\" aria-hidden=\"true\"></span>\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t</div>\n\t}\n</div>\n", styles: ["@layer components{.toasts{--components-toasts-color: var(--pr-t-color-text-reverse);--components-toasts-top: var(--pr-t-spacings-300);--components-toasts-right: var(--pr-t-spacings-300);--components-toasts-left: var(--pr-t-spacings-300);--components-toasts-bottom: var(--pr-t-spacings-300);--components-toasts-margin-bottom: var(--pr-t-spacings-50);--components-toasts-maxwidth: 22.5rem;--components-toasts-inset: var(--components-toasts-top) var(--components-toasts-right) auto auto;--components-toasts-footerHeight: 4.5rem;--components-toasts-background: var(--palettes-neutral-800);--components-toasts-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);max-inline-size:var(--components-toasts-maxwidth);display:flex;flex-direction:column;align-items:flex-end;position:fixed;z-index:9999;inset:var(--components-toasts-inset)}html:has(.main-content .footer.mod-sticky,.dialog.mod-drawer .dialog-inside-footer) .toasts{--components-toasts-bottom: calc(var(--components-toasts-footerHeight) + var(--pr-t-spacings-300))}.toasts-item{display:flex;gap:var(--pr-t-spacings-50);color:var(--components-toasts-color);padding:var(--pr-t-spacings-50);margin-block-end:var(--components-toasts-margin-bottom);background-color:var(--palettes-neutral-800);animation-name:toastsItem;animation-duration:var(--commons-animations-durations-standard);animation-iteration-count:1;border-radius:var(--pr-t-border-radius-structure);overflow:hidden;position:relative;transform-origin:top}@keyframes toastsItem{0%{transform:translateY(var(--pr-t-spacings-200));opacity:0}to{opacity:1}}.toasts-item:hover .toasts-item-kill,.toasts-item:focus-within .toasts-item-kill{animation-play-state:paused}.toast-item-icon{background:var(--palettes-700, var(--palettes-product-700));border-radius:var(--pr-t-border-radius-default);padding-block:var(--pr-t-spacings-100);padding-inline:var(--pr-t-spacings-50)}.toast-item-content{display:flex;flex-grow:1;flex-direction:column;gap:var(--pr-t-spacings-50);padding-block:var(--pr-t-spacings-100);padding-inline:var(--pr-t-spacings-100) 0}.toast-item-content-description{margin:0}.toasts-item-kill.button,.toasts-item-kill:not(.button){align-self:flex-start;border-radius:var(--pr-t-border-radius-default);animation-name:timer;--components-button-padding: var(--pr-t-spacings-100);--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-boxShadow: none}.toasts-item-kill.button:hover,.toasts-item-kill.button:focus-visible,.toasts-item-kill:not(.button):hover,.toasts-item-kill:not(.button):focus-visible{--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.toasts-item-kill.button:active,.toasts-item-kill:not(.button):active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.toasts-item-kill.button:disabled,.toasts-item-kill:not(.button):disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--pr-t-color-text-disabled)}.toasts-item-kill.button,.toasts-item-kill:not(.button){--components-button-color: var(--palettes-neutral-0)}.toasts-item-kill.button:hover,.toasts-item-kill.button:focus-visible,.toasts-item-kill:not(.button):hover,.toasts-item-kill:not(.button):focus-visible{--components-button-color: var(--palettes-neutral-0);--components-button-backgroundColor: var(--palettes-neutral-900)}.toasts-item-kill.button:active,.toasts-item-kill:not(.button):active{--components-button-backgroundColor: var(--palettes-neutral-700)}@keyframes timer{}}@layer mods{.toasts.mod-bottom{--components-toasts-inset: auto var(--components-toasts-right) var(--components-toasts-bottom) auto}}\n"], dependencies: [{ kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
113
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: LuToastsComponent, isStandalone: true, selector: "lu-toasts", inputs: { bottom: { classPropertyName: "bottom", publicName: "bottom", isSignal: true, isRequired: false, transformFunction: null }, sources: { classPropertyName: "sources", publicName: "sources", isSignal: true, isRequired: false, transformFunction: null }, intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"toasts\" aria-live=\"polite\" [class.mod-bottom]=\"bottom()\">\n\t@for (toast of toasts$ | async; track toast.id) {\n\t\t<div class=\"toasts-item\" [class]=\"paletteClassByToastType[toast.type]\">\n\t\t\t@if (toast.type) {\n\t\t\t\t<span class=\"toast-item-icon lucca-icon\" aria-hidden=\"true\" [class]=\"iconClassByToastType[toast.type]\"></span>\n\t\t\t}\n\t\t\t<div class=\"toast-item-content\">\n\t\t\t\t@if (toast.title) {\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<strong>{{ toast.title }}</strong>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t\t@if (isStringPortalContent(toast.message)) {\n\t\t\t\t\t<p class=\"toast-item-content-description\" [innerHtml]=\"toast.message\"></p>\n\t\t\t\t} @else {\n\t\t\t\t\t<ng-container *luPortal=\"toast.message\" />\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"toasts-item-kill button\"\n\t\t\t\t(click)=\"removeToast(toast)\"\n\t\t\t\t(animationend)=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? removeToast(toast) : null\"\n\t\t\t\t[style.animation-duration]=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? toast.duration + 'ms' : null\"\n\t\t\t>\n\t\t\t\t<span class=\"lucca-icon icon-signClose\" aria-hidden=\"true\"></span>\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t</div>\n\t}\n</div>\n", styles: ["@layer components{.toasts{--components-toasts-color: var(--pr-t-color-text-reverse);--components-toasts-top: var(--pr-t-spacings-300);--components-toasts-right: var(--pr-t-spacings-300);--components-toasts-left: var(--pr-t-spacings-300);--components-toasts-bottom: var(--pr-t-spacings-300);--components-toasts-margin-bottom: var(--pr-t-spacings-50);--components-toasts-maxwidth: min(22.5rem, calc(100dvw - (var(--components-toasts-right) * 2)));--components-toasts-inset: var(--components-toasts-top) var(--components-toasts-right) auto auto;--components-toasts-footerHeight: 4.5rem;--components-toasts-background: var(--palettes-neutral-800);--components-toasts-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);max-inline-size:var(--components-toasts-maxwidth);display:flex;flex-direction:column;align-items:flex-end;position:fixed;z-index:9999;inset:var(--components-toasts-inset)}html:has(.main-content .footer.mod-sticky,.dialog.mod-drawer .dialog-inside-footer) .toasts{--components-toasts-bottom: calc(var(--components-toasts-footerHeight) + var(--pr-t-spacings-300))}.toasts-item{display:flex;gap:var(--pr-t-spacings-50);color:var(--components-toasts-color);padding:var(--pr-t-spacings-50);margin-block-end:var(--components-toasts-margin-bottom);background-color:var(--palettes-neutral-800);animation-name:toastsItem;animation-duration:var(--commons-animations-durations-standard);animation-iteration-count:1;border-radius:var(--pr-t-border-radius-structure);overflow:hidden;position:relative;transform-origin:top}@keyframes toastsItem{0%{transform:translateY(var(--pr-t-spacings-200));opacity:0}to{opacity:1}}.toasts-item:hover .toasts-item-kill,.toasts-item:focus-within .toasts-item-kill{animation-play-state:paused}.toast-item-icon{background:var(--palettes-700, var(--palettes-product-700));border-radius:var(--pr-t-border-radius-default);padding-block:var(--pr-t-spacings-100);padding-inline:var(--pr-t-spacings-50)}.toast-item-content{display:flex;flex-grow:1;flex-direction:column;gap:var(--pr-t-spacings-50);padding-block:var(--pr-t-spacings-100);padding-inline:var(--pr-t-spacings-100) 0}.toast-item-content-description{margin:0}.toasts-item-kill.button,.toasts-item-kill:not(.button){align-self:flex-start;border-radius:var(--pr-t-border-radius-default);animation-name:timer;--components-button-padding: var(--pr-t-spacings-100);--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-boxShadow: none}.toasts-item-kill.button:hover,.toasts-item-kill.button:focus-visible,.toasts-item-kill:not(.button):hover,.toasts-item-kill:not(.button):focus-visible{--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.toasts-item-kill.button:active,.toasts-item-kill:not(.button):active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.toasts-item-kill.button:disabled,.toasts-item-kill:not(.button):disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--pr-t-color-text-disabled)}.toasts-item-kill.button,.toasts-item-kill:not(.button){--components-button-color: var(--palettes-neutral-0)}.toasts-item-kill.button:hover,.toasts-item-kill.button:focus-visible,.toasts-item-kill:not(.button):hover,.toasts-item-kill:not(.button):focus-visible{--components-button-color: var(--palettes-neutral-0);--components-button-backgroundColor: var(--palettes-neutral-900)}.toasts-item-kill.button:active,.toasts-item-kill:not(.button):active{--components-button-backgroundColor: var(--palettes-neutral-700)}@keyframes timer{}}@layer mods{.toasts.mod-bottom{--components-toasts-inset: auto var(--components-toasts-right) var(--components-toasts-bottom) auto}}\n"], dependencies: [{ kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
114
114
  }
115
115
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: LuToastsComponent, decorators: [{
116
116
  type: Component,
117
- args: [{ selector: 'lu-toasts', changeDetection: ChangeDetectionStrategy.OnPush, imports: [AsyncPipe, PortalDirective], template: "<div class=\"toasts\" aria-live=\"polite\" [class.mod-bottom]=\"bottom()\">\n\t@for (toast of toasts$ | async; track toast.id) {\n\t\t<div class=\"toasts-item\" [class]=\"paletteClassByToastType[toast.type]\">\n\t\t\t@if (toast.type) {\n\t\t\t\t<span class=\"toast-item-icon lucca-icon\" aria-hidden=\"true\" [class]=\"iconClassByToastType[toast.type]\"></span>\n\t\t\t}\n\t\t\t<div class=\"toast-item-content\">\n\t\t\t\t@if (toast.title) {\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<strong>{{ toast.title }}</strong>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t\t@if (isStringPortalContent(toast.message)) {\n\t\t\t\t\t<p class=\"toast-item-content-description\" [innerHtml]=\"toast.message\"></p>\n\t\t\t\t} @else {\n\t\t\t\t\t<ng-container *luPortal=\"toast.message\" />\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"toasts-item-kill button\"\n\t\t\t\t(click)=\"removeToast(toast)\"\n\t\t\t\t(animationend)=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? removeToast(toast) : null\"\n\t\t\t\t[style.animation-duration]=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? toast.duration + 'ms' : null\"\n\t\t\t>\n\t\t\t\t<span class=\"lucca-icon icon-signClose\" aria-hidden=\"true\"></span>\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t</div>\n\t}\n</div>\n", styles: ["@layer components{.toasts{--components-toasts-color: var(--pr-t-color-text-reverse);--components-toasts-top: var(--pr-t-spacings-300);--components-toasts-right: var(--pr-t-spacings-300);--components-toasts-left: var(--pr-t-spacings-300);--components-toasts-bottom: var(--pr-t-spacings-300);--components-toasts-margin-bottom: var(--pr-t-spacings-50);--components-toasts-maxwidth: 22.5rem;--components-toasts-inset: var(--components-toasts-top) var(--components-toasts-right) auto auto;--components-toasts-footerHeight: 4.5rem;--components-toasts-background: var(--palettes-neutral-800);--components-toasts-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);max-inline-size:var(--components-toasts-maxwidth);display:flex;flex-direction:column;align-items:flex-end;position:fixed;z-index:9999;inset:var(--components-toasts-inset)}html:has(.main-content .footer.mod-sticky,.dialog.mod-drawer .dialog-inside-footer) .toasts{--components-toasts-bottom: calc(var(--components-toasts-footerHeight) + var(--pr-t-spacings-300))}.toasts-item{display:flex;gap:var(--pr-t-spacings-50);color:var(--components-toasts-color);padding:var(--pr-t-spacings-50);margin-block-end:var(--components-toasts-margin-bottom);background-color:var(--palettes-neutral-800);animation-name:toastsItem;animation-duration:var(--commons-animations-durations-standard);animation-iteration-count:1;border-radius:var(--pr-t-border-radius-structure);overflow:hidden;position:relative;transform-origin:top}@keyframes toastsItem{0%{transform:translateY(var(--pr-t-spacings-200));opacity:0}to{opacity:1}}.toasts-item:hover .toasts-item-kill,.toasts-item:focus-within .toasts-item-kill{animation-play-state:paused}.toast-item-icon{background:var(--palettes-700, var(--palettes-product-700));border-radius:var(--pr-t-border-radius-default);padding-block:var(--pr-t-spacings-100);padding-inline:var(--pr-t-spacings-50)}.toast-item-content{display:flex;flex-grow:1;flex-direction:column;gap:var(--pr-t-spacings-50);padding-block:var(--pr-t-spacings-100);padding-inline:var(--pr-t-spacings-100) 0}.toast-item-content-description{margin:0}.toasts-item-kill.button,.toasts-item-kill:not(.button){align-self:flex-start;border-radius:var(--pr-t-border-radius-default);animation-name:timer;--components-button-padding: var(--pr-t-spacings-100);--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-boxShadow: none}.toasts-item-kill.button:hover,.toasts-item-kill.button:focus-visible,.toasts-item-kill:not(.button):hover,.toasts-item-kill:not(.button):focus-visible{--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.toasts-item-kill.button:active,.toasts-item-kill:not(.button):active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.toasts-item-kill.button:disabled,.toasts-item-kill:not(.button):disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--pr-t-color-text-disabled)}.toasts-item-kill.button,.toasts-item-kill:not(.button){--components-button-color: var(--palettes-neutral-0)}.toasts-item-kill.button:hover,.toasts-item-kill.button:focus-visible,.toasts-item-kill:not(.button):hover,.toasts-item-kill:not(.button):focus-visible{--components-button-color: var(--palettes-neutral-0);--components-button-backgroundColor: var(--palettes-neutral-900)}.toasts-item-kill.button:active,.toasts-item-kill:not(.button):active{--components-button-backgroundColor: var(--palettes-neutral-700)}@keyframes timer{}}@layer mods{.toasts.mod-bottom{--components-toasts-inset: auto var(--components-toasts-right) var(--components-toasts-bottom) auto}}\n"] }]
117
+ args: [{ selector: 'lu-toasts', changeDetection: ChangeDetectionStrategy.OnPush, imports: [AsyncPipe, PortalDirective], template: "<div class=\"toasts\" aria-live=\"polite\" [class.mod-bottom]=\"bottom()\">\n\t@for (toast of toasts$ | async; track toast.id) {\n\t\t<div class=\"toasts-item\" [class]=\"paletteClassByToastType[toast.type]\">\n\t\t\t@if (toast.type) {\n\t\t\t\t<span class=\"toast-item-icon lucca-icon\" aria-hidden=\"true\" [class]=\"iconClassByToastType[toast.type]\"></span>\n\t\t\t}\n\t\t\t<div class=\"toast-item-content\">\n\t\t\t\t@if (toast.title) {\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<strong>{{ toast.title }}</strong>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t\t@if (isStringPortalContent(toast.message)) {\n\t\t\t\t\t<p class=\"toast-item-content-description\" [innerHtml]=\"toast.message\"></p>\n\t\t\t\t} @else {\n\t\t\t\t\t<ng-container *luPortal=\"toast.message\" />\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"toasts-item-kill button\"\n\t\t\t\t(click)=\"removeToast(toast)\"\n\t\t\t\t(animationend)=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? removeToast(toast) : null\"\n\t\t\t\t[style.animation-duration]=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? toast.duration + 'ms' : null\"\n\t\t\t>\n\t\t\t\t<span class=\"lucca-icon icon-signClose\" aria-hidden=\"true\"></span>\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t</div>\n\t}\n</div>\n", styles: ["@layer components{.toasts{--components-toasts-color: var(--pr-t-color-text-reverse);--components-toasts-top: var(--pr-t-spacings-300);--components-toasts-right: var(--pr-t-spacings-300);--components-toasts-left: var(--pr-t-spacings-300);--components-toasts-bottom: var(--pr-t-spacings-300);--components-toasts-margin-bottom: var(--pr-t-spacings-50);--components-toasts-maxwidth: min(22.5rem, calc(100dvw - (var(--components-toasts-right) * 2)));--components-toasts-inset: var(--components-toasts-top) var(--components-toasts-right) auto auto;--components-toasts-footerHeight: 4.5rem;--components-toasts-background: var(--palettes-neutral-800);--components-toasts-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);max-inline-size:var(--components-toasts-maxwidth);display:flex;flex-direction:column;align-items:flex-end;position:fixed;z-index:9999;inset:var(--components-toasts-inset)}html:has(.main-content .footer.mod-sticky,.dialog.mod-drawer .dialog-inside-footer) .toasts{--components-toasts-bottom: calc(var(--components-toasts-footerHeight) + var(--pr-t-spacings-300))}.toasts-item{display:flex;gap:var(--pr-t-spacings-50);color:var(--components-toasts-color);padding:var(--pr-t-spacings-50);margin-block-end:var(--components-toasts-margin-bottom);background-color:var(--palettes-neutral-800);animation-name:toastsItem;animation-duration:var(--commons-animations-durations-standard);animation-iteration-count:1;border-radius:var(--pr-t-border-radius-structure);overflow:hidden;position:relative;transform-origin:top}@keyframes toastsItem{0%{transform:translateY(var(--pr-t-spacings-200));opacity:0}to{opacity:1}}.toasts-item:hover .toasts-item-kill,.toasts-item:focus-within .toasts-item-kill{animation-play-state:paused}.toast-item-icon{background:var(--palettes-700, var(--palettes-product-700));border-radius:var(--pr-t-border-radius-default);padding-block:var(--pr-t-spacings-100);padding-inline:var(--pr-t-spacings-50)}.toast-item-content{display:flex;flex-grow:1;flex-direction:column;gap:var(--pr-t-spacings-50);padding-block:var(--pr-t-spacings-100);padding-inline:var(--pr-t-spacings-100) 0}.toast-item-content-description{margin:0}.toasts-item-kill.button,.toasts-item-kill:not(.button){align-self:flex-start;border-radius:var(--pr-t-border-radius-default);animation-name:timer;--components-button-padding: var(--pr-t-spacings-100);--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-boxShadow: none}.toasts-item-kill.button:hover,.toasts-item-kill.button:focus-visible,.toasts-item-kill:not(.button):hover,.toasts-item-kill:not(.button):focus-visible{--components-button-color: var(--palettes-700, var(--pr-t-color-text-subtle));--components-button-backgroundColor: var(--palettes-50, var(--palettes-neutral-50))}.toasts-item-kill.button:active,.toasts-item-kill:not(.button):active{--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.toasts-item-kill.button:disabled,.toasts-item-kill:not(.button):disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--pr-t-color-text-disabled)}.toasts-item-kill.button,.toasts-item-kill:not(.button){--components-button-color: var(--palettes-neutral-0)}.toasts-item-kill.button:hover,.toasts-item-kill.button:focus-visible,.toasts-item-kill:not(.button):hover,.toasts-item-kill:not(.button):focus-visible{--components-button-color: var(--palettes-neutral-0);--components-button-backgroundColor: var(--palettes-neutral-900)}.toasts-item-kill.button:active,.toasts-item-kill:not(.button):active{--components-button-backgroundColor: var(--palettes-neutral-700)}@keyframes timer{}}@layer mods{.toasts.mod-bottom{--components-toasts-inset: auto var(--components-toasts-right) var(--components-toasts-bottom) auto}}\n"] }]
118
118
  }], ctorParameters: () => [], propDecorators: { bottom: [{ type: i0.Input, args: [{ isSignal: true, alias: "bottom", required: false }] }], sources: [{ type: i0.Input, args: [{ isSignal: true, alias: "sources", required: false }] }], intl: [{ type: i0.Input, args: [{ isSignal: true, alias: "intl", required: false }] }] } });
119
119
 
120
120
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-toast.mjs","sources":["../../../packages/ng/toast/toasts.model.ts","../../../packages/ng/toast/toasts.service.ts","../../../packages/ng/toast/translations.ts","../../../packages/ng/toast/toasts.translate.ts","../../../packages/ng/toast/toasts.component.ts","../../../packages/ng/toast/toasts.component.html","../../../packages/ng/toast/toasts.module.ts","../../../packages/ng/toast/public-api.ts","../../../packages/ng/toast/lucca-front-ng-toast.ts"],"sourcesContent":["import { PortalContent } from '@lucca-front/ng/core';\n\nexport type LuToastType = 'Info' | 'Error' | 'Success' | 'Warning';\n\nexport const defaultToastDuration = 5000;\n\nexport interface LuToastInput {\n\t/**\n\t * InnerHTML supported.\n\t */\n\tmessage: PortalContent;\n\t/**\n\t * Bold title.\n\t * InnerHTML not supported.\n\t */\n\ttitle?: string;\n\ttype?: LuToastType;\n\t/**\n\t * Auto kill default duration is 5000ms.\n\t * Null means manual dismiss only.\n\t */\n\tduration?: number | null;\n}\n\nexport interface LuToast extends LuToastInput {\n\tid: string;\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { defaultToastDuration, LuToast, LuToastInput } from './toasts.model';\n\n@Injectable({ providedIn: 'root' })\nexport class LuToastsService {\n\tpublic toasts$ = new BehaviorSubject<LuToast[]>([]);\n\n\tpublic addToast(toastInput: LuToastInput): LuToast {\n\t\tconst toast = this.getToast(toastInput);\n\n\t\tthis.toasts$.next([...this.toasts$.value, toast]);\n\n\t\treturn toast;\n\t}\n\n\tpublic removeToast(toast: LuToast): void {\n\t\tconst updatedToasts = this.toasts$.value.filter(({ id }) => id !== toast.id);\n\t\tthis.toasts$.next(updatedToasts);\n\t}\n\n\tpublic isOnlyDismissibleManually({ duration }: LuToastInput): boolean {\n\t\treturn duration === null;\n\t}\n\n\tprivate getToast(toastInput: LuToastInput): LuToast {\n\t\tconst id = this.generateId();\n\t\tconst duration = this.isOnlyDismissibleManually(toastInput) ? toastInput.duration : (toastInput.duration ?? defaultToastDuration);\n\n\t\treturn { ...toastInput, id, duration };\n\t}\n\n\tprivate generateId(): string {\n\t\tconst randomString = Math.random().toString(36).substring(2, 9);\n\t\treturn `_${randomString}`;\n\t}\n}\n","export const Translations = {\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\ten: {\n\t\tclose: 'Close',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_TOAST_TRANSLATIONS = new InjectionToken('LuToastTranslations', {\n\tfactory: () => luToastTranslations,\n});\n\nexport interface ILuToastLabel {\n\tclose: string;\n}\n\nexport const luToastTranslations: LuTranslation<ILuToastLabel> = Translations;\n","import { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, input } from '@angular/core';\nimport { intlInputOptions, isNotNil, PortalContent, PortalDirective, ɵeffectWithDeps } from '@lucca-front/ng/core';\nimport { merge, Observable } from 'rxjs';\nimport { LuToast, LuToastInput, LuToastType } from './toasts.model';\nimport { LuToastsService } from './toasts.service';\nimport { LU_TOAST_TRANSLATIONS } from './toasts.translate';\n\n@Component({\n\tselector: 'lu-toasts',\n\ttemplateUrl: './toasts.component.html',\n\tstyleUrl: './toasts.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [AsyncPipe, PortalDirective],\n})\nexport class LuToastsComponent {\n\treadonly #toastsService = inject(LuToastsService);\n\n\treadonly bottom = input(false);\n\treadonly sources = input<Array<Observable<LuToastInput>>>();\n\n\tconstructor() {\n\t\tɵeffectWithDeps([this.sources], (sources, onCleanup) => {\n\t\t\tif (isNotNil(sources)) {\n\t\t\t\tconst sub = merge(...sources).subscribe((toast) => this.#toastsService.addToast(toast));\n\n\t\t\t\tonCleanup(() => {\n\t\t\t\t\tsub.unsubscribe();\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\n\treadonly toasts$ = this.#toastsService.toasts$;\n\n\treadonly intl = input(...intlInputOptions(LU_TOAST_TRANSLATIONS));\n\n\treadonly iconClassByToastType: Record<LuToastType, string> = {\n\t\tInfo: 'icon-signInfo',\n\t\tSuccess: 'icon-signSuccess',\n\t\tError: 'icon-signError',\n\t\tWarning: 'icon-signWarning',\n\t};\n\n\treadonly paletteClassByToastType: Record<LuToastType, string> = {\n\t\tInfo: '',\n\t\tSuccess: 'palette-success',\n\t\tError: 'palette-error',\n\t\tWarning: 'palette-warning',\n\t};\n\n\tisStringPortalContent(message: PortalContent): message is string {\n\t\treturn typeof message === 'string';\n\t}\n\n\tremoveToast(toast: LuToast): void {\n\t\tthis.#toastsService.removeToast(toast);\n\t}\n\n\tisOnlyDismissibleManually(toast: LuToast): boolean {\n\t\treturn this.#toastsService.isOnlyDismissibleManually(toast);\n\t}\n}\n","<div class=\"toasts\" aria-live=\"polite\" [class.mod-bottom]=\"bottom()\">\n\t@for (toast of toasts$ | async; track toast.id) {\n\t\t<div class=\"toasts-item\" [class]=\"paletteClassByToastType[toast.type]\">\n\t\t\t@if (toast.type) {\n\t\t\t\t<span class=\"toast-item-icon lucca-icon\" aria-hidden=\"true\" [class]=\"iconClassByToastType[toast.type]\"></span>\n\t\t\t}\n\t\t\t<div class=\"toast-item-content\">\n\t\t\t\t@if (toast.title) {\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<strong>{{ toast.title }}</strong>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t\t@if (isStringPortalContent(toast.message)) {\n\t\t\t\t\t<p class=\"toast-item-content-description\" [innerHtml]=\"toast.message\"></p>\n\t\t\t\t} @else {\n\t\t\t\t\t<ng-container *luPortal=\"toast.message\" />\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"toasts-item-kill button\"\n\t\t\t\t(click)=\"removeToast(toast)\"\n\t\t\t\t(animationend)=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? removeToast(toast) : null\"\n\t\t\t\t[style.animation-duration]=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? toast.duration + 'ms' : null\"\n\t\t\t>\n\t\t\t\t<span class=\"lucca-icon icon-signClose\" aria-hidden=\"true\"></span>\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t</div>\n\t}\n</div>\n","import { NgModule } from '@angular/core';\nimport { LuToastsComponent } from './toasts.component';\n\n/**\n * @deprecated use `LuToastsComponent` instead\n */\n@NgModule({\n\timports: [LuToastsComponent],\n\texports: [LuToastsComponent],\n})\nexport class LuToastsModule {}\n","/*\n * Public API Surface of toast\n */\n\nexport * from './toasts.component';\nexport * from './toasts.model';\nexport * from './toasts.module';\nexport * from './toasts.service';\nexport * from './toasts.translate';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵeffectWithDeps"],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-toast.mjs","sources":["../../../packages/ng/toast/toasts.model.ts","../../../packages/ng/toast/toasts.service.ts","../../../packages/ng/toast/translations.ts","../../../packages/ng/toast/toasts.translate.ts","../../../packages/ng/toast/toasts.component.ts","../../../packages/ng/toast/toasts.component.html","../../../packages/ng/toast/toasts.module.ts","../../../packages/ng/toast/public-api.ts","../../../packages/ng/toast/lucca-front-ng-toast.ts"],"sourcesContent":["import { PortalContent } from '@lucca-front/ng/core';\n\nexport type LuToastType = 'Info' | 'Error' | 'Success' | 'Warning';\n\nexport const defaultToastDuration = 5000;\n\nexport interface LuToastInput {\n\t/**\n\t * InnerHTML supported.\n\t */\n\tmessage: PortalContent;\n\t/**\n\t * Bold title.\n\t * InnerHTML not supported.\n\t */\n\ttitle?: string;\n\ttype?: LuToastType;\n\t/**\n\t * Auto kill default duration is 5000ms.\n\t * Null means manual dismiss only.\n\t */\n\tduration?: number | null;\n}\n\nexport interface LuToast extends LuToastInput {\n\tid: string;\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { defaultToastDuration, LuToast, LuToastInput } from './toasts.model';\n\n@Injectable({ providedIn: 'root' })\nexport class LuToastsService {\n\tpublic toasts$ = new BehaviorSubject<LuToast[]>([]);\n\n\tpublic addToast(toastInput: LuToastInput): LuToast {\n\t\tconst toast = this.getToast(toastInput);\n\n\t\tthis.toasts$.next([...this.toasts$.value, toast]);\n\n\t\treturn toast;\n\t}\n\n\tpublic removeToast(toast: LuToast): void {\n\t\tconst updatedToasts = this.toasts$.value.filter(({ id }) => id !== toast.id);\n\t\tthis.toasts$.next(updatedToasts);\n\t}\n\n\tpublic isOnlyDismissibleManually({ duration }: LuToastInput): boolean {\n\t\treturn duration === null;\n\t}\n\n\tprivate getToast(toastInput: LuToastInput): LuToast {\n\t\tconst id = this.generateId();\n\t\tconst duration = this.isOnlyDismissibleManually(toastInput) ? toastInput.duration : (toastInput.duration ?? defaultToastDuration);\n\n\t\treturn { ...toastInput, id, duration };\n\t}\n\n\tprivate generateId(): string {\n\t\tconst randomString = Math.random().toString(36).substring(2, 9);\n\t\treturn `_${randomString}`;\n\t}\n}\n","export const Translations = {\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\ten: {\n\t\tclose: 'Close',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_TOAST_TRANSLATIONS = new InjectionToken('LuToastTranslations', {\n\tfactory: () => luToastTranslations,\n});\n\nexport interface ILuToastLabel {\n\tclose: string;\n}\n\nexport const luToastTranslations: LuTranslation<ILuToastLabel> = Translations;\n","import { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, input } from '@angular/core';\nimport { intlInputOptions, isNotNil, PortalContent, PortalDirective, ɵeffectWithDeps } from '@lucca-front/ng/core';\nimport { merge, Observable } from 'rxjs';\nimport { LuToast, LuToastInput, LuToastType } from './toasts.model';\nimport { LuToastsService } from './toasts.service';\nimport { LU_TOAST_TRANSLATIONS } from './toasts.translate';\n\n@Component({\n\tselector: 'lu-toasts',\n\ttemplateUrl: './toasts.component.html',\n\tstyleUrl: './toasts.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [AsyncPipe, PortalDirective],\n})\nexport class LuToastsComponent {\n\treadonly #toastsService = inject(LuToastsService);\n\n\treadonly bottom = input(false);\n\treadonly sources = input<Array<Observable<LuToastInput>>>();\n\n\tconstructor() {\n\t\tɵeffectWithDeps([this.sources], (sources, onCleanup) => {\n\t\t\tif (isNotNil(sources)) {\n\t\t\t\tconst sub = merge(...sources).subscribe((toast) => this.#toastsService.addToast(toast));\n\n\t\t\t\tonCleanup(() => {\n\t\t\t\t\tsub.unsubscribe();\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\n\treadonly toasts$ = this.#toastsService.toasts$;\n\n\treadonly intl = input(...intlInputOptions(LU_TOAST_TRANSLATIONS));\n\n\treadonly iconClassByToastType: Record<LuToastType, string> = {\n\t\tInfo: 'icon-signInfo',\n\t\tSuccess: 'icon-signSuccess',\n\t\tError: 'icon-signError',\n\t\tWarning: 'icon-signWarning',\n\t};\n\n\treadonly paletteClassByToastType: Record<LuToastType, string> = {\n\t\tInfo: '',\n\t\tSuccess: 'palette-success',\n\t\tError: 'palette-error',\n\t\tWarning: 'palette-warning',\n\t};\n\n\tisStringPortalContent(message: PortalContent): message is string {\n\t\treturn typeof message === 'string';\n\t}\n\n\tremoveToast(toast: LuToast): void {\n\t\tthis.#toastsService.removeToast(toast);\n\t}\n\n\tisOnlyDismissibleManually(toast: LuToast): boolean {\n\t\treturn this.#toastsService.isOnlyDismissibleManually(toast);\n\t}\n}\n","<div class=\"toasts\" aria-live=\"polite\" [class.mod-bottom]=\"bottom()\">\n\t@for (toast of toasts$ | async; track toast.id) {\n\t\t<div class=\"toasts-item\" [class]=\"paletteClassByToastType[toast.type]\">\n\t\t\t@if (toast.type) {\n\t\t\t\t<span class=\"toast-item-icon lucca-icon\" aria-hidden=\"true\" [class]=\"iconClassByToastType[toast.type]\"></span>\n\t\t\t}\n\t\t\t<div class=\"toast-item-content\">\n\t\t\t\t@if (toast.title) {\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<strong>{{ toast.title }}</strong>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t\t@if (isStringPortalContent(toast.message)) {\n\t\t\t\t\t<p class=\"toast-item-content-description\" [innerHtml]=\"toast.message\"></p>\n\t\t\t\t} @else {\n\t\t\t\t\t<ng-container *luPortal=\"toast.message\" />\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclass=\"toasts-item-kill button\"\n\t\t\t\t(click)=\"removeToast(toast)\"\n\t\t\t\t(animationend)=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? removeToast(toast) : null\"\n\t\t\t\t[style.animation-duration]=\"!isOnlyDismissibleManually(toast) && toast.duration > 0 ? toast.duration + 'ms' : null\"\n\t\t\t>\n\t\t\t\t<span class=\"lucca-icon icon-signClose\" aria-hidden=\"true\"></span>\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t</div>\n\t}\n</div>\n","import { NgModule } from '@angular/core';\nimport { LuToastsComponent } from './toasts.component';\n\n/**\n * @deprecated use `LuToastsComponent` instead\n */\n@NgModule({\n\timports: [LuToastsComponent],\n\texports: [LuToastsComponent],\n})\nexport class LuToastsModule {}\n","/*\n * Public API Surface of toast\n */\n\nexport * from './toasts.component';\nexport * from './toasts.model';\nexport * from './toasts.module';\nexport * from './toasts.service';\nexport * from './toasts.translate';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵeffectWithDeps"],"mappings":"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"}