@sd-angular/core 1.3.92 → 1.3.94
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/bundles/sd-angular-core-grid-material.umd.js +424 -362
- package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
- package/bundles/sd-angular-core-grid-material.umd.min.js +2 -2
- package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
- package/esm2015/grid-material/sd-angular-core-grid-material.js +6 -6
- package/esm2015/grid-material/src/lib/components/grid-filter/grid-filter.component.js +67 -136
- package/esm2015/grid-material/src/lib/components/popup-filter/popup-filter.component.js +58 -23
- package/esm2015/grid-material/src/lib/grid-material.component.js +76 -65
- package/esm2015/grid-material/src/lib/grid-material.module.js +2 -2
- package/esm2015/grid-material/src/lib/models/grid-export.model.js +1 -1
- package/esm2015/grid-material/src/lib/models/grid-option.model.js +1 -1
- package/esm2015/grid-material/src/lib/pipes/filter-external.pipe.js +1 -1
- package/esm2015/grid-material/src/lib/services/grid-filter/grid-filter.model.js +3 -0
- package/esm2015/grid-material/src/lib/services/grid-filter/grid-filter.service.js +166 -0
- package/esm2015/grid-material/src/public-api.js +1 -1
- package/fesm2015/sd-angular-core-grid-material.js +381 -304
- package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
- package/grid-material/sd-angular-core-grid-material.d.ts +5 -5
- package/grid-material/sd-angular-core-grid-material.metadata.json +1 -1
- package/grid-material/src/lib/components/grid-filter/grid-filter.component.d.ts +5 -25
- package/grid-material/src/lib/components/popup-filter/popup-filter.component.d.ts +7 -31
- package/grid-material/src/lib/grid-material.component.d.ts +6 -6
- package/grid-material/src/lib/models/grid-export.model.d.ts +1 -1
- package/grid-material/src/lib/models/grid-option.model.d.ts +1 -1
- package/grid-material/src/lib/pipes/filter-external.pipe.d.ts +1 -1
- package/grid-material/src/lib/{models → services/grid-filter}/grid-filter.model.d.ts +14 -9
- package/grid-material/src/lib/services/grid-filter/grid-filter.service.d.ts +16 -0
- package/grid-material/src/public-api.d.ts +1 -1
- package/package.json +1 -1
- package/{sd-angular-core-1.3.92.tgz → sd-angular-core-1.3.94.tgz} +0 -0
- package/esm2015/grid-material/src/lib/models/grid-filter.model.js +0 -3
- package/esm2015/grid-material/src/lib/services/grid-filter.service.js +0 -65
- package/grid-material/src/lib/services/grid-filter.service.d.ts +0 -9
|
@@ -11,12 +11,12 @@ export { SdDesktopCommand as ɵq } from './src/lib/components/desktop-command/de
|
|
|
11
11
|
export { SdDesktopEditorValidation as ɵn } from './src/lib/components/desktop-editor-validation/desktop-editor-validation.component';
|
|
12
12
|
export { SdDynamicColumn as ɵt } from './src/lib/components/dynamic-column/dynamic-column.component';
|
|
13
13
|
export { SdGridFilter as ɵb } from './src/lib/components/grid-filter/grid-filter.component';
|
|
14
|
-
export { SdPopupExport as
|
|
14
|
+
export { SdPopupExport as ɵd } from './src/lib/components/popup-export/popup-export.component';
|
|
15
15
|
export { SdPopupFilter as ɵc } from './src/lib/components/popup-filter/popup-filter.component';
|
|
16
16
|
export { SdPopupGridConfiguration as ɵs } from './src/lib/components/popup-grid-configuration/popup-grid-configuration.component';
|
|
17
17
|
export { SdGridQuickAction as ɵk } from './src/lib/components/quick-action/quick-action.component';
|
|
18
18
|
export { MatPaginatorIntlCro as ɵa } from './src/lib/grid-material.module';
|
|
19
|
-
export { GRID_MATERIAL_CONFIG as
|
|
19
|
+
export { GRID_MATERIAL_CONFIG as ɵf } from './src/lib/models/grid-configuration.model';
|
|
20
20
|
export { SdCellViewPipe as ɵbp } from './src/lib/pipes/cell-view.pipe';
|
|
21
21
|
export { SdColumnBadgePipe as ɵbf } from './src/lib/pipes/column-badge.pipe';
|
|
22
22
|
export { SdColumnChildrenFilterPipe as ɵw } from './src/lib/pipes/column-children-filter.pipe';
|
|
@@ -24,7 +24,7 @@ export { SdColumnHtmlTemplatePipe as ɵbc } from './src/lib/pipes/column-html-te
|
|
|
24
24
|
export { SdColumnTitlePipe as ɵx } from './src/lib/pipes/column-title.pipe';
|
|
25
25
|
export { SdColumnTooltipPipe as ɵbe } from './src/lib/pipes/column-tooltip.pipe';
|
|
26
26
|
export { SdColumnTransformPipe as ɵbd } from './src/lib/pipes/column-transform.pipe';
|
|
27
|
-
export { SdColumnValuesPipe as
|
|
27
|
+
export { SdColumnValuesPipe as ɵh } from './src/lib/pipes/column-values.pipe';
|
|
28
28
|
export { SdCommandDisablePipe as ɵz } from './src/lib/pipes/command-disable.pipe';
|
|
29
29
|
export { SdCommandFilterPipe as ɵy } from './src/lib/pipes/command-filter.pipe';
|
|
30
30
|
export { SdCommandIconPipe as ɵba } from './src/lib/pipes/command-icon.pipe';
|
|
@@ -42,6 +42,6 @@ export { SdSelectionVisibleSelectAllPipe as ɵbl } from './src/lib/pipes/selecti
|
|
|
42
42
|
export { SdSelectionVisiblePipe as ɵbj } from './src/lib/pipes/selection-visible.pipe';
|
|
43
43
|
export { SdStyleRowCss as ɵbo } from './src/lib/pipes/style-row-css.pipe';
|
|
44
44
|
export { SdGeneratedColumnService as ɵu } from './src/lib/services/generated-column/generated-column.service';
|
|
45
|
-
export { SdGridConfigurationService as
|
|
46
|
-
export { SdGridFilterService as
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
export { SdGridConfigurationService as ɵg } from './src/lib/services/grid-configuration.service';
|
|
46
|
+
export { SdGridFilterService as ɵi } from './src/lib/services/grid-filter/grid-filter.service';
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2QtYW5ndWxhci1jb3JlLWdyaWQtbWF0ZXJpYWwuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2dyaWQtbWF0ZXJpYWwvIiwic291cmNlcyI6WyJzZC1hbmd1bGFyLWNvcmUtZ3JpZC1tYXRlcmlhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDO0FBRXhCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwwRUFBMEUsQ0FBQztBQUNwSCxPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sc0ZBQXNGLENBQUM7QUFDckksT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBQ2pILE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxvRUFBb0UsQ0FBQztBQUMzRyxPQUFPLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzdGLE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxnRUFBZ0UsQ0FBQztBQUN0RyxPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sb0ZBQW9GLENBQUM7QUFDbkksT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQUNuRyxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxhQUFhLElBQUksRUFBRSxFQUFDLE1BQU0sMERBQTBELENBQUM7QUFDN0YsT0FBTyxFQUFDLGFBQWEsSUFBSSxFQUFFLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQUM3RixPQUFPLEVBQUMsd0JBQXdCLElBQUksRUFBRSxFQUFDLE1BQU0sa0ZBQWtGLENBQUM7QUFDaEksT0FBTyxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQ2pHLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RSxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFvQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ3hILE9BQU8sRUFBQyxjQUFjLElBQUksR0FBRyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDckUsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEdBQUcsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzNFLE9BQU8sRUFBQywwQkFBMEIsSUFBSSxFQUFFLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUM3RixPQUFPLEVBQUMsd0JBQXdCLElBQUksR0FBRyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDMUYsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzFFLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxHQUFHLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUMvRSxPQUFPLEVBQUMscUJBQXFCLElBQUksR0FBRyxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDbkYsT0FBTyxFQUFDLGtCQUFrQixJQUFJLEVBQUUsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoRixPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDOUUsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEdBQUcsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxHQUFHLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUM3RSxPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDM0YsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEdBQUcsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ3RGLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxHQUFHLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUNqRixPQUFPLEVBQUMsa0JBQWtCLElBQUksR0FBRyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDN0UsT0FBTyxFQUFDLG9CQUFvQixJQUFJLEdBQUcsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUNuRyxPQUFPLEVBQUMsV0FBVyxJQUFJLEdBQUcsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBQywyQkFBMkIsSUFBSSxHQUFHLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUNoRyxPQUFPLEVBQUMsc0JBQXNCLElBQUksR0FBRyxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDckYsT0FBTyxFQUFDLCtCQUErQixJQUFJLEdBQUcsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxHQUFHLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUNyRixPQUFPLEVBQUMsYUFBYSxJQUFJLEdBQUcsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQUM1RyxPQUFPLEVBQUMsMEJBQTBCLElBQUksRUFBRSxFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDL0YsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLG9EQUFvRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcblxuZXhwb3J0IHtTZENvbHVtbklubGluZUZpbHRlciBhcyDJtXJ9IGZyb20gJy4vc3JjL2xpYi9jb21wb25lbnRzL2NvbHVtbi1pbmxpbmUtZmlsdGVyL2NvbHVtbi1pbmxpbmUtZmlsdGVyLmNvbXBvbmVudCc7XG5leHBvcnQge1NkRGVza3RvcENlbGxDaGlsZHJlblZpZXcgYXMgybVwfSBmcm9tICcuL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wLWNlbGwtY2hpbGRyZW4tdmlldy9kZXNrdG9wLWNlbGwtY2hpbGRyZW4tdmlldy5jb21wb25lbnQnO1xuZXhwb3J0IHtTZERlc2t0b3BDZWxsRWRpdG9yIGFzIMm1bX0gZnJvbSAnLi9zcmMvbGliL2NvbXBvbmVudHMvZGVza3RvcC1jZWxsLWVkaXRvci9kZXNrdG9wLWNlbGwtZWRpdG9yLmNvbXBvbmVudCc7XG5leHBvcnQge1NkRGVza3RvcENlbGxWaWV3IGFzIMm1b30gZnJvbSAnLi9zcmMvbGliL2NvbXBvbmVudHMvZGVza3RvcC1jZWxsLXZpZXcvZGVza3RvcC1jZWxsLXZpZXcuY29tcG9uZW50JztcbmV4cG9ydCB7U2REZXNrdG9wQ2VsbCBhcyDJtWx9IGZyb20gJy4vc3JjL2xpYi9jb21wb25lbnRzL2Rlc2t0b3AtY2VsbC9kZXNrdG9wLWNlbGwuY29tcG9uZW50JztcbmV4cG9ydCB7U2REZXNrdG9wQ29tbWFuZCBhcyDJtXF9IGZyb20gJy4vc3JjL2xpYi9jb21wb25lbnRzL2Rlc2t0b3AtY29tbWFuZC9kZXNrdG9wLWNvbW1hbmQuY29tcG9uZW50JztcbmV4cG9ydCB7U2REZXNrdG9wRWRpdG9yVmFsaWRhdGlvbiBhcyDJtW59IGZyb20gJy4vc3JjL2xpYi9jb21wb25lbnRzL2Rlc2t0b3AtZWRpdG9yLXZhbGlkYXRpb24vZGVza3RvcC1lZGl0b3ItdmFsaWRhdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtTZER5bmFtaWNDb2x1bW4gYXMgybV0fSBmcm9tICcuL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWNvbHVtbi9keW5hbWljLWNvbHVtbi5jb21wb25lbnQnO1xuZXhwb3J0IHtTZEdyaWRGaWx0ZXIgYXMgybVifSBmcm9tICcuL3NyYy9saWIvY29tcG9uZW50cy9ncmlkLWZpbHRlci9ncmlkLWZpbHRlci5jb21wb25lbnQnO1xuZXhwb3J0IHtTZFBvcHVwRXhwb3J0IGFzIMm1ZH0gZnJvbSAnLi9zcmMvbGliL2NvbXBvbmVudHMvcG9wdXAtZXhwb3J0L3BvcHVwLWV4cG9ydC5jb21wb25lbnQnO1xuZXhwb3J0IHtTZFBvcHVwRmlsdGVyIGFzIMm1Y30gZnJvbSAnLi9zcmMvbGliL2NvbXBvbmVudHMvcG9wdXAtZmlsdGVyL3BvcHVwLWZpbHRlci5jb21wb25lbnQnO1xuZXhwb3J0IHtTZFBvcHVwR3JpZENvbmZpZ3VyYXRpb24gYXMgybVzfSBmcm9tICcuL3NyYy9saWIvY29tcG9uZW50cy9wb3B1cC1ncmlkLWNvbmZpZ3VyYXRpb24vcG9wdXAtZ3JpZC1jb25maWd1cmF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQge1NkR3JpZFF1aWNrQWN0aW9uIGFzIMm1a30gZnJvbSAnLi9zcmMvbGliL2NvbXBvbmVudHMvcXVpY2stYWN0aW9uL3F1aWNrLWFjdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtNYXRQYWdpbmF0b3JJbnRsQ3JvIGFzIMm1YX0gZnJvbSAnLi9zcmMvbGliL2dyaWQtbWF0ZXJpYWwubW9kdWxlJztcbmV4cG9ydCB7R1JJRF9NQVRFUklBTF9DT05GSUcgYXMgybVmLElTZEdyaWRNYXRlcmlhbENvbmZpZ3VyYXRpb24gYXMgybVlfSBmcm9tICcuL3NyYy9saWIvbW9kZWxzL2dyaWQtY29uZmlndXJhdGlvbi5tb2RlbCc7XG5leHBvcnQge1NkQ2VsbFZpZXdQaXBlIGFzIMm1YnB9IGZyb20gJy4vc3JjL2xpYi9waXBlcy9jZWxsLXZpZXcucGlwZSc7XG5leHBvcnQge1NkQ29sdW1uQmFkZ2VQaXBlIGFzIMm1YmZ9IGZyb20gJy4vc3JjL2xpYi9waXBlcy9jb2x1bW4tYmFkZ2UucGlwZSc7XG5leHBvcnQge1NkQ29sdW1uQ2hpbGRyZW5GaWx0ZXJQaXBlIGFzIMm1d30gZnJvbSAnLi9zcmMvbGliL3BpcGVzL2NvbHVtbi1jaGlsZHJlbi1maWx0ZXIucGlwZSc7XG5leHBvcnQge1NkQ29sdW1uSHRtbFRlbXBsYXRlUGlwZSBhcyDJtWJjfSBmcm9tICcuL3NyYy9saWIvcGlwZXMvY29sdW1uLWh0bWwtdGVtcGxhdGUucGlwZSc7XG5leHBvcnQge1NkQ29sdW1uVGl0bGVQaXBlIGFzIMm1eH0gZnJvbSAnLi9zcmMvbGliL3BpcGVzL2NvbHVtbi10aXRsZS5waXBlJztcbmV4cG9ydCB7U2RDb2x1bW5Ub29sdGlwUGlwZSBhcyDJtWJlfSBmcm9tICcuL3NyYy9saWIvcGlwZXMvY29sdW1uLXRvb2x0aXAucGlwZSc7XG5leHBvcnQge1NkQ29sdW1uVHJhbnNmb3JtUGlwZSBhcyDJtWJkfSBmcm9tICcuL3NyYy9saWIvcGlwZXMvY29sdW1uLXRyYW5zZm9ybS5waXBlJztcbmV4cG9ydCB7U2RDb2x1bW5WYWx1ZXNQaXBlIGFzIMm1aH0gZnJvbSAnLi9zcmMvbGliL3BpcGVzL2NvbHVtbi12YWx1ZXMucGlwZSc7XG5leHBvcnQge1NkQ29tbWFuZERpc2FibGVQaXBlIGFzIMm1en0gZnJvbSAnLi9zcmMvbGliL3BpcGVzL2NvbW1hbmQtZGlzYWJsZS5waXBlJztcbmV4cG9ydCB7U2RDb21tYW5kRmlsdGVyUGlwZSBhcyDJtXl9IGZyb20gJy4vc3JjL2xpYi9waXBlcy9jb21tYW5kLWZpbHRlci5waXBlJztcbmV4cG9ydCB7U2RDb21tYW5kSWNvblBpcGUgYXMgybViYX0gZnJvbSAnLi9zcmMvbGliL3BpcGVzL2NvbW1hbmQtaWNvbi5waXBlJztcbmV4cG9ydCB7U2RDb21tYW5kVGl0bGVQaXBlIGFzIMm1YmJ9IGZyb20gJy4vc3JjL2xpYi9waXBlcy9jb21tYW5kLXRpdGxlLnBpcGUnO1xuZXhwb3J0IHtTZEVkaXRvckhhbmRsZXJDb2x1bW5QaXBlIGFzIMm1an0gZnJvbSAnLi9zcmMvbGliL3BpcGVzL2VkaXRvci1oYW5kbGVyLWNvbHVtbi5waXBlJztcbmV4cG9ydCB7U2RFZGl0b3JIYW5kbGVyUm93UGlwZSBhcyDJtWJtfSBmcm9tICcuL3NyYy9saWIvcGlwZXMvZWRpdG9yLWhhbmRsZXItcm93LnBpcGUnO1xuZXhwb3J0IHtTZEVkaXRvclZhbGlkYXRlUGlwZSBhcyDJtWJufSBmcm9tICcuL3NyYy9saWIvcGlwZXMvZWRpdG9yLXZhbGlkYXRlLnBpcGUnO1xuZXhwb3J0IHtTZEZpbHRlckNvbHVtblBpcGUgYXMgybViZ30gZnJvbSAnLi9zcmMvbGliL3BpcGVzL2ZpbHRlci1jb2x1bW4ucGlwZSc7XG5leHBvcnQge1NkRmlsdGVyRXh0ZXJuYWxQaXBlIGFzIMm1Ymh9IGZyb20gJy4vc3JjL2xpYi9waXBlcy9maWx0ZXItZXh0ZXJuYWwucGlwZSc7XG5leHBvcnQge1NkR3JpZENvbmZpZ3VyYXRpb25SZXN1bHRQaXBlIGFzIMm1dn0gZnJvbSAnLi9zcmMvbGliL3BpcGVzL2dyaWQtY29uZmlndXJhdGlvbi1yZXN1bHQucGlwZSc7XG5leHBvcnQge1NkR3JvdXBQaXBlIGFzIMm1YnF9IGZyb20gJy4vc3JjL2xpYi9waXBlcy9zZC1ncm91cC5waXBlJztcbmV4cG9ydCB7U2RTZWxlY3Rpb25BY3Rpb25GaWx0ZXJQaXBlIGFzIMm1Yml9IGZyb20gJy4vc3JjL2xpYi9waXBlcy9zZWxlY3Rpb24tYWN0aW9uLWZpbHRlci5waXBlJztcbmV4cG9ydCB7U2RTZWxlY3Rpb25EaXNhYmxlUGlwZSBhcyDJtWJrfSBmcm9tICcuL3NyYy9saWIvcGlwZXMvc2VsZWN0aW9uLWRpc2FibGUucGlwZSc7XG5leHBvcnQge1NkU2VsZWN0aW9uVmlzaWJsZVNlbGVjdEFsbFBpcGUgYXMgybVibH0gZnJvbSAnLi9zcmMvbGliL3BpcGVzL3NlbGVjdGlvbi12aXNpYmxlLXNlbGVjdC1hbGwucGlwZSc7XG5leHBvcnQge1NkU2VsZWN0aW9uVmlzaWJsZVBpcGUgYXMgybVian0gZnJvbSAnLi9zcmMvbGliL3BpcGVzL3NlbGVjdGlvbi12aXNpYmxlLnBpcGUnO1xuZXhwb3J0IHtTZFN0eWxlUm93Q3NzIGFzIMm1Ym99IGZyb20gJy4vc3JjL2xpYi9waXBlcy9zdHlsZS1yb3ctY3NzLnBpcGUnO1xuZXhwb3J0IHtTZEdlbmVyYXRlZENvbHVtblNlcnZpY2UgYXMgybV1fSBmcm9tICcuL3NyYy9saWIvc2VydmljZXMvZ2VuZXJhdGVkLWNvbHVtbi9nZW5lcmF0ZWQtY29sdW1uLnNlcnZpY2UnO1xuZXhwb3J0IHtTZEdyaWRDb25maWd1cmF0aW9uU2VydmljZSBhcyDJtWd9IGZyb20gJy4vc3JjL2xpYi9zZXJ2aWNlcy9ncmlkLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XG5leHBvcnQge1NkR3JpZEZpbHRlclNlcnZpY2UgYXMgybVpfSBmcm9tICcuL3NyYy9saWIvc2VydmljZXMvZ3JpZC1maWx0ZXIvZ3JpZC1maWx0ZXIuc2VydmljZSc7Il19
|
|
@@ -1,20 +1,17 @@
|
|
|
1
|
-
var _filterOptionChanges, _subscription
|
|
1
|
+
var _filterOptionChanges, _subscription;
|
|
2
2
|
import { __classPrivateFieldGet } from "tslib";
|
|
3
3
|
import { Component, Input, ViewChild, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
|
|
4
4
|
import { SdPopupFilter } from '../popup-filter/popup-filter.component';
|
|
5
5
|
import { BehaviorSubject, Subject, Subscription } from 'rxjs';
|
|
6
|
-
import { startWith } from 'rxjs/operators';
|
|
7
|
-
import { SdGridFilterService } from '../../services/grid-filter.service';
|
|
8
6
|
import { DeviceDetectorService } from 'ngx-device-detector';
|
|
9
7
|
export class SdGridFilter {
|
|
10
|
-
constructor(ref, deviceService
|
|
8
|
+
constructor(ref, deviceService) {
|
|
11
9
|
this.ref = ref;
|
|
12
10
|
this.deviceService = deviceService;
|
|
13
|
-
this.gridFilterService = gridFilterService;
|
|
14
11
|
_filterOptionChanges.set(this, new Subject());
|
|
15
12
|
this.columns = [];
|
|
16
13
|
this.filterDefs = [];
|
|
17
|
-
this.
|
|
14
|
+
this.filterRegisterChange = new BehaviorSubject(null);
|
|
18
15
|
this.filterDef = {};
|
|
19
16
|
this.inlineFilterDef = {};
|
|
20
17
|
this.columnFilter = {};
|
|
@@ -23,124 +20,19 @@ export class SdGridFilter {
|
|
|
23
20
|
this.externalFilter = {};
|
|
24
21
|
this.inlineExternal = {};
|
|
25
22
|
_subscription.set(this, new Subscription());
|
|
26
|
-
_loadDefault.set(this, () => {
|
|
27
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
28
|
-
for (const column of this.columns) {
|
|
29
|
-
this.inlineColumn[column.field] = (_a = this.inlineColumn[column.field]) !== null && _a !== void 0 ? _a : (_b = column === null || column === void 0 ? void 0 : column.filter) === null || _b === void 0 ? void 0 : _b.defaultShowing;
|
|
30
|
-
this.columnFilter[column.field] = (_c = this.columnFilter[column.field]) !== null && _c !== void 0 ? _c : (_d = column === null || column === void 0 ? void 0 : column.filter) === null || _d === void 0 ? void 0 : _d.default;
|
|
31
|
-
}
|
|
32
|
-
for (const externalFilter of this.externalFilters) {
|
|
33
|
-
this.inlineExternal[externalFilter.field] = (_e = this.inlineExternal[externalFilter.field]) !== null && _e !== void 0 ? _e : externalFilter === null || externalFilter === void 0 ? void 0 : externalFilter.defaultShowing;
|
|
34
|
-
if (externalFilter.type === 'daterange') {
|
|
35
|
-
this.externalFilter[externalFilter.field] = {
|
|
36
|
-
from: (_j = (_g = (_f = this.externalFilter[externalFilter.field]) === null || _f === void 0 ? void 0 : _f.from) !== null && _g !== void 0 ? _g : (_h = externalFilter.default) === null || _h === void 0 ? void 0 : _h.from) !== null && _j !== void 0 ? _j : undefined,
|
|
37
|
-
to: (_o = (_l = (_k = this.externalFilter[externalFilter.field]) === null || _k === void 0 ? void 0 : _k.to) !== null && _l !== void 0 ? _l : (_m = externalFilter.default) === null || _m === void 0 ? void 0 : _m.to) !== null && _o !== void 0 ? _o : undefined
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
this.externalFilter[externalFilter.field] = (_p = this.externalFilter[externalFilter.field]) !== null && _p !== void 0 ? _p : externalFilter.default;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
for (const filterDef of this.filterDefs) {
|
|
45
|
-
this.inlineFilterDef[filterDef.sdMaterialFilterDef] = (_q = this.inlineFilterDef[filterDef.sdMaterialFilterDef]) !== null && _q !== void 0 ? _q : filterDef === null || filterDef === void 0 ? void 0 : filterDef.defaultShowing;
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
_clearFilter.set(this, () => {
|
|
49
|
-
this.columnFilter = {};
|
|
50
|
-
this.externalFilter = {};
|
|
51
|
-
this.filterDef = {};
|
|
52
|
-
for (const externalFilter of this.externalFilters) {
|
|
53
|
-
if (externalFilter.type === 'daterange') {
|
|
54
|
-
this.externalFilter[externalFilter.field] = {
|
|
55
|
-
from: undefined,
|
|
56
|
-
to: undefined
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
this.ref.markForCheck();
|
|
61
|
-
});
|
|
62
23
|
this.onFilter = (item) => {
|
|
63
|
-
this.
|
|
64
|
-
};
|
|
65
|
-
this.open = () => {
|
|
66
|
-
this.popupFilter.open({
|
|
24
|
+
this.filterRegister.set({
|
|
67
25
|
columnFilter: this.columnFilter,
|
|
68
26
|
externalFilter: this.externalFilter,
|
|
69
|
-
filterDef: this.filterDef
|
|
70
|
-
inlineColumn: this.inlineColumn,
|
|
71
|
-
inlineExternal: this.inlineExternal,
|
|
72
|
-
inlineFilterDef: this.inlineFilterDef
|
|
27
|
+
filterDef: this.filterDef
|
|
73
28
|
});
|
|
29
|
+
// this.filterChange.next(true);
|
|
74
30
|
};
|
|
75
|
-
this.
|
|
76
|
-
|
|
77
|
-
const { inlineColumn, columnFilter, inlineExternal, externalFilter, inlineFilterDef, filterDef } = args;
|
|
78
|
-
this.inlineColumn = inlineColumn;
|
|
79
|
-
this.columnFilter = columnFilter;
|
|
80
|
-
this.inlineExternal = inlineExternal;
|
|
81
|
-
this.externalFilter = externalFilter;
|
|
82
|
-
this.inlineFilterDef = inlineFilterDef;
|
|
83
|
-
this.filterDef = filterDef;
|
|
84
|
-
this.gridFilterService.set((_a = this.filter) === null || _a === void 0 ? void 0 : _a.key, {
|
|
85
|
-
inlineColumn,
|
|
86
|
-
inlineExternal,
|
|
87
|
-
quickFilters: [],
|
|
88
|
-
inlineFilterDef,
|
|
89
|
-
selectedQuickFilter: null
|
|
90
|
-
});
|
|
91
|
-
this.filterChange.next(true);
|
|
31
|
+
this.open = () => {
|
|
32
|
+
this.popupFilter.open();
|
|
92
33
|
};
|
|
93
34
|
this.onReset = () => {
|
|
94
|
-
|
|
95
|
-
this.inlineColumn = {};
|
|
96
|
-
this.columnFilter = {};
|
|
97
|
-
this.inlineExternal = {};
|
|
98
|
-
this.externalFilter = {};
|
|
99
|
-
this.inlineFilterDef = {};
|
|
100
|
-
this.filterDef = {};
|
|
101
|
-
__classPrivateFieldGet(this, _loadDefault).call(this);
|
|
102
|
-
this.gridFilterService.set((_a = this.filter) === null || _a === void 0 ? void 0 : _a.key, {
|
|
103
|
-
inlineColumn: this.inlineColumn,
|
|
104
|
-
inlineExternal: this.columnFilter,
|
|
105
|
-
inlineFilterDef: this.inlineFilterDef,
|
|
106
|
-
quickFilters: [],
|
|
107
|
-
selectedQuickFilter: null
|
|
108
|
-
});
|
|
109
|
-
this.filterChange.next(true);
|
|
110
|
-
this.ref.markForCheck();
|
|
111
|
-
};
|
|
112
|
-
this.onClearFilter = () => {
|
|
113
|
-
var _a;
|
|
114
|
-
__classPrivateFieldGet(this, _clearFilter).call(this);
|
|
115
|
-
this.gridFilterService.set((_a = this.filter) === null || _a === void 0 ? void 0 : _a.key, {
|
|
116
|
-
inlineColumn: this.inlineColumn,
|
|
117
|
-
inlineExternal: this.columnFilter,
|
|
118
|
-
inlineFilterDef: this.inlineFilterDef,
|
|
119
|
-
quickFilters: [],
|
|
120
|
-
selectedQuickFilter: null
|
|
121
|
-
});
|
|
122
|
-
this.filterChange.next(true);
|
|
123
|
-
};
|
|
124
|
-
this.setFilter = (args) => {
|
|
125
|
-
var _a, _b, _c, _d;
|
|
126
|
-
const { columnFilter, externalFilter, filterDef } = args;
|
|
127
|
-
if (columnFilter) {
|
|
128
|
-
this.columnFilter = columnFilter;
|
|
129
|
-
}
|
|
130
|
-
if (externalFilter) {
|
|
131
|
-
this.externalFilter = externalFilter;
|
|
132
|
-
}
|
|
133
|
-
if (filterDef) {
|
|
134
|
-
this.filterDef = filterDef;
|
|
135
|
-
}
|
|
136
|
-
for (const exFilter of this.externalFilters) {
|
|
137
|
-
if (exFilter.type === 'daterange') {
|
|
138
|
-
this.externalFilter[exFilter.field] = {
|
|
139
|
-
from: (_b = (_a = this.externalFilter[exFilter.field]) === null || _a === void 0 ? void 0 : _a.from) !== null && _b !== void 0 ? _b : undefined,
|
|
140
|
-
to: (_d = (_c = this.externalFilter[exFilter.field]) === null || _c === void 0 ? void 0 : _c.to) !== null && _d !== void 0 ? _d : undefined
|
|
141
|
-
};
|
|
142
|
-
}
|
|
143
|
-
}
|
|
35
|
+
this.filterRegister.remove();
|
|
144
36
|
this.ref.markForCheck();
|
|
145
37
|
};
|
|
146
38
|
this.isMobileOrTablet = !this.deviceService.isDesktop();
|
|
@@ -150,45 +42,84 @@ export class SdGridFilter {
|
|
|
150
42
|
this.filter = filter;
|
|
151
43
|
__classPrivateFieldGet(this, _filterOptionChanges).next(this.filter);
|
|
152
44
|
}
|
|
45
|
+
set _filterRegister(value) {
|
|
46
|
+
this.filterRegister = value;
|
|
47
|
+
this.filterRegisterChange.next(this.filterRegister);
|
|
48
|
+
}
|
|
49
|
+
;
|
|
153
50
|
ngAfterViewInit() {
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
51
|
+
// this.#subscription.add(this.#filterOptionChanges.pipe(startWith(this.filter)).subscribe(() => {
|
|
52
|
+
// if (this.filter?.disabled) {
|
|
53
|
+
// this.filterChange.next(true);
|
|
54
|
+
// return;
|
|
55
|
+
// }
|
|
56
|
+
// this.externalFilters = this.filter?.externalFilters || [];
|
|
57
|
+
// const configuration = this.gridFilterService.get(this.filter?.key);
|
|
58
|
+
// this.inlineColumn = configuration.inlineColumn;
|
|
59
|
+
// this.inlineExternal = configuration.inlineExternal;
|
|
60
|
+
// this.inlineFilterDef = configuration.inlineFilterDef;
|
|
61
|
+
// this.#loadDefault();
|
|
62
|
+
// this.filterChange.next(true);
|
|
63
|
+
// this.ref.markForCheck();
|
|
64
|
+
// }));
|
|
65
|
+
__classPrivateFieldGet(this, _subscription).add(this.filterRegisterChange.subscribe(() => {
|
|
66
|
+
if (this.filterRegister) {
|
|
67
|
+
__classPrivateFieldGet(this, _subscription).add(this.filterRegister.observer.subscribe(configuration => {
|
|
68
|
+
this.inlineColumn = configuration.inlineColumn;
|
|
69
|
+
this.columnFilter = configuration.columnFilter;
|
|
70
|
+
this.inlineExternal = configuration.inlineExternal;
|
|
71
|
+
this.externalFilter = configuration.externalFilter;
|
|
72
|
+
this.inlineFilterDef = configuration.inlineFilterDef;
|
|
73
|
+
this.filterDef = configuration.filterDef;
|
|
74
|
+
}));
|
|
75
|
+
this.ref.markForCheck();
|
|
159
76
|
}
|
|
160
|
-
|
|
161
|
-
const configuration = this.gridFilterService.get((_c = this.filter) === null || _c === void 0 ? void 0 : _c.key);
|
|
162
|
-
this.inlineColumn = configuration.inlineColumn;
|
|
163
|
-
this.inlineExternal = configuration.inlineExternal;
|
|
164
|
-
this.inlineFilterDef = configuration.inlineFilterDef;
|
|
165
|
-
__classPrivateFieldGet(this, _loadDefault).call(this);
|
|
166
|
-
this.filterChange.next(true);
|
|
167
|
-
this.ref.markForCheck();
|
|
77
|
+
;
|
|
168
78
|
}));
|
|
169
79
|
}
|
|
80
|
+
// #loadDefault = () => {
|
|
81
|
+
// for (const column of this.columns) {
|
|
82
|
+
// this.inlineColumn[column.field] = this.inlineColumn[column.field] ?? column?.filter?.defaultShowing;
|
|
83
|
+
// this.columnFilter[column.field] = this.columnFilter[column.field] ?? column?.filter?.default;
|
|
84
|
+
// }
|
|
85
|
+
// for (const externalFilter of this.externalFilters) {
|
|
86
|
+
// this.inlineExternal[externalFilter.field] = this.inlineExternal[externalFilter.field] ?? externalFilter?.defaultShowing;
|
|
87
|
+
// if (externalFilter.type === 'daterange') {
|
|
88
|
+
// this.externalFilter[externalFilter.field] = {
|
|
89
|
+
// from: this.externalFilter[externalFilter.field]?.from ?? externalFilter.default?.from ?? undefined,
|
|
90
|
+
// to: this.externalFilter[externalFilter.field]?.to ?? externalFilter.default?.to ?? undefined
|
|
91
|
+
// };
|
|
92
|
+
// } else {
|
|
93
|
+
// this.externalFilter[externalFilter.field] = this.externalFilter[externalFilter.field] ?? externalFilter.default;
|
|
94
|
+
// }
|
|
95
|
+
// }
|
|
96
|
+
// for (const filterDef of this.filterDefs) {
|
|
97
|
+
// this.inlineFilterDef[filterDef.sdMaterialFilterDef] =
|
|
98
|
+
// this.inlineFilterDef[filterDef.sdMaterialFilterDef] ?? filterDef?.defaultShowing;
|
|
99
|
+
// }
|
|
100
|
+
// }
|
|
170
101
|
ngOnDestroy() {
|
|
171
102
|
__classPrivateFieldGet(this, _subscription).unsubscribe();
|
|
172
103
|
}
|
|
173
104
|
}
|
|
174
|
-
_filterOptionChanges = new WeakMap(), _subscription = new WeakMap()
|
|
105
|
+
_filterOptionChanges = new WeakMap(), _subscription = new WeakMap();
|
|
175
106
|
SdGridFilter.decorators = [
|
|
176
107
|
{ type: Component, args: [{
|
|
177
108
|
selector: 'sd-grid-filter',
|
|
178
|
-
template: "<ng-container *ngIf=\"!filter?.disabled\">\r\n <ng-container *ngIf=\"filter?.enableCollapse;else noCollapse\">\r\n <sd-group class=\"p-12\" [isExpanded]=\"false\" title=\"T\u00ECm ki\u1EBFm\" expandable>\r\n <div sdGroupBody>\r\n <ng-container *ngTemplateOutlet=\"noCollapse\"></ng-container>\r\n </div>\r\n </sd-group>\r\n </ng-container>\r\n <ng-template #noCollapse>\r\n <div\r\n *ngIf=\"!isMobileOrTablet && ((columns?.length && !filter?.inlineColumn) || externalFilters?.length || filterDefs?.length)\"\r\n class=\"row mx-0 pb-10\">\r\n <ng-container *ngIf=\"filter?.sorts?.length\">\r\n <ng-container *ngFor=\"let field of filter?.sorts\">\r\n <ng-container *ngIf=\"columns?.length && !filter?.inlineColumn\">\r\n <ng-container *ngFor=\"let item of columns | sdFilterColumn:field\">\r\n <ng-container *ngTemplateOutlet=\"filterColumn; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"externalFilters?.length\">\r\n <ng-container *ngFor=\"let item of externalFilters | sdFilterExternal:field\">\r\n <ng-container *ngTemplateOutlet=\"filterExternal; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngFor=\"let item of filterDefs\">\r\n <div *ngIf=\"inlineFilterDef[item.sdMaterialFilterDef] && item.sdMaterialFilterDef === field\"\r\n class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <ng-container *ngTemplateOutlet=\"item.templateRef;context:{filterDef:filterDef, isInline: true}\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!filter?.sorts?.length\">\r\n <ng-container *ngIf=\"columns?.length && !filter?.inlineColumn\">\r\n <ng-container *ngFor=\"let item of columns | sdFilterColumn\">\r\n <ng-container *ngTemplateOutlet=\"filterColumn; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"externalFilters?.length\">\r\n <ng-container *ngFor=\"let item of externalFilters | sdFilterExternal\">\r\n <ng-container *ngTemplateOutlet=\"filterExternal; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngFor=\"let item of filterDefs\">\r\n <div *ngIf=\"inlineFilterDef[item.sdMaterialFilterDef]\" class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <ng-container *ngTemplateOutlet=\"item.templateRef;context:{filterDef:filterDef, isInline: true}\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <ng-template #filterColumn let-item=\"item\">\r\n <div *ngIf=\"inlineColumn[item.field]\" class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <sd-input [label]=\"item.title\" *ngIf=\"item.type === 'string'\" type=\"text\" [(model)]=\"columnFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input>\r\n <sd-input-number [label]=\"item.title\" *ngIf=\"item.type === 'number'\" [(model)]=\"columnFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input-number>\r\n <sd-select [label]=\"item.title\" *ngIf=\"item.type === 'bool'\" [items]=\"[{value:'1',display:item.option?.displayOnTrue || 'True' },\r\n {value:'0',display:item.option?.displayOnFalse || 'False' }]\" valueField=\"value\" displayField=\"display\"\r\n [(model)]=\"columnFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-select>\r\n <sd-select *ngIf=\"item.type === 'values' && item?.option?.selection !== 'AUTOCOMPLETE'\"\r\n [items]=\"item.option?.items\" [valueField]=\"item.option?.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"columnFilter[item.field]\" (sdChange)=\"onFilter(item)\" [disabled]=\"item.filter?.disabled\"\r\n [multiple]=\"item?.option?.selection === 'MULTIPLE' || item?.item?.selection === 'MULTIPLEAUTOCOMPLETE'\"\r\n [filtered]=\"item?.option?.selection === 'MULTIPLEAUTOCOMPLETE'\" appearance=\"outline\">\r\n </sd-select>\r\n <sd-autocomplete *ngIf=\"item.type === 'values' && item?.option?.selection === 'AUTOCOMPLETE'\"\r\n [items]=\"item.option?.items\" [valueField]=\"item.option?.valueField\" [displayField]=\"item.option?.displayField\"\r\n [(model)]=\"columnFilter[item.field]\" (sdChange)=\"onFilter(item)\" [disabled]=\"item.filter?.disabled\"\r\n appearance=\"outline\">\r\n </sd-autocomplete>\r\n <sd-date-time *ngIf=\"item.type === 'date' || item.type === 'datetime' || item.type === 'time'\"\r\n [label]=\"item.title\" [(model)]=\"columnFilter[item.field]\" [type]=\"item.type\" (sdChange)=\"onFilter(item)\"\r\n appearance=\"outline\">\r\n </sd-date-time>\r\n </div>\r\n </ng-template>\r\n <ng-template #filterExternal let-item=\"item\">\r\n <div *ngIf=\"inlineExternal[item.field]\" class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <sd-input [label]=\"item.title\" *ngIf=\"item.type === 'string'\" type=\"text\" [(model)]=\"externalFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input>\r\n <sd-input-number [label]=\"item.title\" *ngIf=\"item.type === 'number'\" [(model)]=\"externalFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input-number>\r\n <sd-select [label]=\"item.title\" *ngIf=\"item.type === 'bool'\" [items]=\"[{value:'1',display:item.option?.displayOnTrue || 'True' },\r\n {value:'0',display:item.option?.displayOnFalse || 'False' }]\" valueField=\"value\" displayField=\"display\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-select>\r\n <ng-container *ngIf=\"item.type === 'values' && item.option\">\r\n <sd-select *ngIf=\"item.option?.selection === 'MULTIPLE'\" [label]=\"item.title\" [items]=\"item.option.items\"\r\n [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" [selectAll]=\"item.option.selectAll\"\r\n appearance=\"outline\" multiple>\r\n </sd-select>\r\n <sd-autocomplete *ngIf=\"item.option?.selection === 'AUTOCOMPLETE'\" [label]=\"item.title\"\r\n [items]=\"item.option.items\" [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-autocomplete>\r\n <sd-select *ngIf=\"item.option?.selection === 'MULTIPLEAUTOCOMPLETE'\" [label]=\"item.title\"\r\n [items]=\"item.option.items\" [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" filtered=\"true\" appearance=\"outline\"\r\n multiple>\r\n </sd-select>\r\n <sd-select *ngIf=\"!item.option?.selection\" [label]=\"item.title\" [items]=\"item.option.items\"\r\n [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-select>\r\n </ng-container>\r\n <sd-date-time [label]=\"item.title\" *ngIf=\"item.type ==='date' || item.type ==='datetime'\"\r\n [(model)]=\"externalFilter[item.field]\" [type]=\"item.type\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-date-time>\r\n <sd-date-range [label]=\"item.title\" *ngIf=\"item.type ==='daterange' && externalFilter[item.field]\"\r\n [(from)]=\"externalFilter[item.field].from\" [(to)]=\"externalFilter[item.field].to\" [min]=\"item.minDate\"\r\n [max]=\"item.maxDate\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-date-range>\r\n </div>\r\n </ng-template>\r\n <sd-popup-filter [
|
|
109
|
+
template: "<ng-container *ngIf=\"!filter?.disabled\">\r\n <ng-container *ngIf=\"filter?.enableCollapse;else noCollapse\">\r\n <sd-group class=\"p-12\" [isExpanded]=\"false\" title=\"T\u00ECm ki\u1EBFm\" expandable>\r\n <div sdGroupBody>\r\n <ng-container *ngTemplateOutlet=\"noCollapse\"></ng-container>\r\n </div>\r\n </sd-group>\r\n </ng-container>\r\n <ng-template #noCollapse>\r\n <div\r\n *ngIf=\"!isMobileOrTablet && ((columns?.length && !filter?.inlineColumn) || externalFilters?.length || filterDefs?.length)\"\r\n class=\"row mx-0 pb-10\">\r\n <ng-container *ngIf=\"filter?.sorts?.length\">\r\n <ng-container *ngFor=\"let field of filter?.sorts\">\r\n <ng-container *ngIf=\"columns?.length && !filter?.inlineColumn\">\r\n <ng-container *ngFor=\"let item of columns | sdFilterColumn:field\">\r\n <ng-container *ngTemplateOutlet=\"filterColumn; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"externalFilters?.length\">\r\n <ng-container *ngFor=\"let item of externalFilters | sdFilterExternal:field\">\r\n <ng-container *ngTemplateOutlet=\"filterExternal; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngFor=\"let item of filterDefs\">\r\n <div *ngIf=\"inlineFilterDef[item.sdMaterialFilterDef] && item.sdMaterialFilterDef === field\"\r\n class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <ng-container *ngTemplateOutlet=\"item.templateRef;context:{filterDef:filterDef, isInline: true}\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!filter?.sorts?.length\">\r\n <ng-container *ngIf=\"columns?.length && !filter?.inlineColumn\">\r\n <ng-container *ngFor=\"let item of columns | sdFilterColumn\">\r\n <ng-container *ngTemplateOutlet=\"filterColumn; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"externalFilters?.length\">\r\n <ng-container *ngFor=\"let item of externalFilters | sdFilterExternal\">\r\n <ng-container *ngTemplateOutlet=\"filterExternal; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngFor=\"let item of filterDefs\">\r\n <div *ngIf=\"inlineFilterDef[item.sdMaterialFilterDef]\" class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <ng-container *ngTemplateOutlet=\"item.templateRef;context:{filterDef:filterDef, isInline: true}\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <ng-template #filterColumn let-item=\"item\">\r\n <div *ngIf=\"inlineColumn[item.field]\" class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <sd-input [label]=\"item.title\" *ngIf=\"item.type === 'string'\" type=\"text\" [(model)]=\"columnFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input>\r\n <sd-input-number [label]=\"item.title\" *ngIf=\"item.type === 'number'\" [(model)]=\"columnFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input-number>\r\n <sd-select [label]=\"item.title\" *ngIf=\"item.type === 'bool'\" [items]=\"[{value:'1',display:item.option?.displayOnTrue || 'True' },\r\n {value:'0',display:item.option?.displayOnFalse || 'False' }]\" valueField=\"value\" displayField=\"display\"\r\n [(model)]=\"columnFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-select>\r\n <sd-select *ngIf=\"item.type === 'values' && item?.option?.selection !== 'AUTOCOMPLETE'\"\r\n [items]=\"item.option?.items\" [valueField]=\"item.option?.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"columnFilter[item.field]\" (sdChange)=\"onFilter(item)\" [disabled]=\"item.filter?.disabled\"\r\n [multiple]=\"item?.option?.selection === 'MULTIPLE' || item?.item?.selection === 'MULTIPLEAUTOCOMPLETE'\"\r\n [filtered]=\"item?.option?.selection === 'MULTIPLEAUTOCOMPLETE'\" appearance=\"outline\">\r\n </sd-select>\r\n <sd-autocomplete *ngIf=\"item.type === 'values' && item?.option?.selection === 'AUTOCOMPLETE'\"\r\n [items]=\"item.option?.items\" [valueField]=\"item.option?.valueField\" [displayField]=\"item.option?.displayField\"\r\n [(model)]=\"columnFilter[item.field]\" (sdChange)=\"onFilter(item)\" [disabled]=\"item.filter?.disabled\"\r\n appearance=\"outline\">\r\n </sd-autocomplete>\r\n <sd-date-time *ngIf=\"item.type === 'date' || item.type === 'datetime' || item.type === 'time'\"\r\n [label]=\"item.title\" [(model)]=\"columnFilter[item.field]\" [type]=\"item.type\" (sdChange)=\"onFilter(item)\"\r\n appearance=\"outline\">\r\n </sd-date-time>\r\n </div>\r\n </ng-template>\r\n <ng-template #filterExternal let-item=\"item\">\r\n <div *ngIf=\"inlineExternal[item.field]\" class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <sd-input [label]=\"item.title\" *ngIf=\"item.type === 'string'\" type=\"text\" [(model)]=\"externalFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input>\r\n <sd-input-number [label]=\"item.title\" *ngIf=\"item.type === 'number'\" [(model)]=\"externalFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input-number>\r\n <sd-select [label]=\"item.title\" *ngIf=\"item.type === 'bool'\" [items]=\"[{value:'1',display:item.option?.displayOnTrue || 'True' },\r\n {value:'0',display:item.option?.displayOnFalse || 'False' }]\" valueField=\"value\" displayField=\"display\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-select>\r\n <ng-container *ngIf=\"item.type === 'values' && item.option\">\r\n <sd-select *ngIf=\"item.option?.selection === 'MULTIPLE'\" [label]=\"item.title\" [items]=\"item.option.items\"\r\n [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" [selectAll]=\"item.option.selectAll\"\r\n appearance=\"outline\" multiple>\r\n </sd-select>\r\n <sd-autocomplete *ngIf=\"item.option?.selection === 'AUTOCOMPLETE'\" [label]=\"item.title\"\r\n [items]=\"item.option.items\" [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-autocomplete>\r\n <sd-select *ngIf=\"item.option?.selection === 'MULTIPLEAUTOCOMPLETE'\" [label]=\"item.title\"\r\n [items]=\"item.option.items\" [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" filtered=\"true\" appearance=\"outline\"\r\n multiple>\r\n </sd-select>\r\n <sd-select *ngIf=\"!item.option?.selection\" [label]=\"item.title\" [items]=\"item.option.items\"\r\n [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-select>\r\n </ng-container>\r\n <sd-date-time [label]=\"item.title\" *ngIf=\"item.type ==='date' || item.type ==='datetime'\"\r\n [(model)]=\"externalFilter[item.field]\" [type]=\"item.type\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-date-time>\r\n <sd-date-range [label]=\"item.title\" *ngIf=\"item.type ==='daterange' && externalFilter[item.field]\"\r\n [(from)]=\"externalFilter[item.field].from\" [(to)]=\"externalFilter[item.field].to\" [min]=\"item.minDate\"\r\n [max]=\"item.maxDate\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-date-range>\r\n </div>\r\n </ng-template>\r\n <sd-popup-filter [filterRegister]=\"filterRegister\" [columns]=\"columns\"\r\n [externalFilters]=\"externalFilters\" [filterDefs]=\"filterDefs\">\r\n </sd-popup-filter>\r\n </ng-template>\r\n</ng-container>",
|
|
179
110
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
180
111
|
styles: [":host{display:block;padding-left:0;padding-right:0}:host ::ng-deep .mat-form-field-wrapper{padding-bottom:0}"]
|
|
181
112
|
},] }
|
|
182
113
|
];
|
|
183
114
|
SdGridFilter.ctorParameters = () => [
|
|
184
115
|
{ type: ChangeDetectorRef },
|
|
185
|
-
{ type: DeviceDetectorService }
|
|
186
|
-
{ type: SdGridFilterService }
|
|
116
|
+
{ type: DeviceDetectorService }
|
|
187
117
|
];
|
|
188
118
|
SdGridFilter.propDecorators = {
|
|
189
119
|
popupFilter: [{ type: ViewChild, args: [SdPopupFilter,] }],
|
|
190
120
|
_filter: [{ type: Input, args: ['filter',] }],
|
|
191
121
|
columns: [{ type: Input }],
|
|
192
|
-
filterDefs: [{ type: Input }]
|
|
122
|
+
filterDefs: [{ type: Input }],
|
|
123
|
+
_filterRegister: [{ type: Input, args: ['filterRegister',] }]
|
|
193
124
|
};
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9ncmlkLW1hdGVyaWFsLyIsInNvdXJjZXMiOlsic3JjL2xpYi9jb21wb25lbnRzL2dyaWQtZmlsdGVyL2dyaWQtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF3QixTQUFTLEVBQTRCLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3hKLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBUzVELE1BQU0sT0FBTyxZQUFZO0lBc0J2QixZQUNVLEdBQXNCLEVBQ3RCLGFBQW9DLEVBQ3BDLGlCQUFzQztRQUZ0QyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBdUI7UUFDcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFxQjtRQXRCaEQsK0JBQXVCLElBQUksT0FBTyxFQUE4QixFQUFDO1FBS3hELFlBQU8sR0FBMkIsRUFBRSxDQUFDO1FBQ3JDLGVBQVUsR0FBbUMsRUFBRSxDQUFDO1FBQ3pELGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFFbkQsY0FBUyxHQUFRLEVBQUUsQ0FBQztRQUNwQixvQkFBZSxHQUE0QixFQUFFLENB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QkFFM0MsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2hEOzs7WUFmOEcsaUJBQWlCO1lBT3ZILHFCQUFxQjtZQURyQixtQkFBbUI7OzswQkFXekIsU0FBUyxTQUFDLGFBQWE7c0JBR3ZCLEtBQUssU0FBQyxRQUFRO3NCQUlkLEtBQUs7eUJBQ0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBWaWV3Q2hpbGQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNkR3JpZE1hdGVyaWFsRmlsdGVyT3B0aW9uLCBTZEdyaWRNYXRlcmlhbEV4dGVybmFsRmlsdGVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dyaWQtZmlsdGVyLm1vZGVsJztcclxuaW1wb3J0IHsgU2RHcmlkTWF0ZXJpYWxDb2x1bW4gfSBmcm9tICcuLi8uLi9tb2RlbHMvZ3JpZC1jb2x1bW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBTZFBvcHVwRmlsdGVyIH0gZnJvbSAnLi4vcG9wdXAtZmlsdGVyL3BvcHVwLWZpbHRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFNkR3JpZEZpbHRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ncmlkLWZpbHRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlIH0gZnJvbSAnbmd4LWRldmljZS1kZXRlY3Rvcic7XHJcbmltcG9ydCB7IFNkTWF0ZXJpYWxGaWx0ZXJEZWZEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3NkLW1hdGVyaWFsLWZpbHRlci1kZWYuZGlyZWN0aXZlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2QtZ3JpZC1maWx0ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmlkLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZ3JpZC1maWx0ZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RHcmlkRmlsdGVyIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICBAVmlld0NoaWxkKFNkUG9wdXBGaWx0ZXIpIHBvcHVwRmlsdGVyOiBTZFBvcHVwRmlsdGVyO1xyXG4gIGZpbHRlcjogUmVhZG9ubHk8U2RHcmlkTWF0ZXJpYWxGaWx0ZXJPcHRpb24+O1xyXG4gICNmaWx0ZXJPcHRpb25DaGFuZ2VzID0gbmV3IFN1YmplY3Q8U2RHcmlkTWF0ZXJpYWxGaWx0ZXJPcHRpb24+KCk7XHJcbiAgQElucHV0KCdmaWx0ZXInKSBzZXQgX2ZpbHRlcihmaWx0ZXI6IFNkR3JpZE1hdGVyaWFsRmlsdGVyT3B0aW9uKSB7XHJcbiAgICB0aGlzLmZpbHRlciA9IGZpbHRlcjtcclxuICAgIHRoaXMuI2ZpbHRlck9wdGlvbkNoYW5nZXMubmV4dCh0aGlzLmZpbHRlcik7XHJcbiAgfVxyXG4gIEBJbnB1dCgpIGNvbHVtbnM6IFNkR3JpZE1hdGVyaWFsQ29sdW1uW10gPSBbXTtcclxuICBASW5wdXQoKSBmaWx0ZXJEZWZzOiBTZE1hdGVyaWFsRmlsdGVyRGVmRGlyZWN0aXZlW10gPSBbXTtcclxuICBmaWx0ZXJDaGFuZ2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHJcbiAgZmlsdGVyRGVmOiBhbnkgPSB7fTtcclxuICBpbmxpbmVGaWx0ZXJEZWY6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgY29sdW1uRmlsdGVyOiBhbnkgPSB7fTtcclxuICBpbmxpbmVDb2x1bW46IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgZXh0ZXJuYWxGaWx0ZXJzOiBTZEdyaWRNYXRlcmlhbEV4dGVybmFsRmlsdGVyW10gPSBbXTtcclxuICBleHRlcm5hbEZpbHRlcjogYW55ID0ge307XHJcbiAgaW5saW5lRXh0ZXJuYWw6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgaXNNb2JpbGVPclRhYmxldDogYm9vbGVhbjtcclxuXHJcbiAgI3N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgZGV2aWNlU2VydmljZTogRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBncmlkRmlsdGVyU2VydmljZTogU2RHcmlkRmlsdGVyU2VydmljZSkge1xyXG4gICAgdGhpcy5pc01vYmlsZU9yVGFibGV0ID0gIXRoaXMuZGV2aWNlU2VydmljZS5pc0Rlc2t0b3AoKTtcclxuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy4jc3Vic2NyaXB0aW9uLmFkZCh0aGlzLiNmaWx0ZXJPcHRpb25DaGFuZ2VzLnBpcGUoc3RhcnRXaXRoKHRoaXMuZmlsdGVyKSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMuZmlsdGVyPy5kaXNhYmxlZCkge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyQ2hhbmdlLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZXh0ZXJuYWxGaWx0ZXJzID0gdGhpcy5maWx0ZXI/LmV4dGVybmFsRmlsdGVycyB8fCBbXTtcclxuICAgICAgY29uc3QgY29uZmlndXJhdGlvbiA9IHRoaXMuZ3JpZEZpbHRlclNlcnZpY2UuZ2V0KHRoaXMuZmlsdGVyPy5rZXkpO1xyXG4gICAgICB0aGlzLmlubGluZUNvbHVtbiA9IGNvbmZpZ3VyYXRpb24uaW5saW5lQ29sdW1uO1xyXG4gICAgICB0aGlzLmlubGluZUV4dGVybmFsID0gY29uZmlndXJhdGlvbi5pbmxpbmVFeHRlcm5hbDtcclxuICAgICAgdGhpcy5pbmxpbmVGaWx0ZXJEZWYgPSBjb25maWd1cmF0aW9uLmlubGluZUZpbHRlckRlZjtcclxuICAgICAgdGhpcy4jbG9hZERlZmF1bHQoKTtcclxuICAgICAgdGhpcy5maWx0ZXJDaGFuZ2UubmV4dCh0cnVlKTtcclxuICAgICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICAjbG9hZERlZmF1bHQgPSAoKSA9PiB7XHJcbiAgICBmb3IgKGNvbnN0IGNvbHVtbiBvZiB0aGlzLmNvbHVtbnMpIHtcclxuICAgICAgdGhpcy5pbmxpbmVDb2x1bW5bY29sdW1uLmZpZWxkXSA9IHRoaXMuaW5saW5lQ29sdW1uW2NvbHVtbi5maWVsZF0gPz8gY29sdW1uPy5maWx0ZXI/LmRlZmF1bHRTaG93aW5nO1xyXG4gICAgICB0aGlzLmNvbHVtbkZpbHRlcltjb2x1bW4uZmllbGRdID0gdGhpcy5jb2x1bW5GaWx0ZXJbY29sdW1uLmZpZWxkXSA/PyBjb2x1bW4/LmZpbHRlcj8uZGVmYXVsdDtcclxuICAgIH1cclxuICAgIGZvciAoY29uc3QgZXh0ZXJuYWxGaWx0ZXIgb2YgdGhpcy5leHRlcm5hbEZpbHRlcnMpIHtcclxuICAgICAgdGhpcy5pbmxpbmVFeHRlcm5hbFtleHRlcm5hbEZpbHRlci5maWVsZF0gPSB0aGlzLmlubGluZUV4dGVybmFsW2V4dGVybmFsRmlsdGVyLmZpZWxkXSA/PyBleHRlcm5hbEZpbHRlcj8uZGVmYXVsdFNob3dpbmc7XHJcbiAgICAgIGlmIChleHRlcm5hbEZpbHRlci50eXBlID09PSAnZGF0ZXJhbmdlJykge1xyXG4gICAgICAgIHRoaXMuZXh0ZXJuYWxGaWx0ZXJbZXh0ZXJuYWxGaWx0ZXIuZmllbGRdID0ge1xyXG4gICAgICAgICAgZnJvbTogdGhpcy5leHRlcm5hbEZpbHRlcltleHRlcm5hbEZpbHRlci5maWVsZF0/LmZyb20gPz8gZXh0ZXJuYWxGaWx0ZXIuZGVmYXVsdD8uZnJvbSA/PyB1bmRlZmluZWQsXHJcbiAgICAgICAgICB0bzogdGhpcy5leHRlcm5hbEZpbHRlcltleHRlcm5hbEZpbHRlci5maWVsZF0/LnRvID8/IGV4dGVybmFsRmlsdGVyLmRlZmF1bHQ/LnRvID8/IHVuZGVmaW5lZFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5leHRlcm5hbEZpbHRlcltleHRlcm5hbEZpbHRlci5maWVsZF0gPSB0aGlzLmV4dGVybmFsRmlsdGVyW2V4dGVybmFsRmlsdGVyLmZpZWxkXSA/PyBleHRlcm5hbEZpbHRlci5kZWZhdWx0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBmb3IgKGNvbnN0IGZpbHRlckRlZiBvZiB0aGlzLmZpbHRlckRlZnMpIHtcclxuICAgICAgdGhpcy5pbmxpbmVGaWx0ZXJEZWZbZmlsdGVyRGVmLnNkTWF0ZXJpYWxGaWx0ZXJEZWZdID1cclxuICAgICAgICB0aGlzLmlubGluZUZpbHRlckRlZltmaWx0ZXJEZWYuc2RNYXRlcmlhbEZpbHRlckRlZl0gPz8gZmlsdGVyRGVmPy5kZWZhdWx0U2hvd2luZztcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNjbGVhckZpbHRlciA9ICgpID0+IHtcclxuICAgIHRoaXMuY29sdW1uRmlsdGVyID0ge307XHJcbiAgICB0aGlzLmV4dGVybmFsRmlsdGVyID0ge307XHJcbiAgICB0aGlzLmZpbHRlckRlZiA9IHt9O1xyXG4gICAgZm9yIChjb25zdCBleHRlcm5hbEZpbHRlciBvZiB0aGlzLmV4dGVybmFsRmlsdGVycykge1xyXG4gICAgICBpZiAoZXh0ZXJuYWxGaWx0ZXIudHlwZSA9PT0gJ2RhdGVyYW5nZScpIHtcclxuICAgICAgICB0aGlzLmV4dGVybmFsRmlsdGVyW2V4dGVybmFsRmlsdGVyLmZpZWxkXSA9IHtcclxuICAgICAgICAgIGZyb206IHVuZGVmaW5lZCxcclxuICAgICAgICAgIHRvOiB1bmRlZmluZWRcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy4jc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBvbkZpbHRlciA9IChpdGVtPzogU2RHcmlkTWF0ZXJpYWxDb2x1bW4gfCBTZEdyaWRNYXRlcmlhbEV4dGVybmFsRmlsdGVyKSA9PiB7XHJcbiAgICB0aGlzLmZpbHRlckNoYW5nZS5uZXh0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgb3BlbiA9ICgpID0+IHtcclxuICAgIHRoaXMucG9wdXBGaWx0ZXIub3Blbih7XHJcbiAgICAgIGNvbHVtbkZpbHRlcjogdGhpcy5jb2x1bW5GaWx0ZXIsXHJcbiAgICAgIGV4dGVybmFsRmlsdGVyOiB0aGlzLmV4dGVybmFsRmlsdGVyLFxyXG4gICAgICBmaWx0ZXJEZWY6IHRoaXMuZmlsdGVyRGVmLFxyXG4gICAgICBpbmxpbmVDb2x1bW46IHRoaXMuaW5saW5lQ29sdW1uLFxyXG4gICAgICBpbmxpbmVFeHRlcm5hbDogdGhpcy5pbmxpbmVFeHRlcm5hbCxcclxuICAgICAgaW5saW5lRmlsdGVyRGVmOiB0aGlzLmlubGluZUZpbHRlckRlZlxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkNoYW5nZUZpbHRlciA9IChhcmdzOiB7XHJcbiAgICBpbmxpbmVDb2x1bW46IHtcclxuICAgICAgW2tleTogc3RyaW5nXTogYm9vbGVhblxyXG4gICAgfSxcclxuICAgIGNvbHVtbkZpbHRlcjogYW55LFxyXG4gICAgaW5saW5lRXh0ZXJuYWw6IHtcclxuICAgICAgW2tleTogc3RyaW5nXTogYm9vbGVhblxyXG4gICAgfVxyXG4gICAgZXh0ZXJuYWxGaWx0ZXI6IGFueSxcclxuICAgIGlubGluZUZpbHRlckRlZjoge1xyXG4gICAgICBba2V5OiBzdHJpbmddOiBib29sZWFuXHJcbiAgICB9LFxyXG4gICAgZmlsdGVyRGVmOiBhbnlcclxuICB9KSA9PiB7XHJcbiAgICBjb25zdCB7IGlubGluZUNvbHVtbiwgY29sdW1uRmlsdGVyLCBpbmxpbmVFeHRlcm5hbCwgZXh0ZXJuYWxGaWx0ZXIsIGlubGluZUZpbHRlckRlZiwgZmlsdGVyRGVmIH0gPSBhcmdzO1xyXG4gICAgdGhpcy5pbmxpbmVDb2x1bW4gPSBpbmxpbmVDb2x1bW47XHJcbiAgICB0aGlzLmNvbHVtbkZpbHRlciA9IGNvbHVtbkZpbHRlcjtcclxuICAgIHRoaXMuaW5saW5lRXh0ZXJuYWwgPSBpbmxpbmVFeHRlcm5hbDtcclxuICAgIHRoaXMuZXh0ZXJuYWxGaWx0ZXIgPSBleHRlcm5hbEZpbHRlcjtcclxuICAgIHRoaXMuaW5saW5lRmlsdGVyRGVmID0gaW5saW5lRmlsdGVyRGVmO1xyXG4gICAgdGhpcy5maWx0ZXJEZWYgPSBmaWx0ZXJEZWY7XHJcbiAgICB0aGlzLmdyaWRGaWx0ZXJTZXJ2aWNlLnNldCh0aGlzLmZpbHRlcj8ua2V5LCB7XHJcbiAgICAgIGlubGluZUNvbHVtbixcclxuICAgICAgaW5saW5lRXh0ZXJuYWwsXHJcbiAgICAgIHF1aWNrRmlsdGVyczogW10sXHJcbiAgICAgIGlubGluZUZpbHRlckRlZixcclxuICAgICAgc2VsZWN0ZWRRdWlja0ZpbHRlcjogbnVsbFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmZpbHRlckNoYW5nZS5uZXh0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgb25SZXNldCA9ICgpID0+IHtcclxuICAgIHRoaXMuaW5saW5lQ29sdW1uID0ge307XHJcbiAgICB0aGlzLmNvbHVtbkZpbHRlciA9IHt9O1xyXG4gICAgdGhpcy5pbmxpbmVFeHRlcm5hbCA9IHt9O1xyXG4gICAgdGhpcy5leHRlcm5hbEZpbHRlciA9IHt9O1xyXG4gICAgdGhpcy5pbmxpbmVGaWx0ZXJEZWYgPSB7fTtcclxuICAgIHRoaXMuZmlsdGVyRGVmID0ge307XHJcbiAgICB0aGlzLiNsb2FkRGVmYXVsdCgpO1xyXG4gICAgdGhpcy5ncmlkRmlsdGVyU2VydmljZS5zZXQodGhpcy5maWx0ZXI/LmtleSwge1xyXG4gICAgICBpbmxpbmVDb2x1bW46IHRoaXMuaW5saW5lQ29sdW1uLFxyXG4gICAgICBpbmxpbmVFeHRlcm5hbDogdGhpcy5jb2x1bW5GaWx0ZXIsXHJcbiAgICAgIGlubGluZUZpbHRlckRlZjogdGhpcy5pbmxpbmVGaWx0ZXJEZWYsXHJcbiAgICAgIHF1aWNrRmlsdGVyczogW10sXHJcbiAgICAgIHNlbGVjdGVkUXVpY2tGaWx0ZXI6IG51bGxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5maWx0ZXJDaGFuZ2UubmV4dCh0cnVlKTtcclxuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgb25DbGVhckZpbHRlciA9ICgpID0+IHtcclxuICAgIHRoaXMuI2NsZWFyRmlsdGVyKCk7XHJcbiAgICB0aGlzLmdyaWRGaWx0ZXJTZXJ2aWNlLnNldCh0aGlzLmZpbHRlcj8ua2V5LCB7XHJcbiAgICAgIGlubGluZUNvbHVtbjogdGhpcy5pbmxpbmVDb2x1bW4sXHJcbiAgICAgIGlubGluZUV4dGVybmFsOiB0aGlzLmNvbHVtbkZpbHRlcixcclxuICAgICAgaW5saW5lRmlsdGVyRGVmOiB0aGlzLmlubGluZUZpbHRlckRlZixcclxuICAgICAgcXVpY2tGaWx0ZXJzOiBbXSxcclxuICAgICAgc2VsZWN0ZWRRdWlja0ZpbHRlcjogbnVsbFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmZpbHRlckNoYW5nZS5uZXh0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgc2V0RmlsdGVyID0gKGFyZ3M6IHtcclxuICAgIGNvbHVtbkZpbHRlcj86IGFueSxcclxuICAgIGV4dGVybmFsRmlsdGVyPzogYW55LFxyXG4gICAgZmlsdGVyRGVmPzogYW55XHJcbiAgfSkgPT4ge1xyXG4gICAgY29uc3QgeyBjb2x1bW5GaWx0ZXIsIGV4dGVybmFsRmlsdGVyLCBmaWx0ZXJEZWYgfSA9IGFyZ3M7XHJcbiAgICBpZiAoY29sdW1uRmlsdGVyKSB7XHJcbiAgICAgIHRoaXMuY29sdW1uRmlsdGVyID0gY29sdW1uRmlsdGVyO1xyXG4gICAgfVxyXG4gICAgaWYgKGV4dGVybmFsRmlsdGVyKSB7XHJcbiAgICAgIHRoaXMuZXh0ZXJuYWxGaWx0ZXIgPSBleHRlcm5hbEZpbHRlcjtcclxuICAgIH1cclxuICAgIGlmIChmaWx0ZXJEZWYpIHtcclxuICAgICAgdGhpcy5maWx0ZXJEZWYgPSBmaWx0ZXJEZWY7XHJcbiAgICB9XHJcbiAgICBmb3IgKGNvbnN0IGV4RmlsdGVyIG9mIHRoaXMuZXh0ZXJuYWxGaWx0ZXJzKSB7XHJcbiAgICAgIGlmIChleEZpbHRlci50eXBlID09PSAnZGF0ZXJhbmdlJykge1xyXG4gICAgICAgIHRoaXMuZXh0ZXJuYWxGaWx0ZXJbZXhGaWx0ZXIuZmllbGRdID0ge1xyXG4gICAgICAgICAgZnJvbTogdGhpcy5leHRlcm5hbEZpbHRlcltleEZpbHRlci5maWVsZF0/LmZyb20gPz8gdW5kZWZpbmVkLFxyXG4gICAgICAgICAgdG86IHRoaXMuZXh0ZXJuYWxGaWx0ZXJbZXhGaWx0ZXIuZmllbGRdPy50byA/PyB1bmRlZmluZWRcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcbn1cclxuIl19
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9ncmlkLW1hdGVyaWFsLyIsInNvdXJjZXMiOlsic3JjL2xpYi9jb21wb25lbnRzL2dyaWQtZmlsdGVyL2dyaWQtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF3QixTQUFTLEVBQTRCLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3hKLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFTNUQsTUFBTSxPQUFPLFlBQVk7SUE0QnZCLFlBQ1UsR0FBc0IsRUFDdEIsYUFBb0M7UUFEcEMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBM0I5QywrQkFBdUIsSUFBSSxPQUFPLEVBQThCLEVBQUM7UUFLeEQsWUFBTyxHQUEyQixFQUFFLENBQUM7UUFDckMsZUFBVSxHQUFtQyxFQUFFLENBQUM7UUFNekQseUJBQW9CLEdBQUcsSUFBSSxlQUFlLENBQStCLElBQUksQ0FBQyxDQUFDO1FBRS9FLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsb0JBQWUsR0FBNEIsRUFBRSxDQUFDO1FBQzlDLGlCQUFZLEdBQVEsRUFBRSxDQUFDO1FBQ3ZCLGlCQUFZLEdBQTRCLEVBQUUsQ0FBQztRQUMzQyxvQkFBZSxHQUFtQyxFQUFFLENBQUM7UUFDckQsbUJBQWMsR0FBUSxFQUFFLENBQUM7UUFDekIsbUJBQWMsR0FBNEIs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TTtJQUNOLCtDQUErQztJQUMvQyw0REFBNEQ7SUFDNUQsMEZBQTBGO0lBQzFGLE1BQU07SUFDTixJQUFJO0lBRUosV0FBVztRQUNULDRDQUFtQixXQUFXLEVBQUUsQ0FBQztJQUNuQyxDQUFDOzs7O1lBL0ZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQiwwbFJBQTJDO2dCQUUzQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQWY4RyxpQkFBaUI7WUFPdkgscUJBQXFCOzs7MEJBVTNCLFNBQVMsU0FBQyxhQUFhO3NCQUd2QixLQUFLLFNBQUMsUUFBUTtzQkFJZCxLQUFLO3lCQUNMLEtBQUs7OEJBRUwsS0FBSyxTQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBWaWV3Q2hpbGQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNkR3JpZE1hdGVyaWFsRmlsdGVyT3B0aW9uLCBTZEdyaWRNYXRlcmlhbEV4dGVybmFsRmlsdGVyLCBTZEdyaWRNYXRlcmlhbEZpbHRlclJlZ2lzdGVyIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZ3JpZC1maWx0ZXIvZ3JpZC1maWx0ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBTZEdyaWRNYXRlcmlhbENvbHVtbiB9IGZyb20gJy4uLy4uL21vZGVscy9ncmlkLWNvbHVtbi5tb2RlbCc7XHJcbmltcG9ydCB7IFNkUG9wdXBGaWx0ZXIgfSBmcm9tICcuLi9wb3B1cC1maWx0ZXIvcG9wdXAtZmlsdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU2RHcmlkRmlsdGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2dyaWQtZmlsdGVyL2dyaWQtZmlsdGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEZXZpY2VEZXRlY3RvclNlcnZpY2UgfSBmcm9tICduZ3gtZGV2aWNlLWRldGVjdG9yJztcclxuaW1wb3J0IHsgU2RNYXRlcmlhbEZpbHRlckRlZkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvc2QtbWF0ZXJpYWwtZmlsdGVyLWRlZi5kaXJlY3RpdmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC1ncmlkLWZpbHRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ncmlkLWZpbHRlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZEdyaWRGaWx0ZXIgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBWaWV3Q2hpbGQoU2RQb3B1cEZpbHRlcikgcG9wdXBGaWx0ZXI6IFNkUG9wdXBGaWx0ZXI7XHJcbiAgZmlsdGVyOiBSZWFkb25seTxTZEdyaWRNYXRlcmlhbEZpbHRlck9wdGlvbj47XHJcbiAgI2ZpbHRlck9wdGlvbkNoYW5nZXMgPSBuZXcgU3ViamVjdDxTZEdyaWRNYXRlcmlhbEZpbHRlck9wdGlvbj4oKTtcclxuICBASW5wdXQoJ2ZpbHRlcicpIHNldCBfZmlsdGVyKGZpbHRlcjogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJPcHRpb24pIHtcclxuICAgIHRoaXMuZmlsdGVyID0gZmlsdGVyO1xyXG4gICAgdGhpcy4jZmlsdGVyT3B0aW9uQ2hhbmdlcy5uZXh0KHRoaXMuZmlsdGVyKTtcclxuICB9XHJcbiAgQElucHV0KCkgY29sdW1uczogU2RHcmlkTWF0ZXJpYWxDb2x1bW5bXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGZpbHRlckRlZnM6IFNkTWF0ZXJpYWxGaWx0ZXJEZWZEaXJlY3RpdmVbXSA9IFtdO1xyXG4gIGZpbHRlclJlZ2lzdGVyOiBTZEdyaWRNYXRlcmlhbEZpbHRlclJlZ2lzdGVyO1xyXG4gIEBJbnB1dCgnZmlsdGVyUmVnaXN0ZXInKSBzZXQgX2ZpbHRlclJlZ2lzdGVyKHZhbHVlOiBTZEdyaWRNYXRlcmlhbEZpbHRlclJlZ2lzdGVyKSB7XHJcbiAgICB0aGlzLmZpbHRlclJlZ2lzdGVyID0gdmFsdWU7XHJcbiAgICB0aGlzLmZpbHRlclJlZ2lzdGVyQ2hhbmdlLm5leHQodGhpcy5maWx0ZXJSZWdpc3Rlcik7XHJcbiAgfTtcclxuICBmaWx0ZXJSZWdpc3RlckNoYW5nZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2RHcmlkTWF0ZXJpYWxGaWx0ZXJSZWdpc3Rlcj4obnVsbCk7XHJcblxyXG4gIGZpbHRlckRlZjogYW55ID0ge307XHJcbiAgaW5saW5lRmlsdGVyRGVmOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gIGNvbHVtbkZpbHRlcjogYW55ID0ge307XHJcbiAgaW5saW5lQ29sdW1uOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gIGV4dGVybmFsRmlsdGVyczogU2RHcmlkTWF0ZXJpYWxFeHRlcm5hbEZpbHRlcltdID0gW107XHJcbiAgZXh0ZXJuYWxGaWx0ZXI6IGFueSA9IHt9O1xyXG4gIGlubGluZUV4dGVybmFsOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gIGlzTW9iaWxlT3JUYWJsZXQ6IGJvb2xlYW47XHJcblxyXG4gICNzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBkZXZpY2VTZXJ2aWNlOiBEZXZpY2VEZXRlY3RvclNlcnZpY2UpIHtcclxuICAgIHRoaXMuaXNNb2JpbGVPclRhYmxldCA9ICF0aGlzLmRldmljZVNlcnZpY2UuaXNEZXNrdG9wKCk7XHJcbiAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIC8vIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQodGhpcy4jZmlsdGVyT3B0aW9uQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aCh0aGlzLmZpbHRlcikpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAvLyAgIGlmICh0aGlzLmZpbHRlcj8uZGlzYWJsZWQpIHtcclxuICAgIC8vICAgICB0aGlzLmZpbHRlckNoYW5nZS5uZXh0KHRydWUpO1xyXG4gICAgLy8gICAgIHJldHVybjtcclxuICAgIC8vICAgfVxyXG4gICAgLy8gICB0aGlzLmV4dGVybmFsRmlsdGVycyA9IHRoaXMuZmlsdGVyPy5leHRlcm5hbEZpbHRlcnMgfHwgW107XHJcbiAgICAvLyAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSB0aGlzLmdyaWRGaWx0ZXJTZXJ2aWNlLmdldCh0aGlzLmZpbHRlcj8ua2V5KTtcclxuICAgIC8vICAgdGhpcy5pbmxpbmVDb2x1bW4gPSBjb25maWd1cmF0aW9uLmlubGluZUNvbHVtbjtcclxuICAgIC8vICAgdGhpcy5pbmxpbmVFeHRlcm5hbCA9IGNvbmZpZ3VyYXRpb24uaW5saW5lRXh0ZXJuYWw7XHJcbiAgICAvLyAgIHRoaXMuaW5saW5lRmlsdGVyRGVmID0gY29uZmlndXJhdGlvbi5pbmxpbmVGaWx0ZXJEZWY7XHJcbiAgICAvLyAgIHRoaXMuI2xvYWREZWZhdWx0KCk7XHJcbiAgICAvLyAgIHRoaXMuZmlsdGVyQ2hhbmdlLm5leHQodHJ1ZSk7XHJcbiAgICAvLyAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgLy8gfSkpO1xyXG4gICAgdGhpcy4jc3Vic2NyaXB0aW9uLmFkZCh0aGlzLmZpbHRlclJlZ2lzdGVyQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmZpbHRlclJlZ2lzdGVyKSB7XHJcbiAgICAgICAgdGhpcy4jc3Vic2NyaXB0aW9uLmFkZCh0aGlzLmZpbHRlclJlZ2lzdGVyLm9ic2VydmVyLnN1YnNjcmliZShjb25maWd1cmF0aW9uID0+IHtcclxuICAgICAgICAgIHRoaXMuaW5saW5lQ29sdW1uID0gY29uZmlndXJhdGlvbi5pbmxpbmVDb2x1bW47XHJcbiAgICAgICAgICB0aGlzLmNvbHVtbkZpbHRlciA9IGNvbmZpZ3VyYXRpb24uY29sdW1uRmlsdGVyO1xyXG4gICAgICAgICAgdGhpcy5pbmxpbmVFeHRlcm5hbCA9IGNvbmZpZ3VyYXRpb24uaW5saW5lRXh0ZXJuYWw7XHJcbiAgICAgICAgICB0aGlzLmV4dGVybmFsRmlsdGVyID0gY29uZmlndXJhdGlvbi5leHRlcm5hbEZpbHRlcjtcclxuICAgICAgICAgIHRoaXMuaW5saW5lRmlsdGVyRGVmID0gY29uZmlndXJhdGlvbi5pbmxpbmVGaWx0ZXJEZWY7XHJcbiAgICAgICAgICB0aGlzLmZpbHRlckRlZiA9IGNvbmZpZ3VyYXRpb24uZmlsdGVyRGVmO1xyXG4gICAgICAgIH0pKTtcclxuICAgICAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgfTtcclxuICAgIH0pKTtcclxuICB9XHJcblxyXG4gIC8vICNsb2FkRGVmYXVsdCA9ICgpID0+IHtcclxuICAvLyAgIGZvciAoY29uc3QgY29sdW1uIG9mIHRoaXMuY29sdW1ucykge1xyXG4gIC8vICAgICB0aGlzLmlubGluZUNvbHVtbltjb2x1bW4uZmllbGRdID0gdGhpcy5pbmxpbmVDb2x1bW5bY29sdW1uLmZpZWxkXSA/PyBjb2x1bW4/LmZpbHRlcj8uZGVmYXVsdFNob3dpbmc7XHJcbiAgLy8gICAgIHRoaXMuY29sdW1uRmlsdGVyW2NvbHVtbi5maWVsZF0gPSB0aGlzLmNvbHVtbkZpbHRlcltjb2x1bW4uZmllbGRdID8/IGNvbHVtbj8uZmlsdGVyPy5kZWZhdWx0O1xyXG4gIC8vICAgfVxyXG4gIC8vICAgZm9yIChjb25zdCBleHRlcm5hbEZpbHRlciBvZiB0aGlzLmV4dGVybmFsRmlsdGVycykge1xyXG4gIC8vICAgICB0aGlzLmlubGluZUV4dGVybmFsW2V4dGVybmFsRmlsdGVyLmZpZWxkXSA9IHRoaXMuaW5saW5lRXh0ZXJuYWxbZXh0ZXJuYWxGaWx0ZXIuZmllbGRdID8/IGV4dGVybmFsRmlsdGVyPy5kZWZhdWx0U2hvd2luZztcclxuICAvLyAgICAgaWYgKGV4dGVybmFsRmlsdGVyLnR5cGUgPT09ICdkYXRlcmFuZ2UnKSB7XHJcbiAgLy8gICAgICAgdGhpcy5leHRlcm5hbEZpbHRlcltleHRlcm5hbEZpbHRlci5maWVsZF0gPSB7XHJcbiAgLy8gICAgICAgICBmcm9tOiB0aGlzLmV4dGVybmFsRmlsdGVyW2V4dGVybmFsRmlsdGVyLmZpZWxkXT8uZnJvbSA/PyBleHRlcm5hbEZpbHRlci5kZWZhdWx0Py5mcm9tID8/IHVuZGVmaW5lZCxcclxuICAvLyAgICAgICAgIHRvOiB0aGlzLmV4dGVybmFsRmlsdGVyW2V4dGVybmFsRmlsdGVyLmZpZWxkXT8udG8gPz8gZXh0ZXJuYWxGaWx0ZXIuZGVmYXVsdD8udG8gPz8gdW5kZWZpbmVkXHJcbiAgLy8gICAgICAgfTtcclxuICAvLyAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICB0aGlzLmV4dGVybmFsRmlsdGVyW2V4dGVybmFsRmlsdGVyLmZpZWxkXSA9IHRoaXMuZXh0ZXJuYWxGaWx0ZXJbZXh0ZXJuYWxGaWx0ZXIuZmllbGRdID8/IGV4dGVybmFsRmlsdGVyLmRlZmF1bHQ7XHJcbiAgLy8gICAgIH1cclxuICAvLyAgIH1cclxuICAvLyAgIGZvciAoY29uc3QgZmlsdGVyRGVmIG9mIHRoaXMuZmlsdGVyRGVmcykge1xyXG4gIC8vICAgICB0aGlzLmlubGluZUZpbHRlckRlZltmaWx0ZXJEZWYuc2RNYXRlcmlhbEZpbHRlckRlZl0gPVxyXG4gIC8vICAgICAgIHRoaXMuaW5saW5lRmlsdGVyRGVmW2ZpbHRlckRlZi5zZE1hdGVyaWFsRmlsdGVyRGVmXSA/PyBmaWx0ZXJEZWY/LmRlZmF1bHRTaG93aW5nO1xyXG4gIC8vICAgfVxyXG4gIC8vIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG9uRmlsdGVyID0gKGl0ZW0/OiBTZEdyaWRNYXRlcmlhbENvbHVtbiB8IFNkR3JpZE1hdGVyaWFsRXh0ZXJuYWxGaWx0ZXIpID0+IHtcclxuICAgIHRoaXMuZmlsdGVyUmVnaXN0ZXIuc2V0KHtcclxuICAgICAgY29sdW1uRmlsdGVyOiB0aGlzLmNvbHVtbkZpbHRlcixcclxuICAgICAgZXh0ZXJuYWxGaWx0ZXI6IHRoaXMuZXh0ZXJuYWxGaWx0ZXIsXHJcbiAgICAgIGZpbHRlckRlZjogdGhpcy5maWx0ZXJEZWZcclxuICAgIH0pO1xyXG4gICAgLy8gdGhpcy5maWx0ZXJDaGFuZ2UubmV4dCh0cnVlKTtcclxuICB9XHJcblxyXG4gIG9wZW4gPSAoKSA9PiB7XHJcbiAgICB0aGlzLnBvcHVwRmlsdGVyLm9wZW4oKTtcclxuICB9XHJcblxyXG4gIG9uUmVzZXQgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmZpbHRlclJlZ2lzdGVyLnJlbW92ZSgpO1xyXG4gICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgfVxyXG4gIC8vIHNldEZpbHRlciA9IChhcmdzOiB7XHJcbiAgLy8gICBjb2x1bW5GaWx0ZXI/OiBhbnksXHJcbiAgLy8gICBleHRlcm5hbEZpbHRlcj86IGFueSxcclxuICAvLyAgIGZpbHRlckRlZj86IGFueVxyXG4gIC8vIH0pID0+IHtcclxuICAvLyAgIGNvbnN0IHsgY29sdW1uRmlsdGVyLCBleHRlcm5hbEZpbHRlciwgZmlsdGVyRGVmIH0gPSBhcmdzO1xyXG4gIC8vICAgaWYgKGNvbHVtbkZpbHRlcikge1xyXG4gIC8vICAgICB0aGlzLmNvbHVtbkZpbHRlciA9IGNvbHVtbkZpbHRlcjtcclxuICAvLyAgIH1cclxuICAvLyAgIGlmIChleHRlcm5hbEZpbHRlcikge1xyXG4gIC8vICAgICB0aGlzLmV4dGVybmFsRmlsdGVyID0gZXh0ZXJuYWxGaWx0ZXI7XHJcbiAgLy8gICB9XHJcbiAgLy8gICBpZiAoZmlsdGVyRGVmKSB7XHJcbiAgLy8gICAgIHRoaXMuZmlsdGVyRGVmID0gZmlsdGVyRGVmO1xyXG4gIC8vICAgfVxyXG4gIC8vICAgZm9yIChjb25zdCBleEZpbHRlciBvZiB0aGlzLmV4dGVybmFsRmlsdGVycykge1xyXG4gIC8vICAgICBpZiAoZXhGaWx0ZXIudHlwZSA9PT0gJ2RhdGVyYW5nZScpIHtcclxuICAvLyAgICAgICB0aGlzLmV4dGVybmFsRmlsdGVyW2V4RmlsdGVyLmZpZWxkXSA9IHtcclxuICAvLyAgICAgICAgIGZyb206IHRoaXMuZXh0ZXJuYWxGaWx0ZXJbZXhGaWx0ZXIuZmllbGRdPy5mcm9tID8/IHVuZGVmaW5lZCxcclxuICAvLyAgICAgICAgIHRvOiB0aGlzLmV4dGVybmFsRmlsdGVyW2V4RmlsdGVyLmZpZWxkXT8udG8gPz8gdW5kZWZpbmVkXHJcbiAgLy8gICAgICAgfTtcclxuICAvLyAgICAgfVxyXG4gIC8vICAgfVxyXG4gIC8vICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgLy8gfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
var _filterRegister, _subscription;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
|
+
import { Component, ViewChild, Input, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
|
|
4
|
+
import { Subscription } from 'rxjs';
|
|
2
5
|
export class SdPopupFilter {
|
|
3
6
|
constructor(cdRef) {
|
|
4
7
|
this.cdRef = cdRef;
|
|
8
|
+
_filterRegister.set(this, void 0);
|
|
5
9
|
this.externalFilters = [];
|
|
6
10
|
this.externalFilter = {};
|
|
7
11
|
this.inlineExternal = {};
|
|
@@ -11,16 +15,8 @@ export class SdPopupFilter {
|
|
|
11
15
|
this.filterDefs = [];
|
|
12
16
|
this.filterDef = {};
|
|
13
17
|
this.inlineFilterDef = {};
|
|
14
|
-
this
|
|
15
|
-
this.
|
|
16
|
-
this.open = (args) => {
|
|
17
|
-
const { inlineColumn, columnFilter, inlineExternal, externalFilter, inlineFilterDef, filterDef } = args;
|
|
18
|
-
this.inlineColumn = JSON.parse(JSON.stringify(inlineColumn || {}));
|
|
19
|
-
this.columnFilter = JSON.parse(JSON.stringify(columnFilter || {}));
|
|
20
|
-
this.inlineExternal = JSON.parse(JSON.stringify(inlineExternal || {}));
|
|
21
|
-
this.externalFilter = JSON.parse(JSON.stringify(externalFilter || {}));
|
|
22
|
-
this.inlineFilterDef = JSON.parse(JSON.stringify(inlineFilterDef || {}));
|
|
23
|
-
this.filterDef = JSON.parse(JSON.stringify(filterDef || {}));
|
|
18
|
+
_subscription.set(this, new Subscription());
|
|
19
|
+
this.open = () => {
|
|
24
20
|
this.modal.open();
|
|
25
21
|
this.cdRef.markForCheck();
|
|
26
22
|
};
|
|
@@ -29,24 +25,64 @@ export class SdPopupFilter {
|
|
|
29
25
|
this.cdRef.markForCheck();
|
|
30
26
|
};
|
|
31
27
|
this.onApply = () => {
|
|
32
|
-
this.
|
|
33
|
-
inlineColumn: this.inlineColumn
|
|
34
|
-
columnFilter: this.columnFilter
|
|
35
|
-
inlineExternal: this.inlineExternal
|
|
36
|
-
externalFilter: this.externalFilter
|
|
37
|
-
inlineFilterDef: this.inlineFilterDef
|
|
38
|
-
filterDef: this.filterDef
|
|
28
|
+
this.filterRegister.set({
|
|
29
|
+
inlineColumn: this.inlineColumn,
|
|
30
|
+
columnFilter: this.columnFilter,
|
|
31
|
+
inlineExternal: this.inlineExternal,
|
|
32
|
+
externalFilter: this.externalFilter,
|
|
33
|
+
inlineFilterDef: this.inlineFilterDef,
|
|
34
|
+
filterDef: this.filterDef
|
|
39
35
|
});
|
|
36
|
+
// this.changeFilter.emit({
|
|
37
|
+
// inlineColumn: this.inlineColumn || {},
|
|
38
|
+
// columnFilter: this.columnFilter || {},
|
|
39
|
+
// inlineExternal: this.inlineExternal || {},
|
|
40
|
+
// externalFilter: this.externalFilter || {},
|
|
41
|
+
// inlineFilterDef: this.inlineFilterDef || {},
|
|
42
|
+
// filterDef: this.filterDef || {}
|
|
43
|
+
// });
|
|
40
44
|
this.modal.close();
|
|
41
45
|
this.cdRef.markForCheck();
|
|
42
46
|
};
|
|
43
47
|
}
|
|
48
|
+
set filterRegister(value) {
|
|
49
|
+
__classPrivateFieldSet(this, _filterRegister, value);
|
|
50
|
+
}
|
|
51
|
+
;
|
|
52
|
+
ngAfterViewInit() {
|
|
53
|
+
// this.#subscription.add(this.#filterOptionChanges.pipe(startWith(this.filter)).subscribe(() => {
|
|
54
|
+
// if (this.filter?.disabled) {
|
|
55
|
+
// this.filterChange.next(true);
|
|
56
|
+
// return;
|
|
57
|
+
// }
|
|
58
|
+
// this.externalFilters = this.filter?.externalFilters || [];
|
|
59
|
+
// const configuration = this.gridFilterService.get(this.filter?.key);
|
|
60
|
+
// this.inlineColumn = configuration.inlineColumn;
|
|
61
|
+
// this.inlineExternal = configuration.inlineExternal;
|
|
62
|
+
// this.inlineFilterDef = configuration.inlineFilterDef;
|
|
63
|
+
// this.#loadDefault();
|
|
64
|
+
// this.filterChange.next(true);
|
|
65
|
+
// this.ref.markForCheck();
|
|
66
|
+
// }));
|
|
67
|
+
__classPrivateFieldGet(this, _subscription).add(__classPrivateFieldGet(this, _filterRegister).observer.subscribe(configuration => {
|
|
68
|
+
this.inlineColumn = JSON.parse(JSON.stringify(configuration.inlineColumn));
|
|
69
|
+
this.columnFilter = JSON.parse(JSON.stringify(configuration.columnFilter));
|
|
70
|
+
this.inlineExternal = JSON.parse(JSON.stringify(configuration.inlineExternal));
|
|
71
|
+
this.externalFilter = JSON.parse(JSON.stringify(configuration.externalFilter));
|
|
72
|
+
this.inlineFilterDef = JSON.parse(JSON.stringify(configuration.inlineFilterDef));
|
|
73
|
+
this.filterDef = JSON.parse(JSON.stringify(configuration.filterDef));
|
|
74
|
+
}));
|
|
75
|
+
}
|
|
76
|
+
ngOnDestroy() {
|
|
77
|
+
__classPrivateFieldGet(this, _subscription).unsubscribe();
|
|
78
|
+
}
|
|
44
79
|
onClear() {
|
|
45
|
-
this.
|
|
80
|
+
this.filterRegister.remove();
|
|
46
81
|
this.modal.close();
|
|
47
82
|
this.cdRef.markForCheck();
|
|
48
83
|
}
|
|
49
84
|
}
|
|
85
|
+
_filterRegister = new WeakMap(), _subscription = new WeakMap();
|
|
50
86
|
SdPopupFilter.decorators = [
|
|
51
87
|
{ type: Component, args: [{
|
|
52
88
|
selector: 'sd-popup-filter',
|
|
@@ -60,10 +96,9 @@ SdPopupFilter.ctorParameters = () => [
|
|
|
60
96
|
];
|
|
61
97
|
SdPopupFilter.propDecorators = {
|
|
62
98
|
modal: [{ type: ViewChild, args: ['modal',] }],
|
|
99
|
+
filterRegister: [{ type: Input }],
|
|
63
100
|
externalFilters: [{ type: Input }],
|
|
64
101
|
columns: [{ type: Input }],
|
|
65
|
-
filterDefs: [{ type: Input }]
|
|
66
|
-
changeFilter: [{ type: Output }],
|
|
67
|
-
clearFilter: [{ type: Output }]
|
|
102
|
+
filterDefs: [{ type: Input }]
|
|
68
103
|
};
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvZ3JpZC1tYXRlcmlhbC8iLCJzb3VyY2VzIjpbInNyYy9saWIvY29tcG9uZW50cy9wb3B1cC1maWx0ZXIvcG9wdXAtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUF3QixLQUFLLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLOUgsT0FBTyxFQUFtQixZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFRckQsTUFBTSxPQUFPLGFBQWE7SUF1QnhCLFlBQ1UsS0FBd0I7UUFBeEIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUF0QmxDLGtDQUE4QztRQUlyQyxvQkFBZSxHQUFtQyxFQUFFLENBQUM7UUFDOUQsbUJBQWMsR0FBUSxFQUFFLENBQUM7UUFDekIsbUJBQWMsR0FFVixFQUFFLENBQUM7UUFDRSxZQUFPLEdBQTJCLEVBQUUsQ0FBQztRQUM5QyxpQkFBWSxHQUFRLEVBQUUsQ0FBQztRQUN2QixpQkFBWSxHQUVSLEVBQUUsQ0FBQztRQUVFLGVBQVUsR0FBbUMsRUFBRSxDQUFDO1FBQ3pELGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsb0JBQWUsR0FFWCxFQUFFLENBQUM7UUFDUCx3QkFBZ0IsSUFBSSxZQUFZLEVBQUUsRUFBQztRQW1DbkMsU0FBSSxHQUFHLEdBQUcsRUFBRTtZQUNWLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUE7UUFFRCxVQUFLLEdBQUcsR0FBRyxFQUFFO1lBQ1gsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFL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LFNBQVMsU0FBQyxPQUFPOzZCQUVqQixLQUFLOzhCQUdMLEtBQUs7c0JBS0wsS0FBSzt5QkFNTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNkTW9kYWwgfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL21vZGFsJztcclxuaW1wb3J0IHsgU2RHcmlkTWF0ZXJpYWxDb2x1bW4gfSBmcm9tICcuLi8uLi9tb2RlbHMvZ3JpZC1jb2x1bW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBTZEdyaWRNYXRlcmlhbEV4dGVybmFsRmlsdGVyLCBTZEdyaWRNYXRlcmlhbEZpbHRlclJlZ2lzdGVyIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZ3JpZC1maWx0ZXIvZ3JpZC1maWx0ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBTZE1hdGVyaWFsRmlsdGVyRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9zZC1tYXRlcmlhbC1maWx0ZXItZGVmLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NkLXBvcHVwLWZpbHRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3BvcHVwLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcG9wdXAtZmlsdGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkUG9wdXBGaWx0ZXIge1xyXG4gIEBWaWV3Q2hpbGQoJ21vZGFsJykgbW9kYWw6IFNkTW9kYWw7XHJcbiAgI2ZpbHRlclJlZ2lzdGVyOiBTZEdyaWRNYXRlcmlhbEZpbHRlclJlZ2lzdGVyO1xyXG4gIEBJbnB1dCgpIHNldCBmaWx0ZXJSZWdpc3Rlcih2YWx1ZTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJSZWdpc3Rlcikge1xyXG4gICAgdGhpcy4jZmlsdGVyUmVnaXN0ZXIgPSB2YWx1ZTtcclxuICB9O1xyXG4gIEBJbnB1dCgpIGV4dGVybmFsRmlsdGVyczogU2RHcmlkTWF0ZXJpYWxFeHRlcm5hbEZpbHRlcltdID0gW107XHJcbiAgZXh0ZXJuYWxGaWx0ZXI6IGFueSA9IHt9O1xyXG4gIGlubGluZUV4dGVybmFsOiB7XHJcbiAgICBba2V5OiBzdHJpbmddOiBib29sZWFuXHJcbiAgfSA9IHt9O1xyXG4gIEBJbnB1dCgpIGNvbHVtbnM6IFNkR3JpZE1hdGVyaWFsQ29sdW1uW10gPSBbXTtcclxuICBjb2x1bW5GaWx0ZXI6IGFueSA9IHt9O1xyXG4gIGlubGluZUNvbHVtbjoge1xyXG4gICAgW2tleTogc3RyaW5nXTogYm9vbGVhblxyXG4gIH0gPSB7fTtcclxuXHJcbiAgQElucHV0KCkgZmlsdGVyRGVmczogU2RNYXRlcmlhbEZpbHRlckRlZkRpcmVjdGl2ZVtdID0gW107XHJcbiAgZmlsdGVyRGVmOiBhbnkgPSB7fTtcclxuICBpbmxpbmVGaWx0ZXJEZWY6IHtcclxuICAgIFtrZXk6IHN0cmluZ106IGJvb2xlYW47XHJcbiAgfSA9IHt9O1xyXG4gICNzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgLy8gdGhpcy4jc3Vic2NyaXB0aW9uLmFkZCh0aGlzLiNmaWx0ZXJPcHRpb25DaGFuZ2VzLnBpcGUoc3RhcnRXaXRoKHRoaXMuZmlsdGVyKSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgIC8vICAgaWYgKHRoaXMuZmlsdGVyPy5kaXNhYmxlZCkge1xyXG4gICAgLy8gICAgIHRoaXMuZmlsdGVyQ2hhbmdlLm5leHQodHJ1ZSk7XHJcbiAgICAvLyAgICAgcmV0dXJuO1xyXG4gICAgLy8gICB9XHJcbiAgICAvLyAgIHRoaXMuZXh0ZXJuYWxGaWx0ZXJzID0gdGhpcy5maWx0ZXI/LmV4dGVybmFsRmlsdGVycyB8fCBbXTtcclxuICAgIC8vICAgY29uc3QgY29uZmlndXJhdGlvbiA9IHRoaXMuZ3JpZEZpbHRlclNlcnZpY2UuZ2V0KHRoaXMuZmlsdGVyPy5rZXkpO1xyXG4gICAgLy8gICB0aGlzLmlubGluZUNvbHVtbiA9IGNvbmZpZ3VyYXRpb24uaW5saW5lQ29sdW1uO1xyXG4gICAgLy8gICB0aGlzLmlubGluZUV4dGVybmFsID0gY29uZmlndXJhdGlvbi5pbmxpbmVFeHRlcm5hbDtcclxuICAgIC8vICAgdGhpcy5pbmxpbmVGaWx0ZXJEZWYgPSBjb25maWd1cmF0aW9uLmlubGluZUZpbHRlckRlZjtcclxuICAgIC8vICAgdGhpcy4jbG9hZERlZmF1bHQoKTtcclxuICAgIC8vICAgdGhpcy5maWx0ZXJDaGFuZ2UubmV4dCh0cnVlKTtcclxuICAgIC8vICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAvLyB9KSk7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24uYWRkKHRoaXMuI2ZpbHRlclJlZ2lzdGVyLm9ic2VydmVyLnN1YnNjcmliZShjb25maWd1cmF0aW9uID0+IHtcclxuICAgICAgdGhpcy5pbmxpbmVDb2x1bW4gPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGNvbmZpZ3VyYXRpb24uaW5saW5lQ29sdW1uKSk7XHJcbiAgICAgIHRoaXMuY29sdW1uRmlsdGVyID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShjb25maWd1cmF0aW9uLmNvbHVtbkZpbHRlcikpO1xyXG4gICAgICB0aGlzLmlubGluZUV4dGVybmFsID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShjb25maWd1cmF0aW9uLmlubGluZUV4dGVybmFsKSk7XHJcbiAgICAgIHRoaXMuZXh0ZXJuYWxGaWx0ZXIgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGNvbmZpZ3VyYXRpb24uZXh0ZXJuYWxGaWx0ZXIpKTtcclxuICAgICAgdGhpcy5pbmxpbmVGaWx0ZXJEZWYgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGNvbmZpZ3VyYXRpb24uaW5saW5lRmlsdGVyRGVmKSk7XHJcbiAgICAgIHRoaXMuZmlsdGVyRGVmID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShjb25maWd1cmF0aW9uLmZpbHRlckRlZikpO1xyXG4gICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG9wZW4gPSAoKSA9PiB7XHJcbiAgICB0aGlzLm1vZGFsLm9wZW4oKTtcclxuICAgIHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZSA9ICgpID0+IHtcclxuICAgIHRoaXMubW9kYWwuY2xvc2UoKTtcclxuICAgIHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgfVxyXG5cclxuICBvbkFwcGx5ID0gKCkgPT4ge1xyXG4gICAgdGhpcy5maWx0ZXJSZWdpc3Rlci5zZXQoe1xyXG4gICAgICBpbmxpbmVDb2x1bW46IHRoaXMuaW5saW5lQ29sdW1uLFxyXG4gICAgICBjb2x1bW5GaWx0ZXI6IHRoaXMuY29sdW1uRmlsdGVyLFxyXG4gICAgICBpbmxpbmVFeHRlcm5hbDogdGhpcy5pbmxpbmVFeHRlcm5hbCxcclxuICAgICAgZXh0ZXJuYWxGaWx0ZXI6IHRoaXMuZXh0ZXJuYWxGaWx0ZXIsXHJcbiAgICAgIGlubGluZUZpbHRlckRlZjogdGhpcy5pbmxpbmVGaWx0ZXJEZWYsXHJcbiAgICAgIGZpbHRlckRlZjogdGhpcy5maWx0ZXJEZWZcclxuICAgIH0pO1xyXG4gICAgLy8gdGhpcy5jaGFuZ2VGaWx0ZXIuZW1pdCh7XHJcbiAgICAvLyAgIGlubGluZUNvbHVtbjogdGhpcy5pbmxpbmVDb2x1bW4gfHwge30sXHJcbiAgICAvLyAgIGNvbHVtbkZpbHRlcjogdGhpcy5jb2x1bW5GaWx0ZXIgfHwge30sXHJcbiAgICAvLyAgIGlubGluZUV4dGVybmFsOiB0aGlzLmlubGluZUV4dGVybmFsIHx8IHt9LFxyXG4gICAgLy8gICBleHRlcm5hbEZpbHRlcjogdGhpcy5leHRlcm5hbEZpbHRlciB8fCB7fSxcclxuICAgIC8vICAgaW5saW5lRmlsdGVyRGVmOiB0aGlzLmlubGluZUZpbHRlckRlZiB8fCB7fSxcclxuICAgIC8vICAgZmlsdGVyRGVmOiB0aGlzLmZpbHRlckRlZiB8fCB7fVxyXG4gICAgLy8gfSk7XHJcbiAgICB0aGlzLm1vZGFsLmNsb3NlKCk7XHJcbiAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgb25DbGVhcigpIHtcclxuICAgIHRoaXMuZmlsdGVyUmVnaXN0ZXIucmVtb3ZlKCk7XHJcbiAgICB0aGlzLm1vZGFsLmNsb3NlKCk7XHJcbiAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxufVxyXG4iXX0=
|