c3-components 0.0.14 → 0.0.15
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.
- package/esm2022/c3-components.mjs +5 -0
- package/esm2022/lib/c3-auto-animate/C3AutoAnimate.directive.mjs +23 -0
- package/esm2022/lib/c3-dialog/c3-dialog.module.mjs +52 -0
- package/esm2022/lib/c3-dialog/components/c3-dialog-confirm.component.mjs +51 -0
- package/esm2022/lib/c3-dialog/components/c3-dialog-embed-child.component.mjs +32 -0
- package/esm2022/lib/c3-dialog/components/c3-dialog-prompt.component.mjs +95 -0
- package/esm2022/lib/c3-dialog/services/c3-dialog.service.mjs +77 -0
- package/esm2022/lib/c3-dropdown/c3-dropdown.module.mjs +20 -0
- package/esm2022/lib/c3-dropdown/components/c3-dropdown.component.mjs +45 -0
- package/esm2022/lib/c3-dropdown/directives/c3-dropdown.trigger.mjs +128 -0
- package/esm2022/lib/c3-expansion/c3-expansion.module.mjs +43 -0
- package/esm2022/lib/c3-expansion/components/c3-expansion/c3-expansion.component.mjs +34 -0
- package/esm2022/lib/c3-expansion/components/c3-expansion-header/c3-expansion-header.component.mjs +24 -0
- package/esm2022/lib/c3-file-viewer/c3-file-viewer.module.mjs +47 -0
- package/esm2022/lib/c3-file-viewer/components/c3-file-viewer-actions/c3-file-viewer-actions.component.mjs +17 -0
- package/esm2022/lib/c3-file-viewer/components/c3-file-viewer-image/c3-file-viewer-image.component.mjs +20 -0
- package/esm2022/lib/c3-file-viewer/components/c3-file-viewer-pdf/c3-file-viewer-pdf.component.mjs +23 -0
- package/esm2022/lib/c3-file-viewer/components/c3-file-viewer-video/c3-file-viewer-video.component.mjs +32 -0
- package/esm2022/lib/c3-file-viewer/components/public/c3-file-viewer/c3-file-viewer.component.mjs +86 -0
- package/esm2022/lib/c3-file-viewer/components/public/c3-file-viewer-dialog/c3-file-viewer-dialog.component.mjs +40 -0
- package/esm2022/lib/c3-file-viewer/components/public/c3-file-viewer-dialog/c3-file-viewer-dialog.mjs +26 -0
- package/esm2022/lib/c3-file-viewer/consts/default.config.mjs +40 -0
- package/esm2022/lib/c3-file-viewer/directives/full-screen.directive.mjs +66 -0
- package/esm2022/lib/c3-file-viewer/models/custom-file-event.model.mjs +7 -0
- package/esm2022/lib/c3-file-viewer/models/file-metadata.mjs +2 -0
- package/esm2022/lib/c3-file-viewer/models/file-viewer-config.model.mjs +2 -0
- package/esm2022/lib/c3-file-viewer/models/file-viewer.mjs +206 -0
- package/esm2022/lib/c3-file-viewer/models/http.client.mjs +2 -0
- package/esm2022/lib/c3-safe-url/pipes/c3-safe-url.pipe.mjs +21 -0
- package/esm2022/public-api.mjs +45 -0
- package/fesm2022/c3-components.mjs +1160 -0
- package/fesm2022/c3-components.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/c3-auto-animate/C3AutoAnimate.directive.d.ts +11 -0
- package/lib/c3-dialog/c3-dialog.module.d.ts +15 -0
- package/lib/c3-dialog/components/c3-dialog-confirm.component.d.ts +23 -0
- package/lib/c3-dialog/components/c3-dialog-embed-child.component.d.ts +18 -0
- package/lib/c3-dialog/components/c3-dialog-prompt.component.d.ts +31 -0
- package/lib/c3-dialog/services/c3-dialog.service.d.ts +18 -0
- package/lib/c3-dropdown/c3-dropdown.module.d.ts +10 -0
- package/lib/c3-dropdown/components/c3-dropdown.component.d.ts +15 -0
- package/lib/c3-dropdown/directives/c3-dropdown.trigger.d.ts +45 -0
- package/lib/c3-expansion/c3-expansion.module.d.ts +14 -0
- package/lib/c3-expansion/components/c3-expansion/c3-expansion.component.d.ts +13 -0
- package/lib/c3-expansion/components/c3-expansion-header/c3-expansion-header.component.d.ts +9 -0
- package/lib/c3-file-viewer/c3-file-viewer.module.d.ts +17 -0
- package/lib/c3-file-viewer/components/c3-file-viewer-actions/c3-file-viewer-actions.component.d.ts +8 -0
- package/lib/c3-file-viewer/components/c3-file-viewer-image/c3-file-viewer-image.component.d.ts +9 -0
- package/lib/c3-file-viewer/components/c3-file-viewer-pdf/c3-file-viewer-pdf.component.d.ts +9 -0
- package/lib/c3-file-viewer/components/c3-file-viewer-video/c3-file-viewer-video.component.d.ts +12 -0
- package/lib/c3-file-viewer/components/public/c3-file-viewer/c3-file-viewer.component.d.ts +25 -0
- package/lib/c3-file-viewer/components/public/c3-file-viewer-dialog/c3-file-viewer-dialog.component.d.ts +12 -0
- package/lib/c3-file-viewer/components/public/c3-file-viewer-dialog/c3-file-viewer-dialog.d.ts +8 -0
- package/lib/c3-file-viewer/consts/default.config.d.ts +2 -0
- package/lib/c3-file-viewer/directives/full-screen.directive.d.ts +12 -0
- package/lib/c3-file-viewer/models/custom-file-event.model.d.ts +5 -0
- package/lib/c3-file-viewer/models/file-metadata.d.ts +12 -0
- package/lib/c3-file-viewer/models/file-viewer-config.model.d.ts +48 -0
- package/lib/c3-file-viewer/models/file-viewer.d.ts +65 -0
- package/lib/c3-file-viewer/models/http.client.d.ts +14 -0
- package/lib/c3-safe-url/pipes/c3-safe-url.pipe.d.ts +10 -0
- package/package.json +13 -4
- package/{src/public-api.ts → public-api.d.ts} +0 -10
- package/CONTRIBUTING.md +0 -80
- package/bun.lockb +0 -0
- package/ng-package.json +0 -19
- package/src/lib/c3-auto-animate/C3AutoAnimate.directive.ts +0 -18
- package/src/lib/c3-dialog/c3-dialog.module.ts +0 -30
- package/src/lib/c3-dialog/components/c3-dialog-confirm.component.ts +0 -44
- package/src/lib/c3-dialog/components/c3-dialog-embed-child.component.ts +0 -40
- package/src/lib/c3-dialog/components/c3-dialog-prompt.component.ts +0 -81
- package/src/lib/c3-dialog/services/c3-dialog.service.ts +0 -87
- package/src/lib/c3-dropdown/c3-dropdown.module.ts +0 -12
- package/src/lib/c3-dropdown/components/c3-dropdown.component.spec.ts +0 -22
- package/src/lib/c3-dropdown/components/c3-dropdown.component.ts +0 -39
- package/src/lib/c3-dropdown/directives/c3-dropdown.trigger.ts +0 -161
- package/src/lib/c3-expansion/c3-expansion.module.ts +0 -24
- package/src/lib/c3-expansion/components/c3-expansion/c3-expansion.component.html +0 -9
- package/src/lib/c3-expansion/components/c3-expansion/c3-expansion.component.ts +0 -33
- package/src/lib/c3-expansion/components/c3-expansion-header/c3-expansion-header.component.html +0 -12
- package/src/lib/c3-expansion/components/c3-expansion-header/c3-expansion-header.component.ts +0 -21
- package/src/lib/c3-file/c3-download/c3-download.module.ts +0 -7
- package/src/lib/c3-file/c3-download/c3-download.service.ts +0 -16
- package/src/lib/c3-file/c3-input-file/c3-input-file.module.ts +0 -30
- package/src/lib/c3-file/c3-input-file/class/c3-input-file.ts +0 -62
- package/src/lib/c3-file/c3-input-file/components/c3-input-file/c3-input-file.component.html +0 -7
- package/src/lib/c3-file/c3-input-file/components/c3-input-file/c3-input-file.component.ts +0 -96
- package/src/lib/c3-file/c3-input-file/components/c3-input-file-container/c3-input-file-container.component.ts +0 -53
- package/src/lib/c3-file/c3-input-file/components/c3-input-file-displayer/c3-input-file-displayer.component.ts +0 -107
- package/src/lib/c3-file/c3-input-file/components/c3-input-file-trigger/c3-input-file-trigger.component.ts +0 -22
- package/src/lib/c3-file/c3-input-file/directives/c3-input-file-trigger.directive.ts +0 -27
- package/src/lib/c3-file-upload/c3-file-upload.module.ts +0 -8
- package/src/lib/c3-file-viewer/c3-file-viewer.module.ts +0 -30
- package/src/lib/c3-file-viewer/components/c3-file-viewer-actions/c3-file-viewer-actions.component.html +0 -185
- package/src/lib/c3-file-viewer/components/c3-file-viewer-actions/c3-file-viewer-actions.component.spec.ts +0 -23
- package/src/lib/c3-file-viewer/components/c3-file-viewer-actions/c3-file-viewer-actions.component.ts +0 -15
- package/src/lib/c3-file-viewer/components/c3-file-viewer-image/c3-file-viewer-image.component.html +0 -7
- package/src/lib/c3-file-viewer/components/c3-file-viewer-image/c3-file-viewer-image.component.spec.ts +0 -23
- package/src/lib/c3-file-viewer/components/c3-file-viewer-image/c3-file-viewer-image.component.ts +0 -14
- package/src/lib/c3-file-viewer/components/c3-file-viewer-pdf/c3-file-viewer-pdf.component.html +0 -7
- package/src/lib/c3-file-viewer/components/c3-file-viewer-pdf/c3-file-viewer-pdf.component.spec.ts +0 -23
- package/src/lib/c3-file-viewer/components/c3-file-viewer-pdf/c3-file-viewer-pdf.component.ts +0 -25
- package/src/lib/c3-file-viewer/components/c3-file-viewer-video/c3-file-viewer-video.component.css +0 -0
- package/src/lib/c3-file-viewer/components/c3-file-viewer-video/c3-file-viewer-video.component.html +0 -1
- package/src/lib/c3-file-viewer/components/c3-file-viewer-video/c3-file-viewer-video.component.spec.ts +0 -23
- package/src/lib/c3-file-viewer/components/c3-file-viewer-video/c3-file-viewer-video.component.ts +0 -35
- package/src/lib/c3-file-viewer/components/public/c3-file-viewer/c3-file-viewer.component.html +0 -32
- package/src/lib/c3-file-viewer/components/public/c3-file-viewer/c3-file-viewer.component.spec.ts +0 -23
- package/src/lib/c3-file-viewer/components/public/c3-file-viewer/c3-file-viewer.component.ts +0 -93
- package/src/lib/c3-file-viewer/components/public/c3-file-viewer-dialog/c3-file-viewer-dialog.component.spec.ts +0 -23
- package/src/lib/c3-file-viewer/components/public/c3-file-viewer-dialog/c3-file-viewer-dialog.component.ts +0 -37
- package/src/lib/c3-file-viewer/components/public/c3-file-viewer-dialog/c3-file-viewer-dialog.spec.ts +0 -22
- package/src/lib/c3-file-viewer/components/public/c3-file-viewer-dialog/c3-file-viewer-dialog.ts +0 -12
- package/src/lib/c3-file-viewer/consts/default.config.ts +0 -41
- package/src/lib/c3-file-viewer/directives/full-screen.directive.spec.ts +0 -11
- package/src/lib/c3-file-viewer/directives/full-screen.directive.ts +0 -68
- package/src/lib/c3-file-viewer/models/custom-file-event.model.ts +0 -9
- package/src/lib/c3-file-viewer/models/file-metadata.ts +0 -13
- package/src/lib/c3-file-viewer/models/file-viewer-config.model.ts +0 -53
- package/src/lib/c3-file-viewer/models/file-viewer.ts +0 -259
- package/src/lib/c3-file-viewer/models/http.client.ts +0 -23
- package/src/lib/c3-highlight-text/c3-highlight-text.module.ts +0 -12
- package/src/lib/c3-menu/c3-menu.module.ts +0 -12
- package/src/lib/c3-modal/c3-modal.module.ts +0 -12
- package/src/lib/c3-navbar/c3-navbar.module.ts +0 -12
- package/src/lib/c3-pdf-dialog/c3-pdf-dialog.module.ts +0 -12
- package/src/lib/c3-rounded-title/c3-rounded-title.module.ts +0 -12
- package/src/lib/c3-safe-url/pipes/c3-safe-url.pipe.spec.ts +0 -8
- package/src/lib/c3-safe-url/pipes/c3-safe-url.pipe.ts +0 -13
- package/src/lib/c3-tabs/c3-tabs.module.ts +0 -12
- package/tsconfig.lib.json +0 -14
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -14
- /package/{src/_index.scss → _index.scss} +0 -0
- /package/{src/lib → lib}/c3-dropdown/styles/_c3-dropdown.sass +0 -0
- /package/{src/lib → lib}/c3-expansion/styles/_c3-expansion.scss +0 -0
- /package/{src/lib → lib}/c3-file/c3-input-file/components/c3-input-file/c3-input-file.component.scss +0 -0
- /package/{src/lib → lib}/c3-file-viewer/styles/_c3-file-viewer.sass +0 -0
- /package/{src/lib → lib}/c3-styles/_c3-core.sass +0 -0
- /package/{src/lib → lib}/c3-styles/_c3-root-variables.sass +0 -0
- /package/{src/lib → lib}/c3-styles/_utils.sass +0 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2MzLWNvbXBvbmVudHMvc3JjL2MzLWNvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import autoAnimate from '@formkit/auto-animate';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class C3AutoAnimateDirective {
|
|
5
|
+
constructor(el) {
|
|
6
|
+
this.el = el;
|
|
7
|
+
}
|
|
8
|
+
ngAfterViewInit() {
|
|
9
|
+
autoAnimate(this.el.nativeElement, this.options);
|
|
10
|
+
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3AutoAnimateDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
12
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: C3AutoAnimateDirective, isStandalone: true, selector: "[c3AutoAnimate]", inputs: { options: "options" }, ngImport: i0 }); }
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3AutoAnimateDirective, decorators: [{
|
|
15
|
+
type: Directive,
|
|
16
|
+
args: [{
|
|
17
|
+
selector: '[c3AutoAnimate]',
|
|
18
|
+
standalone: true,
|
|
19
|
+
}]
|
|
20
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { options: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}] } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQzNBdXRvQW5pbWF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jMy1jb21wb25lbnRzL3NyYy9saWIvYzMtYXV0by1hbmltYXRlL0MzQXV0b0FuaW1hdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLFdBR04sTUFBTSx1QkFBdUIsQ0FBQzs7QUFNL0IsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQyxZQUFvQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtJQUFHLENBQUM7SUFFdEMsZUFBZTtRQUNiLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkQsQ0FBQzs4R0FOVSxzQkFBc0I7a0dBQXRCLHNCQUFzQjs7MkZBQXRCLHNCQUFzQjtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtpQkFDakI7K0VBRVUsT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGF1dG9BbmltYXRlLCB7XG4gIEF1dG9BbmltYXRlT3B0aW9ucyxcbiAgQXV0b0FuaW1hdGlvblBsdWdpbixcbn0gZnJvbSAnQGZvcm1raXQvYXV0by1hbmltYXRlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2MzQXV0b0FuaW1hdGVdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQzNBdXRvQW5pbWF0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBvcHRpb25zPzogUGFydGlhbDxBdXRvQW5pbWF0ZU9wdGlvbnM+IHwgQXV0b0FuaW1hdGlvblBsdWdpbjtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikge31cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgYXV0b0FuaW1hdGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLm9wdGlvbnMpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
4
|
+
import { MatDialogModule } from '@angular/material/dialog';
|
|
5
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
6
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
7
|
+
import { MatInputModule } from '@angular/material/input';
|
|
8
|
+
import { ConfirmDialogComponent } from './components/c3-dialog-confirm.component';
|
|
9
|
+
import { C3DialogEmbedChildComponent } from './components/c3-dialog-embed-child.component';
|
|
10
|
+
import { C3PromptDialogComponent } from './components/c3-dialog-prompt.component';
|
|
11
|
+
import { C3DialogService } from './services/c3-dialog.service';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
export class C3DialogModule {
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
15
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: C3DialogModule, declarations: [ConfirmDialogComponent,
|
|
16
|
+
C3PromptDialogComponent,
|
|
17
|
+
C3DialogEmbedChildComponent], imports: [CommonModule,
|
|
18
|
+
MatDialogModule,
|
|
19
|
+
MatButtonModule,
|
|
20
|
+
MatFormFieldModule,
|
|
21
|
+
MatInputModule,
|
|
22
|
+
FormsModule,
|
|
23
|
+
ReactiveFormsModule] }); }
|
|
24
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DialogModule, providers: [C3DialogService], imports: [CommonModule,
|
|
25
|
+
MatDialogModule,
|
|
26
|
+
MatButtonModule,
|
|
27
|
+
MatFormFieldModule,
|
|
28
|
+
MatInputModule,
|
|
29
|
+
FormsModule,
|
|
30
|
+
ReactiveFormsModule] }); }
|
|
31
|
+
}
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DialogModule, decorators: [{
|
|
33
|
+
type: NgModule,
|
|
34
|
+
args: [{
|
|
35
|
+
declarations: [
|
|
36
|
+
ConfirmDialogComponent,
|
|
37
|
+
C3PromptDialogComponent,
|
|
38
|
+
C3DialogEmbedChildComponent,
|
|
39
|
+
],
|
|
40
|
+
imports: [
|
|
41
|
+
CommonModule,
|
|
42
|
+
MatDialogModule,
|
|
43
|
+
MatButtonModule,
|
|
44
|
+
MatFormFieldModule,
|
|
45
|
+
MatInputModule,
|
|
46
|
+
FormsModule,
|
|
47
|
+
ReactiveFormsModule,
|
|
48
|
+
],
|
|
49
|
+
providers: [C3DialogService],
|
|
50
|
+
}]
|
|
51
|
+
}] });
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2MzLWNvbXBvbmVudHMvc3JjL2xpYi9jMy1kaWFsb2cvYzMtZGlhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDbEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDM0YsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQW1CL0QsTUFBTSxPQUFPLGNBQWM7OEdBQWQsY0FBYzsrR0FBZCxjQUFjLGlCQWZ2QixzQkFBc0I7WUFDdEIsdUJBQXVCO1lBQ3ZCLDJCQUEyQixhQUczQixZQUFZO1lBQ1osZUFBZTtZQUNmLGVBQWU7WUFDZixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLFdBQVc7WUFDWCxtQkFBbUI7K0dBSVYsY0FBYyxhQUZkLENBQUMsZUFBZSxDQUFDLFlBUjFCLFlBQVk7WUFDWixlQUFlO1lBQ2YsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsV0FBVztZQUNYLG1CQUFtQjs7MkZBSVYsY0FBYztrQkFqQjFCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2QiwyQkFBMkI7cUJBQzVCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsV0FBVzt3QkFDWCxtQkFBbUI7cUJBQ3BCO29CQUNELFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztpQkFDN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgQ29uZmlybURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jMy1kaWFsb2ctY29uZmlybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQzNEaWFsb2dFbWJlZENoaWxkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2MzLWRpYWxvZy1lbWJlZC1jaGlsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQzNQcm9tcHREaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYzMtZGlhbG9nLXByb21wdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQzNEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9jMy1kaWFsb2cuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIENvbmZpcm1EaWFsb2dDb21wb25lbnQsXG4gICAgQzNQcm9tcHREaWFsb2dDb21wb25lbnQsXG4gICAgQzNEaWFsb2dFbWJlZENoaWxkQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdERpYWxvZ01vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gIF0sXG4gIHByb3ZpZGVyczogW0MzRGlhbG9nU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEMzRGlhbG9nTW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { Component, Inject } from '@angular/core';
|
|
2
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/material/dialog";
|
|
5
|
+
import * as i2 from "@angular/material/button";
|
|
6
|
+
export class ConfirmDialogComponent {
|
|
7
|
+
constructor(dialogRef, data) {
|
|
8
|
+
this.dialogRef = dialogRef;
|
|
9
|
+
this.data = data;
|
|
10
|
+
}
|
|
11
|
+
onNoClick() {
|
|
12
|
+
this.dialogRef.close();
|
|
13
|
+
}
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ConfirmDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: ConfirmDialogComponent, selector: "ConfirmDialogComponent", ngImport: i0, template: `
|
|
16
|
+
<mat-dialog-content>
|
|
17
|
+
<div [innerHtml]="data.text"></div>
|
|
18
|
+
</mat-dialog-content>
|
|
19
|
+
<mat-dialog-actions class="flex flex-row justify-end items-center">
|
|
20
|
+
<button mat-button mat-dialog-close [color]="data.reject?.color">
|
|
21
|
+
{{ data.reject?.text }}
|
|
22
|
+
</button>
|
|
23
|
+
<button mat-button [color]="data.accept?.color" [mat-dialog-close]="true">
|
|
24
|
+
{{ data.accept?.text }}
|
|
25
|
+
</button>
|
|
26
|
+
</mat-dialog-actions>
|
|
27
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
|
|
28
|
+
}
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ConfirmDialogComponent, decorators: [{
|
|
30
|
+
type: Component,
|
|
31
|
+
args: [{
|
|
32
|
+
selector: 'ConfirmDialogComponent',
|
|
33
|
+
template: `
|
|
34
|
+
<mat-dialog-content>
|
|
35
|
+
<div [innerHtml]="data.text"></div>
|
|
36
|
+
</mat-dialog-content>
|
|
37
|
+
<mat-dialog-actions class="flex flex-row justify-end items-center">
|
|
38
|
+
<button mat-button mat-dialog-close [color]="data.reject?.color">
|
|
39
|
+
{{ data.reject?.text }}
|
|
40
|
+
</button>
|
|
41
|
+
<button mat-button [color]="data.accept?.color" [mat-dialog-close]="true">
|
|
42
|
+
{{ data.accept?.text }}
|
|
43
|
+
</button>
|
|
44
|
+
</mat-dialog-actions>
|
|
45
|
+
`,
|
|
46
|
+
}]
|
|
47
|
+
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
48
|
+
type: Inject,
|
|
49
|
+
args: [MAT_DIALOG_DATA]
|
|
50
|
+
}] }] });
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYzMtY29tcG9uZW50cy9zcmMvbGliL2MzLWRpYWxvZy9jb21wb25lbnRzL2MzLWRpYWxvZy1jb25maXJtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBZ0N6RSxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFlBQ1MsU0FBK0MsRUFFL0MsSUFBbUI7UUFGbkIsY0FBUyxHQUFULFNBQVMsQ0FBc0M7UUFFL0MsU0FBSSxHQUFKLElBQUksQ0FBZTtJQUN6QixDQUFDO0lBRUosU0FBUztRQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDekIsQ0FBQzs4R0FUVSxzQkFBc0IsOENBR3ZCLGVBQWU7a0dBSGQsc0JBQXNCLDhEQWR2Qjs7Ozs7Ozs7Ozs7O0dBWVQ7OzJGQUVVLHNCQUFzQjtrQkFoQmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7R0FZVDtpQkFDRjs7MEJBSUksTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb25maXJtQ29uZmlnIHtcclxuICB0ZXh0OiBzdHJpbmc7XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgcmVqZWN0Pzoge1xyXG4gICAgY29sb3I/OiBzdHJpbmc7XHJcbiAgICB0ZXh0Pzogc3RyaW5nO1xyXG4gIH07XHJcbiAgYWNjZXB0Pzoge1xyXG4gICAgY29sb3I/OiBzdHJpbmc7XHJcbiAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgfTtcclxuICB3aWR0aD86IHN0cmluZztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdDb25maXJtRGlhbG9nQ29tcG9uZW50JyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPG1hdC1kaWFsb2ctY29udGVudD5cclxuICAgICAgPGRpdiBbaW5uZXJIdG1sXT1cImRhdGEudGV4dFwiPjwvZGl2PlxyXG4gICAgPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XHJcbiAgICA8bWF0LWRpYWxvZy1hY3Rpb25zIGNsYXNzPVwiZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWVuZCBpdGVtcy1jZW50ZXJcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIG1hdC1kaWFsb2ctY2xvc2UgW2NvbG9yXT1cImRhdGEucmVqZWN0Py5jb2xvclwiPlxyXG4gICAgICAgIHt7IGRhdGEucmVqZWN0Py50ZXh0IH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIG1hdC1idXR0b24gW2NvbG9yXT1cImRhdGEuYWNjZXB0Py5jb2xvclwiIFttYXQtZGlhbG9nLWNsb3NlXT1cInRydWVcIj5cclxuICAgICAgICB7eyBkYXRhLmFjY2VwdD8udGV4dCB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvbWF0LWRpYWxvZy1hY3Rpb25zPlxyXG4gIGAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtRGlhbG9nQ29tcG9uZW50IHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxDb25maXJtRGlhbG9nQ29tcG9uZW50PixcclxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKVxyXG4gICAgcHVibGljIGRhdGE6IENvbmZpcm1Db25maWdcclxuICApIHt9XHJcblxyXG4gIG9uTm9DbGljaygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Component, Inject, ViewChild, ViewContainerRef, } from '@angular/core';
|
|
2
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/material/dialog";
|
|
5
|
+
export class C3DialogEmbedChildComponent {
|
|
6
|
+
constructor(dialogRef, data, _cdr) {
|
|
7
|
+
this.dialogRef = dialogRef;
|
|
8
|
+
this.data = data;
|
|
9
|
+
this._cdr = _cdr;
|
|
10
|
+
}
|
|
11
|
+
ngAfterViewInit() {
|
|
12
|
+
this.createdComponent = this.target.createComponent(this.data.component);
|
|
13
|
+
this._cdr.detectChanges();
|
|
14
|
+
}
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DialogEmbedChildComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: C3DialogEmbedChildComponent, selector: "C3DialogEmbedChildComponent", viewQueries: [{ propertyName: "target", first: true, predicate: ["target"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: `<mat-dialog-content>
|
|
17
|
+
<ng-template #target></ng-template>
|
|
18
|
+
</mat-dialog-content>`, isInline: true, dependencies: [{ kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] }); }
|
|
19
|
+
}
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DialogEmbedChildComponent, decorators: [{
|
|
21
|
+
type: Component,
|
|
22
|
+
args: [{ selector: 'C3DialogEmbedChildComponent', template: `<mat-dialog-content>
|
|
23
|
+
<ng-template #target></ng-template>
|
|
24
|
+
</mat-dialog-content>` }]
|
|
25
|
+
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
26
|
+
type: Inject,
|
|
27
|
+
args: [MAT_DIALOG_DATA]
|
|
28
|
+
}] }, { type: i0.ChangeDetectorRef }], propDecorators: { target: [{
|
|
29
|
+
type: ViewChild,
|
|
30
|
+
args: ['target', { read: ViewContainerRef }]
|
|
31
|
+
}] } });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtZGlhbG9nLWVtYmVkLWNoaWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2MzLWNvbXBvbmVudHMvc3JjL2xpYi9jMy1kaWFsb2cvY29tcG9uZW50cy9jMy1kaWFsb2ctZW1iZWQtY2hpbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxTQUFTLEVBRVQsTUFBTSxFQUVOLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBU3pFLE1BQU0sT0FBTywyQkFBMkI7SUFPdEMsWUFDUyxTQUFtRSxFQUVuRSxJQUVOLEVBQ08sSUFBdUI7UUFMeEIsY0FBUyxHQUFULFNBQVMsQ0FBMEQ7UUFFbkUsU0FBSSxHQUFKLElBQUksQ0FFVjtRQUNPLFNBQUksR0FBSixJQUFJLENBQW1CO0lBQzlCLENBQUM7SUFFSixlQUFlO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM1QixDQUFDOzhHQW5CVSwyQkFBMkIsOENBUzVCLGVBQWU7a0dBVGQsMkJBQTJCLGdKQUdULGdCQUFnQiw2QkFSbkM7O3dCQUVZOzsyRkFHWCwyQkFBMkI7a0JBUHZDLFNBQVM7K0JBQ0UsNkJBQTZCLFlBQzdCOzt3QkFFWTs7MEJBWW5CLE1BQU07MkJBQUMsZUFBZTt5RUFOd0IsTUFBTTtzQkFBdEQsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRSZWYsXG4gIEluamVjdCxcbiAgVHlwZSxcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnQzNEaWFsb2dFbWJlZENoaWxkQ29tcG9uZW50JyxcbiAgdGVtcGxhdGU6IGA8bWF0LWRpYWxvZy1jb250ZW50PlxuICAgIDxuZy10ZW1wbGF0ZSAjdGFyZ2V0PjwvbmctdGVtcGxhdGU+XG4gIDwvbWF0LWRpYWxvZy1jb250ZW50PmAsXG4gIHN0eWxlczogW10sXG59KVxuZXhwb3J0IGNsYXNzIEMzRGlhbG9nRW1iZWRDaGlsZENvbXBvbmVudDxDb21wb25lbnlUeXBlPlxuICBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXRcbntcbiAgQFZpZXdDaGlsZCgndGFyZ2V0JywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pIHRhcmdldCE6IFZpZXdDb250YWluZXJSZWY7XG5cbiAgY3JlYXRlZENvbXBvbmVudD86IENvbXBvbmVudFJlZjxDb21wb25lbnlUeXBlPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8QzNEaWFsb2dFbWJlZENoaWxkQ29tcG9uZW50PENvbXBvbmVueVR5cGU+PixcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSlcbiAgICBwdWJsaWMgZGF0YToge1xuICAgICAgY29tcG9uZW50OiBUeXBlPENvbXBvbmVueVR5cGU+O1xuICAgIH0sXG4gICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuY3JlYXRlZENvbXBvbmVudCA9IHRoaXMudGFyZ2V0LmNyZWF0ZUNvbXBvbmVudCh0aGlzLmRhdGEuY29tcG9uZW50KTtcbiAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { Component, Inject } from '@angular/core';
|
|
2
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/material/dialog";
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
import * as i3 from "@angular/common";
|
|
7
|
+
import * as i4 from "@angular/material/button";
|
|
8
|
+
import * as i5 from "@angular/material/form-field";
|
|
9
|
+
import * as i6 from "@angular/material/input";
|
|
10
|
+
import * as i7 from "@angular/cdk/text-field";
|
|
11
|
+
export class C3PromptDialogComponent {
|
|
12
|
+
constructor(dialogRef, data, _fb) {
|
|
13
|
+
this.dialogRef = dialogRef;
|
|
14
|
+
this.data = data;
|
|
15
|
+
this._fb = _fb;
|
|
16
|
+
this.result = this._fb.control(data.defaultValue, data.validators);
|
|
17
|
+
}
|
|
18
|
+
onNoClick() {
|
|
19
|
+
this.dialogRef.close();
|
|
20
|
+
}
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3PromptDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
22
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: C3PromptDialogComponent, selector: "PrompDialogComponent", ngImport: i0, template: `
|
|
23
|
+
<div mat-dialog-title>{{ data.text }}</div>
|
|
24
|
+
<mat-dialog-content>
|
|
25
|
+
<mat-form-field>
|
|
26
|
+
<mat-label *ngIf="data.placeholder">{{ data.placeholder }}</mat-label>
|
|
27
|
+
<input
|
|
28
|
+
*ngIf="!data.multiline"
|
|
29
|
+
matInput
|
|
30
|
+
[formControl]="result"
|
|
31
|
+
(keydown.enter)="dialogRef.close(result.value)"
|
|
32
|
+
/>
|
|
33
|
+
<textarea
|
|
34
|
+
*ngIf="data.multiline"
|
|
35
|
+
matInput
|
|
36
|
+
[formControl]="result"
|
|
37
|
+
cdkTextareaAutosize
|
|
38
|
+
></textarea>
|
|
39
|
+
</mat-form-field>
|
|
40
|
+
</mat-dialog-content>
|
|
41
|
+
<mat-dialog-actions align="center">
|
|
42
|
+
<button mat-raised-button mat-dialog-close [class]="data.reject?.color">
|
|
43
|
+
{{ data.reject?.text }}
|
|
44
|
+
</button>
|
|
45
|
+
<button
|
|
46
|
+
mat-raised-button
|
|
47
|
+
[disabled]="result.invalid || (data.required && !result.value)"
|
|
48
|
+
[class]="data.accept?.color"
|
|
49
|
+
[mat-dialog-close]="result.value"
|
|
50
|
+
>
|
|
51
|
+
{{ data.accept?.text }}
|
|
52
|
+
</button>
|
|
53
|
+
</mat-dialog-actions>
|
|
54
|
+
`, isInline: true, styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i7.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
|
|
55
|
+
}
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3PromptDialogComponent, decorators: [{
|
|
57
|
+
type: Component,
|
|
58
|
+
args: [{ selector: 'PrompDialogComponent', template: `
|
|
59
|
+
<div mat-dialog-title>{{ data.text }}</div>
|
|
60
|
+
<mat-dialog-content>
|
|
61
|
+
<mat-form-field>
|
|
62
|
+
<mat-label *ngIf="data.placeholder">{{ data.placeholder }}</mat-label>
|
|
63
|
+
<input
|
|
64
|
+
*ngIf="!data.multiline"
|
|
65
|
+
matInput
|
|
66
|
+
[formControl]="result"
|
|
67
|
+
(keydown.enter)="dialogRef.close(result.value)"
|
|
68
|
+
/>
|
|
69
|
+
<textarea
|
|
70
|
+
*ngIf="data.multiline"
|
|
71
|
+
matInput
|
|
72
|
+
[formControl]="result"
|
|
73
|
+
cdkTextareaAutosize
|
|
74
|
+
></textarea>
|
|
75
|
+
</mat-form-field>
|
|
76
|
+
</mat-dialog-content>
|
|
77
|
+
<mat-dialog-actions align="center">
|
|
78
|
+
<button mat-raised-button mat-dialog-close [class]="data.reject?.color">
|
|
79
|
+
{{ data.reject?.text }}
|
|
80
|
+
</button>
|
|
81
|
+
<button
|
|
82
|
+
mat-raised-button
|
|
83
|
+
[disabled]="result.invalid || (data.required && !result.value)"
|
|
84
|
+
[class]="data.accept?.color"
|
|
85
|
+
[mat-dialog-close]="result.value"
|
|
86
|
+
>
|
|
87
|
+
{{ data.accept?.text }}
|
|
88
|
+
</button>
|
|
89
|
+
</mat-dialog-actions>
|
|
90
|
+
`, styles: ["mat-form-field{width:100%}\n"] }]
|
|
91
|
+
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
92
|
+
type: Inject,
|
|
93
|
+
args: [MAT_DIALOG_DATA]
|
|
94
|
+
}] }, { type: i2.FormBuilder }] });
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtZGlhbG9nLXByb21wdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jMy1jb21wb25lbnRzL3NyYy9saWIvYzMtZGlhbG9nL2NvbXBvbmVudHMvYzMtZGlhbG9nLXByb21wdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7O0FBZ0V6RSxNQUFNLE9BQU8sdUJBQXVCO0lBRWxDLFlBQ1MsU0FBZ0QsRUFFaEQsSUFBa0IsRUFDakIsR0FBZ0I7UUFIakIsY0FBUyxHQUFULFNBQVMsQ0FBdUM7UUFFaEQsU0FBSSxHQUFKLElBQUksQ0FBYztRQUNqQixRQUFHLEdBQUgsR0FBRyxDQUFhO1FBRXhCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pCLENBQUM7OEdBYlUsdUJBQXVCLDhDQUl4QixlQUFlO2tHQUpkLHVCQUF1Qiw0REF6Q3hCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWdDVDs7MkZBU1UsdUJBQXVCO2tCQTNDbkMsU0FBUzsrQkFDRSxzQkFBc0IsWUFDdEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ0NUOzswQkFhRSxNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFByb21wdENvbmZpZyB7XHJcbiAgdGV4dDogc3RyaW5nO1xyXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZztcclxuICBwbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBtdWx0aWxpbmU/OiBib29sZWFuO1xyXG4gIHZhbGlkYXRvcnM/OiBWYWxpZGF0b3JGbiB8IFZhbGlkYXRvckZuW107XHJcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xyXG4gIHJlamVjdD86IHtcclxuICAgIGNvbG9yOiBzdHJpbmc7XHJcbiAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgfTtcclxuICBhY2NlcHQ/OiB7XHJcbiAgICBjb2xvcjogc3RyaW5nO1xyXG4gICAgdGV4dDogc3RyaW5nO1xyXG4gIH07XHJcbiAgd2lkdGg/OiBzdHJpbmc7XHJcbiAgbWF4V2lkdGg/OiBzdHJpbmc7XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnUHJvbXBEaWFsb2dDb21wb25lbnQnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IG1hdC1kaWFsb2ctdGl0bGU+e3sgZGF0YS50ZXh0IH19PC9kaXY+XHJcbiAgICA8bWF0LWRpYWxvZy1jb250ZW50PlxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPG1hdC1sYWJlbCAqbmdJZj1cImRhdGEucGxhY2Vob2xkZXJcIj57eyBkYXRhLnBsYWNlaG9sZGVyIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAqbmdJZj1cIiFkYXRhLm11bHRpbGluZVwiXHJcbiAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgW2Zvcm1Db250cm9sXT1cInJlc3VsdFwiXHJcbiAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJkaWFsb2dSZWYuY2xvc2UocmVzdWx0LnZhbHVlKVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8dGV4dGFyZWFcclxuICAgICAgICAgICpuZ0lmPVwiZGF0YS5tdWx0aWxpbmVcIlxyXG4gICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJyZXN1bHRcIlxyXG4gICAgICAgICAgY2RrVGV4dGFyZWFBdXRvc2l6ZVxyXG4gICAgICAgID48L3RleHRhcmVhPlxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XHJcbiAgICA8bWF0LWRpYWxvZy1hY3Rpb25zIGFsaWduPVwiY2VudGVyXCI+XHJcbiAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gbWF0LWRpYWxvZy1jbG9zZSBbY2xhc3NdPVwiZGF0YS5yZWplY3Q/LmNvbG9yXCI+XHJcbiAgICAgICAge3sgZGF0YS5yZWplY3Q/LnRleHQgfX1cclxuICAgICAgPC9idXR0b24+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJyZXN1bHQuaW52YWxpZCB8fCAoZGF0YS5yZXF1aXJlZCAmJiAhcmVzdWx0LnZhbHVlKVwiXHJcbiAgICAgICAgW2NsYXNzXT1cImRhdGEuYWNjZXB0Py5jb2xvclwiXHJcbiAgICAgICAgW21hdC1kaWFsb2ctY2xvc2VdPVwicmVzdWx0LnZhbHVlXCJcclxuICAgICAgPlxyXG4gICAgICAgIHt7IGRhdGEuYWNjZXB0Py50ZXh0IH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9tYXQtZGlhbG9nLWFjdGlvbnM+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtcclxuICAgIGBcclxuICAgICAgbWF0LWZvcm0tZmllbGQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICBgLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDM1Byb21wdERpYWxvZ0NvbXBvbmVudCB7XHJcbiAgcmVzdWx0OiBGb3JtQ29udHJvbDtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxDM1Byb21wdERpYWxvZ0NvbXBvbmVudD4sXHJcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSlcclxuICAgIHB1YmxpYyBkYXRhOiBQcm9tcHRDb25maWcsXHJcbiAgICBwcml2YXRlIF9mYjogRm9ybUJ1aWxkZXJcclxuICApIHtcclxuICAgIHRoaXMucmVzdWx0ID0gdGhpcy5fZmIuY29udHJvbChkYXRhLmRlZmF1bHRWYWx1ZSwgZGF0YS52YWxpZGF0b3JzKTtcclxuICB9XHJcblxyXG4gIG9uTm9DbGljaygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { Injectable, inject } from '@angular/core';
|
|
2
|
+
import { MatDialog } from '@angular/material/dialog';
|
|
3
|
+
import { ConfirmDialogComponent, } from '../components/c3-dialog-confirm.component';
|
|
4
|
+
import { C3DialogEmbedChildComponent } from '../components/c3-dialog-embed-child.component';
|
|
5
|
+
import { C3PromptDialogComponent, } from '../components/c3-dialog-prompt.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class C3DialogService {
|
|
8
|
+
#dialog = inject(MatDialog);
|
|
9
|
+
confirm(data) {
|
|
10
|
+
return new Promise((resolve, reject) => {
|
|
11
|
+
const dialogRef = this.#dialog.open(ConfirmDialogComponent, {
|
|
12
|
+
width: data.width || '250px',
|
|
13
|
+
data: {
|
|
14
|
+
text: data.text,
|
|
15
|
+
reject: {
|
|
16
|
+
color: data.reject && data.reject.color ? data.reject.color : undefined,
|
|
17
|
+
text: (data.reject && data.reject.text) || 'Annuler',
|
|
18
|
+
},
|
|
19
|
+
accept: {
|
|
20
|
+
color: (data.accept && data.accept.color) || 'primary',
|
|
21
|
+
text: (data.accept && data.accept.text) || 'Accepter',
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
dialogRef.afterClosed().subscribe(async (result) => {
|
|
26
|
+
if (result)
|
|
27
|
+
resolve(true);
|
|
28
|
+
else
|
|
29
|
+
resolve(false);
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
prompt(data) {
|
|
34
|
+
return new Promise((resolve, reject) => {
|
|
35
|
+
const dialogRef = this.#dialog.open(C3PromptDialogComponent, {
|
|
36
|
+
width: data.width || '250px',
|
|
37
|
+
maxWidth: data.maxWidth || '100vw',
|
|
38
|
+
data: {
|
|
39
|
+
text: data.text,
|
|
40
|
+
defaultValue: data.defaultValue,
|
|
41
|
+
placeholder: data.placeholder,
|
|
42
|
+
multiline: data.multiline,
|
|
43
|
+
validators: data.validators,
|
|
44
|
+
required: data.required,
|
|
45
|
+
reject: {
|
|
46
|
+
color: data.reject && data.reject.color
|
|
47
|
+
? data.reject.color
|
|
48
|
+
: undefined,
|
|
49
|
+
text: (data.reject && data.reject.text) || 'Annuler',
|
|
50
|
+
},
|
|
51
|
+
accept: {
|
|
52
|
+
color: (data.accept && data.accept.color) || 'primary',
|
|
53
|
+
text: (data.accept && data.accept.text) || 'Accepter',
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
dialogRef.afterClosed().subscribe(async (result) => {
|
|
58
|
+
if (result)
|
|
59
|
+
resolve(result);
|
|
60
|
+
else
|
|
61
|
+
resolve(false);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
createDialgFromComponent(config) {
|
|
66
|
+
return this.#dialog.open(C3DialogEmbedChildComponent, config);
|
|
67
|
+
}
|
|
68
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
69
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DialogService, providedIn: 'root' }); }
|
|
70
|
+
}
|
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DialogService, decorators: [{
|
|
72
|
+
type: Injectable,
|
|
73
|
+
args: [{
|
|
74
|
+
providedIn: 'root',
|
|
75
|
+
}]
|
|
76
|
+
}] });
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jMy1jb21wb25lbnRzL3NyYy9saWIvYzMtZGlhbG9nL3NlcnZpY2VzL2MzLWRpYWxvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVEsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQW1CLE1BQU0sMEJBQTBCLENBQUM7QUFDdEUsT0FBTyxFQUVMLHNCQUFzQixHQUN2QixNQUFNLDJDQUEyQyxDQUFDO0FBQ25ELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzVGLE9BQU8sRUFFTCx1QkFBdUIsR0FDeEIsTUFBTSwwQ0FBMEMsQ0FBQzs7QUFLbEQsTUFBTSxPQUFPLGVBQWU7SUFDakIsT0FBTyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUU5QixPQUFPLENBQUMsSUFBbUI7UUFDaEMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNyQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtnQkFDMUQsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLElBQUksT0FBTztnQkFDNUIsSUFBSSxFQUFFO29CQUNKLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtvQkFDZixNQUFNLEVBQUU7d0JBQ04sS0FBSyxFQUNILElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTO3dCQUNsRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksU0FBUztxQkFDckQ7b0JBQ0QsTUFBTSxFQUFFO3dCQUNOLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxTQUFTO3dCQUN0RCxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksVUFBVTtxQkFDdEQ7aUJBQ0Y7YUFDRixDQUFDLENBQUM7WUFFSCxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDakQsSUFBSSxNQUFNO29CQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQzs7b0JBQ3JCLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN0QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLE1BQU0sQ0FBVSxJQUFrQjtRQUN2QyxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUNqQyx1QkFBdUIsRUFDdkI7Z0JBQ0UsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLElBQUksT0FBTztnQkFDNUIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLElBQUksT0FBTztnQkFDbEMsSUFBSSxFQUFFO29CQUNKLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtvQkFDZixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7b0JBQy9CLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztvQkFDN0IsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO29CQUN6QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7b0JBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtvQkFDdkIsTUFBTSxFQUFFO3dCQUNOLEtBQUssRUFDSCxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSzs0QkFDOUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSzs0QkFDbkIsQ0FBQyxDQUFDLFNBQVM7d0JBQ2YsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFNBQVM7cUJBQ3JEO29CQUNELE1BQU0sRUFBRTt3QkFDTixLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksU0FBUzt3QkFDdEQsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFVBQVU7cUJBQ3REO2lCQUNGO2FBQ0YsQ0FDRixDQUFDO1lBRUYsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUU7Z0JBQ2pELElBQUksTUFBTTtvQkFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7O29CQUN2QixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx3QkFBd0IsQ0FDdEIsTUFFQztRQUVELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEUsQ0FBQzs4R0F0RVUsZUFBZTtrSEFBZixlQUFlLGNBRmQsTUFBTTs7MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBUeXBlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nQ29uZmlnIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7XG4gIENvbmZpcm1Db25maWcsXG4gIENvbmZpcm1EaWFsb2dDb21wb25lbnQsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvYzMtZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEMzRGlhbG9nRW1iZWRDaGlsZENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvYzMtZGlhbG9nLWVtYmVkLWNoaWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBQcm9tcHRDb25maWcsXG4gIEMzUHJvbXB0RGlhbG9nQ29tcG9uZW50LFxufSBmcm9tICcuLi9jb21wb25lbnRzL2MzLWRpYWxvZy1wcm9tcHQuY29tcG9uZW50JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEMzRGlhbG9nU2VydmljZSB7XG4gIHJlYWRvbmx5ICNkaWFsb2cgPSBpbmplY3QoTWF0RGlhbG9nKTtcblxuICBwdWJsaWMgY29uZmlybShkYXRhOiBDb25maXJtQ29uZmlnKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuI2RpYWxvZy5vcGVuKENvbmZpcm1EaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgd2lkdGg6IGRhdGEud2lkdGggfHwgJzI1MHB4JyxcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIHRleHQ6IGRhdGEudGV4dCxcbiAgICAgICAgICByZWplY3Q6IHtcbiAgICAgICAgICAgIGNvbG9yOlxuICAgICAgICAgICAgICBkYXRhLnJlamVjdCAmJiBkYXRhLnJlamVjdC5jb2xvciA/IGRhdGEucmVqZWN0LmNvbG9yIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgdGV4dDogKGRhdGEucmVqZWN0ICYmIGRhdGEucmVqZWN0LnRleHQpIHx8ICdBbm51bGVyJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGFjY2VwdDoge1xuICAgICAgICAgICAgY29sb3I6IChkYXRhLmFjY2VwdCAmJiBkYXRhLmFjY2VwdC5jb2xvcikgfHwgJ3ByaW1hcnknLFxuICAgICAgICAgICAgdGV4dDogKGRhdGEuYWNjZXB0ICYmIGRhdGEuYWNjZXB0LnRleHQpIHx8ICdBY2NlcHRlcicsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoYXN5bmMgKHJlc3VsdCkgPT4ge1xuICAgICAgICBpZiAocmVzdWx0KSByZXNvbHZlKHRydWUpO1xuICAgICAgICBlbHNlIHJlc29sdmUoZmFsc2UpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcHJvbXB0PFQgPSBhbnk+KGRhdGE6IFByb21wdENvbmZpZyk6IFByb21pc2U8ZmFsc2UgfCBUPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuI2RpYWxvZy5vcGVuPEMzUHJvbXB0RGlhbG9nQ29tcG9uZW50LCBhbnksIFQ+KFxuICAgICAgICBDM1Byb21wdERpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAge1xuICAgICAgICAgIHdpZHRoOiBkYXRhLndpZHRoIHx8ICcyNTBweCcsXG4gICAgICAgICAgbWF4V2lkdGg6IGRhdGEubWF4V2lkdGggfHwgJzEwMHZ3JyxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICB0ZXh0OiBkYXRhLnRleHQsXG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU6IGRhdGEuZGVmYXVsdFZhbHVlLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXI6IGRhdGEucGxhY2Vob2xkZXIsXG4gICAgICAgICAgICBtdWx0aWxpbmU6IGRhdGEubXVsdGlsaW5lLFxuICAgICAgICAgICAgdmFsaWRhdG9yczogZGF0YS52YWxpZGF0b3JzLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IGRhdGEucmVxdWlyZWQsXG4gICAgICAgICAgICByZWplY3Q6IHtcbiAgICAgICAgICAgICAgY29sb3I6XG4gICAgICAgICAgICAgICAgZGF0YS5yZWplY3QgJiYgZGF0YS5yZWplY3QuY29sb3JcbiAgICAgICAgICAgICAgICAgID8gZGF0YS5yZWplY3QuY29sb3JcbiAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICB0ZXh0OiAoZGF0YS5yZWplY3QgJiYgZGF0YS5yZWplY3QudGV4dCkgfHwgJ0FubnVsZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGFjY2VwdDoge1xuICAgICAgICAgICAgICBjb2xvcjogKGRhdGEuYWNjZXB0ICYmIGRhdGEuYWNjZXB0LmNvbG9yKSB8fCAncHJpbWFyeScsXG4gICAgICAgICAgICAgIHRleHQ6IChkYXRhLmFjY2VwdCAmJiBkYXRhLmFjY2VwdC50ZXh0KSB8fCAnQWNjZXB0ZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoYXN5bmMgKHJlc3VsdCkgPT4ge1xuICAgICAgICBpZiAocmVzdWx0KSByZXNvbHZlKHJlc3VsdCk7XG4gICAgICAgIGVsc2UgcmVzb2x2ZShmYWxzZSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIGNyZWF0ZURpYWxnRnJvbUNvbXBvbmVudDxUPihcbiAgICBjb25maWc6IFBhcnRpYWw8TWF0RGlhbG9nQ29uZmlnPiAmIHtcbiAgICAgIGRhdGE6IHsgY29tcG9uZW50OiBUeXBlPFQ+IH07XG4gICAgfVxuICApIHtcbiAgICByZXR1cm4gdGhpcy4jZGlhbG9nLm9wZW4oQzNEaWFsb2dFbWJlZENoaWxkQ29tcG9uZW50LCBjb25maWcpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { C3DropdownComponent } from './components/c3-dropdown.component';
|
|
4
|
+
import { C3DropdownTrigger } from './directives/c3-dropdown.trigger';
|
|
5
|
+
import { OverlayModule } from '@angular/cdk/overlay';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class C3DropdownModule {
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: C3DropdownModule, declarations: [C3DropdownComponent, C3DropdownTrigger], imports: [CommonModule, OverlayModule], exports: [C3DropdownComponent, C3DropdownTrigger] }); }
|
|
10
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DropdownModule, imports: [CommonModule, OverlayModule] }); }
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DropdownModule, decorators: [{
|
|
13
|
+
type: NgModule,
|
|
14
|
+
args: [{
|
|
15
|
+
imports: [CommonModule, OverlayModule],
|
|
16
|
+
declarations: [C3DropdownComponent, C3DropdownTrigger],
|
|
17
|
+
exports: [C3DropdownComponent, C3DropdownTrigger],
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtZHJvcGRvd24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYzMtY29tcG9uZW50cy9zcmMvbGliL2MzLWRyb3Bkb3duL2MzLWRyb3Bkb3duLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBT3JELE1BQU0sT0FBTyxnQkFBZ0I7OEdBQWhCLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLGlCQUhaLG1CQUFtQixFQUFFLGlCQUFpQixhQUQzQyxZQUFZLEVBQUUsYUFBYSxhQUUzQixtQkFBbUIsRUFBRSxpQkFBaUI7K0dBRXJDLGdCQUFnQixZQUpqQixZQUFZLEVBQUUsYUFBYTs7MkZBSTFCLGdCQUFnQjtrQkFMNUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDO29CQUN0QyxZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSxpQkFBaUIsQ0FBQztvQkFDdEQsT0FBTyxFQUFFLENBQUMsbUJBQW1CLEVBQUUsaUJBQWlCLENBQUM7aUJBQ2xEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDM0Ryb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2MzLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDM0Ryb3Bkb3duVHJpZ2dlciB9IGZyb20gJy4vZGlyZWN0aXZlcy9jMy1kcm9wZG93bi50cmlnZ2VyJztcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE92ZXJsYXlNb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtDM0Ryb3Bkb3duQ29tcG9uZW50LCBDM0Ryb3Bkb3duVHJpZ2dlcl0sXG4gIGV4cG9ydHM6IFtDM0Ryb3Bkb3duQ29tcG9uZW50LCBDM0Ryb3Bkb3duVHJpZ2dlcl0sXG59KVxuZXhwb3J0IGNsYXNzIEMzRHJvcGRvd25Nb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Component, TemplateRef, ViewChild, Input, } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class C3DropdownComponent {
|
|
5
|
+
constructor(_changeDetectorRef) {
|
|
6
|
+
this._changeDetectorRef = _changeDetectorRef;
|
|
7
|
+
/** Classes to be added to the container of the content. Supports the same syntax as `ngClass`. */
|
|
8
|
+
this.dropdownClass = '';
|
|
9
|
+
}
|
|
10
|
+
ngOnChanges(changes) {
|
|
11
|
+
if (changes['dropdownClass']) {
|
|
12
|
+
this._markForCheck();
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
_markForCheck() {
|
|
16
|
+
this._changeDetectorRef.markForCheck();
|
|
17
|
+
}
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DropdownComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: C3DropdownComponent, selector: "c3-dropdown", inputs: { dropdownClass: "dropdownClass" }, viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
20
|
+
<ng-template>
|
|
21
|
+
<div class="c3-dropdown-panel" [ngClass]="dropdownClass">
|
|
22
|
+
<ng-content></ng-content>
|
|
23
|
+
</div>
|
|
24
|
+
</ng-template>
|
|
25
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DropdownComponent, decorators: [{
|
|
28
|
+
type: Component,
|
|
29
|
+
args: [{
|
|
30
|
+
selector: 'c3-dropdown',
|
|
31
|
+
template: `
|
|
32
|
+
<ng-template>
|
|
33
|
+
<div class="c3-dropdown-panel" [ngClass]="dropdownClass">
|
|
34
|
+
<ng-content></ng-content>
|
|
35
|
+
</div>
|
|
36
|
+
</ng-template>
|
|
37
|
+
`,
|
|
38
|
+
}]
|
|
39
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { template: [{
|
|
40
|
+
type: ViewChild,
|
|
41
|
+
args: [TemplateRef]
|
|
42
|
+
}], dropdownClass: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}] } });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYzMtY29tcG9uZW50cy9zcmMvbGliL2MzLWRyb3Bkb3duL2NvbXBvbmVudHMvYzMtZHJvcGRvd24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsV0FBVyxFQUNYLFNBQVMsRUFDVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7OztBQVl2QixNQUFNLE9BQU8sbUJBQW1CO0lBTzlCLFlBQW9CLGtCQUFxQztRQUFyQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBSnpELGtHQUFrRztRQUVsRyxrQkFBYSxHQUE2RCxFQUFFLENBQUM7SUFFakIsQ0FBQztJQUU3RCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQztJQUNILENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7OEdBakJVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLHlJQUNuQixXQUFXLHFFQVRaOzs7Ozs7R0FNVDs7MkZBRVUsbUJBQW1CO2tCQVYvQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixRQUFRLEVBQUU7Ozs7OztHQU1UO2lCQUNGO3NGQUV5QixRQUFRO3NCQUEvQixTQUFTO3VCQUFDLFdBQVc7Z0JBSXRCLGFBQWE7c0JBRFosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjMy1kcm9wZG93bicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLXRlbXBsYXRlPlxuICAgICAgPGRpdiBjbGFzcz1cImMzLWRyb3Bkb3duLXBhbmVsXCIgW25nQ2xhc3NdPVwiZHJvcGRvd25DbGFzc1wiPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBDM0Ryb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQFZpZXdDaGlsZChUZW1wbGF0ZVJlZikgdGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIC8qKiBDbGFzc2VzIHRvIGJlIGFkZGVkIHRvIHRoZSBjb250YWluZXIgb2YgdGhlIGNvbnRlbnQuIFN1cHBvcnRzIHRoZSBzYW1lIHN5bnRheCBhcyBgbmdDbGFzc2AuICovXG4gIEBJbnB1dCgpXG4gIGRyb3Bkb3duQ2xhc3M6IHN0cmluZyB8IHN0cmluZ1tdIHwgU2V0PHN0cmluZz4gfCB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0gJyc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snZHJvcGRvd25DbGFzcyddKSB7XG4gICAgICB0aGlzLl9tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBfbWFya0ZvckNoZWNrKCk6IHZvaWQge1xuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { Directive, forwardRef, Input, HostListener, } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { OverlayConfig, } from '@angular/cdk/overlay';
|
|
4
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
5
|
+
import { TemplatePortal } from '@angular/cdk/portal';
|
|
6
|
+
import { merge, Subject, Subscription, takeUntil } from 'rxjs';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/cdk/overlay";
|
|
9
|
+
export const MAT_DROPDOWN_VALUE_ACCESSOR = {
|
|
10
|
+
provide: NG_VALUE_ACCESSOR,
|
|
11
|
+
useExisting: forwardRef(() => C3DropdownTrigger),
|
|
12
|
+
multi: true,
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* @description The C3DropdownTrigger directive is used to display or hide a dropdown menu
|
|
16
|
+
* C3DropdownComponent when an item is clicked.
|
|
17
|
+
* @selector [c3Dropdown]
|
|
18
|
+
* @exportAs c3DropdownTrigger
|
|
19
|
+
* @input c3Dropdown - A reference to an instance of C3DropdownComponent.
|
|
20
|
+
* @input c3DropdownDisabled - A boolean indicating whether the directive should be disabled.
|
|
21
|
+
* @input c3DropdownClass - A string, an array of strings, a set of strings or a
|
|
22
|
+
* object representing the CSS classes to be applied to the dropdown menu.
|
|
23
|
+
*/
|
|
24
|
+
export class C3DropdownTrigger {
|
|
25
|
+
/** Whether the dropdown is disabled. */
|
|
26
|
+
get dropdownDisabled() {
|
|
27
|
+
return this._dropdownDisabled;
|
|
28
|
+
}
|
|
29
|
+
set dropdownDisabled(value) {
|
|
30
|
+
this._dropdownDisabled = coerceBooleanProperty(value);
|
|
31
|
+
}
|
|
32
|
+
constructor(_element, _overlay, _viewContainerRef) {
|
|
33
|
+
this._element = _element;
|
|
34
|
+
this._overlay = _overlay;
|
|
35
|
+
this._viewContainerRef = _viewContainerRef;
|
|
36
|
+
this._closingActionsSubscription = Subscription.EMPTY;
|
|
37
|
+
this._destroyed = new Subject();
|
|
38
|
+
this._dropdownClass = '';
|
|
39
|
+
this._dropdownDisabled = false;
|
|
40
|
+
/** Classes to be passed to the dropdown menu. Supports the same syntax as `ngClass`. */
|
|
41
|
+
this.dropdownClass = '';
|
|
42
|
+
}
|
|
43
|
+
onClick() {
|
|
44
|
+
this.show();
|
|
45
|
+
}
|
|
46
|
+
ngOnChanges(changes) {
|
|
47
|
+
if (changes['dropdownClass'] && this.dropdown) {
|
|
48
|
+
this.dropdown.dropdownClass = this._dropdownClass;
|
|
49
|
+
this.dropdown._markForCheck();
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
ngOnDestroy() {
|
|
53
|
+
this._destroyed.next();
|
|
54
|
+
this._destroyed.complete();
|
|
55
|
+
this._closingActionsSubscription.unsubscribe();
|
|
56
|
+
this.close();
|
|
57
|
+
}
|
|
58
|
+
show() {
|
|
59
|
+
if (!this.dropdown)
|
|
60
|
+
return;
|
|
61
|
+
const overlayRef = this._overlay.create(this._getOverlayConfig());
|
|
62
|
+
const portal = new TemplatePortal(this.dropdown.template, this._viewContainerRef);
|
|
63
|
+
overlayRef.attach(portal);
|
|
64
|
+
this.overlayRef = overlayRef;
|
|
65
|
+
this._closingActionsSubscription = this._menuClosingActions().subscribe(() => this.close());
|
|
66
|
+
}
|
|
67
|
+
close() {
|
|
68
|
+
if (this.overlayRef && this.overlayRef.hasAttached())
|
|
69
|
+
this.overlayRef.detach();
|
|
70
|
+
}
|
|
71
|
+
_getOverlayConfig() {
|
|
72
|
+
const belowPosition = {
|
|
73
|
+
originX: 'start',
|
|
74
|
+
originY: 'bottom',
|
|
75
|
+
overlayX: 'start',
|
|
76
|
+
overlayY: 'top',
|
|
77
|
+
};
|
|
78
|
+
const abovePosition = {
|
|
79
|
+
originX: 'start',
|
|
80
|
+
originY: 'top',
|
|
81
|
+
overlayX: 'start',
|
|
82
|
+
overlayY: 'bottom',
|
|
83
|
+
// The overlay edge connected to the trigger should have squared corners, while
|
|
84
|
+
// the opposite end has rounded corners. We apply a CSS class to swap the
|
|
85
|
+
// border-radius based on the overlay position.
|
|
86
|
+
panelClass: 'mat-autocomplete-panel-above',
|
|
87
|
+
};
|
|
88
|
+
const positionStrategy = this._overlay
|
|
89
|
+
.position()
|
|
90
|
+
.flexibleConnectedTo(this._element)
|
|
91
|
+
.withLockedPosition()
|
|
92
|
+
.withPositions([belowPosition, abovePosition]);
|
|
93
|
+
return new OverlayConfig({
|
|
94
|
+
positionStrategy,
|
|
95
|
+
backdropClass: 'cdk-overlay-transparent-backdrop',
|
|
96
|
+
hasBackdrop: true,
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
/** Returns a stream that emits whenever an action that should close the menu occurs. */
|
|
100
|
+
_menuClosingActions() {
|
|
101
|
+
const backdrop = this.overlayRef.backdropClick();
|
|
102
|
+
const detachments = this.overlayRef.detachments();
|
|
103
|
+
return merge(backdrop, detachments).pipe(takeUntil(this._destroyed));
|
|
104
|
+
}
|
|
105
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DropdownTrigger, deps: [{ token: i0.ElementRef }, { token: i1.Overlay }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
106
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: C3DropdownTrigger, selector: "[c3Dropdown]", inputs: { dropdown: ["c3Dropdown", "dropdown"], dropdownDisabled: ["c3DropdownDisabled", "dropdownDisabled"], dropdownClass: ["c3DropdownClass", "dropdownClass"] }, host: { listeners: { "click": "onClick()" } }, providers: [MAT_DROPDOWN_VALUE_ACCESSOR], exportAs: ["c3DropdownTrigger"], usesOnChanges: true, ngImport: i0 }); }
|
|
107
|
+
}
|
|
108
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: C3DropdownTrigger, decorators: [{
|
|
109
|
+
type: Directive,
|
|
110
|
+
args: [{
|
|
111
|
+
selector: '[c3Dropdown]',
|
|
112
|
+
exportAs: 'c3DropdownTrigger',
|
|
113
|
+
providers: [MAT_DROPDOWN_VALUE_ACCESSOR],
|
|
114
|
+
}]
|
|
115
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.Overlay }, { type: i0.ViewContainerRef }], propDecorators: { dropdown: [{
|
|
116
|
+
type: Input,
|
|
117
|
+
args: ['c3Dropdown']
|
|
118
|
+
}], dropdownDisabled: [{
|
|
119
|
+
type: Input,
|
|
120
|
+
args: ['c3DropdownDisabled']
|
|
121
|
+
}], dropdownClass: [{
|
|
122
|
+
type: Input,
|
|
123
|
+
args: ['c3DropdownClass']
|
|
124
|
+
}], onClick: [{
|
|
125
|
+
type: HostListener,
|
|
126
|
+
args: ['click']
|
|
127
|
+
}] } });
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzMtZHJvcGRvd24udHJpZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2MzLWNvbXBvbmVudHMvc3JjL2xpYi9jMy1kcm9wZG93bi9kaXJlY3RpdmVzL2MzLWRyb3Bkb3duLnRyaWdnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBR1YsS0FBSyxFQUVMLFlBQVksR0FHYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBR0wsYUFBYSxHQUVkLE1BQU0sc0JBQXNCLENBQUM7QUFFOUIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQUUvRCxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBUTtJQUM5QyxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUM7SUFDaEQsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBRUY7Ozs7Ozs7OztHQVNHO0FBTUgsTUFBTSxPQUFPLGlCQUFpQjtJQWlCNUIsd0NBQXdDO0lBQ3hDLElBQ0ksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFDRCxJQUFJLGdCQUFnQixDQUFDLEtBQWM7UUFDakMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFNRCxZQUNVLFFBQWlDLEVBQ2pDLFFBQWlCLEVBQ2pCLGlCQUFtQztRQUZuQyxhQUFRLEdBQVIsUUFBUSxDQUF5QjtRQUNqQyxhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUEvQnJDLGdDQUEyQixHQUFpQixZQUFZLENBQUMsS0FBSyxDQUFDO1FBQy9ELGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRWpDLG1CQUFjLEdBSU8sRUFBRSxDQUFDO1FBRXhCLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQWUzQyx3RkFBd0Y7UUFFeEYsa0JBQWEsR0FBNkQsRUFBRSxDQUFDO0lBTTFFLENBQUM7SUFHSixPQUFPO1FBQ0wsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDOUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUNsRCxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ2hDLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsMkJBQTJCLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2YsQ0FBQztJQUVNLElBQUk7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBRTNCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7UUFDbEUsTUFBTSxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQy9CLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUN0QixJQUFJLENBQUMsaUJBQWlCLENBQ3ZCLENBQUM7UUFDRixVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTFCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBRTdCLElBQUksQ0FBQywyQkFBMkIsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxTQUFTLENBQ3JFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFO1lBQ2xELElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixNQUFNLGFBQWEsR0FBc0I7WUFDdkMsT0FBTyxFQUFFLE9BQU87WUFDaEIsT0FBTyxFQUFFLFFBQVE7WUFDakIsUUFBUSxFQUFFLE9BQU87WUFDakIsUUFBUSxFQUFFLEtBQUs7U0FDaEIsQ0FBQztRQUNGLE1BQU0sYUFBYSxHQUFzQjtZQUN2QyxPQUFPLEVBQUUsT0FBTztZQUNoQixPQUFPLEVBQUUsS0FBSztZQUNkLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFFBQVEsRUFBRSxRQUFRO1lBRWxCLCtFQUErRTtZQUMvRSx5RUFBeUU7WUFDekUsK0NBQStDO1lBQy9DLFVBQVUsRUFBRSw4QkFBOEI7U0FDM0MsQ0FBQztRQUVGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVE7YUFDbkMsUUFBUSxFQUFFO2FBQ1YsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNsQyxrQkFBa0IsRUFBRTthQUNwQixhQUFhLENBQUMsQ0FBQyxhQUFhLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUVqRCxPQUFPLElBQUksYUFBYSxDQUFDO1lBQ3ZCLGdCQUFnQjtZQUNoQixhQUFhLEVBQUUsa0NBQWtDO1lBQ2pELFdBQVcsRUFBRSxJQUFJO1NBQ2xCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx3RkFBd0Y7SUFDaEYsbUJBQW1CO1FBQ3pCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFXLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDbEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVuRCxPQUFPLEtBQUssQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDOzhHQW5IVSxpQkFBaUI7a0dBQWpCLGlCQUFpQiwyUEFGakIsQ0FBQywyQkFBMkIsQ0FBQzs7MkZBRTdCLGlCQUFpQjtrQkFMN0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsU0FBUyxFQUFFLENBQUMsMkJBQTJCLENBQUM7aUJBQ3pDO29JQWdCQyxRQUFRO3NCQURQLEtBQUs7dUJBQUMsWUFBWTtnQkFLZixnQkFBZ0I7c0JBRG5CLEtBQUs7dUJBQUMsb0JBQW9CO2dCQVUzQixhQUFhO3NCQURaLEtBQUs7dUJBQUMsaUJBQWlCO2dCQVV4QixPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgZm9yd2FyZFJlZixcbiAgRWxlbWVudFJlZixcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgSG9zdExpc3RlbmVyLFxuICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBPdmVybGF5LFxuICBPdmVybGF5UmVmLFxuICBPdmVybGF5Q29uZmlnLFxuICBDb25uZWN0ZWRQb3NpdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQzNEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvYzMtZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgbWVyZ2UsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjb25zdCBNQVRfRFJPUERPV05fVkFMVUVfQUNDRVNTT1I6IGFueSA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEMzRHJvcGRvd25UcmlnZ2VyKSxcbiAgbXVsdGk6IHRydWUsXG59O1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBUaGUgQzNEcm9wZG93blRyaWdnZXIgZGlyZWN0aXZlIGlzIHVzZWQgdG8gZGlzcGxheSBvciBoaWRlIGEgZHJvcGRvd24gbWVudVxuICogQzNEcm9wZG93bkNvbXBvbmVudCB3aGVuIGFuIGl0ZW0gaXMgY2xpY2tlZC5cbiAqIEBzZWxlY3RvciBbYzNEcm9wZG93bl1cbiAqIEBleHBvcnRBcyBjM0Ryb3Bkb3duVHJpZ2dlclxuICogQGlucHV0IGMzRHJvcGRvd24gLSBBIHJlZmVyZW5jZSB0byBhbiBpbnN0YW5jZSBvZiBDM0Ryb3Bkb3duQ29tcG9uZW50LlxuICogQGlucHV0IGMzRHJvcGRvd25EaXNhYmxlZCAtIEEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGRpcmVjdGl2ZSBzaG91bGQgYmUgZGlzYWJsZWQuXG4gKiBAaW5wdXQgYzNEcm9wZG93bkNsYXNzIC0gQSBzdHJpbmcsIGFuIGFycmF5IG9mIHN0cmluZ3MsIGEgc2V0IG9mIHN0cmluZ3Mgb3IgYVxuICogb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgQ1NTIGNsYXNzZXMgdG8gYmUgYXBwbGllZCB0byB0aGUgZHJvcGRvd24gbWVudS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2MzRHJvcGRvd25dJyxcbiAgZXhwb3J0QXM6ICdjM0Ryb3Bkb3duVHJpZ2dlcicsXG4gIHByb3ZpZGVyczogW01BVF9EUk9QRE9XTl9WQUxVRV9BQ0NFU1NPUl0sXG59KVxuZXhwb3J0IGNsYXNzIEMzRHJvcGRvd25UcmlnZ2VyIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIG92ZXJsYXlSZWY/OiBPdmVybGF5UmVmIHwgbnVsbDtcbiAgcHJpdmF0ZSBfY2xvc2luZ0FjdGlvbnNTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcbiAgcHJpdmF0ZSBfZGVzdHJveWVkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcml2YXRlIF9kcm9wZG93bkNsYXNzOlxuICAgIHwgc3RyaW5nXG4gICAgfCBzdHJpbmdbXVxuICAgIHwgU2V0PHN0cmluZz5cbiAgICB8IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSAnJztcblxuICBwcml2YXRlIF9kcm9wZG93bkRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFRoZSBkcm9wZG93biBtZW51IGluc3RhbmNlICovXG4gIEBJbnB1dCgnYzNEcm9wZG93bicpXG4gIGRyb3Bkb3duPzogQzNEcm9wZG93bkNvbXBvbmVudDtcblxuICAvKiogV2hldGhlciB0aGUgZHJvcGRvd24gaXMgZGlzYWJsZWQuICovXG4gIEBJbnB1dCgnYzNEcm9wZG93bkRpc2FibGVkJylcbiAgZ2V0IGRyb3Bkb3duRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Ryb3Bkb3duRGlzYWJsZWQ7XG4gIH1cbiAgc2V0IGRyb3Bkb3duRGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kcm9wZG93bkRpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIC8qKiBDbGFzc2VzIHRvIGJlIHBhc3NlZCB0byB0aGUgZHJvcGRvd24gbWVudS4gU3VwcG9ydHMgdGhlIHNhbWUgc3ludGF4IGFzIGBuZ0NsYXNzYC4gKi9cbiAgQElucHV0KCdjM0Ryb3Bkb3duQ2xhc3MnKVxuICBkcm9wZG93bkNsYXNzOiBzdHJpbmcgfCBzdHJpbmdbXSB8IFNldDxzdHJpbmc+IHwgeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9ICcnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXG4gICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZlxuICApIHt9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBvbkNsaWNrKCkge1xuICAgIHRoaXMuc2hvdygpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWydkcm9wZG93bkNsYXNzJ10gJiYgdGhpcy5kcm9wZG93bikge1xuICAgICAgdGhpcy5kcm9wZG93bi5kcm9wZG93bkNsYXNzID0gdGhpcy5fZHJvcGRvd25DbGFzcztcbiAgICAgIHRoaXMuZHJvcGRvd24uX21hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2Rlc3Ryb3llZC5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveWVkLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fY2xvc2luZ0FjdGlvbnNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cblxuICBwdWJsaWMgc2hvdygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZHJvcGRvd24pIHJldHVybjtcblxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh0aGlzLl9nZXRPdmVybGF5Q29uZmlnKCkpO1xuICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbChcbiAgICAgIHRoaXMuZHJvcGRvd24udGVtcGxhdGUsXG4gICAgICB0aGlzLl92aWV3Q29udGFpbmVyUmVmXG4gICAgKTtcbiAgICBvdmVybGF5UmVmLmF0dGFjaChwb3J0YWwpO1xuXG4gICAgdGhpcy5vdmVybGF5UmVmID0gb3ZlcmxheVJlZjtcblxuICAgIHRoaXMuX2Nsb3NpbmdBY3Rpb25zU3Vic2NyaXB0aW9uID0gdGhpcy5fbWVudUNsb3NpbmdBY3Rpb25zKCkuc3Vic2NyaWJlKFxuICAgICAgKCkgPT4gdGhpcy5jbG9zZSgpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vdmVybGF5UmVmICYmIHRoaXMub3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpKVxuICAgICAgdGhpcy5vdmVybGF5UmVmLmRldGFjaCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0T3ZlcmxheUNvbmZpZygpOiBPdmVybGF5Q29uZmlnIHtcbiAgICBjb25zdCBiZWxvd1Bvc2l0aW9uOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgIH07XG4gICAgY29uc3QgYWJvdmVQb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcblxuICAgICAgLy8gVGhlIG92ZXJsYXkgZWRnZSBjb25uZWN0ZWQgdG8gdGhlIHRyaWdnZXIgc2hvdWxkIGhhdmUgc3F1YXJlZCBjb3JuZXJzLCB3aGlsZVxuICAgICAgLy8gdGhlIG9wcG9zaXRlIGVuZCBoYXMgcm91bmRlZCBjb3JuZXJzLiBXZSBhcHBseSBhIENTUyBjbGFzcyB0byBzd2FwIHRoZVxuICAgICAgLy8gYm9yZGVyLXJhZGl1cyBiYXNlZCBvbiB0aGUgb3ZlcmxheSBwb3NpdGlvbi5cbiAgICAgIHBhbmVsQ2xhc3M6ICdtYXQtYXV0b2NvbXBsZXRlLXBhbmVsLWFib3ZlJyxcbiAgICB9O1xuXG4gICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMuX292ZXJsYXlcbiAgICAgIC5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLl9lbGVtZW50KVxuICAgICAgLndpdGhMb2NrZWRQb3NpdGlvbigpXG4gICAgICAud2l0aFBvc2l0aW9ucyhbYmVsb3dQb3NpdGlvbiwgYWJvdmVQb3NpdGlvbl0pO1xuXG4gICAgcmV0dXJuIG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgICBiYWNrZHJvcENsYXNzOiAnY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3AnLFxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgfSk7XG4gIH1cblxuICAvKiogUmV0dXJucyBhIHN0cmVhbSB0aGF0IGVtaXRzIHdoZW5ldmVyIGFuIGFjdGlvbiB0aGF0IHNob3VsZCBjbG9zZSB0aGUgbWVudSBvY2N1cnMuICovXG4gIHByaXZhdGUgX21lbnVDbG9zaW5nQWN0aW9ucygpIHtcbiAgICBjb25zdCBiYWNrZHJvcCA9IHRoaXMub3ZlcmxheVJlZiEuYmFja2Ryb3BDbGljaygpO1xuICAgIGNvbnN0IGRldGFjaG1lbnRzID0gdGhpcy5vdmVybGF5UmVmIS5kZXRhY2htZW50cygpO1xuXG4gICAgcmV0dXJuIG1lcmdlKGJhY2tkcm9wLCBkZXRhY2htZW50cykucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveWVkKSk7XG4gIH1cbn1cbiJdfQ==
|