@smartsoft001/crud-shell-angular 1.2.72 → 1.2.77

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/{esm2020 → esm2022}/lib/+state/crud.effects.mjs +4 -4
  2. package/{esm2020 → esm2022}/lib/+state/crud.facade.mjs +4 -4
  3. package/{esm2020 → esm2022}/lib/components/components.module.mjs +51 -51
  4. package/{esm2020 → esm2022}/lib/components/export/export.component.mjs +4 -4
  5. package/esm2022/lib/components/filter/base/base.component.mjs +152 -0
  6. package/{esm2020 → esm2022}/lib/components/filter/check/check.component.mjs +4 -4
  7. package/{esm2020 → esm2022}/lib/components/filter/date/date.component.mjs +4 -4
  8. package/{esm2020 → esm2022}/lib/components/filter/date-time/date-time.component.mjs +4 -4
  9. package/{esm2020 → esm2022}/lib/components/filter/date-with-edit/date-with-edit.component.mjs +4 -4
  10. package/{esm2020 → esm2022}/lib/components/filter/filter.component.mjs +4 -4
  11. package/{esm2020 → esm2022}/lib/components/filter/flag/flag.component.mjs +4 -4
  12. package/{esm2020 → esm2022}/lib/components/filter/int/int.component.mjs +4 -4
  13. package/{esm2020 → esm2022}/lib/components/filter/radio/radio.component.mjs +4 -4
  14. package/esm2022/lib/components/filter/text/text.component.mjs +16 -0
  15. package/{esm2020 → esm2022}/lib/components/filters/filters.component.mjs +4 -4
  16. package/{esm2020 → esm2022}/lib/components/filters-config/filters-config.component.mjs +4 -4
  17. package/{esm2020 → esm2022}/lib/components/group/group.component.mjs +4 -4
  18. package/{esm2020 → esm2022}/lib/components/multiselect/multiselect.component.mjs +4 -4
  19. package/esm2022/lib/crud-full.module.mjs +103 -0
  20. package/{esm2020 → esm2022}/lib/crud.config.mjs +7 -7
  21. package/{esm2020 → esm2022}/lib/crud.module.mjs +33 -33
  22. package/{esm2020 → esm2022}/lib/factories/list-pagination/list-pagination.factory.mjs +4 -4
  23. package/esm2022/lib/pages/item/base/base.component.mjs +44 -0
  24. package/esm2022/lib/pages/item/item.component.mjs +395 -0
  25. package/{esm2020 → esm2022}/lib/pages/item/standard/standard.component.mjs +4 -4
  26. package/esm2022/lib/pages/list/base/base.component.mjs +23 -0
  27. package/{esm2020 → esm2022}/lib/pages/list/list.component.mjs +6 -6
  28. package/{esm2020 → esm2022}/lib/pages/list/standard/standard.component.mjs +6 -6
  29. package/{esm2020 → esm2022}/lib/pipes/form-options/form-options.pipe.mjs +4 -4
  30. package/{esm2020 → esm2022}/lib/pipes/pipes.module.mjs +5 -5
  31. package/{esm2020 → esm2022}/lib/services/crud/crud.service.mjs +4 -4
  32. package/{esm2020 → esm2022}/lib/services/list-group/list-group.service.mjs +4 -4
  33. package/{esm2020 → esm2022}/lib/services/page/page.service.mjs +4 -4
  34. package/{esm2020 → esm2022}/lib/services/search/search.service.mjs +4 -4
  35. package/{esm2020 → esm2022}/lib/services/socket/socket.service.mjs +7 -7
  36. package/{fesm2020 → fesm2022}/smartsoft001-crud-shell-angular.mjs +237 -237
  37. package/{fesm2020 → fesm2022}/smartsoft001-crud-shell-angular.mjs.map +1 -1
  38. package/lib/components/filter/base/base.component.d.ts +1 -1
  39. package/lib/components/filter/filter.component.d.ts +1 -1
  40. package/lib/components/filters/filters.component.d.ts +1 -1
  41. package/lib/components/group/group.component.d.ts +1 -1
  42. package/lib/models/interfaces.d.ts +1 -1
  43. package/lib/models/interfaces.d.ts.map +1 -1
  44. package/lib/pages/item/base/base.component.d.ts +1 -1
  45. package/lib/pages/list/base/base.component.d.ts +1 -1
  46. package/package.json +8 -14
  47. package/esm2020/lib/components/filter/base/base.component.mjs +0 -152
  48. package/esm2020/lib/components/filter/text/text.component.mjs +0 -16
  49. package/esm2020/lib/crud-full.module.mjs +0 -103
  50. package/esm2020/lib/pages/item/base/base.component.mjs +0 -44
  51. package/esm2020/lib/pages/item/item.component.mjs +0 -395
  52. package/esm2020/lib/pages/list/base/base.component.mjs +0 -23
  53. package/fesm2015/smartsoft001-crud-shell-angular.mjs +0 -2654
  54. package/fesm2015/smartsoft001-crud-shell-angular.mjs.map +0 -1
  55. /package/{esm2020 → esm2022}/index.mjs +0 -0
  56. /package/{esm2020 → esm2022}/lib/+state/crud.actions.mjs +0 -0
  57. /package/{esm2020 → esm2022}/lib/+state/crud.reducer.mjs +0 -0
  58. /package/{esm2020 → esm2022}/lib/+state/crud.selectors.mjs +0 -0
  59. /package/{esm2020 → esm2022}/lib/components/filter/index.mjs +0 -0
  60. /package/{esm2020 → esm2022}/lib/components/index.mjs +0 -0
  61. /package/{esm2020 → esm2022}/lib/models/index.mjs +0 -0
  62. /package/{esm2020 → esm2022}/lib/models/interfaces.mjs +0 -0
  63. /package/{esm2020 → esm2022}/lib/pages/index.mjs +0 -0
  64. /package/{esm2020 → esm2022}/lib/pipes/index.mjs +0 -0
  65. /package/{esm2020 → esm2022}/lib/providers/model-possibilities/model-possibilities.provider.mjs +0 -0
  66. /package/{esm2020 → esm2022}/smartsoft001-crud-shell-angular.mjs +0 -0
@@ -173,10 +173,10 @@ export class CrudEffects {
173
173
  }
174
174
  });
175
175
  }
176
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CrudEffects, deps: [{ token: i1.ActionsSubject }, { token: i2.CrudService }, { token: i3.CrudConfig }, { token: i1.Store }, { token: i1.State }], target: i0.ɵɵFactoryTarget.Injectable }); }
177
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CrudEffects }); }
176
178
  }
177
- /** @nocollapse */ CrudEffects.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CrudEffects, deps: [{ token: i1.ActionsSubject }, { token: i2.CrudService }, { token: i3.CrudConfig }, { token: i1.Store }, { token: i1.State }], target: i0.ɵɵFactoryTarget.Injectable });
178
- /** @nocollapse */ CrudEffects.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CrudEffects });
179
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CrudEffects, decorators: [{
179
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CrudEffects, decorators: [{
180
180
  type: Injectable
181
181
  }], ctorParameters: function () { return [{ type: i1.ActionsSubject }, { type: i2.CrudService }, { type: i3.CrudConfig }, { type: i1.Store }, { type: i1.State }]; } });
182
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jcnVkL3NoZWxsL2FuZ3VsYXIvc3JjL2xpYi8rc3RhdGUvY3J1ZC5lZmZlY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sa0JBQWtCLENBQUM7QUFFMUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFCLE9BQU8sRUFBVSxjQUFjLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFM0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTVELE9BQU8sS0FBSyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFHakQsTUFBTSxPQUFPLFdBQVc7SUFDdEIsWUFDVSxRQUF3QixFQUN4QixPQUF1QixFQUN2QixNQUFxQixFQUNyQixLQUFpQixFQUNqQixLQUFpQjtRQUpqQixhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUN4QixZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN2QixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtJQUN4QixDQUFDO0lBRUosSUFBSTtRQUNGLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFFdEUsSUFBSSxRQUFRO1lBQUUsT0FBTztRQUVyQixPQUFPLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztRQUU5RCxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQW9CLEVBQUUsRUFBRTtZQUMvQyxRQUFRLE1BQU0sQ0FBQyxJQUFJLEVBQUU7Z0JBQ25CLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sVUFBVTtvQkFDbkMsSUFBSSxDQUFDLE9BQU87eUJBQ1QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7eUJBQ25CLElBQUksQ0FDSCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQ1AsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUMzRCxDQUNGLEVBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7d0JBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsYUFBYSxDQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFDbEIsTUFBTSxDQUFDLElBQUksRUFDWCxLQUFLLENBQ04sQ0FDRixDQUFDO3dCQUNGLE9BQU8sRUFBRSxFQUFFLENBQUM7b0JBQ2QsQ0FBQyxDQUFDLENBQ0g7eUJBQ0EsU0FBUyxFQUFFLENBQUM7b0JBQ2YsTUFBTTtnQkFFUixLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQjtvQkFDM0MsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUM5RCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsV0FBVyxDQUFDLElBQUksQ0FDZCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFDbEIsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ2pFLENBQ0YsQ0FBQztvQkFDRixNQUFNO2dCQUVSLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sZUFBZTtvQkFDeEMsSUFBSSxDQUFDLE9BQU87eUJBQ1QsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO3lCQUNsRCxJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUNQLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7d0JBQ2hELEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUs7d0JBQ3hCLE9BQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU87cUJBQzdCLENBQUMsQ0FDSCxDQUNGLEVBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7d0JBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsaUJBQWlCLENBQzNCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUNsQjs0QkFDRSxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLOzRCQUN4QixPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPO3lCQUM3QixFQUNELEtBQUssQ0FDTixDQUNGLENBQUM7d0JBQ0YsT0FBTyxFQUFFLEVBQUUsQ0FBQztvQkFDZCxDQUFDLENBQUMsQ0FDSDt5QkFDQSxTQUFTLEVBQUUsQ0FBQztvQkFDZixNQUFNO2dCQUVSLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sdUJBQXVCO29CQUNoRCxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ2xFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsSUFBSSxDQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUNsQixlQUFlLENBQUMsTUFBTTt3QkFDcEIsQ0FBQyxDQUFDLEVBQUUsR0FBRyxlQUFlLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUU7d0JBQzFDLENBQUMsQ0FBQyxJQUFJLENBQ1QsQ0FDRixDQUFDO29CQUNGLE1BQU07Z0JBRVIsS0FBSyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxRQUFRO29CQUNqQyxJQUFJLENBQUMsT0FBTzt5QkFDVCxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQzt5QkFDdEIsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ2IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLFdBQVcsQ0FBQyxXQUFXLENBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUNsQixNQUFNLENBQUMsTUFBTSxFQUNiLE1BQU0sQ0FDUCxDQUNGLENBQ0YsRUFDRCxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTt3QkFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLFdBQVcsQ0FBQyxXQUFXLENBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUNsQixNQUFNLENBQUMsTUFBTSxFQUNiLEtBQUssQ0FDTixDQUNGLENBQUM7d0JBQ0YsT0FBTyxFQUFFLEVBQUUsQ0FBQztvQkFDZCxDQUFDLENBQUMsQ0FDSDt5QkFDQSxTQUFTLEVBQUUsQ0FBQztvQkFDZixNQUFNO2dCQUVSLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sVUFBVTtvQkFDbkMsSUFBSSxDQUFDLE9BQU87eUJBQ1QsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQzt5QkFDeEMsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ2IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLFdBQVcsQ0FBQyxpQkFBaUIsQ0FDM0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQ2xCLE1BQU0sQ0FBQyxNQUFNLENBQ2QsQ0FDRixDQUNGLEVBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7d0JBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsaUJBQWlCLENBQzNCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUNsQixNQUFNLENBQUMsTUFBTSxFQUNiLEtBQUssQ0FDTixDQUNGLENBQUM7d0JBQ0YsT0FBTyxFQUFFLEVBQUUsQ0FBQztvQkFDZCxDQUFDLENBQUMsQ0FDSDt5QkFDQSxTQUFTLEVBQUUsQ0FBQztvQkFDZixNQUFNO2dCQUVSLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sVUFBVTtvQkFDbkMsSUFBSSxDQUFDLE9BQU87eUJBQ1QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7eUJBQ2xCLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNiLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsYUFBYSxDQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFDbEIsTUFBTSxDQUFDLEVBQUUsRUFDVCxNQUFNLENBQ1AsQ0FDRixDQUNGLEVBQ0QsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7d0JBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsYUFBYSxDQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFDbEIsTUFBTSxDQUFDLEVBQUUsRUFDVCxLQUFLLENBQ04sQ0FDRixDQUFDO3dCQUNGLE9BQU8sRUFBRSxFQUFFLENBQUM7b0JBQ2QsQ0FBQyxDQUFDLENBQ0g7eUJBQ0EsU0FBUyxFQUFFLENBQUM7b0JBQ2YsTUFBTTtnQkFFUixLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLFVBQVU7b0JBQ25DLElBQUksQ0FBQyxPQUFPO3lCQUNULGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO3lCQUMxQixJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUNQLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FDM0QsQ0FDRixFQUNELFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO3dCQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsV0FBVyxDQUFDLGFBQWEsQ0FDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQ2xCLE1BQU0sQ0FBQyxJQUFJLEVBQ1gsS0FBSyxDQUNOLENBQ0YsQ0FBQzt3QkFDRixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQzt3QkFDMUQsT0FBTyxFQUFFLEVBQUUsQ0FBQztvQkFDZCxDQUFDLENBQUMsQ0FDSDt5QkFDQSxTQUFTLEVBQUUsQ0FBQztvQkFDZixNQUFNO2dCQUVSLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCO29CQUMzQyxJQUFJLENBQUMsS0FBSzt5QkFDUCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUM7eUJBQ3hELFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO3dCQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTs0QkFDbkMsR0FBRyxNQUFNOzRCQUNULE1BQU0sRUFBRSxDQUFDO3lCQUNWLENBQUMsQ0FDSCxDQUFDO3dCQUVGLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUM5RSxDQUFDLENBQUMsQ0FBQztvQkFDTCxNQUFNO2dCQUVSLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCO29CQUMzQyxJQUFJLENBQUMsT0FBTzt5QkFDVCxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQzt5QkFDMUIsSUFBSSxDQUNILEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FDUCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsV0FBVyxDQUFDLG9CQUFvQixDQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFDbEIsTUFBTSxDQUFDLElBQUksQ0FDWixDQUNGLENBQ0YsRUFDRCxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTt3QkFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLFdBQVcsQ0FBQyxvQkFBb0IsQ0FDOUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQ2xCLE1BQU0sQ0FBQyxJQUFJLEVBQ1gsS0FBSyxDQUNOLENBQ0YsQ0FBQzt3QkFDRixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQzt3QkFDMUQsT0FBTyxFQUFFLEVBQUUsQ0FBQztvQkFDZCxDQUFDLENBQUMsQ0FDSDt5QkFDQSxTQUFTLEVBQUUsQ0FBQztvQkFDZixNQUFNO2dCQUVSLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sMEJBQTBCO29CQUNuRCxJQUFJLENBQUMsS0FBSzt5QkFDUCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUM7eUJBQ3hELFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO3dCQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTs0QkFDbkMsR0FBRyxNQUFNOzRCQUNULE1BQU0sRUFBRSxDQUFDO3lCQUNWLENBQUMsQ0FDSCxDQUFDO3dCQUVGLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUM5RSxDQUFDLENBQUMsQ0FBQztvQkFDTCxNQUFNO2dCQUVSLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sdUJBQXVCO29CQUNoRCxJQUFJLENBQUMsT0FBTzt5QkFDVCxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO3lCQUMvQixJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUNQLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsd0JBQXdCLENBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUNsQixNQUFNLENBQUMsS0FBSyxDQUNiLENBQ0YsQ0FDRixFQUNELFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO3dCQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsV0FBVyxDQUFDLHdCQUF3QixDQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFDbEIsTUFBTSxDQUFDLEtBQUssRUFDWixLQUFLLENBQ04sQ0FDRixDQUFDO3dCQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO3dCQUMxRCxPQUFPLEVBQUUsRUFBRSxDQUFDO29CQUNkLENBQUMsQ0FBQyxDQUNIO3lCQUNBLFNBQVMsRUFBRSxDQUFDO29CQUNmLE1BQU07Z0JBRVIsS0FBSyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSwrQkFBK0I7b0JBQ3hELElBQUksQ0FBQyxLQUFLO3lCQUNQLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQzt5QkFDeEQsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7d0JBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFOzRCQUNuQyxHQUFHLE1BQU07NEJBQ1QsTUFBTSxFQUFFLENBQUM7eUJBQ1YsQ0FBQyxDQUNILENBQUM7b0JBQ0osQ0FBQyxDQUFDLENBQUM7b0JBQ0wsTUFBTTtnQkFFUixLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLFVBQVU7b0JBQ25DLElBQUksQ0FBQyxPQUFPO3lCQUNULE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO3lCQUNqQixJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUNQLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixXQUFXLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FDekQsQ0FDRixFQUNELFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO3dCQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsV0FBVyxDQUFDLGFBQWEsQ0FDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQ2xCLE1BQU0sQ0FBQyxFQUFFLEVBQ1QsS0FBSyxDQUNOLENBQ0YsQ0FBQzt3QkFDRixPQUFPLEVBQUUsRUFBRSxDQUFDO29CQUNkLENBQUMsQ0FBQyxDQUNIO3lCQUNBLFNBQVMsRUFBRSxDQUFDO29CQUNmLE1BQU07Z0JBRVIsS0FBSyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxrQkFBa0I7b0JBQ3pDLElBQUksQ0FBQyxLQUFLO3lCQUNMLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQzt5QkFDeEQsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7d0JBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNmLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7NEJBQ2pDLEdBQUcsTUFBTTs0QkFDVCxNQUFNLEVBQUUsQ0FBQzt5QkFDWixDQUFDLENBQ0wsQ0FBQztvQkFDTixDQUFDLENBQUMsQ0FBQztvQkFDVCxNQUFNO2dCQUVSO29CQUNFLE1BQU07YUFDVDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7MkhBN1VVLFdBQVc7K0hBQVgsV0FBVzsyRkFBWCxXQUFXO2tCQUR2QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwicmVmbGVjdC1tZXRhZGF0YVwiO1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGZpcnN0LCB0YXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IG9mIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEFjdGlvbiwgQWN0aW9uc1N1YmplY3QsIHNlbGVjdCwgU3RhdGUsIFN0b3JlIH0gZnJvbSBcIkBuZ3J4L3N0b3JlXCI7XG5cbmltcG9ydCB7IENydWRTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL2NydWQvY3J1ZC5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBJRW50aXR5IH0gZnJvbSBcIkBzbWFydHNvZnQwMDEvZG9tYWluLWNvcmVcIjtcbmltcG9ydCAqIGFzIENydWRBY3Rpb25zIGZyb20gXCIuL2NydWQuYWN0aW9uc1wiO1xuaW1wb3J0IHsgQ3J1ZENvbmZpZyB9IGZyb20gXCIuLi9jcnVkLmNvbmZpZ1wiO1xuaW1wb3J0IHsgZ2V0Q3J1ZEZpbHRlciB9IGZyb20gXCIuL2NydWQuc2VsZWN0b3JzXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDcnVkRWZmZWN0czxUIGV4dGVuZHMgSUVudGl0eTxzdHJpbmc+PiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnNTdWJqZWN0LFxuICAgIHByaXZhdGUgc2VydmljZTogQ3J1ZFNlcnZpY2U8VD4sXG4gICAgcHJpdmF0ZSBjb25maWc6IENydWRDb25maWc8VD4sXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIHN0YXRlOiBTdGF0ZTxhbnk+XG4gICkge31cblxuICBpbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IG1ldGFkYXRhID0gUmVmbGVjdC5nZXRNZXRhZGF0YSh0aGlzLmNvbmZpZy5lbnRpdHksIENydWRFZmZlY3RzKTtcblxuICAgIGlmIChtZXRhZGF0YSkgcmV0dXJuO1xuXG4gICAgUmVmbGVjdC5kZWZpbmVNZXRhZGF0YSh0aGlzLmNvbmZpZy5lbnRpdHksIHRydWUsIENydWRFZmZlY3RzKTtcblxuICAgIHRoaXMuYWN0aW9ucyQuc3Vic2NyaWJlKChhY3Rpb246IEFjdGlvbiAmIGFueSkgPT4ge1xuICAgICAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICAgICAgICBjYXNlIGBbJHt0aGlzLmNvbmZpZy5lbnRpdHl9XSBDcmVhdGVgOlxuICAgICAgICAgIHRoaXMuc2VydmljZVxuICAgICAgICAgICAgLmNyZWF0ZShhY3Rpb24uaXRlbSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICB0YXAoKCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMuY3JlYXRlU3VjY2Vzcyh0aGlzLmNvbmZpZy5lbnRpdHksIGFjdGlvbi5pdGVtKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMuY3JlYXRlRmFpbHVyZShcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHJldHVybiBvZigpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIENyZWF0ZSBTdWNjZXNzYDpcbiAgICAgICAgICBjb25zdCBjcmVhdGVTdGF0ZSA9IHRoaXMuc3RhdGUuZ2V0VmFsdWUoKVt0aGlzLmNvbmZpZy5lbnRpdHldO1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICBDcnVkQWN0aW9ucy5yZWFkKFxuICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgIGNyZWF0ZVN0YXRlLmZpbHRlciA/IHsgLi4uY3JlYXRlU3RhdGUuZmlsdGVyLCBvZmZzZXQ6IDAgfSA6IG51bGxcbiAgICAgICAgICAgIClcbiAgICAgICAgICApO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIENyZWF0ZSBNYW55YDpcbiAgICAgICAgICB0aGlzLnNlcnZpY2VcbiAgICAgICAgICAgIC5jcmVhdGVNYW55KGFjdGlvbi5kYXRhLml0ZW1zLCBhY3Rpb24uZGF0YS5vcHRpb25zKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgIHRhcCgoKSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy5jcmVhdGVNYW55U3VjY2Vzcyh0aGlzLmNvbmZpZy5lbnRpdHksIHtcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IGFjdGlvbi5kYXRhLml0ZW1zLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBhY3Rpb24uZGF0YS5vcHRpb25zLFxuICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLmNyZWF0ZU1hbnlGYWlsdXJlKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICBpdGVtczogYWN0aW9uLmRhdGEuaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogYWN0aW9uLmRhdGEub3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHJldHVybiBvZigpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIENyZWF0ZSBNYW55IFN1Y2Nlc3NgOlxuICAgICAgICAgIGNvbnN0IGNyZWF0ZU1hbnlTdGF0ZSA9IHRoaXMuc3RhdGUuZ2V0VmFsdWUoKVt0aGlzLmNvbmZpZy5lbnRpdHldO1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICBDcnVkQWN0aW9ucy5yZWFkKFxuICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgIGNyZWF0ZU1hbnlTdGF0ZS5maWx0ZXJcbiAgICAgICAgICAgICAgICA/IHsgLi4uY3JlYXRlTWFueVN0YXRlLmZpbHRlciwgb2Zmc2V0OiAwIH1cbiAgICAgICAgICAgICAgICA6IG51bGxcbiAgICAgICAgICAgIClcbiAgICAgICAgICApO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIFJlYWRgOlxuICAgICAgICAgIHRoaXMuc2VydmljZVxuICAgICAgICAgICAgLmdldExpc3QoYWN0aW9uLmZpbHRlcilcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICB0YXAoKHJlc3VsdCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMucmVhZFN1Y2Nlc3MoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLmVudGl0eSxcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uLmZpbHRlcixcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0XG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy5yZWFkRmFpbHVyZShcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uZmlsdGVyLFxuICAgICAgICAgICAgICAgICAgICBlcnJvclxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKCk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBgWyR7dGhpcy5jb25maWcuZW50aXR5fV0gRXhwb3J0YDpcbiAgICAgICAgICB0aGlzLnNlcnZpY2VcbiAgICAgICAgICAgIC5leHBvcnRMaXN0KGFjdGlvbi5maWx0ZXIsIGFjdGlvbi5mb3JtYXQpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgdGFwKChyZXN1bHQpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLmV4cG9ydExpc3RTdWNjZXNzKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbi5maWx0ZXJcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLmV4cG9ydExpc3RGYWlsdXJlKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIGBbJHt0aGlzLmNvbmZpZy5lbnRpdHl9XSBTZWxlY3RgOlxuICAgICAgICAgIHRoaXMuc2VydmljZVxuICAgICAgICAgICAgLmdldEJ5SWQoYWN0aW9uLmlkKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgIHRhcCgocmVzdWx0KSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy5zZWxlY3RTdWNjZXNzKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbi5pZCxcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0XG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy5zZWxlY3RGYWlsdXJlKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbi5pZCxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHJldHVybiBvZigpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIFVwZGF0ZWA6XG4gICAgICAgICAgdGhpcy5zZXJ2aWNlXG4gICAgICAgICAgICAudXBkYXRlUGFydGlhbChhY3Rpb24uaXRlbSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICB0YXAoKCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMudXBkYXRlU3VjY2Vzcyh0aGlzLmNvbmZpZy5lbnRpdHksIGFjdGlvbi5pdGVtKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMudXBkYXRlRmFpbHVyZShcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMucmVhZCh0aGlzLmNvbmZpZy5lbnRpdHkpKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIGBbJHt0aGlzLmNvbmZpZy5lbnRpdHl9XSBVcGRhdGUgU3VjY2Vzc2A6XG4gICAgICAgICAgdGhpcy5zdG9yZVxuICAgICAgICAgICAgLnBpcGUoc2VsZWN0KGdldENydWRGaWx0ZXIodGhpcy5jb25maWcuZW50aXR5KSksIGZpcnN0KCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChmaWx0ZXIpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy5yZWFkKHRoaXMuY29uZmlnLmVudGl0eSwge1xuICAgICAgICAgICAgICAgICAgLi4uZmlsdGVyLFxuICAgICAgICAgICAgICAgICAgb2Zmc2V0OiAwLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChDcnVkQWN0aW9ucy5zZWxlY3QodGhpcy5jb25maWcuZW50aXR5LCBhY3Rpb24uaXRlbS5pZCkpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBgWyR7dGhpcy5jb25maWcuZW50aXR5fV0gVXBkYXRlIHBhcnRpYWxgOlxuICAgICAgICAgIHRoaXMuc2VydmljZVxuICAgICAgICAgICAgLnVwZGF0ZVBhcnRpYWwoYWN0aW9uLml0ZW0pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgdGFwKCgpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLnVwZGF0ZVBhcnRpYWxTdWNjZXNzKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbi5pdGVtXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy51cGRhdGVQYXJ0aWFsRmFpbHVyZShcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMucmVhZCh0aGlzLmNvbmZpZy5lbnRpdHkpKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIGBbJHt0aGlzLmNvbmZpZy5lbnRpdHl9XSBVcGRhdGUgcGFydGlhbCBTdWNjZXNzYDpcbiAgICAgICAgICB0aGlzLnN0b3JlXG4gICAgICAgICAgICAucGlwZShzZWxlY3QoZ2V0Q3J1ZEZpbHRlcih0aGlzLmNvbmZpZy5lbnRpdHkpKSwgZmlyc3QoKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGZpbHRlcikgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLnJlYWQodGhpcy5jb25maWcuZW50aXR5LCB7XG4gICAgICAgICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgICBvZmZzZXQ6IDAsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKENydWRBY3Rpb25zLnNlbGVjdCh0aGlzLmNvbmZpZy5lbnRpdHksIGFjdGlvbi5pdGVtLmlkKSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIGBbJHt0aGlzLmNvbmZpZy5lbnRpdHl9XSBVcGRhdGUgcGFydGlhbCBtYW55YDpcbiAgICAgICAgICB0aGlzLnNlcnZpY2VcbiAgICAgICAgICAgIC51cGRhdGVQYXJ0aWFsTWFueShhY3Rpb24uaXRlbXMpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgdGFwKCgpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLnVwZGF0ZVBhcnRpYWxNYW55U3VjY2VzcyhcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uaXRlbXNcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLnVwZGF0ZVBhcnRpYWxNYW55RmFpbHVyZShcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKENydWRBY3Rpb25zLnJlYWQodGhpcy5jb25maWcuZW50aXR5KSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKCk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBgWyR7dGhpcy5jb25maWcuZW50aXR5fV0gVXBkYXRlIHBhcnRpYWwgbWFueSBTdWNjZXNzYDpcbiAgICAgICAgICB0aGlzLnN0b3JlXG4gICAgICAgICAgICAucGlwZShzZWxlY3QoZ2V0Q3J1ZEZpbHRlcih0aGlzLmNvbmZpZy5lbnRpdHkpKSwgZmlyc3QoKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGZpbHRlcikgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLnJlYWQodGhpcy5jb25maWcuZW50aXR5LCB7XG4gICAgICAgICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgICBvZmZzZXQ6IDAsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIERlbGV0ZWA6XG4gICAgICAgICAgdGhpcy5zZXJ2aWNlXG4gICAgICAgICAgICAuZGVsZXRlKGFjdGlvbi5pZClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICB0YXAoKCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMuZGVsZXRlU3VjY2Vzcyh0aGlzLmNvbmZpZy5lbnRpdHksIGFjdGlvbi5pZClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLmRlbGV0ZUZhaWx1cmUoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLmVudGl0eSxcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uLmlkLFxuICAgICAgICAgICAgICAgICAgICBlcnJvclxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKCk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBgWyR7dGhpcy5jb25maWcuZW50aXR5fV0gRGVsZXRlIFN1Y2Nlc3NgOlxuICAgICAgICAgICAgdGhpcy5zdG9yZVxuICAgICAgICAgICAgICAgIC5waXBlKHNlbGVjdChnZXRDcnVkRmlsdGVyKHRoaXMuY29uZmlnLmVudGl0eSkpLCBmaXJzdCgpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGZpbHRlcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMucmVhZCh0aGlzLmNvbmZpZy5lbnRpdHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jcnVkL3NoZWxsL2FuZ3VsYXIvc3JjL2xpYi8rc3RhdGUvY3J1ZC5lZmZlY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sa0JBQWtCLENBQUM7QUFFMUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFCLE9BQU8sRUFBVSxjQUFjLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFM0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTVELE9BQU8sS0FBSyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFHakQsTUFBTSxPQUFPLFdBQVc7SUFDdEIsWUFDVSxRQUF3QixFQUN4QixPQUF1QixFQUN2QixNQUFxQixFQUNyQixLQUFpQixFQUNqQixLQUFpQjtRQUpqQixhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUN4QixZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN2QixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtJQUN4QixDQUFDO0lBRUosSUFBSTtRQUNGLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENB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QUMsS0FBSyxDQUFDLFFBQVEsQ0FDakIsV0FBVyxDQUFDLGFBQWEsQ0FDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQ2xCLE1BQU0sQ0FBQyxFQUFFLEVBQ1QsS0FBSyxDQUNOLENBQ0YsQ0FBQzt3QkFDRixPQUFPLEVBQUUsRUFBRSxDQUFDO29CQUNkLENBQUMsQ0FBQyxDQUNIO3lCQUNBLFNBQVMsRUFBRSxDQUFDO29CQUNmLE1BQU07Z0JBRVIsS0FBSyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxrQkFBa0I7b0JBQ3pDLElBQUksQ0FBQyxLQUFLO3lCQUNMLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQzt5QkFDeEQsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7d0JBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNmLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7NEJBQ2pDLEdBQUcsTUFBTTs0QkFDVCxNQUFNLEVBQUUsQ0FBQzt5QkFDWixDQUFDLENBQ0wsQ0FBQztvQkFDTixDQUFDLENBQUMsQ0FBQztvQkFDVCxNQUFNO2dCQUVSO29CQUNFLE1BQU07YUFDVDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztpSUE3VVUsV0FBVztxSUFBWCxXQUFXOzsyRkFBWCxXQUFXO2tCQUR2QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwicmVmbGVjdC1tZXRhZGF0YVwiO1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGZpcnN0LCB0YXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IG9mIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEFjdGlvbiwgQWN0aW9uc1N1YmplY3QsIHNlbGVjdCwgU3RhdGUsIFN0b3JlIH0gZnJvbSBcIkBuZ3J4L3N0b3JlXCI7XG5cbmltcG9ydCB7IENydWRTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL2NydWQvY3J1ZC5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBJRW50aXR5IH0gZnJvbSBcIkBzbWFydHNvZnQwMDEvZG9tYWluLWNvcmVcIjtcbmltcG9ydCAqIGFzIENydWRBY3Rpb25zIGZyb20gXCIuL2NydWQuYWN0aW9uc1wiO1xuaW1wb3J0IHsgQ3J1ZENvbmZpZyB9IGZyb20gXCIuLi9jcnVkLmNvbmZpZ1wiO1xuaW1wb3J0IHsgZ2V0Q3J1ZEZpbHRlciB9IGZyb20gXCIuL2NydWQuc2VsZWN0b3JzXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDcnVkRWZmZWN0czxUIGV4dGVuZHMgSUVudGl0eTxzdHJpbmc+PiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnNTdWJqZWN0LFxuICAgIHByaXZhdGUgc2VydmljZTogQ3J1ZFNlcnZpY2U8VD4sXG4gICAgcHJpdmF0ZSBjb25maWc6IENydWRDb25maWc8VD4sXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIHN0YXRlOiBTdGF0ZTxhbnk+XG4gICkge31cblxuICBpbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IG1ldGFkYXRhID0gUmVmbGVjdC5nZXRNZXRhZGF0YSh0aGlzLmNvbmZpZy5lbnRpdHksIENydWRFZmZlY3RzKTtcblxuICAgIGlmIChtZXRhZGF0YSkgcmV0dXJuO1xuXG4gICAgUmVmbGVjdC5kZWZpbmVNZXRhZGF0YSh0aGlzLmNvbmZpZy5lbnRpdHksIHRydWUsIENydWRFZmZlY3RzKTtcblxuICAgIHRoaXMuYWN0aW9ucyQuc3Vic2NyaWJlKChhY3Rpb246IEFjdGlvbiAmIGFueSkgPT4ge1xuICAgICAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICAgICAgICBjYXNlIGBbJHt0aGlzLmNvbmZpZy5lbnRpdHl9XSBDcmVhdGVgOlxuICAgICAgICAgIHRoaXMuc2VydmljZVxuICAgICAgICAgICAgLmNyZWF0ZShhY3Rpb24uaXRlbSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICB0YXAoKCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMuY3JlYXRlU3VjY2Vzcyh0aGlzLmNvbmZpZy5lbnRpdHksIGFjdGlvbi5pdGVtKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMuY3JlYXRlRmFpbHVyZShcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHJldHVybiBvZigpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIENyZWF0ZSBTdWNjZXNzYDpcbiAgICAgICAgICBjb25zdCBjcmVhdGVTdGF0ZSA9IHRoaXMuc3RhdGUuZ2V0VmFsdWUoKVt0aGlzLmNvbmZpZy5lbnRpdHldO1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICBDcnVkQWN0aW9ucy5yZWFkKFxuICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgIGNyZWF0ZVN0YXRlLmZpbHRlciA/IHsgLi4uY3JlYXRlU3RhdGUuZmlsdGVyLCBvZmZzZXQ6IDAgfSA6IG51bGxcbiAgICAgICAgICAgIClcbiAgICAgICAgICApO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIENyZWF0ZSBNYW55YDpcbiAgICAgICAgICB0aGlzLnNlcnZpY2VcbiAgICAgICAgICAgIC5jcmVhdGVNYW55KGFjdGlvbi5kYXRhLml0ZW1zLCBhY3Rpb24uZGF0YS5vcHRpb25zKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgIHRhcCgoKSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy5jcmVhdGVNYW55U3VjY2Vzcyh0aGlzLmNvbmZpZy5lbnRpdHksIHtcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IGFjdGlvbi5kYXRhLml0ZW1zLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBhY3Rpb24uZGF0YS5vcHRpb25zLFxuICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLmNyZWF0ZU1hbnlGYWlsdXJlKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICBpdGVtczogYWN0aW9uLmRhdGEuaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogYWN0aW9uLmRhdGEub3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHJldHVybiBvZigpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIENyZWF0ZSBNYW55IFN1Y2Nlc3NgOlxuICAgICAgICAgIGNvbnN0IGNyZWF0ZU1hbnlTdGF0ZSA9IHRoaXMuc3RhdGUuZ2V0VmFsdWUoKVt0aGlzLmNvbmZpZy5lbnRpdHldO1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICBDcnVkQWN0aW9ucy5yZWFkKFxuICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgIGNyZWF0ZU1hbnlTdGF0ZS5maWx0ZXJcbiAgICAgICAgICAgICAgICA/IHsgLi4uY3JlYXRlTWFueVN0YXRlLmZpbHRlciwgb2Zmc2V0OiAwIH1cbiAgICAgICAgICAgICAgICA6IG51bGxcbiAgICAgICAgICAgIClcbiAgICAgICAgICApO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIFJlYWRgOlxuICAgICAgICAgIHRoaXMuc2VydmljZVxuICAgICAgICAgICAgLmdldExpc3QoYWN0aW9uLmZpbHRlcilcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICB0YXAoKHJlc3VsdCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMucmVhZFN1Y2Nlc3MoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLmVudGl0eSxcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uLmZpbHRlcixcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0XG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy5yZWFkRmFpbHVyZShcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uZmlsdGVyLFxuICAgICAgICAgICAgICAgICAgICBlcnJvclxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKCk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBgWyR7dGhpcy5jb25maWcuZW50aXR5fV0gRXhwb3J0YDpcbiAgICAgICAgICB0aGlzLnNlcnZpY2VcbiAgICAgICAgICAgIC5leHBvcnRMaXN0KGFjdGlvbi5maWx0ZXIsIGFjdGlvbi5mb3JtYXQpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgdGFwKChyZXN1bHQpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLmV4cG9ydExpc3RTdWNjZXNzKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbi5maWx0ZXJcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLmV4cG9ydExpc3RGYWlsdXJlKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIGBbJHt0aGlzLmNvbmZpZy5lbnRpdHl9XSBTZWxlY3RgOlxuICAgICAgICAgIHRoaXMuc2VydmljZVxuICAgICAgICAgICAgLmdldEJ5SWQoYWN0aW9uLmlkKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgIHRhcCgocmVzdWx0KSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy5zZWxlY3RTdWNjZXNzKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbi5pZCxcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0XG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy5zZWxlY3RGYWlsdXJlKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbi5pZCxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHJldHVybiBvZigpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIFVwZGF0ZWA6XG4gICAgICAgICAgdGhpcy5zZXJ2aWNlXG4gICAgICAgICAgICAudXBkYXRlUGFydGlhbChhY3Rpb24uaXRlbSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICB0YXAoKCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMudXBkYXRlU3VjY2Vzcyh0aGlzLmNvbmZpZy5lbnRpdHksIGFjdGlvbi5pdGVtKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMudXBkYXRlRmFpbHVyZShcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMucmVhZCh0aGlzLmNvbmZpZy5lbnRpdHkpKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIGBbJHt0aGlzLmNvbmZpZy5lbnRpdHl9XSBVcGRhdGUgU3VjY2Vzc2A6XG4gICAgICAgICAgdGhpcy5zdG9yZVxuICAgICAgICAgICAgLnBpcGUoc2VsZWN0KGdldENydWRGaWx0ZXIodGhpcy5jb25maWcuZW50aXR5KSksIGZpcnN0KCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChmaWx0ZXIpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy5yZWFkKHRoaXMuY29uZmlnLmVudGl0eSwge1xuICAgICAgICAgICAgICAgICAgLi4uZmlsdGVyLFxuICAgICAgICAgICAgICAgICAgb2Zmc2V0OiAwLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChDcnVkQWN0aW9ucy5zZWxlY3QodGhpcy5jb25maWcuZW50aXR5LCBhY3Rpb24uaXRlbS5pZCkpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBgWyR7dGhpcy5jb25maWcuZW50aXR5fV0gVXBkYXRlIHBhcnRpYWxgOlxuICAgICAgICAgIHRoaXMuc2VydmljZVxuICAgICAgICAgICAgLnVwZGF0ZVBhcnRpYWwoYWN0aW9uLml0ZW0pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgdGFwKCgpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLnVwZGF0ZVBhcnRpYWxTdWNjZXNzKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5lbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbi5pdGVtXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgICAgICBDcnVkQWN0aW9ucy51cGRhdGVQYXJ0aWFsRmFpbHVyZShcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uaXRlbSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMucmVhZCh0aGlzLmNvbmZpZy5lbnRpdHkpKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIGBbJHt0aGlzLmNvbmZpZy5lbnRpdHl9XSBVcGRhdGUgcGFydGlhbCBTdWNjZXNzYDpcbiAgICAgICAgICB0aGlzLnN0b3JlXG4gICAgICAgICAgICAucGlwZShzZWxlY3QoZ2V0Q3J1ZEZpbHRlcih0aGlzLmNvbmZpZy5lbnRpdHkpKSwgZmlyc3QoKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGZpbHRlcikgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLnJlYWQodGhpcy5jb25maWcuZW50aXR5LCB7XG4gICAgICAgICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgICBvZmZzZXQ6IDAsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKENydWRBY3Rpb25zLnNlbGVjdCh0aGlzLmNvbmZpZy5lbnRpdHksIGFjdGlvbi5pdGVtLmlkKSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIGBbJHt0aGlzLmNvbmZpZy5lbnRpdHl9XSBVcGRhdGUgcGFydGlhbCBtYW55YDpcbiAgICAgICAgICB0aGlzLnNlcnZpY2VcbiAgICAgICAgICAgIC51cGRhdGVQYXJ0aWFsTWFueShhY3Rpb24uaXRlbXMpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgdGFwKCgpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLnVwZGF0ZVBhcnRpYWxNYW55U3VjY2VzcyhcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uaXRlbXNcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLnVwZGF0ZVBhcnRpYWxNYW55RmFpbHVyZShcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcuZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb24uaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgIGVycm9yXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKENydWRBY3Rpb25zLnJlYWQodGhpcy5jb25maWcuZW50aXR5KSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKCk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBgWyR7dGhpcy5jb25maWcuZW50aXR5fV0gVXBkYXRlIHBhcnRpYWwgbWFueSBTdWNjZXNzYDpcbiAgICAgICAgICB0aGlzLnN0b3JlXG4gICAgICAgICAgICAucGlwZShzZWxlY3QoZ2V0Q3J1ZEZpbHRlcih0aGlzLmNvbmZpZy5lbnRpdHkpKSwgZmlyc3QoKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGZpbHRlcikgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLnJlYWQodGhpcy5jb25maWcuZW50aXR5LCB7XG4gICAgICAgICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgICBvZmZzZXQ6IDAsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgYFske3RoaXMuY29uZmlnLmVudGl0eX1dIERlbGV0ZWA6XG4gICAgICAgICAgdGhpcy5zZXJ2aWNlXG4gICAgICAgICAgICAuZGVsZXRlKGFjdGlvbi5pZClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICB0YXAoKCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMuZGVsZXRlU3VjY2Vzcyh0aGlzLmNvbmZpZy5lbnRpdHksIGFjdGlvbi5pZClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgICAgIENydWRBY3Rpb25zLmRlbGV0ZUZhaWx1cmUoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLmVudGl0eSxcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uLmlkLFxuICAgICAgICAgICAgICAgICAgICBlcnJvclxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKCk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBgWyR7dGhpcy5jb25maWcuZW50aXR5fV0gRGVsZXRlIFN1Y2Nlc3NgOlxuICAgICAgICAgICAgdGhpcy5zdG9yZVxuICAgICAgICAgICAgICAgIC5waXBlKHNlbGVjdChnZXRDcnVkRmlsdGVyKHRoaXMuY29uZmlnLmVudGl0eSkpLCBmaXJzdCgpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGZpbHRlcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICAgICAgICAgICAgQ3J1ZEFjdGlvbnMucmVhZCh0aGlzLmNvbmZpZy5lbnRpdHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -82,10 +82,10 @@ export class CrudFacade {
82
82
  return NgrxStoreService.store;
83
83
  return this.store;
84
84
  }
85
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CrudFacade, deps: [{ token: i1.Store }, { token: i2.CrudConfig }], target: i0.ɵɵFactoryTarget.Injectable }); }
86
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CrudFacade }); }
85
87
  }
86
- /** @nocollapse */ CrudFacade.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CrudFacade, deps: [{ token: i1.Store }, { token: i2.CrudConfig }], target: i0.ɵɵFactoryTarget.Injectable });
87
- /** @nocollapse */ CrudFacade.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CrudFacade });
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CrudFacade, decorators: [{
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CrudFacade, decorators: [{
89
89
  type: Injectable
90
90
  }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.CrudConfig }]; } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC5mYWNhZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NydWQvc2hlbGwvYW5ndWxhci9zcmMvbGliLytzdGF0ZS9jcnVkLmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxLQUFLLGFBQWEsTUFBTSxrQkFBa0IsQ0FBQztBQUVsRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQUl2RCxNQUFNLE9BQU8sVUFBVTtJQWdEckIsWUFBb0IsS0FBaUIsRUFBVSxNQUFxQjtRQUFoRCxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQTFDcEUsWUFBTyxHQUF3QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDNUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUN4RCxDQUFDO1FBQ0YsYUFBUSxHQUF3QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDN0MsTUFBTSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUN2RCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNiLENBQUM7UUFDRixjQUFTLEdBQWtCLElBQUks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LENBQUM7WUFDekIsS0FBSyxFQUFFLE1BQU0sSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQ3pELENBQUM7UUFFRixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQVU7UUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWU7UUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxNQUFNLENBQUMsSUFBTztRQUNaLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBc0IsSUFBSSxFQUFFLE1BQU0sR0FBRyxJQUFJO1FBQzlDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRUQsYUFBYSxDQUFDLElBQWlDO1FBQzdDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUFvQztRQUNwRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRCxNQUFNLENBQUMsRUFBVTtRQUNmLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFTyxRQUFRO1FBQ2QsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLO1lBQUUsT0FBTyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7UUFFMUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7OzBIQXBIVSxVQUFVOzhIQUFWLFVBQVU7MkZBQVYsVUFBVTtrQkFEdEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNlbGVjdCwgU3RvcmUgfSBmcm9tIFwiQG5ncngvc3RvcmVcIjtcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0ICogYXMgXyBmcm9tIFwibG9kYXNoXCI7XG5cbmltcG9ydCB7IElFbnRpdHkgfSBmcm9tIFwiQHNtYXJ0c29mdDAwMS9kb21haW4tY29yZVwiO1xuXG5pbXBvcnQgeyBDcnVkQ29uZmlnIH0gZnJvbSBcIi4uL2NydWQuY29uZmlnXCI7XG5pbXBvcnQgKiBhcyBDcnVkQWN0aW9ucyBmcm9tIFwiLi9jcnVkLmFjdGlvbnNcIjtcbmltcG9ydCAqIGFzIENydWRTZWxlY3RvcnMgZnJvbSBcIi4vY3J1ZC5zZWxlY3RvcnNcIjtcbmltcG9ydCB7SUNydWRDcmVhdGVNYW55T3B0aW9ucywgSUNydWRGaWx0ZXJ9IGZyb20gXCIuLi9tb2RlbHMvaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHtOZ3J4U3RvcmVTZXJ2aWNlfSBmcm9tIFwiQHNtYXJ0c29mdDAwMS9hbmd1bGFyXCI7XG5cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENydWRGYWNhZGU8VCBleHRlbmRzIElFbnRpdHk8c3RyaW5nPj4ge1xuICBzZWxlY3RlZDogVDtcbiAgbXVsdGlTZWxlY3RlZDogQXJyYXk8VD47XG4gIGxpc3Q6IEFycmF5PFQ+O1xuICBmaWx0ZXI6IElDcnVkRmlsdGVyO1xuXG4gIGxvYWRlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgc2VsZWN0KENydWRTZWxlY3RvcnMuZ2V0Q3J1ZExvYWRlZCh0aGlzLmNvbmZpZy5lbnRpdHkpKVxuICApO1xuICBsb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuc3RvcmUucGlwZShcbiAgICBzZWxlY3QoQ3J1ZFNlbGVjdG9ycy5nZXRDcnVkTG9hZGVkKHRoaXMuY29uZmlnLmVudGl0eSkpLFxuICAgIG1hcChsID0+ICFsKVxuICApO1xuICBzZWxlY3RlZCQ6IE9ic2VydmFibGU8VD4gPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgc2VsZWN0KENydWRTZWxlY3RvcnMuZ2V0Q3J1ZFNlbGVjdGVkKHRoaXMuY29uZmlnLmVudGl0eSkpLFxuICAgIHRhcChzID0+IHtcbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSBzO1xuICAgIH0pXG4gICk7XG4gIG11bHRpU2VsZWN0ZWQkOiBPYnNlcnZhYmxlPFRbXT4gPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgICBzZWxlY3QoQ3J1ZFNlbGVjdG9ycy5nZXRDcnVkTXVsdGlTZWxlY3RlZCh0aGlzLmNvbmZpZy5lbnRpdHkpKSxcbiAgICAgIHRhcChzID0+IHtcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdGVkID0gcztcbiAgICAgIH0pXG4gICk7XG4gIGxpc3QkOiBPYnNlcnZhYmxlPFRbXT4gPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgc2VsZWN0KENydWRTZWxlY3RvcnMuZ2V0Q3J1ZExpc3QodGhpcy5jb25maWcuZW50aXR5KSksXG4gICAgdGFwKGwgPT4ge1xuICAgICAgdGhpcy5saXN0ID0gbDtcbiAgICB9KVxuICApO1xuICBmaWx0ZXIkOiBPYnNlcnZhYmxlPElDcnVkRmlsdGVyPiA9IHRoaXMuc3RvcmUucGlwZShcbiAgICBzZWxlY3QoQ3J1ZFNlbGVjdG9ycy5nZXRDcnVkRmlsdGVyKHRoaXMuY29uZmlnLmVudGl0eSkpLFxuICAgIHRhcChmID0+IHtcbiAgICAgIHRoaXMuZmlsdGVyID0gZjtcbiAgICB9KVxuICApO1xuICB0b3RhbENvdW50JDogT2JzZXJ2YWJsZTxudW1iZXI+ID0gdGhpcy5zdG9yZS5waXBlKFxuICAgIHNlbGVjdChDcnVkU2VsZWN0b3JzLmdldENydWRUb3RhbENvdW50KHRoaXMuY29uZmlnLmVudGl0eSkpXG4gICk7XG4gIGxpbmtzJDogT2JzZXJ2YWJsZTxhbnk+ID0gdGhpcy5zdG9yZS5waXBlKFxuICAgIHNlbGVjdChDcnVkU2VsZWN0b3JzLmdldENydWRMaW5rcyh0aGlzLmNvbmZpZy5lbnRpdHkpKVxuICApO1xuXG4gIGVycm9yJDogT2JzZXJ2YWJsZTxhbnk+ID0gdGhpcy5zdG9yZS5waXBlKFxuICAgICAgc2VsZWN0KENydWRTZWxlY3RvcnMuZ2V0Q3J1ZEVycm9yKHRoaXMuY29uZmlnLmVudGl0eSkpXG4gICk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PiwgcHJpdmF0ZSBjb25maWc6IENydWRDb25maWc8VD4pIHtcbiAgICBpZiAoTmdyeFN0b3JlU2VydmljZS5zdG9yZSkge1xuICAgICAgdGhpcy5zdG9yZSA9IE5ncnhTdG9yZVNlcnZpY2Uuc3RvcmU7XG4gICAgfVxuICB9XG5cbiAgY3JlYXRlKGl0ZW06IFQpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKENydWRBY3Rpb25zLmNyZWF0ZSh0aGlzLmNvbmZpZy5lbnRpdHksIGl0ZW0pKTtcbiAgfVxuXG4gIGNyZWF0ZU1hbnkoaXRlbXM6IEFycmF5PFQ+LCBvcHRpb25zOiBJQ3J1ZENyZWF0ZU1hbnlPcHRpb25zKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChDcnVkQWN0aW9ucy5jcmVhdGVNYW55KHRoaXMuY29uZmlnLmVudGl0eSwgeyBpdGVtcywgb3B0aW9ucyB9KSk7XG4gIH1cblxuICByZWFkKGZpbHRlcjogSUNydWRGaWx0ZXIgPSBudWxsKTogdm9pZCB7XG4gICAgbGV0IGJhc2VRdWVyeSA9IFtdO1xuICAgIGlmICh0aGlzLmNvbmZpZy5iYXNlUXVlcnkpIHtcbiAgICAgIGJhc2VRdWVyeSA9IHRoaXMuY29uZmlnLmJhc2VRdWVyeTtcbiAgICB9XG5cbiAgICBjb25zdCBmdWxsRmlsdGVyID0ge1xuICAgICAgLi4uKGZpbHRlciA/IGZpbHRlciA6IHt9KSxcbiAgICAgIHF1ZXJ5OiBmaWx0ZXIgJiYgZmlsdGVyLnF1ZXJ5ID8gZmlsdGVyLnF1ZXJ5IDogYmFzZVF1ZXJ5XG4gICAgfTtcblxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMucmVhZCh0aGlzLmNvbmZpZy5lbnRpdHksIGZ1bGxGaWx0ZXIpKTtcbiAgfVxuXG4gIGNsZWFyKCk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMuY2xlYXIodGhpcy5jb25maWcuZW50aXR5KSk7XG4gIH1cblxuICBzZWxlY3QoaWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMuc2VsZWN0KHRoaXMuY29uZmlnLmVudGl0eSwgaWQpKTtcbiAgfVxuXG4gIHVuc2VsZWN0KCk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMudW5zZWxlY3QodGhpcy5jb25maWcuZW50aXR5KSk7XG4gIH1cblxuICBtdWx0aVNlbGVjdChpdGVtczogQXJyYXk8VD4pOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKENydWRBY3Rpb25zLm11bHRpU2VsZWN0KHRoaXMuY29uZmlnLmVudGl0eSwgaXRlbXMpKTtcbiAgfVxuXG4gIHVwZGF0ZShpdGVtOiBUKTogdm9pZCB7XG4gICAgdGhpcy5nZXRTdG9yZSgpLmRpc3BhdGNoKENydWRBY3Rpb25zLnVwZGF0ZSh0aGlzLmNvbmZpZy5lbnRpdHksIGl0ZW0pKTtcbiAgfVxuXG4gIGV4cG9ydChmaWx0ZXI6IElDcnVkRmlsdGVyID0gbnVsbCwgZm9ybWF0ID0gbnVsbCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0U3RvcmUoKS5kaXNwYXRjaChDcnVkQWN0aW9ucy5leHBvcnRMaXN0KHRoaXMuY29uZmlnLmVudGl0eSwgZmlsdGVyLCBmb3JtYXQpKTtcbiAgfVxuXG4gIHVwZGF0ZVBhcnRpYWwoaXRlbTogUGFydGlhbDxUPiAmIHsgaWQ6IHN0cmluZyB9KTogdm9pZCB7XG4gICAgdGhpcy5nZXRTdG9yZSgpLmRpc3BhdGNoKENydWRBY3Rpb25zLnVwZGF0ZVBhcnRpYWwodGhpcy5jb25maWcuZW50aXR5LCBpdGVtKSk7XG4gIH1cblxuICB1cGRhdGVQYXJ0aWFsTWFueShpdGVtczogKFBhcnRpYWw8VD4gJiB7aWQ6IHN0cmluZ30pW10pIHtcbiAgICB0aGlzLmdldFN0b3JlKCkuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMudXBkYXRlUGFydGlhbE1hbnkodGhpcy5jb25maWcuZW50aXR5LCBpdGVtcykpO1xuICB9XG5cbiAgZGVsZXRlKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmdldFN0b3JlKCkuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMuZGVsZXRlSXRlbSh0aGlzLmNvbmZpZy5lbnRpdHksIGlkKSk7XG4gIH1cblxuICBwcml2YXRlIGdldFN0b3JlKCk6IFN0b3JlIHtcbiAgICBpZiAoTmdyeFN0b3JlU2VydmljZS5zdG9yZSkgcmV0dXJuIE5ncnhTdG9yZVNlcnZpY2Uuc3RvcmU7XG5cbiAgICByZXR1cm4gdGhpcy5zdG9yZTtcbiAgfVxufVxuIl19
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC5mYWNhZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NydWQvc2hlbGwvYW5ndWxhci9zcmMvbGliLytzdGF0ZS9jcnVkLmZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxLQUFLLGFBQWEsTUFBTSxrQkFBa0IsQ0FBQztBQUVsRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQUl2RCxNQUFNLE9BQU8sVUFBVTtJQWdEckIsWUFBb0IsS0FBaUIsRUFBVSxNQUFxQjtRQUFoRCxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQTFDcEUsWUFBTyxHQUF3QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDNUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUN4RCxDQUFDO1FBQ0YsYUFBUSxHQUF3QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDN0MsTUFBTSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUN2RCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNiLENBQUM7UUFDRixjQUFTLEdBQWtCLElBQUks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LENBQUM7WUFDekIsS0FBSyxFQUFFLE1BQU0sSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQ3pELENBQUM7UUFFRixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQVU7UUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWU7UUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxNQUFNLENBQUMsSUFBTztRQUNaLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBc0IsSUFBSSxFQUFFLE1BQU0sR0FBRyxJQUFJO1FBQzlDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRUQsYUFBYSxDQUFDLElBQWlDO1FBQzdDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUFvQztRQUNwRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRCxNQUFNLENBQUMsRUFBVTtRQUNmLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFTyxRQUFRO1FBQ2QsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLO1lBQUUsT0FBTyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7UUFFMUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7aUlBcEhVLFVBQVU7cUlBQVYsVUFBVTs7MkZBQVYsVUFBVTtrQkFEdEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNlbGVjdCwgU3RvcmUgfSBmcm9tIFwiQG5ncngvc3RvcmVcIjtcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBtYXAsIHRhcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0ICogYXMgXyBmcm9tIFwibG9kYXNoXCI7XG5cbmltcG9ydCB7IElFbnRpdHkgfSBmcm9tIFwiQHNtYXJ0c29mdDAwMS9kb21haW4tY29yZVwiO1xuXG5pbXBvcnQgeyBDcnVkQ29uZmlnIH0gZnJvbSBcIi4uL2NydWQuY29uZmlnXCI7XG5pbXBvcnQgKiBhcyBDcnVkQWN0aW9ucyBmcm9tIFwiLi9jcnVkLmFjdGlvbnNcIjtcbmltcG9ydCAqIGFzIENydWRTZWxlY3RvcnMgZnJvbSBcIi4vY3J1ZC5zZWxlY3RvcnNcIjtcbmltcG9ydCB7SUNydWRDcmVhdGVNYW55T3B0aW9ucywgSUNydWRGaWx0ZXJ9IGZyb20gXCIuLi9tb2RlbHMvaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHtOZ3J4U3RvcmVTZXJ2aWNlfSBmcm9tIFwiQHNtYXJ0c29mdDAwMS9hbmd1bGFyXCI7XG5cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENydWRGYWNhZGU8VCBleHRlbmRzIElFbnRpdHk8c3RyaW5nPj4ge1xuICBzZWxlY3RlZDogVDtcbiAgbXVsdGlTZWxlY3RlZDogQXJyYXk8VD47XG4gIGxpc3Q6IEFycmF5PFQ+O1xuICBmaWx0ZXI6IElDcnVkRmlsdGVyO1xuXG4gIGxvYWRlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgc2VsZWN0KENydWRTZWxlY3RvcnMuZ2V0Q3J1ZExvYWRlZCh0aGlzLmNvbmZpZy5lbnRpdHkpKVxuICApO1xuICBsb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuc3RvcmUucGlwZShcbiAgICBzZWxlY3QoQ3J1ZFNlbGVjdG9ycy5nZXRDcnVkTG9hZGVkKHRoaXMuY29uZmlnLmVudGl0eSkpLFxuICAgIG1hcChsID0+ICFsKVxuICApO1xuICBzZWxlY3RlZCQ6IE9ic2VydmFibGU8VD4gPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgc2VsZWN0KENydWRTZWxlY3RvcnMuZ2V0Q3J1ZFNlbGVjdGVkKHRoaXMuY29uZmlnLmVudGl0eSkpLFxuICAgIHRhcChzID0+IHtcbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSBzO1xuICAgIH0pXG4gICk7XG4gIG11bHRpU2VsZWN0ZWQkOiBPYnNlcnZhYmxlPFRbXT4gPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgICBzZWxlY3QoQ3J1ZFNlbGVjdG9ycy5nZXRDcnVkTXVsdGlTZWxlY3RlZCh0aGlzLmNvbmZpZy5lbnRpdHkpKSxcbiAgICAgIHRhcChzID0+IHtcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdGVkID0gcztcbiAgICAgIH0pXG4gICk7XG4gIGxpc3QkOiBPYnNlcnZhYmxlPFRbXT4gPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgc2VsZWN0KENydWRTZWxlY3RvcnMuZ2V0Q3J1ZExpc3QodGhpcy5jb25maWcuZW50aXR5KSksXG4gICAgdGFwKGwgPT4ge1xuICAgICAgdGhpcy5saXN0ID0gbDtcbiAgICB9KVxuICApO1xuICBmaWx0ZXIkOiBPYnNlcnZhYmxlPElDcnVkRmlsdGVyPiA9IHRoaXMuc3RvcmUucGlwZShcbiAgICBzZWxlY3QoQ3J1ZFNlbGVjdG9ycy5nZXRDcnVkRmlsdGVyKHRoaXMuY29uZmlnLmVudGl0eSkpLFxuICAgIHRhcChmID0+IHtcbiAgICAgIHRoaXMuZmlsdGVyID0gZjtcbiAgICB9KVxuICApO1xuICB0b3RhbENvdW50JDogT2JzZXJ2YWJsZTxudW1iZXI+ID0gdGhpcy5zdG9yZS5waXBlKFxuICAgIHNlbGVjdChDcnVkU2VsZWN0b3JzLmdldENydWRUb3RhbENvdW50KHRoaXMuY29uZmlnLmVudGl0eSkpXG4gICk7XG4gIGxpbmtzJDogT2JzZXJ2YWJsZTxhbnk+ID0gdGhpcy5zdG9yZS5waXBlKFxuICAgIHNlbGVjdChDcnVkU2VsZWN0b3JzLmdldENydWRMaW5rcyh0aGlzLmNvbmZpZy5lbnRpdHkpKVxuICApO1xuXG4gIGVycm9yJDogT2JzZXJ2YWJsZTxhbnk+ID0gdGhpcy5zdG9yZS5waXBlKFxuICAgICAgc2VsZWN0KENydWRTZWxlY3RvcnMuZ2V0Q3J1ZEVycm9yKHRoaXMuY29uZmlnLmVudGl0eSkpXG4gICk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PiwgcHJpdmF0ZSBjb25maWc6IENydWRDb25maWc8VD4pIHtcbiAgICBpZiAoTmdyeFN0b3JlU2VydmljZS5zdG9yZSkge1xuICAgICAgdGhpcy5zdG9yZSA9IE5ncnhTdG9yZVNlcnZpY2Uuc3RvcmU7XG4gICAgfVxuICB9XG5cbiAgY3JlYXRlKGl0ZW06IFQpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKENydWRBY3Rpb25zLmNyZWF0ZSh0aGlzLmNvbmZpZy5lbnRpdHksIGl0ZW0pKTtcbiAgfVxuXG4gIGNyZWF0ZU1hbnkoaXRlbXM6IEFycmF5PFQ+LCBvcHRpb25zOiBJQ3J1ZENyZWF0ZU1hbnlPcHRpb25zKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChDcnVkQWN0aW9ucy5jcmVhdGVNYW55KHRoaXMuY29uZmlnLmVudGl0eSwgeyBpdGVtcywgb3B0aW9ucyB9KSk7XG4gIH1cblxuICByZWFkKGZpbHRlcjogSUNydWRGaWx0ZXIgPSBudWxsKTogdm9pZCB7XG4gICAgbGV0IGJhc2VRdWVyeSA9IFtdO1xuICAgIGlmICh0aGlzLmNvbmZpZy5iYXNlUXVlcnkpIHtcbiAgICAgIGJhc2VRdWVyeSA9IHRoaXMuY29uZmlnLmJhc2VRdWVyeTtcbiAgICB9XG5cbiAgICBjb25zdCBmdWxsRmlsdGVyID0ge1xuICAgICAgLi4uKGZpbHRlciA/IGZpbHRlciA6IHt9KSxcbiAgICAgIHF1ZXJ5OiBmaWx0ZXIgJiYgZmlsdGVyLnF1ZXJ5ID8gZmlsdGVyLnF1ZXJ5IDogYmFzZVF1ZXJ5XG4gICAgfTtcblxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMucmVhZCh0aGlzLmNvbmZpZy5lbnRpdHksIGZ1bGxGaWx0ZXIpKTtcbiAgfVxuXG4gIGNsZWFyKCk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMuY2xlYXIodGhpcy5jb25maWcuZW50aXR5KSk7XG4gIH1cblxuICBzZWxlY3QoaWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMuc2VsZWN0KHRoaXMuY29uZmlnLmVudGl0eSwgaWQpKTtcbiAgfVxuXG4gIHVuc2VsZWN0KCk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMudW5zZWxlY3QodGhpcy5jb25maWcuZW50aXR5KSk7XG4gIH1cblxuICBtdWx0aVNlbGVjdChpdGVtczogQXJyYXk8VD4pOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKENydWRBY3Rpb25zLm11bHRpU2VsZWN0KHRoaXMuY29uZmlnLmVudGl0eSwgaXRlbXMpKTtcbiAgfVxuXG4gIHVwZGF0ZShpdGVtOiBUKTogdm9pZCB7XG4gICAgdGhpcy5nZXRTdG9yZSgpLmRpc3BhdGNoKENydWRBY3Rpb25zLnVwZGF0ZSh0aGlzLmNvbmZpZy5lbnRpdHksIGl0ZW0pKTtcbiAgfVxuXG4gIGV4cG9ydChmaWx0ZXI6IElDcnVkRmlsdGVyID0gbnVsbCwgZm9ybWF0ID0gbnVsbCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0U3RvcmUoKS5kaXNwYXRjaChDcnVkQWN0aW9ucy5leHBvcnRMaXN0KHRoaXMuY29uZmlnLmVudGl0eSwgZmlsdGVyLCBmb3JtYXQpKTtcbiAgfVxuXG4gIHVwZGF0ZVBhcnRpYWwoaXRlbTogUGFydGlhbDxUPiAmIHsgaWQ6IHN0cmluZyB9KTogdm9pZCB7XG4gICAgdGhpcy5nZXRTdG9yZSgpLmRpc3BhdGNoKENydWRBY3Rpb25zLnVwZGF0ZVBhcnRpYWwodGhpcy5jb25maWcuZW50aXR5LCBpdGVtKSk7XG4gIH1cblxuICB1cGRhdGVQYXJ0aWFsTWFueShpdGVtczogKFBhcnRpYWw8VD4gJiB7aWQ6IHN0cmluZ30pW10pIHtcbiAgICB0aGlzLmdldFN0b3JlKCkuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMudXBkYXRlUGFydGlhbE1hbnkodGhpcy5jb25maWcuZW50aXR5LCBpdGVtcykpO1xuICB9XG5cbiAgZGVsZXRlKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmdldFN0b3JlKCkuZGlzcGF0Y2goQ3J1ZEFjdGlvbnMuZGVsZXRlSXRlbSh0aGlzLmNvbmZpZy5lbnRpdHksIGlkKSk7XG4gIH1cblxuICBwcml2YXRlIGdldFN0b3JlKCk6IFN0b3JlIHtcbiAgICBpZiAoTmdyeFN0b3JlU2VydmljZS5zdG9yZSkgcmV0dXJuIE5ncnhTdG9yZVNlcnZpY2Uuc3RvcmU7XG5cbiAgICByZXR1cm4gdGhpcy5zdG9yZTtcbiAgfVxufVxuIl19
@@ -34,57 +34,57 @@ const COMPONENTS = [
34
34
  GroupComponent,
35
35
  ];
36
36
  export class CrudComponentsModule {
37
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CrudComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
38
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: CrudComponentsModule, declarations: [ExportComponent,
39
+ FilterComponent,
40
+ FilterTextComponent,
41
+ FiltersConfigComponent,
42
+ FilterDateComponent,
43
+ FilterDateWithEditComponent,
44
+ FilterDateTimeComponent,
45
+ FilterRadioComponent,
46
+ FiltersComponent,
47
+ FilterFlagComponent,
48
+ FilterCheckComponent,
49
+ FilterIntComponent,
50
+ MultiselectComponent,
51
+ GroupComponent], imports: [
52
+ //AuthSharedModule,
53
+ StoreModule,
54
+ SharedModule,
55
+ CrudPipesModule,
56
+ FormsModule,
57
+ CommonModule,
58
+ DynamicIoModule], exports: [CrudPipesModule, ExportComponent,
59
+ FilterComponent,
60
+ FilterTextComponent,
61
+ FiltersConfigComponent,
62
+ FilterDateComponent,
63
+ FilterDateWithEditComponent,
64
+ FilterDateTimeComponent,
65
+ FilterRadioComponent,
66
+ FiltersComponent,
67
+ FilterFlagComponent,
68
+ FilterCheckComponent,
69
+ FilterIntComponent,
70
+ MultiselectComponent,
71
+ GroupComponent] }); }
72
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CrudComponentsModule, providers: [
73
+ CrudService,
74
+ CrudEffects,
75
+ CrudFacade,
76
+ SocketService,
77
+ CrudListPaginationFactory,
78
+ ], imports: [
79
+ //AuthSharedModule,
80
+ StoreModule,
81
+ SharedModule,
82
+ CrudPipesModule,
83
+ FormsModule,
84
+ CommonModule,
85
+ DynamicIoModule, CrudPipesModule] }); }
37
86
  }
38
- /** @nocollapse */ CrudComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CrudComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
39
- /** @nocollapse */ CrudComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: CrudComponentsModule, declarations: [ExportComponent,
40
- FilterComponent,
41
- FilterTextComponent,
42
- FiltersConfigComponent,
43
- FilterDateComponent,
44
- FilterDateWithEditComponent,
45
- FilterDateTimeComponent,
46
- FilterRadioComponent,
47
- FiltersComponent,
48
- FilterFlagComponent,
49
- FilterCheckComponent,
50
- FilterIntComponent,
51
- MultiselectComponent,
52
- GroupComponent], imports: [
53
- //AuthSharedModule,
54
- StoreModule,
55
- SharedModule,
56
- CrudPipesModule,
57
- FormsModule,
58
- CommonModule,
59
- DynamicIoModule], exports: [CrudPipesModule, ExportComponent,
60
- FilterComponent,
61
- FilterTextComponent,
62
- FiltersConfigComponent,
63
- FilterDateComponent,
64
- FilterDateWithEditComponent,
65
- FilterDateTimeComponent,
66
- FilterRadioComponent,
67
- FiltersComponent,
68
- FilterFlagComponent,
69
- FilterCheckComponent,
70
- FilterIntComponent,
71
- MultiselectComponent,
72
- GroupComponent] });
73
- /** @nocollapse */ CrudComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CrudComponentsModule, providers: [
74
- CrudService,
75
- CrudEffects,
76
- CrudFacade,
77
- SocketService,
78
- CrudListPaginationFactory,
79
- ], imports: [
80
- //AuthSharedModule,
81
- StoreModule,
82
- SharedModule,
83
- CrudPipesModule,
84
- FormsModule,
85
- CommonModule,
86
- DynamicIoModule, CrudPipesModule] });
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: CrudComponentsModule, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: CrudComponentsModule, decorators: [{
88
88
  type: NgModule,
89
89
  args: [{
90
90
  declarations: [...COMPONENTS],
@@ -107,4 +107,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImpor
107
107
  ],
108
108
  }]
109
109
  }] });
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NydWQvc2hlbGwvYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUNMLGVBQWUsRUFDZixtQkFBbUIsRUFDbkIsMkJBQTJCLEVBQzNCLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsdUJBQXVCLEdBQ3hCLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDakcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUV6RCxNQUFNLFVBQVUsR0FBRztJQUNqQixlQUFlO0lBQ2YsZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixzQkFBc0I7SUFDdEIsbUJBQW1CO0lBQ25CLDJCQUEyQjtJQUMzQix1QkFBdUI7SUFDdkIsb0JBQW9CO0lBQ3BCLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFDbkIsb0JBQW9CO0lBQ3BCLGtCQUFrQjtJQUNsQixvQkFBb0I7SUFDcEIsY0FBYztDQUNmLENBQUM7QUFzQkYsTUFBTSxPQUFPLG9CQUFvQjs7b0lBQXBCLG9CQUFvQjtxSUFBcEIsb0JBQW9CLGlCQXBDL0IsZUFBZTtRQUNmLGVBQWU7UUFDZixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBQ3RCLG1CQUFtQjtRQUNuQiwyQkFBMkI7UUFDM0IsdUJBQXVCO1FBQ3ZCLG9CQUFvQjtRQUNwQixnQkFBZ0I7UUFDaEIsbUJBQW1CO1FBQ25CLG9CQUFvQjtRQUNwQixrQkFBa0I7UUFDbEIsb0JBQW9CO1FBQ3BCLGNBQWM7UUFNWixtQkFBbUI7UUFDbkIsV0FBVztRQUNYLFlBQVk7UUFDWixlQUFlO1FBQ2YsV0FBVztRQUNYLFlBQVk7UUFDWixlQUFlLGFBRVAsZUFBZSxFQTNCekIsZUFBZTtRQUNmLGVBQWU7UUFDZixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBQ3RCLG1CQUFtQjtRQUNuQiwyQkFBMkI7UUFDM0IsdUJBQXVCO1FBQ3ZCLG9CQUFvQjtRQUNwQixnQkFBZ0I7UUFDaEIsbUJBQW1CO1FBQ25CLG9CQUFvQjtRQUNwQixrQkFBa0I7UUFDbEIsb0JBQW9CO1FBQ3BCLGNBQWM7cUlBdUJILG9CQUFvQixhQVJwQjtRQUNULFdBQVc7UUFDWCxXQUFXO1FBQ1gsVUFBVTtRQUNWLGFBQWE7UUFDYix5QkFBeUI7S0FDMUI7UUFmQyxtQkFBbUI7UUFDbkIsV0FBVztRQUNYLFlBQVk7UUFDWixlQUFlO1FBQ2YsV0FBVztRQUNYLFlBQVk7UUFDWixlQUFlLEVBRVAsZUFBZTsyRkFTZCxvQkFBb0I7a0JBcEJoQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDO29CQUM3QixPQUFPLEVBQUU7d0JBQ1AsbUJBQW1CO3dCQUNuQixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFLEdBQUcsVUFBVSxDQUFDO29CQUN6QyxTQUFTLEVBQUU7d0JBQ1QsV0FBVzt3QkFDWCxXQUFXO3dCQUNYLFVBQVU7d0JBQ1YsYUFBYTt3QkFDYix5QkFBeUI7cUJBQzFCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlTW9kdWxlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRHluYW1pY0lvTW9kdWxlIH0gZnJvbSAnbmctZHluYW1pYy1jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICdAc21hcnRzb2Z0MDAxL2FuZ3VsYXInO1xuXG5pbXBvcnQgeyBFeHBvcnRDb21wb25lbnQgfSBmcm9tICcuL2V4cG9ydC9leHBvcnQuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEZpbHRlckNvbXBvbmVudCxcbiAgRmlsdGVyRGF0ZUNvbXBvbmVudCxcbiAgRmlsdGVyRGF0ZVdpdGhFZGl0Q29tcG9uZW50LFxuICBGaWx0ZXJGbGFnQ29tcG9uZW50LFxuICBGaWx0ZXJSYWRpb0NvbXBvbmVudCxcbiAgRmlsdGVyVGV4dENvbXBvbmVudCxcbiAgRmlsdGVyQ2hlY2tDb21wb25lbnQsXG4gIEZpbHRlckludENvbXBvbmVudCxcbiAgRmlsdGVyRGF0ZVRpbWVDb21wb25lbnQsXG59IGZyb20gJy4vZmlsdGVyJztcbmltcG9ydCB7IEZpbHRlcnNDb25maWdDb21wb25lbnQgfSBmcm9tICcuL2ZpbHRlcnMtY29uZmlnL2ZpbHRlcnMtY29uZmlnLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9maWx0ZXJzL2ZpbHRlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IE11bHRpc2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9tdWx0aXNlbGVjdC9tdWx0aXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU29ja2V0U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3NvY2tldC9zb2NrZXQuc2VydmljZSc7XG5pbXBvcnQgeyBDcnVkUGlwZXNNb2R1bGUgfSBmcm9tICcuLi9waXBlcy9waXBlcy5tb2R1bGUnO1xuaW1wb3J0IHsgQ3J1ZFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jcnVkL2NydWQuc2VydmljZSc7XG5pbXBvcnQgeyBDcnVkRWZmZWN0cyB9IGZyb20gJy4uLytzdGF0ZS9jcnVkLmVmZmVjdHMnO1xuaW1wb3J0IHsgQ3J1ZEZhY2FkZSB9IGZyb20gJy4uLytzdGF0ZS9jcnVkLmZhY2FkZSc7XG5pbXBvcnQgeyBDcnVkTGlzdFBhZ2luYXRpb25GYWN0b3J5IH0gZnJvbSAnLi4vZmFjdG9yaWVzL2xpc3QtcGFnaW5hdGlvbi9saXN0LXBhZ2luYXRpb24uZmFjdG9yeSc7XG5pbXBvcnQgeyBHcm91cENvbXBvbmVudCB9IGZyb20gJy4vZ3JvdXAvZ3JvdXAuY29tcG9uZW50JztcblxuY29uc3QgQ09NUE9ORU5UUyA9IFtcbiAgRXhwb3J0Q29tcG9uZW50LFxuICBGaWx0ZXJDb21wb25lbnQsXG4gIEZpbHRlclRleHRDb21wb25lbnQsXG4gIEZpbHRlcnNDb25maWdDb21wb25lbnQsXG4gIEZpbHRlckRhdGVDb21wb25lbnQsXG4gIEZpbHRlckRhdGVXaXRoRWRpdENvbXBvbmVudCxcbiAgRmlsdGVyRGF0ZVRpbWVDb21wb25lbnQsXG4gIEZpbHRlclJhZGlvQ29tcG9uZW50LFxuICBGaWx0ZXJzQ29tcG9uZW50LFxuICBGaWx0ZXJGbGFnQ29tcG9uZW50LFxuICBGaWx0ZXJDaGVja0NvbXBvbmVudCxcbiAgRmlsdGVySW50Q29tcG9uZW50LFxuICBNdWx0aXNlbGVjdENvbXBvbmVudCxcbiAgR3JvdXBDb21wb25lbnQsXG5dO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFsuLi5DT01QT05FTlRTXSxcbiAgaW1wb3J0czogW1xuICAgIC8vQXV0aFNoYXJlZE1vZHVsZSxcbiAgICBTdG9yZU1vZHVsZSxcbiAgICBTaGFyZWRNb2R1bGUsXG4gICAgQ3J1ZFBpcGVzTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBEeW5hbWljSW9Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtDcnVkUGlwZXNNb2R1bGUsIC4uLkNPTVBPTkVOVFNdLFxuICBwcm92aWRlcnM6IFtcbiAgICBDcnVkU2VydmljZSxcbiAgICBDcnVkRWZmZWN0cyxcbiAgICBDcnVkRmFjYWRlLFxuICAgIFNvY2tldFNlcnZpY2UsXG4gICAgQ3J1ZExpc3RQYWdpbmF0aW9uRmFjdG9yeSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ3J1ZENvbXBvbmVudHNNb2R1bGUge31cbiJdfQ==
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NydWQvc2hlbGwvYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUNMLGVBQWUsRUFDZixtQkFBbUIsRUFDbkIsMkJBQTJCLEVBQzNCLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsdUJBQXVCLEdBQ3hCLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDakcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUV6RCxNQUFNLFVBQVUsR0FBRztJQUNqQixlQUFlO0lBQ2YsZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixzQkFBc0I7SUFDdEIsbUJBQW1CO0lBQ25CLDJCQUEyQjtJQUMzQix1QkFBdUI7SUFDdkIsb0JBQW9CO0lBQ3BCLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFDbkIsb0JBQW9CO0lBQ3BCLGtCQUFrQjtJQUNsQixvQkFBb0I7SUFDcEIsY0FBYztDQUNmLENBQUM7QUFzQkYsTUFBTSxPQUFPLG9CQUFvQjtpSUFBcEIsb0JBQW9CO2tJQUFwQixvQkFBb0IsaUJBcEMvQixlQUFlO1lBQ2YsZUFBZTtZQUNmLG1CQUFtQjtZQUNuQixzQkFBc0I7WUFDdEIsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQix1QkFBdUI7WUFDdkIsb0JBQW9CO1lBQ3BCLGdCQUFnQjtZQUNoQixtQkFBbUI7WUFDbkIsb0JBQW9CO1lBQ3BCLGtCQUFrQjtZQUNsQixvQkFBb0I7WUFDcEIsY0FBYztZQU1aLG1CQUFtQjtZQUNuQixXQUFXO1lBQ1gsWUFBWTtZQUNaLGVBQWU7WUFDZixXQUFXO1lBQ1gsWUFBWTtZQUNaLGVBQWUsYUFFUCxlQUFlLEVBM0J6QixlQUFlO1lBQ2YsZUFBZTtZQUNmLG1CQUFtQjtZQUNuQixzQkFBc0I7WUFDdEIsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQix1QkFBdUI7WUFDdkIsb0JBQW9CO1lBQ3BCLGdCQUFnQjtZQUNoQixtQkFBbUI7WUFDbkIsb0JBQW9CO1lBQ3BCLGtCQUFrQjtZQUNsQixvQkFBb0I7WUFDcEIsY0FBYztrSUF1Qkgsb0JBQW9CLGFBUnBCO1lBQ1QsV0FBVztZQUNYLFdBQVc7WUFDWCxVQUFVO1lBQ1YsYUFBYTtZQUNiLHlCQUF5QjtTQUMxQjtZQWZDLG1CQUFtQjtZQUNuQixXQUFXO1lBQ1gsWUFBWTtZQUNaLGVBQWU7WUFDZixXQUFXO1lBQ1gsWUFBWTtZQUNaLGVBQWUsRUFFUCxlQUFlOzsyRkFTZCxvQkFBb0I7a0JBcEJoQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDO29CQUM3QixPQUFPLEVBQUU7d0JBQ1AsbUJBQW1CO3dCQUNuQixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFLEdBQUcsVUFBVSxDQUFDO29CQUN6QyxTQUFTLEVBQUU7d0JBQ1QsV0FBVzt3QkFDWCxXQUFXO3dCQUNYLFVBQVU7d0JBQ1YsYUFBYTt3QkFDYix5QkFBeUI7cUJBQzFCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlTW9kdWxlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRHluYW1pY0lvTW9kdWxlIH0gZnJvbSAnbmctZHluYW1pYy1jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICdAc21hcnRzb2Z0MDAxL2FuZ3VsYXInO1xuXG5pbXBvcnQgeyBFeHBvcnRDb21wb25lbnQgfSBmcm9tICcuL2V4cG9ydC9leHBvcnQuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEZpbHRlckNvbXBvbmVudCxcbiAgRmlsdGVyRGF0ZUNvbXBvbmVudCxcbiAgRmlsdGVyRGF0ZVdpdGhFZGl0Q29tcG9uZW50LFxuICBGaWx0ZXJGbGFnQ29tcG9uZW50LFxuICBGaWx0ZXJSYWRpb0NvbXBvbmVudCxcbiAgRmlsdGVyVGV4dENvbXBvbmVudCxcbiAgRmlsdGVyQ2hlY2tDb21wb25lbnQsXG4gIEZpbHRlckludENvbXBvbmVudCxcbiAgRmlsdGVyRGF0ZVRpbWVDb21wb25lbnQsXG59IGZyb20gJy4vZmlsdGVyJztcbmltcG9ydCB7IEZpbHRlcnNDb25maWdDb21wb25lbnQgfSBmcm9tICcuL2ZpbHRlcnMtY29uZmlnL2ZpbHRlcnMtY29uZmlnLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9maWx0ZXJzL2ZpbHRlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IE11bHRpc2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9tdWx0aXNlbGVjdC9tdWx0aXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU29ja2V0U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3NvY2tldC9zb2NrZXQuc2VydmljZSc7XG5pbXBvcnQgeyBDcnVkUGlwZXNNb2R1bGUgfSBmcm9tICcuLi9waXBlcy9waXBlcy5tb2R1bGUnO1xuaW1wb3J0IHsgQ3J1ZFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jcnVkL2NydWQuc2VydmljZSc7XG5pbXBvcnQgeyBDcnVkRWZmZWN0cyB9IGZyb20gJy4uLytzdGF0ZS9jcnVkLmVmZmVjdHMnO1xuaW1wb3J0IHsgQ3J1ZEZhY2FkZSB9IGZyb20gJy4uLytzdGF0ZS9jcnVkLmZhY2FkZSc7XG5pbXBvcnQgeyBDcnVkTGlzdFBhZ2luYXRpb25GYWN0b3J5IH0gZnJvbSAnLi4vZmFjdG9yaWVzL2xpc3QtcGFnaW5hdGlvbi9saXN0LXBhZ2luYXRpb24uZmFjdG9yeSc7XG5pbXBvcnQgeyBHcm91cENvbXBvbmVudCB9IGZyb20gJy4vZ3JvdXAvZ3JvdXAuY29tcG9uZW50JztcblxuY29uc3QgQ09NUE9ORU5UUyA9IFtcbiAgRXhwb3J0Q29tcG9uZW50LFxuICBGaWx0ZXJDb21wb25lbnQsXG4gIEZpbHRlclRleHRDb21wb25lbnQsXG4gIEZpbHRlcnNDb25maWdDb21wb25lbnQsXG4gIEZpbHRlckRhdGVDb21wb25lbnQsXG4gIEZpbHRlckRhdGVXaXRoRWRpdENvbXBvbmVudCxcbiAgRmlsdGVyRGF0ZVRpbWVDb21wb25lbnQsXG4gIEZpbHRlclJhZGlvQ29tcG9uZW50LFxuICBGaWx0ZXJzQ29tcG9uZW50LFxuICBGaWx0ZXJGbGFnQ29tcG9uZW50LFxuICBGaWx0ZXJDaGVja0NvbXBvbmVudCxcbiAgRmlsdGVySW50Q29tcG9uZW50LFxuICBNdWx0aXNlbGVjdENvbXBvbmVudCxcbiAgR3JvdXBDb21wb25lbnQsXG5dO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFsuLi5DT01QT05FTlRTXSxcbiAgaW1wb3J0czogW1xuICAgIC8vQXV0aFNoYXJlZE1vZHVsZSxcbiAgICBTdG9yZU1vZHVsZSxcbiAgICBTaGFyZWRNb2R1bGUsXG4gICAgQ3J1ZFBpcGVzTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBEeW5hbWljSW9Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtDcnVkUGlwZXNNb2R1bGUsIC4uLkNPTVBPTkVOVFNdLFxuICBwcm92aWRlcnM6IFtcbiAgICBDcnVkU2VydmljZSxcbiAgICBDcnVkRWZmZWN0cyxcbiAgICBDcnVkRmFjYWRlLFxuICAgIFNvY2tldFNlcnZpY2UsXG4gICAgQ3J1ZExpc3RQYWdpbmF0aW9uRmFjdG9yeSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ3J1ZENvbXBvbmVudHNNb2R1bGUge31cbiJdfQ==
@@ -37,11 +37,11 @@ export class ExportComponent extends BaseComponent {
37
37
  expand: 'block'
38
38
  };
39
39
  }
40
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ExportComponent, deps: [{ token: i1.CrudFacade }, { token: i2.PopoverService }, { token: i2.StyleService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
41
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: ExportComponent, selector: "smart-crud-export", usesInheritance: true, ngImport: i0, template: "<div class=\"smart-content\">\n <p>\n <smart-button [options]=\"buttonExportCsvOptions\">CSV</smart-button>\n </p>\n <p>\n <smart-button [options]=\"buttonExportXlsxOptions\">XLSX</smart-button>\n </p>\n</div>", styles: [".smart-content{padding:1.2rem}.smart-content p{margin:.6rem 0}.smart-content smart-button{width:100%;display:block}\n"], dependencies: [{ kind: "component", type: i2.ButtonComponent, selector: "smart-button", inputs: ["options", "disabled"] }] }); }
40
42
  }
41
- /** @nocollapse */ ExportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: ExportComponent, deps: [{ token: i1.CrudFacade }, { token: i2.PopoverService }, { token: i2.StyleService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
42
- /** @nocollapse */ ExportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: ExportComponent, selector: "smart-crud-export", usesInheritance: true, ngImport: i0, template: "<div class=\"smart-content\">\n <p>\n <smart-button [options]=\"buttonExportCsvOptions\">CSV</smart-button>\n </p>\n <p>\n <smart-button [options]=\"buttonExportXlsxOptions\">XLSX</smart-button>\n </p>\n</div>", styles: [".smart-content{padding:1.2rem}.smart-content p{margin:.6rem 0}.smart-content smart-button{width:100%;display:block}\n"], dependencies: [{ kind: "component", type: i2.ButtonComponent, selector: "smart-button", inputs: ["options", "disabled"] }] });
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: ExportComponent, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: ExportComponent, decorators: [{
44
44
  type: Component,
45
45
  args: [{ selector: 'smart-crud-export', template: "<div class=\"smart-content\">\n <p>\n <smart-button [options]=\"buttonExportCsvOptions\">CSV</smart-button>\n </p>\n <p>\n <smart-button [options]=\"buttonExportXlsxOptions\">XLSX</smart-button>\n </p>\n</div>", styles: [".smart-content{padding:1.2rem}.smart-content p{margin:.6rem 0}.smart-content smart-button{width:100%;display:block}\n"] }]
46
46
  }], ctorParameters: function () { return [{ type: i1.CrudFacade }, { type: i2.PopoverService }, { type: i2.StyleService }, { type: i0.ElementRef }]; } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3J1ZC9zaGVsbC9hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9leHBvcnQvZXhwb3J0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3J1ZC9zaGVsbC9hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9leHBvcnQvZXhwb3J0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBRzVELE9BQU8sRUFBQyxhQUFhLEVBQWtCLGNBQWMsRUFBRSxZQUFZLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUdsRyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFPcEQsTUFBTSxPQUFPLGVBQTJDLFNBQVEsYUFBYTtJQU8zRSxZQUNZLE1BQXFCLEVBQ3JCLGNBQThCLEVBQzlCLFlBQTBCLEVBQzFCLFVBQXNCO1FBRWhDLEtBQUssRUFBRSxDQUFDO1FBTEUsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUNyQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQVRsQywyQkFBc0IsR0FBbUIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdFLDRCQUF1QixHQUFtQixJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFL0UsYUFBUSxHQUF3QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztJQVNyRCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU8sdUJBQXVCLENBQUMsTUFBYztRQUM1QyxPQUFPO1lBQ0wsS0FBSyxFQUFFLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztvQkFDakIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU07b0JBQ3JCLE1BQU0sRUFBRSxJQUFJO29CQUNaLEtBQUssRUFBRSxJQUFJO2lCQUNaLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBRVgsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUN2RCxJQUFJLENBQUMsR0FBRzt3QkFBRSxPQUFPO29CQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO29CQUM1QixZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQzdCLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztZQUNELFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVE7WUFDOUIsTUFBTSxFQUFFLE9BQU87U0FDaEIsQ0FBQTtJQUNILENBQUM7OytIQXRDVSxlQUFlO21IQUFmLGVBQWUsZ0ZDYjVCLDZPQU9NOzJGRE1PLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XG5cbmltcG9ydCB7QmFzZUNvbXBvbmVudCwgSUJ1dHRvbk9wdGlvbnMsIFBvcG92ZXJTZXJ2aWNlLCBTdHlsZVNlcnZpY2V9IGZyb20gXCJAc21hcnRzb2Z0MDAxL2FuZ3VsYXJcIjtcbmltcG9ydCB7SUVudGl0eX0gZnJvbSBcIkBzbWFydHNvZnQwMDEvZG9tYWluLWNvcmVcIjtcblxuaW1wb3J0IHtDcnVkRmFjYWRlfSBmcm9tIFwiLi4vLi4vK3N0YXRlL2NydWQuZmFjYWRlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NtYXJ0LWNydWQtZXhwb3J0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2V4cG9ydC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2V4cG9ydC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEV4cG9ydENvbXBvbmVudDxUIGV4dGVuZHMgSUVudGl0eTxzdHJpbmc+PiBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGJ1dHRvbkV4cG9ydENzdk9wdGlvbnM6IElCdXR0b25PcHRpb25zID0gdGhpcy5pbml0QnV0dG9uRXhwb3J0T3B0aW9ucygnY3N2Jyk7XG4gIGJ1dHRvbkV4cG9ydFhsc3hPcHRpb25zOiBJQnV0dG9uT3B0aW9ucyA9IHRoaXMuaW5pdEJ1dHRvbkV4cG9ydE9wdGlvbnMoJ3hsc3gnKTtcblxuICBsb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuZmFjYWRlLmxvYWRpbmckO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmYWNhZGU6IENydWRGYWNhZGU8VD4sXG4gICAgICBwcml2YXRlIHBvcG92ZXJTZXJ2aWNlOiBQb3BvdmVyU2VydmljZSxcbiAgICAgIHByaXZhdGUgc3R5bGVTZXJ2aWNlOiBTdHlsZVNlcnZpY2UsXG4gICAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWZcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3R5bGVTZXJ2aWNlLmluaXQodGhpcy5lbGVtZW50UmVmKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEJ1dHRvbkV4cG9ydE9wdGlvbnMoZm9ybWF0OiBzdHJpbmcpOiBJQnV0dG9uT3B0aW9ucyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNsaWNrOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuZmFjYWRlLmV4cG9ydCh7XG4gICAgICAgICAgLi4udGhpcy5mYWNhZGUuZmlsdGVyLFxuICAgICAgICAgIG9mZnNldDogbnVsbCxcbiAgICAgICAgICBsaW1pdDogbnVsbFxuICAgICAgICB9LCBmb3JtYXQpO1xuXG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHRoaXMuZmFjYWRlLmxvYWRlZCQuc3Vic2NyaWJlKHZhbCA9PiB7XG4gICAgICAgICAgaWYgKCF2YWwpIHJldHVybjtcbiAgICAgICAgICB0aGlzLnBvcG92ZXJTZXJ2aWNlLmNsb3NlKCk7XG4gICAgICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIGxvYWRpbmckOiB0aGlzLmZhY2FkZS5sb2FkaW5nJCxcbiAgICAgIGV4cGFuZDogJ2Jsb2NrJ1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNtYXJ0LWNvbnRlbnRcIj5cbiAgICA8cD5cbiAgICAgICAgPHNtYXJ0LWJ1dHRvbiBbb3B0aW9uc109XCJidXR0b25FeHBvcnRDc3ZPcHRpb25zXCI+Q1NWPC9zbWFydC1idXR0b24+XG4gICAgPC9wPlxuICAgIDxwPlxuICAgICAgICA8c21hcnQtYnV0dG9uIFtvcHRpb25zXT1cImJ1dHRvbkV4cG9ydFhsc3hPcHRpb25zXCI+WExTWDwvc21hcnQtYnV0dG9uPlxuICAgIDwvcD5cbjwvZGl2PiJdfQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3J1ZC9zaGVsbC9hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9leHBvcnQvZXhwb3J0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3J1ZC9zaGVsbC9hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9leHBvcnQvZXhwb3J0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBRzVELE9BQU8sRUFBQyxhQUFhLEVBQWtCLGNBQWMsRUFBRSxZQUFZLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUdsRyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFPcEQsTUFBTSxPQUFPLGVBQTJDLFNBQVEsYUFBYTtJQU8zRSxZQUNZLE1BQXFCLEVBQ3JCLGNBQThCLEVBQzlCLFlBQTBCLEVBQzFCLFVBQXNCO1FBRWhDLEtBQUssRUFBRSxDQUFDO1FBTEUsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUNyQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQVRsQywyQkFBc0IsR0FBbUIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdFLDRCQUF1QixHQUFtQixJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFL0UsYUFBUSxHQUF3QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztJQVNyRCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU8sdUJBQXVCLENBQUMsTUFBYztRQUM1QyxPQUFPO1lBQ0wsS0FBSyxFQUFFLEdBQUcsRUFBRTtnQkFDVixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztvQkFDakIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU07b0JBQ3JCLE1BQU0sRUFBRSxJQUFJO29CQUNaLEtBQUssRUFBRSxJQUFJO2lCQUNaLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBRVgsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUN2RCxJQUFJLENBQUMsR0FBRzt3QkFBRSxPQUFPO29CQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO29CQUM1QixZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQzdCLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztZQUNELFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVE7WUFDOUIsTUFBTSxFQUFFLE9BQU87U0FDaEIsQ0FBQTtJQUNILENBQUM7aUlBdENVLGVBQWU7cUhBQWYsZUFBZSxnRkNiNUIsNk9BT007OzJGRE1PLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XG5cbmltcG9ydCB7QmFzZUNvbXBvbmVudCwgSUJ1dHRvbk9wdGlvbnMsIFBvcG92ZXJTZXJ2aWNlLCBTdHlsZVNlcnZpY2V9IGZyb20gXCJAc21hcnRzb2Z0MDAxL2FuZ3VsYXJcIjtcbmltcG9ydCB7SUVudGl0eX0gZnJvbSBcIkBzbWFydHNvZnQwMDEvZG9tYWluLWNvcmVcIjtcblxuaW1wb3J0IHtDcnVkRmFjYWRlfSBmcm9tIFwiLi4vLi4vK3N0YXRlL2NydWQuZmFjYWRlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NtYXJ0LWNydWQtZXhwb3J0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2V4cG9ydC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2V4cG9ydC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEV4cG9ydENvbXBvbmVudDxUIGV4dGVuZHMgSUVudGl0eTxzdHJpbmc+PiBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGJ1dHRvbkV4cG9ydENzdk9wdGlvbnM6IElCdXR0b25PcHRpb25zID0gdGhpcy5pbml0QnV0dG9uRXhwb3J0T3B0aW9ucygnY3N2Jyk7XG4gIGJ1dHRvbkV4cG9ydFhsc3hPcHRpb25zOiBJQnV0dG9uT3B0aW9ucyA9IHRoaXMuaW5pdEJ1dHRvbkV4cG9ydE9wdGlvbnMoJ3hsc3gnKTtcblxuICBsb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuZmFjYWRlLmxvYWRpbmckO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmYWNhZGU6IENydWRGYWNhZGU8VD4sXG4gICAgICBwcml2YXRlIHBvcG92ZXJTZXJ2aWNlOiBQb3BvdmVyU2VydmljZSxcbiAgICAgIHByaXZhdGUgc3R5bGVTZXJ2aWNlOiBTdHlsZVNlcnZpY2UsXG4gICAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWZcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3R5bGVTZXJ2aWNlLmluaXQodGhpcy5lbGVtZW50UmVmKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEJ1dHRvbkV4cG9ydE9wdGlvbnMoZm9ybWF0OiBzdHJpbmcpOiBJQnV0dG9uT3B0aW9ucyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNsaWNrOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuZmFjYWRlLmV4cG9ydCh7XG4gICAgICAgICAgLi4udGhpcy5mYWNhZGUuZmlsdGVyLFxuICAgICAgICAgIG9mZnNldDogbnVsbCxcbiAgICAgICAgICBsaW1pdDogbnVsbFxuICAgICAgICB9LCBmb3JtYXQpO1xuXG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHRoaXMuZmFjYWRlLmxvYWRlZCQuc3Vic2NyaWJlKHZhbCA9PiB7XG4gICAgICAgICAgaWYgKCF2YWwpIHJldHVybjtcbiAgICAgICAgICB0aGlzLnBvcG92ZXJTZXJ2aWNlLmNsb3NlKCk7XG4gICAgICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIGxvYWRpbmckOiB0aGlzLmZhY2FkZS5sb2FkaW5nJCxcbiAgICAgIGV4cGFuZDogJ2Jsb2NrJ1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNtYXJ0LWNvbnRlbnRcIj5cbiAgICA8cD5cbiAgICAgICAgPHNtYXJ0LWJ1dHRvbiBbb3B0aW9uc109XCJidXR0b25FeHBvcnRDc3ZPcHRpb25zXCI+Q1NWPC9zbWFydC1idXR0b24+XG4gICAgPC9wPlxuICAgIDxwPlxuICAgICAgICA8c21hcnQtYnV0dG9uIFtvcHRpb25zXT1cImJ1dHRvbkV4cG9ydFhsc3hPcHRpb25zXCI+WExTWDwvc21hcnQtYnV0dG9uPlxuICAgIDwvcD5cbjwvZGl2PiJdfQ==
@@ -0,0 +1,152 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Directive, Inject, Input, Optional } from "@angular/core";
3
+ import { Debounce } from "lodash-decorators";
4
+ import { FieldType } from "@smartsoft001/models";
5
+ import { CrudFacade } from "../../../+state/crud.facade";
6
+ import { CRUD_MODEL_POSSIBILITIES_PROVIDER, ICrudModelPossibilitiesProvider, } from "../../../providers/model-possibilities/model-possibilities.provider";
7
+ import { CrudConfig } from "../../../crud.config";
8
+ import { TranslateService } from "@ngx-translate/core";
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../../../+state/crud.facade";
11
+ import * as i2 from "../../../crud.config";
12
+ import * as i3 from "@ngx-translate/core";
13
+ import * as i4 from "../../../providers/model-possibilities/model-possibilities.provider";
14
+ export class BaseComponent {
15
+ get value() {
16
+ if (this.isArrayType()) {
17
+ return this.filter.query
18
+ .filter((q) => q.key === this.item.key && q.type === this.item.type)
19
+ .map(q => q.value);
20
+ }
21
+ const query = this.filter.query.find((q) => q.key === this.item.key && q.type === this.item.type);
22
+ return query?.value;
23
+ }
24
+ set value(val) {
25
+ this.refresh(val);
26
+ }
27
+ get minValue() {
28
+ if (this.isArrayType()) {
29
+ return this.filter.query
30
+ .filter((q) => q.key === this.item.key && q.type === ">=")
31
+ .map(q => q.value);
32
+ }
33
+ const query = this.filter.query.find((q) => q.key === this.item.key && q.type === ">=");
34
+ return query?.value;
35
+ }
36
+ set minValue(val) {
37
+ this.refresh(val, ">=");
38
+ }
39
+ get maxValue() {
40
+ if (this.isArrayType()) {
41
+ return this.filter.query
42
+ .filter((q) => q.key === this.item.key && q.type === "<=")
43
+ .map(q => q.value);
44
+ }
45
+ const query = this.filter.query.find((q) => q.key === this.item.key && q.type === "<=");
46
+ return query?.value;
47
+ }
48
+ set maxValue(val) {
49
+ this.refresh(val, "<=");
50
+ }
51
+ get lang() {
52
+ return this.translateService.currentLang;
53
+ }
54
+ constructor(facade, config, modelPossibilitiesProvider, translateService) {
55
+ this.facade = facade;
56
+ this.config = config;
57
+ this.modelPossibilitiesProvider = modelPossibilitiesProvider;
58
+ this.translateService = translateService;
59
+ }
60
+ refresh(val, type = null) {
61
+ if (!type)
62
+ type = this.item.type;
63
+ this.filter.offset = 0;
64
+ if (this.isArrayType()) {
65
+ this.refreshForArray(val, type);
66
+ return;
67
+ }
68
+ let query = this.filter.query.find((q) => q.key === this.item.key && q.type === type);
69
+ if (val === null || val === undefined || val === '') {
70
+ const index = this.filter.query.indexOf(query);
71
+ if (index > -1) {
72
+ this.filter.query.splice(index, 1);
73
+ }
74
+ this.facade.read(this.filter);
75
+ return;
76
+ }
77
+ if (!query) {
78
+ query = {
79
+ key: this.item.key,
80
+ type: type,
81
+ value: null,
82
+ };
83
+ this.filter.query.push(query);
84
+ }
85
+ query.value = val;
86
+ query.label = this.item.label;
87
+ this.facade.read(this.filter);
88
+ }
89
+ clear() {
90
+ this.filter.query = this.filter.query.filter((q) => q.key !== this.item.key);
91
+ this.filter.offset = 0;
92
+ this.facade.read(this.filter);
93
+ }
94
+ ngOnInit() {
95
+ this.initPossibilities();
96
+ }
97
+ initPossibilities() {
98
+ let possibilities = this.item.possibilities$;
99
+ if (this.modelPossibilitiesProvider) {
100
+ const possibilitiesFromProvider = this.modelPossibilitiesProvider.get(this.config.type);
101
+ if (possibilitiesFromProvider && possibilitiesFromProvider[this.item.key])
102
+ possibilities = possibilitiesFromProvider[this.item.key];
103
+ }
104
+ this.possibilities$ = possibilities;
105
+ }
106
+ isArrayType() {
107
+ return (this.item?.fieldType === FieldType.check);
108
+ }
109
+ refreshForArray(vals, type) {
110
+ const queries = this.filter.query.filter((q) => q.key === this.item.key && q.type === type);
111
+ queries.forEach(query => {
112
+ const index = this.filter.query.indexOf(query);
113
+ if (index > -1) {
114
+ this.filter.query.splice(index, 1);
115
+ }
116
+ });
117
+ if (vals === null || vals === undefined || !vals.length) {
118
+ this.facade.read(this.filter);
119
+ return;
120
+ }
121
+ vals.forEach(val => {
122
+ const query = {
123
+ key: this.item.key,
124
+ type: type,
125
+ value: val,
126
+ };
127
+ this.filter.query.push(query);
128
+ });
129
+ this.facade.read(this.filter);
130
+ }
131
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: BaseComponent, deps: [{ token: i1.CrudFacade }, { token: i2.CrudConfig }, { token: CRUD_MODEL_POSSIBILITIES_PROVIDER, optional: true }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Directive }); }
132
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.3", type: BaseComponent, inputs: { item: "item", filter: "filter" }, ngImport: i0 }); }
133
+ }
134
+ __decorate([
135
+ Debounce(500),
136
+ __metadata("design:type", Function),
137
+ __metadata("design:paramtypes", [Object, Object]),
138
+ __metadata("design:returntype", void 0)
139
+ ], BaseComponent.prototype, "refresh", null);
140
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: BaseComponent, decorators: [{
141
+ type: Directive
142
+ }], ctorParameters: function () { return [{ type: i1.CrudFacade }, { type: i2.CrudConfig }, { type: i4.ICrudModelPossibilitiesProvider, decorators: [{
143
+ type: Optional
144
+ }, {
145
+ type: Inject,
146
+ args: [CRUD_MODEL_POSSIBILITIES_PROVIDER]
147
+ }] }, { type: i3.TranslateService }]; }, propDecorators: { item: [{
148
+ type: Input
149
+ }], filter: [{
150
+ type: Input
151
+ }], refresh: [] } });
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NydWQvc2hlbGwvYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZmlsdGVyL2Jhc2UvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBSTNDLE9BQU8sRUFBQyxTQUFTLEVBQWUsTUFBTSxzQkFBc0IsQ0FBQztBQUc3RCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDdkQsT0FBTyxFQUNMLGlDQUFpQyxFQUNqQywrQkFBK0IsR0FDaEMsTUFBTSxxRUFBcUUsQ0FBQztBQUM3RSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7Ozs7OztBQUdyRCxNQUFNLE9BQU8sYUFBYTtJQU14QixJQUFJLEtBQUs7UUFDUCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSztpQkFDbkIsTUFBTSxDQUNMLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQzVEO2lCQUNBLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QjtRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFN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Q2hDLENBQUM7aUlBN0tVLGFBQWEsc0VBdUVkLGlDQUFpQztxSEF2RWhDLGFBQWE7O0FBNkV4QjtJQURDLFFBQVEsQ0FBQyxHQUFHLENBQUM7Ozs7NENBdUNiOzJGQW5IVSxhQUFhO2tCQUR6QixTQUFTOzswQkF1RUwsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxpQ0FBaUM7MkVBcEVsQyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQXlFTixPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEluamVjdCwgSW5wdXQsIE9uSW5pdCwgT3B0aW9uYWx9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge0RlYm91bmNlfSBmcm9tIFwibG9kYXNoLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSBcInJ4anNcIjtcblxuaW1wb3J0IHtJRW50aXR5fSBmcm9tIFwiQHNtYXJ0c29mdDAwMS9kb21haW4tY29yZVwiO1xuaW1wb3J0IHtGaWVsZFR5cGUsIElNb2RlbEZpbHRlcn0gZnJvbSBcIkBzbWFydHNvZnQwMDEvbW9kZWxzXCI7XG5cbmltcG9ydCB7SUNydWRGaWx0ZXJ9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHtDcnVkRmFjYWRlfSBmcm9tIFwiLi4vLi4vLi4vK3N0YXRlL2NydWQuZmFjYWRlXCI7XG5pbXBvcnQge1xuICBDUlVEX01PREVMX1BPU1NJQklMSVRJRVNfUFJPVklERVIsXG4gIElDcnVkTW9kZWxQb3NzaWJpbGl0aWVzUHJvdmlkZXIsXG59IGZyb20gXCIuLi8uLi8uLi9wcm92aWRlcnMvbW9kZWwtcG9zc2liaWxpdGllcy9tb2RlbC1wb3NzaWJpbGl0aWVzLnByb3ZpZGVyXCI7XG5pbXBvcnQge0NydWRDb25maWd9IGZyb20gXCIuLi8uLi8uLi9jcnVkLmNvbmZpZ1wiO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBCYXNlQ29tcG9uZW50PFQgZXh0ZW5kcyBJRW50aXR5PHN0cmluZz4+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcG9zc2liaWxpdGllcyQ6IE9ic2VydmFibGU8eyBpZDogYW55OyB0ZXh0OiBzdHJpbmcgfVtdPjtcblxuICBASW5wdXQoKSBpdGVtOiBJTW9kZWxGaWx0ZXI7XG4gIEBJbnB1dCgpIGZpbHRlcjogSUNydWRGaWx0ZXI7XG5cbiAgZ2V0IHZhbHVlKCk6IGFueSB7XG4gICAgaWYgKHRoaXMuaXNBcnJheVR5cGUoKSkge1xuICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyLnF1ZXJ5XG4gICAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgIChxKSA9PiBxLmtleSA9PT0gdGhpcy5pdGVtLmtleSAmJiBxLnR5cGUgPT09IHRoaXMuaXRlbS50eXBlXG4gICAgICAgICAgKVxuICAgICAgICAgIC5tYXAocSA9PiBxLnZhbHVlKTtcbiAgICB9XG5cbiAgICBjb25zdCBxdWVyeSA9IHRoaXMuZmlsdGVyLnF1ZXJ5LmZpbmQoXG4gICAgICAocSkgPT4gcS5rZXkgPT09IHRoaXMuaXRlbS5rZXkgJiYgcS50eXBlID09PSB0aGlzLml0ZW0udHlwZVxuICAgICk7XG4gICAgcmV0dXJuIHF1ZXJ5Py52YWx1ZTtcbiAgfVxuXG4gIHNldCB2YWx1ZSh2YWw6IGFueSkge1xuICAgIHRoaXMucmVmcmVzaCh2YWwpO1xuICB9XG5cbiAgZ2V0IG1pblZhbHVlKCk6IGFueSB7XG4gICAgaWYgKHRoaXMuaXNBcnJheVR5cGUoKSkge1xuICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyLnF1ZXJ5XG4gICAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgICAgKHEpID0+IHEua2V5ID09PSB0aGlzLml0ZW0ua2V5ICYmIHEudHlwZSA9PT0gXCI+PVwiXG4gICAgICAgICAgKVxuICAgICAgICAgIC5tYXAocSA9PiBxLnZhbHVlKTtcbiAgICB9XG5cbiAgICBjb25zdCBxdWVyeSA9IHRoaXMuZmlsdGVyLnF1ZXJ5LmZpbmQoXG4gICAgICAgIChxKSA9PiBxLmtleSA9PT0gdGhpcy5pdGVtLmtleSAmJiBxLnR5cGUgPT09IFwiPj1cIlxuICAgICk7XG4gICAgcmV0dXJuIHF1ZXJ5Py52YWx1ZTtcbiAgfVxuXG4gIHNldCBtaW5WYWx1ZSh2YWw6IGFueSkge1xuICAgIHRoaXMucmVmcmVzaCh2YWwsIFwiPj1cIik7XG4gIH1cblxuICBnZXQgbWF4VmFsdWUoKTogYW55IHtcbiAgICBpZiAodGhpcy5pc0FycmF5VHlwZSgpKSB7XG4gICAgICByZXR1cm4gdGhpcy5maWx0ZXIucXVlcnlcbiAgICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgICAgICAocSkgPT4gcS5rZXkgPT09IHRoaXMuaXRlbS5rZXkgJiYgcS50eXBlID09PSBcIjw9XCJcbiAgICAgICAgICApXG4gICAgICAgICAgLm1hcChxID0+IHEudmFsdWUpO1xuICAgIH1cblxuICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy5maWx0ZXIucXVlcnkuZmluZChcbiAgICAgICAgKHEpID0+IHEua2V5ID09PSB0aGlzLml0ZW0ua2V5ICYmIHEudHlwZSA9PT0gXCI8PVwiXG4gICAgKTtcbiAgICByZXR1cm4gcXVlcnk/LnZhbHVlO1xuICB9XG5cbiAgc2V0IG1heFZhbHVlKHZhbDogYW55KSB7XG4gICAgdGhpcy5yZWZyZXNoKHZhbCwgXCI8PVwiKTtcbiAgfVxuXG4gIGdldCBsYW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5jdXJyZW50TGFuZztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBmYWNhZGU6IENydWRGYWNhZGU8VD4sXG4gICAgcHJpdmF0ZSBjb25maWc6IENydWRDb25maWc8VD4sXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KENSVURfTU9ERUxfUE9TU0lCSUxJVElFU19QUk9WSURFUilcbiAgICBwcml2YXRlIG1vZGVsUG9zc2liaWxpdGllc1Byb3ZpZGVyOiBJQ3J1ZE1vZGVsUG9zc2liaWxpdGllc1Byb3ZpZGVyLFxuICAgIHByb3RlY3RlZCB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlXG4gICkge31cblxuICBARGVib3VuY2UoNTAwKVxuICByZWZyZXNoKHZhbDogYW55LCB0eXBlID0gbnVsbCk6IHZvaWQge1xuICAgIGlmICghdHlwZSkgdHlwZSA9IHRoaXMuaXRlbS50eXBlO1xuXG4gICAgdGhpcy5maWx0ZXIub2Zmc2V0ID0gMDtcblxuICAgIGlmICh0aGlzLmlzQXJyYXlUeXBlKCkpIHtcbiAgICAgIHRoaXMucmVmcmVzaEZvckFycmF5KHZhbCBhcyBbXSwgdHlwZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IHF1ZXJ5ID0gdGhpcy5maWx0ZXIucXVlcnkuZmluZChcbiAgICAgICAgKHEpID0+IHEua2V5ID09PSB0aGlzLml0ZW0ua2V5ICYmIHEudHlwZSA9PT0gdHlwZVxuICAgICk7XG5cbiAgICBpZiAodmFsID09PSBudWxsIHx8IHZhbCA9PT0gdW5kZWZpbmVkIHx8IHZhbCA9PT0gJycpIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5maWx0ZXIucXVlcnkuaW5kZXhPZihxdWVyeSk7XG4gICAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICB0aGlzLmZpbHRlci5xdWVyeS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmZhY2FkZS5yZWFkKHRoaXMuZmlsdGVyKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXF1ZXJ5KSB7XG4gICAgICBxdWVyeSA9IHtcbiAgICAgICAga2V5OiB0aGlzLml0ZW0ua2V5LFxuICAgICAgICB0eXBlOiB0eXBlLFxuICAgICAgICB2YWx1ZTogbnVsbCxcbiAgICAgIH07XG5cbiAgICAgIHRoaXMuZmlsdGVyLnF1ZXJ5LnB1c2gocXVlcnkpO1xuICAgIH1cblxuICAgIHF1ZXJ5LnZhbHVlID0gdmFsO1xuICAgIHF1ZXJ5LmxhYmVsID0gdGhpcy5pdGVtLmxhYmVsO1xuXG4gICAgdGhpcy5mYWNhZGUucmVhZCh0aGlzLmZpbHRlcik7XG4gIH1cblxuICBjbGVhcigpOiB2b2lkIHtcbiAgICB0aGlzLmZpbHRlci5xdWVyeSA9IHRoaXMuZmlsdGVyLnF1ZXJ5LmZpbHRlcihcbiAgICAgICAgKHEpID0+IHEua2V5ICE9PSB0aGlzLml0ZW0ua2V5XG4gICAgKTtcbiAgICB0aGlzLmZpbHRlci5vZmZzZXQgPSAwO1xuICAgIHRoaXMuZmFjYWRlLnJlYWQodGhpcy5maWx0ZXIpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0UG9zc2liaWxpdGllcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0UG9zc2liaWxpdGllcygpOiB2b2lkIHtcbiAgICBsZXQgcG9zc2liaWxpdGllcyA9IHRoaXMuaXRlbS5wb3NzaWJpbGl0aWVzJDtcblxuICAgIGlmICh0aGlzLm1vZGVsUG9zc2liaWxpdGllc1Byb3ZpZGVyKSB7XG4gICAgICBjb25zdCBwb3NzaWJpbGl0aWVzRnJvbVByb3ZpZGVyID0gdGhpcy5tb2RlbFBvc3NpYmlsaXRpZXNQcm92aWRlci5nZXQodGhpcy5jb25maWcudHlwZSk7XG4gICAgICBpZiAocG9zc2liaWxpdGllc0Zyb21Qcm92aWRlciAmJiBwb3NzaWJpbGl0aWVzRnJvbVByb3ZpZGVyW3RoaXMuaXRlbS5rZXldKVxuICAgICAgICBwb3NzaWJpbGl0aWVzID0gcG9zc2liaWxpdGllc0Zyb21Qcm92aWRlclt0aGlzLml0ZW0ua2V5XTtcbiAgICB9XG5cbiAgICB0aGlzLnBvc3NpYmlsaXRpZXMkID0gcG9zc2liaWxpdGllcztcbiAgfVxuXG4gIHByaXZhdGUgaXNBcnJheVR5cGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICh0aGlzLml0ZW0/LmZpZWxkVHlwZSA9PT0gRmllbGRUeXBlLmNoZWNrKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVmcmVzaEZvckFycmF5KHZhbHM6IFtdLCB0eXBlKTogdm9pZCB7XG4gICAgY29uc3QgcXVlcmllcyA9IHRoaXMuZmlsdGVyLnF1ZXJ5LmZpbHRlcihcbiAgICAgICAgKHEpID0+IHEua2V5ID09PSB0aGlzLml0ZW0ua2V5ICYmIHEudHlwZSA9PT0gdHlwZVxuICAgICk7XG5cbiAgICBxdWVyaWVzLmZvckVhY2gocXVlcnkgPT4ge1xuICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmZpbHRlci5xdWVyeS5pbmRleE9mKHF1ZXJ5KTtcbiAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyLnF1ZXJ5LnNwbGljZShpbmRleCwgMSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAodmFscyA9PT0gbnVsbCB8fCB2YWxzID09PSB1bmRlZmluZWQgfHwgIXZhbHMubGVuZ3RoKSB7XG4gICAgICB0aGlzLmZhY2FkZS5yZWFkKHRoaXMuZmlsdGVyKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YWxzLmZvckVhY2godmFsID0+IHtcbiAgICAgIGNvbnN0IHF1ZXJ5ID0ge1xuICAgICAgICBrZXk6IHRoaXMuaXRlbS5rZXksXG4gICAgICAgIHR5cGU6IHR5cGUsXG4gICAgICAgIHZhbHVlOiB2YWwsXG4gICAgICB9O1xuXG4gICAgICB0aGlzLmZpbHRlci5xdWVyeS5wdXNoKHF1ZXJ5KTtcbiAgICB9KTtcblxuICAgIHRoaXMuZmFjYWRlLnJlYWQodGhpcy5maWx0ZXIpO1xuICB9XG59XG4iXX0=