@lucca-front/ng 19.3.3-rc.3 → 19.3.3-rc.4

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.
@@ -1,52 +1,39 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, input, booleanAttribute, computed, Component, ViewEncapsulation, ViewChild, HostBinding, Input } from '@angular/core';
2
+ import { inject, input, booleanAttribute, Component, ViewEncapsulation, ViewChild } from '@angular/core';
3
3
  import { LuClass } from '@lucca-front/ng/core';
4
4
 
5
5
  class DividerComponent {
6
6
  constructor() {
7
7
  this.#luClass = inject(LuClass);
8
- this.divider = true;
8
+ this.separatorRole = input(false, { transform: booleanAttribute });
9
+ this.vertical = input(false, { transform: booleanAttribute });
10
+ this.size = input(null);
11
+ // deprecated
9
12
  this.withRole = input(false, { transform: booleanAttribute });
10
- this.role = computed(() => {
11
- return this.withRole() ? 'separator' : null;
12
- });
13
13
  }
14
14
  #luClass;
15
- get attrRole() {
16
- return this.role();
17
- }
18
15
  ngOnChanges() {
19
16
  this.updateClasses();
20
17
  }
21
18
  updateClasses() {
22
19
  const ngClassConfig = {
23
- [`mod-${this.size}`]: !!this.size,
20
+ [`mod-${this.size()}`]: !!this.size(),
24
21
  };
25
22
  this.#luClass.setState(ngClassConfig);
26
23
  }
27
24
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: DividerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.3", type: DividerComponent, isStandalone: true, selector: "lu-divider", inputs: { withRole: { classPropertyName: "withRole", publicName: "withRole", isSignal: true, isRequired: false, transformFunction: null }, vertical: { classPropertyName: "vertical", publicName: "vertical", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null } }, host: { properties: { "class.divider": "this.divider", "attr.role": "this.attrRole", "class.mod-vertical": "this.vertical" } }, providers: [LuClass], viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }], usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".divider{--components-divider-fontSize: var(--sizes-M-fontSize);--components-divider-lineHeight: var(--sizes-M-lineHeight);--components-divider-marginBlock: var(--pr-t-spacings-50);--components-divider-marginInline: 0;--components-divider-minSize: var(--pr-t-spacings-150);--components-divider-direction: row;--components-divider-iconBottom: 0;--components-divider-justify: normal;--components-divider-alignSelf: \"\";border:0;display:block;margin-block:var(--components-divider-marginBlock);margin-inline:var(--components-divider-marginInline);align-self:var(--components-divider-alignSelf)}.divider:where(:empty){--components-divider-marginInline: 0;block-size:auto}.divider:where(:empty):not(.mod-vertical){border-block-start:var(--commons-divider-border)}.divider:not(:empty){display:flex;flex-direction:var(--components-divider-direction);align-items:center;text-wrap:balance;text-align:center;font-size:var(--components-divider-fontSize);line-height:var(--components-divider-lineHeight);color:var(--palettes-neutral-600);gap:var(--pr-t-spacings-100);justify-content:var(--components-divider-justify)}.divider:not(:empty):before,.divider:not(:empty):after{flex-grow:1;content:\"\"}.divider:not(:empty) .lucca-icon{color:var(--palettes-neutral-600);position:relative;inset-block-end:var(--components-divider-iconBottom)}.divider:not(:empty):not(.mod-vertical):before,.divider:not(:empty):not(.mod-vertical):after{border-block-start:var(--commons-divider-border);min-inline-size:var(--components-divider-minSize)}.divider .button{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-neutral-400))}.divider .button:hover{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.divider .button:active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.divider .button:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.divider .button:disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.divider.mod-S{--components-divider-fontSize: var(--sizes-S-fontSize);--components-divider-lineHeight: var(--sizes-S-lineHeight)}.divider.mod-S .button{--icon-size: 1.25rem;--components-button-font-size: var(--sizes-S-fontSize);--components-button-line-height: var(--sizes-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-button-gap: var(--pr-t-spacings-75)}.divider.mod-S .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.divider.mod-S .lucca-icon{--icon-size: 1.25rem}.divider.mod-vertical{--components-divider-alignSelf: stretch}.divider.mod-vertical:where(:empty){border-inline-start:var(--commons-divider-border)}.divider.mod-vertical:not(:empty){--components-divider-direction: column;--components-divider-iconBottom: var(--pr-t-spacings-25);--components-divider-justify: center}.divider.mod-vertical:not(:empty):before,.divider.mod-vertical:not(:empty):after{border-inline-start:var(--commons-divider-border);min-block-size:var(--components-divider-minSize)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.3", type: DividerComponent, isStandalone: true, selector: "lu-divider", inputs: { separatorRole: { classPropertyName: "separatorRole", publicName: "separatorRole", isSignal: true, isRequired: false, transformFunction: null }, vertical: { classPropertyName: "vertical", publicName: "vertical", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, withRole: { classPropertyName: "withRole", publicName: "withRole", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "role": "separatorRole() || withRole() ? \"separator\" : null", "class.mod-vertical": "vertical()" }, classAttribute: "divider" }, providers: [LuClass], viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }], usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".divider{--components-divider-fontSize: var(--sizes-M-fontSize);--components-divider-lineHeight: var(--sizes-M-lineHeight);--components-divider-marginBlock: var(--pr-t-spacings-50);--components-divider-marginInline: 0;--components-divider-minSize: var(--pr-t-spacings-150);--components-divider-direction: row;--components-divider-iconBottom: 0;--components-divider-justify: normal;--components-divider-alignSelf: \"\";border:0;display:block;margin-block:var(--components-divider-marginBlock);margin-inline:var(--components-divider-marginInline);align-self:var(--components-divider-alignSelf)}.divider:where(:empty){--components-divider-marginInline: 0;block-size:auto}.divider:where(:empty):not(.mod-vertical){border-block-start:var(--commons-divider-border)}.divider:not(:empty){display:flex;flex-direction:var(--components-divider-direction);align-items:center;text-wrap:balance;text-align:center;font-size:var(--components-divider-fontSize);line-height:var(--components-divider-lineHeight);color:var(--palettes-neutral-600);gap:var(--pr-t-spacings-100);justify-content:var(--components-divider-justify)}.divider:not(:empty):before,.divider:not(:empty):after{flex-grow:1;content:\"\"}.divider:not(:empty) .lucca-icon{color:var(--palettes-neutral-600);position:relative;inset-block-end:var(--components-divider-iconBottom)}.divider:not(:empty):not(.mod-vertical):before,.divider:not(:empty):not(.mod-vertical):after{border-block-start:var(--commons-divider-border);min-inline-size:var(--components-divider-minSize)}.divider .button{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-neutral-400))}.divider .button:hover{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.divider .button:active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.divider .button:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.divider .button:disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.divider.mod-S{--components-divider-fontSize: var(--sizes-S-fontSize);--components-divider-lineHeight: var(--sizes-S-lineHeight)}.divider.mod-S .button{--icon-size: 1.25rem;--components-button-font-size: var(--sizes-S-fontSize);--components-button-line-height: var(--sizes-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-button-gap: var(--pr-t-spacings-75)}.divider.mod-S .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.divider.mod-S .lucca-icon{--icon-size: 1.25rem}.divider.mod-vertical{--components-divider-alignSelf: stretch}.divider.mod-vertical:where(:empty){border-inline-start:var(--commons-divider-border)}.divider.mod-vertical:not(:empty){--components-divider-direction: column;--components-divider-iconBottom: var(--pr-t-spacings-25);--components-divider-justify: center}.divider.mod-vertical:not(:empty):before,.divider.mod-vertical:not(:empty):after{border-inline-start:var(--commons-divider-border);min-block-size:var(--components-divider-minSize)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
29
26
  }
30
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: DividerComponent, decorators: [{
31
28
  type: Component,
32
- args: [{ selector: 'lu-divider', standalone: true, providers: [LuClass], template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, styles: [".divider{--components-divider-fontSize: var(--sizes-M-fontSize);--components-divider-lineHeight: var(--sizes-M-lineHeight);--components-divider-marginBlock: var(--pr-t-spacings-50);--components-divider-marginInline: 0;--components-divider-minSize: var(--pr-t-spacings-150);--components-divider-direction: row;--components-divider-iconBottom: 0;--components-divider-justify: normal;--components-divider-alignSelf: \"\";border:0;display:block;margin-block:var(--components-divider-marginBlock);margin-inline:var(--components-divider-marginInline);align-self:var(--components-divider-alignSelf)}.divider:where(:empty){--components-divider-marginInline: 0;block-size:auto}.divider:where(:empty):not(.mod-vertical){border-block-start:var(--commons-divider-border)}.divider:not(:empty){display:flex;flex-direction:var(--components-divider-direction);align-items:center;text-wrap:balance;text-align:center;font-size:var(--components-divider-fontSize);line-height:var(--components-divider-lineHeight);color:var(--palettes-neutral-600);gap:var(--pr-t-spacings-100);justify-content:var(--components-divider-justify)}.divider:not(:empty):before,.divider:not(:empty):after{flex-grow:1;content:\"\"}.divider:not(:empty) .lucca-icon{color:var(--palettes-neutral-600);position:relative;inset-block-end:var(--components-divider-iconBottom)}.divider:not(:empty):not(.mod-vertical):before,.divider:not(:empty):not(.mod-vertical):after{border-block-start:var(--commons-divider-border);min-inline-size:var(--components-divider-minSize)}.divider .button{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-neutral-400))}.divider .button:hover{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.divider .button:active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.divider .button:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.divider .button:disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.divider.mod-S{--components-divider-fontSize: var(--sizes-S-fontSize);--components-divider-lineHeight: var(--sizes-S-lineHeight)}.divider.mod-S .button{--icon-size: 1.25rem;--components-button-font-size: var(--sizes-S-fontSize);--components-button-line-height: var(--sizes-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-button-gap: var(--pr-t-spacings-75)}.divider.mod-S .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.divider.mod-S .lucca-icon{--icon-size: 1.25rem}.divider.mod-vertical{--components-divider-alignSelf: stretch}.divider.mod-vertical:where(:empty){border-inline-start:var(--commons-divider-border)}.divider.mod-vertical:not(:empty){--components-divider-direction: column;--components-divider-iconBottom: var(--pr-t-spacings-25);--components-divider-justify: center}.divider.mod-vertical:not(:empty):before,.divider.mod-vertical:not(:empty):after{border-inline-start:var(--commons-divider-border);min-block-size:var(--components-divider-minSize)}\n"] }]
29
+ args: [{ selector: 'lu-divider', standalone: true, providers: [LuClass], template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, host: {
30
+ class: 'divider',
31
+ '[role]': 'separatorRole() || withRole() ? "separator" : null',
32
+ '[class.mod-vertical]': 'vertical()',
33
+ }, styles: [".divider{--components-divider-fontSize: var(--sizes-M-fontSize);--components-divider-lineHeight: var(--sizes-M-lineHeight);--components-divider-marginBlock: var(--pr-t-spacings-50);--components-divider-marginInline: 0;--components-divider-minSize: var(--pr-t-spacings-150);--components-divider-direction: row;--components-divider-iconBottom: 0;--components-divider-justify: normal;--components-divider-alignSelf: \"\";border:0;display:block;margin-block:var(--components-divider-marginBlock);margin-inline:var(--components-divider-marginInline);align-self:var(--components-divider-alignSelf)}.divider:where(:empty){--components-divider-marginInline: 0;block-size:auto}.divider:where(:empty):not(.mod-vertical){border-block-start:var(--commons-divider-border)}.divider:not(:empty){display:flex;flex-direction:var(--components-divider-direction);align-items:center;text-wrap:balance;text-align:center;font-size:var(--components-divider-fontSize);line-height:var(--components-divider-lineHeight);color:var(--palettes-neutral-600);gap:var(--pr-t-spacings-100);justify-content:var(--components-divider-justify)}.divider:not(:empty):before,.divider:not(:empty):after{flex-grow:1;content:\"\"}.divider:not(:empty) .lucca-icon{color:var(--palettes-neutral-600);position:relative;inset-block-end:var(--components-divider-iconBottom)}.divider:not(:empty):not(.mod-vertical):before,.divider:not(:empty):not(.mod-vertical):after{border-block-start:var(--commons-divider-border);min-inline-size:var(--components-divider-minSize)}.divider .button{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-neutral-400))}.divider .button:hover{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.divider .button:active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.divider .button:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.divider .button:disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.divider.mod-S{--components-divider-fontSize: var(--sizes-S-fontSize);--components-divider-lineHeight: var(--sizes-S-lineHeight)}.divider.mod-S .button{--icon-size: 1.25rem;--components-button-font-size: var(--sizes-S-fontSize);--components-button-line-height: var(--sizes-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-button-gap: var(--pr-t-spacings-75)}.divider.mod-S .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.divider.mod-S .lucca-icon{--icon-size: 1.25rem}.divider.mod-vertical{--components-divider-alignSelf: stretch}.divider.mod-vertical:where(:empty){border-inline-start:var(--commons-divider-border)}.divider.mod-vertical:not(:empty){--components-divider-direction: column;--components-divider-iconBottom: var(--pr-t-spacings-25);--components-divider-justify: center}.divider.mod-vertical:not(:empty):before,.divider.mod-vertical:not(:empty):after{border-inline-start:var(--commons-divider-border);min-block-size:var(--components-divider-minSize)}\n"] }]
33
34
  }], propDecorators: { content: [{
34
35
  type: ViewChild,
35
36
  args: ['content']
36
- }], divider: [{
37
- type: HostBinding,
38
- args: ['class.divider']
39
- }], attrRole: [{
40
- type: HostBinding,
41
- args: ['attr.role']
42
- }], vertical: [{
43
- type: Input,
44
- args: [{ transform: booleanAttribute }]
45
- }, {
46
- type: HostBinding,
47
- args: ['class.mod-vertical']
48
- }], size: [{
49
- type: Input
50
37
  }] } });
51
38
 
52
39
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-divider.mjs","sources":["../../../packages/ng/divider/divider.component.ts","../../../packages/ng/divider/lucca-front-ng-divider.ts"],"sourcesContent":["import { booleanAttribute, Component, computed, ElementRef, HostBinding, inject, input, Input, OnChanges, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { LuClass } from '@lucca-front/ng/core';\n\n@Component({\n\tselector: 'lu-divider',\n\tstandalone: true,\n\tproviders: [LuClass],\n\ttemplate: '<ng-content></ng-content>',\n\tstyleUrls: ['./divider.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class DividerComponent implements OnChanges {\n\t#luClass = inject(LuClass);\n\n\t@ViewChild('content') content: ElementRef;\n\n\t@HostBinding('class.divider')\n\tdivider = true;\n\n\twithRole = input<boolean, boolean>(false, { transform: booleanAttribute });\n\n\trole = computed(() => {\n\t\treturn this.withRole() ? 'separator' : null;\n\t});\n\n\t@HostBinding('attr.role')\n\tget attrRole() {\n\t\treturn this.role();\n\t}\n\n\t@Input({ transform: booleanAttribute })\n\t@HostBinding('class.mod-vertical')\n\tvertical: false;\n\n\t@Input()\n\tsize: 'M' | 'S';\n\n\tngOnChanges(): void {\n\t\tthis.updateClasses();\n\t}\n\n\tupdateClasses(): void {\n\t\tconst ngClassConfig = {\n\t\t\t[`mod-${this.size}`]: !!this.size,\n\t\t};\n\n\t\tthis.#luClass.setState(ngClassConfig);\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAWa,gBAAgB,CAAA;AAR7B,IAAA,WAAA,GAAA;AASC,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QAK1B,IAAO,CAAA,OAAA,GAAG,IAAI;QAEd,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAmB,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAE1E,QAAA,IAAA,CAAA,IAAI,GAAG,QAAQ,CAAC,MAAK;AACpB,YAAA,OAAO,IAAI,CAAC,QAAQ,EAAE,GAAG,WAAW,GAAG,IAAI;AAC5C,SAAC,CAAC;AAyBF;AApCA,IAAA,QAAQ;AAaR,IAAA,IACI,QAAQ,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,IAAI,EAAE;;IAUnB,WAAW,GAAA;QACV,IAAI,CAAC,aAAa,EAAE;;IAGrB,aAAa,GAAA;AACZ,QAAA,MAAM,aAAa,GAAG;YACrB,CAAC,CAAA,IAAA,EAAO,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI;SACjC;AAED,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;;8GAnC1B,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,mTAmBR,gBAAgB,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,eAAA,EAAA,cAAA,EAAA,WAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,EAAA,EAAA,SAAA,EAxBzB,CAAC,OAAO,CAAC,mJACV,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,uhHAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAIzB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAR5B,SAAS;+BACC,YAAY,EAAA,UAAA,EACV,IAAI,EAAA,SAAA,EACL,CAAC,OAAO,CAAC,EAAA,QAAA,EACV,2BAA2B,EAAA,aAAA,EAEtB,iBAAiB,CAAC,IAAI,EAAA,MAAA,EAAA,CAAA,uhHAAA,CAAA,EAAA;8BAKf,OAAO,EAAA,CAAA;sBAA5B,SAAS;uBAAC,SAAS;gBAGpB,OAAO,EAAA,CAAA;sBADN,WAAW;uBAAC,eAAe;gBAUxB,QAAQ,EAAA,CAAA;sBADX,WAAW;uBAAC,WAAW;gBAOxB,QAAQ,EAAA,CAAA;sBAFP,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBACrC,WAAW;uBAAC,oBAAoB;gBAIjC,IAAI,EAAA,CAAA;sBADH;;;AClCF;;AAEG;;;;"}
1
+ {"version":3,"file":"lucca-front-ng-divider.mjs","sources":["../../../packages/ng/divider/divider.component.ts","../../../packages/ng/divider/lucca-front-ng-divider.ts"],"sourcesContent":["import { booleanAttribute, Component, ElementRef, inject, input, OnChanges, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { LuClass } from '@lucca-front/ng/core';\n\n@Component({\n\tselector: 'lu-divider',\n\tstandalone: true,\n\tproviders: [LuClass],\n\ttemplate: '<ng-content></ng-content>',\n\tstyleUrls: ['./divider.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'divider',\n\t\t'[role]': 'separatorRole() || withRole() ? \"separator\" : null',\n\t\t'[class.mod-vertical]': 'vertical()',\n\t},\n})\nexport class DividerComponent implements OnChanges {\n\t#luClass = inject(LuClass);\n\n\t@ViewChild('content') content: ElementRef;\n\n\tseparatorRole = input(false, { transform: booleanAttribute });\n\tvertical = input(false, { transform: booleanAttribute });\n\tsize = input<'M' | 'S' | null>(null);\n\n\t// deprecated\n\twithRole = input(false, { transform: booleanAttribute });\n\n\tngOnChanges(): void {\n\t\tthis.updateClasses();\n\t}\n\n\tupdateClasses(): void {\n\t\tconst ngClassConfig = {\n\t\t\t[`mod-${this.size()}`]: !!this.size(),\n\t\t};\n\n\t\tthis.#luClass.setState(ngClassConfig);\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -304,7 +304,7 @@ class FileEntryComponent {
304
304
  return this.deleteFile$.observed;
305
305
  }
306
306
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: FileEntryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
307
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: FileEntryComponent, isStandalone: true, selector: "lu-file-entry", inputs: { state: { classPropertyName: "state", publicName: "state", isSignal: true, isRequired: false, transformFunction: null }, displayFileName: { classPropertyName: "displayFileName", publicName: "displayFileName", isSignal: true, isRequired: false, transformFunction: null }, inlineMessageError: { classPropertyName: "inlineMessageError", publicName: "inlineMessageError", isSignal: true, isRequired: false, transformFunction: null }, entry: { classPropertyName: "entry", publicName: "entry", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, iconOverride: { classPropertyName: "iconOverride", publicName: "iconOverride", isSignal: true, isRequired: false, transformFunction: null }, downloadURL: { classPropertyName: "downloadURL", publicName: "downloadURL", isSignal: true, isRequired: false, transformFunction: null }, password: { classPropertyName: "password", publicName: "password", isSignal: true, isRequired: false, transformFunction: null }, media: { classPropertyName: "media", publicName: "media", isSignal: true, isRequired: false, transformFunction: null }, previewUrl: { classPropertyName: "previewUrl", publicName: "previewUrl", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { passwordChange: "passwordChange", deleteFile: "deleteFile" }, host: { classAttribute: "u-displayContents" }, ngImport: i0, template: "<dl class=\"fileEntry\" [class.mod-media]=\"media()\" [ngClass]=\"dlClasses()\">\n\t@if (!media()) {\n\t<dt class=\"fileEntry-filename\">\n\t\t<div class=\"fileEntry-filename-tooltip\" luTooltip luTooltipWhenEllipsis>{{ fileName() }}</div>\n\t</dt>\n\t@if (state() === 'error' && inlineMessageError()) {\n\t<dd class=\"fileEntry-inlineMessage\">\n\t\t<lu-inline-message withTooltip [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t</dd>\n\t} @else {\n\t<dd class=\"fileEntry-description\">\n\t\t<span class=\"fileEntry-description-format\" luTooltip luTooltipWhenEllipsis>{{ fileTypeDisplay() }}</span><span class=\"u-mask\"> \u2013 </span>\n\t\t<lu-divider vertical />\n\t\t<span class=\"fileEntry-description-size\">{{ fileSizeDisplay() }}</span>\n\t</dd>\n\t} }\n\t<dd class=\"fileEntry-status\">\n\t\t<div class=\"fileEntry-status-content\" [luTooltip]=\"tooltip()\">\n\t\t\t@if (state() === 'error' && inlineMessageError()) { @if (media()) {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<lu-inline-message class=\"fileEntry-status-content-inlineMessage\" [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t\t\t</div>\n\t\t\t} @else {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<lu-icon class=\"fileEntry-status-content-inside-icon\" icon=\"signError\" />\n\t\t\t</div>\n\t\t\t} } @else { @if (previewUrl() && state() !== 'error') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<img class=\"fileEntry-status-content-inside-img\" [src]=\"previewUrl()\" alt=\"\" loading=\"lazy\" />\n\t\t\t</div>\n\t\t\t} @if (state() === 'loading') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<div class=\"fileEntry-status-content-inside-loading loading\"></div>\n\t\t\t</div>\n\t\t\t} @if (!previewUrl() && state() !== 'loading') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<img class=\"fileEntry-status-content-inside-svg\" [attr.src]=\"iconOverride() || fileEntryIconSrc()\" alt=\"\" width=\"32\" height=\"32\" />\n\t\t\t</div>\n\t\t\t} } @if (displayFileName() && media()) {\n\t\t\t<div class=\"fileEntry-status-content-fileName\" aria-hidden=\"true\">{{ fileName() }}</div>\n\t\t\t}\n\t\t</div>\n\t</dd>\n\t@if (downloadURL() || deletable) {\n\t<dd class=\"fileEntry-toolbar\">\n\t\t<div class=\"fileToolbar\" [class.mod-disablePositioning]=\"!media()\" [class.mod-S]=\"size() === 'S'\">\n\t\t\t<ul class=\"fileToolbar-list\">\n\t\t\t\t@if (downloadURL()) {\n\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t<a\n\t\t\t\t\t\t[href]=\"downloadURL()\"\n\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\tdownload=\"download\"\n\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tluButton\n\t\t\t\t\t\t[luTooltip]=\"intl.download\"\n\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t>\n\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\ticon=\"arrowDownload\"\n\t\t\t\t\t\t\t[alt]=\"intl.downloadFile | intlParams: {fileName: fileName()}\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t\t} @if (deletable) {\n\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t<button\n\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\t[class.palette-critical]=\"state() === 'error'\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tluButton\n\t\t\t\t\t\t[luTooltip]=\"intl.delete\"\n\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t(click)=\"deleteFile$.next()\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\ticon=\"trashDelete\"\n\t\t\t\t\t\t\t[alt]=\"intl.deleteFile | intlParams: {fileName: fileName()}\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</button>\n\t\t\t\t</li>\n\t\t\t\t}\n\t\t\t</ul>\n\t\t</div>\n\t</dd>\n\t}\n</dl>\n@if (withPassword) {\n<div class=\"fileEntry_box box mod-withArrow mod-neutral\">\n\t<div class=\"box-arrow mod-neutral\"></div>\n\t<lu-form-field [label]=\"intl.password\">\n\t\t<div class=\"fileEntry_box-field\">\n\t\t\t<lu-text-input\n\t\t\t\tclass=\"fileEntry_box-field-textField\"\n\t\t\t\trequired\n\t\t\t\thasClearer\n\t\t\t\tsearchIcon=\"searchMagnifyingGlass\"\n\t\t\t\ttype=\"password\"\n\t\t\t\t[ngModel]=\"password()\"\n\t\t\t\t(ngModelChange)=\"passwordChange$.next($event)\"\n\t\t\t/>\n\t\t\t<button class=\"fileEntry_box-field-button\" luButton type=\"button\">{{ intl.confirmPassword }}</button>\n\t\t</div>\n\t</lu-form-field>\n</div>\n}\n", styles: [".fileEntry{--components-fileEntry-padding: var(--pr-t-spacings-150);--components-fileEntry-gapInline: var(--components-fileEntry-padding);--components-fileEntry-gridColumn: 1 / -1;--components-fileEntry-borderColor: var(--palettes-neutral-100);--components-fileEntry-minHeight: auto;--components-fileEntry-gridTemplateAreas: \"picture title toolbar\" \"picture description toolbar\";--components-fileEntry-status-content-inside-backgroundColor: var(--palettes-neutral-25);--components-fileEntry-status-borderRadius: var(--commons-borderRadius-L);--components-fileEntry-status-content-img-opacity: 1;--components-fileEntry-status-content-svg-width: 48px;--components-fileEntry-status-content-svg-height: var(--components-fileEntry-status-content-svg-width);--components-fileEntry-status-content-svg-margin: 0;--components-fileEntry-filename-alignSelf: end;--components-fileEntry-status-inlineSize: 48px;--components-fileEntry-status-blockSize: var(--components-fileEntry-status-inlineSize);--components-fileEntry-status-margin: 0;--components-fileEntry-description-display: flex;--components-fileEntry-display: grid;--components-fileEntry-status-content-padding: 0;--components-fileEntry-status-content-inside-insetBlockEnd: 0;border:1px solid var(--components-fileEntry-borderColor);padding:var(--components-fileEntry-padding);margin:0;border-radius:var(--commons-borderRadius-L);background-color:var(--pr-t-elevation-surface-raised);gap:0 var(--components-fileEntry-gapInline);position:relative;grid-column:var(--components-fileEntry-gridColumn);min-height:var(--components-fileEntry-minHeight);display:var(--components-fileEntry-display);align-items:center;grid-template-columns:auto 1fr auto;grid-template-areas:var(--components-fileEntry-gridTemplateAreas)}.fileEntry:has(.fileEntry-status-content-fileName) .fileToolbar{--components-fileToolbar-insetBlockEnd: calc(var(--pr-t-spacings-150) + var(--pr-t-spacings-400) + var(--pr-t-spacings-25))}.fileEntry:has(.fileEntry-filename-tooltip:focus-visible,.fileEntry-status-content:focus-visible){outline:2px solid var(--palettes-product-700);outline-offset:2px}.fileEntryDisplayWrapper{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:var(--pr-t-spacings-100)}.fileEntryDisplayWrapper:empty{display:none}.form-field:has(.fileUpload)+.fileEntryDisplayWrapper{margin-top:var(--pr-t-spacings-100)}.fileEntry-status{inline-size:var(--components-fileEntry-status-inlineSize);block-size:var(--components-fileEntry-status-blockSize);color:var(--palettes-neutral-700);flex-shrink:0;aspect-ratio:var(--components-fileEntry-status-aspectRatio);margin:var(--components-fileEntry-status-margin);grid-area:picture;display:flex;flex-direction:column}.fileEntry-status-content{display:flex;flex-direction:column;flex-grow:1;outline:none;justify-content:center;align-items:center;padding:var(--components-fileEntry-status-content-padding);position:relative}.fileEntry-status-content-fileName{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;text-align:center;padding:var(--pr-t-spacings-100);padding-block-end:var(--pr-t-spacings-25);width:100%}.fileEntry-status-content-inside-icon{color:var(--palettes-critical-700)}.fileEntry-status-content-inlineMessage.inlineMessage{flex-direction:column;align-items:center;text-align:center}.fileEntry-status-content-inlineMessage.inlineMessage .inlineMessage-statusIcon:first-child{--icon-size: 1.5rem}.fileEntry-status-content-inside{position:relative;flex-grow:1;inline-size:100%;border-radius:var(--commons-borderRadius-M);overflow:hidden;display:flex;align-items:center;justify-content:center;background-color:var(--components-fileEntry-status-content-inside-backgroundColor)}.fileEntry-status-content-inside+.fileEntry-status-content-inside{position:absolute;inset-block-start:0;inset-block-end:var(--components-fileEntry-status-content-inside-insetBlockEnd)}.fileEntry-status-content-inside-svg{inline-size:var(--components-fileEntry-status-content-svg-width);block-size:var(--components-fileEntry-status-content-svg-height);margin:var(--components-fileEntry-status-content-svg-margin)}.fileEntry-status-content-inside-img{object-fit:cover;inline-size:100%;block-size:100%;position:absolute;inset:0;opacity:var(--components-fileEntry-status-content-img-opacity)}.fileEntry-toolbar{grid-area:toolbar;margin:0}.fileEntry-filename{grid-area:title;align-self:var(--components-fileEntry-filename-alignSelf);min-width:0}.fileEntry-filename-tooltip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;outline:none}.fileEntry-description{grid-area:description;align-self:start;color:var(--palettes-neutral-600);font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);display:var(--components-fileEntry-description-display);margin:0;gap:var(--pr-t-spacings-100);min-width:0}.fileEntry-description-format{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--commons-borderRadius-M);max-width:20ch}.fileEntry-description-format:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px}.fileEntry-inlineMessage{grid-area:description;margin:0;align-self:start;min-width:0}.fileEntry-inlineMessage .inlineMessage-statusIcon{display:none}.fileEntry_box.box{margin-top:var(--pr-t-spacings-150)}.fileEntry_box-field{display:flex;flex-wrap:wrap;gap:var(--pr-t-spacings-100)}.fileEntry_box-field-textField{flex-grow:1}.fileEntry_box-field-button.button{flex-grow:1;flex-basis:0;min-width:fit-content}.fileEntry.mod-S{--components-fileEntry-padding: var(--pr-t-spacings-50);--components-fileEntry-status-inlineSize: 32px;--components-fileEntry-description-display: none;--components-fileEntry-gridTemplateAreas: \"picture title title toolbar\";--components-fileEntry-filename-alignSelf: center;--components-fileEntry-status-borderRadius: var(--commons-borderRadius-M);--components-fileEntry-gapInline: var(--pr-t-spacings-75);--components-fileEntry-status-content-svg-margin: calc(var(--pr-t-spacings-100) * -1)}.fileEntry.mod-S .fileEntry-status-content-inside-icon{--icon-size: 1.25rem}.fileEntry.mod-media{--components-fileEntry-status-borderRadius: var(--commons-borderRadius-M);--components-fileEntry-padding: var(--pr-t-spacings-75);--components-fileEntry-status-aspectRatio: auto;--components-fileEntry-status-inlineSize: 100%;--components-fileEntry-status-blockSize: calc(20.5rem + 2px) ;--components-fileEntry-description-display: none;--components-fileEntry-display: block;--components-fileEntry-gridColumn: 1 / -1;--components-fileEntry-status-content-svg-width: 72px}.fileEntry.mod-media:has(.fileEntry-status-content-fileName){--components-fileEntry-status-content-inside-insetBlockEnd: calc(var(--pr-t-spacings-400) + var(--pr-t-spacings-25))}.fileEntry.mod-media.mod-S{--components-fileEntry-minHeight: calc(5rem + 2px) ;--components-fileEntry-gridColumn: auto;--components-fileEntry-status-blockSize: auto;--components-fileEntry-status-aspectRatio: 1}.fileEntry.is-error{--components-fileEntry-borderColor: var(--palettes-critical-600);--components-fileEntry-gridTemplateAreas: \"picture title toolbar\" \"picture description toolbar\";--components-fileEntry-status-content-inside-backgroundColor: var(--palettes-critical-50);--components-fileEntry-minHeight: 3.75rem}.fileEntry.is-error.mod-S{--components-fileEntry-status-blockSize: 100%}.fileEntry.is-loading{--components-fileEntry-status-content-img-opacity: .08}.fileEntry.is-loading.mod-S .fileEntry-status-content-inside-loading.loading{--components-loading-size: calc(var(--pr-t-spacings-200) + var(--pr-t-spacings-50))}.fileToolbar{--components-fileToolbar-list-padding: var(--pr-t-spacings-50);--components-fileToolbar-display: block;--components-fileToolbar-insetBlockEnd: var(--pr-t-spacings-150);border-radius:var(--commons-borderRadius-L);position:absolute;transform:translate(-50%);inset-inline-start:50%;inset-block-end:var(--components-fileToolbar-insetBlockEnd);box-shadow:var(--pr-t-elevation-shadow-overlay);background-color:var(--pr-t-elevation-surface-raised);z-index:1;display:var(--components-fileToolbar-display)}.fileToolbar-list{margin:0;padding:0;list-style-type:none;display:flex;gap:var(--pr-t-spacings-50);padding:var(--components-fileToolbar-list-padding)}.fileToolbar-list-item-button.button{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--icon-size: 1.25rem;--components-button-font-size: var(--sizes-S-fontSize);--components-button-line-height: var(--sizes-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-button-gap: var(--pr-t-spacings-75);--components-button-padding: var(--pr-t-spacings-75) !important}.fileToolbar-list-item-button.button:hover,.fileToolbar-list-item-button.button:focus-visible{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.fileToolbar-list-item-button.button:active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.fileToolbar-list-item-button.button:disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-neutral-500)}.fileToolbar-list-item-button.button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.fileToolbar.mod-disablePositioning{--components-fileToolbar-display: contents}.fileToolbar.mod-disablePositioning.mod-S{--components-fileToolbar-list-padding: 0}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color"] }, { kind: "ngmodule", type: LuTooltipModule }, { kind: "directive", type: i1.LuTooltipTriggerDirective, selector: "[luTooltip]", inputs: ["luTooltip", "luTooltipEnterDelay", "luTooltipLeaveDelay", "luTooltipDisabled", "luTooltipOnlyForDisplay", "luTooltipPosition", "luTooltipWhenEllipsis"], exportAs: ["luTooltip"] }, { kind: "component", type: ButtonComponent, selector: "button[luButton],a[luButton]", inputs: ["size", "block", "delete", "disclosure", "palette", "state", "luButton"] }, { kind: "component", type: InlineMessageComponent, selector: "lu-inline-message", inputs: ["label", "state", "size", "withTooltip"] }, { kind: "component", type: DividerComponent, selector: "lu-divider", inputs: ["withRole", "vertical", "size"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: FormFieldComponent, selector: "lu-form-field", inputs: ["label", "hiddenLabel", "rolePresentationLabel", "inline", "statusControl", "tooltip", "width", "invalid", "inlineMessage", "errorInlineMessage", "inlineMessageState", "size", "extraDescribedBy", "layout", "counter"], outputs: ["rolePresentationLabelChange", "layoutChange"] }, { kind: "component", type: TextInputComponent, selector: "lu-text-input", inputs: ["placeholder", "autocomplete", "hasClearer", "hasSearchIcon", "valueAlignRight", "prefix", "suffix", "type", "searchIcon"], outputs: ["blur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: IntlParamsPipe, name: "intlParams" }], encapsulation: i0.ViewEncapsulation.None }); }
307
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: FileEntryComponent, isStandalone: true, selector: "lu-file-entry", inputs: { state: { classPropertyName: "state", publicName: "state", isSignal: true, isRequired: false, transformFunction: null }, displayFileName: { classPropertyName: "displayFileName", publicName: "displayFileName", isSignal: true, isRequired: false, transformFunction: null }, inlineMessageError: { classPropertyName: "inlineMessageError", publicName: "inlineMessageError", isSignal: true, isRequired: false, transformFunction: null }, entry: { classPropertyName: "entry", publicName: "entry", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, iconOverride: { classPropertyName: "iconOverride", publicName: "iconOverride", isSignal: true, isRequired: false, transformFunction: null }, downloadURL: { classPropertyName: "downloadURL", publicName: "downloadURL", isSignal: true, isRequired: false, transformFunction: null }, password: { classPropertyName: "password", publicName: "password", isSignal: true, isRequired: false, transformFunction: null }, media: { classPropertyName: "media", publicName: "media", isSignal: true, isRequired: false, transformFunction: null }, previewUrl: { classPropertyName: "previewUrl", publicName: "previewUrl", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { passwordChange: "passwordChange", deleteFile: "deleteFile" }, host: { classAttribute: "u-displayContents" }, ngImport: i0, template: "<dl class=\"fileEntry\" [class.mod-media]=\"media()\" [ngClass]=\"dlClasses()\">\n\t@if (!media()) {\n\t<dt class=\"fileEntry-filename\">\n\t\t<div class=\"fileEntry-filename-tooltip\" luTooltip luTooltipWhenEllipsis>{{ fileName() }}</div>\n\t</dt>\n\t@if (state() === 'error' && inlineMessageError()) {\n\t<dd class=\"fileEntry-inlineMessage\">\n\t\t<lu-inline-message withTooltip [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t</dd>\n\t} @else {\n\t<dd class=\"fileEntry-description\">\n\t\t<span class=\"fileEntry-description-format\" luTooltip luTooltipWhenEllipsis>{{ fileTypeDisplay() }}</span><span class=\"u-mask\"> \u2013 </span>\n\t\t<lu-divider vertical />\n\t\t<span class=\"fileEntry-description-size\">{{ fileSizeDisplay() }}</span>\n\t</dd>\n\t} }\n\t<dd class=\"fileEntry-status\">\n\t\t<div class=\"fileEntry-status-content\" [luTooltip]=\"tooltip()\">\n\t\t\t@if (state() === 'error' && inlineMessageError()) { @if (media()) {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<lu-inline-message class=\"fileEntry-status-content-inlineMessage\" [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t\t\t</div>\n\t\t\t} @else {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<lu-icon class=\"fileEntry-status-content-inside-icon\" icon=\"signError\" />\n\t\t\t</div>\n\t\t\t} } @else { @if (previewUrl() && state() !== 'error') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<img class=\"fileEntry-status-content-inside-img\" [src]=\"previewUrl()\" alt=\"\" loading=\"lazy\" />\n\t\t\t</div>\n\t\t\t} @if (state() === 'loading') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<div class=\"fileEntry-status-content-inside-loading loading\"></div>\n\t\t\t</div>\n\t\t\t} @if (!previewUrl() && state() !== 'loading') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<img class=\"fileEntry-status-content-inside-svg\" [attr.src]=\"iconOverride() || fileEntryIconSrc()\" alt=\"\" width=\"32\" height=\"32\" />\n\t\t\t</div>\n\t\t\t} } @if (displayFileName() && media()) {\n\t\t\t<div class=\"fileEntry-status-content-fileName\" aria-hidden=\"true\">{{ fileName() }}</div>\n\t\t\t}\n\t\t</div>\n\t</dd>\n\t@if (downloadURL() || deletable) {\n\t<dd class=\"fileEntry-toolbar\">\n\t\t<div class=\"fileToolbar\" [class.mod-disablePositioning]=\"!media()\" [class.mod-S]=\"size() === 'S'\">\n\t\t\t<ul class=\"fileToolbar-list\">\n\t\t\t\t@if (downloadURL()) {\n\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t<a\n\t\t\t\t\t\t[href]=\"downloadURL()\"\n\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\tdownload=\"download\"\n\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tluButton\n\t\t\t\t\t\t[luTooltip]=\"intl.download\"\n\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t>\n\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\ticon=\"arrowDownload\"\n\t\t\t\t\t\t\t[alt]=\"intl.downloadFile | intlParams: {fileName: fileName()}\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t\t} @if (deletable) {\n\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t<button\n\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\t[class.palette-critical]=\"state() === 'error'\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tluButton\n\t\t\t\t\t\t[luTooltip]=\"intl.delete\"\n\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t(click)=\"deleteFile$.next()\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\ticon=\"trashDelete\"\n\t\t\t\t\t\t\t[alt]=\"intl.deleteFile | intlParams: {fileName: fileName()}\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</button>\n\t\t\t\t</li>\n\t\t\t\t}\n\t\t\t</ul>\n\t\t</div>\n\t</dd>\n\t}\n</dl>\n@if (withPassword) {\n<div class=\"fileEntry_box box mod-withArrow mod-neutral\">\n\t<div class=\"box-arrow mod-neutral\"></div>\n\t<lu-form-field [label]=\"intl.password\">\n\t\t<div class=\"fileEntry_box-field\">\n\t\t\t<lu-text-input\n\t\t\t\tclass=\"fileEntry_box-field-textField\"\n\t\t\t\trequired\n\t\t\t\thasClearer\n\t\t\t\tsearchIcon=\"searchMagnifyingGlass\"\n\t\t\t\ttype=\"password\"\n\t\t\t\t[ngModel]=\"password()\"\n\t\t\t\t(ngModelChange)=\"passwordChange$.next($event)\"\n\t\t\t/>\n\t\t\t<button class=\"fileEntry_box-field-button\" luButton type=\"button\">{{ intl.confirmPassword }}</button>\n\t\t</div>\n\t</lu-form-field>\n</div>\n}\n", styles: [".fileEntry{--components-fileEntry-padding: var(--pr-t-spacings-150);--components-fileEntry-gapInline: var(--components-fileEntry-padding);--components-fileEntry-gridColumn: 1 / -1;--components-fileEntry-borderColor: var(--palettes-neutral-100);--components-fileEntry-minHeight: auto;--components-fileEntry-gridTemplateAreas: \"picture title toolbar\" \"picture description toolbar\";--components-fileEntry-status-content-inside-backgroundColor: var(--palettes-neutral-25);--components-fileEntry-status-borderRadius: var(--commons-borderRadius-L);--components-fileEntry-status-content-img-opacity: 1;--components-fileEntry-status-content-svg-width: 48px;--components-fileEntry-status-content-svg-height: var(--components-fileEntry-status-content-svg-width);--components-fileEntry-status-content-svg-margin: 0;--components-fileEntry-filename-alignSelf: end;--components-fileEntry-status-inlineSize: 48px;--components-fileEntry-status-blockSize: var(--components-fileEntry-status-inlineSize);--components-fileEntry-status-margin: 0;--components-fileEntry-description-display: flex;--components-fileEntry-display: grid;--components-fileEntry-status-content-padding: 0;--components-fileEntry-status-content-inside-insetBlockEnd: 0;border:1px solid var(--components-fileEntry-borderColor);padding:var(--components-fileEntry-padding);margin:0;border-radius:var(--commons-borderRadius-L);background-color:var(--pr-t-elevation-surface-raised);gap:0 var(--components-fileEntry-gapInline);position:relative;grid-column:var(--components-fileEntry-gridColumn);min-height:var(--components-fileEntry-minHeight);display:var(--components-fileEntry-display);align-items:center;grid-template-columns:auto 1fr auto;grid-template-areas:var(--components-fileEntry-gridTemplateAreas)}.fileEntry:has(.fileEntry-status-content-fileName) .fileToolbar{--components-fileToolbar-insetBlockEnd: calc(var(--pr-t-spacings-150) + var(--pr-t-spacings-400) + var(--pr-t-spacings-25))}.fileEntry:has(.fileEntry-filename-tooltip:focus-visible,.fileEntry-status-content:focus-visible){outline:2px solid var(--palettes-product-700);outline-offset:2px}.fileEntryDisplayWrapper{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:var(--pr-t-spacings-100)}.fileEntryDisplayWrapper:empty{display:none}.form-field:has(.fileUpload)+.fileEntryDisplayWrapper{margin-top:var(--pr-t-spacings-100)}.fileEntry-status{inline-size:var(--components-fileEntry-status-inlineSize);block-size:var(--components-fileEntry-status-blockSize);color:var(--palettes-neutral-700);flex-shrink:0;aspect-ratio:var(--components-fileEntry-status-aspectRatio);margin:var(--components-fileEntry-status-margin);grid-area:picture;display:flex;flex-direction:column}.fileEntry-status-content{display:flex;flex-direction:column;flex-grow:1;outline:none;justify-content:center;align-items:center;padding:var(--components-fileEntry-status-content-padding);position:relative}.fileEntry-status-content-fileName{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;text-align:center;padding:var(--pr-t-spacings-100);padding-block-end:var(--pr-t-spacings-25);width:100%}.fileEntry-status-content-inside-icon{color:var(--palettes-critical-700)}.fileEntry-status-content-inlineMessage.inlineMessage{flex-direction:column;align-items:center;text-align:center}.fileEntry-status-content-inlineMessage.inlineMessage .inlineMessage-statusIcon:first-child{--icon-size: 1.5rem}.fileEntry-status-content-inside{position:relative;flex-grow:1;inline-size:100%;border-radius:var(--commons-borderRadius-M);overflow:hidden;display:flex;align-items:center;justify-content:center;background-color:var(--components-fileEntry-status-content-inside-backgroundColor)}.fileEntry-status-content-inside+.fileEntry-status-content-inside{position:absolute;inset-block-start:0;inset-block-end:var(--components-fileEntry-status-content-inside-insetBlockEnd)}.fileEntry-status-content-inside-svg{inline-size:var(--components-fileEntry-status-content-svg-width);block-size:var(--components-fileEntry-status-content-svg-height);margin:var(--components-fileEntry-status-content-svg-margin)}.fileEntry-status-content-inside-img{object-fit:cover;inline-size:100%;block-size:100%;position:absolute;inset:0;opacity:var(--components-fileEntry-status-content-img-opacity)}.fileEntry-toolbar{grid-area:toolbar;margin:0}.fileEntry-filename{grid-area:title;align-self:var(--components-fileEntry-filename-alignSelf);min-width:0}.fileEntry-filename-tooltip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;outline:none}.fileEntry-description{grid-area:description;align-self:start;color:var(--palettes-neutral-600);font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);display:var(--components-fileEntry-description-display);margin:0;gap:var(--pr-t-spacings-100);min-width:0}.fileEntry-description-format{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--commons-borderRadius-M);max-width:20ch}.fileEntry-description-format:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px}.fileEntry-inlineMessage{grid-area:description;margin:0;align-self:start;min-width:0}.fileEntry-inlineMessage .inlineMessage-statusIcon{display:none}.fileEntry_box.box{margin-top:var(--pr-t-spacings-150)}.fileEntry_box-field{display:flex;flex-wrap:wrap;gap:var(--pr-t-spacings-100)}.fileEntry_box-field-textField{flex-grow:1}.fileEntry_box-field-button.button{flex-grow:1;flex-basis:0;min-width:fit-content}.fileEntry.mod-S{--components-fileEntry-padding: var(--pr-t-spacings-50);--components-fileEntry-status-inlineSize: 32px;--components-fileEntry-description-display: none;--components-fileEntry-gridTemplateAreas: \"picture title title toolbar\";--components-fileEntry-filename-alignSelf: center;--components-fileEntry-status-borderRadius: var(--commons-borderRadius-M);--components-fileEntry-gapInline: var(--pr-t-spacings-75);--components-fileEntry-status-content-svg-margin: calc(var(--pr-t-spacings-100) * -1)}.fileEntry.mod-S .fileEntry-status-content-inside-icon{--icon-size: 1.25rem}.fileEntry.mod-media{--components-fileEntry-status-borderRadius: var(--commons-borderRadius-M);--components-fileEntry-padding: var(--pr-t-spacings-75);--components-fileEntry-status-aspectRatio: auto;--components-fileEntry-status-inlineSize: 100%;--components-fileEntry-status-blockSize: calc(20.5rem + 2px) ;--components-fileEntry-description-display: none;--components-fileEntry-display: block;--components-fileEntry-gridColumn: 1 / -1;--components-fileEntry-status-content-svg-width: 72px}.fileEntry.mod-media:has(.fileEntry-status-content-fileName){--components-fileEntry-status-content-inside-insetBlockEnd: calc(var(--pr-t-spacings-400) + var(--pr-t-spacings-25))}.fileEntry.mod-media.mod-S{--components-fileEntry-minHeight: calc(5rem + 2px) ;--components-fileEntry-gridColumn: auto;--components-fileEntry-status-blockSize: auto;--components-fileEntry-status-aspectRatio: 1}.fileEntry.is-error{--components-fileEntry-borderColor: var(--palettes-critical-600);--components-fileEntry-gridTemplateAreas: \"picture title toolbar\" \"picture description toolbar\";--components-fileEntry-status-content-inside-backgroundColor: var(--palettes-critical-50);--components-fileEntry-minHeight: 3.75rem}.fileEntry.is-error.mod-S{--components-fileEntry-status-blockSize: 100%}.fileEntry.is-loading{--components-fileEntry-status-content-img-opacity: .08}.fileEntry.is-loading.mod-S .fileEntry-status-content-inside-loading.loading{--components-loading-size: calc(var(--pr-t-spacings-200) + var(--pr-t-spacings-50))}.fileToolbar{--components-fileToolbar-list-padding: var(--pr-t-spacings-50);--components-fileToolbar-display: block;--components-fileToolbar-insetBlockEnd: var(--pr-t-spacings-150);border-radius:var(--commons-borderRadius-L);position:absolute;transform:translate(-50%);inset-inline-start:50%;inset-block-end:var(--components-fileToolbar-insetBlockEnd);box-shadow:var(--pr-t-elevation-shadow-overlay);background-color:var(--pr-t-elevation-surface-raised);z-index:1;display:var(--components-fileToolbar-display)}.fileToolbar-list{margin:0;padding:0;list-style-type:none;display:flex;gap:var(--pr-t-spacings-50);padding:var(--components-fileToolbar-list-padding)}.fileToolbar-list-item-button.button{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--icon-size: 1.25rem;--components-button-font-size: var(--sizes-S-fontSize);--components-button-line-height: var(--sizes-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-button-gap: var(--pr-t-spacings-75);--components-button-padding: var(--pr-t-spacings-75) !important}.fileToolbar-list-item-button.button:hover,.fileToolbar-list-item-button.button:focus-visible{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.fileToolbar-list-item-button.button:active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.fileToolbar-list-item-button.button:disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-neutral-500)}.fileToolbar-list-item-button.button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.fileToolbar.mod-disablePositioning{--components-fileToolbar-display: contents}.fileToolbar.mod-disablePositioning.mod-S{--components-fileToolbar-list-padding: 0}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color"] }, { kind: "ngmodule", type: LuTooltipModule }, { kind: "directive", type: i1.LuTooltipTriggerDirective, selector: "[luTooltip]", inputs: ["luTooltip", "luTooltipEnterDelay", "luTooltipLeaveDelay", "luTooltipDisabled", "luTooltipOnlyForDisplay", "luTooltipPosition", "luTooltipWhenEllipsis"], exportAs: ["luTooltip"] }, { kind: "component", type: ButtonComponent, selector: "button[luButton],a[luButton]", inputs: ["size", "block", "delete", "disclosure", "palette", "state", "luButton"] }, { kind: "component", type: InlineMessageComponent, selector: "lu-inline-message", inputs: ["label", "state", "size", "withTooltip"] }, { kind: "component", type: DividerComponent, selector: "lu-divider", inputs: ["separatorRole", "vertical", "size", "withRole"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: FormFieldComponent, selector: "lu-form-field", inputs: ["label", "hiddenLabel", "rolePresentationLabel", "inline", "statusControl", "tooltip", "width", "invalid", "inlineMessage", "errorInlineMessage", "inlineMessageState", "size", "extraDescribedBy", "layout", "counter"], outputs: ["rolePresentationLabelChange", "layoutChange"] }, { kind: "component", type: TextInputComponent, selector: "lu-text-input", inputs: ["placeholder", "autocomplete", "hasClearer", "hasSearchIcon", "valueAlignRight", "prefix", "suffix", "type", "searchIcon"], outputs: ["blur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: IntlParamsPipe, name: "intlParams" }], encapsulation: i0.ViewEncapsulation.None }); }
308
308
  }
309
309
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: FileEntryComponent, decorators: [{
310
310
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-file-upload.mjs","sources":["../../../packages/ng/file-upload/translations.ts","../../../packages/ng/file-upload/file-upload.translate.ts","../../../packages/ng/file-upload/formatter.ts","../../../packages/ng/file-upload/base-file-upload/base-file-upload.component.ts","../../../packages/ng/file-upload/file-dropzone/file-dropzone.component.ts","../../../packages/ng/file-upload/file-dropzone/file-dropzone.component.html","../../../packages/ng/file-upload/file-entry/file-entry.component.ts","../../../packages/ng/file-upload/file-entry/file-entry.component.html","../../../packages/ng/file-upload/multi/multi-file-upload.component.ts","../../../packages/ng/file-upload/multi/multi-file-upload.component.html","../../../packages/ng/file-upload/single/single-file-upload.component.ts","../../../packages/ng/file-upload/single/single-file-upload.component.html","../../../packages/ng/file-upload/lucca-front-ng-file-upload.ts"],"sourcesContent":["export const Translations = {\n\ten: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'all',\n\t\tfile: '{{fileTypeLastPart}} file',\n\t\tdownload: 'Download',\n\t\tdownloadFile: 'Download file “{{fileName}}”',\n\t\tdelete: 'Delete',\n\t\tdeleteFile: 'Delete file “{{fileName}}”',\n\t\tpassword: 'Password',\n\t\tconfirmPassword: 'Password',\n\t},\n\tde: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'alle',\n\t\tfile: 'alle',\n\t\tdownload: 'Download',\n\t\tdownloadFile: 'Download',\n\t\tdelete: 'Löschen',\n\t\tdeleteFile: 'Löschen',\n\t\tpassword: 'Passwort',\n\t\tconfirmPassword: 'Passwort',\n\t},\n\tfr: {\n\t\tacceptedFormat: { one: 'Format accepté :', other: 'Formats acceptés :' },\n\t\tselectFile: { one: 'Sélectionner un fichier', other: 'Sélectionner des fichiers' },\n\t\tdropOrClick: { one: 'Déposez le fichier ici ou <span>cliquez pour le sélectionner</span>.', other: 'Déposez les fichiers ici ou <span>cliquez pour les sélectionner</span>.' },\n\t\tmaxWeight: { one: 'Poids maximum : {{maxSizeDisplay}}. ', other: 'Poids maximum pour un fichier : {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Le fichier déjà déposé est détaillé après.', other: 'Les fichiers déjà déposés sont détaillés après.' },\n\t\tall: 'tous',\n\t\tfile: 'Fichier {{fileTypeLastPart}}',\n\t\tdownload: 'Télécharger',\n\t\tdownloadFile: 'Télécharger le fichier « {{fileName}} »',\n\t\tdelete: 'Supprimer',\n\t\tdeleteFile: 'Supprimer le fichier « {{fileName}} »',\n\t\tpassword: 'Mot de passe',\n\t\tconfirmPassword: 'Valider le mot de passe',\n\t},\n\tit: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'tutti',\n\t\tfile: 'tutti',\n\t\tdownload: 'Scaricare',\n\t\tdownloadFile: 'Scaricare',\n\t\tdelete: 'Eliminare',\n\t\tdeleteFile: 'Eliminare',\n\t\tpassword: 'Password',\n\t\tconfirmPassword: 'Confermare la password',\n\t},\n\tnl: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'alle',\n\t\tfile: 'alle',\n\t\tdownload: 'Downloaden',\n\t\tdownloadFile: 'Downloaden',\n\t\tdelete: 'Verwijderen',\n\t\tdeleteFile: 'Verwijderen',\n\t\tpassword: 'Wachtwoord',\n\t\tconfirmPassword: 'Wachtwoord valideren',\n\t},\n\t'nl-BE': {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'alle',\n\t\tfile: 'alle',\n\t\tdownload: 'Downloaden',\n\t\tdownloadFile: 'Downloaden',\n\t\tdelete: 'Verwijderen',\n\t\tdeleteFile: 'Verwijderen',\n\t\tpassword: 'Wachtwoord',\n\t\tconfirmPassword: 'Wachtwoord valideren',\n\t},\n\tes: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'todos',\n\t\tfile: 'todos',\n\t\tdownload: 'Descargar',\n\t\tdownloadFile: 'Descargar',\n\t\tdelete: 'Eliminar',\n\t\tdeleteFile: 'Eliminar',\n\t\tpassword: 'Contraseña',\n\t\tconfirmPassword: 'Contraseña',\n\t},\n\tpt: {\n\t\tacceptedFormat: { one: 'Formato aceite :', other: 'Formatos aceites :' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'todos',\n\t\tfile: 'Ficheiro {{fileTypeLastPart}}',\n\t\tdownload: 'Descarregar',\n\t\tdownloadFile: 'Descarregar o ficheiro \" {{fileName}} ',\n\t\tdelete: 'Eliminar',\n\t\tdeleteFile: 'Eliminar o ficheiro \" {{fileName}} ',\n\t\tpassword: 'Palavra-passe',\n\t\tconfirmPassword: 'Confirmar a palavra-passe',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_FILE_UPLOAD_TRANSLATIONS = new InjectionToken('LuFileUploadTranslations', {\n\tfactory: () => luFileUploadTranslations,\n});\n\nexport interface LuFileUploadLabel {\n\tacceptedFormat: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tselectFile: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tdropOrClick: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tmaxWeight: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tfileUploadedListed: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tall: string;\n\tfile: string;\n\tdownload: string;\n\tdownloadFile: string;\n\tdelete: string;\n\tdeleteFile: string;\n\tpassword: string;\n\tconfirmPassword: string;\n}\n\nexport const luFileUploadTranslations: LuTranslation<LuFileUploadLabel> = Translations;\n","export const KILO_BYTE = 1000;\nexport const MEGA_BYTE = KILO_BYTE * 1000;\n\nexport function formatSize(locale: string, size: number): string {\n\tlet unit = 'byte';\n\tlet value = size;\n\n\tif (size >= MEGA_BYTE) {\n\t\tunit = 'megabyte';\n\t\tvalue /= MEGA_BYTE;\n\t} else if (size >= KILO_BYTE) {\n\t\tunit = 'kilobyte';\n\t\tvalue /= KILO_BYTE;\n\t}\n\n\tconst weightFormatter = Intl.NumberFormat(locale, {\n\t\tnotation: 'compact',\n\t\tstyle: 'unit',\n\t\tunit: unit,\n\t\tunitDisplay: 'narrow',\n\t});\n\n\treturn weightFormatter.format(value);\n}\n","import { booleanAttribute, computed, Directive, effect, inject, input, LOCALE_ID, output } from '@angular/core';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { FORM_FIELD_INSTANCE } from '@lucca-front/ng/form-field';\nimport { LU_FILE_UPLOAD_TRANSLATIONS } from '../file-upload.translate';\nimport { formatSize, MEGA_BYTE } from '../formatter';\n\nlet nextId = 0;\n\n@Directive()\nexport abstract class BaseFileUploadComponent {\n\tprotected locale = inject(LOCALE_ID);\n\n\tprotected idSuffix = nextId++;\n\n\tprotected droppable = false;\n\n\tintl = getIntl(LU_FILE_UPLOAD_TRANSLATIONS);\n\n\tprotected formFieldRef = inject(FORM_FIELD_INSTANCE, { optional: true });\n\n\tfilePicked = output<File>();\n\n\taccept = input<\n\t\tArray<{\n\t\t\tformat: string;\n\t\t\tname?: string;\n\t\t}>\n\t>([\n\t\t{\n\t\t\tformat: '*',\n\t\t\tname: this.intl.all,\n\t\t},\n\t]);\n\n\tacceptNames = computed(() =>\n\t\tthis.accept()\n\t\t\t.filter((e) => e.name)\n\t\t\t.map((e) => e.name),\n\t);\n\n\tacceptAttribute = computed(() => this.accept().map((e) => e.format));\n\n\tacceptAll = computed(() => {\n\t\treturn this.acceptAttribute().some((str) => str.includes('*'));\n\t});\n\n\tfileMaxSize = input<number>(80 * MEGA_BYTE);\n\n\tmaxSizeDisplay = computed(() => formatSize(this.locale, this.fileMaxSize()));\n\n\tsize = input<'S' | null>(null);\n\n\tpassword = input<boolean, boolean>(false, { transform: booleanAttribute });\n\n\tillustration = input<'picture' | 'paper'>('paper');\n\n\tillustrationUrl = computed(() => {\n\t\tif (this.illustration() === 'picture') {\n\t\t\treturn 'https://cdn.lucca.fr/transverse/prisme/visuals/empty-states/icons/iconPictureAction.svg';\n\t\t} else {\n\t\t\treturn 'https://cdn.lucca.fr/transverse/prisme/visuals/empty-states/icons/iconPaperAction.svg';\n\t\t}\n\t});\n\n\trequired = input(false, { transform: booleanAttribute });\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tthis.formFieldRef?.forceInputRequired.set(this.required());\n\t\t});\n\t}\n\n\tfilesChange(event: Event) {\n\t\tconst host = event.target as HTMLInputElement;\n\t\tthis.droppable = false;\n\t\tfor (const file of Array.from(host.files)) {\n\t\t\tthis.filePicked.emit(file);\n\t\t}\n\t\thost.value = null;\n\t}\n}\n","import { Component, ViewEncapsulation } from '@angular/core';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\n\n@Component({\n\tselector: 'lu-file-dropzone',\n\tstandalone: true,\n\ttemplateUrl: './file-dropzone.component.html',\n\tstyleUrls: ['./file-dropzone.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n\timports: [LuSafeExternalSvgPipe, IntlParamsPipe],\n})\nexport class FileDropzoneComponent extends BaseFileUploadComponent {}\n","<div class=\"fileUpload mod-dropzone\" [class.is-droppable]=\"droppable\" (dragenter)=\"droppable = true\" (dragleave)=\"droppable = false\">\n\t<div class=\"fileUpload-status\" [innerHtml]=\"illustrationUrl() | luSafeExternalSvg\"></div>\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t@if (acceptNames().length) {\n\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t@if (acceptNames().length > 1 || acceptAll()) { {{ intl.acceptedFormat.other }} } @else { {{ intl.acceptedFormat.one }} } {{\n\t\t\tacceptNames().join(', ') }}.\n\t\t</span>\n\t\t} @if (fileMaxSize()) {\n\t\t<span class=\"fileUpload-instruction-size\">{{ intl.maxWeight.other | intlParams: {maxSizeDisplay: maxSizeDisplay()} }}</span>\n\t\t}\n\t</div>\n</div>\n","import { NgClass } from '@angular/common';\nimport { booleanAttribute, Component, computed, inject, input, LOCALE_ID, ViewEncapsulation } from '@angular/core';\nimport { outputFromObservable } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { getIntl, IntlParamsPipe } from '@lucca-front/ng/core';\nimport { DividerComponent } from '@lucca-front/ng/divider';\nimport { FormFieldComponent } from '@lucca-front/ng/form-field';\nimport { TextInputComponent } from '@lucca-front/ng/forms';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { InlineMessageComponent } from '@lucca-front/ng/inline-message';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { Subject } from 'rxjs';\nimport { FileEntry } from '../file-upload-entry';\nimport { LU_FILE_UPLOAD_TRANSLATIONS } from '../file-upload.translate';\nimport { formatSize } from '../formatter';\n\n@Component({\n\tselector: 'lu-file-entry',\n\tstandalone: true,\n\ttemplateUrl: './file-entry.component.html',\n\tstyleUrls: ['./file-entry.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n\timports: [IconComponent, LuTooltipModule, ButtonComponent, InlineMessageComponent, DividerComponent, NgClass, FormFieldComponent, TextInputComponent, FormsModule, IntlParamsPipe],\n\thost: {\n\t\tclass: 'u-displayContents',\n\t},\n})\nexport class FileEntryComponent {\n\t#locale = inject(LOCALE_ID);\n\n\tintl = getIntl(LU_FILE_UPLOAD_TRANSLATIONS);\n\n\tstate = input<'success' | 'loading' | 'error' | null>(null);\n\n\tdisplayFileName = input(false, { transform: booleanAttribute });\n\n\tinlineMessageError = input<string | null>(null);\n\n\tentry = input.required<FileEntry>();\n\n\tsize = input<'S' | null>(null);\n\n\ticonOverride = input('');\n\n\tdownloadURL = input('');\n\n\tpassword = input('');\n\tpasswordChange$ = new Subject<string>();\n\tpasswordChange = outputFromObservable(this.passwordChange$);\n\n\tget withPassword() {\n\t\treturn this.passwordChange$.observed;\n\t}\n\n\tmedia = input(false, { transform: booleanAttribute });\n\n\tdeleteFile$ = new Subject<void>();\n\n\tdeleteFile = outputFromObservable(this.deleteFile$);\n\n\tget deletable() {\n\t\treturn this.deleteFile$.observed;\n\t}\n\n\tfileName = computed(() => this.entry().name);\n\tfileType = computed(() => this.entry().type);\n\tfileSize = computed(() => this.entry().size);\n\n\tfileSizeDisplay = computed(() => formatSize(this.#locale, this.fileSize()));\n\tfileTypeDisplay = computed(() => this.intl.file.replace('{{fileTypeLastPart}}', this.fileType().split('/')[1].toUpperCase()));\n\n\tpreviewUrl = input<string>('');\n\n\tfileEntryIconSrc = computed(() => {\n\t\tconst fileExtension = this.fileName().split('.').pop();\n\t\tconst fileEntryIconRoot = 'https://cdn.lucca.fr/transverse/prisme/visuals/file-entry/';\n\t\tconst fileEntryIconExtension = '.svg';\n\n\t\tswitch (fileExtension) {\n\t\t\tcase 'pdf':\n\t\t\tcase 'xls':\n\t\t\tcase 'xlsx':\n\t\t\tcase 'doc':\n\t\t\tcase 'csv':\n\t\t\t\treturn fileEntryIconRoot + fileExtension + fileEntryIconExtension;\n\t\t\tcase 'jpg':\n\t\t\tcase 'jpeg':\n\t\t\tcase 'png':\n\t\t\tcase 'gif':\n\t\t\tcase 'svg':\n\t\t\t\treturn fileEntryIconRoot + 'image' + fileEntryIconExtension;\n\t\t\tdefault:\n\t\t\t\treturn fileEntryIconRoot + 'default' + fileEntryIconExtension;\n\t\t}\n\t});\n\n\ttooltip = computed(() => {\n\t\tif (this.state() === 'error') {\n\t\t\tif (!this.media()) {\n\t\t\t\treturn null;\n\t\t\t} else {\n\t\t\t\treturn this.fileName() + ' — ' + this.fileSizeDisplay();\n\t\t\t}\n\t\t}\n\n\t\tif (!this.media() && this.size() === null) {\n\t\t\treturn null;\n\t\t}\n\n\t\tif (this.size() === 'S' && !this.media()) {\n\t\t\treturn this.fileTypeDisplay() + ' – ' + this.fileSizeDisplay();\n\t\t}\n\n\t\treturn this.fileName() + ' – ' + this.fileTypeDisplay() + ' – ' + this.fileSizeDisplay();\n\t});\n\n\tdlClasses = computed(() => ({\n\t\t[`is-${this.state()}`]: !!this.state(),\n\t\t[`mod-${this.size()}`]: !!this.size(),\n\t}));\n}\n","<dl class=\"fileEntry\" [class.mod-media]=\"media()\" [ngClass]=\"dlClasses()\">\n\t@if (!media()) {\n\t<dt class=\"fileEntry-filename\">\n\t\t<div class=\"fileEntry-filename-tooltip\" luTooltip luTooltipWhenEllipsis>{{ fileName() }}</div>\n\t</dt>\n\t@if (state() === 'error' && inlineMessageError()) {\n\t<dd class=\"fileEntry-inlineMessage\">\n\t\t<lu-inline-message withTooltip [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t</dd>\n\t} @else {\n\t<dd class=\"fileEntry-description\">\n\t\t<span class=\"fileEntry-description-format\" luTooltip luTooltipWhenEllipsis>{{ fileTypeDisplay() }}</span><span class=\"u-mask\"> – </span>\n\t\t<lu-divider vertical />\n\t\t<span class=\"fileEntry-description-size\">{{ fileSizeDisplay() }}</span>\n\t</dd>\n\t} }\n\t<dd class=\"fileEntry-status\">\n\t\t<div class=\"fileEntry-status-content\" [luTooltip]=\"tooltip()\">\n\t\t\t@if (state() === 'error' && inlineMessageError()) { @if (media()) {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<lu-inline-message class=\"fileEntry-status-content-inlineMessage\" [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t\t\t</div>\n\t\t\t} @else {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<lu-icon class=\"fileEntry-status-content-inside-icon\" icon=\"signError\" />\n\t\t\t</div>\n\t\t\t} } @else { @if (previewUrl() && state() !== 'error') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<img class=\"fileEntry-status-content-inside-img\" [src]=\"previewUrl()\" alt=\"\" loading=\"lazy\" />\n\t\t\t</div>\n\t\t\t} @if (state() === 'loading') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<div class=\"fileEntry-status-content-inside-loading loading\"></div>\n\t\t\t</div>\n\t\t\t} @if (!previewUrl() && state() !== 'loading') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<img class=\"fileEntry-status-content-inside-svg\" [attr.src]=\"iconOverride() || fileEntryIconSrc()\" alt=\"\" width=\"32\" height=\"32\" />\n\t\t\t</div>\n\t\t\t} } @if (displayFileName() && media()) {\n\t\t\t<div class=\"fileEntry-status-content-fileName\" aria-hidden=\"true\">{{ fileName() }}</div>\n\t\t\t}\n\t\t</div>\n\t</dd>\n\t@if (downloadURL() || deletable) {\n\t<dd class=\"fileEntry-toolbar\">\n\t\t<div class=\"fileToolbar\" [class.mod-disablePositioning]=\"!media()\" [class.mod-S]=\"size() === 'S'\">\n\t\t\t<ul class=\"fileToolbar-list\">\n\t\t\t\t@if (downloadURL()) {\n\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t<a\n\t\t\t\t\t\t[href]=\"downloadURL()\"\n\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\tdownload=\"download\"\n\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tluButton\n\t\t\t\t\t\t[luTooltip]=\"intl.download\"\n\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t>\n\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\ticon=\"arrowDownload\"\n\t\t\t\t\t\t\t[alt]=\"intl.downloadFile | intlParams: {fileName: fileName()}\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t\t} @if (deletable) {\n\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t<button\n\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\t[class.palette-critical]=\"state() === 'error'\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tluButton\n\t\t\t\t\t\t[luTooltip]=\"intl.delete\"\n\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t(click)=\"deleteFile$.next()\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\ticon=\"trashDelete\"\n\t\t\t\t\t\t\t[alt]=\"intl.deleteFile | intlParams: {fileName: fileName()}\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</button>\n\t\t\t\t</li>\n\t\t\t\t}\n\t\t\t</ul>\n\t\t</div>\n\t</dd>\n\t}\n</dl>\n@if (withPassword) {\n<div class=\"fileEntry_box box mod-withArrow mod-neutral\">\n\t<div class=\"box-arrow mod-neutral\"></div>\n\t<lu-form-field [label]=\"intl.password\">\n\t\t<div class=\"fileEntry_box-field\">\n\t\t\t<lu-text-input\n\t\t\t\tclass=\"fileEntry_box-field-textField\"\n\t\t\t\trequired\n\t\t\t\thasClearer\n\t\t\t\tsearchIcon=\"searchMagnifyingGlass\"\n\t\t\t\ttype=\"password\"\n\t\t\t\t[ngModel]=\"password()\"\n\t\t\t\t(ngModelChange)=\"passwordChange$.next($event)\"\n\t\t\t/>\n\t\t\t<button class=\"fileEntry_box-field-button\" luButton type=\"button\">{{ intl.confirmPassword }}</button>\n\t\t</div>\n\t</lu-form-field>\n</div>\n}\n","import { Component, ViewEncapsulation } from '@angular/core';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { InputDirective } from '@lucca-front/ng/form-field';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\n\n@Component({\n\tselector: 'lu-multi-file-upload',\n\tstandalone: true,\n\ttemplateUrl: './multi-file-upload.component.html',\n\tstyleUrls: ['./multi-file-upload.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n\timports: [LuSafeExternalSvgPipe, InputDirective, LuTooltipModule, IntlParamsPipe],\n})\nexport class MultiFileUploadComponent extends BaseFileUploadComponent {}\n","<div class=\"fileUpload\" [class.is-droppable]=\"droppable\" [class.mod-S]=\"size() === 'S'\" [class.is-hidden]=\"false\">\n\t<input\n\t\t[attr.aria-describedby]=\"'fileUpload-instruction-' + idSuffix\"\n\t\tclass=\"fileUpload-input\"\n\t\ttype=\"file\"\n\t\ttitle=\"\"\n\t\t[attr.accept]=\"acceptAttribute().length > 0 ? acceptAttribute() : null\"\n\t\tluInput\n\t\t(dragenter)=\"droppable = true\"\n\t\t(dragleave)=\"droppable = false\"\n\t\t(change)=\"filesChange($event)\"\n\t\tmultiple=\"multiple\"\n\t\t#inputRef\n\t/>\n\t<div class=\"fileUpload-status\" [innerHtml]=\"illustrationUrl() | luSafeExternalSvg\"></div>\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t<span class=\"fileUpload-instruction-action\" aria-hidden=\"true\" [innerHTML]=\"intl.dropOrClick.other\"></span>\n\t\t@if (acceptNames().length) {\n\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t@if (acceptNames().length > 1 || acceptAll()) { {{ intl.acceptedFormat.other }} } @else { intl.acceptedFormat.one } {{\n\t\t\tacceptNames().join(', ') }}.\n\t\t</span>\n\t\t} @if (fileMaxSize()) {\n\t\t<span class=\"fileUpload-instruction-size\">{{ intl.maxWeight.other | intlParams: {maxSizeDisplay: maxSizeDisplay()} }}</span>\n\t\t}\n\t\t<span class=\"u-mask\">{{ intl.fileUploadedListed.other }}</span>\n\t</div>\n\t<span class=\"fileUpload-button button\" aria-hidden=\"true\">{{ intl.selectFile.other }}</span>\n</div>\n","import { booleanAttribute, Component, input, output, ViewEncapsulation } from '@angular/core';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { InputDirective } from '@lucca-front/ng/form-field';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\nimport { FileEntryComponent } from '../file-entry/file-entry.component';\nimport { FileEntry } from '../file-upload-entry';\n\n@Component({\n\tselector: 'lu-single-file-upload',\n\tstandalone: true,\n\ttemplateUrl: './single-file-upload.component.html',\n\tstyleUrls: ['./single-file-upload.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n\timports: [LuSafeExternalSvgPipe, InputDirective, LuTooltipModule, FileEntryComponent, IntlParamsPipe],\n})\nexport class SingleFileUploadComponent extends BaseFileUploadComponent {\n\tentry = input<FileEntry | null>(null);\n\n\tstate = input<'loading' | 'success' | 'error' | null>(null);\n\n\tinlineMessageError = input<string | null>(null);\n\n\tpreviewUrl = input<string | null>(null);\n\n\tdeleteFile = output<void>();\n\n\tdisplayFileName = input(false, { transform: booleanAttribute });\n}\n","<div class=\"fileUpload\" [class.is-droppable]=\"droppable\" [class.mod-S]=\"size() === 'S'\" [class.is-hidden]=\"!!entry()\">\n\t<input\n\t\tclass=\"fileUpload-input\"\n\t\ttype=\"file\"\n\t\ttitle=\"\"\n\t\t[attr.accept]=\"acceptAttribute().length > 0 ? acceptAttribute() : null\"\n\t\tluInput\n\t\t(dragenter)=\"droppable = true\"\n\t\t(dragleave)=\"droppable = false\"\n\t\t(change)=\"filesChange($event)\"\n\t\t[attr.disabled]=\"!!entry() ? 'disabled' : null\"\n\t\t[attr.aria-describedby]=\"'fileUpload-instruction-' + idSuffix\"\n\t/>\n\t<div class=\"fileUpload-status\" [innerHtml]=\"illustrationUrl() | luSafeExternalSvg\"></div>\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t<span class=\"fileUpload-instruction-action\" aria-hidden=\"true\" [innerHTML]=\"intl.dropOrClick.one\"></span>\n\t\t@if (acceptNames().length) {\n\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t@if (acceptNames().length > 1 || acceptAll()) { {{ intl.acceptedFormat.other }} } @else { {{ intl.acceptedFormat.one }} } {{\n\t\t\tacceptNames().join(', ') }}.\n\t\t</span>\n\t\t} @if (fileMaxSize()) {\n\t\t<span class=\"fileUpload-instruction-size\">{{ intl.maxWeight.one | intlParams: {maxSizeDisplay: maxSizeDisplay()} }}</span>\n\t\t}\n\t\t<span class=\"u-mask\">{{ intl.fileUploadedListed.one }}</span>\n\t</div>\n\t<span class=\"fileUpload-button button\" aria-hidden=\"true\">{{ intl.selectFile.one }}</span>\n</div>\n@if (entry()) {\n<lu-file-entry\n\t[media]=\"size() === null\"\n\t[previewUrl]=\"previewUrl()\"\n\t[entry]=\"entry()\"\n\t[state]=\"state()\"\n\t(deleteFile)=\"deleteFile.emit()\"\n\t[inlineMessageError]=\"inlineMessageError()\"\n\t[displayFileName]=\"displayFileName()\"\n/>\n}\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-file-upload.mjs","sources":["../../../packages/ng/file-upload/translations.ts","../../../packages/ng/file-upload/file-upload.translate.ts","../../../packages/ng/file-upload/formatter.ts","../../../packages/ng/file-upload/base-file-upload/base-file-upload.component.ts","../../../packages/ng/file-upload/file-dropzone/file-dropzone.component.ts","../../../packages/ng/file-upload/file-dropzone/file-dropzone.component.html","../../../packages/ng/file-upload/file-entry/file-entry.component.ts","../../../packages/ng/file-upload/file-entry/file-entry.component.html","../../../packages/ng/file-upload/multi/multi-file-upload.component.ts","../../../packages/ng/file-upload/multi/multi-file-upload.component.html","../../../packages/ng/file-upload/single/single-file-upload.component.ts","../../../packages/ng/file-upload/single/single-file-upload.component.html","../../../packages/ng/file-upload/lucca-front-ng-file-upload.ts"],"sourcesContent":["export const Translations = {\n\ten: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'all',\n\t\tfile: '{{fileTypeLastPart}} file',\n\t\tdownload: 'Download',\n\t\tdownloadFile: 'Download file “{{fileName}}”',\n\t\tdelete: 'Delete',\n\t\tdeleteFile: 'Delete file “{{fileName}}”',\n\t\tpassword: 'Password',\n\t\tconfirmPassword: 'Password',\n\t},\n\tde: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'alle',\n\t\tfile: 'alle',\n\t\tdownload: 'Download',\n\t\tdownloadFile: 'Download',\n\t\tdelete: 'Löschen',\n\t\tdeleteFile: 'Löschen',\n\t\tpassword: 'Passwort',\n\t\tconfirmPassword: 'Passwort',\n\t},\n\tfr: {\n\t\tacceptedFormat: { one: 'Format accepté :', other: 'Formats acceptés :' },\n\t\tselectFile: { one: 'Sélectionner un fichier', other: 'Sélectionner des fichiers' },\n\t\tdropOrClick: { one: 'Déposez le fichier ici ou <span>cliquez pour le sélectionner</span>.', other: 'Déposez les fichiers ici ou <span>cliquez pour les sélectionner</span>.' },\n\t\tmaxWeight: { one: 'Poids maximum : {{maxSizeDisplay}}. ', other: 'Poids maximum pour un fichier : {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Le fichier déjà déposé est détaillé après.', other: 'Les fichiers déjà déposés sont détaillés après.' },\n\t\tall: 'tous',\n\t\tfile: 'Fichier {{fileTypeLastPart}}',\n\t\tdownload: 'Télécharger',\n\t\tdownloadFile: 'Télécharger le fichier « {{fileName}} »',\n\t\tdelete: 'Supprimer',\n\t\tdeleteFile: 'Supprimer le fichier « {{fileName}} »',\n\t\tpassword: 'Mot de passe',\n\t\tconfirmPassword: 'Valider le mot de passe',\n\t},\n\tit: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'tutti',\n\t\tfile: 'tutti',\n\t\tdownload: 'Scaricare',\n\t\tdownloadFile: 'Scaricare',\n\t\tdelete: 'Eliminare',\n\t\tdeleteFile: 'Eliminare',\n\t\tpassword: 'Password',\n\t\tconfirmPassword: 'Confermare la password',\n\t},\n\tnl: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'alle',\n\t\tfile: 'alle',\n\t\tdownload: 'Downloaden',\n\t\tdownloadFile: 'Downloaden',\n\t\tdelete: 'Verwijderen',\n\t\tdeleteFile: 'Verwijderen',\n\t\tpassword: 'Wachtwoord',\n\t\tconfirmPassword: 'Wachtwoord valideren',\n\t},\n\t'nl-BE': {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'alle',\n\t\tfile: 'alle',\n\t\tdownload: 'Downloaden',\n\t\tdownloadFile: 'Downloaden',\n\t\tdelete: 'Verwijderen',\n\t\tdeleteFile: 'Verwijderen',\n\t\tpassword: 'Wachtwoord',\n\t\tconfirmPassword: 'Wachtwoord valideren',\n\t},\n\tes: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'todos',\n\t\tfile: 'todos',\n\t\tdownload: 'Descargar',\n\t\tdownloadFile: 'Descargar',\n\t\tdelete: 'Eliminar',\n\t\tdeleteFile: 'Eliminar',\n\t\tpassword: 'Contraseña',\n\t\tconfirmPassword: 'Contraseña',\n\t},\n\tpt: {\n\t\tacceptedFormat: { one: 'Formato aceite :', other: 'Formatos aceites :' },\n\t\tselectFile: { one: 'Select file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drop file here or <span>click to select</span>.', other: 'Drop files here or <span>click to select</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum size for a file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'File already uploaded is detailed below.', other: 'Files already uploaded are detailed below.' },\n\t\tall: 'todos',\n\t\tfile: 'Ficheiro {{fileTypeLastPart}}',\n\t\tdownload: 'Descarregar',\n\t\tdownloadFile: 'Descarregar o ficheiro \" {{fileName}} ',\n\t\tdelete: 'Eliminar',\n\t\tdeleteFile: 'Eliminar o ficheiro \" {{fileName}} ',\n\t\tpassword: 'Palavra-passe',\n\t\tconfirmPassword: 'Confirmar a palavra-passe',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_FILE_UPLOAD_TRANSLATIONS = new InjectionToken('LuFileUploadTranslations', {\n\tfactory: () => luFileUploadTranslations,\n});\n\nexport interface LuFileUploadLabel {\n\tacceptedFormat: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tselectFile: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tdropOrClick: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tmaxWeight: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tfileUploadedListed: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tall: string;\n\tfile: string;\n\tdownload: string;\n\tdownloadFile: string;\n\tdelete: string;\n\tdeleteFile: string;\n\tpassword: string;\n\tconfirmPassword: string;\n}\n\nexport const luFileUploadTranslations: LuTranslation<LuFileUploadLabel> = Translations;\n","export const KILO_BYTE = 1000;\nexport const MEGA_BYTE = KILO_BYTE * 1000;\n\nexport function formatSize(locale: string, size: number): string {\n\tlet unit = 'byte';\n\tlet value = size;\n\n\tif (size >= MEGA_BYTE) {\n\t\tunit = 'megabyte';\n\t\tvalue /= MEGA_BYTE;\n\t} else if (size >= KILO_BYTE) {\n\t\tunit = 'kilobyte';\n\t\tvalue /= KILO_BYTE;\n\t}\n\n\tconst weightFormatter = Intl.NumberFormat(locale, {\n\t\tnotation: 'compact',\n\t\tstyle: 'unit',\n\t\tunit: unit,\n\t\tunitDisplay: 'narrow',\n\t});\n\n\treturn weightFormatter.format(value);\n}\n","import { booleanAttribute, computed, Directive, effect, inject, input, LOCALE_ID, output } from '@angular/core';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { FORM_FIELD_INSTANCE } from '@lucca-front/ng/form-field';\nimport { LU_FILE_UPLOAD_TRANSLATIONS } from '../file-upload.translate';\nimport { formatSize, MEGA_BYTE } from '../formatter';\n\nlet nextId = 0;\n\n@Directive()\nexport abstract class BaseFileUploadComponent {\n\tprotected locale = inject(LOCALE_ID);\n\n\tprotected idSuffix = nextId++;\n\n\tprotected droppable = false;\n\n\tintl = getIntl(LU_FILE_UPLOAD_TRANSLATIONS);\n\n\tprotected formFieldRef = inject(FORM_FIELD_INSTANCE, { optional: true });\n\n\tfilePicked = output<File>();\n\n\taccept = input<\n\t\tArray<{\n\t\t\tformat: string;\n\t\t\tname?: string;\n\t\t}>\n\t>([\n\t\t{\n\t\t\tformat: '*',\n\t\t\tname: this.intl.all,\n\t\t},\n\t]);\n\n\tacceptNames = computed(() =>\n\t\tthis.accept()\n\t\t\t.filter((e) => e.name)\n\t\t\t.map((e) => e.name),\n\t);\n\n\tacceptAttribute = computed(() => this.accept().map((e) => e.format));\n\n\tacceptAll = computed(() => {\n\t\treturn this.acceptAttribute().some((str) => str.includes('*'));\n\t});\n\n\tfileMaxSize = input<number>(80 * MEGA_BYTE);\n\n\tmaxSizeDisplay = computed(() => formatSize(this.locale, this.fileMaxSize()));\n\n\tsize = input<'S' | null>(null);\n\n\tpassword = input(false, { transform: booleanAttribute });\n\n\tillustration = input<'picture' | 'paper'>('paper');\n\n\tillustrationUrl = computed(() => {\n\t\tif (this.illustration() === 'picture') {\n\t\t\treturn 'https://cdn.lucca.fr/transverse/prisme/visuals/empty-states/icons/iconPictureAction.svg';\n\t\t} else {\n\t\t\treturn 'https://cdn.lucca.fr/transverse/prisme/visuals/empty-states/icons/iconPaperAction.svg';\n\t\t}\n\t});\n\n\trequired = input(false, { transform: booleanAttribute });\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tthis.formFieldRef?.forceInputRequired.set(this.required());\n\t\t});\n\t}\n\n\tfilesChange(event: Event) {\n\t\tconst host = event.target as HTMLInputElement;\n\t\tthis.droppable = false;\n\t\tfor (const file of Array.from(host.files)) {\n\t\t\tthis.filePicked.emit(file);\n\t\t}\n\t\thost.value = null;\n\t}\n}\n","import { Component, ViewEncapsulation } from '@angular/core';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\n\n@Component({\n\tselector: 'lu-file-dropzone',\n\tstandalone: true,\n\ttemplateUrl: './file-dropzone.component.html',\n\tstyleUrls: ['./file-dropzone.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n\timports: [LuSafeExternalSvgPipe, IntlParamsPipe],\n})\nexport class FileDropzoneComponent extends BaseFileUploadComponent {}\n","<div class=\"fileUpload mod-dropzone\" [class.is-droppable]=\"droppable\" (dragenter)=\"droppable = true\" (dragleave)=\"droppable = false\">\n\t<div class=\"fileUpload-status\" [innerHtml]=\"illustrationUrl() | luSafeExternalSvg\"></div>\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t@if (acceptNames().length) {\n\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t@if (acceptNames().length > 1 || acceptAll()) { {{ intl.acceptedFormat.other }} } @else { {{ intl.acceptedFormat.one }} } {{\n\t\t\tacceptNames().join(', ') }}.\n\t\t</span>\n\t\t} @if (fileMaxSize()) {\n\t\t<span class=\"fileUpload-instruction-size\">{{ intl.maxWeight.other | intlParams: {maxSizeDisplay: maxSizeDisplay()} }}</span>\n\t\t}\n\t</div>\n</div>\n","import { NgClass } from '@angular/common';\nimport { booleanAttribute, Component, computed, inject, input, LOCALE_ID, ViewEncapsulation } from '@angular/core';\nimport { outputFromObservable } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { getIntl, IntlParamsPipe } from '@lucca-front/ng/core';\nimport { DividerComponent } from '@lucca-front/ng/divider';\nimport { FormFieldComponent } from '@lucca-front/ng/form-field';\nimport { TextInputComponent } from '@lucca-front/ng/forms';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { InlineMessageComponent } from '@lucca-front/ng/inline-message';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { Subject } from 'rxjs';\nimport { FileEntry } from '../file-upload-entry';\nimport { LU_FILE_UPLOAD_TRANSLATIONS } from '../file-upload.translate';\nimport { formatSize } from '../formatter';\n\n@Component({\n\tselector: 'lu-file-entry',\n\tstandalone: true,\n\ttemplateUrl: './file-entry.component.html',\n\tstyleUrls: ['./file-entry.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n\timports: [IconComponent, LuTooltipModule, ButtonComponent, InlineMessageComponent, DividerComponent, NgClass, FormFieldComponent, TextInputComponent, FormsModule, IntlParamsPipe],\n\thost: {\n\t\tclass: 'u-displayContents',\n\t},\n})\nexport class FileEntryComponent {\n\t#locale = inject(LOCALE_ID);\n\n\tintl = getIntl(LU_FILE_UPLOAD_TRANSLATIONS);\n\n\tstate = input<'success' | 'loading' | 'error' | null>(null);\n\n\tdisplayFileName = input(false, { transform: booleanAttribute });\n\n\tinlineMessageError = input<string | null>(null);\n\n\tentry = input.required<FileEntry>();\n\n\tsize = input<'S' | null>(null);\n\n\ticonOverride = input('');\n\n\tdownloadURL = input('');\n\n\tpassword = input('');\n\tpasswordChange$ = new Subject<string>();\n\tpasswordChange = outputFromObservable(this.passwordChange$);\n\n\tget withPassword() {\n\t\treturn this.passwordChange$.observed;\n\t}\n\n\tmedia = input(false, { transform: booleanAttribute });\n\n\tdeleteFile$ = new Subject<void>();\n\n\tdeleteFile = outputFromObservable(this.deleteFile$);\n\n\tget deletable() {\n\t\treturn this.deleteFile$.observed;\n\t}\n\n\tfileName = computed(() => this.entry().name);\n\tfileType = computed(() => this.entry().type);\n\tfileSize = computed(() => this.entry().size);\n\n\tfileSizeDisplay = computed(() => formatSize(this.#locale, this.fileSize()));\n\tfileTypeDisplay = computed(() => this.intl.file.replace('{{fileTypeLastPart}}', this.fileType().split('/')[1].toUpperCase()));\n\n\tpreviewUrl = input<string>('');\n\n\tfileEntryIconSrc = computed(() => {\n\t\tconst fileExtension = this.fileName().split('.').pop();\n\t\tconst fileEntryIconRoot = 'https://cdn.lucca.fr/transverse/prisme/visuals/file-entry/';\n\t\tconst fileEntryIconExtension = '.svg';\n\n\t\tswitch (fileExtension) {\n\t\t\tcase 'pdf':\n\t\t\tcase 'xls':\n\t\t\tcase 'xlsx':\n\t\t\tcase 'doc':\n\t\t\tcase 'csv':\n\t\t\t\treturn fileEntryIconRoot + fileExtension + fileEntryIconExtension;\n\t\t\tcase 'jpg':\n\t\t\tcase 'jpeg':\n\t\t\tcase 'png':\n\t\t\tcase 'gif':\n\t\t\tcase 'svg':\n\t\t\t\treturn fileEntryIconRoot + 'image' + fileEntryIconExtension;\n\t\t\tdefault:\n\t\t\t\treturn fileEntryIconRoot + 'default' + fileEntryIconExtension;\n\t\t}\n\t});\n\n\ttooltip = computed(() => {\n\t\tif (this.state() === 'error') {\n\t\t\tif (!this.media()) {\n\t\t\t\treturn null;\n\t\t\t} else {\n\t\t\t\treturn this.fileName() + ' — ' + this.fileSizeDisplay();\n\t\t\t}\n\t\t}\n\n\t\tif (!this.media() && this.size() === null) {\n\t\t\treturn null;\n\t\t}\n\n\t\tif (this.size() === 'S' && !this.media()) {\n\t\t\treturn this.fileTypeDisplay() + ' – ' + this.fileSizeDisplay();\n\t\t}\n\n\t\treturn this.fileName() + ' – ' + this.fileTypeDisplay() + ' – ' + this.fileSizeDisplay();\n\t});\n\n\tdlClasses = computed(() => ({\n\t\t[`is-${this.state()}`]: !!this.state(),\n\t\t[`mod-${this.size()}`]: !!this.size(),\n\t}));\n}\n","<dl class=\"fileEntry\" [class.mod-media]=\"media()\" [ngClass]=\"dlClasses()\">\n\t@if (!media()) {\n\t<dt class=\"fileEntry-filename\">\n\t\t<div class=\"fileEntry-filename-tooltip\" luTooltip luTooltipWhenEllipsis>{{ fileName() }}</div>\n\t</dt>\n\t@if (state() === 'error' && inlineMessageError()) {\n\t<dd class=\"fileEntry-inlineMessage\">\n\t\t<lu-inline-message withTooltip [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t</dd>\n\t} @else {\n\t<dd class=\"fileEntry-description\">\n\t\t<span class=\"fileEntry-description-format\" luTooltip luTooltipWhenEllipsis>{{ fileTypeDisplay() }}</span><span class=\"u-mask\"> – </span>\n\t\t<lu-divider vertical />\n\t\t<span class=\"fileEntry-description-size\">{{ fileSizeDisplay() }}</span>\n\t</dd>\n\t} }\n\t<dd class=\"fileEntry-status\">\n\t\t<div class=\"fileEntry-status-content\" [luTooltip]=\"tooltip()\">\n\t\t\t@if (state() === 'error' && inlineMessageError()) { @if (media()) {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<lu-inline-message class=\"fileEntry-status-content-inlineMessage\" [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t\t\t</div>\n\t\t\t} @else {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<lu-icon class=\"fileEntry-status-content-inside-icon\" icon=\"signError\" />\n\t\t\t</div>\n\t\t\t} } @else { @if (previewUrl() && state() !== 'error') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<img class=\"fileEntry-status-content-inside-img\" [src]=\"previewUrl()\" alt=\"\" loading=\"lazy\" />\n\t\t\t</div>\n\t\t\t} @if (state() === 'loading') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<div class=\"fileEntry-status-content-inside-loading loading\"></div>\n\t\t\t</div>\n\t\t\t} @if (!previewUrl() && state() !== 'loading') {\n\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t<img class=\"fileEntry-status-content-inside-svg\" [attr.src]=\"iconOverride() || fileEntryIconSrc()\" alt=\"\" width=\"32\" height=\"32\" />\n\t\t\t</div>\n\t\t\t} } @if (displayFileName() && media()) {\n\t\t\t<div class=\"fileEntry-status-content-fileName\" aria-hidden=\"true\">{{ fileName() }}</div>\n\t\t\t}\n\t\t</div>\n\t</dd>\n\t@if (downloadURL() || deletable) {\n\t<dd class=\"fileEntry-toolbar\">\n\t\t<div class=\"fileToolbar\" [class.mod-disablePositioning]=\"!media()\" [class.mod-S]=\"size() === 'S'\">\n\t\t\t<ul class=\"fileToolbar-list\">\n\t\t\t\t@if (downloadURL()) {\n\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t<a\n\t\t\t\t\t\t[href]=\"downloadURL()\"\n\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\tdownload=\"download\"\n\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tluButton\n\t\t\t\t\t\t[luTooltip]=\"intl.download\"\n\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t>\n\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\ticon=\"arrowDownload\"\n\t\t\t\t\t\t\t[alt]=\"intl.downloadFile | intlParams: {fileName: fileName()}\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t\t} @if (deletable) {\n\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t<button\n\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\t[class.palette-critical]=\"state() === 'error'\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tluButton\n\t\t\t\t\t\t[luTooltip]=\"intl.delete\"\n\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t(click)=\"deleteFile$.next()\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\ticon=\"trashDelete\"\n\t\t\t\t\t\t\t[alt]=\"intl.deleteFile | intlParams: {fileName: fileName()}\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</button>\n\t\t\t\t</li>\n\t\t\t\t}\n\t\t\t</ul>\n\t\t</div>\n\t</dd>\n\t}\n</dl>\n@if (withPassword) {\n<div class=\"fileEntry_box box mod-withArrow mod-neutral\">\n\t<div class=\"box-arrow mod-neutral\"></div>\n\t<lu-form-field [label]=\"intl.password\">\n\t\t<div class=\"fileEntry_box-field\">\n\t\t\t<lu-text-input\n\t\t\t\tclass=\"fileEntry_box-field-textField\"\n\t\t\t\trequired\n\t\t\t\thasClearer\n\t\t\t\tsearchIcon=\"searchMagnifyingGlass\"\n\t\t\t\ttype=\"password\"\n\t\t\t\t[ngModel]=\"password()\"\n\t\t\t\t(ngModelChange)=\"passwordChange$.next($event)\"\n\t\t\t/>\n\t\t\t<button class=\"fileEntry_box-field-button\" luButton type=\"button\">{{ intl.confirmPassword }}</button>\n\t\t</div>\n\t</lu-form-field>\n</div>\n}\n","import { Component, ViewEncapsulation } from '@angular/core';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { InputDirective } from '@lucca-front/ng/form-field';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\n\n@Component({\n\tselector: 'lu-multi-file-upload',\n\tstandalone: true,\n\ttemplateUrl: './multi-file-upload.component.html',\n\tstyleUrls: ['./multi-file-upload.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n\timports: [LuSafeExternalSvgPipe, InputDirective, LuTooltipModule, IntlParamsPipe],\n})\nexport class MultiFileUploadComponent extends BaseFileUploadComponent {}\n","<div class=\"fileUpload\" [class.is-droppable]=\"droppable\" [class.mod-S]=\"size() === 'S'\" [class.is-hidden]=\"false\">\n\t<input\n\t\t[attr.aria-describedby]=\"'fileUpload-instruction-' + idSuffix\"\n\t\tclass=\"fileUpload-input\"\n\t\ttype=\"file\"\n\t\ttitle=\"\"\n\t\t[attr.accept]=\"acceptAttribute().length > 0 ? acceptAttribute() : null\"\n\t\tluInput\n\t\t(dragenter)=\"droppable = true\"\n\t\t(dragleave)=\"droppable = false\"\n\t\t(change)=\"filesChange($event)\"\n\t\tmultiple=\"multiple\"\n\t\t#inputRef\n\t/>\n\t<div class=\"fileUpload-status\" [innerHtml]=\"illustrationUrl() | luSafeExternalSvg\"></div>\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t<span class=\"fileUpload-instruction-action\" aria-hidden=\"true\" [innerHTML]=\"intl.dropOrClick.other\"></span>\n\t\t@if (acceptNames().length) {\n\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t@if (acceptNames().length > 1 || acceptAll()) { {{ intl.acceptedFormat.other }} } @else { intl.acceptedFormat.one } {{\n\t\t\tacceptNames().join(', ') }}.\n\t\t</span>\n\t\t} @if (fileMaxSize()) {\n\t\t<span class=\"fileUpload-instruction-size\">{{ intl.maxWeight.other | intlParams: {maxSizeDisplay: maxSizeDisplay()} }}</span>\n\t\t}\n\t\t<span class=\"u-mask\">{{ intl.fileUploadedListed.other }}</span>\n\t</div>\n\t<span class=\"fileUpload-button button\" aria-hidden=\"true\">{{ intl.selectFile.other }}</span>\n</div>\n","import { booleanAttribute, Component, input, output, ViewEncapsulation } from '@angular/core';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { InputDirective } from '@lucca-front/ng/form-field';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\nimport { FileEntryComponent } from '../file-entry/file-entry.component';\nimport { FileEntry } from '../file-upload-entry';\n\n@Component({\n\tselector: 'lu-single-file-upload',\n\tstandalone: true,\n\ttemplateUrl: './single-file-upload.component.html',\n\tstyleUrls: ['./single-file-upload.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n\timports: [LuSafeExternalSvgPipe, InputDirective, LuTooltipModule, FileEntryComponent, IntlParamsPipe],\n})\nexport class SingleFileUploadComponent extends BaseFileUploadComponent {\n\tentry = input<FileEntry | null>(null);\n\n\tstate = input<'loading' | 'success' | 'error' | null>(null);\n\n\tinlineMessageError = input<string | null>(null);\n\n\tpreviewUrl = input<string | null>(null);\n\n\tdeleteFile = output<void>();\n\n\tdisplayFileName = input(false, { transform: booleanAttribute });\n}\n","<div class=\"fileUpload\" [class.is-droppable]=\"droppable\" [class.mod-S]=\"size() === 'S'\" [class.is-hidden]=\"!!entry()\">\n\t<input\n\t\tclass=\"fileUpload-input\"\n\t\ttype=\"file\"\n\t\ttitle=\"\"\n\t\t[attr.accept]=\"acceptAttribute().length > 0 ? acceptAttribute() : null\"\n\t\tluInput\n\t\t(dragenter)=\"droppable = true\"\n\t\t(dragleave)=\"droppable = false\"\n\t\t(change)=\"filesChange($event)\"\n\t\t[attr.disabled]=\"!!entry() ? 'disabled' : null\"\n\t\t[attr.aria-describedby]=\"'fileUpload-instruction-' + idSuffix\"\n\t/>\n\t<div class=\"fileUpload-status\" [innerHtml]=\"illustrationUrl() | luSafeExternalSvg\"></div>\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t<span class=\"fileUpload-instruction-action\" aria-hidden=\"true\" [innerHTML]=\"intl.dropOrClick.one\"></span>\n\t\t@if (acceptNames().length) {\n\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t@if (acceptNames().length > 1 || acceptAll()) { {{ intl.acceptedFormat.other }} } @else { {{ intl.acceptedFormat.one }} } {{\n\t\t\tacceptNames().join(', ') }}.\n\t\t</span>\n\t\t} @if (fileMaxSize()) {\n\t\t<span class=\"fileUpload-instruction-size\">{{ intl.maxWeight.one | intlParams: {maxSizeDisplay: maxSizeDisplay()} }}</span>\n\t\t}\n\t\t<span class=\"u-mask\">{{ intl.fileUploadedListed.one }}</span>\n\t</div>\n\t<span class=\"fileUpload-button button\" aria-hidden=\"true\">{{ intl.selectFile.one }}</span>\n</div>\n@if (entry()) {\n<lu-file-entry\n\t[media]=\"size() === null\"\n\t[previewUrl]=\"previewUrl()\"\n\t[entry]=\"entry()\"\n\t[state]=\"state()\"\n\t(deleteFile)=\"deleteFile.emit()\"\n\t[inlineMessageError]=\"inlineMessageError()\"\n\t[displayFileName]=\"displayFileName()\"\n/>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -255,7 +255,7 @@ class FilterBarComponent {
255
255
  this.optionalPills = computed(() => this.pills().filter((pill) => pill.optional()));
256
256
  }
257
257
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: FilterBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
258
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: FilterBarComponent, isStandalone: true, selector: "lu-filter-bar", host: { classAttribute: "filterBar" }, queries: [{ propertyName: "pills", predicate: FilterPillComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<lu-scroll-box class=\"filterBar-scrollBox\">\n\t<div class=\"filterBar-scrollBox-first\"></div>\n\n\t<div class=\"filterBar-scrollBox-group\">\n\t\t@if (addonBefore()) {\n\t\t<ng-container *ngTemplateOutlet=\"addonBefore()\"></ng-container>\n\n\t\t<lu-divider class=\"filterBar-divider\" />\n\t\t} @if (optionalPills().length > 0) {\n\t\t<button\n\t\t\tclass=\"filterPill mod-button\"\n\t\t\ttype=\"button\"\n\t\t\t[luTooltip]=\"intl.additionalFilters\"\n\t\t\tluTooltipOnlyForDisplay\n\t\t\t[luPopover2]=\"contentOptionsTpl\"\n\t\t\tluPopoverNoCloseButton\n\t\t\t[customPositions]=\"popoverPositions\"\n\t\t>\n\t\t\t<lu-icon class=\"filterPill-icon\" icon=\"filtersDescending\" [attr.alt]=\"intl.additionalFilters\" />\n\t\t</button>\n\t\t}\n\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t@if (addonAfter()) {\n\t<div class=\"filterBar-scrollBox-export\">\n\t\t<ng-container *ngTemplateOutlet=\"addonAfter()\"></ng-container>\n\t</div>\n\t}\n\n\t<div class=\"filterBar-scrollBox-last\"></div>\n</lu-scroll-box>\n\n<ng-template #contentOptionsTpl>\n\t<form class=\"filterPill_popover-content popover-contentOptional\">\n\t\t@for (pill of optionalPills(); track pill.name(); let index = $index) {\n\t\t<div class=\"form-field mod-selectOption filterPill_popover-content-option\">\n\t\t\t<label class=\"formLabel\" [attr.for]=\"'filterPillOptions' + index\">{{ pill.label() }}</label>\n\t\t\t<span class=\"checkboxField\">\n\t\t\t\t<input\n\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\tclass=\"checkboxField-input\"\n\t\t\t\t\t[name]=\"pill.name()\"\n\t\t\t\t\t[attr.id]=\"'filterPillOptions' + index\"\n\t\t\t\t\t[(ngModel)]=\"pill.displayed\"\n\t\t\t\t/>\n\t\t\t\t<span class=\"checkboxField-icon\" aria-hidden=\"true\"><span class=\"checkboxField-icon-check\"></span></span>\n\t\t\t</span>\n\t\t</div>\n\t\t}\n\t</form>\n</ng-template>\n", styles: [".filterBar{--components-filterBar-extremitiesDisplay: none}.filterBar .textField{--component-textField-borderRadius: var(--commons-borderRadius-L);--component-textField-border: var(--palettes-neutral-100);--component-textField-borderHover: var(--palettes-product-400);--component-textField-width: 15rem;--component-textField-fontSize: var(--sizes-S-fontSize);--component-textField-lineHeight: var(--sizes-S-lineHeight);--component-textField-padding: var(--pr-t-spacings-75);--component-textField-affix-size: 1.5rem}.filterBar .textField .textField-input-affix-toggle{--icon-size: 1.25rem}.filterBar .textField .textField-input-affix-clear.clear,.filterBar .textField .textField-input-affix-clear:not(.clear){--components-clear-size: .75rem;--icon-size: .75rem}.filterBar .textField .textField-input-affix-icon{--icon-size: 1.25rem}.filterBar-divider.divider:last-child{display:none}.filterBar-segmentedControl.segmentedControl{--components-segmentedControl-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-segmentedControl-fontSize: var(--sizes-S-fontSize);--components-segmentedControl-lineHeight: var(--sizes-S-lineHeight);--components-segmentedControl-dividerInset: var(--pr-t-spacings-75)}.filterBar-segmentedControl.segmentedControl .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.filterBar-scrollBox.scrollBox{align-items:flex-start}.filterBar-scrollBox-first{display:var(--components-filterBar-extremitiesDisplay);margin-inline-end:calc(var(--components-scrollBox-gap) * -1)}.filterBar-scrollBox-last{display:var(--components-filterBar-extremitiesDisplay);margin-inline-start:calc(var(--components-scrollBox-gap) * -1)}.filterBar-scrollBox-group{display:flex;gap:var(--components-scrollBox-gap);flex-wrap:wrap}.filterBar-scrollBox-group:has(+.filterBar-scrollBox-last){flex-grow:1}.filterBar-scrollBox-export{margin-inline-start:auto;padding-inline-start:var(--pr-t-spacings-200)}@media not all and (min-width: 30em){.filterBar .filterBar-segmentedControl.segmentedControl{--components-segmentedControl-direction: row;--components-segmentedControl-width: 100%}.filterBar .filterBar-divider.divider{width:100%}}@media (min-width: 30em){.filterBar .filterBar-divider.divider{margin-inline:var(--pr-t-spacings-50);--components-divider-alignSelf: stretch}.filterBar .filterBar-divider.divider:where(:empty){border-inline-start:var(--commons-divider-border)}.filterBar .filterBar-divider.divider:not(:empty){--components-divider-direction: column;--components-divider-iconBottom: var(--pr-t-spacings-25);--components-divider-justify: center}.filterBar .filterBar-divider.divider:not(:empty):before,.filterBar .filterBar-divider.divider:not(:empty):after{border-inline-start:var(--commons-divider-border);min-block-size:var(--components-divider-minSize)}.filterBar .filterBar-scrollBox.scrollBox:has(.filterBar-scrollBox-export){flex-wrap:nowrap}}@media (pointer: coarse){.filterBar{--components-filterBar-extremitiesDisplay: block}.filterBar .filterBar-segmentedControl.segmentedControl{--components-segmentedControl-whiteSpace: nowrap;--components-segmentedControl-width: auto;--components-segmentedControl-wrap: nowrap}.filterBar .filterBar-scrollBox.scrollBox{-ms-overflow-style:none;scrollbar-width:none}.filterBar .filterBar-scrollBox.scrollBox::-webkit-scrollbar{display:none}.filterBar .filterBar-scrollBox-group{display:contents}}@media not (pointer: coarse){.filterBar .filterBar-scrollBox.scrollBox{--components-scrollBox-wrap: wrap;--components-scrollBox-pseudoElementsContent: none}}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color"] }, { kind: "directive", type: LuTooltipTriggerDirective, selector: "[luTooltip]", inputs: ["luTooltip", "luTooltipEnterDelay", "luTooltipLeaveDelay", "luTooltipDisabled", "luTooltipOnlyForDisplay", "luTooltipPosition", "luTooltipWhenEllipsis"], exportAs: ["luTooltip"] }, { kind: "directive", type: PopoverDirective, selector: "[luPopover2]", inputs: ["luPopover2", "luPopoverPosition", "luPopoverDisabled", "luPopoverTrigger", "customPositions", "luPopoverNoCloseButton", "luPopoverAnchor", "luPopoverOpenDelay", "luPopoverCloseDelay"], outputs: ["luPopoverClosed", "luPopoverOpened"], exportAs: ["luPopover2"] }, { kind: "component", type: DividerComponent, selector: "lu-divider", inputs: ["withRole", "vertical", "size"] }, { kind: "component", type: ScrollBoxComponent, selector: "lu-scroll-box" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
258
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: FilterBarComponent, isStandalone: true, selector: "lu-filter-bar", host: { classAttribute: "filterBar" }, queries: [{ propertyName: "pills", predicate: FilterPillComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<lu-scroll-box class=\"filterBar-scrollBox\">\n\t<div class=\"filterBar-scrollBox-first\"></div>\n\n\t<div class=\"filterBar-scrollBox-group\">\n\t\t@if (addonBefore()) {\n\t\t<ng-container *ngTemplateOutlet=\"addonBefore()\"></ng-container>\n\n\t\t<lu-divider class=\"filterBar-divider\" />\n\t\t} @if (optionalPills().length > 0) {\n\t\t<button\n\t\t\tclass=\"filterPill mod-button\"\n\t\t\ttype=\"button\"\n\t\t\t[luTooltip]=\"intl.additionalFilters\"\n\t\t\tluTooltipOnlyForDisplay\n\t\t\t[luPopover2]=\"contentOptionsTpl\"\n\t\t\tluPopoverNoCloseButton\n\t\t\t[customPositions]=\"popoverPositions\"\n\t\t>\n\t\t\t<lu-icon class=\"filterPill-icon\" icon=\"filtersDescending\" [attr.alt]=\"intl.additionalFilters\" />\n\t\t</button>\n\t\t}\n\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t@if (addonAfter()) {\n\t<div class=\"filterBar-scrollBox-export\">\n\t\t<ng-container *ngTemplateOutlet=\"addonAfter()\"></ng-container>\n\t</div>\n\t}\n\n\t<div class=\"filterBar-scrollBox-last\"></div>\n</lu-scroll-box>\n\n<ng-template #contentOptionsTpl>\n\t<form class=\"filterPill_popover-content popover-contentOptional\">\n\t\t@for (pill of optionalPills(); track pill.name(); let index = $index) {\n\t\t<div class=\"form-field mod-selectOption filterPill_popover-content-option\">\n\t\t\t<label class=\"formLabel\" [attr.for]=\"'filterPillOptions' + index\">{{ pill.label() }}</label>\n\t\t\t<span class=\"checkboxField\">\n\t\t\t\t<input\n\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\tclass=\"checkboxField-input\"\n\t\t\t\t\t[name]=\"pill.name()\"\n\t\t\t\t\t[attr.id]=\"'filterPillOptions' + index\"\n\t\t\t\t\t[(ngModel)]=\"pill.displayed\"\n\t\t\t\t/>\n\t\t\t\t<span class=\"checkboxField-icon\" aria-hidden=\"true\"><span class=\"checkboxField-icon-check\"></span></span>\n\t\t\t</span>\n\t\t</div>\n\t\t}\n\t</form>\n</ng-template>\n", styles: [".filterBar{--components-filterBar-extremitiesDisplay: none}.filterBar .textField{--component-textField-borderRadius: var(--commons-borderRadius-L);--component-textField-border: var(--palettes-neutral-100);--component-textField-borderHover: var(--palettes-product-400);--component-textField-width: 15rem;--component-textField-fontSize: var(--sizes-S-fontSize);--component-textField-lineHeight: var(--sizes-S-lineHeight);--component-textField-padding: var(--pr-t-spacings-75);--component-textField-affix-size: 1.5rem}.filterBar .textField .textField-input-affix-toggle{--icon-size: 1.25rem}.filterBar .textField .textField-input-affix-clear.clear,.filterBar .textField .textField-input-affix-clear:not(.clear){--components-clear-size: .75rem;--icon-size: .75rem}.filterBar .textField .textField-input-affix-icon{--icon-size: 1.25rem}.filterBar-divider.divider:last-child{display:none}.filterBar-segmentedControl.segmentedControl{--components-segmentedControl-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-segmentedControl-fontSize: var(--sizes-S-fontSize);--components-segmentedControl-lineHeight: var(--sizes-S-lineHeight);--components-segmentedControl-dividerInset: var(--pr-t-spacings-75)}.filterBar-segmentedControl.segmentedControl .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.filterBar-scrollBox.scrollBox{align-items:flex-start}.filterBar-scrollBox-first{display:var(--components-filterBar-extremitiesDisplay);margin-inline-end:calc(var(--components-scrollBox-gap) * -1)}.filterBar-scrollBox-last{display:var(--components-filterBar-extremitiesDisplay);margin-inline-start:calc(var(--components-scrollBox-gap) * -1)}.filterBar-scrollBox-group{display:flex;gap:var(--components-scrollBox-gap);flex-wrap:wrap}.filterBar-scrollBox-group:has(+.filterBar-scrollBox-last){flex-grow:1}.filterBar-scrollBox-export{margin-inline-start:auto;padding-inline-start:var(--pr-t-spacings-200)}@media not all and (min-width: 30em){.filterBar .filterBar-segmentedControl.segmentedControl{--components-segmentedControl-direction: row;--components-segmentedControl-width: 100%}.filterBar .filterBar-divider.divider{width:100%}}@media (min-width: 30em){.filterBar .filterBar-divider.divider{margin-inline:var(--pr-t-spacings-50);--components-divider-alignSelf: stretch}.filterBar .filterBar-divider.divider:where(:empty){border-inline-start:var(--commons-divider-border)}.filterBar .filterBar-divider.divider:not(:empty){--components-divider-direction: column;--components-divider-iconBottom: var(--pr-t-spacings-25);--components-divider-justify: center}.filterBar .filterBar-divider.divider:not(:empty):before,.filterBar .filterBar-divider.divider:not(:empty):after{border-inline-start:var(--commons-divider-border);min-block-size:var(--components-divider-minSize)}.filterBar .filterBar-scrollBox.scrollBox:has(.filterBar-scrollBox-export){flex-wrap:nowrap}}@media (pointer: coarse){.filterBar{--components-filterBar-extremitiesDisplay: block}.filterBar .filterBar-segmentedControl.segmentedControl{--components-segmentedControl-whiteSpace: nowrap;--components-segmentedControl-width: auto;--components-segmentedControl-wrap: nowrap}.filterBar .filterBar-scrollBox.scrollBox{-ms-overflow-style:none;scrollbar-width:none}.filterBar .filterBar-scrollBox.scrollBox::-webkit-scrollbar{display:none}.filterBar .filterBar-scrollBox-group{display:contents}}@media not (pointer: coarse){.filterBar .filterBar-scrollBox.scrollBox{--components-scrollBox-wrap: wrap;--components-scrollBox-pseudoElementsContent: none}}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color"] }, { kind: "directive", type: LuTooltipTriggerDirective, selector: "[luTooltip]", inputs: ["luTooltip", "luTooltipEnterDelay", "luTooltipLeaveDelay", "luTooltipDisabled", "luTooltipOnlyForDisplay", "luTooltipPosition", "luTooltipWhenEllipsis"], exportAs: ["luTooltip"] }, { kind: "directive", type: PopoverDirective, selector: "[luPopover2]", inputs: ["luPopover2", "luPopoverPosition", "luPopoverDisabled", "luPopoverTrigger", "customPositions", "luPopoverNoCloseButton", "luPopoverAnchor", "luPopoverOpenDelay", "luPopoverCloseDelay"], outputs: ["luPopoverClosed", "luPopoverOpened"], exportAs: ["luPopover2"] }, { kind: "component", type: DividerComponent, selector: "lu-divider", inputs: ["separatorRole", "vertical", "size", "withRole"] }, { kind: "component", type: ScrollBoxComponent, selector: "lu-scroll-box" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
259
259
  }
260
260
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: FilterBarComponent, decorators: [{
261
261
  type: Component,