@po-ui/ng-storage 5.22.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/{esm2015/lib/drivers/lokijs/po-loki-driver.js → esm2020/lib/drivers/lokijs/po-loki-driver.mjs} +2 -2
  2. package/{esm2015/lib/index.js → esm2020/lib/index.mjs} +0 -0
  3. package/esm2020/lib/po-storage.module.mjs +33 -0
  4. package/{esm2015/lib/services/po-storage-config.interface.js → esm2020/lib/services/po-storage-config.interface.mjs} +0 -0
  5. package/esm2020/lib/services/po-storage.service.mjs +520 -0
  6. package/esm2020/po-ui-ng-storage.mjs +5 -0
  7. package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
  8. package/fesm2015/{po-ui-ng-storage.js → po-ui-ng-storage.mjs} +23 -11
  9. package/fesm2015/po-ui-ng-storage.mjs.map +1 -0
  10. package/fesm2020/po-ui-ng-storage.mjs +764 -0
  11. package/fesm2020/po-ui-ng-storage.mjs.map +1 -0
  12. package/lib/po-storage.module.d.ts +4 -0
  13. package/lib/services/po-storage.service.d.ts +3 -0
  14. package/package.json +23 -11
  15. package/po-ui-ng-storage-6.0.0.tgz +0 -0
  16. package/po-ui-ng-storage.d.ts +1 -1
  17. package/schematics/ng-add/index.js +3 -3
  18. package/schematics/ng-add/index.js.map +1 -1
  19. package/schematics/ng-add/index.spec.js +4 -4
  20. package/schematics/ng-add/index.spec.js.map +1 -1
  21. package/bundles/po-ui-ng-storage.umd.js +0 -1279
  22. package/bundles/po-ui-ng-storage.umd.js.map +0 -1
  23. package/esm2015/lib/po-storage.module.js +0 -29
  24. package/esm2015/lib/services/po-storage.service.js +0 -546
  25. package/esm2015/po-ui-ng-storage.js +0 -6
  26. package/fesm2015/po-ui-ng-storage.js.map +0 -1
  27. package/po-ui-ng-storage-5.22.0.tgz +0 -0
  28. package/po-ui-ng-storage.metadata.json +0 -1
@@ -64,7 +64,7 @@ export class PoLokiDriver {
64
64
  try {
65
65
  this.configureLokiStorage(options, this.databaseInitialize.bind(this, options, resolve));
66
66
  }
67
- catch (_a) {
67
+ catch {
68
68
  throw new Error(`Cannot configure Loki Storage`);
69
69
  }
70
70
  });
@@ -206,4 +206,4 @@ export class PoLokiDriver {
206
206
  return this.collection.count();
207
207
  }
208
208
  }
209
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tbG9raS1kcml2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zdG9yYWdlL3NyYy9saWIvZHJpdmVycy9sb2tpanMvcG8tbG9raS1kcml2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sUUFBUSxDQUFDO0FBQzFCLE9BQU8sa0JBQWtCLE1BQU0saUNBQWlDLENBQUM7QUFFakUsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDO0FBRXZCLE1BQU0sT0FBTyxZQUFZO0lBS3ZCO1FBQ0UsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxNQUFNLEdBQUc7WUFDWixPQUFPLEVBQUUsUUFBUTtZQUNqQixZQUFZLEVBQUUsVUFBVSxPQUFZO2dCQUNsQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUNELEtBQUssRUFBRTtnQkFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDMUIsQ0FBQztZQUNELE9BQU8sRUFBRSxVQUFVLEdBQVE7Z0JBQ3pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDakMsQ0FBQztZQUNELE9BQU8sRUFBRSxVQUFVLGdCQUFxQjtnQkFDdEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1lBQzlDLENBQUM7WUFDRCxHQUFHLEVBQUUsVUFBVSxDQUFNO2dCQUNuQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzNCLENBQUM7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3pCLENBQUM7WUFDRCxNQUFNLEVBQUU7Z0JBQ04s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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2tpIGZyb20gJ2xva2lqcyc7XG5pbXBvcnQgTG9raUluZGV4ZWRBZGFwdGVyIGZyb20gJ2xva2lqcy9zcmMvbG9raS1pbmRleGVkLWFkYXB0ZXInO1xuXG5jb25zdCBrZXlGaWVsZCA9ICdrZXknO1xuXG5leHBvcnQgY2xhc3MgUG9Mb2tpRHJpdmVyIHtcbiAgcHJpdmF0ZSBjb2xsZWN0aW9uO1xuICBwcml2YXRlIGRiOiBhbnk7XG4gIHByaXZhdGUgZHJpdmVyOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgdGhpcy5kcml2ZXIgPSB7XG4gICAgICBfZHJpdmVyOiAnbG9raWpzJyxcbiAgICAgIF9pbml0U3RvcmFnZTogZnVuY3Rpb24gKG9wdGlvbnM6IGFueSkge1xuICAgICAgICByZXR1cm4gc2VsZi5pbml0U3RvcmFnZShvcHRpb25zKTtcbiAgICAgIH0sXG4gICAgICBjbGVhcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gc2VsZi5jbGVhcih0aGlzKTtcbiAgICAgIH0sXG4gICAgICBnZXRJdGVtOiBmdW5jdGlvbiAoa2V5OiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHNlbGYuZ2V0SXRlbSh0aGlzLCBrZXkpO1xuICAgICAgfSxcbiAgICAgIGl0ZXJhdGU6IGZ1bmN0aW9uIChpdGVyYXRvckNhbGxiYWNrOiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHNlbGYuaXRlcmF0ZSh0aGlzLCBpdGVyYXRvckNhbGxiYWNrKTtcbiAgICAgIH0sXG4gICAgICBrZXk6IGZ1bmN0aW9uIChuOiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHNlbGYua2V5KHRoaXMsIG4pO1xuICAgICAgfSxcbiAgICAgIGtleXM6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIHNlbGYua2V5cyh0aGlzKTtcbiAgICAgIH0sXG4gICAgICBsZW5ndGg6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIHNlbGYubGVuZ3RoKHRoaXMpO1xuICAgICAgfSxcbiAgICAgIHJlbW92ZUl0ZW06IGZ1bmN0aW9uIChrZXk6IGFueSkge1xuICAgICAgICByZXR1cm4gc2VsZi5yZW1vdmVJdGVtKHRoaXMsIGtleSk7XG4gICAgICB9LFxuICAgICAgc2V0SXRlbTogZnVuY3Rpb24gKGtleTogYW55LCB2YWx1ZTogYW55KSB7XG4gICAgICAgIHJldHVybiBzZWxmLnNldEl0ZW0odGhpcywga2V5LCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIC8vIEZ1bsOnw7VlcyBkZSBpdGVyYcOnw6NvXG5cbiAgcHJpdmF0ZSBjbGVhcihsb2NhbGZvcmFnZTogYW55KSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbG9jYWxmb3JhZ2UucmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ29sbGVjdGlvbkFuZERhdGFJbkNvbGxlY3Rpb24oKSkge1xuICAgICAgICAgIHRoaXMuY2xlYXJDb2xsZWN0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJdGVtKGxvY2FsZm9yYWdlOiBhbnksIGtleTogYW55KSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbG9jYWxmb3JhZ2UucmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ29sbGVjdGlvbkFuZERhdGFJbkNvbGxlY3Rpb24oKSkge1xuICAgICAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLmdldEl0ZW1JbkNvbGxlY3Rpb25CeShrZXlGaWVsZCwga2V5KTtcbiAgICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgcmVzb2x2ZShpdGVtLnZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0U3RvcmFnZShvcHRpb25zOiBhbnkpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLmNvbmZpZ3VyZUxva2lTdG9yYWdlKG9wdGlvbnMsIHRoaXMuZGF0YWJhc2VJbml0aWFsaXplLmJpbmQodGhpcywgb3B0aW9ucywgcmVzb2x2ZSkpO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGNvbmZpZ3VyZSBMb2tpIFN0b3JhZ2VgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaXRlcmF0ZShsb2NhbGZvcmFnZTogYW55LCBpdGVyYXRvckNhbGxiYWNrOiBGdW5jdGlvbikge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgIGxvY2FsZm9yYWdlLnJlYWR5KCkudGhlbigoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmhhc0NvbGxlY3Rpb25BbmREYXRhSW5Db2xsZWN0aW9uKCkpIHtcbiAgICAgICAgICB0aGlzLml0ZXJhdGVXaXRoRGF0YUl0ZW0oaXRlcmF0b3JDYWxsYmFjayk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBrZXkobG9jYWxmb3JhZ2U6IGFueSwgbjogc3RyaW5nIHwgbnVtYmVyKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbG9jYWxmb3JhZ2UucmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ29sbGVjdGlvbigpKSB7XG4gICAgICAgICAgY29uc3QgbWFwID0gdGhpcy5nZXRMb2tpTWFwKCk7XG4gICAgICAgICAgcmVzb2x2ZShtYXBbbl0pO1xuICAgICAgICB9XG4gICAgICAgIHJlc29sdmUobnVsbCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUga2V5cyhsb2NhbGZvcmFnZTogYW55KSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbG9jYWxmb3JhZ2UucmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ29sbGVjdGlvbigpKSB7XG4gICAgICAgICAgY29uc3Qga2V5cyA9IFtdO1xuICAgICAgICAgIGNvbnN0IG1hcCA9IHRoaXMuZ2V0TG9raU1hcCgpO1xuICAgICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKG1hcCkpIHtcbiAgICAgICAgICAgIGtleXMucHVzaChtYXBba2V5XSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJlc29sdmUoa2V5cyk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBsZW5ndGgobG9jYWxmb3JhZ2U6IGFueSkge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgIGxvY2FsZm9yYWdlLnJlYWR5KCkudGhlbigoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmhhc0NvbGxlY3Rpb24oKSkge1xuICAgICAgICAgIHJlc29sdmUodGhpcy5nZXROdW1iZXJJdGVuc0luQ29sbGVjdGlvbigpKTtcbiAgICAgICAgfVxuICAgICAgICByZXNvbHZlKDApO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZUl0ZW0obG9jYWxmb3JhZ2U6IGFueSwga2V5OiBhbnkpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICBsb2NhbGZvcmFnZS5yZWFkeSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5oYXNDb2xsZWN0aW9uKCkpIHtcbiAgICAgICAgICB0aGlzLmZpbmRBbmRSZW1vdmVJdGVtKGtleSk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRJdGVtKGxvY2FsZm9yYWdlOiBhbnksIGtleTogYW55LCB2YWx1ZTogYW55KSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbG9jYWxmb3JhZ2UucmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ29sbGVjdGlvbigpKSB7XG4gICAgICAgICAgbGV0IGl0ZW06IGFueTtcbiAgICAgICAgICBpZiAodGhpcy5oYXNEYXRhSW5Db2xsZWN0aW9uKCkpIHtcbiAgICAgICAgICAgIGl0ZW0gPSB0aGlzLmdldEl0ZW1JbkNvbGxlY3Rpb25CeShrZXlGaWVsZCwga2V5KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5pbnNlcnRPclVwZGF0ZShpdGVtLCB2YWx1ZSwga2V5KTtcbiAgICAgICAgfVxuICAgICAgICByZXNvbHZlKHZhbHVlKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gRnVuw6fDtWVzIGRlIGFjZXNzbyBhbyBzdG9yYWdlXG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmdcbiAgZ2V0RHJpdmVyKCkge1xuICAgIHJldHVybiB0aGlzLmRyaXZlcjtcbiAgfVxuXG4gIHByaXZhdGUgYWRkQ29sbGVjdGlvbihvcHRpb25zOiBhbnkpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmRiLmFkZENvbGxlY3Rpb24ob3B0aW9ucy5zdG9yZU5hbWUsIHsgdW5pcXVlOiBba2V5RmllbGRdIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhckNvbGxlY3Rpb24oKSB7XG4gICAgdGhpcy5jb2xsZWN0aW9uLmNsZWFyKHsgcmVtb3ZlSW5kaWNlczogZmFsc2UgfSk7XG4gIH1cblxuICBwcml2YXRlIGNvbmZpZ3VyZUxva2lTdG9yYWdlKG9wdGlvbnM6IGFueSwgZGF0YWJhc2VJbml0aWFsaXplOiBhbnkpIHtcbiAgICBjb25zdCBpZGJBZGFwdGVyID0gbmV3IExva2lJbmRleGVkQWRhcHRlcigpO1xuICAgIHRoaXMuZGIgPSBuZXcgTG9raShvcHRpb25zLm5hbWUsIHtcbiAgICAgIGFkYXB0ZXI6IGlkYkFkYXB0ZXIsXG4gICAgICBhdXRvbG9hZDogdHJ1ZSxcbiAgICAgIGF1dG9sb2FkQ2FsbGJhY2s6IGRhdGFiYXNlSW5pdGlhbGl6ZSxcbiAgICAgIGF1dG9zYXZlOiB0cnVlLFxuICAgICAgYXV0b3NhdmVJbnRlcnZhbDogNDAwMFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kQW5kUmVtb3ZlSXRlbShrZXk6IGFueSkge1xuICAgIHRoaXMuY29sbGVjdGlvbi5maW5kQW5kUmVtb3ZlKHsgW2tleUZpZWxkXToga2V5IH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb2xsZWN0aW9uKG9wdGlvbnM6IGFueSk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZGIuZ2V0Q29sbGVjdGlvbihvcHRpb25zLnN0b3JlTmFtZSk7XG4gIH1cblxuICBwcml2YXRlIGRhdGFiYXNlSW5pdGlhbGl6ZShvcHRpb25zOiBhbnksIHJlc29sdmU6IEZ1bmN0aW9uKSB7XG4gICAgdGhpcy5jb2xsZWN0aW9uID0gdGhpcy5nZXRDb2xsZWN0aW9uKG9wdGlvbnMpO1xuICAgIGlmICghdGhpcy5oYXNDb2xsZWN0aW9uKCkpIHtcbiAgICAgIHRoaXMuY29sbGVjdGlvbiA9IHRoaXMuYWRkQ29sbGVjdGlvbihvcHRpb25zKTtcbiAgICB9XG4gICAgcmVzb2x2ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJdGVtSW5Db2xsZWN0aW9uQnkoZmllbGRLZXk6IHN0cmluZywga2V5OiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5jb2xsZWN0aW9uLmJ5KGZpZWxkS2V5LCBrZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRMb2tpTWFwKCkge1xuICAgIHJldHVybiB0aGlzLmNvbGxlY3Rpb24uY29uc3RyYWludHMudW5pcXVlW2tleUZpZWxkXS5sb2tpTWFwO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNDb2xsZWN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmNvbGxlY3Rpb247XG4gIH1cblxuICBwcml2YXRlIGhhc0RhdGFJbkNvbGxlY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuY29sbGVjdGlvbi5kYXRhICYmIHRoaXMuY29sbGVjdGlvbi5kYXRhLmxlbmd0aDtcbiAgfVxuXG4gIHByaXZhdGUgaGFzQ29sbGVjdGlvbkFuZERhdGFJbkNvbGxlY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFzQ29sbGVjdGlvbigpICYmIHRoaXMuaGFzRGF0YUluQ29sbGVjdGlvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnNlcnRPclVwZGF0ZShpdGVtOiBhbnksIHZhbHVlOiBhbnksIGtleTogYW55KSB7XG4gICAgaWYgKGl0ZW0pIHtcbiAgICAgIGl0ZW0udmFsdWUgPSB2YWx1ZTtcbiAgICAgIHRoaXMuY29sbGVjdGlvbi51cGRhdGUoaXRlbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29sbGVjdGlvbi5pbnNlcnQoeyBba2V5RmllbGRdOiBrZXksIHZhbHVlOiB2YWx1ZSB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGl0ZXJhdGVXaXRoRGF0YUl0ZW0oaXRlcmF0b3JjYWxsYmFjazogRnVuY3Rpb24pIHtcbiAgICB0aGlzLmNvbGxlY3Rpb24uZGF0YS5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgaXRlcmF0b3JjYWxsYmFjayhlbGVtZW50LnZhbHVlLCBlbGVtZW50W2tleUZpZWxkXSwgZWxlbWVudC4kbG9raSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldE51bWJlckl0ZW5zSW5Db2xsZWN0aW9uKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY29sbGVjdGlvbi5jb3VudCgpO1xuICB9XG59XG4iXX0=
209
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tbG9raS1kcml2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zdG9yYWdlL3NyYy9saWIvZHJpdmVycy9sb2tpanMvcG8tbG9raS1kcml2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sUUFBUSxDQUFDO0FBQzFCLE9BQU8sa0JBQWtCLE1BQU0saUNBQWlDLENBQUM7QUFFakUsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDO0FBRXZCLE1BQU0sT0FBTyxZQUFZO0lBS3ZCO1FBQ0UsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxNQUFNLEdBQUc7WUFDWixPQUFPLEVBQUUsUUFBUTtZQUNqQixZQUFZLEVBQUUsVUFBVSxPQUFZO2dCQUNsQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUNELEtBQUssRUFBRTtnQkFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDMUIsQ0FBQztZQUNELE9BQU8sRUFBRSxVQUFVLEdBQVE7Z0JBQ3pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDakMsQ0FBQztZQUNELE9BQU8sRUFBRSxVQUFVLGdCQUFxQjtnQkFDdEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1lBQzlDLENBQUM7WUFDRCxHQUFHLEVBQUUsVUFBVSxDQUFNO2dCQUNuQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzNCLENBQUM7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3pCLENBQUM7WUFDRCxNQUFNLEVBQUU7Z0JBQ04s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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMb2tpIGZyb20gJ2xva2lqcyc7XG5pbXBvcnQgTG9raUluZGV4ZWRBZGFwdGVyIGZyb20gJ2xva2lqcy9zcmMvbG9raS1pbmRleGVkLWFkYXB0ZXInO1xuXG5jb25zdCBrZXlGaWVsZCA9ICdrZXknO1xuXG5leHBvcnQgY2xhc3MgUG9Mb2tpRHJpdmVyIHtcbiAgcHJpdmF0ZSBjb2xsZWN0aW9uO1xuICBwcml2YXRlIGRiOiBhbnk7XG4gIHByaXZhdGUgZHJpdmVyOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgdGhpcy5kcml2ZXIgPSB7XG4gICAgICBfZHJpdmVyOiAnbG9raWpzJyxcbiAgICAgIF9pbml0U3RvcmFnZTogZnVuY3Rpb24gKG9wdGlvbnM6IGFueSkge1xuICAgICAgICByZXR1cm4gc2VsZi5pbml0U3RvcmFnZShvcHRpb25zKTtcbiAgICAgIH0sXG4gICAgICBjbGVhcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gc2VsZi5jbGVhcih0aGlzKTtcbiAgICAgIH0sXG4gICAgICBnZXRJdGVtOiBmdW5jdGlvbiAoa2V5OiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHNlbGYuZ2V0SXRlbSh0aGlzLCBrZXkpO1xuICAgICAgfSxcbiAgICAgIGl0ZXJhdGU6IGZ1bmN0aW9uIChpdGVyYXRvckNhbGxiYWNrOiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHNlbGYuaXRlcmF0ZSh0aGlzLCBpdGVyYXRvckNhbGxiYWNrKTtcbiAgICAgIH0sXG4gICAgICBrZXk6IGZ1bmN0aW9uIChuOiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHNlbGYua2V5KHRoaXMsIG4pO1xuICAgICAgfSxcbiAgICAgIGtleXM6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIHNlbGYua2V5cyh0aGlzKTtcbiAgICAgIH0sXG4gICAgICBsZW5ndGg6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIHNlbGYubGVuZ3RoKHRoaXMpO1xuICAgICAgfSxcbiAgICAgIHJlbW92ZUl0ZW06IGZ1bmN0aW9uIChrZXk6IGFueSkge1xuICAgICAgICByZXR1cm4gc2VsZi5yZW1vdmVJdGVtKHRoaXMsIGtleSk7XG4gICAgICB9LFxuICAgICAgc2V0SXRlbTogZnVuY3Rpb24gKGtleTogYW55LCB2YWx1ZTogYW55KSB7XG4gICAgICAgIHJldHVybiBzZWxmLnNldEl0ZW0odGhpcywga2V5LCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIC8vIEZ1bsOnw7VlcyBkZSBpdGVyYcOnw6NvXG5cbiAgcHJpdmF0ZSBjbGVhcihsb2NhbGZvcmFnZTogYW55KSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbG9jYWxmb3JhZ2UucmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ29sbGVjdGlvbkFuZERhdGFJbkNvbGxlY3Rpb24oKSkge1xuICAgICAgICAgIHRoaXMuY2xlYXJDb2xsZWN0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJdGVtKGxvY2FsZm9yYWdlOiBhbnksIGtleTogYW55KSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbG9jYWxmb3JhZ2UucmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ29sbGVjdGlvbkFuZERhdGFJbkNvbGxlY3Rpb24oKSkge1xuICAgICAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLmdldEl0ZW1JbkNvbGxlY3Rpb25CeShrZXlGaWVsZCwga2V5KTtcbiAgICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgcmVzb2x2ZShpdGVtLnZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0U3RvcmFnZShvcHRpb25zOiBhbnkpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLmNvbmZpZ3VyZUxva2lTdG9yYWdlKG9wdGlvbnMsIHRoaXMuZGF0YWJhc2VJbml0aWFsaXplLmJpbmQodGhpcywgb3B0aW9ucywgcmVzb2x2ZSkpO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGNvbmZpZ3VyZSBMb2tpIFN0b3JhZ2VgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaXRlcmF0ZShsb2NhbGZvcmFnZTogYW55LCBpdGVyYXRvckNhbGxiYWNrOiBGdW5jdGlvbikge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgIGxvY2FsZm9yYWdlLnJlYWR5KCkudGhlbigoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmhhc0NvbGxlY3Rpb25BbmREYXRhSW5Db2xsZWN0aW9uKCkpIHtcbiAgICAgICAgICB0aGlzLml0ZXJhdGVXaXRoRGF0YUl0ZW0oaXRlcmF0b3JDYWxsYmFjayk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBrZXkobG9jYWxmb3JhZ2U6IGFueSwgbjogc3RyaW5nIHwgbnVtYmVyKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbG9jYWxmb3JhZ2UucmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ29sbGVjdGlvbigpKSB7XG4gICAgICAgICAgY29uc3QgbWFwID0gdGhpcy5nZXRMb2tpTWFwKCk7XG4gICAgICAgICAgcmVzb2x2ZShtYXBbbl0pO1xuICAgICAgICB9XG4gICAgICAgIHJlc29sdmUobnVsbCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUga2V5cyhsb2NhbGZvcmFnZTogYW55KSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbG9jYWxmb3JhZ2UucmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ29sbGVjdGlvbigpKSB7XG4gICAgICAgICAgY29uc3Qga2V5cyA9IFtdO1xuICAgICAgICAgIGNvbnN0IG1hcCA9IHRoaXMuZ2V0TG9raU1hcCgpO1xuICAgICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKG1hcCkpIHtcbiAgICAgICAgICAgIGtleXMucHVzaChtYXBba2V5XSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJlc29sdmUoa2V5cyk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBsZW5ndGgobG9jYWxmb3JhZ2U6IGFueSkge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgIGxvY2FsZm9yYWdlLnJlYWR5KCkudGhlbigoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmhhc0NvbGxlY3Rpb24oKSkge1xuICAgICAgICAgIHJlc29sdmUodGhpcy5nZXROdW1iZXJJdGVuc0luQ29sbGVjdGlvbigpKTtcbiAgICAgICAgfVxuICAgICAgICByZXNvbHZlKDApO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZUl0ZW0obG9jYWxmb3JhZ2U6IGFueSwga2V5OiBhbnkpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICBsb2NhbGZvcmFnZS5yZWFkeSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5oYXNDb2xsZWN0aW9uKCkpIHtcbiAgICAgICAgICB0aGlzLmZpbmRBbmRSZW1vdmVJdGVtKGtleSk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRJdGVtKGxvY2FsZm9yYWdlOiBhbnksIGtleTogYW55LCB2YWx1ZTogYW55KSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgbG9jYWxmb3JhZ2UucmVhZHkoKS50aGVuKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ29sbGVjdGlvbigpKSB7XG4gICAgICAgICAgbGV0IGl0ZW06IGFueTtcbiAgICAgICAgICBpZiAodGhpcy5oYXNEYXRhSW5Db2xsZWN0aW9uKCkpIHtcbiAgICAgICAgICAgIGl0ZW0gPSB0aGlzLmdldEl0ZW1JbkNvbGxlY3Rpb25CeShrZXlGaWVsZCwga2V5KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5pbnNlcnRPclVwZGF0ZShpdGVtLCB2YWx1ZSwga2V5KTtcbiAgICAgICAgfVxuICAgICAgICByZXNvbHZlKHZhbHVlKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gRnVuw6fDtWVzIGRlIGFjZXNzbyBhbyBzdG9yYWdlXG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmdcbiAgZ2V0RHJpdmVyKCkge1xuICAgIHJldHVybiB0aGlzLmRyaXZlcjtcbiAgfVxuXG4gIHByaXZhdGUgYWRkQ29sbGVjdGlvbihvcHRpb25zOiBhbnkpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmRiLmFkZENvbGxlY3Rpb24ob3B0aW9ucy5zdG9yZU5hbWUsIHsgdW5pcXVlOiBba2V5RmllbGRdIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhckNvbGxlY3Rpb24oKSB7XG4gICAgdGhpcy5jb2xsZWN0aW9uLmNsZWFyKHsgcmVtb3ZlSW5kaWNlczogZmFsc2UgfSk7XG4gIH1cblxuICBwcml2YXRlIGNvbmZpZ3VyZUxva2lTdG9yYWdlKG9wdGlvbnM6IGFueSwgZGF0YWJhc2VJbml0aWFsaXplOiBhbnkpIHtcbiAgICBjb25zdCBpZGJBZGFwdGVyID0gbmV3IExva2lJbmRleGVkQWRhcHRlcigpO1xuICAgIHRoaXMuZGIgPSBuZXcgTG9raShvcHRpb25zLm5hbWUsIHtcbiAgICAgIGFkYXB0ZXI6IGlkYkFkYXB0ZXIsXG4gICAgICBhdXRvbG9hZDogdHJ1ZSxcbiAgICAgIGF1dG9sb2FkQ2FsbGJhY2s6IGRhdGFiYXNlSW5pdGlhbGl6ZSxcbiAgICAgIGF1dG9zYXZlOiB0cnVlLFxuICAgICAgYXV0b3NhdmVJbnRlcnZhbDogNDAwMFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kQW5kUmVtb3ZlSXRlbShrZXk6IGFueSkge1xuICAgIHRoaXMuY29sbGVjdGlvbi5maW5kQW5kUmVtb3ZlKHsgW2tleUZpZWxkXToga2V5IH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb2xsZWN0aW9uKG9wdGlvbnM6IGFueSk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZGIuZ2V0Q29sbGVjdGlvbihvcHRpb25zLnN0b3JlTmFtZSk7XG4gIH1cblxuICBwcml2YXRlIGRhdGFiYXNlSW5pdGlhbGl6ZShvcHRpb25zOiBhbnksIHJlc29sdmU6IEZ1bmN0aW9uKSB7XG4gICAgdGhpcy5jb2xsZWN0aW9uID0gdGhpcy5nZXRDb2xsZWN0aW9uKG9wdGlvbnMpO1xuICAgIGlmICghdGhpcy5oYXNDb2xsZWN0aW9uKCkpIHtcbiAgICAgIHRoaXMuY29sbGVjdGlvbiA9IHRoaXMuYWRkQ29sbGVjdGlvbihvcHRpb25zKTtcbiAgICB9XG4gICAgcmVzb2x2ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJdGVtSW5Db2xsZWN0aW9uQnkoZmllbGRLZXk6IHN0cmluZywga2V5OiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5jb2xsZWN0aW9uLmJ5KGZpZWxkS2V5LCBrZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRMb2tpTWFwKCkge1xuICAgIHJldHVybiB0aGlzLmNvbGxlY3Rpb24uY29uc3RyYWludHMudW5pcXVlW2tleUZpZWxkXS5sb2tpTWFwO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNDb2xsZWN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmNvbGxlY3Rpb247XG4gIH1cblxuICBwcml2YXRlIGhhc0RhdGFJbkNvbGxlY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuY29sbGVjdGlvbi5kYXRhICYmIHRoaXMuY29sbGVjdGlvbi5kYXRhLmxlbmd0aDtcbiAgfVxuXG4gIHByaXZhdGUgaGFzQ29sbGVjdGlvbkFuZERhdGFJbkNvbGxlY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFzQ29sbGVjdGlvbigpICYmIHRoaXMuaGFzRGF0YUluQ29sbGVjdGlvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnNlcnRPclVwZGF0ZShpdGVtOiBhbnksIHZhbHVlOiBhbnksIGtleTogYW55KSB7XG4gICAgaWYgKGl0ZW0pIHtcbiAgICAgIGl0ZW0udmFsdWUgPSB2YWx1ZTtcbiAgICAgIHRoaXMuY29sbGVjdGlvbi51cGRhdGUoaXRlbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29sbGVjdGlvbi5pbnNlcnQoeyBba2V5RmllbGRdOiBrZXksIHZhbHVlOiB2YWx1ZSB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGl0ZXJhdGVXaXRoRGF0YUl0ZW0oaXRlcmF0b3JjYWxsYmFjazogRnVuY3Rpb24pIHtcbiAgICB0aGlzLmNvbGxlY3Rpb24uZGF0YS5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgaXRlcmF0b3JjYWxsYmFjayhlbGVtZW50LnZhbHVlLCBlbGVtZW50W2tleUZpZWxkXSwgZWxlbWVudC4kbG9raSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldE51bWJlckl0ZW5zSW5Db2xsZWN0aW9uKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY29sbGVjdGlvbi5jb3VudCgpO1xuICB9XG59XG4iXX0=
File without changes
@@ -0,0 +1,33 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { PoStorageService, PO_STORAGE_CONFIG_TOKEN } from './services/po-storage.service';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * @description
6
+ *
7
+ * Módulo do componente PoStorage responsável por manipular o storage do browser.
8
+ */
9
+ export class PoStorageModule {
10
+ static forRoot(storageConfig) {
11
+ return {
12
+ ngModule: PoStorageModule,
13
+ providers: [
14
+ {
15
+ provide: PO_STORAGE_CONFIG_TOKEN,
16
+ useValue: storageConfig || PoStorageService.getDefaultConfig()
17
+ },
18
+ {
19
+ provide: PoStorageService,
20
+ useFactory: PoStorageService.providePoStorage,
21
+ deps: [PO_STORAGE_CONFIG_TOKEN]
22
+ }
23
+ ]
24
+ };
25
+ }
26
+ }
27
+ PoStorageModule.ɵfac = function PoStorageModule_Factory(t) { return new (t || PoStorageModule)(); };
28
+ PoStorageModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: PoStorageModule });
29
+ PoStorageModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({});
30
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoStorageModule, [{
31
+ type: NgModule
32
+ }], null, null); })();
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tc3RvcmFnZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zdG9yYWdlL3NyYy9saWIvcG8tc3RvcmFnZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBRTFGOzs7O0dBSUc7QUFHSCxNQUFNLE9BQU8sZUFBZTtJQUMxQixNQUFNLENBQUMsT0FBTyxDQUFDLGFBQStCO1FBQzVDLE9BQU87WUFDTCxRQUFRLEVBQUUsZUFBZTtZQUN6QixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLHVCQUF1QjtvQkFDaEMsUUFBUSxFQUFFLGFBQWEsSUFBSSxnQkFBZ0IsQ0FBQyxnQkFBZ0IsRUFBRTtpQkFDL0Q7Z0JBQ0Q7b0JBQ0UsT0FBTyxFQUFFLGdCQUFnQjtvQkFDekIsVUFBVSxFQUFFLGdCQUFnQixDQUFDLGdCQUFnQjtvQkFDN0MsSUFBSSxFQUFFLENBQUMsdUJBQXVCLENBQUM7aUJBQ2hDO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7OEVBaEJVLGVBQWU7aUVBQWYsZUFBZTs7dUZBQWYsZUFBZTtjQUQzQixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUG9TdG9yYWdlQ29uZmlnIH0gZnJvbSAnLi9zZXJ2aWNlcy9wby1zdG9yYWdlLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9TdG9yYWdlU2VydmljZSwgUE9fU1RPUkFHRV9DT05GSUdfVE9LRU4gfSBmcm9tICcuL3NlcnZpY2VzL3BvLXN0b3JhZ2Uuc2VydmljZSc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogTcOzZHVsbyBkbyBjb21wb25lbnRlIFBvU3RvcmFnZSByZXNwb25zw6F2ZWwgcG9yIG1hbmlwdWxhciBvIHN0b3JhZ2UgZG8gYnJvd3Nlci5cbiAqL1xuXG5ATmdNb2R1bGUoKVxuZXhwb3J0IGNsYXNzIFBvU3RvcmFnZU1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KHN0b3JhZ2VDb25maWc/OiBQb1N0b3JhZ2VDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFBvU3RvcmFnZU1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogUG9TdG9yYWdlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBQT19TVE9SQUdFX0NPTkZJR19UT0tFTixcbiAgICAgICAgICB1c2VWYWx1ZTogc3RvcmFnZUNvbmZpZyB8fCBQb1N0b3JhZ2VTZXJ2aWNlLmdldERlZmF1bHRDb25maWcoKVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogUG9TdG9yYWdlU2VydmljZSxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBQb1N0b3JhZ2VTZXJ2aWNlLnByb3ZpZGVQb1N0b3JhZ2UsXG4gICAgICAgICAgZGVwczogW1BPX1NUT1JBR0VfQ09ORklHX1RPS0VOXVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfTtcbiAgfVxufVxuIl19