@abp/ng.theme.shared 5.0.0-rc.1 → 5.0.2
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/abp-ng.theme.shared.d.ts +5 -5
- package/bundles/abp-ng.theme.shared-extensions.umd.js +1749 -1748
- package/bundles/abp-ng.theme.shared-extensions.umd.js.map +1 -1
- package/bundles/abp-ng.theme.shared-testing.umd.js +41 -41
- package/bundles/abp-ng.theme.shared.umd.js +2316 -2316
- package/bundles/abp-ng.theme.shared.umd.js.map +1 -1
- package/esm2015/abp-ng.theme.shared.js +4 -4
- package/esm2015/extensions/abp-ng.theme.shared-extensions.js +4 -4
- package/esm2015/extensions/lib/adapters/date-time.adapter.js +33 -33
- package/esm2015/extensions/lib/adapters/date.adapter.js +40 -40
- package/esm2015/extensions/lib/adapters/time.adapter.js +35 -35
- package/esm2015/extensions/lib/components/abstract-actions/abstract-actions.component.js +24 -24
- package/esm2015/extensions/lib/components/date-time-picker/date-time-picker.component.js +73 -73
- package/esm2015/extensions/lib/components/extensible-form/extensible-form-prop.component.js +164 -164
- package/esm2015/extensions/lib/components/extensible-form/extensible-form.component.js +70 -70
- package/esm2015/extensions/lib/components/extensible-table/extensible-table.component.js +133 -133
- package/esm2015/extensions/lib/components/grid-actions/grid-actions.component.js +45 -45
- package/esm2015/extensions/lib/components/page-toolbar/page-toolbar.component.js +45 -45
- package/esm2015/extensions/lib/constants/extra-properties.js +1 -1
- package/esm2015/extensions/lib/directives/disabled.directive.js +28 -28
- package/esm2015/extensions/lib/directives/prop-data.directive.js +40 -40
- package/esm2015/extensions/lib/enums/props.enum.js +1 -1
- package/esm2015/extensions/lib/models/actions.js +45 -45
- package/esm2015/extensions/lib/models/entity-actions.js +28 -28
- package/esm2015/extensions/lib/models/entity-props.js +36 -34
- package/esm2015/extensions/lib/models/form-props.js +51 -51
- package/esm2015/extensions/lib/models/internal/object-extensions.js +1 -1
- package/esm2015/extensions/lib/models/object-extensions.js +2 -2
- package/esm2015/extensions/lib/models/props.js +49 -49
- package/esm2015/extensions/lib/models/toolbar-actions.js +40 -40
- package/esm2015/extensions/lib/services/extensions.service.js +23 -23
- package/esm2015/extensions/lib/tokens/extensions.token.js +6 -6
- package/esm2015/extensions/lib/ui-extensions.module.js +91 -91
- package/esm2015/extensions/lib/utils/actions.util.js +8 -8
- package/esm2015/extensions/lib/utils/enum.util.js +41 -41
- package/esm2015/extensions/lib/utils/factory.util.js +3 -3
- package/esm2015/extensions/lib/utils/form-props.util.js +50 -50
- package/esm2015/extensions/lib/utils/localization.util.js +12 -12
- package/esm2015/extensions/lib/utils/props.util.js +13 -13
- package/esm2015/extensions/lib/utils/state.util.js +123 -123
- package/esm2015/extensions/lib/utils/typeahead.util.js +51 -51
- package/esm2015/extensions/lib/utils/validation.util.js +10 -10
- package/esm2015/extensions/public-api.js +27 -27
- package/esm2015/lib/animations/bounce.animations.js +16 -16
- package/esm2015/lib/animations/collapse.animations.js +49 -49
- package/esm2015/lib/animations/fade.animations.js +37 -37
- package/esm2015/lib/animations/index.js +6 -6
- package/esm2015/lib/animations/modal.animations.js +10 -10
- package/esm2015/lib/animations/slide.animations.js +7 -7
- package/esm2015/lib/animations/toast.animations.js +12 -12
- package/esm2015/lib/components/breadcrumb/breadcrumb.component.js +48 -48
- package/esm2015/lib/components/breadcrumb-items/breadcrumb-items.component.js +21 -21
- package/esm2015/lib/components/button/button.component.js +71 -71
- package/esm2015/lib/components/confirmation/confirmation.component.js +39 -39
- package/esm2015/lib/components/http-error-wrapper/http-error-wrapper.component.js +65 -65
- package/esm2015/lib/components/index.js +12 -12
- package/esm2015/lib/components/loader-bar/loader-bar.component.js +101 -101
- package/esm2015/lib/components/loading/loading.component.js +17 -17
- package/esm2015/lib/components/modal/modal-close.directive.js +27 -27
- package/esm2015/lib/components/modal/modal-ref.service.js +25 -25
- package/esm2015/lib/components/modal/modal.component.js +188 -188
- package/esm2015/lib/components/toast/toast.component.js +60 -60
- package/esm2015/lib/components/toast-container/toast-container.component.js +48 -48
- package/esm2015/lib/constants/styles.js +1 -1
- package/esm2015/lib/constants/validation.js +14 -14
- package/esm2015/lib/directives/ellipsis.directive.js +62 -62
- package/esm2015/lib/directives/index.js +4 -4
- package/esm2015/lib/directives/loading.directive.js +89 -89
- package/esm2015/lib/directives/ngx-datatable-default.directive.js +74 -74
- package/esm2015/lib/directives/ngx-datatable-list.directive.js +93 -93
- package/esm2015/lib/enums/index.js +1 -1
- package/esm2015/lib/enums/route-names.js +1 -1
- package/esm2015/lib/handlers/document-dir.handler.js +32 -32
- package/esm2015/lib/handlers/error.handler.js +291 -291
- package/esm2015/lib/handlers/index.js +2 -2
- package/esm2015/lib/models/common.js +1 -1
- package/esm2015/lib/models/confirmation.js +9 -9
- package/esm2015/lib/models/index.js +5 -5
- package/esm2015/lib/models/nav-item.js +6 -6
- package/esm2015/lib/models/statistics.js +1 -1
- package/esm2015/lib/models/toaster.js +1 -1
- package/esm2015/lib/providers/index.js +2 -2
- package/esm2015/lib/providers/ng-bootstrap-config.provider.js +16 -16
- package/esm2015/lib/providers/route.provider.js +17 -17
- package/esm2015/lib/services/confirmation.service.js +67 -67
- package/esm2015/lib/services/index.js +4 -4
- package/esm2015/lib/services/nav-items.service.js +50 -50
- package/esm2015/lib/services/page-alert.service.js +25 -25
- package/esm2015/lib/services/toaster.service.js +102 -102
- package/esm2015/lib/theme-shared.module.js +164 -164
- package/esm2015/lib/tokens/append-content.token.js +10 -10
- package/esm2015/lib/tokens/http-error.token.js +9 -9
- package/esm2015/lib/tokens/index.js +4 -4
- package/esm2015/lib/tokens/ngx-datatable-messages.token.js +7 -7
- package/esm2015/lib/tokens/suppress-unsaved-changes-warning.token.js +2 -2
- package/esm2015/lib/utils/date-parser-formatter.js +58 -58
- package/esm2015/lib/utils/index.js +2 -2
- package/esm2015/lib/utils/validation-utils.js +32 -32
- package/esm2015/public-api.js +15 -15
- package/esm2015/testing/abp-ng.theme.shared-testing.js +4 -4
- package/esm2015/testing/lib/models/config.js +1 -1
- package/esm2015/testing/lib/models/index.js +1 -1
- package/esm2015/testing/lib/theme-shared-testing.module.js +42 -42
- package/esm2015/testing/public-api.js +3 -3
- package/extensions/abp-ng.theme.shared-extensions.d.ts +5 -5
- package/extensions/lib/adapters/date-time.adapter.d.ts +11 -11
- package/extensions/lib/adapters/date.adapter.d.ts +9 -9
- package/extensions/lib/adapters/time.adapter.d.ts +8 -8
- package/extensions/lib/components/abstract-actions/abstract-actions.component.d.ts +14 -14
- package/extensions/lib/components/date-time-picker/date-time-picker.component.d.ts +16 -16
- package/extensions/lib/components/extensible-form/extensible-form-prop.component.d.ts +37 -37
- package/extensions/lib/components/extensible-form/extensible-form.component.d.ts +24 -24
- package/extensions/lib/components/extensible-table/extensible-table.component.d.ts +35 -35
- package/extensions/lib/components/grid-actions/grid-actions.component.d.ts +13 -13
- package/extensions/lib/components/page-toolbar/page-toolbar.component.d.ts +12 -12
- package/extensions/lib/constants/extra-properties.d.ts +1 -1
- package/extensions/lib/directives/disabled.directive.d.ts +11 -11
- package/extensions/lib/directives/prop-data.directive.d.ts +19 -19
- package/extensions/lib/enums/props.enum.d.ts +15 -15
- package/extensions/lib/models/actions.d.ts +35 -35
- package/extensions/lib/models/entity-actions.d.ts +22 -22
- package/extensions/lib/models/entity-props.d.ts +29 -29
- package/extensions/lib/models/form-props.d.ts +42 -42
- package/extensions/lib/models/internal/object-extensions.d.ts +85 -85
- package/extensions/lib/models/object-extensions.d.ts +2 -2
- package/extensions/lib/models/props.d.ts +39 -39
- package/extensions/lib/models/toolbar-actions.d.ts +29 -29
- package/extensions/lib/services/extensions.service.d.ts +14 -14
- package/extensions/lib/tokens/extensions.token.d.ts +14 -14
- package/extensions/lib/ui-extensions.module.d.ts +23 -23
- package/extensions/lib/utils/actions.util.d.ts +7 -7
- package/extensions/lib/utils/enum.util.d.ts +7 -7
- package/extensions/lib/utils/factory.util.d.ts +1 -1
- package/extensions/lib/utils/form-props.util.d.ts +3 -3
- package/extensions/lib/utils/localization.util.d.ts +3 -3
- package/extensions/lib/utils/props.util.d.ts +8 -8
- package/extensions/lib/utils/state.util.d.ts +5 -5
- package/extensions/lib/utils/typeahead.util.d.ts +11 -11
- package/extensions/lib/utils/validation.util.d.ts +3 -3
- package/extensions/public-api.d.ts +27 -27
- package/fesm2015/abp-ng.theme.shared-extensions.js +1227 -1226
- package/fesm2015/abp-ng.theme.shared-extensions.js.map +1 -1
- package/fesm2015/abp-ng.theme.shared-testing.js +37 -37
- package/fesm2015/abp-ng.theme.shared.js +1858 -1858
- package/fesm2015/abp-ng.theme.shared.js.map +1 -1
- package/lib/animations/bounce.animations.d.ts +1 -1
- package/lib/animations/collapse.animations.d.ts +9 -9
- package/lib/animations/fade.animations.d.ts +10 -10
- package/lib/animations/index.d.ts +6 -6
- package/lib/animations/modal.animations.d.ts +2 -2
- package/lib/animations/slide.animations.d.ts +1 -1
- package/lib/animations/toast.animations.d.ts +1 -1
- package/lib/components/breadcrumb/breadcrumb.component.d.ts +16 -16
- package/lib/components/breadcrumb-items/breadcrumb-items.component.d.ts +7 -7
- package/lib/components/button/button.component.d.ts +25 -25
- package/lib/components/confirmation/confirmation.component.d.ts +14 -14
- package/lib/components/http-error-wrapper/http-error-wrapper.component.d.ts +27 -27
- package/lib/components/index.d.ts +12 -12
- package/lib/components/loader-bar/loader-bar.component.d.ts +33 -33
- package/lib/components/loading/loading.component.d.ts +5 -5
- package/lib/components/modal/modal-close.directive.d.ts +9 -9
- package/lib/components/modal/modal-ref.service.d.ts +13 -13
- package/lib/components/modal/modal.component.d.ts +50 -50
- package/lib/components/toast/toast.component.d.ts +14 -14
- package/lib/components/toast-container/toast-container.component.d.ts +18 -18
- package/lib/constants/styles.d.ts +2 -2
- package/lib/constants/validation.d.ts +14 -14
- package/lib/directives/ellipsis.directive.d.ts +21 -21
- package/lib/directives/index.d.ts +4 -4
- package/lib/directives/loading.directive.d.ts +25 -25
- package/lib/directives/ngx-datatable-default.directive.d.ts +30 -30
- package/lib/directives/ngx-datatable-list.directive.d.ts +24 -24
- package/lib/enums/index.d.ts +1 -1
- package/lib/enums/route-names.d.ts +3 -3
- package/lib/handlers/document-dir.handler.d.ts +13 -13
- package/lib/handlers/error.handler.d.ts +82 -82
- package/lib/handlers/index.d.ts +2 -2
- package/lib/models/common.d.ts +19 -19
- package/lib/models/confirmation.d.ts +25 -25
- package/lib/models/index.d.ts +5 -5
- package/lib/models/nav-item.d.ts +11 -11
- package/lib/models/statistics.d.ts +12 -12
- package/lib/models/toaster.d.ts +30 -30
- package/lib/providers/index.d.ts +2 -2
- package/lib/providers/ng-bootstrap-config.provider.d.ts +8 -8
- package/lib/providers/route.provider.d.ts +8 -8
- package/lib/services/confirmation.service.d.ts +21 -21
- package/lib/services/index.d.ts +4 -4
- package/lib/services/nav-items.service.d.ts +13 -13
- package/lib/services/page-alert.service.d.ts +18 -18
- package/lib/services/toaster.service.d.ts +60 -60
- package/lib/theme-shared.module.d.ts +33 -33
- package/lib/tokens/append-content.token.d.ts +2 -2
- package/lib/tokens/http-error.token.d.ts +5 -5
- package/lib/tokens/index.d.ts +4 -4
- package/lib/tokens/ngx-datatable-messages.token.d.ts +12 -12
- package/lib/tokens/suppress-unsaved-changes-warning.token.d.ts +2 -2
- package/lib/utils/date-parser-formatter.d.ts +12 -12
- package/lib/utils/index.d.ts +2 -2
- package/lib/utils/validation-utils.d.ts +3 -3
- package/package.json +4 -4
- package/public-api.d.ts +12 -12
- package/testing/abp-ng.theme.shared-testing.d.ts +5 -5
- package/testing/lib/models/config.d.ts +4 -4
- package/testing/lib/models/index.d.ts +1 -1
- package/testing/lib/theme-shared-testing.module.d.ts +14 -14
- package/testing/public-api.d.ts +3 -3
|
@@ -1,75 +1,75 @@
|
|
|
1
|
-
import { DOCUMENT } from '@angular/common';
|
|
2
|
-
import { Directive, HostBinding, Inject, Input } from '@angular/core';
|
|
3
|
-
import { ColumnMode, DatatableComponent } from '@swimlane/ngx-datatable';
|
|
4
|
-
import { fromEvent, Subscription } from 'rxjs';
|
|
5
|
-
import { debounceTime } from 'rxjs/operators';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@swimlane/ngx-datatable";
|
|
8
|
-
export class NgxDatatableDefaultDirective {
|
|
9
|
-
constructor(table, document) {
|
|
10
|
-
this.table = table;
|
|
11
|
-
this.document = document;
|
|
12
|
-
this.subscription = new Subscription();
|
|
13
|
-
this.resizeDiff = 0;
|
|
14
|
-
this.class = 'material bordered';
|
|
15
|
-
this.table.columnMode = ColumnMode.force;
|
|
16
|
-
this.table.footerHeight = 50;
|
|
17
|
-
this.table.headerHeight = 50;
|
|
18
|
-
this.table.rowHeight = 'auto';
|
|
19
|
-
this.table.scrollbarH = true;
|
|
20
|
-
this.table.virtualization = false;
|
|
21
|
-
}
|
|
22
|
-
get classes() {
|
|
23
|
-
return `ngx-datatable ${this.class}`;
|
|
24
|
-
}
|
|
25
|
-
fixHorizontalGap(scroller) {
|
|
26
|
-
const { body, documentElement } = this.document;
|
|
27
|
-
if (documentElement.scrollHeight !== documentElement.clientHeight) {
|
|
28
|
-
if (this.resizeDiff === 0) {
|
|
29
|
-
this.resizeDiff = window.innerWidth - body.offsetWidth;
|
|
30
|
-
scroller.scrollWidth -= this.resizeDiff;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
scroller.scrollWidth += this.resizeDiff;
|
|
35
|
-
this.resizeDiff = 0;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
fixStyleOnWindowResize() {
|
|
39
|
-
// avoided @HostListener('window:resize') in favor of performance
|
|
40
|
-
const subscription = fromEvent(window, 'resize')
|
|
41
|
-
.pipe(debounceTime(500))
|
|
42
|
-
.subscribe(() => {
|
|
43
|
-
const { scroller } = this.table.bodyComponent;
|
|
44
|
-
if (!scroller)
|
|
45
|
-
return;
|
|
46
|
-
this.fixHorizontalGap(scroller);
|
|
47
|
-
});
|
|
48
|
-
this.subscription.add(subscription);
|
|
49
|
-
}
|
|
50
|
-
ngAfterViewInit() {
|
|
51
|
-
this.fixStyleOnWindowResize();
|
|
52
|
-
}
|
|
53
|
-
ngOnDestroy() {
|
|
54
|
-
this.subscription.unsubscribe();
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
NgxDatatableDefaultDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableDefaultDirective, deps: [{ token: i1.DatatableComponent }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
|
|
58
|
-
NgxDatatableDefaultDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: NgxDatatableDefaultDirective, selector: "ngx-datatable[default]", inputs: { class: "class" }, host: { properties: { "class": "this.classes" } }, exportAs: ["ngxDatatableDefault"], ngImport: i0 });
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableDefaultDirective, decorators: [{
|
|
60
|
-
type: Directive,
|
|
61
|
-
args: [{
|
|
62
|
-
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
63
|
-
selector: 'ngx-datatable[default]',
|
|
64
|
-
exportAs: 'ngxDatatableDefault',
|
|
65
|
-
}]
|
|
66
|
-
}], ctorParameters: function () { return [{ type: i1.DatatableComponent }, { type: undefined, decorators: [{
|
|
67
|
-
type: Inject,
|
|
68
|
-
args: [DOCUMENT]
|
|
69
|
-
}] }]; }, propDecorators: { class: [{
|
|
70
|
-
type: Input
|
|
71
|
-
}], classes: [{
|
|
72
|
-
type: HostBinding,
|
|
73
|
-
args: ['class']
|
|
74
|
-
}] } });
|
|
1
|
+
import { DOCUMENT } from '@angular/common';
|
|
2
|
+
import { Directive, HostBinding, Inject, Input } from '@angular/core';
|
|
3
|
+
import { ColumnMode, DatatableComponent } from '@swimlane/ngx-datatable';
|
|
4
|
+
import { fromEvent, Subscription } from 'rxjs';
|
|
5
|
+
import { debounceTime } from 'rxjs/operators';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@swimlane/ngx-datatable";
|
|
8
|
+
export class NgxDatatableDefaultDirective {
|
|
9
|
+
constructor(table, document) {
|
|
10
|
+
this.table = table;
|
|
11
|
+
this.document = document;
|
|
12
|
+
this.subscription = new Subscription();
|
|
13
|
+
this.resizeDiff = 0;
|
|
14
|
+
this.class = 'material bordered';
|
|
15
|
+
this.table.columnMode = ColumnMode.force;
|
|
16
|
+
this.table.footerHeight = 50;
|
|
17
|
+
this.table.headerHeight = 50;
|
|
18
|
+
this.table.rowHeight = 'auto';
|
|
19
|
+
this.table.scrollbarH = true;
|
|
20
|
+
this.table.virtualization = false;
|
|
21
|
+
}
|
|
22
|
+
get classes() {
|
|
23
|
+
return `ngx-datatable ${this.class}`;
|
|
24
|
+
}
|
|
25
|
+
fixHorizontalGap(scroller) {
|
|
26
|
+
const { body, documentElement } = this.document;
|
|
27
|
+
if (documentElement.scrollHeight !== documentElement.clientHeight) {
|
|
28
|
+
if (this.resizeDiff === 0) {
|
|
29
|
+
this.resizeDiff = window.innerWidth - body.offsetWidth;
|
|
30
|
+
scroller.scrollWidth -= this.resizeDiff;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
scroller.scrollWidth += this.resizeDiff;
|
|
35
|
+
this.resizeDiff = 0;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
fixStyleOnWindowResize() {
|
|
39
|
+
// avoided @HostListener('window:resize') in favor of performance
|
|
40
|
+
const subscription = fromEvent(window, 'resize')
|
|
41
|
+
.pipe(debounceTime(500))
|
|
42
|
+
.subscribe(() => {
|
|
43
|
+
const { scroller } = this.table.bodyComponent;
|
|
44
|
+
if (!scroller)
|
|
45
|
+
return;
|
|
46
|
+
this.fixHorizontalGap(scroller);
|
|
47
|
+
});
|
|
48
|
+
this.subscription.add(subscription);
|
|
49
|
+
}
|
|
50
|
+
ngAfterViewInit() {
|
|
51
|
+
this.fixStyleOnWindowResize();
|
|
52
|
+
}
|
|
53
|
+
ngOnDestroy() {
|
|
54
|
+
this.subscription.unsubscribe();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
NgxDatatableDefaultDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableDefaultDirective, deps: [{ token: i1.DatatableComponent }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
|
|
58
|
+
NgxDatatableDefaultDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: NgxDatatableDefaultDirective, selector: "ngx-datatable[default]", inputs: { class: "class" }, host: { properties: { "class": "this.classes" } }, exportAs: ["ngxDatatableDefault"], ngImport: i0 });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableDefaultDirective, decorators: [{
|
|
60
|
+
type: Directive,
|
|
61
|
+
args: [{
|
|
62
|
+
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
63
|
+
selector: 'ngx-datatable[default]',
|
|
64
|
+
exportAs: 'ngxDatatableDefault',
|
|
65
|
+
}]
|
|
66
|
+
}], ctorParameters: function () { return [{ type: i1.DatatableComponent }, { type: undefined, decorators: [{
|
|
67
|
+
type: Inject,
|
|
68
|
+
args: [DOCUMENT]
|
|
69
|
+
}] }]; }, propDecorators: { class: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], classes: [{
|
|
72
|
+
type: HostBinding,
|
|
73
|
+
args: ['class']
|
|
74
|
+
}] } });
|
|
75
75
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWRhdGF0YWJsZS1kZWZhdWx0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9zcmMvbGliL2RpcmVjdGl2ZXMvbmd4LWRhdGF0YWJsZS1kZWZhdWx0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFpQixTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFFLFVBQVUsRUFBRSxrQkFBa0IsRUFBcUIsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RixPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU85QyxNQUFNLE9BQU8sNEJBQTRCO0lBWXZDLFlBQW9CLEtBQXlCLEVBQTRCLFFBQXNCO1FBQTNFLFVBQUssR0FBTCxLQUFLLENBQW9CO1FBQTRCLGFBQVEsR0FBUixRQUFRLENBQWM7UUFYdkYsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWxDLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFFZCxVQUFLLEdBQUcsbUJBQW1CLENBQUM7UUFRbkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztRQUN6QyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQztRQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQ3BDLENBQUM7SUFaRCxJQUNJLE9BQU87UUFDVCxPQUFPLGlCQUFpQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQVdPLGdCQUFnQixDQUFDLFFBQTJCO1FBQ2xELE1BQU0sRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUVoRCxJQUFJLGVBQWUsQ0FBQyxZQUFZLEtBQUssZUFBZSxDQUFDLFlBQVksRUFBRTtZQUNqRSxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssQ0FBQyxFQUFFO2dCQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztnQkFDdkQsUUFBUSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ3pDO1NBQ0Y7YUFBTTtZQUNMLFFBQVEsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUN4QyxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQztTQUNyQjtJQUNILENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsaUVBQWlFO1FBQ2pFLE1BQU0sWUFBWSxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDO2FBQzdDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDdkIsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQztZQUU5QyxJQUFJLENBQUMsUUFBUTtnQkFBRSxPQUFPO1lBRXRCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztRQUVMLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xDLENBQUM7OzBIQXhEVSw0QkFBNEIsb0RBWWdCLFFBQVE7OEdBWnBELDRCQUE0Qjs0RkFBNUIsNEJBQTRCO2tCQUx4QyxTQUFTO21CQUFDO29CQUNULDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEM7OzBCQWFpRCxNQUFNOzJCQUFDLFFBQVE7NENBUHRELEtBQUs7c0JBQWIsS0FBSztnQkFHRixPQUFPO3NCQURWLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29sdW1uTW9kZSwgRGF0YXRhYmxlQ29tcG9uZW50LCBTY3JvbGxlckNvbXBvbmVudCB9IGZyb20gJ0Bzd2ltbGFuZS9uZ3gtZGF0YXRhYmxlJztcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBEaXJlY3RpdmUoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICBzZWxlY3RvcjogJ25neC1kYXRhdGFibGVbZGVmYXVsdF0nLFxuICBleHBvcnRBczogJ25neERhdGF0YWJsZURlZmF1bHQnLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3hEYXRhdGFibGVEZWZhdWx0RGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgcHJpdmF0ZSByZXNpemVEaWZmID0gMDtcblxuICBASW5wdXQoKSBjbGFzcyA9ICdtYXRlcmlhbCBib3JkZXJlZCc7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBjbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBuZ3gtZGF0YXRhYmxlICR7dGhpcy5jbGFzc31gO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0YWJsZTogRGF0YXRhYmxlQ29tcG9uZW50LCBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBNb2NrRG9jdW1lbnQpIHtcbiAgICB0aGlzLnRhYmxlLmNvbHVtbk1vZGUgPSBDb2x1bW5Nb2RlLmZvcmNlO1xuICAgIHRoaXMudGFibGUuZm9vdGVySGVpZ2h0ID0gNTA7XG4gICAgdGhpcy50YWJsZS5oZWFkZXJIZWlnaHQgPSA1MDtcbiAgICB0aGlzLnRhYmxlLnJvd0hlaWdodCA9ICdhdXRvJztcbiAgICB0aGlzLnRhYmxlLnNjcm9sbGJhckggPSB0cnVlO1xuICAgIHRoaXMudGFibGUudmlydHVhbGl6YXRpb24gPSBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgZml4SG9yaXpvbnRhbEdhcChzY3JvbGxlcjogU2Nyb2xsZXJDb21wb25lbnQpIHtcbiAgICBjb25zdCB7IGJvZHksIGRvY3VtZW50RWxlbWVudCB9ID0gdGhpcy5kb2N1bWVudDtcblxuICAgIGlmIChkb2N1bWVudEVsZW1lbnQuc2Nyb2xsSGVpZ2h0ICE9PSBkb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0KSB7XG4gICAgICBpZiAodGhpcy5yZXNpemVEaWZmID09PSAwKSB7XG4gICAgICAgIHRoaXMucmVzaXplRGlmZiA9IHdpbmRvdy5pbm5lcldpZHRoIC0gYm9keS5vZmZzZXRXaWR0aDtcbiAgICAgICAgc2Nyb2xsZXIuc2Nyb2xsV2lkdGggLT0gdGhpcy5yZXNpemVEaWZmO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBzY3JvbGxlci5zY3JvbGxXaWR0aCArPSB0aGlzLnJlc2l6ZURpZmY7XG4gICAgICB0aGlzLnJlc2l6ZURpZmYgPSAwO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZml4U3R5bGVPbldpbmRvd1Jlc2l6ZSgpIHtcbiAgICAvLyBhdm9pZGVkIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKSBpbiBmYXZvciBvZiBwZXJmb3JtYW5jZVxuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKVxuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgY29uc3QgeyBzY3JvbGxlciB9ID0gdGhpcy50YWJsZS5ib2R5Q29tcG9uZW50O1xuXG4gICAgICAgIGlmICghc2Nyb2xsZXIpIHJldHVybjtcblxuICAgICAgICB0aGlzLmZpeEhvcml6b250YWxHYXAoc2Nyb2xsZXIpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoc3Vic2NyaXB0aW9uKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmZpeFN0eWxlT25XaW5kb3dSZXNpemUoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cblxuLy8gZml4OiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8yMDM1MVxuaW50ZXJmYWNlIE1vY2tEb2N1bWVudCB7XG4gIGJvZHk6IE1vY2tCb2R5O1xuICBkb2N1bWVudEVsZW1lbnQ6IE1vY2tEb2N1bWVudEVsZW1lbnQ7XG59XG5cbmludGVyZmFjZSBNb2NrQm9keSB7XG4gIG9mZnNldFdpZHRoOiBudW1iZXI7XG59XG5cbmludGVyZmFjZSBNb2NrRG9jdW1lbnRFbGVtZW50IHtcbiAgY2xpZW50SGVpZ2h0OiBudW1iZXI7XG4gIHNjcm9sbEhlaWdodDogbnVtYmVyO1xufVxuIl19
|
|
@@ -1,94 +1,94 @@
|
|
|
1
|
-
import { ListService, LocalizationService } from '@abp/ng.core';
|
|
2
|
-
import { ChangeDetectorRef, Directive, Inject, Input, Optional, } from '@angular/core';
|
|
3
|
-
import { DatatableComponent } from '@swimlane/ngx-datatable';
|
|
4
|
-
import { Subscription } from 'rxjs';
|
|
5
|
-
import { defaultNgxDatatableMessages, NGX_DATATABLE_MESSAGES, } from '../tokens/ngx-datatable-messages.token';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@swimlane/ngx-datatable";
|
|
8
|
-
import * as i2 from "@abp/ng.core";
|
|
9
|
-
export class NgxDatatableListDirective {
|
|
10
|
-
constructor(table, cdRef, localizationService, ngxDatatableMessages) {
|
|
11
|
-
this.table = table;
|
|
12
|
-
this.cdRef = cdRef;
|
|
13
|
-
this.localizationService = localizationService;
|
|
14
|
-
this.ngxDatatableMessages = ngxDatatableMessages;
|
|
15
|
-
this.subscription = new Subscription();
|
|
16
|
-
this.querySubscription = new Subscription();
|
|
17
|
-
this.setInitialValues();
|
|
18
|
-
}
|
|
19
|
-
setInitialValues() {
|
|
20
|
-
this.table.externalPaging = true;
|
|
21
|
-
this.table.externalSorting = true;
|
|
22
|
-
const { emptyMessage, selectedMessage, totalMessage } = this.ngxDatatableMessages || defaultNgxDatatableMessages;
|
|
23
|
-
this.table.messages = {
|
|
24
|
-
emptyMessage: this.localizationService.instant(emptyMessage),
|
|
25
|
-
totalMessage: this.localizationService.instant(totalMessage),
|
|
26
|
-
selectedMessage: this.localizationService.instant(selectedMessage),
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
subscribeToPage() {
|
|
30
|
-
const sub = this.table.page.subscribe(({ offset }) => {
|
|
31
|
-
this.list.page = offset;
|
|
32
|
-
this.table.offset = offset;
|
|
33
|
-
});
|
|
34
|
-
this.subscription.add(sub);
|
|
35
|
-
}
|
|
36
|
-
subscribeToSort() {
|
|
37
|
-
const sub = this.table.sort.subscribe(({ sorts: [{ prop, dir }] }) => {
|
|
38
|
-
if (prop === this.list.sortKey && this.list.sortOrder === 'desc') {
|
|
39
|
-
this.list.sortKey = '';
|
|
40
|
-
this.list.sortOrder = '';
|
|
41
|
-
this.table.sorts = [];
|
|
42
|
-
this.cdRef.detectChanges();
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
this.list.sortKey = prop;
|
|
46
|
-
this.list.sortOrder = dir;
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
this.subscription.add(sub);
|
|
50
|
-
}
|
|
51
|
-
subscribeToQuery() {
|
|
52
|
-
if (!this.querySubscription.closed)
|
|
53
|
-
this.querySubscription.unsubscribe();
|
|
54
|
-
this.querySubscription = this.list.query$.subscribe(() => {
|
|
55
|
-
const offset = this.list.page;
|
|
56
|
-
if (this.table.offset !== offset)
|
|
57
|
-
this.table.offset = offset;
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
ngOnChanges({ list }) {
|
|
61
|
-
this.subscribeToQuery();
|
|
62
|
-
if (!list.firstChange)
|
|
63
|
-
return;
|
|
64
|
-
const { maxResultCount, page } = list.currentValue;
|
|
65
|
-
this.table.limit = maxResultCount;
|
|
66
|
-
this.table.offset = page;
|
|
67
|
-
}
|
|
68
|
-
ngOnDestroy() {
|
|
69
|
-
this.subscription.unsubscribe();
|
|
70
|
-
this.querySubscription.unsubscribe();
|
|
71
|
-
}
|
|
72
|
-
ngOnInit() {
|
|
73
|
-
this.subscribeToPage();
|
|
74
|
-
this.subscribeToSort();
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
NgxDatatableListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableListDirective, deps: [{ token: i1.DatatableComponent }, { token: i0.ChangeDetectorRef }, { token: i2.LocalizationService }, { token: NGX_DATATABLE_MESSAGES, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
78
|
-
NgxDatatableListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: NgxDatatableListDirective, selector: "ngx-datatable[list]", inputs: { list: "list" }, exportAs: ["ngxDatatableList"], usesOnChanges: true, ngImport: i0 });
|
|
79
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableListDirective, decorators: [{
|
|
80
|
-
type: Directive,
|
|
81
|
-
args: [{
|
|
82
|
-
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
83
|
-
selector: 'ngx-datatable[list]',
|
|
84
|
-
exportAs: 'ngxDatatableList',
|
|
85
|
-
}]
|
|
86
|
-
}], ctorParameters: function () { return [{ type: i1.DatatableComponent }, { type: i0.ChangeDetectorRef }, { type: i2.LocalizationService }, { type: undefined, decorators: [{
|
|
87
|
-
type: Optional
|
|
88
|
-
}, {
|
|
89
|
-
type: Inject,
|
|
90
|
-
args: [NGX_DATATABLE_MESSAGES]
|
|
91
|
-
}] }]; }, propDecorators: { list: [{
|
|
92
|
-
type: Input
|
|
93
|
-
}] } });
|
|
1
|
+
import { ListService, LocalizationService } from '@abp/ng.core';
|
|
2
|
+
import { ChangeDetectorRef, Directive, Inject, Input, Optional, } from '@angular/core';
|
|
3
|
+
import { DatatableComponent } from '@swimlane/ngx-datatable';
|
|
4
|
+
import { Subscription } from 'rxjs';
|
|
5
|
+
import { defaultNgxDatatableMessages, NGX_DATATABLE_MESSAGES, } from '../tokens/ngx-datatable-messages.token';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@swimlane/ngx-datatable";
|
|
8
|
+
import * as i2 from "@abp/ng.core";
|
|
9
|
+
export class NgxDatatableListDirective {
|
|
10
|
+
constructor(table, cdRef, localizationService, ngxDatatableMessages) {
|
|
11
|
+
this.table = table;
|
|
12
|
+
this.cdRef = cdRef;
|
|
13
|
+
this.localizationService = localizationService;
|
|
14
|
+
this.ngxDatatableMessages = ngxDatatableMessages;
|
|
15
|
+
this.subscription = new Subscription();
|
|
16
|
+
this.querySubscription = new Subscription();
|
|
17
|
+
this.setInitialValues();
|
|
18
|
+
}
|
|
19
|
+
setInitialValues() {
|
|
20
|
+
this.table.externalPaging = true;
|
|
21
|
+
this.table.externalSorting = true;
|
|
22
|
+
const { emptyMessage, selectedMessage, totalMessage } = this.ngxDatatableMessages || defaultNgxDatatableMessages;
|
|
23
|
+
this.table.messages = {
|
|
24
|
+
emptyMessage: this.localizationService.instant(emptyMessage),
|
|
25
|
+
totalMessage: this.localizationService.instant(totalMessage),
|
|
26
|
+
selectedMessage: this.localizationService.instant(selectedMessage),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
subscribeToPage() {
|
|
30
|
+
const sub = this.table.page.subscribe(({ offset }) => {
|
|
31
|
+
this.list.page = offset;
|
|
32
|
+
this.table.offset = offset;
|
|
33
|
+
});
|
|
34
|
+
this.subscription.add(sub);
|
|
35
|
+
}
|
|
36
|
+
subscribeToSort() {
|
|
37
|
+
const sub = this.table.sort.subscribe(({ sorts: [{ prop, dir }] }) => {
|
|
38
|
+
if (prop === this.list.sortKey && this.list.sortOrder === 'desc') {
|
|
39
|
+
this.list.sortKey = '';
|
|
40
|
+
this.list.sortOrder = '';
|
|
41
|
+
this.table.sorts = [];
|
|
42
|
+
this.cdRef.detectChanges();
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
this.list.sortKey = prop;
|
|
46
|
+
this.list.sortOrder = dir;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
this.subscription.add(sub);
|
|
50
|
+
}
|
|
51
|
+
subscribeToQuery() {
|
|
52
|
+
if (!this.querySubscription.closed)
|
|
53
|
+
this.querySubscription.unsubscribe();
|
|
54
|
+
this.querySubscription = this.list.query$.subscribe(() => {
|
|
55
|
+
const offset = this.list.page;
|
|
56
|
+
if (this.table.offset !== offset)
|
|
57
|
+
this.table.offset = offset;
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
ngOnChanges({ list }) {
|
|
61
|
+
this.subscribeToQuery();
|
|
62
|
+
if (!list.firstChange)
|
|
63
|
+
return;
|
|
64
|
+
const { maxResultCount, page } = list.currentValue;
|
|
65
|
+
this.table.limit = maxResultCount;
|
|
66
|
+
this.table.offset = page;
|
|
67
|
+
}
|
|
68
|
+
ngOnDestroy() {
|
|
69
|
+
this.subscription.unsubscribe();
|
|
70
|
+
this.querySubscription.unsubscribe();
|
|
71
|
+
}
|
|
72
|
+
ngOnInit() {
|
|
73
|
+
this.subscribeToPage();
|
|
74
|
+
this.subscribeToSort();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
NgxDatatableListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableListDirective, deps: [{ token: i1.DatatableComponent }, { token: i0.ChangeDetectorRef }, { token: i2.LocalizationService }, { token: NGX_DATATABLE_MESSAGES, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
78
|
+
NgxDatatableListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: NgxDatatableListDirective, selector: "ngx-datatable[list]", inputs: { list: "list" }, exportAs: ["ngxDatatableList"], usesOnChanges: true, ngImport: i0 });
|
|
79
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableListDirective, decorators: [{
|
|
80
|
+
type: Directive,
|
|
81
|
+
args: [{
|
|
82
|
+
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
83
|
+
selector: 'ngx-datatable[list]',
|
|
84
|
+
exportAs: 'ngxDatatableList',
|
|
85
|
+
}]
|
|
86
|
+
}], ctorParameters: function () { return [{ type: i1.DatatableComponent }, { type: i0.ChangeDetectorRef }, { type: i2.LocalizationService }, { type: undefined, decorators: [{
|
|
87
|
+
type: Optional
|
|
88
|
+
}, {
|
|
89
|
+
type: Inject,
|
|
90
|
+
args: [NGX_DATATABLE_MESSAGES]
|
|
91
|
+
}] }]; }, propDecorators: { list: [{
|
|
92
|
+
type: Input
|
|
93
|
+
}] } });
|
|
94
94
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWRhdGF0YWJsZS1saXN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLXNoYXJlZC9zcmMvbGliL2RpcmVjdGl2ZXMvbmd4LWRhdGF0YWJsZS1saXN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hFLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBSUwsUUFBUSxHQUVULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUNMLDJCQUEyQixFQUUzQixzQkFBc0IsR0FDdkIsTUFBTSx3Q0FBd0MsQ0FBQzs7OztBQU9oRCxNQUFNLE9BQU8seUJBQXlCO0lBTXBDLFlBQ1UsS0FBeUIsRUFDekIsS0FBd0IsRUFDeEIsbUJBQXdDLEVBQ0ksb0JBQTBDO1FBSHRGLFVBQUssR0FBTCxLQUFLLENBQW9CO1FBQ3pCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBQ3hCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDSSx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBVHhGLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNsQyxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBVTdDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztR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Q0FBQztJQUMzQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDOzt1SEEvRVUseUJBQXlCLHdIQVVkLHNCQUFzQjsyR0FWakMseUJBQXlCOzRGQUF6Qix5QkFBeUI7a0JBTHJDLFNBQVM7bUJBQUM7b0JBQ1QsOERBQThEO29CQUM5RCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUUsa0JBQWtCO2lCQUM3Qjs7MEJBV0ksUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxzQkFBc0I7NENBTm5DLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExpc3RTZXJ2aWNlLCBMb2NhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERhdGF0YWJsZUNvbXBvbmVudCB9IGZyb20gJ0Bzd2ltbGFuZS9uZ3gtZGF0YXRhYmxlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgZGVmYXVsdE5neERhdGF0YWJsZU1lc3NhZ2VzLFxuICBOZ3hEYXRhdGFibGVNZXNzYWdlcyxcbiAgTkdYX0RBVEFUQUJMRV9NRVNTQUdFUyxcbn0gZnJvbSAnLi4vdG9rZW5zL25neC1kYXRhdGFibGUtbWVzc2FnZXMudG9rZW4nO1xuXG5ARGlyZWN0aXZlKHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICduZ3gtZGF0YXRhYmxlW2xpc3RdJyxcbiAgZXhwb3J0QXM6ICduZ3hEYXRhdGFibGVMaXN0Jyxcbn0pXG5leHBvcnQgY2xhc3MgTmd4RGF0YXRhYmxlTGlzdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQge1xuICBwcml2YXRlIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgcHJpdmF0ZSBxdWVyeVN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBASW5wdXQoKSBsaXN0ITogTGlzdFNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0YWJsZTogRGF0YXRhYmxlQ29tcG9uZW50LFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgbG9jYWxpemF0aW9uU2VydmljZTogTG9jYWxpemF0aW9uU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5HWF9EQVRBVEFCTEVfTUVTU0FHRVMpIHByaXZhdGUgbmd4RGF0YXRhYmxlTWVzc2FnZXM6IE5neERhdGF0YWJsZU1lc3NhZ2VzLFxuICApIHtcbiAgICB0aGlzLnNldEluaXRpYWxWYWx1ZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0SW5pdGlhbFZhbHVlcygpIHtcbiAgICB0aGlzLnRhYmxlLmV4dGVybmFsUGFnaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnRhYmxlLmV4dGVybmFsU29ydGluZyA9IHRydWU7XG5cbiAgICBjb25zdCB7IGVtcHR5TWVzc2FnZSwgc2VsZWN0ZWRNZXNzYWdlLCB0b3RhbE1lc3NhZ2UgfSA9XG4gICAgICB0aGlzLm5neERhdGF0YWJsZU1lc3NhZ2VzIHx8IGRlZmF1bHROZ3hEYXRhdGFibGVNZXNzYWdlcztcblxuICAgIHRoaXMudGFibGUubWVzc2FnZXMgPSB7XG4gICAgICBlbXB0eU1lc3NhZ2U6IHRoaXMubG9jYWxpemF0aW9uU2VydmljZS5pbnN0YW50KGVtcHR5TWVzc2FnZSksXG4gICAgICB0b3RhbE1lc3NhZ2U6IHRoaXMubG9jYWxpemF0aW9uU2VydmljZS5pbnN0YW50KHRvdGFsTWVzc2FnZSksXG4gICAgICBzZWxlY3RlZE1lc3NhZ2U6IHRoaXMubG9jYWxpemF0aW9uU2VydmljZS5pbnN0YW50KHNlbGVjdGVkTWVzc2FnZSksXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgc3Vic2NyaWJlVG9QYWdlKCkge1xuICAgIGNvbnN0IHN1YiA9IHRoaXMudGFibGUucGFnZS5zdWJzY3JpYmUoKHsgb2Zmc2V0IH0pID0+IHtcbiAgICAgIHRoaXMubGlzdC5wYWdlID0gb2Zmc2V0O1xuICAgICAgdGhpcy50YWJsZS5vZmZzZXQgPSBvZmZzZXQ7XG4gICAgfSk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKHN1Yik7XG4gIH1cblxuICBwcml2YXRlIHN1YnNjcmliZVRvU29ydCgpIHtcbiAgICBjb25zdCBzdWIgPSB0aGlzLnRhYmxlLnNvcnQuc3Vic2NyaWJlKCh7IHNvcnRzOiBbeyBwcm9wLCBkaXIgfV0gfSkgPT4ge1xuICAgICAgaWYgKHByb3AgPT09IHRoaXMubGlzdC5zb3J0S2V5ICYmIHRoaXMubGlzdC5zb3J0T3JkZXIgPT09ICdkZXNjJykge1xuICAgICAgICB0aGlzLmxpc3Quc29ydEtleSA9ICcnO1xuICAgICAgICB0aGlzLmxpc3Quc29ydE9yZGVyID0gJyc7XG4gICAgICAgIHRoaXMudGFibGUuc29ydHMgPSBbXTtcbiAgICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmxpc3Quc29ydEtleSA9IHByb3A7XG4gICAgICAgIHRoaXMubGlzdC5zb3J0T3JkZXIgPSBkaXI7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKHN1Yik7XG4gIH1cblxuICBwcml2YXRlIHN1YnNjcmliZVRvUXVlcnkoKSB7XG4gICAgaWYgKCF0aGlzLnF1ZXJ5U3Vic2NyaXB0aW9uLmNsb3NlZCkgdGhpcy5xdWVyeVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuXG4gICAgdGhpcy5xdWVyeVN1YnNjcmlwdGlvbiA9IHRoaXMubGlzdC5xdWVyeSQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGNvbnN0IG9mZnNldCA9IHRoaXMubGlzdC5wYWdlO1xuICAgICAgaWYgKHRoaXMudGFibGUub2Zmc2V0ICE9PSBvZmZzZXQpIHRoaXMudGFibGUub2Zmc2V0ID0gb2Zmc2V0O1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoeyBsaXN0IH06IFNpbXBsZUNoYW5nZXMpIHtcbiAgICB0aGlzLnN1YnNjcmliZVRvUXVlcnkoKTtcblxuICAgIGlmICghbGlzdC5maXJzdENoYW5nZSkgcmV0dXJuO1xuXG4gICAgY29uc3QgeyBtYXhSZXN1bHRDb3VudCwgcGFnZSB9ID0gbGlzdC5jdXJyZW50VmFsdWU7XG4gICAgdGhpcy50YWJsZS5saW1pdCA9IG1heFJlc3VsdENvdW50O1xuICAgIHRoaXMudGFibGUub2Zmc2V0ID0gcGFnZTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5xdWVyeVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zdWJzY3JpYmVUb1BhZ2UoKTtcbiAgICB0aGlzLnN1YnNjcmliZVRvU29ydCgpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './route-names';
|
|
1
|
+
export * from './route-names';
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9lbnVtcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcm91dGUtbmFtZXMnO1xuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9lbnVtcy9yb3V0ZS1uYW1lcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVudW0gZVRoZW1lU2hhcmVkUm91dGVOYW1lcyB7XG4gIEFkbWluaXN0cmF0aW9uID0gJ0FicFVpTmF2aWdhdGlvbjo6TWVudTpBZG1pbmlzdHJhdGlvbicsXG59XG4iXX0=
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
import { getLocaleDirection, LocalizationService } from '@abp/ng.core';
|
|
2
|
-
import { Injectable, Injector } from '@angular/core';
|
|
3
|
-
import { BehaviorSubject } from 'rxjs';
|
|
4
|
-
import { map, startWith } from 'rxjs/operators';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class DocumentDirHandlerService {
|
|
7
|
-
constructor(injector) {
|
|
8
|
-
this.injector = injector;
|
|
9
|
-
this.dir = new BehaviorSubject('ltr');
|
|
10
|
-
this.dir$ = this.dir.asObservable();
|
|
11
|
-
this.listenToLanguageChanges();
|
|
12
|
-
}
|
|
13
|
-
listenToLanguageChanges() {
|
|
14
|
-
const l10n = this.injector.get(LocalizationService);
|
|
15
|
-
// will always listen, no need to unsubscribe
|
|
16
|
-
l10n.languageChange$
|
|
17
|
-
.pipe(startWith(l10n.currentLang), map(locale => getLocaleDirection(locale)))
|
|
18
|
-
.subscribe(dir => {
|
|
19
|
-
this.dir.next(dir);
|
|
20
|
-
this.setBodyDir(dir);
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
setBodyDir(dir) {
|
|
24
|
-
document.body.dir = dir;
|
|
25
|
-
document.dir = dir;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
DocumentDirHandlerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DocumentDirHandlerService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
29
|
-
DocumentDirHandlerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DocumentDirHandlerService });
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DocumentDirHandlerService, decorators: [{
|
|
31
|
-
type: Injectable
|
|
32
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
1
|
+
import { getLocaleDirection, LocalizationService } from '@abp/ng.core';
|
|
2
|
+
import { Injectable, Injector } from '@angular/core';
|
|
3
|
+
import { BehaviorSubject } from 'rxjs';
|
|
4
|
+
import { map, startWith } from 'rxjs/operators';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class DocumentDirHandlerService {
|
|
7
|
+
constructor(injector) {
|
|
8
|
+
this.injector = injector;
|
|
9
|
+
this.dir = new BehaviorSubject('ltr');
|
|
10
|
+
this.dir$ = this.dir.asObservable();
|
|
11
|
+
this.listenToLanguageChanges();
|
|
12
|
+
}
|
|
13
|
+
listenToLanguageChanges() {
|
|
14
|
+
const l10n = this.injector.get(LocalizationService);
|
|
15
|
+
// will always listen, no need to unsubscribe
|
|
16
|
+
l10n.languageChange$
|
|
17
|
+
.pipe(startWith(l10n.currentLang), map(locale => getLocaleDirection(locale)))
|
|
18
|
+
.subscribe(dir => {
|
|
19
|
+
this.dir.next(dir);
|
|
20
|
+
this.setBodyDir(dir);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
setBodyDir(dir) {
|
|
24
|
+
document.body.dir = dir;
|
|
25
|
+
document.dir = dir;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
DocumentDirHandlerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DocumentDirHandlerService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
29
|
+
DocumentDirHandlerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DocumentDirHandlerService });
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DocumentDirHandlerService, decorators: [{
|
|
31
|
+
type: Injectable
|
|
32
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
33
33
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtZGlyLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9oYW5kbGVycy9kb2N1bWVudC1kaXIuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUloRCxNQUFNLE9BQU8seUJBQXlCO0lBR3BDLFlBQXNCLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFGaEMsUUFBRyxHQUFHLElBQUksZUFBZSxDQUFrQixLQUFLLENBQUMsQ0FBQztRQUMxRCxTQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUU3QixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU8sdUJBQXVCO1FBQzdCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFcEQsNkNBQTZDO1FBQzdDLElBQUksQ0FBQyxlQUFlO2FBQ2pCLElBQUksQ0FDSCxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUMzQixHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUMxQzthQUNBLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNmLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sVUFBVSxDQUFDLEdBQW9CO1FBQ3JDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUN4QixRQUFRLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztJQUNyQixDQUFDOzt1SEF6QlUseUJBQXlCOzJIQUF6Qix5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldExvY2FsZURpcmVjdGlvbiwgTG9jYWxpemF0aW9uU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IExvY2FsZURpcmVjdGlvbiB9IGZyb20gJy4uL21vZGVscy9jb21tb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRG9jdW1lbnREaXJIYW5kbGVyU2VydmljZSB7XG4gIHByaXZhdGUgZGlyID0gbmV3IEJlaGF2aW9yU3ViamVjdDxMb2NhbGVEaXJlY3Rpb24+KCdsdHInKTtcbiAgZGlyJCA9IHRoaXMuZGlyLmFzT2JzZXJ2YWJsZSgpO1xuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgdGhpcy5saXN0ZW5Ub0xhbmd1YWdlQ2hhbmdlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Ub0xhbmd1YWdlQ2hhbmdlcygpIHtcbiAgICBjb25zdCBsMTBuID0gdGhpcy5pbmplY3Rvci5nZXQoTG9jYWxpemF0aW9uU2VydmljZSk7XG5cbiAgICAvLyB3aWxsIGFsd2F5cyBsaXN0ZW4sIG5vIG5lZWQgdG8gdW5zdWJzY3JpYmVcbiAgICBsMTBuLmxhbmd1YWdlQ2hhbmdlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChsMTBuLmN1cnJlbnRMYW5nKSxcbiAgICAgICAgbWFwKGxvY2FsZSA9PiBnZXRMb2NhbGVEaXJlY3Rpb24obG9jYWxlKSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGRpciA9PiB7XG4gICAgICAgIHRoaXMuZGlyLm5leHQoZGlyKTtcbiAgICAgICAgdGhpcy5zZXRCb2R5RGlyKGRpcik7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Qm9keURpcihkaXI6IExvY2FsZURpcmVjdGlvbikge1xuICAgIGRvY3VtZW50LmJvZHkuZGlyID0gZGlyO1xuICAgIGRvY3VtZW50LmRpciA9IGRpcjtcbiAgfVxufVxuIl19
|