c3-components 0.8.5 → 0.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/esm2022/lib/c3-dialog/c3-dialog.module.mjs +5 -2
  2. package/esm2022/lib/c3-dialog/components/c3-dialog-alert.component.mjs +45 -0
  3. package/esm2022/lib/c3-dialog/services/c3-dialog.service.mjs +11 -1
  4. package/esm2022/lib/c3-file-displayer/c3-file-display-card/c3-file-display-card.component.mjs +26 -26
  5. package/esm2022/lib/c3-file-displayer/c3-file-display-list/c3-file-display-list.component.mjs +5 -3
  6. package/esm2022/lib/c3-file-viewer/components/public/c3-file-viewer/c3-file-viewer.component.mjs +5 -3
  7. package/esm2022/lib/c3-file-viewer/components/public/c3-file-viewer-dialog/c3-file-viewer-dialog.component.mjs +1 -1
  8. package/esm2022/lib/c3-file-viewer/models/file-viewer.mjs +6 -3
  9. package/esm2022/lib/c3-prevent-event/c3-prevent-click-event.directive.mjs +28 -0
  10. package/esm2022/lib/c3-prevent-event/c3-prevent-keyboard-event.directive.mjs +41 -0
  11. package/esm2022/lib/c3-prevent-event/c3-stop-click-propagation.directive.mjs +20 -0
  12. package/esm2022/lib/c3-prevent-event/index.mjs +4 -0
  13. package/esm2022/lib/c3-trace-card/components/c3-trace-card/c3-trace-card.component.mjs +2 -2
  14. package/esm2022/public-api.mjs +5 -1
  15. package/fesm2022/c3-components.mjs +175 -35
  16. package/fesm2022/c3-components.mjs.map +1 -1
  17. package/lib/c3-dialog/c3-dialog.module.d.ts +13 -12
  18. package/lib/c3-dialog/components/c3-dialog-alert.component.d.ts +15 -0
  19. package/lib/c3-dialog/services/c3-dialog.service.d.ts +2 -0
  20. package/lib/c3-file-displayer/c3-file-display-card/c3-file-display-card.component.d.ts +4 -4
  21. package/lib/c3-file-displayer/c3-file-display-list/c3-file-display-list.component.d.ts +1 -1
  22. package/lib/c3-file-viewer/models/file-viewer.d.ts +1 -0
  23. package/lib/c3-prevent-event/c3-prevent-click-event.directive.d.ts +13 -0
  24. package/lib/c3-prevent-event/c3-prevent-keyboard-event.directive.d.ts +17 -0
  25. package/lib/c3-prevent-event/c3-stop-click-propagation.directive.d.ts +6 -0
  26. package/lib/c3-prevent-event/index.d.ts +3 -0
  27. package/lib/c3-trace-card/components/c3-trace-card/c3-trace-card.component.scss +3 -2
  28. package/package.json +1 -1
  29. package/public-api.d.ts +4 -0
@@ -0,0 +1,28 @@
1
+ import { Directive, HostListener } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * A directive that prevents the default action and stops event propagation on click events.
5
+ */
6
+ export class C3PreventClickDirective {
7
+ /**
8
+ * HostListener for the 'click' event.
9
+ * @param {MouseEvent} event - The MouseEvent object representing the click event.
10
+ */
11
+ onClick(event) {
12
+ event.preventDefault();
13
+ event.stopPropagation();
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3PreventClickDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
16
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: C3PreventClickDirective, isStandalone: true, selector: "[c3-prevent-click]", host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); }
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3PreventClickDirective, decorators: [{
19
+ type: Directive,
20
+ args: [{
21
+ selector: '[c3-prevent-click]',
22
+ standalone: true,
23
+ }]
24
+ }], propDecorators: { onClick: [{
25
+ type: HostListener,
26
+ args: ['click', ['$event']]
27
+ }] } });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtcHJldmVudC1jbGljay1ldmVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jMy1jb21wb25lbnRzL3NyYy9saWIvYzMtcHJldmVudC1ldmVudC9jMy1wcmV2ZW50LWNsaWNrLWV2ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFDeEQ7O0dBRUc7QUFLSCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDOzs7T0FHRztJQUVJLE9BQU8sQ0FBQyxLQUFpQjtRQUM5QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7OEdBVFUsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhCQU9RLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuLyoqXG4gKiBBIGRpcmVjdGl2ZSB0aGF0IHByZXZlbnRzIHRoZSBkZWZhdWx0IGFjdGlvbiBhbmQgc3RvcHMgZXZlbnQgcHJvcGFnYXRpb24gb24gY2xpY2sgZXZlbnRzLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYzMtcHJldmVudC1jbGlja10nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBDM1ByZXZlbnRDbGlja0RpcmVjdGl2ZSB7XG4gIC8qKlxuICAgKiBIb3N0TGlzdGVuZXIgZm9yIHRoZSAnY2xpY2snIGV2ZW50LlxuICAgKiBAcGFyYW0ge01vdXNlRXZlbnR9IGV2ZW50IC0gVGhlIE1vdXNlRXZlbnQgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgY2xpY2sgZXZlbnQuXG4gICAqL1xuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,41 @@
1
+ import { Directive, HostListener, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * A directive that prevents the default action and stops event propagation on specified keyboard events.
5
+ */
6
+ export class C3PreventKeyboardEventDirective {
7
+ constructor() {
8
+ /**
9
+ * The keyboard key to prevent the default action and stop event propagation for. Defaults to 'enter'.
10
+ */
11
+ this.key = 'enter';
12
+ }
13
+ /**
14
+ * HostListener for the 'keydown' event.
15
+ * @param {KeyboardEvent} event - The KeyboardEvent object representing the keydown event.
16
+ */
17
+ onKeyDown(event) {
18
+ // Check if the key pressed matches the input key.
19
+ if (event.key?.toLocaleLowerCase() === this.key.toLocaleLowerCase()) {
20
+ // Prevent the default action associated with the event.
21
+ event.preventDefault();
22
+ // Stop the event from bubbling up the event chain.
23
+ event.stopPropagation();
24
+ }
25
+ }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3PreventKeyboardEventDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
27
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: C3PreventKeyboardEventDirective, isStandalone: true, selector: "[c3-prevent-keyboard-event]", inputs: { key: "key" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, ngImport: i0 }); }
28
+ }
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3PreventKeyboardEventDirective, decorators: [{
30
+ type: Directive,
31
+ args: [{
32
+ selector: '[c3-prevent-keyboard-event]',
33
+ standalone: true,
34
+ }]
35
+ }], propDecorators: { key: [{
36
+ type: Input
37
+ }], onKeyDown: [{
38
+ type: HostListener,
39
+ args: ['keydown', ['$event']]
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtcHJldmVudC1rZXlib2FyZC1ldmVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jMy1jb21wb25lbnRzL3NyYy9saWIvYzMtcHJldmVudC1ldmVudC9jMy1wcmV2ZW50LWtleWJvYXJkLWV2ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRS9EOztHQUVHO0FBS0gsTUFBTSxPQUFPLCtCQUErQjtJQUo1QztRQUtFOztXQUVHO1FBQ00sUUFBRyxHQUFHLE9BQU8sQ0FBQztLQWdCeEI7SUFkQzs7O09BR0c7SUFFSSxTQUFTLENBQUMsS0FBb0I7UUFDbkMsa0RBQWtEO1FBQ2xELElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsRUFBRSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDO1lBQ3BFLHdEQUF3RDtZQUN4RCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsbURBQW1EO1lBQ25ELEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQzs4R0FuQlUsK0JBQStCO2tHQUEvQiwrQkFBK0I7OzJGQUEvQiwrQkFBK0I7a0JBSjNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhCQUtVLEdBQUc7c0JBQVgsS0FBSztnQkFPQyxTQUFTO3NCQURmLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQSBkaXJlY3RpdmUgdGhhdCBwcmV2ZW50cyB0aGUgZGVmYXVsdCBhY3Rpb24gYW5kIHN0b3BzIGV2ZW50IHByb3BhZ2F0aW9uIG9uIHNwZWNpZmllZCBrZXlib2FyZCBldmVudHMuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjMy1wcmV2ZW50LWtleWJvYXJkLWV2ZW50XScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEMzUHJldmVudEtleWJvYXJkRXZlbnREaXJlY3RpdmUge1xuICAvKipcbiAgICogVGhlIGtleWJvYXJkIGtleSB0byBwcmV2ZW50IHRoZSBkZWZhdWx0IGFjdGlvbiBhbmQgc3RvcCBldmVudCBwcm9wYWdhdGlvbiBmb3IuIERlZmF1bHRzIHRvICdlbnRlcicuXG4gICAqL1xuICBASW5wdXQoKSBrZXkgPSAnZW50ZXInO1xuXG4gIC8qKlxuICAgKiBIb3N0TGlzdGVuZXIgZm9yIHRoZSAna2V5ZG93bicgZXZlbnQuXG4gICAqIEBwYXJhbSB7S2V5Ym9hcmRFdmVudH0gZXZlbnQgLSBUaGUgS2V5Ym9hcmRFdmVudCBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBrZXlkb3duIGV2ZW50LlxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAvLyBDaGVjayBpZiB0aGUga2V5IHByZXNzZWQgbWF0Y2hlcyB0aGUgaW5wdXQga2V5LlxuICAgIGlmIChldmVudC5rZXk/LnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09IHRoaXMua2V5LnRvTG9jYWxlTG93ZXJDYXNlKCkpIHtcbiAgICAgIC8vIFByZXZlbnQgdGhlIGRlZmF1bHQgYWN0aW9uIGFzc29jaWF0ZWQgd2l0aCB0aGUgZXZlbnQuXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgLy8gU3RvcCB0aGUgZXZlbnQgZnJvbSBidWJibGluZyB1cCB0aGUgZXZlbnQgY2hhaW4uXG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { Directive, HostListener } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class C3StopPropagationDirective {
4
+ onClick(event) {
5
+ event.stopImmediatePropagation();
6
+ }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3StopPropagationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
8
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: C3StopPropagationDirective, isStandalone: true, selector: "[c3-stop-click-propagation]", host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3StopPropagationDirective, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: '[c3-stop-click-propagation]',
14
+ standalone: true,
15
+ }]
16
+ }], propDecorators: { onClick: [{
17
+ type: HostListener,
18
+ args: ['click', ['$event']]
19
+ }] } });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtc3RvcC1jbGljay1wcm9wYWdhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jMy1jb21wb25lbnRzL3NyYy9saWIvYzMtcHJldmVudC1ldmVudC9jMy1zdG9wLWNsaWNrLXByb3BhZ2F0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNeEQsTUFBTSxPQUFPLDBCQUEwQjtJQUU5QixPQUFPLENBQUMsS0FBaUI7UUFDOUIsS0FBSyxDQUFDLHdCQUF3QixFQUFFLENBQUM7SUFDbkMsQ0FBQzs4R0FKVSwwQkFBMEI7a0dBQTFCLDBCQUEwQjs7MkZBQTFCLDBCQUEwQjtrQkFKdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNkJBQTZCO29CQUN2QyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7OEJBR1EsT0FBTztzQkFEYixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjMy1zdG9wLWNsaWNrLXByb3BhZ2F0aW9uXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEMzU3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlIHtcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './c3-prevent-click-event.directive';
2
+ export * from './c3-prevent-keyboard-event.directive';
3
+ export * from './c3-stop-click-propagation.directive';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jMy1jb21wb25lbnRzL3NyYy9saWIvYzMtcHJldmVudC1ldmVudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx1Q0FBdUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYzMtcHJldmVudC1jbGljay1ldmVudC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9jMy1wcmV2ZW50LWtleWJvYXJkLWV2ZW50LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2MzLXN0b3AtY2xpY2stcHJvcGFnYXRpb24uZGlyZWN0aXZlJztcbiJdfQ==
@@ -11,13 +11,13 @@ export class C3TraceCardComponent {
11
11
  return this.align() === 'right';
12
12
  }
13
13
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3TraceCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.1", type: C3TraceCardComponent, selector: "c3-trace-card", host: { properties: { "class.align-left": "this.alignLeft", "class.align-right": "this.alignRight" }, classAttribute: "c3-trace-card" }, ngImport: i0, template: "<div class=\"content\">\n <div class=\"horizontal-line\"></div>\n <ng-content select=\"c3-trace-card-content\"></ng-content>\n</div>\n\n<ng-content select=\"c3-trace-card-title\"></ng-content>\n\n", styles: [".c3-trace-card{display:flex;flex-direction:row;justify-content:space-between;align-items:start;font-size:14px}.c3-trace-card.align-right{flex-direction:row-reverse}.c3-trace-card c3-trace-card-title{padding:.5rem 1rem;font-size:1.5rem;line-height:2rem;border:#e0e0e0 solid 1px;border-radius:1rem;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.c3-trace-card .content{display:flex;flex-direction:column;flex-grow:1}.c3-trace-card .content .horizontal-line{margin-top:25px;height:1px;background-color:#e0e0e0}\n"], encapsulation: i0.ViewEncapsulation.None }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.1", type: C3TraceCardComponent, selector: "c3-trace-card", host: { properties: { "class.align-left": "this.alignLeft", "class.align-right": "this.alignRight" }, classAttribute: "c3-trace-card" }, ngImport: i0, template: "<div class=\"content\">\n <div class=\"horizontal-line\"></div>\n <ng-content select=\"c3-trace-card-content\"></ng-content>\n</div>\n\n<ng-content select=\"c3-trace-card-title\"></ng-content>\n\n", styles: [".c3-trace-card{--c3-trace-card-border-color: rgba(0, 0, 0, .12);display:flex;flex-direction:row;justify-content:space-between;align-items:start;font-size:14px}.c3-trace-card.align-right{flex-direction:row-reverse}.c3-trace-card c3-trace-card-title{padding:.5rem 1rem;font-size:1.5rem;line-height:2rem;border:var(--c3-trace-card-border-color) solid 1px;border-radius:1rem;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.c3-trace-card .content{display:flex;flex-direction:column;flex-grow:1}.c3-trace-card .content .horizontal-line{margin-top:25px;height:1px;background-color:var(--c3-trace-card-border-color)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
15
15
  }
16
16
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3TraceCardComponent, decorators: [{
17
17
  type: Component,
18
18
  args: [{ selector: 'c3-trace-card', encapsulation: ViewEncapsulation.None, host: {
19
19
  class: 'c3-trace-card',
20
- }, template: "<div class=\"content\">\n <div class=\"horizontal-line\"></div>\n <ng-content select=\"c3-trace-card-content\"></ng-content>\n</div>\n\n<ng-content select=\"c3-trace-card-title\"></ng-content>\n\n", styles: [".c3-trace-card{display:flex;flex-direction:row;justify-content:space-between;align-items:start;font-size:14px}.c3-trace-card.align-right{flex-direction:row-reverse}.c3-trace-card c3-trace-card-title{padding:.5rem 1rem;font-size:1.5rem;line-height:2rem;border:#e0e0e0 solid 1px;border-radius:1rem;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.c3-trace-card .content{display:flex;flex-direction:column;flex-grow:1}.c3-trace-card .content .horizontal-line{margin-top:25px;height:1px;background-color:#e0e0e0}\n"] }]
20
+ }, template: "<div class=\"content\">\n <div class=\"horizontal-line\"></div>\n <ng-content select=\"c3-trace-card-content\"></ng-content>\n</div>\n\n<ng-content select=\"c3-trace-card-title\"></ng-content>\n\n", styles: [".c3-trace-card{--c3-trace-card-border-color: rgba(0, 0, 0, .12);display:flex;flex-direction:row;justify-content:space-between;align-items:start;font-size:14px}.c3-trace-card.align-right{flex-direction:row-reverse}.c3-trace-card c3-trace-card-title{padding:.5rem 1rem;font-size:1.5rem;line-height:2rem;border:var(--c3-trace-card-border-color) solid 1px;border-radius:1rem;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.c3-trace-card .content{display:flex;flex-direction:column;flex-grow:1}.c3-trace-card .content .horizontal-line{margin-top:25px;height:1px;background-color:var(--c3-trace-card-border-color)}\n"] }]
21
21
  }], propDecorators: { alignLeft: [{
22
22
  type: HostBinding,
23
23
  args: ['class.align-left']
@@ -78,4 +78,8 @@ export * from './lib/c3-trace-card/components/c3-trace-card-content/c3-trace-car
78
78
  export * from './lib/c3-trace-card/components/c3-trace-card-title/c3-trace-card-title.component';
79
79
  export * from './lib/c3-trace-card/directives/align-left.directive';
80
80
  export * from './lib/c3-trace-card/directives/align-right.directive';
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2MzLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHlDQUF5QyxDQUFDO0FBRXhEOztHQUVHO0FBQ0gsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsc0NBQXNDLENBQUM7QUFFckQ7O0dBRUc7QUFDSCxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsa0NBQWtDLENBQUM7QUFFakQ7O0dBRUc7QUFDSCxjQUFjLGdGQUFnRixDQUFDO0FBQy9GLGNBQWMsOEZBQThGLENBQUM7QUFDN0csY0FBYyxvRkFBb0YsQ0FBQztBQUNuRyxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw0Q0FBNEMsQ0FBQztBQUUzRDs7R0FFRztBQUNILGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyw2RUFBNkUsQ0FBQztBQUM1RixjQUFjLDZFQUE2RSxDQUFDO0FBQzVGLGNBQWMsNkVBQTZFLENBQUM7QUFDNUYsY0FBYyw2RUFBNkUsQ0FBQztBQUU1Rjs7R0FFRztBQUNILGNBQWMsMENBQTBDLENBQUM7QUFFekQ7O0dBRUc7QUFDSCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsbUVBQW1FLENBQUM7QUFDbEYsY0FBYyxpRkFBaUYsQ0FBQztBQUVoRzs7R0FFRztBQUNILGNBQWMsaURBQWlELENBQUM7QUFFaEU7O0dBRUc7QUFDSCxjQUFjLHVEQUF1RCxDQUFDO0FBRXRFOztHQUVHO0FBQ0gsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRDs7R0FFRztBQUNILGNBQWMsaUNBQWlDLENBQUM7QUFFaEQ7O0dBRUc7QUFDSCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsNEVBQTRFLENBQUM7QUFDM0YsY0FBYyxzRkFBc0YsQ0FBQztBQUNyRyxjQUFjLHNHQUFzRyxDQUFDO0FBRXJIOztHQUVHO0FBQ0gsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsc0ZBQXNGLENBQUM7QUFDckcsY0FBYyxrRkFBa0YsQ0FBQztBQUNqRyxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsc0RBQXNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGMzLWNvbXBvbmVudHNcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLXZpZXdlci9tb2RlbHMvaHR0cC5jbGllbnQnO1xuXG4vKipcbiAqIERyb3Bkb3duXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWRyb3Bkb3duL2NvbXBvbmVudHMvYzMtZHJvcGRvd24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWRyb3Bkb3duL2RpcmVjdGl2ZXMvYzMtZHJvcGRvd24udHJpZ2dlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1kcm9wZG93bi9jMy1kcm9wZG93bi5tb2R1bGUnO1xuXG4vKipcbiAqIERpYWxvZ1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1kaWFsb2cvY29tcG9uZW50cy9jMy1kaWFsb2ctY29uZmlybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZGlhbG9nL2NvbXBvbmVudHMvYzMtZGlhbG9nLXByb21wdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZGlhbG9nL2NvbXBvbmVudHMvYzMtZGlhbG9nLWVtYmVkLWNoaWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1kaWFsb2cvc2VydmljZXMvYzMtZGlhbG9nLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZGlhbG9nL2MzLWRpYWxvZy5tb2R1bGUnO1xuXG4vKipcbiAqIEZpbGUgVmlld2VyXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWZpbGUtdmlld2VyL2NvbXBvbmVudHMvcHVibGljL2MzLWZpbGUtdmlld2VyL2MzLWZpbGUtdmlld2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLXZpZXdlci9jb21wb25lbnRzL3B1YmxpYy9jMy1maWxlLXZpZXdlci1kaWFsb2cvYzMtZmlsZS12aWV3ZXItZGlhbG9nLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLXZpZXdlci9jb21wb25lbnRzL3B1YmxpYy9jMy1maWxlLXZpZXdlci1kaWFsb2cvYzMtZmlsZS12aWV3ZXItZGlhbG9nJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWZpbGUtdmlld2VyL2RpcmVjdGl2ZXMvZnVsbC1zY3JlZW4uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWZpbGUtdmlld2VyL21vZGVscy9jdXN0b20tZmlsZS1ldmVudC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLXZpZXdlci9tb2RlbHMvZmlsZS12aWV3ZXItY29uZmlnLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWZpbGUtdmlld2VyL21vZGVscy9maWxlLXZpZXdlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLXZpZXdlci9tb2RlbHMvZmlsZS1tZXRhZGF0YSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLXZpZXdlci9jMy1maWxlLXZpZXdlci5tb2R1bGUnO1xuXG4vKipcbiAqIEZpbGUgRGlzcGxheWVyXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWZpbGUtZGlzcGxheWVyL2MzLWZpbGUtZGlzcGxheWVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLWRpc3BsYXllci9jMy1maWxlLWRpc3BsYXktbGlzdC9jMy1maWxlLWRpc3BsYXktbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmlsZS1kaXNwbGF5ZXIvYzMtZmlsZS1kaXNwbGF5LWljb24vYzMtZmlsZS1kaXNwbGF5LWljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWZpbGUtZGlzcGxheWVyL2MzLWZpbGUtZGlzcGxheS1ncmlkL2MzLWZpbGUtZGlzcGxheS1ncmlkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLWRpc3BsYXllci9jMy1maWxlLWRpc3BsYXktY2FyZC9jMy1maWxlLWRpc3BsYXktY2FyZC5jb21wb25lbnQnO1xuXG4vKipcbiAqIFNhZmUgVXJsXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLXNhZmUtdXJsL3BpcGVzL2MzLXNhZmUtdXJsLnBpcGUnO1xuXG4vKipcbiAqIEV4cGFuc2lvblxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1leHBhbnNpb24vYzMtZXhwYW5zaW9uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1leHBhbnNpb24vY29tcG9uZW50cy9jMy1leHBhbnNpb24vYzMtZXhwYW5zaW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1leHBhbnNpb24vY29tcG9uZW50cy9jMy1leHBhbnNpb24taGVhZGVyL2MzLWV4cGFuc2lvbi1oZWFkZXIuY29tcG9uZW50JztcblxuLyoqXG4gKiBBdXRvIEFuaW1hdGVcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtYXV0by1hbmltYXRlL2MzLWF1dG8tYW5pbWF0ZS5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIFNlbGVjdCBvbiBGb2N1c1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1zZWxlY3Qtb24tZm9jdXMvYzMtc2VsZWN0LW9uLWZvY3VzLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogVG9nZ2xlIFNpZ25hbFxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1zaWduYWxzL2MzLWJvb2xlYW4tc2lnbmFsJztcblxuLyoqXG4gKiBDMyBUcmVlXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLXRyZWUvYzMtdHJlZS5jb21wb25lbnQnO1xuXG4vKipcbiAqIEMzIGZsb3dpbmcgbWVudVxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1mbG93aW5nLW1lbnUvYzMtZmxvd2luZy1tZW51Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1mbG93aW5nLW1lbnUvY29tcG9uZW50cy9jMy1mbG93aW5nLW1lbnUvYzMtZmxvd2luZy1tZW51LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1mbG93aW5nLW1lbnUvY29tcG9uZW50cy9jMy1mbG93aW5nLW1lbnUtaXRlbS9jMy1mbG93aW5nLW1lbnUtaXRlbS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmxvd2luZy1tZW51L2NvbXBvbmVudHMvYzMtZmxvd2luZy1tZW51LWl0ZW0tY29udGVudC9jMy1mbG93aW5nLW1lbnUtaXRlbS1jb250ZW50LmNvbXBvbmVudCc7XG5cbi8qKlxuICogQzMgVHJhY2UgQ2FyZFxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy10cmFjZS1jYXJkL2MzLXRyYWNlLWNhcmQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLXRyYWNlLWNhcmQvY29tcG9uZW50cy9jMy10cmFjZS1jYXJkL2MzLXRyYWNlLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLXRyYWNlLWNhcmQvY29tcG9uZW50cy9jMy10cmFjZS1jYXJkLWNvbnRlbnQvYzMtdHJhY2UtY2FyZC1jb250ZW50LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy10cmFjZS1jYXJkL2NvbXBvbmVudHMvYzMtdHJhY2UtY2FyZC10aXRsZS9jMy10cmFjZS1jYXJkLXRpdGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy10cmFjZS1jYXJkL2RpcmVjdGl2ZXMvYWxpZ24tbGVmdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtdHJhY2UtY2FyZC9kaXJlY3RpdmVzL2FsaWduLXJpZ2h0LmRpcmVjdGl2ZSc7XG4iXX0=
81
+ /**
82
+ * C3 Prevent Event
83
+ */
84
+ export * from './lib/c3-prevent-event/index';
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2MzLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHlDQUF5QyxDQUFDO0FBRXhEOztHQUVHO0FBQ0gsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsc0NBQXNDLENBQUM7QUFFckQ7O0dBRUc7QUFDSCxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsa0NBQWtDLENBQUM7QUFFakQ7O0dBRUc7QUFDSCxjQUFjLGdGQUFnRixDQUFDO0FBQy9GLGNBQWMsOEZBQThGLENBQUM7QUFDN0csY0FBYyxvRkFBb0YsQ0FBQztBQUNuRyxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw0Q0FBNEMsQ0FBQztBQUUzRDs7R0FFRztBQUNILGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyw2RUFBNkUsQ0FBQztBQUM1RixjQUFjLDZFQUE2RSxDQUFDO0FBQzVGLGNBQWMsNkVBQTZFLENBQUM7QUFDNUYsY0FBYyw2RUFBNkUsQ0FBQztBQUU1Rjs7R0FFRztBQUNILGNBQWMsMENBQTBDLENBQUM7QUFFekQ7O0dBRUc7QUFDSCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsbUVBQW1FLENBQUM7QUFDbEYsY0FBYyxpRkFBaUYsQ0FBQztBQUVoRzs7R0FFRztBQUNILGNBQWMsaURBQWlELENBQUM7QUFFaEU7O0dBRUc7QUFDSCxjQUFjLHVEQUF1RCxDQUFDO0FBRXRFOztHQUVHO0FBQ0gsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRDs7R0FFRztBQUNILGNBQWMsaUNBQWlDLENBQUM7QUFFaEQ7O0dBRUc7QUFDSCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsNEVBQTRFLENBQUM7QUFDM0YsY0FBYyxzRkFBc0YsQ0FBQztBQUNyRyxjQUFjLHNHQUFzRyxDQUFDO0FBRXJIOztHQUVHO0FBQ0gsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsc0ZBQXNGLENBQUM7QUFDckcsY0FBYyxrRkFBa0YsQ0FBQztBQUNqRyxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsc0RBQXNELENBQUM7QUFFckU7O0dBRUc7QUFDSCxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBjMy1jb21wb25lbnRzXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmlsZS12aWV3ZXIvbW9kZWxzL2h0dHAuY2xpZW50JztcblxuLyoqXG4gKiBEcm9wZG93blxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1kcm9wZG93bi9jb21wb25lbnRzL2MzLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1kcm9wZG93bi9kaXJlY3RpdmVzL2MzLWRyb3Bkb3duLnRyaWdnZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZHJvcGRvd24vYzMtZHJvcGRvd24ubW9kdWxlJztcblxuLyoqXG4gKiBEaWFsb2dcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZGlhbG9nL2NvbXBvbmVudHMvYzMtZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWRpYWxvZy9jb21wb25lbnRzL2MzLWRpYWxvZy1wcm9tcHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWRpYWxvZy9jb21wb25lbnRzL2MzLWRpYWxvZy1lbWJlZC1jaGlsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZGlhbG9nL3NlcnZpY2VzL2MzLWRpYWxvZy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWRpYWxvZy9jMy1kaWFsb2cubW9kdWxlJztcblxuLyoqXG4gKiBGaWxlIFZpZXdlclxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLXZpZXdlci9jb21wb25lbnRzL3B1YmxpYy9jMy1maWxlLXZpZXdlci9jMy1maWxlLXZpZXdlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmlsZS12aWV3ZXIvY29tcG9uZW50cy9wdWJsaWMvYzMtZmlsZS12aWV3ZXItZGlhbG9nL2MzLWZpbGUtdmlld2VyLWRpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmlsZS12aWV3ZXIvY29tcG9uZW50cy9wdWJsaWMvYzMtZmlsZS12aWV3ZXItZGlhbG9nL2MzLWZpbGUtdmlld2VyLWRpYWxvZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLXZpZXdlci9kaXJlY3RpdmVzL2Z1bGwtc2NyZWVuLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLXZpZXdlci9tb2RlbHMvY3VzdG9tLWZpbGUtZXZlbnQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmlsZS12aWV3ZXIvbW9kZWxzL2ZpbGUtdmlld2VyLWNvbmZpZy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLXZpZXdlci9tb2RlbHMvZmlsZS12aWV3ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmlsZS12aWV3ZXIvbW9kZWxzL2ZpbGUtbWV0YWRhdGEnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmlsZS12aWV3ZXIvYzMtZmlsZS12aWV3ZXIubW9kdWxlJztcblxuLyoqXG4gKiBGaWxlIERpc3BsYXllclxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLWRpc3BsYXllci9jMy1maWxlLWRpc3BsYXllci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmlsZS1kaXNwbGF5ZXIvYzMtZmlsZS1kaXNwbGF5LWxpc3QvYzMtZmlsZS1kaXNwbGF5LWxpc3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWZpbGUtZGlzcGxheWVyL2MzLWZpbGUtZGlzcGxheS1pY29uL2MzLWZpbGUtZGlzcGxheS1pY29uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1maWxlLWRpc3BsYXllci9jMy1maWxlLWRpc3BsYXktZ3JpZC9jMy1maWxlLWRpc3BsYXktZ3JpZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmlsZS1kaXNwbGF5ZXIvYzMtZmlsZS1kaXNwbGF5LWNhcmQvYzMtZmlsZS1kaXNwbGF5LWNhcmQuY29tcG9uZW50JztcblxuLyoqXG4gKiBTYWZlIFVybFxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy1zYWZlLXVybC9waXBlcy9jMy1zYWZlLXVybC5waXBlJztcblxuLyoqXG4gKiBFeHBhbnNpb25cbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZXhwYW5zaW9uL2MzLWV4cGFuc2lvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZXhwYW5zaW9uL2NvbXBvbmVudHMvYzMtZXhwYW5zaW9uL2MzLWV4cGFuc2lvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZXhwYW5zaW9uL2NvbXBvbmVudHMvYzMtZXhwYW5zaW9uLWhlYWRlci9jMy1leHBhbnNpb24taGVhZGVyLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQXV0byBBbmltYXRlXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWF1dG8tYW5pbWF0ZS9jMy1hdXRvLWFuaW1hdGUuZGlyZWN0aXZlJztcblxuLyoqXG4gKiBTZWxlY3Qgb24gRm9jdXNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtc2VsZWN0LW9uLWZvY3VzL2MzLXNlbGVjdC1vbi1mb2N1cy5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIFRvZ2dsZSBTaWduYWxcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtc2lnbmFscy9jMy1ib29sZWFuLXNpZ25hbCc7XG5cbi8qKlxuICogQzMgVHJlZVxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy10cmVlL2MzLXRyZWUuY29tcG9uZW50JztcblxuLyoqXG4gKiBDMyBmbG93aW5nIG1lbnVcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmxvd2luZy1tZW51L2MzLWZsb3dpbmctbWVudS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmxvd2luZy1tZW51L2NvbXBvbmVudHMvYzMtZmxvd2luZy1tZW51L2MzLWZsb3dpbmctbWVudS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtZmxvd2luZy1tZW51L2NvbXBvbmVudHMvYzMtZmxvd2luZy1tZW51LWl0ZW0vYzMtZmxvd2luZy1tZW51LWl0ZW0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLWZsb3dpbmctbWVudS9jb21wb25lbnRzL2MzLWZsb3dpbmctbWVudS1pdGVtLWNvbnRlbnQvYzMtZmxvd2luZy1tZW51LWl0ZW0tY29udGVudC5jb21wb25lbnQnO1xuXG4vKipcbiAqIEMzIFRyYWNlIENhcmRcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtdHJhY2UtY2FyZC9jMy10cmFjZS1jYXJkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy10cmFjZS1jYXJkL2NvbXBvbmVudHMvYzMtdHJhY2UtY2FyZC9jMy10cmFjZS1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jMy10cmFjZS1jYXJkL2NvbXBvbmVudHMvYzMtdHJhY2UtY2FyZC1jb250ZW50L2MzLXRyYWNlLWNhcmQtY29udGVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtdHJhY2UtY2FyZC9jb21wb25lbnRzL2MzLXRyYWNlLWNhcmQtdGl0bGUvYzMtdHJhY2UtY2FyZC10aXRsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtdHJhY2UtY2FyZC9kaXJlY3RpdmVzL2FsaWduLWxlZnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2MzLXRyYWNlLWNhcmQvZGlyZWN0aXZlcy9hbGlnbi1yaWdodC5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIEMzIFByZXZlbnQgRXZlbnRcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYzMtcHJldmVudC1ldmVudC9pbmRleCc7XG4iXX0=
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { TemplateRef, Component, ViewChild, Input, forwardRef, Directive, HostListener, NgModule, Inject, signal, ViewContainerRef, inject, Injector, effect, Injectable, Pipe, EventEmitter, Output, ViewEncapsulation, Optional, input, output, viewChild, computed, HostBinding, model, ElementRef, contentChild, contentChildren } from '@angular/core';
2
+ import { TemplateRef, Component, ViewChild, Input, forwardRef, Directive, HostListener, NgModule, Inject, signal, ViewContainerRef, inject, Injector, effect, Injectable, Pipe, EventEmitter, Output, ViewEncapsulation, Optional, input, output, computed, viewChild, HostBinding, model, ElementRef, contentChild, contentChildren } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import * as i2$1 from '@angular/forms';
@@ -8,7 +8,7 @@ import * as i1$1 from '@angular/cdk/overlay';
8
8
  import { OverlayConfig, OverlayModule } from '@angular/cdk/overlay';
9
9
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
10
10
  import { TemplatePortal } from '@angular/cdk/portal';
11
- import { Subscription, Subject, merge, takeUntil, BehaviorSubject, filter, skip, debounceTime, mergeMap, tap, map } from 'rxjs';
11
+ import { Subscription, Subject, merge, takeUntil, BehaviorSubject, filter, skip, debounceTime, mergeMap, tap, of, map } from 'rxjs';
12
12
  import * as i1$2 from '@angular/material/dialog';
13
13
  import { MAT_DIALOG_DATA, MatDialog, MatDialogModule } from '@angular/material/dialog';
14
14
  import * as i2 from '@angular/material/button';
@@ -432,6 +432,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
432
432
  args: ['target', { read: ViewContainerRef }]
433
433
  }] } });
434
434
 
435
+ class C3AlertDialogComponent {
436
+ constructor(dialogRef, data) {
437
+ this.dialogRef = dialogRef;
438
+ this.data = data;
439
+ }
440
+ onNoClick() {
441
+ this.dialogRef.close();
442
+ }
443
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3AlertDialogComponent, deps: [{ token: i1$2.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
444
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.1", type: C3AlertDialogComponent, selector: "AlertDialogComponent", ngImport: i0, template: `
445
+ <mat-dialog-content>
446
+ <div [innerHtml]="data.text"></div>
447
+ </mat-dialog-content>
448
+ <mat-dialog-actions>
449
+ <button mat-button [mat-dialog-close]="true">
450
+ {{ data.acceptText || 'ok' }}
451
+ </button>
452
+ </mat-dialog-actions>
453
+ `, isInline: true, dependencies: [{ kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i1$2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] }); }
454
+ }
455
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3AlertDialogComponent, decorators: [{
456
+ type: Component,
457
+ args: [{
458
+ selector: 'AlertDialogComponent',
459
+ template: `
460
+ <mat-dialog-content>
461
+ <div [innerHtml]="data.text"></div>
462
+ </mat-dialog-content>
463
+ <mat-dialog-actions>
464
+ <button mat-button [mat-dialog-close]="true">
465
+ {{ data.acceptText || 'ok' }}
466
+ </button>
467
+ </mat-dialog-actions>
468
+ `,
469
+ }]
470
+ }], ctorParameters: () => [{ type: i1$2.MatDialogRef }, { type: undefined, decorators: [{
471
+ type: Inject,
472
+ args: [MAT_DIALOG_DATA]
473
+ }] }] });
474
+
435
475
  class C3DialogService {
436
476
  constructor() {
437
477
  this.#dialog = inject(MatDialog);
@@ -527,6 +567,15 @@ class C3DialogService {
527
567
  });
528
568
  return this.createC3DialogResult(dialog);
529
569
  }
570
+ alert(text, data) {
571
+ const dialogRef = this.#dialog.open(C3AlertDialogComponent, {
572
+ data: {
573
+ ...data,
574
+ text,
575
+ },
576
+ });
577
+ return dialogRef.afterClosed();
578
+ }
530
579
  createC3DialogResult(dialog) {
531
580
  const _afterComponentMounted = new Subject();
532
581
  const result = {
@@ -574,7 +623,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
574
623
 
575
624
  class C3DialogModule {
576
625
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
577
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.1", ngImport: i0, type: C3DialogModule, declarations: [ConfirmDialogComponent,
626
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.1", ngImport: i0, type: C3DialogModule, declarations: [C3AlertDialogComponent,
627
+ ConfirmDialogComponent,
578
628
  C3PromptDialogComponent,
579
629
  C3DialogEmbedChildComponent], imports: [CommonModule,
580
630
  FormsModule,
@@ -599,6 +649,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
599
649
  type: NgModule,
600
650
  args: [{
601
651
  declarations: [
652
+ C3AlertDialogComponent,
602
653
  ConfirmDialogComponent,
603
654
  C3PromptDialogComponent,
604
655
  C3DialogEmbedChildComponent,
@@ -798,10 +849,12 @@ class C3FileViewerComponent {
798
849
  });
799
850
  }
800
851
  onMouseOver() {
801
- this.fileViewer.hovered = true;
852
+ if (this.fileViewer)
853
+ this.fileViewer.hovered = true;
802
854
  }
803
855
  onMouseLeave() {
804
- this.fileViewer.hovered = false;
856
+ if (this.fileViewer)
857
+ this.fileViewer.hovered = false;
805
858
  }
806
859
  ngOnChanges(changes) {
807
860
  if (changes['screenHeightOccupied'] && this.fileViewer)
@@ -951,6 +1004,7 @@ class C3FileViewer {
951
1004
  this.hovered = false;
952
1005
  this._files = [];
953
1006
  this.filesObjectUrl = [];
1007
+ this.locationBlobMap = new Map();
954
1008
  this.scale = 1;
955
1009
  this.rotation = 0;
956
1010
  this.translateX = 0;
@@ -977,7 +1031,9 @@ class C3FileViewer {
977
1031
  }
978
1032
  createObjectURL(file) {
979
1033
  this.onLoadStart(file);
980
- return this.getFile(file.location).pipe(map((response) => URL.createObjectURL(response)), tap(() => this.onLoad(file)));
1034
+ return of(file.location).pipe(mergeMap((location) => this.locationBlobMap.has(location)
1035
+ ? of(this.locationBlobMap.get(location))
1036
+ : this.getFile(location).pipe(map((response) => URL.createObjectURL(response)), tap((url) => this.locationBlobMap.set(location, url)))), tap(() => this.onLoad(file)));
981
1037
  }
982
1038
  getFile(location) {
983
1039
  const client = this.config.customClient || this.client;
@@ -1205,30 +1261,30 @@ class C3FileDisplayCardComponent {
1205
1261
  this.deletable = input(false);
1206
1262
  this.size = input('32');
1207
1263
  this.onDelete = output();
1208
- }
1209
- getFileType() {
1210
- const file = this.fileObjectUrl();
1211
- if (file && file.type) {
1212
- if (file.type.startsWith('image'))
1213
- return 'image';
1214
- if (file.type.startsWith('application'))
1215
- return 'application';
1216
- if (file.type.startsWith('video'))
1217
- return 'video';
1218
- }
1219
- return 'unknown';
1220
- }
1221
- getFileObjectUrl() {
1222
- const file = this.fileObjectUrl();
1223
- return file && file.objectUrl ? file.objectUrl : null;
1224
- }
1225
- getFileName() {
1226
- const file = this.fileObjectUrl();
1227
- return file ? this.displayFn()(file) : '';
1228
- }
1229
- getDisplayName() {
1230
- const file = this.fileObjectUrl();
1231
- return file ? this.displayFn()(file) : '';
1264
+ this.getFileType = computed(() => {
1265
+ const file = this.fileObjectUrl();
1266
+ if (file && file.type) {
1267
+ if (file.type.startsWith('image'))
1268
+ return 'image';
1269
+ if (file.type.startsWith('application'))
1270
+ return 'application';
1271
+ if (file.type.startsWith('video'))
1272
+ return 'video';
1273
+ }
1274
+ return 'unknown';
1275
+ });
1276
+ this.getFileObjectUrl = computed(() => {
1277
+ const file = this.fileObjectUrl();
1278
+ return file && file.objectUrl ? file.objectUrl : null;
1279
+ });
1280
+ this.getFileName = computed(() => {
1281
+ const file = this.fileObjectUrl();
1282
+ return file ? this.displayFn()(file) : '';
1283
+ });
1284
+ this.getDisplayName = computed(() => {
1285
+ const file = this.fileObjectUrl();
1286
+ return file ? this.displayFn()(file) : '';
1287
+ });
1232
1288
  }
1233
1289
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3FileDisplayCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1234
1290
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.1", type: C3FileDisplayCardComponent, isStandalone: true, selector: "c3-file-display-card", inputs: { fileObjectUrl: { classPropertyName: "fileObjectUrl", publicName: "fileObjectUrl", isSignal: true, isRequired: true, transformFunction: null }, displayFn: { classPropertyName: "displayFn", publicName: "displayFn", isSignal: true, isRequired: false, transformFunction: null }, deletable: { classPropertyName: "deletable", publicName: "deletable", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onDelete: "onDelete" }, ngImport: i0, template: "<button\n class=\"file-card border\"\n [class.size-16]=\"size() === '16'\"\n [class.size-32]=\"size() === '32'\"\n [class.size-64]=\"size() === '64'\"\n [class.size-128]=\"size() === '128'\"\n [class.size-256]=\"size() === '256'\"\n>\n @if(deletable()) {\n <div class=\"actions\">\n <button mat-icon-button color=\"red\" (click)=\"onDelete.emit()\">\n <mat-icon>delete</mat-icon>\n </button>\n </div>\n } @if(fileObjectUrl()) {\n @switch (getFileType()) { @case ('image') {\n <img\n class=\"h-full w-full object-cover\"\n [src]=\"(getFileObjectUrl() | async) || '/default-image.svg'\"\n [alt]=\"getFileName()\"\n />\n } @case ('application') {\n <mat-icon> file-pdf-box </mat-icon>\n } @case ('video') {\n <mat-icon> video </mat-icon>\n }\n }\n\n <div class=\"informations flex justify-between items-center\">\n <span class=\"text-xs text-white\">\n {{ getDisplayName() }}\n </span>\n </div>\n }\n</button>\n", styles: [":host{display:block;width:fit-content}:host .file-card{position:relative;border-radius:4px;border:1px solid #e0e0e0;overflow:hidden}:host .file-card .actions{position:absolute;top:-21px;right:-21px;z-index:1;display:none}:host .file-card img{border-radius:4px}:host .file-card:hover .actions{display:block}:host .file-card .informations{position:absolute;bottom:0;left:0;z-index:1;width:100%;background:#00000080;padding:0 4px}:host .size-16{height:4rem;width:4rem}:host .size-32{height:8rem;width:8rem}:host .size-64{height:16rem;width:16rem}:host .size-128{height:32rem;width:32rem}:host .size-256{height:64rem;width:64rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
@@ -1325,6 +1381,89 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
1325
1381
  args: [{ selector: 'c3-file-display-icon', standalone: true, imports: [CommonModule, MatIconModule], template: "<mat-icon [ngClass]=\"color()\">{{ displayedIcon() }}</mat-icon>\n", styles: [":host{display:block}:host .text-primary{color:var(--primary-color)}:host .text-secondary{color:var(--secondary-color)}:host .text-success{color:var(--success-color)}:host .text-gray{color:var(--gray-color)}\n"] }]
1326
1382
  }] });
1327
1383
 
1384
+ /**
1385
+ * A directive that prevents the default action and stops event propagation on click events.
1386
+ */
1387
+ class C3PreventClickDirective {
1388
+ /**
1389
+ * HostListener for the 'click' event.
1390
+ * @param {MouseEvent} event - The MouseEvent object representing the click event.
1391
+ */
1392
+ onClick(event) {
1393
+ event.preventDefault();
1394
+ event.stopPropagation();
1395
+ }
1396
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3PreventClickDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1397
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: C3PreventClickDirective, isStandalone: true, selector: "[c3-prevent-click]", host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); }
1398
+ }
1399
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3PreventClickDirective, decorators: [{
1400
+ type: Directive,
1401
+ args: [{
1402
+ selector: '[c3-prevent-click]',
1403
+ standalone: true,
1404
+ }]
1405
+ }], propDecorators: { onClick: [{
1406
+ type: HostListener,
1407
+ args: ['click', ['$event']]
1408
+ }] } });
1409
+
1410
+ /**
1411
+ * A directive that prevents the default action and stops event propagation on specified keyboard events.
1412
+ */
1413
+ class C3PreventKeyboardEventDirective {
1414
+ constructor() {
1415
+ /**
1416
+ * The keyboard key to prevent the default action and stop event propagation for. Defaults to 'enter'.
1417
+ */
1418
+ this.key = 'enter';
1419
+ }
1420
+ /**
1421
+ * HostListener for the 'keydown' event.
1422
+ * @param {KeyboardEvent} event - The KeyboardEvent object representing the keydown event.
1423
+ */
1424
+ onKeyDown(event) {
1425
+ // Check if the key pressed matches the input key.
1426
+ if (event.key?.toLocaleLowerCase() === this.key.toLocaleLowerCase()) {
1427
+ // Prevent the default action associated with the event.
1428
+ event.preventDefault();
1429
+ // Stop the event from bubbling up the event chain.
1430
+ event.stopPropagation();
1431
+ }
1432
+ }
1433
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3PreventKeyboardEventDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1434
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: C3PreventKeyboardEventDirective, isStandalone: true, selector: "[c3-prevent-keyboard-event]", inputs: { key: "key" }, host: { listeners: { "keydown": "onKeyDown($event)" } }, ngImport: i0 }); }
1435
+ }
1436
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3PreventKeyboardEventDirective, decorators: [{
1437
+ type: Directive,
1438
+ args: [{
1439
+ selector: '[c3-prevent-keyboard-event]',
1440
+ standalone: true,
1441
+ }]
1442
+ }], propDecorators: { key: [{
1443
+ type: Input
1444
+ }], onKeyDown: [{
1445
+ type: HostListener,
1446
+ args: ['keydown', ['$event']]
1447
+ }] } });
1448
+
1449
+ class C3StopPropagationDirective {
1450
+ onClick(event) {
1451
+ event.stopImmediatePropagation();
1452
+ }
1453
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3StopPropagationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1454
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: C3StopPropagationDirective, isStandalone: true, selector: "[c3-stop-click-propagation]", host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); }
1455
+ }
1456
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3StopPropagationDirective, decorators: [{
1457
+ type: Directive,
1458
+ args: [{
1459
+ selector: '[c3-stop-click-propagation]',
1460
+ standalone: true,
1461
+ }]
1462
+ }], propDecorators: { onClick: [{
1463
+ type: HostListener,
1464
+ args: ['click', ['$event']]
1465
+ }] } });
1466
+
1328
1467
  class C3FileDisplayListComponent {
1329
1468
  constructor() {
1330
1469
  this.files = input.required();
@@ -1354,11 +1493,12 @@ class C3FileDisplayListComponent {
1354
1493
  this.dialog()?.openDialog();
1355
1494
  }
1356
1495
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3FileDisplayListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1357
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.1", type: C3FileDisplayListComponent, isStandalone: true, selector: "c3-file-display-list", inputs: { files: { classPropertyName: "files", publicName: "files", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null }, displayFn: { classPropertyName: "displayFn", publicName: "displayFn", isSignal: true, isRequired: false, transformFunction: null }, deletable: { classPropertyName: "deletable", publicName: "deletable", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onDelete: "onDelete" }, viewQueries: [{ propertyName: "dialog", first: true, predicate: C3FileViewerDialogComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<!-- header -->\n<div class=\"header\">\n <div class=\"title full\">\n <span>Nom</span>\n </div>\n <div class=\"title\">\n <span>Date d'ajout</span>\n </div>\n <div class=\"icon\">\n <mat-icon>more_vert</mat-icon>\n </div>\n</div>\n<c3-file-viewer-dialog [fileViewer]=\"fileViewer\">\n <div class=\"file-display-list\">\n @for (file of files(); track $index) {\n <button>\n <div class=\"icon\">\n <c3-file-display-icon [fileType]=\"file.type\" />\n </div>\n <div class=\"name\">\n <span>{{ displayFn()(file) }}</span>\n </div>\n <div class=\"date-label\">\n <span>{{\n file.lastModified ? (file.lastModified | date : \"medium\") : \"-\"\n }}</span>\n </div>\n <button mat-icon-button>\n <mat-icon>more_vert</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)=\"openDialog($event, $index)\">\n Ouvrir\n </button>\n @if (deletable()) {\n <button mat-menu-item (click)=\"onDelete.emit(file)\">Supprimer</button>\n }\n </mat-menu>\n </button>\n }\n </div>\n</c3-file-viewer-dialog>\n", styles: [":host{display:flex;flex-direction:column;margin:.5rem}:host .header{display:flex;align-items:center;padding:0 .5rem;border-bottom:1px solid var(--mat-divider-color)}:host .header .title{flex-basis:304px;width:304px;font-size:1.5rem;font-weight:700}:host .header .title.full{flex:auto}:host .header .icon{flex-basis:40px;width:40px}:host .file-display-list{display:flex;flex-direction:column}:host .file-display-list>button{display:flex;flex-direction:row;height:3rem;align-items:center;border-bottom:1px solid var(--mat-divider-color);background-color:var(--mdc-protected-button-container-color);text-align:start;padding:0 .5rem}:host .file-display-list>button:hover{background-color:var(--background-hover)}:host .file-display-list>button .icon{flex-basis:56px;width:56px}:host .file-display-list>button .name{flex:auto;flex-basis:304px;width:304px}:host .file-display-list>button .date-label{flex-basis:304px;width:304px}\n"], dependencies: [{ kind: "ngmodule", type: C3FileViewerModule }, { kind: "component", type: C3FileViewerDialogComponent, selector: "c3-file-viewer-dialog", inputs: ["fileViewer", "dialogConfig"] }, { kind: "component", type: C3FileDisplayIconComponent, selector: "c3-file-display-icon", inputs: ["fileType"] }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatNativeDateModule }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i5$2.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5$2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }] }); }
1496
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.1", type: C3FileDisplayListComponent, isStandalone: true, selector: "c3-file-display-list", inputs: { files: { classPropertyName: "files", publicName: "files", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null }, displayFn: { classPropertyName: "displayFn", publicName: "displayFn", isSignal: true, isRequired: false, transformFunction: null }, deletable: { classPropertyName: "deletable", publicName: "deletable", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onDelete: "onDelete" }, viewQueries: [{ propertyName: "dialog", first: true, predicate: C3FileViewerDialogComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<!-- header -->\n<div class=\"header\">\n <div class=\"title full\">\n <span>Nom</span>\n </div>\n <div class=\"title\">\n <span>Date d'ajout</span>\n </div>\n <div class=\"actions\">\n <ng-content></ng-content>\n </div>\n</div>\n<c3-file-viewer-dialog [fileViewer]=\"fileViewer\">\n <div class=\"file-display-list\">\n @for (file of files(); track $index) {\n <button>\n <div class=\"icon\">\n <c3-file-display-icon [fileType]=\"file.type\" />\n </div>\n <div class=\"name\">\n <span>{{ displayFn()(file) }}</span>\n </div>\n <div class=\"date-label\">\n <span>{{\n file.lastModified ? (file.lastModified | date : \"medium\") : \"-\"\n }}</span>\n </div>\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" c3-stop-click-propagation>\n <mat-icon>more_vert</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)=\"openDialog($event, $index)\">\n Ouvrir\n </button>\n @if (deletable()) {\n <button mat-menu-item (click)=\"onDelete.emit(file)\">Supprimer</button>\n }\n </mat-menu>\n </button>\n }\n </div>\n</c3-file-viewer-dialog>\n", styles: [":host{display:flex;flex-direction:column;margin:.5rem}:host .header{display:flex;align-items:center;padding:0 .5rem;border-bottom:1px solid var(--mat-divider-color)}:host .header .title{flex-basis:304px;width:304px;font-size:1.5rem;font-weight:700}:host .header .title.full{flex:auto}:host .header .icon{flex-basis:40px;width:40px}:host .file-display-list{display:flex;flex-direction:column}:host .file-display-list>button{display:flex;flex-direction:row;height:3rem;align-items:center;border-bottom:1px solid var(--mat-divider-color);background-color:var(--mdc-protected-button-container-color);text-align:start;padding:0 .5rem}:host .file-display-list>button:hover{background-color:var(--background-hover)}:host .file-display-list>button .icon{flex-basis:56px;width:56px}:host .file-display-list>button .name{flex:auto;flex-basis:304px;width:304px}:host .file-display-list>button .date-label{flex-basis:304px;width:304px}\n"], dependencies: [{ kind: "directive", type: C3StopPropagationDirective, selector: "[c3-stop-click-propagation]" }, { kind: "ngmodule", type: C3FileViewerModule }, { kind: "component", type: C3FileViewerDialogComponent, selector: "c3-file-viewer-dialog", inputs: ["fileViewer", "dialogConfig"] }, { kind: "component", type: C3FileDisplayIconComponent, selector: "c3-file-display-icon", inputs: ["fileType"] }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatNativeDateModule }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i5$2.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5$2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5$2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }] }); }
1358
1497
  }
1359
1498
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3FileDisplayListComponent, decorators: [{
1360
1499
  type: Component,
1361
1500
  args: [{ selector: 'c3-file-display-list', standalone: true, imports: [
1501
+ C3StopPropagationDirective,
1362
1502
  C3FileViewerModule,
1363
1503
  C3FileDisplayIconComponent,
1364
1504
  CommonModule,
@@ -1366,7 +1506,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
1366
1506
  MatIconModule,
1367
1507
  MatNativeDateModule,
1368
1508
  MatMenuModule,
1369
- ], template: "<!-- header -->\n<div class=\"header\">\n <div class=\"title full\">\n <span>Nom</span>\n </div>\n <div class=\"title\">\n <span>Date d'ajout</span>\n </div>\n <div class=\"icon\">\n <mat-icon>more_vert</mat-icon>\n </div>\n</div>\n<c3-file-viewer-dialog [fileViewer]=\"fileViewer\">\n <div class=\"file-display-list\">\n @for (file of files(); track $index) {\n <button>\n <div class=\"icon\">\n <c3-file-display-icon [fileType]=\"file.type\" />\n </div>\n <div class=\"name\">\n <span>{{ displayFn()(file) }}</span>\n </div>\n <div class=\"date-label\">\n <span>{{\n file.lastModified ? (file.lastModified | date : \"medium\") : \"-\"\n }}</span>\n </div>\n <button mat-icon-button>\n <mat-icon>more_vert</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)=\"openDialog($event, $index)\">\n Ouvrir\n </button>\n @if (deletable()) {\n <button mat-menu-item (click)=\"onDelete.emit(file)\">Supprimer</button>\n }\n </mat-menu>\n </button>\n }\n </div>\n</c3-file-viewer-dialog>\n", styles: [":host{display:flex;flex-direction:column;margin:.5rem}:host .header{display:flex;align-items:center;padding:0 .5rem;border-bottom:1px solid var(--mat-divider-color)}:host .header .title{flex-basis:304px;width:304px;font-size:1.5rem;font-weight:700}:host .header .title.full{flex:auto}:host .header .icon{flex-basis:40px;width:40px}:host .file-display-list{display:flex;flex-direction:column}:host .file-display-list>button{display:flex;flex-direction:row;height:3rem;align-items:center;border-bottom:1px solid var(--mat-divider-color);background-color:var(--mdc-protected-button-container-color);text-align:start;padding:0 .5rem}:host .file-display-list>button:hover{background-color:var(--background-hover)}:host .file-display-list>button .icon{flex-basis:56px;width:56px}:host .file-display-list>button .name{flex:auto;flex-basis:304px;width:304px}:host .file-display-list>button .date-label{flex-basis:304px;width:304px}\n"] }]
1509
+ ], template: "<!-- header -->\n<div class=\"header\">\n <div class=\"title full\">\n <span>Nom</span>\n </div>\n <div class=\"title\">\n <span>Date d'ajout</span>\n </div>\n <div class=\"actions\">\n <ng-content></ng-content>\n </div>\n</div>\n<c3-file-viewer-dialog [fileViewer]=\"fileViewer\">\n <div class=\"file-display-list\">\n @for (file of files(); track $index) {\n <button>\n <div class=\"icon\">\n <c3-file-display-icon [fileType]=\"file.type\" />\n </div>\n <div class=\"name\">\n <span>{{ displayFn()(file) }}</span>\n </div>\n <div class=\"date-label\">\n <span>{{\n file.lastModified ? (file.lastModified | date : \"medium\") : \"-\"\n }}</span>\n </div>\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" c3-stop-click-propagation>\n <mat-icon>more_vert</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item (click)=\"openDialog($event, $index)\">\n Ouvrir\n </button>\n @if (deletable()) {\n <button mat-menu-item (click)=\"onDelete.emit(file)\">Supprimer</button>\n }\n </mat-menu>\n </button>\n }\n </div>\n</c3-file-viewer-dialog>\n", styles: [":host{display:flex;flex-direction:column;margin:.5rem}:host .header{display:flex;align-items:center;padding:0 .5rem;border-bottom:1px solid var(--mat-divider-color)}:host .header .title{flex-basis:304px;width:304px;font-size:1.5rem;font-weight:700}:host .header .title.full{flex:auto}:host .header .icon{flex-basis:40px;width:40px}:host .file-display-list{display:flex;flex-direction:column}:host .file-display-list>button{display:flex;flex-direction:row;height:3rem;align-items:center;border-bottom:1px solid var(--mat-divider-color);background-color:var(--mdc-protected-button-container-color);text-align:start;padding:0 .5rem}:host .file-display-list>button:hover{background-color:var(--background-hover)}:host .file-display-list>button .icon{flex-basis:56px;width:56px}:host .file-display-list>button .name{flex:auto;flex-basis:304px;width:304px}:host .file-display-list>button .date-label{flex-basis:304px;width:304px}\n"] }]
1370
1510
  }], ctorParameters: () => [] });
1371
1511
 
1372
1512
  class C3FileDisplayerModule {
@@ -1695,13 +1835,13 @@ class C3TraceCardComponent {
1695
1835
  return this.align() === 'right';
1696
1836
  }
1697
1837
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3TraceCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1698
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.1", type: C3TraceCardComponent, selector: "c3-trace-card", host: { properties: { "class.align-left": "this.alignLeft", "class.align-right": "this.alignRight" }, classAttribute: "c3-trace-card" }, ngImport: i0, template: "<div class=\"content\">\n <div class=\"horizontal-line\"></div>\n <ng-content select=\"c3-trace-card-content\"></ng-content>\n</div>\n\n<ng-content select=\"c3-trace-card-title\"></ng-content>\n\n", styles: [".c3-trace-card{display:flex;flex-direction:row;justify-content:space-between;align-items:start;font-size:14px}.c3-trace-card.align-right{flex-direction:row-reverse}.c3-trace-card c3-trace-card-title{padding:.5rem 1rem;font-size:1.5rem;line-height:2rem;border:#e0e0e0 solid 1px;border-radius:1rem;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.c3-trace-card .content{display:flex;flex-direction:column;flex-grow:1}.c3-trace-card .content .horizontal-line{margin-top:25px;height:1px;background-color:#e0e0e0}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1838
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.1", type: C3TraceCardComponent, selector: "c3-trace-card", host: { properties: { "class.align-left": "this.alignLeft", "class.align-right": "this.alignRight" }, classAttribute: "c3-trace-card" }, ngImport: i0, template: "<div class=\"content\">\n <div class=\"horizontal-line\"></div>\n <ng-content select=\"c3-trace-card-content\"></ng-content>\n</div>\n\n<ng-content select=\"c3-trace-card-title\"></ng-content>\n\n", styles: [".c3-trace-card{--c3-trace-card-border-color: rgba(0, 0, 0, .12);display:flex;flex-direction:row;justify-content:space-between;align-items:start;font-size:14px}.c3-trace-card.align-right{flex-direction:row-reverse}.c3-trace-card c3-trace-card-title{padding:.5rem 1rem;font-size:1.5rem;line-height:2rem;border:var(--c3-trace-card-border-color) solid 1px;border-radius:1rem;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.c3-trace-card .content{display:flex;flex-direction:column;flex-grow:1}.c3-trace-card .content .horizontal-line{margin-top:25px;height:1px;background-color:var(--c3-trace-card-border-color)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1699
1839
  }
1700
1840
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: C3TraceCardComponent, decorators: [{
1701
1841
  type: Component,
1702
1842
  args: [{ selector: 'c3-trace-card', encapsulation: ViewEncapsulation.None, host: {
1703
1843
  class: 'c3-trace-card',
1704
- }, template: "<div class=\"content\">\n <div class=\"horizontal-line\"></div>\n <ng-content select=\"c3-trace-card-content\"></ng-content>\n</div>\n\n<ng-content select=\"c3-trace-card-title\"></ng-content>\n\n", styles: [".c3-trace-card{display:flex;flex-direction:row;justify-content:space-between;align-items:start;font-size:14px}.c3-trace-card.align-right{flex-direction:row-reverse}.c3-trace-card c3-trace-card-title{padding:.5rem 1rem;font-size:1.5rem;line-height:2rem;border:#e0e0e0 solid 1px;border-radius:1rem;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.c3-trace-card .content{display:flex;flex-direction:column;flex-grow:1}.c3-trace-card .content .horizontal-line{margin-top:25px;height:1px;background-color:#e0e0e0}\n"] }]
1844
+ }, template: "<div class=\"content\">\n <div class=\"horizontal-line\"></div>\n <ng-content select=\"c3-trace-card-content\"></ng-content>\n</div>\n\n<ng-content select=\"c3-trace-card-title\"></ng-content>\n\n", styles: [".c3-trace-card{--c3-trace-card-border-color: rgba(0, 0, 0, .12);display:flex;flex-direction:row;justify-content:space-between;align-items:start;font-size:14px}.c3-trace-card.align-right{flex-direction:row-reverse}.c3-trace-card c3-trace-card-title{padding:.5rem 1rem;font-size:1.5rem;line-height:2rem;border:var(--c3-trace-card-border-color) solid 1px;border-radius:1rem;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.c3-trace-card .content{display:flex;flex-direction:column;flex-grow:1}.c3-trace-card .content .horizontal-line{margin-top:25px;height:1px;background-color:var(--c3-trace-card-border-color)}\n"] }]
1705
1845
  }], propDecorators: { alignLeft: [{
1706
1846
  type: HostBinding,
1707
1847
  args: ['class.align-left']
@@ -1808,5 +1948,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
1808
1948
  * Generated bundle index. Do not edit.
1809
1949
  */
1810
1950
 
1811
- export { C3AutoAnimateDirective, C3DialogEmbedChildComponent, C3DialogModule, C3DialogService, C3DropdownComponent, C3DropdownModule, C3DropdownTrigger, C3ExpansionComponent, C3ExpansionHeaderComponent, C3ExpansionModule, C3FileDisplayCardComponent, C3FileDisplayGridComponent, C3FileDisplayIconComponent, C3FileDisplayListComponent, C3FileDisplayerModule, C3FileViewer, C3FileViewerComponent, C3FileViewerDialog, C3FileViewerDialogComponent, C3FileViewerModule, C3FlowingMenuComponent, C3FlowingMenuItemComponent, C3FlowingMenuItemContentComponent, C3FlowingMenuModule, C3PromptDialogComponent, C3SafeUrlPipe, C3SelectOnFocusDirective, C3TraceCardAlignLeftDirective, C3TraceCardAlignRightDirective, C3TraceCardComponent, C3TraceCardContentComponent, C3TraceCardModule, C3TraceCardTitleComponent, C3TreeComponent, ConfirmDialogComponent, CustomFileEvent, FullScreenDirective, MAT_DROPDOWN_VALUE_ACCESSOR, booleanSignal };
1951
+ export { C3AutoAnimateDirective, C3DialogEmbedChildComponent, C3DialogModule, C3DialogService, C3DropdownComponent, C3DropdownModule, C3DropdownTrigger, C3ExpansionComponent, C3ExpansionHeaderComponent, C3ExpansionModule, C3FileDisplayCardComponent, C3FileDisplayGridComponent, C3FileDisplayIconComponent, C3FileDisplayListComponent, C3FileDisplayerModule, C3FileViewer, C3FileViewerComponent, C3FileViewerDialog, C3FileViewerDialogComponent, C3FileViewerModule, C3FlowingMenuComponent, C3FlowingMenuItemComponent, C3FlowingMenuItemContentComponent, C3FlowingMenuModule, C3PreventClickDirective, C3PreventKeyboardEventDirective, C3PromptDialogComponent, C3SafeUrlPipe, C3SelectOnFocusDirective, C3StopPropagationDirective, C3TraceCardAlignLeftDirective, C3TraceCardAlignRightDirective, C3TraceCardComponent, C3TraceCardContentComponent, C3TraceCardModule, C3TraceCardTitleComponent, C3TreeComponent, ConfirmDialogComponent, CustomFileEvent, FullScreenDirective, MAT_DROPDOWN_VALUE_ACCESSOR, booleanSignal };
1812
1952
  //# sourceMappingURL=c3-components.mjs.map