ng-tailwind 6.2.0 → 6.4.0
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/components/ngt-checkbox/ngt-checkbox.component.d.ts +6 -6
- package/components/ngt-datatable/ngt-datatable.component.d.ts +24 -24
- package/components/ngt-date/ngt-date.component.d.ts +8 -8
- package/components/ngt-dropdown/ngt-dropdown.component.d.ts +6 -6
- package/components/ngt-floating-button/ngt-floating-button.component.d.ts +13 -13
- package/components/ngt-form/ngt-form.component.d.ts +4 -4
- package/components/ngt-popover/ngt-popover-tooltip/ngt-popover-tooltip.component.d.ts +5 -5
- package/components/ngt-popover/ngt-popover.component.d.ts +6 -6
- package/components/ngt-select/ngt-select.component.d.ts +8 -8
- package/components/ngt-shining/ngt-shining.component.d.ts +6 -6
- package/components/ngt-slider/ngt-slider.component.d.ts +6 -6
- package/components/ngt-svg/ngt-svg.module.d.ts +2 -3
- package/fesm2022/ng-tailwind.mjs +464 -455
- package/fesm2022/ng-tailwind.mjs.map +1 -1
- package/package.json +1 -3
- package/services/http/ngt-http-validation.service.d.ts +3 -5
- package/esm2022/animations/ngt-angular-animations.mjs +0 -34
- package/esm2022/base/ngt-base-ng-model.mjs +0 -90
- package/esm2022/components/ngt-action/ngt-action.component.mjs +0 -96
- package/esm2022/components/ngt-action/ngt-action.module.mjs +0 -28
- package/esm2022/components/ngt-button/ngt-button.component.mjs +0 -142
- package/esm2022/components/ngt-button/ngt-button.module.mjs +0 -28
- package/esm2022/components/ngt-checkbox/ngt-checkbox.component.mjs +0 -192
- package/esm2022/components/ngt-checkbox/ngt-checkbox.module.mjs +0 -28
- package/esm2022/components/ngt-content/ngt-content.component.mjs +0 -32
- package/esm2022/components/ngt-content/ngt-content.module.mjs +0 -20
- package/esm2022/components/ngt-context-menu/ngt-context-menu.component.mjs +0 -25
- package/esm2022/components/ngt-context-menu/ngt-context-menu.directive.mjs +0 -89
- package/esm2022/components/ngt-context-menu/ngt-context-menu.module.mjs +0 -33
- package/esm2022/components/ngt-datatable/ngt-datatable.component.mjs +0 -470
- package/esm2022/components/ngt-datatable/ngt-datatable.module.mjs +0 -99
- package/esm2022/components/ngt-datatable/ngt-tbody/ngt-tbody.component.mjs +0 -57
- package/esm2022/components/ngt-datatable/ngt-td/ngt-td.component.mjs +0 -62
- package/esm2022/components/ngt-datatable/ngt-td-check/ngt-td-check.component.mjs +0 -113
- package/esm2022/components/ngt-datatable/ngt-th/ngt-th.component.mjs +0 -228
- package/esm2022/components/ngt-datatable/ngt-th-check/ngt-th-check.component.mjs +0 -127
- package/esm2022/components/ngt-datatable/ngt-thead/ngt-thead.component.mjs +0 -55
- package/esm2022/components/ngt-datatable/ngt-tr/ngt-tr.component.mjs +0 -86
- package/esm2022/components/ngt-date/ngt-date.component.mjs +0 -436
- package/esm2022/components/ngt-date/ngt-date.module.mjs +0 -40
- package/esm2022/components/ngt-dropdown/ngt-dropdown-container/ngt-dropdown-container.component.mjs +0 -19
- package/esm2022/components/ngt-dropdown/ngt-dropdown.component.mjs +0 -205
- package/esm2022/components/ngt-dropdown/ngt-dropdown.module.mjs +0 -21
- package/esm2022/components/ngt-dropzone/custom-dropzone-preview/custom-dropzone-preview.component.mjs +0 -54
- package/esm2022/components/ngt-dropzone/ngt-dropzone-file-viewer/ngt-dropzone-file-viewer.component.mjs +0 -66
- package/esm2022/components/ngt-dropzone/ngt-dropzone-view/ngt-dropzone-view.component.mjs +0 -94
- package/esm2022/components/ngt-dropzone/ngt-dropzone.component.mjs +0 -496
- package/esm2022/components/ngt-dropzone/ngt-dropzone.meta.mjs +0 -24
- package/esm2022/components/ngt-dropzone/ngt-dropzone.module.mjs +0 -55
- package/esm2022/components/ngt-floating-button/ngt-floating-button.component.mjs +0 -119
- package/esm2022/components/ngt-floating-button/ngt-floating-button.module.mjs +0 -28
- package/esm2022/components/ngt-form/ngt-form-validation-message/ngt-form-validation-message.component.mjs +0 -22
- package/esm2022/components/ngt-form/ngt-form.component.mjs +0 -207
- package/esm2022/components/ngt-form/ngt-form.module.mjs +0 -29
- package/esm2022/components/ngt-header-nav/ngt-header-nav.component.mjs +0 -39
- package/esm2022/components/ngt-header-nav/ngt-header-nav.module.mjs +0 -20
- package/esm2022/components/ngt-helper/ngt-helper.component.mjs +0 -69
- package/esm2022/components/ngt-helper/ngt-helper.module.mjs +0 -28
- package/esm2022/components/ngt-input/ngt-input.component.mjs +0 -844
- package/esm2022/components/ngt-input/ngt-input.module.mjs +0 -47
- package/esm2022/components/ngt-modal/ngt-modal-body/ngt-modal-body.component.mjs +0 -46
- package/esm2022/components/ngt-modal/ngt-modal-footer/ngt-modal-footer.component.mjs +0 -33
- package/esm2022/components/ngt-modal/ngt-modal-header/ngt-modal-header.component.mjs +0 -40
- package/esm2022/components/ngt-modal/ngt-modal.component.mjs +0 -122
- package/esm2022/components/ngt-modal/ngt-modal.module.mjs +0 -39
- package/esm2022/components/ngt-multi-select/ngt-multi-select.component.mjs +0 -503
- package/esm2022/components/ngt-multi-select/ngt-multi-select.module.mjs +0 -52
- package/esm2022/components/ngt-pagination/ngt-pagination.component.mjs +0 -162
- package/esm2022/components/ngt-pagination/ngt-pagination.module.mjs +0 -36
- package/esm2022/components/ngt-popover/ngt-popover-tooltip/ngt-popover-tooltip.component.mjs +0 -59
- package/esm2022/components/ngt-popover/ngt-popover.component.mjs +0 -85
- package/esm2022/components/ngt-popover/ngt-popover.directive.mjs +0 -130
- package/esm2022/components/ngt-popover/ngt-popover.module.mjs +0 -36
- package/esm2022/components/ngt-portlet/ngt-portlet-body/ngt-portlet-body.component.mjs +0 -34
- package/esm2022/components/ngt-portlet/ngt-portlet-footer/ngt-portlet-footer.component.mjs +0 -35
- package/esm2022/components/ngt-portlet/ngt-portlet-header/ngt-portlet-header.component.mjs +0 -57
- package/esm2022/components/ngt-portlet/ngt-portlet.component.mjs +0 -74
- package/esm2022/components/ngt-portlet/ngt-portlet.module.mjs +0 -47
- package/esm2022/components/ngt-radio-button/ngt-radio-button-container/ngt-radio-button-container.component.mjs +0 -19
- package/esm2022/components/ngt-radio-button/ngt-radio-button.component.mjs +0 -153
- package/esm2022/components/ngt-radio-button/ngt-radio-button.module.mjs +0 -29
- package/esm2022/components/ngt-section/ngt-section.component.mjs +0 -151
- package/esm2022/components/ngt-section/ngt-section.module.mjs +0 -32
- package/esm2022/components/ngt-select/ngt-select.component.mjs +0 -670
- package/esm2022/components/ngt-select/ngt-select.directive.mjs +0 -36
- package/esm2022/components/ngt-select/ngt-select.module.mjs +0 -65
- package/esm2022/components/ngt-shining/ngt-shining.component.mjs +0 -40
- package/esm2022/components/ngt-shining/ngt-shining.module.mjs +0 -20
- package/esm2022/components/ngt-sidenav/ngt-sidenav.component.mjs +0 -132
- package/esm2022/components/ngt-sidenav/ngt-sidenav.module.mjs +0 -20
- package/esm2022/components/ngt-slider/ngt-slider.component.mjs +0 -100
- package/esm2022/components/ngt-slider/ngt-slider.module.mjs +0 -24
- package/esm2022/components/ngt-svg/ngt-svg.component.mjs +0 -53
- package/esm2022/components/ngt-svg/ngt-svg.module.mjs +0 -28
- package/esm2022/components/ngt-tag/ngt-tag.component.mjs +0 -37
- package/esm2022/components/ngt-tag/ngt-tag.module.mjs +0 -24
- package/esm2022/components/ngt-textarea/ngt-textarea.component.mjs +0 -238
- package/esm2022/components/ngt-textarea/ngt-textarea.module.mjs +0 -43
- package/esm2022/components/ngt-validation/ngt-validation.component.mjs +0 -26
- package/esm2022/components/ngt-validation/ngt-validation.module.mjs +0 -20
- package/esm2022/directives/ngt-stylizable/ngt-stylizable.directive.mjs +0 -299
- package/esm2022/directives/ngt-stylizable/ngt-stylizable.module.mjs +0 -20
- package/esm2022/enums/size.enum.mjs +0 -11
- package/esm2022/helpers/enum/enum.mjs +0 -7
- package/esm2022/helpers/form/form.mjs +0 -14
- package/esm2022/helpers/input-mask/input-mask.helper.mjs +0 -26
- package/esm2022/helpers/promise/promise-helper.mjs +0 -4
- package/esm2022/helpers/routing/route.mjs +0 -11
- package/esm2022/helpers/uuid.mjs +0 -10
- package/esm2022/ng-tailwind.mjs +0 -5
- package/esm2022/public-api.mjs +0 -127
- package/esm2022/services/http/ngt-attachment-http.service.mjs +0 -3
- package/esm2022/services/http/ngt-http-form.service.mjs +0 -3
- package/esm2022/services/http/ngt-http-resource.service.mjs +0 -3
- package/esm2022/services/http/ngt-http-validation.service.mjs +0 -3
- package/esm2022/services/http/ngt-http.service.mjs +0 -3
- package/esm2022/services/http/ngt-translate.service.mjs +0 -3
- package/esm2022/services/ngt-stylizable/ngt-stylizable.service.mjs +0 -279
- package/esm2022/services/validation/ngt-ability-validation.service.mjs +0 -3
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
import { animate, state, style, transition, trigger } from '@angular/animations';
|
|
2
|
-
import { Component, Host, Input, Optional, Self, SkipSelf, ViewChild, } from '@angular/core';
|
|
3
|
-
import { ControlContainer, NgForm } from '@angular/forms';
|
|
4
|
-
import { NgtBaseNgModel, NgtMakeProvider } from '../../base/ngt-base-ng-model';
|
|
5
|
-
import { getEnumFromString } from '../../helpers/enum/enum';
|
|
6
|
-
import { NgtStylizableService } from '../../services/ngt-stylizable/ngt-stylizable.service';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/forms";
|
|
9
|
-
import * as i2 from "../../directives/ngt-stylizable/ngt-stylizable.directive";
|
|
10
|
-
import * as i3 from "../ngt-form/ngt-form.component";
|
|
11
|
-
import * as i4 from "../ngt-section/ngt-section.component";
|
|
12
|
-
import * as i5 from "../ngt-modal/ngt-modal.component";
|
|
13
|
-
import * as i6 from "@angular/common";
|
|
14
|
-
import * as i7 from "../ngt-shining/ngt-shining.component";
|
|
15
|
-
import * as i8 from "../ngt-helper/ngt-helper.component";
|
|
16
|
-
export class NgtCheckboxComponent extends NgtBaseNgModel {
|
|
17
|
-
constructor(injector, renderer, formContainer, ngtStylizableDirective, ngtForm, ngtSection, ngtModal) {
|
|
18
|
-
super();
|
|
19
|
-
this.injector = injector;
|
|
20
|
-
this.renderer = renderer;
|
|
21
|
-
this.formContainer = formContainer;
|
|
22
|
-
this.ngtStylizableDirective = ngtStylizableDirective;
|
|
23
|
-
this.ngtForm = ngtForm;
|
|
24
|
-
this.ngtSection = ngtSection;
|
|
25
|
-
this.ngtModal = ngtModal;
|
|
26
|
-
this.shining = false;
|
|
27
|
-
this.isDisabled = false;
|
|
28
|
-
this.isClickDisabled = false;
|
|
29
|
-
this.mode = NgtCheckboxMode.DEFAULT;
|
|
30
|
-
this.helpTextColor = 'text-green-500';
|
|
31
|
-
this.helperAutoXReverse = true;
|
|
32
|
-
this.subscriptions = [];
|
|
33
|
-
if (this.ngtStylizableDirective) {
|
|
34
|
-
this.ngtStyle = this.ngtStylizableDirective.getNgtStylizableService();
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
this.ngtStyle = new NgtStylizableService();
|
|
38
|
-
}
|
|
39
|
-
this.ngtStyle.load(this.injector, 'NgtCheckbox', {
|
|
40
|
-
h: 'h-6',
|
|
41
|
-
w: 'w-6',
|
|
42
|
-
text: 'text-sm',
|
|
43
|
-
fontCase: '',
|
|
44
|
-
color: {
|
|
45
|
-
bg: 'bg-gray-500',
|
|
46
|
-
text: 'text-gray-500',
|
|
47
|
-
border: 'border-gray-500',
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
ngAfterViewInit() {
|
|
52
|
-
this.renderer.listen(this.element.nativeElement, 'change', (value) => {
|
|
53
|
-
this.onNativeChange(this.element.nativeElement.checked);
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
ngOnChanges(changes) {
|
|
57
|
-
if (changes.mode) {
|
|
58
|
-
this.mode = getEnumFromString(changes.mode.currentValue, NgtCheckboxMode);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
ngOnDestroy() {
|
|
62
|
-
this.destroySubscriptions();
|
|
63
|
-
}
|
|
64
|
-
change(value) {
|
|
65
|
-
if (this.hasChangesBetweenModels()) {
|
|
66
|
-
this.element.nativeElement.checked = value;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
onNativeChange(value) {
|
|
70
|
-
if (this.hasChangesBetweenModels()) {
|
|
71
|
-
this.value = value;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
hasChangesBetweenModels() {
|
|
75
|
-
return this.element.nativeElement.checked !== this.value;
|
|
76
|
-
}
|
|
77
|
-
isToggleMode() {
|
|
78
|
-
return this.mode === NgtCheckboxMode.TOGGLE;
|
|
79
|
-
}
|
|
80
|
-
isSideToggleMode() {
|
|
81
|
-
return this.mode === NgtCheckboxMode.SIDE_TOGGLE;
|
|
82
|
-
}
|
|
83
|
-
isDefaultMode() {
|
|
84
|
-
return this.mode === NgtCheckboxMode.DEFAULT;
|
|
85
|
-
}
|
|
86
|
-
isRadioMode() {
|
|
87
|
-
return this.mode === NgtCheckboxMode.RADIO;
|
|
88
|
-
}
|
|
89
|
-
disabled() {
|
|
90
|
-
return this.isDisabled || this.isDisabledByParent();
|
|
91
|
-
}
|
|
92
|
-
isDisabledByParent() {
|
|
93
|
-
return this.ngtForm?.isDisabled
|
|
94
|
-
|| this.ngtSection?.isDisabled
|
|
95
|
-
|| this.ngtModal?.isDisabled;
|
|
96
|
-
}
|
|
97
|
-
destroySubscriptions() {
|
|
98
|
-
this.subscriptions.forEach(subscription => subscription.unsubscribe());
|
|
99
|
-
this.subscriptions = [];
|
|
100
|
-
}
|
|
101
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtCheckboxComponent, deps: [{ token: i0.Injector }, { token: i0.Renderer2 }, { token: i1.ControlContainer, host: true, optional: true }, { token: i2.NgtStylizableDirective, optional: true, self: true }, { token: i3.NgtFormComponent, optional: true, skipSelf: true }, { token: i4.NgtSectionComponent, optional: true, skipSelf: true }, { token: i5.NgtModalComponent, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
102
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NgtCheckboxComponent, selector: "ngt-checkbox", inputs: { label: "label", shining: "shining", isDisabled: "isDisabled", isClickDisabled: "isClickDisabled", name: "name", mode: "mode", helpTitle: "helpTitle", helpTextColor: "helpTextColor", helpText: "helpText", helperAutoXReverse: "helperAutoXReverse" }, providers: [
|
|
103
|
-
NgtMakeProvider(NgtCheckboxComponent)
|
|
104
|
-
], viewQueries: [{ propertyName: "element", first: true, predicate: ["element"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<label class=\"flex items-center {{ disabled() ? 'cursor-not-allowed opacity-50' : 'cursor-pointer' }}\"\n [class.flex-col]='isToggleMode()' style=\"max-width: max-content;\">\n <input type=\"checkbox\" [name]='name' class=\"hidden\" ([ngModel])='value' [disabled]=\"disabled() || isClickDisabled\"\n #element>\n\n <span *ngIf=\"isToggleMode() && label\" class=\"flex\">\n <span class=\"{{ ngtStyle.compile(['text', 'fontCase']) }} mb-2\">{{ label }}</span>\n\n <ngt-helper *ngIf=\"helpText\" [helpTitle]=\"helpTitle\" [iconColor]=\"helpTextColor\"\n [autoXReverse]=\"helperAutoXReverse\" class=\"ml-1\">\n {{ helpText }}\n </ngt-helper>\n </span>\n\n <ng-container *ngIf=\"isDefaultMode()\">\n <div style=\"transition: background-color .2s ease-out\" class=\"{{ value ? ngtStyle.compile(['color.bg']) : 'bg-white' }} {{ ngtStyle.compile(['h', 'w']) }}\n shadow rounded border border-gray-400 {{ !shining ? 'flex justify-center' : 'hidden' }}\">\n <svg class=\"fill-current self-center text-white pointer-events-none\" xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 20 20\">\n <path d=\"M0 11l2-2 5 5L18 3l2 2L7 18z\" />\n </svg>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"isRadioMode()\">\n <div style=\"transition: background-color .2s ease-out\"\n class=\"{{ value ? ngtStyle.compile(['color.border', 'color.text']) : 'border-gray-500' }}\n shadow w-6 h-6 rounded-full border-2 border-gray-400 {{ !shining ? 'flex justify-center' : 'hidden' }}\">\n <svg *ngIf=\"value\" class=\"fill-current self-center h-3\" xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 29.107 29.107\">\n <path\n d=\"M14.554 0C6.561 0 0 6.562 0 14.552c0 7.996 6.561 14.555 14.554 14.555 7.996 0 14.553-6.559 14.553-14.555C29.106 6.562 22.55 0 14.554 0z\" />\n </svg>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"isToggleMode() || isSideToggleMode()\">\n <div class=\"shadow w-14 h-7 rounded-full border border-gray-400 {{ shining ? 'hidden' : 'flex' }}\"\n [class.justify-end]=\"value\" style=\"padding: 1px;\">\n <div *ngIf=\"value\"\n class=\"flex text-sm text-white {{ ngtStyle.compile(['color.bg']) }} pointer-events-none rounded-full px-1.5 py-2\"\n @slideLeftToRight>\n <svg class=\"fill-current self-center\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\">\n <path d=\"M0 11l2-2 5 5L18 3l2 2L7 18z\" />\n </svg>\n </div>\n\n <div *ngIf=\"!value\" class=\"flex text-xl text-white bg-gray-300 pointer-events-none rounded-full px-1 py-3\"\n @slideRightToLeft>\n <svg class=\"fill-current self-center\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path class=\"heroicon-ui\"\n d=\"M16.24 14.83a1 1 0 0 1-1.41 1.41L12 13.41l-2.83 2.83a1 1 0 0 1-1.41-1.41L10.59 12 7.76 9.17a1 1 0 0 1 1.41-1.41L12 10.59l2.83-2.83a1 1 0 0 1 1.41 1.41L13.41 12l2.83 2.83z\" />\n </svg>\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf='label && !shining && !isToggleMode()'>\n <span class=\"{{ ngtStyle.compile(['text', 'fontCase']) }} ml-2\">{{ label }}</span>\n\n <ngt-helper *ngIf=\"helpText\" [helpTitle]=\"helpTitle\" [iconColor]=\"helpTextColor\"\n [autoXReverse]=\"helperAutoXReverse\" class=\"ml-1\">\n {{ helpText }}\n </ngt-helper>\n </ng-container>\n</label>\n\n<ng-container *ngIf='shining'>\n <div class=\"flex\">\n <ngt-shining class=\"w-16 h-12\"></ngt-shining>\n </div>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.NgtShiningComponent, selector: "ngt-shining", inputs: ["shiningWidth"] }, { kind: "component", type: i8.NgtHelperComponent, selector: "ngt-helper", inputs: ["helpTextColor", "helpText", "helpTitle", "icon", "iconSize", "iconColor", "iconTitle", "tooltipSize", "autoXReverse", "helperReverseYPosition"] }], viewProviders: [
|
|
105
|
-
{ provide: ControlContainer, useExisting: NgForm }
|
|
106
|
-
], animations: [
|
|
107
|
-
trigger('slideLeftToRight', [
|
|
108
|
-
state('void', style({ transform: 'translateX(-4px) rotate(45deg)', opacity: 0 })),
|
|
109
|
-
transition(':enter', [
|
|
110
|
-
animate(200)
|
|
111
|
-
])
|
|
112
|
-
]),
|
|
113
|
-
trigger('slideRightToLeft', [
|
|
114
|
-
state('void', style({ transform: 'translateX(4px) rotate(45deg)', opacity: 0 })),
|
|
115
|
-
transition(':enter', [
|
|
116
|
-
animate(200)
|
|
117
|
-
])
|
|
118
|
-
])
|
|
119
|
-
] }); }
|
|
120
|
-
}
|
|
121
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtCheckboxComponent, decorators: [{
|
|
122
|
-
type: Component,
|
|
123
|
-
args: [{ selector: 'ngt-checkbox', providers: [
|
|
124
|
-
NgtMakeProvider(NgtCheckboxComponent)
|
|
125
|
-
], viewProviders: [
|
|
126
|
-
{ provide: ControlContainer, useExisting: NgForm }
|
|
127
|
-
], animations: [
|
|
128
|
-
trigger('slideLeftToRight', [
|
|
129
|
-
state('void', style({ transform: 'translateX(-4px) rotate(45deg)', opacity: 0 })),
|
|
130
|
-
transition(':enter', [
|
|
131
|
-
animate(200)
|
|
132
|
-
])
|
|
133
|
-
]),
|
|
134
|
-
trigger('slideRightToLeft', [
|
|
135
|
-
state('void', style({ transform: 'translateX(4px) rotate(45deg)', opacity: 0 })),
|
|
136
|
-
transition(':enter', [
|
|
137
|
-
animate(200)
|
|
138
|
-
])
|
|
139
|
-
])
|
|
140
|
-
], template: "<label class=\"flex items-center {{ disabled() ? 'cursor-not-allowed opacity-50' : 'cursor-pointer' }}\"\n [class.flex-col]='isToggleMode()' style=\"max-width: max-content;\">\n <input type=\"checkbox\" [name]='name' class=\"hidden\" ([ngModel])='value' [disabled]=\"disabled() || isClickDisabled\"\n #element>\n\n <span *ngIf=\"isToggleMode() && label\" class=\"flex\">\n <span class=\"{{ ngtStyle.compile(['text', 'fontCase']) }} mb-2\">{{ label }}</span>\n\n <ngt-helper *ngIf=\"helpText\" [helpTitle]=\"helpTitle\" [iconColor]=\"helpTextColor\"\n [autoXReverse]=\"helperAutoXReverse\" class=\"ml-1\">\n {{ helpText }}\n </ngt-helper>\n </span>\n\n <ng-container *ngIf=\"isDefaultMode()\">\n <div style=\"transition: background-color .2s ease-out\" class=\"{{ value ? ngtStyle.compile(['color.bg']) : 'bg-white' }} {{ ngtStyle.compile(['h', 'w']) }}\n shadow rounded border border-gray-400 {{ !shining ? 'flex justify-center' : 'hidden' }}\">\n <svg class=\"fill-current self-center text-white pointer-events-none\" xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 20 20\">\n <path d=\"M0 11l2-2 5 5L18 3l2 2L7 18z\" />\n </svg>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"isRadioMode()\">\n <div style=\"transition: background-color .2s ease-out\"\n class=\"{{ value ? ngtStyle.compile(['color.border', 'color.text']) : 'border-gray-500' }}\n shadow w-6 h-6 rounded-full border-2 border-gray-400 {{ !shining ? 'flex justify-center' : 'hidden' }}\">\n <svg *ngIf=\"value\" class=\"fill-current self-center h-3\" xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 29.107 29.107\">\n <path\n d=\"M14.554 0C6.561 0 0 6.562 0 14.552c0 7.996 6.561 14.555 14.554 14.555 7.996 0 14.553-6.559 14.553-14.555C29.106 6.562 22.55 0 14.554 0z\" />\n </svg>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"isToggleMode() || isSideToggleMode()\">\n <div class=\"shadow w-14 h-7 rounded-full border border-gray-400 {{ shining ? 'hidden' : 'flex' }}\"\n [class.justify-end]=\"value\" style=\"padding: 1px;\">\n <div *ngIf=\"value\"\n class=\"flex text-sm text-white {{ ngtStyle.compile(['color.bg']) }} pointer-events-none rounded-full px-1.5 py-2\"\n @slideLeftToRight>\n <svg class=\"fill-current self-center\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\">\n <path d=\"M0 11l2-2 5 5L18 3l2 2L7 18z\" />\n </svg>\n </div>\n\n <div *ngIf=\"!value\" class=\"flex text-xl text-white bg-gray-300 pointer-events-none rounded-full px-1 py-3\"\n @slideRightToLeft>\n <svg class=\"fill-current self-center\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path class=\"heroicon-ui\"\n d=\"M16.24 14.83a1 1 0 0 1-1.41 1.41L12 13.41l-2.83 2.83a1 1 0 0 1-1.41-1.41L10.59 12 7.76 9.17a1 1 0 0 1 1.41-1.41L12 10.59l2.83-2.83a1 1 0 0 1 1.41 1.41L13.41 12l2.83 2.83z\" />\n </svg>\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf='label && !shining && !isToggleMode()'>\n <span class=\"{{ ngtStyle.compile(['text', 'fontCase']) }} ml-2\">{{ label }}</span>\n\n <ngt-helper *ngIf=\"helpText\" [helpTitle]=\"helpTitle\" [iconColor]=\"helpTextColor\"\n [autoXReverse]=\"helperAutoXReverse\" class=\"ml-1\">\n {{ helpText }}\n </ngt-helper>\n </ng-container>\n</label>\n\n<ng-container *ngIf='shining'>\n <div class=\"flex\">\n <ngt-shining class=\"w-16 h-12\"></ngt-shining>\n </div>\n</ng-container>\n" }]
|
|
141
|
-
}], ctorParameters: () => [{ type: i0.Injector }, { type: i0.Renderer2 }, { type: i1.ControlContainer, decorators: [{
|
|
142
|
-
type: Optional
|
|
143
|
-
}, {
|
|
144
|
-
type: Host
|
|
145
|
-
}] }, { type: i2.NgtStylizableDirective, decorators: [{
|
|
146
|
-
type: Self
|
|
147
|
-
}, {
|
|
148
|
-
type: Optional
|
|
149
|
-
}] }, { type: i3.NgtFormComponent, decorators: [{
|
|
150
|
-
type: Optional
|
|
151
|
-
}, {
|
|
152
|
-
type: SkipSelf
|
|
153
|
-
}] }, { type: i4.NgtSectionComponent, decorators: [{
|
|
154
|
-
type: Optional
|
|
155
|
-
}, {
|
|
156
|
-
type: SkipSelf
|
|
157
|
-
}] }, { type: i5.NgtModalComponent, decorators: [{
|
|
158
|
-
type: Optional
|
|
159
|
-
}, {
|
|
160
|
-
type: SkipSelf
|
|
161
|
-
}] }], propDecorators: { element: [{
|
|
162
|
-
type: ViewChild,
|
|
163
|
-
args: ['element', { static: true }]
|
|
164
|
-
}], label: [{
|
|
165
|
-
type: Input
|
|
166
|
-
}], shining: [{
|
|
167
|
-
type: Input
|
|
168
|
-
}], isDisabled: [{
|
|
169
|
-
type: Input
|
|
170
|
-
}], isClickDisabled: [{
|
|
171
|
-
type: Input
|
|
172
|
-
}], name: [{
|
|
173
|
-
type: Input
|
|
174
|
-
}], mode: [{
|
|
175
|
-
type: Input
|
|
176
|
-
}], helpTitle: [{
|
|
177
|
-
type: Input
|
|
178
|
-
}], helpTextColor: [{
|
|
179
|
-
type: Input
|
|
180
|
-
}], helpText: [{
|
|
181
|
-
type: Input
|
|
182
|
-
}], helperAutoXReverse: [{
|
|
183
|
-
type: Input
|
|
184
|
-
}] } });
|
|
185
|
-
export var NgtCheckboxMode;
|
|
186
|
-
(function (NgtCheckboxMode) {
|
|
187
|
-
NgtCheckboxMode["DEFAULT"] = "DEFAULT";
|
|
188
|
-
NgtCheckboxMode["TOGGLE"] = "TOGGLE";
|
|
189
|
-
NgtCheckboxMode["SIDE_TOGGLE"] = "SIDE_TOGGLE";
|
|
190
|
-
NgtCheckboxMode["RADIO"] = "RADIO";
|
|
191
|
-
})(NgtCheckboxMode || (NgtCheckboxMode = {}));
|
|
192
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LWNoZWNrYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1jaGVja2JveC9uZ3QtY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdGFpbHdpbmQvc3JjL2NvbXBvbmVudHMvbmd0LWNoZWNrYm94L25ndC1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pGLE9BQU8sRUFFSCxTQUFTLEVBRVQsSUFBSSxFQUVKLEtBQUssRUFHTCxRQUFRLEVBRVIsSUFBSSxFQUVKLFFBQVEsRUFDUixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzFELE9BQU8sRUFBRSxjQUFjLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0RBQXNELENBQUM7Ozs7Ozs7Ozs7QUE4QjVGLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxjQUFjO0lBa0JwRCxZQUNZLFFBQWtCLEVBQ2xCLFFBQW1CLEVBR3BCLGFBQStCLEVBRzlCLHNCQUE4QyxFQUc5QyxPQUF5QixFQUd6QixVQUErQixFQUcvQixRQUEyQjtRQUVuQyxLQUFLLEVBQUUsQ0FBQztRQWxCQSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFHcEIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBRzlCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFHOUMsWUFBTyxHQUFQLE9BQU8sQ0FBa0I7UUFHekIsZUFBVSxHQUFWLFVBQVUsQ0FBcUI7UUFHL0IsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUEvQnZCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFDekIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixvQkFBZSxHQUFZLEtBQUssQ0FBQztRQUVqQyxTQUFJLEdBQW9CLGVBQWUsQ0FBQyxPQUFPLENBQUM7UUFFaEQsa0JBQWEsR0FBVyxnQkFBZ0IsQ0FBQztRQUV6Qyx1QkFBa0IsR0FBWSxJQUFJLENBQUM7UUFJM0Msa0JBQWEsR0FBd0IsRUFBRSxDQUFDO1FBdUI1QyxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLHVCQUF1QixFQUFFLENBQUM7UUFDMUUsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQUMvQyxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxhQUFhLEVBQUU7WUFDN0MsQ0FBQyxFQUFFLEtBQUs7WUFDUixDQUFDLEVBQUUsS0FBSztZQUNSLElBQUksRUFBRSxTQUFTO1lBQ2YsUUFBUSxFQUFFLEVBQUU7WUFDWixLQUFLLEVBQUU7Z0JBQ0gsRUFBRSxFQUFFLGFBQWE7Z0JBQ2pCLElBQUksRUFBRSxlQUFlO2dCQUNyQixNQUFNLEVBQUUsaUJBQWlCO2FBQzVCO1NBQ0osQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLGVBQWU7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsUUFBUSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1RCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxXQUFXLENBQUMsT0FBc0I7UUFDckMsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQzlFLENBQUM7SUFDTCxDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSztRQUNmLElBQUksSUFBSSxDQUFDLHVCQUF1QixFQUFFLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQy9DLENBQUM7SUFDTCxDQUFDO0lBRU0sY0FBYyxDQUFDLEtBQUs7UUFDdkIsSUFBSSxJQUFJLENBQUMsdUJBQXVCLEVBQUUsRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUM7SUFDTCxDQUFDO0lBRU0sdUJBQXVCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDN0QsQ0FBQztJQUVNLFlBQVk7UUFDZixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLE1BQU0sQ0FBQztJQUNoRCxDQUFDO0lBRU0sZ0JBQWdCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxlQUFlLENBQUMsV0FBVyxDQUFDO0lBQ3JELENBQUM7SUFFTSxhQUFhO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxlQUFlLENBQUMsT0FBTyxDQUFDO0lBQ2pELENBQUM7SUFFTSxXQUFXO1FBQ2QsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxLQUFLLENBQUM7SUFDL0MsQ0FBQztJQUVNLFFBQVE7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDeEQsQ0FBQztJQUVPLGtCQUFrQjtRQUN0QixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsVUFBVTtlQUN4QixJQUFJLENBQUMsVUFBVSxFQUFFLFVBQVU7ZUFDM0IsSUFBSSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUM7SUFDckMsQ0FBQztJQUVPLG9CQUFvQjtRQUN4QixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQzVCLENBQUM7K0dBdkhRLG9CQUFvQjttR0FBcEIsb0JBQW9CLHlTQXRCbEI7WUFDUCxlQUFlLENBQUMsb0JBQW9CLENBQUM7U0FDeEMsd0xDakNMLHUwSEF3RUEsb2REdENtQjtZQUNYLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUU7U0FDckQsY0FDVztZQUNSLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRTtnQkFDeEIsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0NBQWdDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2pGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7b0JBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUM7aUJBQ2YsQ0FBQzthQUNMLENBQUM7WUFFRixPQUFPLENBQUMsa0JBQWtCLEVBQUU7Z0JBQ3hCLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLCtCQUErQixFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRixVQUFVLENBQUMsUUFBUSxFQUFFO29CQUNqQixPQUFPLENBQUMsR0FBRyxDQUFDO2lCQUNmLENBQUM7YUFDTCxDQUFDO1NBQ0w7OzRGQUVRLG9CQUFvQjtrQkF6QmhDLFNBQVM7K0JBQ0ksY0FBYyxhQUViO3dCQUNQLGVBQWUsc0JBQXNCO3FCQUN4QyxpQkFDYzt3QkFDWCxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFO3FCQUNyRCxjQUNXO3dCQUNSLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRTs0QkFDeEIsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0NBQWdDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NEJBQ2pGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUM7NkJBQ2YsQ0FBQzt5QkFDTCxDQUFDO3dCQUVGLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRTs0QkFDeEIsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsK0JBQStCLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NEJBQ2hGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUM7NkJBQ2YsQ0FBQzt5QkFDTCxDQUFDO3FCQUNMOzswQkF3QkksUUFBUTs7MEJBQUksSUFBSTs7MEJBR2hCLElBQUk7OzBCQUFJLFFBQVE7OzBCQUdoQixRQUFROzswQkFBSSxRQUFROzswQkFHcEIsUUFBUTs7MEJBQUksUUFBUTs7MEJBR3BCLFFBQVE7OzBCQUFJLFFBQVE7eUNBakNzQixPQUFPO3NCQUFyRCxTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBRXRCLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLO2dCQUNVLGVBQWU7c0JBQTlCLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxJQUFJO3NCQUFuQixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsYUFBYTtzQkFBNUIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLGtCQUFrQjtzQkFBakMsS0FBSzs7QUE4R1YsTUFBTSxDQUFOLElBQVksZUFLWDtBQUxELFdBQVksZUFBZTtJQUN2QixzQ0FBbUIsQ0FBQTtJQUNuQixvQ0FBaUIsQ0FBQTtJQUNqQiw4Q0FBMkIsQ0FBQTtJQUMzQixrQ0FBZSxDQUFBO0FBQ25CLENBQUMsRUFMVyxlQUFlLEtBQWYsZUFBZSxRQUsxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3QsXG4gICAgSW5qZWN0b3IsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPcHRpb25hbCxcbiAgICBSZW5kZXJlcjIsXG4gICAgU2VsZixcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFNraXBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgTmd0QmFzZU5nTW9kZWwsIE5ndE1ha2VQcm92aWRlciB9IGZyb20gJy4uLy4uL2Jhc2Uvbmd0LWJhc2UtbmctbW9kZWwnO1xuaW1wb3J0IHsgTmd0U3R5bGl6YWJsZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvbmd0LXN0eWxpemFibGUvbmd0LXN0eWxpemFibGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IGdldEVudW1Gcm9tU3RyaW5nIH0gZnJvbSAnLi4vLi4vaGVscGVycy9lbnVtL2VudW0nO1xuaW1wb3J0IHsgTmd0U3R5bGl6YWJsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9uZ3Qtc3R5bGl6YWJsZS9uZ3Qtc3R5bGl6YWJsZS5zZXJ2aWNlJztcbmltcG9ydCB7IE5ndEZvcm1Db21wb25lbnQgfSBmcm9tICcuLi9uZ3QtZm9ybS9uZ3QtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd0U2VjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL25ndC1zZWN0aW9uL25ndC1zZWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ3RNb2RhbENvbXBvbmVudCB9IGZyb20gJy4uL25ndC1tb2RhbC9uZ3QtbW9kYWwuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3QtY2hlY2tib3gnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9uZ3QtY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBOZ3RNYWtlUHJvdmlkZXIoTmd0Q2hlY2tib3hDb21wb25lbnQpXG4gICAgXSxcbiAgICB2aWV3UHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogQ29udHJvbENvbnRhaW5lciwgdXNlRXhpc3Rpbmc6IE5nRm9ybSB9XG4gICAgXSxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ3NsaWRlTGVmdFRvUmlnaHQnLCBbXG4gICAgICAgICAgICBzdGF0ZSgndm9pZCcsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgtNHB4KSByb3RhdGUoNDVkZWcpJywgb3BhY2l0eTogMCB9KSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgICAgICAgICAgYW5pbWF0ZSgyMDApXG4gICAgICAgICAgICBdKVxuICAgICAgICBdKSxcblxuICAgICAgICB0cmlnZ2VyKCdzbGlkZVJpZ2h0VG9MZWZ0JywgW1xuICAgICAgICAgICAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoNHB4KSByb3RhdGUoNDVkZWcpJywgb3BhY2l0eTogMCB9KSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgICAgICAgICAgYW5pbWF0ZSgyMDApXG4gICAgICAgICAgICBdKVxuICAgICAgICBdKVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTmd0Q2hlY2tib3hDb21wb25lbnQgZXh0ZW5kcyBOZ3RCYXNlTmdNb2RlbCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICBAVmlld0NoaWxkKCdlbGVtZW50JywgeyBzdGF0aWM6IHRydWUgfSkgcHVibGljIGVsZW1lbnQ6IEVsZW1lbnRSZWY7XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgbGFiZWw6IHN0cmluZztcbiAgICBASW5wdXQoKSBwdWJsaWMgc2hpbmluZzogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpc0Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgcHVibGljIGlzQ2xpY2tEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG4gICAgQElucHV0KCkgcHVibGljIG1vZGU6IE5ndENoZWNrYm94TW9kZSA9IE5ndENoZWNrYm94TW9kZS5ERUZBVUxUO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBoZWxwVGl0bGU6IHN0cmluZztcbiAgICBASW5wdXQoKSBwdWJsaWMgaGVscFRleHRDb2xvcjogc3RyaW5nID0gJ3RleHQtZ3JlZW4tNTAwJztcbiAgICBASW5wdXQoKSBwdWJsaWMgaGVscFRleHQ6IHN0cmluZztcbiAgICBASW5wdXQoKSBwdWJsaWMgaGVscGVyQXV0b1hSZXZlcnNlOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIHB1YmxpYyBuZ3RTdHlsZTogTmd0U3R5bGl6YWJsZVNlcnZpY2U7XG5cbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbnM6IEFycmF5PFN1YnNjcmlwdGlvbj4gPSBbXTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcblxuICAgICAgICBAT3B0aW9uYWwoKSBASG9zdCgpXG4gICAgICAgIHB1YmxpYyBmb3JtQ29udGFpbmVyOiBDb250cm9sQ29udGFpbmVyLFxuXG4gICAgICAgIEBTZWxmKCkgQE9wdGlvbmFsKClcbiAgICAgICAgcHJpdmF0ZSBuZ3RTdHlsaXphYmxlRGlyZWN0aXZlOiBOZ3RTdHlsaXphYmxlRGlyZWN0aXZlLFxuXG4gICAgICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpXG4gICAgICAgIHByaXZhdGUgbmd0Rm9ybTogTmd0Rm9ybUNvbXBvbmVudCxcblxuICAgICAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKVxuICAgICAgICBwcml2YXRlIG5ndFNlY3Rpb246IE5ndFNlY3Rpb25Db21wb25lbnQsXG5cbiAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKClcbiAgICAgICAgcHJpdmF0ZSBuZ3RNb2RhbDogTmd0TW9kYWxDb21wb25lbnRcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcblxuICAgICAgICBpZiAodGhpcy5uZ3RTdHlsaXphYmxlRGlyZWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLm5ndFN0eWxlID0gdGhpcy5uZ3RTdHlsaXphYmxlRGlyZWN0aXZlLmdldE5ndFN0eWxpemFibGVTZXJ2aWNlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm5ndFN0eWxlID0gbmV3IE5ndFN0eWxpemFibGVTZXJ2aWNlKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm5ndFN0eWxlLmxvYWQodGhpcy5pbmplY3RvciwgJ05ndENoZWNrYm94Jywge1xuICAgICAgICAgICAgaDogJ2gtNicsXG4gICAgICAgICAgICB3OiAndy02JyxcbiAgICAgICAgICAgIHRleHQ6ICd0ZXh0LXNtJyxcbiAgICAgICAgICAgIGZvbnRDYXNlOiAnJyxcbiAgICAgICAgICAgIGNvbG9yOiB7XG4gICAgICAgICAgICAgICAgYmc6ICdiZy1ncmF5LTUwMCcsXG4gICAgICAgICAgICAgICAgdGV4dDogJ3RleHQtZ3JheS01MDAnLFxuICAgICAgICAgICAgICAgIGJvcmRlcjogJ2JvcmRlci1ncmF5LTUwMCcsXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LCAnY2hhbmdlJywgKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uTmF0aXZlQ2hhbmdlKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmNoZWNrZWQpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy5tb2RlKSB7XG4gICAgICAgICAgICB0aGlzLm1vZGUgPSBnZXRFbnVtRnJvbVN0cmluZyhjaGFuZ2VzLm1vZGUuY3VycmVudFZhbHVlLCBOZ3RDaGVja2JveE1vZGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3lTdWJzY3JpcHRpb25zKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNoYW5nZSh2YWx1ZSkge1xuICAgICAgICBpZiAodGhpcy5oYXNDaGFuZ2VzQmV0d2Vlbk1vZGVscygpKSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5jaGVja2VkID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25OYXRpdmVDaGFuZ2UodmFsdWUpIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ2hhbmdlc0JldHdlZW5Nb2RlbHMoKSkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhhc0NoYW5nZXNCZXR3ZWVuTW9kZWxzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCAhPT0gdGhpcy52YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNUb2dnbGVNb2RlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RlID09PSBOZ3RDaGVja2JveE1vZGUuVE9HR0xFO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc1NpZGVUb2dnbGVNb2RlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RlID09PSBOZ3RDaGVja2JveE1vZGUuU0lERV9UT0dHTEU7XG4gICAgfVxuXG4gICAgcHVibGljIGlzRGVmYXVsdE1vZGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vZGUgPT09IE5ndENoZWNrYm94TW9kZS5ERUZBVUxUO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc1JhZGlvTW9kZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubW9kZSA9PT0gTmd0Q2hlY2tib3hNb2RlLlJBRElPO1xuICAgIH1cblxuICAgIHB1YmxpYyBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNEaXNhYmxlZCB8fCB0aGlzLmlzRGlzYWJsZWRCeVBhcmVudCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaXNEaXNhYmxlZEJ5UGFyZW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5uZ3RGb3JtPy5pc0Rpc2FibGVkXG4gICAgICAgICAgICB8fCB0aGlzLm5ndFNlY3Rpb24/LmlzRGlzYWJsZWRcbiAgICAgICAgICAgIHx8IHRoaXMubmd0TW9kYWw/LmlzRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkZXN0cm95U3Vic2NyaXB0aW9ucygpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3Vic2NyaXB0aW9uID0+IHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpKTtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zID0gW107XG4gICAgfVxufVxuXG5leHBvcnQgZW51bSBOZ3RDaGVja2JveE1vZGUge1xuICAgIERFRkFVTFQgPSAnREVGQVVMVCcsXG4gICAgVE9HR0xFID0gJ1RPR0dMRScsXG4gICAgU0lERV9UT0dHTEUgPSAnU0lERV9UT0dHTEUnLFxuICAgIFJBRElPID0gJ1JBRElPJ1xufVxuIiwiPGxhYmVsIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIge3sgZGlzYWJsZWQoKSA/ICdjdXJzb3Itbm90LWFsbG93ZWQgb3BhY2l0eS01MCcgOiAnY3Vyc29yLXBvaW50ZXInIH19XCJcbiAgICBbY2xhc3MuZmxleC1jb2xdPSdpc1RvZ2dsZU1vZGUoKScgc3R5bGU9XCJtYXgtd2lkdGg6IG1heC1jb250ZW50O1wiPlxuICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBbbmFtZV09J25hbWUnIGNsYXNzPVwiaGlkZGVuXCIgKFtuZ01vZGVsXSk9J3ZhbHVlJyBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKSB8fCBpc0NsaWNrRGlzYWJsZWRcIlxuICAgICAgICAjZWxlbWVudD5cblxuICAgIDxzcGFuICpuZ0lmPVwiaXNUb2dnbGVNb2RlKCkgJiYgbGFiZWxcIiBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ7eyBuZ3RTdHlsZS5jb21waWxlKFsndGV4dCcsICdmb250Q2FzZSddKSB9fSBtYi0yXCI+e3sgbGFiZWwgfX08L3NwYW4+XG5cbiAgICAgICAgPG5ndC1oZWxwZXIgKm5nSWY9XCJoZWxwVGV4dFwiIFtoZWxwVGl0bGVdPVwiaGVscFRpdGxlXCIgW2ljb25Db2xvcl09XCJoZWxwVGV4dENvbG9yXCJcbiAgICAgICAgICAgIFthdXRvWFJldmVyc2VdPVwiaGVscGVyQXV0b1hSZXZlcnNlXCIgY2xhc3M9XCJtbC0xXCI+XG4gICAgICAgICAgICB7eyBoZWxwVGV4dCB9fVxuICAgICAgICA8L25ndC1oZWxwZXI+XG4gICAgPC9zcGFuPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRGVmYXVsdE1vZGUoKVwiPlxuICAgICAgICA8ZGl2IHN0eWxlPVwidHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1vdXRcIiBjbGFzcz1cInt7IHZhbHVlID8gbmd0U3R5bGUuY29tcGlsZShbJ2NvbG9yLmJnJ10pIDogJ2JnLXdoaXRlJyB9fSAge3sgbmd0U3R5bGUuY29tcGlsZShbJ2gnLCAndyddKSB9fVxuICAgICAgICAgICAgICAgICAgICBzaGFkb3cgcm91bmRlZCBib3JkZXIgYm9yZGVyLWdyYXktNDAwIHt7ICFzaGluaW5nID8gJ2ZsZXgganVzdGlmeS1jZW50ZXInIDogJ2hpZGRlbicgfX1cIj5cbiAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJmaWxsLWN1cnJlbnQgc2VsZi1jZW50ZXIgdGV4dC13aGl0ZSBwb2ludGVyLWV2ZW50cy1ub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyMCAyMFwiPlxuICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMCAxMWwyLTIgNSA1TDE4IDNsMiAyTDcgMTh6XCIgLz5cbiAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1JhZGlvTW9kZSgpXCI+XG4gICAgICAgIDxkaXYgc3R5bGU9XCJ0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLW91dFwiXG4gICAgICAgICAgICBjbGFzcz1cInt7IHZhbHVlID8gbmd0U3R5bGUuY29tcGlsZShbJ2NvbG9yLmJvcmRlcicsICdjb2xvci50ZXh0J10pIDogJ2JvcmRlci1ncmF5LTUwMCcgfX1cbiAgICAgICAgICAgICAgICAgICAgc2hhZG93IHctNiBoLTYgcm91bmRlZC1mdWxsIGJvcmRlci0yIGJvcmRlci1ncmF5LTQwMCB7eyAhc2hpbmluZyA/ICdmbGV4IGp1c3RpZnktY2VudGVyJyA6ICdoaWRkZW4nIH19XCI+XG4gICAgICAgICAgICA8c3ZnICpuZ0lmPVwidmFsdWVcIiBjbGFzcz1cImZpbGwtY3VycmVudCBzZWxmLWNlbnRlciBoLTNcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI5LjEwNyAyOS4xMDdcIj5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgICBkPVwiTTE0LjU1NCAwQzYuNTYxIDAgMCA2LjU2MiAwIDE0LjU1MmMwIDcuOTk2IDYuNTYxIDE0LjU1NSAxNC41NTQgMTQuNTU1IDcuOTk2IDAgMTQuNTUzLTYuNTU5IDE0LjU1My0xNC41NTVDMjkuMTA2IDYuNTYyIDIyLjU1IDAgMTQuNTU0IDB6XCIgLz5cbiAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1RvZ2dsZU1vZGUoKSB8fCBpc1NpZGVUb2dnbGVNb2RlKClcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNoYWRvdyB3LTE0IGgtNyByb3VuZGVkLWZ1bGwgYm9yZGVyIGJvcmRlci1ncmF5LTQwMCB7eyBzaGluaW5nID8gJ2hpZGRlbicgOiAnZmxleCcgfX1cIlxuICAgICAgICAgICAgW2NsYXNzLmp1c3RpZnktZW5kXT1cInZhbHVlXCIgc3R5bGU9XCJwYWRkaW5nOiAxcHg7XCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCB0ZXh0LXNtIHRleHQtd2hpdGUge3sgbmd0U3R5bGUuY29tcGlsZShbJ2NvbG9yLmJnJ10pIH19IHBvaW50ZXItZXZlbnRzLW5vbmUgcm91bmRlZC1mdWxsIHB4LTEuNSBweS0yXCJcbiAgICAgICAgICAgICAgICBAc2xpZGVMZWZ0VG9SaWdodD5cbiAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwiZmlsbC1jdXJyZW50IHNlbGYtY2VudGVyXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIj5cbiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0wIDExbDItMiA1IDVMMTggM2wyIDJMNyAxOHpcIiAvPlxuICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhdmFsdWVcIiBjbGFzcz1cImZsZXggdGV4dC14bCB0ZXh0LXdoaXRlIGJnLWdyYXktMzAwIHBvaW50ZXItZXZlbnRzLW5vbmUgcm91bmRlZC1mdWxsIHB4LTEgcHktM1wiXG4gICAgICAgICAgICAgICAgQHNsaWRlUmlnaHRUb0xlZnQ+XG4gICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImZpbGwtY3VycmVudCBzZWxmLWNlbnRlclwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGNsYXNzPVwiaGVyb2ljb24tdWlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNi4yNCAxNC44M2ExIDEgMCAwIDEtMS40MSAxLjQxTDEyIDEzLjQxbC0yLjgzIDIuODNhMSAxIDAgMCAxLTEuNDEtMS40MUwxMC41OSAxMiA3Ljc2IDkuMTdhMSAxIDAgMCAxIDEuNDEtMS40MUwxMiAxMC41OWwyLjgzLTIuODNhMSAxIDAgMCAxIDEuNDEgMS40MUwxMy40MSAxMmwyLjgzIDIuODN6XCIgLz5cbiAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9J2xhYmVsICYmICFzaGluaW5nICYmICFpc1RvZ2dsZU1vZGUoKSc+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwie3sgbmd0U3R5bGUuY29tcGlsZShbJ3RleHQnLCAnZm9udENhc2UnXSkgfX0gbWwtMlwiPnt7IGxhYmVsIH19PC9zcGFuPlxuXG4gICAgICAgIDxuZ3QtaGVscGVyICpuZ0lmPVwiaGVscFRleHRcIiBbaGVscFRpdGxlXT1cImhlbHBUaXRsZVwiIFtpY29uQ29sb3JdPVwiaGVscFRleHRDb2xvclwiXG4gICAgICAgICAgICBbYXV0b1hSZXZlcnNlXT1cImhlbHBlckF1dG9YUmV2ZXJzZVwiIGNsYXNzPVwibWwtMVwiPlxuICAgICAgICAgICAge3sgaGVscFRleHQgfX1cbiAgICAgICAgPC9uZ3QtaGVscGVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9sYWJlbD5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj0nc2hpbmluZyc+XG4gICAgPGRpdiBjbGFzcz1cImZsZXhcIj5cbiAgICAgICAgPG5ndC1zaGluaW5nIGNsYXNzPVwidy0xNiBoLTEyXCI+PC9uZ3Qtc2hpbmluZz5cbiAgICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { NgtHelperModule } from '../ngt-helper/ngt-helper.module';
|
|
4
|
-
import { NgtShiningModule } from '../ngt-shining/ngt-shining.module';
|
|
5
|
-
import { NgtCheckboxComponent } from './ngt-checkbox.component';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class NgtCheckboxModule {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: NgtCheckboxModule, declarations: [NgtCheckboxComponent], imports: [CommonModule,
|
|
10
|
-
NgtShiningModule,
|
|
11
|
-
NgtHelperModule], exports: [NgtCheckboxComponent] }); }
|
|
12
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtCheckboxModule, imports: [CommonModule,
|
|
13
|
-
NgtShiningModule,
|
|
14
|
-
NgtHelperModule] }); }
|
|
15
|
-
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtCheckboxModule, decorators: [{
|
|
17
|
-
type: NgModule,
|
|
18
|
-
args: [{
|
|
19
|
-
declarations: [NgtCheckboxComponent],
|
|
20
|
-
exports: [NgtCheckboxComponent],
|
|
21
|
-
imports: [
|
|
22
|
-
CommonModule,
|
|
23
|
-
NgtShiningModule,
|
|
24
|
-
NgtHelperModule,
|
|
25
|
-
]
|
|
26
|
-
}]
|
|
27
|
-
}] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LWNoZWNrYm94Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1jaGVja2JveC9uZ3QtY2hlY2tib3gubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFXaEUsTUFBTSxPQUFPLGlCQUFpQjsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBUlgsb0JBQW9CLGFBRy9CLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsZUFBZSxhQUpULG9CQUFvQjtnSEFPckIsaUJBQWlCLFlBTHRCLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsZUFBZTs7NEZBR1YsaUJBQWlCO2tCQVQ3QixRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDL0IsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixlQUFlO3FCQUNsQjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBOZ3RIZWxwZXJNb2R1bGUgfSBmcm9tICcuLi9uZ3QtaGVscGVyL25ndC1oZWxwZXIubW9kdWxlJztcbmltcG9ydCB7IE5ndFNoaW5pbmdNb2R1bGUgfSBmcm9tICcuLi9uZ3Qtc2hpbmluZy9uZ3Qtc2hpbmluZy5tb2R1bGUnO1xuaW1wb3J0IHsgTmd0Q2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL25ndC1jaGVja2JveC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW05ndENoZWNrYm94Q29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbTmd0Q2hlY2tib3hDb21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBOZ3RTaGluaW5nTW9kdWxlLFxuICAgICAgICBOZ3RIZWxwZXJNb2R1bGUsXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3RDaGVja2JveE1vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Component, Input, Optional, Self } from '@angular/core';
|
|
2
|
-
import { NgtStylizableService } from '../../services/ngt-stylizable/ngt-stylizable.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../../directives/ngt-stylizable/ngt-stylizable.directive";
|
|
5
|
-
export class NgtContentComponent {
|
|
6
|
-
constructor(injector, tailStylizableDirective) {
|
|
7
|
-
this.injector = injector;
|
|
8
|
-
this.tailStylizableDirective = tailStylizableDirective;
|
|
9
|
-
if (this.tailStylizableDirective) {
|
|
10
|
-
this.ngtStyle = this.tailStylizableDirective.getNgtStylizableService();
|
|
11
|
-
}
|
|
12
|
-
else {
|
|
13
|
-
this.ngtStyle = new NgtStylizableService();
|
|
14
|
-
}
|
|
15
|
-
this.ngtStyle.load(this.injector, 'Content', {
|
|
16
|
-
color: {}
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContentComponent, deps: [{ token: i0.Injector }, { token: i1.NgtStylizableDirective, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NgtContentComponent, selector: "ngt-content", inputs: { ngtStyle: "ngtStyle" }, ngImport: i0, template: "<div class=\"flex flex-col\">\n <div class='flex-grow {{ ngtStyle.compile([\"color.bg\"]) }}'>\n <ng-content></ng-content>\n </div>\n</div>" }); }
|
|
21
|
-
}
|
|
22
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContentComponent, decorators: [{
|
|
23
|
-
type: Component,
|
|
24
|
-
args: [{ selector: 'ngt-content', template: "<div class=\"flex flex-col\">\n <div class='flex-grow {{ ngtStyle.compile([\"color.bg\"]) }}'>\n <ng-content></ng-content>\n </div>\n</div>" }]
|
|
25
|
-
}], ctorParameters: () => [{ type: i0.Injector }, { type: i1.NgtStylizableDirective, decorators: [{
|
|
26
|
-
type: Self
|
|
27
|
-
}, {
|
|
28
|
-
type: Optional
|
|
29
|
-
}] }], propDecorators: { ngtStyle: [{
|
|
30
|
-
type: Input
|
|
31
|
-
}] } });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdGFpbHdpbmQvc3JjL2NvbXBvbmVudHMvbmd0LWNvbnRlbnQvbmd0LWNvbnRlbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdGFpbHdpbmQvc3JjL2NvbXBvbmVudHMvbmd0LWNvbnRlbnQvbmd0LWNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBWSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7O0FBTTVGLE1BQU0sT0FBTyxtQkFBbUI7SUFHNUIsWUFDWSxRQUFrQixFQUNFLHVCQUErQztRQURuRSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ0UsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF3QjtRQUUzRSxJQUFJLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLHVCQUF1QixFQUFFLENBQUM7UUFDM0UsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQUMvQyxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUU7WUFDekMsS0FBSyxFQUFFLEVBQUU7U0FDWixDQUFDLENBQUM7SUFDUCxDQUFDOytHQWhCUSxtQkFBbUI7bUdBQW5CLG1CQUFtQixxRkNUaEMsMEpBSU07OzRGREtPLG1CQUFtQjtrQkFKL0IsU0FBUzsrQkFDSSxhQUFhOzswQkFRbEIsSUFBSTs7MEJBQUksUUFBUTt5Q0FKTCxRQUFRO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgSW5wdXQsIE9wdGlvbmFsLCBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE5ndFN0eWxpemFibGVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL25ndC1zdHlsaXphYmxlL25ndC1zdHlsaXphYmxlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBOZ3RTdHlsaXphYmxlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL25ndC1zdHlsaXphYmxlL25ndC1zdHlsaXphYmxlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25ndC1jb250ZW50JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbmd0LWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIE5ndENvbnRlbnRDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIHB1YmxpYyBuZ3RTdHlsZTogTmd0U3R5bGl6YWJsZVNlcnZpY2U7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBAU2VsZigpIEBPcHRpb25hbCgpIHByaXZhdGUgdGFpbFN0eWxpemFibGVEaXJlY3RpdmU6IE5ndFN0eWxpemFibGVEaXJlY3RpdmVcbiAgICApIHtcbiAgICAgICAgaWYgKHRoaXMudGFpbFN0eWxpemFibGVEaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMubmd0U3R5bGUgPSB0aGlzLnRhaWxTdHlsaXphYmxlRGlyZWN0aXZlLmdldE5ndFN0eWxpemFibGVTZXJ2aWNlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm5ndFN0eWxlID0gbmV3IE5ndFN0eWxpemFibGVTZXJ2aWNlKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm5ndFN0eWxlLmxvYWQodGhpcy5pbmplY3RvciwgJ0NvbnRlbnQnLCB7XG4gICAgICAgICAgICBjb2xvcjoge31cbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2xcIj5cbiAgICA8ZGl2IGNsYXNzPSdmbGV4LWdyb3cge3sgbmd0U3R5bGUuY29tcGlsZShbXCJjb2xvci5iZ1wiXSkgfX0nPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { NgtContentComponent } from './ngt-content.component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class NgtContentModule {
|
|
6
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: NgtContentModule, declarations: [NgtContentComponent], imports: [CommonModule], exports: [NgtContentComponent] }); }
|
|
8
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContentModule, imports: [CommonModule] }); }
|
|
9
|
-
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContentModule, decorators: [{
|
|
11
|
-
type: NgModule,
|
|
12
|
-
args: [{
|
|
13
|
-
declarations: [NgtContentComponent],
|
|
14
|
-
exports: [NgtContentComponent],
|
|
15
|
-
imports: [
|
|
16
|
-
CommonModule
|
|
17
|
-
]
|
|
18
|
-
}]
|
|
19
|
-
}] });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LWNvbnRlbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdGFpbHdpbmQvc3JjL2NvbXBvbmVudHMvbmd0LWNvbnRlbnQvbmd0LWNvbnRlbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQVM5RCxNQUFNLE9BQU8sZ0JBQWdCOytHQUFoQixnQkFBZ0I7Z0hBQWhCLGdCQUFnQixpQkFOVixtQkFBbUIsYUFHOUIsWUFBWSxhQUZOLG1CQUFtQjtnSEFLcEIsZ0JBQWdCLFlBSHJCLFlBQVk7OzRGQUdQLGdCQUFnQjtrQkFQNUIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDbkMsT0FBTyxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQzlCLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3FCQUNmO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE5ndENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL25ndC1jb250ZW50LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbTmd0Q29udGVudENvbXBvbmVudF0sXG4gICAgZXhwb3J0czogW05ndENvbnRlbnRDb21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3RDb250ZW50TW9kdWxlIHsgfVxuIl19
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "../ngt-svg/ngt-svg.component";
|
|
5
|
-
export class NgtContextMenuComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.onMenuItemClick = new EventEmitter();
|
|
8
|
-
this.onTemplateClick = new EventEmitter();
|
|
9
|
-
this.menuItems = [];
|
|
10
|
-
}
|
|
11
|
-
hasOptions() {
|
|
12
|
-
return !this.menuTemplate && !!this.menuItems?.length;
|
|
13
|
-
}
|
|
14
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContextMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NgtContextMenuComponent, selector: "ngt-context-menu", outputs: { onMenuItemClick: "onMenuItemClick", onTemplateClick: "onTemplateClick" }, ngImport: i0, template: "<div class=\"absolute max-w-7xl -mr-10 -mb-10\" style=\"z-index: 999999 !important; width: max-content !important;\"\n [style.left.px]=\"positionX\" [style.top.px]=\"positionY\" (click)=\"$event.stopPropagation()\">\n\n <ng-container *ngIf=\"hasOptions(); else showTemplate\">\n <ul class=\"cursor-pointer rounded-xl bg-white border border-gray-200 shadow-2xl\">\n <li *ngFor=\"let item of menuItems; last as isLast; first as isFirst\"\n class=\"flex items-center w-full px-4 py-2 gap-3 text-sm\" [class.text-gray-700]=\"!item.disabled\"\n [class.text-gray-400]=\"item.disabled\" [class.cursor-not-allowed]=\"item.disabled\"\n [class.rounded-b-xl]=\"isLast\" [class.rounded-t-xl]=\"isFirst\"\n [ngClass]=\"item.disabled ? '' : (item.background_color || 'hover:bg-green-500')\"\n (click)=\"!item.disabled && onMenuItemClick.emit(item)\">\n\n <ngt-svg *ngIf=\"item.icon\" class=\"text-lg\" [src]=\"item.icon\"></ngt-svg>\n {{ item.caption }}\n </li>\n </ul>\n </ng-container>\n\n <ng-template #showTemplate>\n <div class=\"block rounded-lg bg-white border border-gray-200 w-full h-auto shadow-2xl\"\n (click)=\"onTemplateClick.emit()\">\n <ng-container [ngTemplateOutlet]=\"menuTemplate\"></ng-container>\n </div>\n </ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.NgtSvgComponent, selector: "ngt-svg", inputs: ["src", "class"] }] }); }
|
|
16
|
-
}
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContextMenuComponent, decorators: [{
|
|
18
|
-
type: Component,
|
|
19
|
-
args: [{ selector: 'ngt-context-menu', template: "<div class=\"absolute max-w-7xl -mr-10 -mb-10\" style=\"z-index: 999999 !important; width: max-content !important;\"\n [style.left.px]=\"positionX\" [style.top.px]=\"positionY\" (click)=\"$event.stopPropagation()\">\n\n <ng-container *ngIf=\"hasOptions(); else showTemplate\">\n <ul class=\"cursor-pointer rounded-xl bg-white border border-gray-200 shadow-2xl\">\n <li *ngFor=\"let item of menuItems; last as isLast; first as isFirst\"\n class=\"flex items-center w-full px-4 py-2 gap-3 text-sm\" [class.text-gray-700]=\"!item.disabled\"\n [class.text-gray-400]=\"item.disabled\" [class.cursor-not-allowed]=\"item.disabled\"\n [class.rounded-b-xl]=\"isLast\" [class.rounded-t-xl]=\"isFirst\"\n [ngClass]=\"item.disabled ? '' : (item.background_color || 'hover:bg-green-500')\"\n (click)=\"!item.disabled && onMenuItemClick.emit(item)\">\n\n <ngt-svg *ngIf=\"item.icon\" class=\"text-lg\" [src]=\"item.icon\"></ngt-svg>\n {{ item.caption }}\n </li>\n </ul>\n </ng-container>\n\n <ng-template #showTemplate>\n <div class=\"block rounded-lg bg-white border border-gray-200 w-full h-auto shadow-2xl\"\n (click)=\"onTemplateClick.emit()\">\n <ng-container [ngTemplateOutlet]=\"menuTemplate\"></ng-container>\n </div>\n </ng-template>\n</div>\n" }]
|
|
20
|
-
}], propDecorators: { onMenuItemClick: [{
|
|
21
|
-
type: Output
|
|
22
|
-
}], onTemplateClick: [{
|
|
23
|
-
type: Output
|
|
24
|
-
}] } });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LWNvbnRleHQtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy10YWlsd2luZC9zcmMvY29tcG9uZW50cy9uZ3QtY29udGV4dC1tZW51L25ndC1jb250ZXh0LW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdGFpbHdpbmQvc3JjL2NvbXBvbmVudHMvbmd0LWNvbnRleHQtbWVudS9uZ3QtY29udGV4dC1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBZSxNQUFNLGVBQWUsQ0FBQzs7OztBQU83RSxNQUFNLE9BQU8sdUJBQXVCO0lBTHBDO1FBTXFCLG9CQUFlLEdBQWdELElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEYsb0JBQWUsR0FBdUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQU1uRSxjQUFTLEdBQW9DLEVBQUUsQ0FBQztLQUsxRDtJQUhVLFVBQVU7UUFDYixPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDMUQsQ0FBQzsrR0FaUSx1QkFBdUI7bUdBQXZCLHVCQUF1Qiw2SUNQcEMsdzVDQXlCQTs7NEZEbEJhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDSSxrQkFBa0I7OEJBS1gsZUFBZTtzQkFBL0IsTUFBTTtnQkFDVSxlQUFlO3NCQUEvQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3QtY29udGV4dC1tZW51JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbmd0LWNvbnRleHQtbWVudS5jb21wb25lbnQuaHRtbCdcbn0pXG5cbmV4cG9ydCBjbGFzcyBOZ3RDb250ZXh0TWVudUNvbXBvbmVudCB7XG4gICAgQE91dHB1dCgpIHB1YmxpYyBvbk1lbnVJdGVtQ2xpY2s6IEV2ZW50RW1pdHRlcjxOZ3RDb250ZXh0TWVudU9wdGlvbkludGVyZmFjZT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpIHB1YmxpYyBvblRlbXBsYXRlQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIHB1YmxpYyBwb3NpdGlvblg6IG51bWJlcjtcbiAgICBwdWJsaWMgcG9zaXRpb25ZOiBudW1iZXI7XG5cbiAgICBwdWJsaWMgbWVudVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIHB1YmxpYyBtZW51SXRlbXM6IE5ndENvbnRleHRNZW51T3B0aW9uSW50ZXJmYWNlW10gPSBbXTtcblxuICAgIHB1YmxpYyBoYXNPcHRpb25zKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMubWVudVRlbXBsYXRlICYmICEhdGhpcy5tZW51SXRlbXM/Lmxlbmd0aDtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmd0Q29udGV4dE1lbnVPcHRpb25JbnRlcmZhY2Uge1xuICAgIGNhcHRpb246IHN0cmluZztcbiAgICBiYWNrZ3JvdW5kX2NvbG9yPzogc3RyaW5nO1xuICAgIGljb24/OiBzdHJpbmc7XG4gICAgdmFsdWU6IHN0cmluZztcbiAgICBkaXNhYmxlZD86IGJvb2xlYW47XG59XG4iLCI8ZGl2IGNsYXNzPVwiYWJzb2x1dGUgbWF4LXctN3hsIC1tci0xMCAtbWItMTBcIiBzdHlsZT1cInotaW5kZXg6IDk5OTk5OSAhaW1wb3J0YW50OyB3aWR0aDogbWF4LWNvbnRlbnQgIWltcG9ydGFudDtcIlxuICAgIFtzdHlsZS5sZWZ0LnB4XT1cInBvc2l0aW9uWFwiIFtzdHlsZS50b3AucHhdPVwicG9zaXRpb25ZXCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc09wdGlvbnMoKTsgZWxzZSBzaG93VGVtcGxhdGVcIj5cbiAgICAgICAgPHVsIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXIgcm91bmRlZC14bCBiZy13aGl0ZSBib3JkZXIgYm9yZGVyLWdyYXktMjAwIHNoYWRvdy0yeGxcIj5cbiAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtZW51SXRlbXM7IGxhc3QgYXMgaXNMYXN0OyBmaXJzdCBhcyBpc0ZpcnN0XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIHctZnVsbCBweC00IHB5LTIgZ2FwLTMgdGV4dC1zbVwiIFtjbGFzcy50ZXh0LWdyYXktNzAwXT1cIiFpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudGV4dC1ncmF5LTQwMF09XCJpdGVtLmRpc2FibGVkXCIgW2NsYXNzLmN1cnNvci1ub3QtYWxsb3dlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgICBbY2xhc3Mucm91bmRlZC1iLXhsXT1cImlzTGFzdFwiIFtjbGFzcy5yb3VuZGVkLXQteGxdPVwiaXNGaXJzdFwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXRlbS5kaXNhYmxlZCA/ICcnIDogKGl0ZW0uYmFja2dyb3VuZF9jb2xvciB8fCAnaG92ZXI6YmctZ3JlZW4tNTAwJylcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCIhaXRlbS5kaXNhYmxlZCAmJiBvbk1lbnVJdGVtQ2xpY2suZW1pdChpdGVtKVwiPlxuXG4gICAgICAgICAgICAgICAgPG5ndC1zdmcgKm5nSWY9XCJpdGVtLmljb25cIiBjbGFzcz1cInRleHQtbGdcIiBbc3JjXT1cIml0ZW0uaWNvblwiPjwvbmd0LXN2Zz5cbiAgICAgICAgICAgICAgICB7eyBpdGVtLmNhcHRpb24gfX1cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctdGVtcGxhdGUgI3Nob3dUZW1wbGF0ZT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJsb2NrIHJvdW5kZWQtbGcgYmctd2hpdGUgYm9yZGVyIGJvcmRlci1ncmF5LTIwMCB3LWZ1bGwgaC1hdXRvIHNoYWRvdy0yeGxcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uVGVtcGxhdGVDbGljay5lbWl0KClcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwibWVudVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { Directive, EventEmitter, HostListener, Input, Output, } from '@angular/core';
|
|
2
|
-
import { NgtContextMenuComponent } from './ngt-context-menu.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class NgtContextMenuDirective {
|
|
5
|
-
constructor(viewContainerRef, changeDetector) {
|
|
6
|
-
this.viewContainerRef = viewContainerRef;
|
|
7
|
-
this.changeDetector = changeDetector;
|
|
8
|
-
this.onNgtContextMenuClick = new EventEmitter();
|
|
9
|
-
this.onOpenNgtContextMenu = new EventEmitter();
|
|
10
|
-
this.componentRef = null;
|
|
11
|
-
}
|
|
12
|
-
onContextMenu(event) {
|
|
13
|
-
event.preventDefault();
|
|
14
|
-
setTimeout(() => {
|
|
15
|
-
this.destroy();
|
|
16
|
-
this.createComponent(event);
|
|
17
|
-
}, 50);
|
|
18
|
-
}
|
|
19
|
-
onDocumentContextMenuClick(event) {
|
|
20
|
-
event.preventDefault();
|
|
21
|
-
this.destroy();
|
|
22
|
-
this.changeDetector.detectChanges();
|
|
23
|
-
}
|
|
24
|
-
onDocumentClick() {
|
|
25
|
-
this.destroy();
|
|
26
|
-
}
|
|
27
|
-
onClick() {
|
|
28
|
-
this.destroy();
|
|
29
|
-
}
|
|
30
|
-
ngOnDestroy() {
|
|
31
|
-
this.destroy();
|
|
32
|
-
}
|
|
33
|
-
createComponent(event) {
|
|
34
|
-
this.componentRef = this.viewContainerRef.createComponent(NgtContextMenuComponent);
|
|
35
|
-
this.componentRef.instance.positionX = event.clientX;
|
|
36
|
-
this.componentRef.instance.positionY = event.clientY;
|
|
37
|
-
this.componentRef.instance.menuItems = this.ngtContextMenuOptions;
|
|
38
|
-
this.componentRef.instance.menuTemplate = this.ngtContextMenuTemplate;
|
|
39
|
-
this.bindSubscriptions();
|
|
40
|
-
document.body.appendChild(this.componentRef.location.nativeElement);
|
|
41
|
-
this.onOpenNgtContextMenu.emit(this.componentRef.instance);
|
|
42
|
-
}
|
|
43
|
-
bindSubscriptions() {
|
|
44
|
-
this.menuItemClickSubscription = this.componentRef.instance
|
|
45
|
-
.onMenuItemClick
|
|
46
|
-
.subscribe((event) => {
|
|
47
|
-
this.onNgtContextMenuClick.emit(event);
|
|
48
|
-
this.destroy();
|
|
49
|
-
});
|
|
50
|
-
this.templateClickSubscription = this.componentRef.instance
|
|
51
|
-
.onTemplateClick
|
|
52
|
-
.subscribe((event) => this.destroy());
|
|
53
|
-
}
|
|
54
|
-
destroy() {
|
|
55
|
-
this.menuItemClickSubscription?.unsubscribe();
|
|
56
|
-
this.templateClickSubscription?.unsubscribe();
|
|
57
|
-
this.componentRef?.destroy();
|
|
58
|
-
this.componentRef = null;
|
|
59
|
-
}
|
|
60
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContextMenuDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
61
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NgtContextMenuDirective, selector: "[ngt-contextmenu]", inputs: { ngtContextMenuOptions: "ngtContextMenuOptions", ngtContextMenuTemplate: "ngtContextMenuTemplate" }, outputs: { onNgtContextMenuClick: "onNgtContextMenuClick", onOpenNgtContextMenu: "onOpenNgtContextMenu" }, host: { listeners: { "contextmenu": "onContextMenu($event)", "document:contextmenu": "onDocumentContextMenuClick($event)", "document:click": "onDocumentClick()", "click": "onClick()" } }, ngImport: i0 }); }
|
|
62
|
-
}
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContextMenuDirective, decorators: [{
|
|
64
|
-
type: Directive,
|
|
65
|
-
args: [{
|
|
66
|
-
selector: '[ngt-contextmenu]'
|
|
67
|
-
}]
|
|
68
|
-
}], ctorParameters: () => [{ type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }], propDecorators: { onNgtContextMenuClick: [{
|
|
69
|
-
type: Output
|
|
70
|
-
}], onOpenNgtContextMenu: [{
|
|
71
|
-
type: Output
|
|
72
|
-
}], ngtContextMenuOptions: [{
|
|
73
|
-
type: Input
|
|
74
|
-
}], ngtContextMenuTemplate: [{
|
|
75
|
-
type: Input
|
|
76
|
-
}], onContextMenu: [{
|
|
77
|
-
type: HostListener,
|
|
78
|
-
args: ['contextmenu', ['$event']]
|
|
79
|
-
}], onDocumentContextMenuClick: [{
|
|
80
|
-
type: HostListener,
|
|
81
|
-
args: ['document:contextmenu', ['$event']]
|
|
82
|
-
}], onDocumentClick: [{
|
|
83
|
-
type: HostListener,
|
|
84
|
-
args: ['document:click']
|
|
85
|
-
}], onClick: [{
|
|
86
|
-
type: HostListener,
|
|
87
|
-
args: ['click']
|
|
88
|
-
}] } });
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LWNvbnRleHQtbWVudS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy10YWlsd2luZC9zcmMvY29tcG9uZW50cy9uZ3QtY29udGV4dC1tZW51L25ndC1jb250ZXh0LW1lbnUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxHQUdULE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSx1QkFBdUIsRUFBaUMsTUFBTSw4QkFBOEIsQ0FBQzs7QUFLdEcsTUFBTSxPQUFPLHVCQUF1QjtJQVdoQyxZQUNZLGdCQUFrQyxFQUNsQyxjQUFpQztRQURqQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQVo1QiwwQkFBcUIsR0FBZ0QsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN4Rix5QkFBb0IsR0FBMEMsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUsxRixpQkFBWSxHQUEwQyxJQUFJLENBQUM7SUFPL0QsQ0FBQztJQUdFLGFBQWEsQ0FBQyxLQUFpQjtRQUNsQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFFdkIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUdNLDBCQUEwQixDQUFDLEtBQWlCO1FBQy9DLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUV2QixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFHTSxlQUFlO1FBQ2xCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBR00sT0FBTztRQUNWLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRU8sZUFBZSxDQUFDLEtBQWlCO1FBQ3JDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBRW5GLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ3JELElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ3JELElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUM7UUFDbEUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztRQUV0RSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUV6QixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUVwRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVPLGlCQUFpQjtRQUNyQixJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRO2FBQ3RELGVBQWU7YUFDZixTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNqQixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXZDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FBQztRQUVQLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVE7YUFDdEQsZUFBZTthQUNmLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVPLE9BQU87UUFDWCxJQUFJLENBQUMseUJBQXlCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLHlCQUF5QixFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxZQUFZLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFFN0IsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7SUFDN0IsQ0FBQzsrR0FuRlEsdUJBQXVCO21HQUF2Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBSG5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG1CQUFtQjtpQkFDaEM7cUhBRW9CLHFCQUFxQjtzQkFBckMsTUFBTTtnQkFDVSxvQkFBb0I7c0JBQXBDLE1BQU07Z0JBRVMscUJBQXFCO3NCQUFwQyxLQUFLO2dCQUNVLHNCQUFzQjtzQkFBckMsS0FBSztnQkFZQyxhQUFhO3NCQURuQixZQUFZO3VCQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFXaEMsMEJBQTBCO3NCQURoQyxZQUFZO3VCQUFDLHNCQUFzQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVN6QyxlQUFlO3NCQURyQixZQUFZO3VCQUFDLGdCQUFnQjtnQkFNdkIsT0FBTztzQkFEYixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudFJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3V0cHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE5ndENvbnRleHRNZW51Q29tcG9uZW50LCBOZ3RDb250ZXh0TWVudU9wdGlvbkludGVyZmFjZSB9IGZyb20gJy4vbmd0LWNvbnRleHQtbWVudS5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tuZ3QtY29udGV4dG1lbnVdJ1xufSlcbmV4cG9ydCBjbGFzcyBOZ3RDb250ZXh0TWVudURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgQE91dHB1dCgpIHB1YmxpYyBvbk5ndENvbnRleHRNZW51Q2xpY2s6IEV2ZW50RW1pdHRlcjxOZ3RDb250ZXh0TWVudU9wdGlvbkludGVyZmFjZT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpIHB1YmxpYyBvbk9wZW5OZ3RDb250ZXh0TWVudTogRXZlbnRFbWl0dGVyPE5ndENvbnRleHRNZW51Q29tcG9uZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBJbnB1dCgpIHB1YmxpYyBuZ3RDb250ZXh0TWVudU9wdGlvbnM6IE5ndENvbnRleHRNZW51T3B0aW9uSW50ZXJmYWNlW107XG4gICAgQElucHV0KCkgcHVibGljIG5ndENvbnRleHRNZW51VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBwcml2YXRlIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPE5ndENvbnRleHRNZW51Q29tcG9uZW50PiA9IG51bGw7XG4gICAgcHJpdmF0ZSBtZW51SXRlbUNsaWNrU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJpdmF0ZSB0ZW1wbGF0ZUNsaWNrU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgKSB7IH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NvbnRleHRtZW51JywgWyckZXZlbnQnXSlcbiAgICBwdWJsaWMgb25Db250ZXh0TWVudShldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5kZXN0cm95KCk7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUNvbXBvbmVudChldmVudCk7XG4gICAgICAgIH0sIDUwKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjb250ZXh0bWVudScsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uRG9jdW1lbnRDb250ZXh0TWVudUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgdGhpcy5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJylcbiAgICBwdWJsaWMgb25Eb2N1bWVudENsaWNrKCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgcHVibGljIG9uQ2xpY2soKSB7XG4gICAgICAgIHRoaXMuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVDb21wb25lbnQoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KE5ndENvbnRleHRNZW51Q29tcG9uZW50KTtcblxuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5wb3NpdGlvblggPSBldmVudC5jbGllbnRYO1xuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5wb3NpdGlvblkgPSBldmVudC5jbGllbnRZO1xuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5tZW51SXRlbXMgPSB0aGlzLm5ndENvbnRleHRNZW51T3B0aW9ucztcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UubWVudVRlbXBsYXRlID0gdGhpcy5uZ3RDb250ZXh0TWVudVRlbXBsYXRlO1xuXG4gICAgICAgIHRoaXMuYmluZFN1YnNjcmlwdGlvbnMoKTtcblxuICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRoaXMuY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgICAgIHRoaXMub25PcGVuTmd0Q29udGV4dE1lbnUuZW1pdCh0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBiaW5kU3Vic2NyaXB0aW9ucygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tZW51SXRlbUNsaWNrU3Vic2NyaXB0aW9uID0gdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2VcbiAgICAgICAgICAgIC5vbk1lbnVJdGVtQ2xpY2tcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbk5ndENvbnRleHRNZW51Q2xpY2suZW1pdChldmVudCk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMudGVtcGxhdGVDbGlja1N1YnNjcmlwdGlvbiA9IHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlXG4gICAgICAgICAgICAub25UZW1wbGF0ZUNsaWNrXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4gdGhpcy5kZXN0cm95KCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tZW51SXRlbUNsaWNrU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnRlbXBsYXRlQ2xpY2tTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmPy5kZXN0cm95KCk7XG5cbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSBudWxsO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { NgtSvgModule } from '../ngt-svg/ngt-svg.module';
|
|
4
|
-
import { NgtContextMenuComponent } from './ngt-context-menu.component';
|
|
5
|
-
import { NgtContextMenuDirective } from './ngt-context-menu.directive';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class NgtContextMenuModule {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContextMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: NgtContextMenuModule, declarations: [NgtContextMenuDirective,
|
|
10
|
-
NgtContextMenuComponent], imports: [CommonModule,
|
|
11
|
-
NgtSvgModule], exports: [NgtContextMenuDirective,
|
|
12
|
-
NgtContextMenuComponent] }); }
|
|
13
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContextMenuModule, imports: [CommonModule,
|
|
14
|
-
NgtSvgModule] }); }
|
|
15
|
-
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgtContextMenuModule, decorators: [{
|
|
17
|
-
type: NgModule,
|
|
18
|
-
args: [{
|
|
19
|
-
declarations: [
|
|
20
|
-
NgtContextMenuDirective,
|
|
21
|
-
NgtContextMenuComponent,
|
|
22
|
-
],
|
|
23
|
-
exports: [
|
|
24
|
-
NgtContextMenuDirective,
|
|
25
|
-
NgtContextMenuComponent,
|
|
26
|
-
],
|
|
27
|
-
imports: [
|
|
28
|
-
CommonModule,
|
|
29
|
-
NgtSvgModule
|
|
30
|
-
],
|
|
31
|
-
}]
|
|
32
|
-
}] });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LWNvbnRleHQtbWVudS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy10YWlsd2luZC9zcmMvY29tcG9uZW50cy9uZ3QtY29udGV4dC1tZW51L25ndC1jb250ZXh0LW1lbnUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFnQnZFLE1BQU0sT0FBTyxvQkFBb0I7K0dBQXBCLG9CQUFvQjtnSEFBcEIsb0JBQW9CLGlCQVp6Qix1QkFBdUI7WUFDdkIsdUJBQXVCLGFBT3ZCLFlBQVk7WUFDWixZQUFZLGFBTFosdUJBQXVCO1lBQ3ZCLHVCQUF1QjtnSEFPbEIsb0JBQW9CLFlBSnpCLFlBQVk7WUFDWixZQUFZOzs0RkFHUCxvQkFBb0I7a0JBZGhDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFO3dCQUNWLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3FCQUMxQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsdUJBQXVCO3dCQUN2Qix1QkFBdUI7cUJBQzFCO29CQUNELE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFlBQVk7cUJBQ2Y7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTmd0U3ZnTW9kdWxlIH0gZnJvbSAnLi4vbmd0LXN2Zy9uZ3Qtc3ZnLm1vZHVsZSc7XG5pbXBvcnQgeyBOZ3RDb250ZXh0TWVudUNvbXBvbmVudCB9IGZyb20gJy4vbmd0LWNvbnRleHQtbWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd0Q29udGV4dE1lbnVEaXJlY3RpdmUgfSBmcm9tICcuL25ndC1jb250ZXh0LW1lbnUuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgTmd0Q29udGV4dE1lbnVEaXJlY3RpdmUsXG4gICAgICAgIE5ndENvbnRleHRNZW51Q29tcG9uZW50LFxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBOZ3RDb250ZXh0TWVudURpcmVjdGl2ZSxcbiAgICAgICAgTmd0Q29udGV4dE1lbnVDb21wb25lbnQsXG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgTmd0U3ZnTW9kdWxlXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0Q29udGV4dE1lbnVNb2R1bGUgeyB9XG4iXX0=
|