@ethlete/query 0.1.0-next.9 → 1.0.1

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 (42) hide show
  1. package/esm2020/lib/auth/auth-provider.types.mjs +1 -1
  2. package/esm2020/lib/auth/auth-provider.utils.mjs +1 -1
  3. package/esm2020/lib/auth/basic-auth-provider.mjs +4 -5
  4. package/esm2020/lib/auth/bearer-auth-provider.mjs +117 -60
  5. package/esm2020/lib/auth/custom-header-auth-provider.mjs +4 -5
  6. package/esm2020/lib/directives/infinity-query-trigger.directive.mjs +3 -3
  7. package/esm2020/lib/directives/infinity-query.directive.mjs +7 -9
  8. package/esm2020/lib/directives/query.directive.mjs +23 -19
  9. package/esm2020/lib/gql/gql.mjs +2 -2
  10. package/esm2020/lib/infinite-query/infinity-query.mjs +15 -11
  11. package/esm2020/lib/query/query.mjs +111 -86
  12. package/esm2020/lib/query/query.types.mjs +1 -1
  13. package/esm2020/lib/query/query.utils.mjs +51 -4
  14. package/esm2020/lib/query-client/query-client.mjs +25 -13
  15. package/esm2020/lib/query-client/query-client.types.mjs +1 -1
  16. package/esm2020/lib/query-form/query-form.mjs +7 -6
  17. package/esm2020/lib/request/request.mjs +168 -19
  18. package/esm2020/lib/request/request.types.mjs +1 -1
  19. package/esm2020/lib/request/request.util.mjs +66 -91
  20. package/fesm2015/ethlete-query.mjs +673 -398
  21. package/fesm2015/ethlete-query.mjs.map +1 -1
  22. package/fesm2020/ethlete-query.mjs +657 -389
  23. package/fesm2020/ethlete-query.mjs.map +1 -1
  24. package/lib/auth/auth-provider.types.d.ts +30 -22
  25. package/lib/auth/auth-provider.utils.d.ts +2 -1
  26. package/lib/auth/basic-auth-provider.d.ts +0 -2
  27. package/lib/auth/bearer-auth-provider.d.ts +14 -14
  28. package/lib/auth/custom-header-auth-provider.d.ts +0 -2
  29. package/lib/directives/infinity-query.directive.d.ts +1 -2
  30. package/lib/directives/query.directive.d.ts +6 -5
  31. package/lib/gql/gql.d.ts +5 -1
  32. package/lib/infinite-query/infinity-query.types.d.ts +4 -4
  33. package/lib/query/query.d.ts +6 -6
  34. package/lib/query/query.types.d.ts +78 -43
  35. package/lib/query/query.utils.d.ts +21 -5
  36. package/lib/query-client/query-client.d.ts +13 -11
  37. package/lib/query-client/query-client.types.d.ts +22 -10
  38. package/lib/query-form/query-form.types.d.ts +2 -2
  39. package/lib/request/request.d.ts +3 -9
  40. package/lib/request/request.types.d.ts +63 -15
  41. package/lib/request/request.util.d.ts +74 -7
  42. package/package.json +2 -5
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1wcm92aWRlci50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcXVlcnkvc3JjL2xpYi9hdXRoL2F1dGgtcHJvdmlkZXIudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJvdXRlU3RyaW5nIH0gZnJvbSAnLi4vcXVlcnknO1xuaW1wb3J0IHsgUXVlcnlDbGllbnQgfSBmcm9tICcuLi9xdWVyeS1jbGllbnQnO1xuaW1wb3J0IHsgTWV0aG9kIH0gZnJvbSAnLi4vcmVxdWVzdCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aFByb3ZpZGVyIHtcbiAgLyoqXG4gICAqIFRoZSB1cCB0byBkYXRlIGF1dGggaGVhZGVyLlxuICAgKiBUaGlzIHdpbGwgYXV0b21hdGljYWxseSBnZXQgaW5qZWN0ZWQgaW50byBldmVyeSBxdWVyeSB0aGF0IGhhcyB0aGUgYHNlY3VyZWAgcHJvcGVydHkgc2V0IHRvIGB0cnVlYC5cbiAgICovXG4gIGhlYWRlcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAvKipcbiAgICogQ2xlYW51cCBmdW5jdGlvbiB0aGF0IGdldHMgY2FsbGVkIG9uY2UgdGhlIGF1dGggcHJvdmlkZXIgZ2V0cyBkZXN0cm95ZWQuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY2xlYW5VcCgpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBSZWZlcmVuY2UgdG8gdGhlIHF1ZXJ5IGNsaWVudFxuICAgKi9cbiAgcXVlcnlDbGllbnQ6IFF1ZXJ5Q2xpZW50IHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXRoUHJvdmlkZXJCYXNpY0NvbmZpZyB7XG4gIC8qKlxuICAgKiBCYXNpYyBhdXRoIHVzZXJuYW1lXG4gICAqL1xuICB1c2VybmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBCYXNpYyBhdXRoIHBhc3N3b3JkXG4gICAqL1xuICBwYXNzd29yZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGhQcm92aWRlckN1c3RvbUhlYWRlckNvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgY3VzdG9tIGhlYWRlciBuYW1lXG4gICAqIEBleGFtcGxlIGBYLUFwaS1LZXlgXG4gICAqL1xuICBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBjdXN0b20gaGVhZGVyIHZhbHVlXG4gICAqIEBleGFtcGxlIGBteUFwaUtleWBcbiAgICovXG4gIHZhbHVlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aFByb3ZpZGVyQmVhcmVyQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBpbml0aWFsIGp3dFxuICAgKi9cbiAgdG9rZW46IHN0cmluZztcblxuICAvKipcbiAgICogUmVmcmVzaCB0b2tlbiBjb25maWd1cmF0aW9uXG4gICAqL1xuICByZWZyZXNoQ29uZmlnPzogQmVhcmVyUmVmcmVzaENvbmZpZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCZWFyZXJSZWZyZXNoQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBpbml0aWFsIHJlZnJlc2ggdG9rZW5cbiAgICovXG4gIHRva2VuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhcGkncyByZWZyZXNoIHJvdXRlXG4gICAqIEBleGFtcGxlIC9hcGkvYXV0aC9yZWZyZXNoLXRva2VuXG4gICAqL1xuICByb3V0ZTogUm91dGVTdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhcGkncyByZWZyZXNoIHJvdXRlIG1ldGhvZFxuICAgKi9cbiAgbWV0aG9kOiBNZXRob2Q7XG5cbiAgLyoqXG4gICAqIFRoZSBleHBpcmVzIGluIHByb3BlcnR5IG5hbWUgaW5zaWRlIHRoZSBqd3QgYm9keVxuICAgKiBAZGVmYXVsdCAnZXhwJ1xuICAgKi9cbiAgZXhwaXJlc0luUHJvcGVydHlOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZW4gdGhlIHRva2VuIHNob3VsZCBiZSByZWZyZXNoZWQuXG4gICAqIEBkZWZhdWx0IEF1dGhCZWFyZXJSZWZyZXNoU3RyYXRlZ3kuQmVmb3JlRXhwaXJhdGlvblxuICAgKi9cbiAgc3RyYXRlZ3k/OiBBdXRoQmVhcmVyUmVmcmVzaFN0cmF0ZWd5O1xuXG4gIC8qKlxuICAgKiBBZGFwdGVyIGZ1bmN0aW9uIHVzZWQgdG8gYnVpbGQgdGhlIHJlcXVlc3QgYm9keSBmb3IgdGhlIHJlZnJlc2ggcmVxdWVzdC5cbiAgICogQGRlZmF1bHQgeyByZWZyZXNoVG9rZW46IFwicmVmcmVzaFRva2VuXCIgfVxuICAgKi9cbiAgYm9keUFkYXB0ZXI/OiAocmVmcmVzaFRva2VuOiBzdHJpbmcpID0+IHVua25vd247XG5cbiAgLyoqXG4gICAqIEFkYXB0ZXIgZnVuY3Rpb24gdXNlZCB0byBleHRyYWN0IHRoZSB0b2tlbiBhbmQgcmVmcmVzaFRva2VuIGZyb20gdGhlIHJlc3BvbnNlLlxuICAgKiBAZGVmYXVsdCB7IHRva2VuOiBcInRva2VuXCIsIHJlZnJlc2hUb2tlbjogXCJyZWZyZXNoVG9rZW5cIiB9XG4gICAqL1xuICByZXNwb25zZUFkYXB0ZXI/OiAocmVzcG9uc2U6IHVua25vd24pID0+IFRva2VuUmVzcG9uc2U7XG59XG5cbmV4cG9ydCBjb25zdCBlbnVtIEF1dGhCZWFyZXJSZWZyZXNoU3RyYXRlZ3kge1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSByZWZyZXNoIHRoZSB0b2tlbiA1IG1pbnV0ZXMgYmVmb3JlIGV4cGlyYXRpb24uXG4gICAqL1xuICBCZWZvcmVFeHBpcmF0aW9uID0gJ2JlZm9yZUV4cGlyYXRpb24nLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRva2VuUmVzcG9uc2Uge1xuICAvKipcbiAgICogVGhlIGFjY2VzcyB0b2tlbiB1c2VkIGluc2lkZSB0aGUgYXV0aG9yaXphdGlvbiBodHRwIGhlYWRlci5cbiAgICovXG4gIHRva2VuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSByZWZyZXNoIHRva2VuIHVzZWQgZm9yIHJlcXVlc3RpbmcgYSBuZXcgdG9rZW4gcmVzcG9uc2Ugb25jZSB0aGUgY3VycmVudCB0b2tlcyBpcyBleHBpcmVkLlxuICAgKiBUaGlzIHByb3BlcnR5IGlzIHJlcXVpcmVkIGlmIHRoZSBiZWFyZXIgcmVmcmVzaCBjb25maWcgaXMgc2V0LlxuICAgKi9cbiAgcmVmcmVzaFRva2VuPzogc3RyaW5nO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1wcm92aWRlci50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcXVlcnkvc3JjL2xpYi9hdXRoL2F1dGgtcHJvdmlkZXIudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFF1ZXJ5UmVzcG9uc2VUeXBlIH0gZnJvbSAnLi4vcXVlcnknO1xuaW1wb3J0IHsgQW55UXVlcnlDcmVhdG9yLCBRdWVyeUNyZWF0b3JBcmdzLCBRdWVyeUNyZWF0b3JSZXR1cm5UeXBlIH0gZnJvbSAnLi4vcXVlcnktY2xpZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBBdXRoUHJvdmlkZXIge1xuICAvKipcbiAgICogVGhlIHVwIHRvIGRhdGUgYXV0aCBoZWFkZXIuXG4gICAqIFRoaXMgd2lsbCBhdXRvbWF0aWNhbGx5IGdldCBpbmplY3RlZCBpbnRvIGV2ZXJ5IHF1ZXJ5IHRoYXQgaGFzIHRoZSBgc2VjdXJlYCBwcm9wZXJ0eSBzZXQgdG8gYHRydWVgLlxuICAgKi9cbiAgaGVhZGVyOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG4gIC8qKlxuICAgKiBDbGVhbnVwIGZ1bmN0aW9uIHRoYXQgZ2V0cyBjYWxsZWQgb25jZSB0aGUgYXV0aCBwcm92aWRlciBnZXRzIGRlc3Ryb3llZC5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBjbGVhblVwKCk6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aFByb3ZpZGVyQmFzaWNDb25maWcge1xuICAvKipcbiAgICogQmFzaWMgYXV0aCB1c2VybmFtZVxuICAgKi9cbiAgdXNlcm5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQmFzaWMgYXV0aCBwYXNzd29yZFxuICAgKi9cbiAgcGFzc3dvcmQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXRoUHJvdmlkZXJDdXN0b21IZWFkZXJDb25maWcge1xuICAvKipcbiAgICogVGhlIGN1c3RvbSBoZWFkZXIgbmFtZVxuICAgKiBAZXhhbXBsZSBgWC1BcGktS2V5YFxuICAgKi9cbiAgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgY3VzdG9tIGhlYWRlciB2YWx1ZVxuICAgKiBAZXhhbXBsZSBgbXlBcGlLZXlgXG4gICAqL1xuICB2YWx1ZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGhQcm92aWRlckJlYXJlckNvbmZpZzxUIGV4dGVuZHMgQW55UXVlcnlDcmVhdG9yPiB7XG4gIC8qKlxuICAgKiBUaGUgaW5pdGlhbCBqd3RcbiAgICovXG4gIHRva2VuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZWZyZXNoIHRva2VuIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHJlZnJlc2hDb25maWc/OiBCZWFyZXJSZWZyZXNoQ29uZmlnPFQ+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJlYXJlclJlZnJlc2hDb25maWc8VCBleHRlbmRzIEFueVF1ZXJ5Q3JlYXRvcj4ge1xuICAvKipcbiAgICogVGhlIHF1ZXJ5IHVzZWQgdG8gdHJhZGUgdGhlIHJlZnJlc2ggdG9rZW4gZm9yIGEgbmV3IHRva2VuIHJlc3BvbnNlLlxuICAgKi9cbiAgcXVlcnlDcmVhdG9yOiBUO1xuXG4gIC8qKlxuICAgKiBUaGUgaW5pdGlhbCByZWZyZXNoIHRva2VuXG4gICAqL1xuICB0b2tlbj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGNvb2tpZSBuYW1lIHdoZXJlIHRoZSByZWZyZXNoIHRva2VuIGlzIHN0b3JlZFxuICAgKi9cbiAgY29va2llTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogRW5hYmxlIG9yIGRpc2FibGUgdGhlIGNvb2tpZVxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBjb29raWVFbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIHRpbWUgaW4gbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdG9rZW4gZXhwaXJlcyB3aGVuIHRoZSByZWZyZXNoIHNob3VsZCBiZSB0cmlnZ2VyZWQuXG4gICAqIEBkZWZhdWx0IDMwMDAwMCAoNSBtaW51dGVzKVxuICAgKi9cbiAgcmVmcmVzaEJ1ZmZlcj86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIGV4cGlyZXMgaW4gcHJvcGVydHkgbmFtZSBpbnNpZGUgdGhlIGp3dCBib2R5XG4gICAqIEBkZWZhdWx0ICdleHAnXG4gICAqL1xuICBleHBpcmVzSW5Qcm9wZXJ0eU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hlbiB0aGUgdG9rZW4gc2hvdWxkIGJlIHJlZnJlc2hlZC5cbiAgICogQGRlZmF1bHQgQXV0aEJlYXJlclJlZnJlc2hTdHJhdGVneS5CZWZvcmVFeHBpcmF0aW9uXG4gICAqL1xuICBzdHJhdGVneT86IEF1dGhCZWFyZXJSZWZyZXNoU3RyYXRlZ3k7XG5cbiAgLyoqXG4gICAqIEFkYXB0ZXIgZnVuY3Rpb24gdXNlZCB0byBidWlsZCB0aGUgcmVxdWVzdCBib2R5IGZvciB0aGUgcmVmcmVzaCByZXF1ZXN0LlxuICAgKiBAZGVmYXVsdCB7IGJvZHk6IHsgcmVmcmVzaFRva2VuOiBcInJlZnJlc2hUb2tlblwiIH0gfVxuICAgKi9cbiAgcmVxdWVzdEFyZ3NBZGFwdGVyPzogKHRva2VuczogeyB0b2tlbjogc3RyaW5nIHwgbnVsbDsgcmVmcmVzaFRva2VuOiBzdHJpbmcgfSkgPT4gUXVlcnlDcmVhdG9yQXJnczxUPjtcblxuICAvKipcbiAgICogQWRhcHRlciBmdW5jdGlvbiB1c2VkIHRvIGV4dHJhY3QgdGhlIHRva2VuIGFuZCByZWZyZXNoVG9rZW4gZnJvbSB0aGUgcmVzcG9uc2UuXG4gICAqIEBkZWZhdWx0IHsgdG9rZW46IFwidG9rZW5cIiwgcmVmcmVzaFRva2VuOiBcInJlZnJlc2hUb2tlblwiIH1cbiAgICovXG4gIHJlc3BvbnNlQWRhcHRlcj86IChyZXNwb25zZTogTm9uTnVsbGFibGU8UXVlcnlSZXNwb25zZVR5cGU8UXVlcnlDcmVhdG9yUmV0dXJuVHlwZTxUPj4+KSA9PiBUb2tlblJlc3BvbnNlO1xufVxuXG5leHBvcnQgY29uc3QgZW51bSBBdXRoQmVhcmVyUmVmcmVzaFN0cmF0ZWd5IHtcbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgcmVmcmVzaCB0aGUgdG9rZW4gNSBtaW51dGVzIGJlZm9yZSBleHBpcmF0aW9uLlxuICAgKiBUaGUgdGltZSBjYW4gYmUgY29uZmlndXJlZCB3aXRoIHRoZSBgcmVmcmVzaEJ1ZmZlcmAgcHJvcGVydHkuXG4gICAqL1xuICBCZWZvcmVFeHBpcmF0aW9uID0gJ2JlZm9yZUV4cGlyYXRpb24nLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRva2VuUmVzcG9uc2Uge1xuICAvKipcbiAgICogVGhlIGFjY2VzcyB0b2tlbiB1c2VkIGluc2lkZSB0aGUgYXV0aG9yaXphdGlvbiBodHRwIGhlYWRlci5cbiAgICovXG4gIHRva2VuOiBzdHJpbmcgfCBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVmcmVzaCB0b2tlbiB1c2VkIGZvciByZXF1ZXN0aW5nIGEgbmV3IHRva2VuIHJlc3BvbnNlIG9uY2UgdGhlIGN1cnJlbnQgdG9rZXMgaXMgZXhwaXJlZC5cbiAgICogVGhpcyBwcm9wZXJ0eSBpcyByZXF1aXJlZCBpZiB0aGUgYmVhcmVyIHJlZnJlc2ggY29uZmlnIGlzIHNldC5cbiAgICovXG4gIHJlZnJlc2hUb2tlbjogc3RyaW5nIHwgbnVsbDtcbn1cbiJdfQ==
@@ -19,4 +19,4 @@ export const decryptBearer = (token) => {
19
19
  return null;
20
20
  }
21
21
  };
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1wcm92aWRlci51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcXVlcnkvc3JjL2xpYi9hdXRoL2F1dGgtcHJvdmlkZXIudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFekUsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxZQUEwQixFQUFxQyxFQUFFLENBQ25HLFlBQVksWUFBWSxpQkFBaUIsQ0FBQztBQUU1QyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLFlBQTBCLEVBQXNDLEVBQUUsQ0FDckcsWUFBWSxZQUFZLGtCQUFrQixDQUFDO0FBRTdDLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLENBQUMsWUFBMEIsRUFBNEMsRUFBRSxDQUNqSCxZQUFZLFlBQVksd0JBQXdCLENBQUM7QUFFbkQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQW1DLEtBQWEsRUFBRSxFQUFFO0lBQy9FLElBQUk7UUFDRixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDL0QsTUFBTSxXQUFXLEdBQUcsa0JBQWtCLENBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUM7YUFDVCxLQUFLLENBQUMsRUFBRSxDQUFDO2FBQ1QsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNqRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQ1osQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQVcsQ0FBQztLQUMxQztJQUFDLE9BQU8sS0FBSyxFQUFFO1FBQ2QsT0FBTyxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsS0FBSyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFdkQsT0FBTyxJQUFJLENBQUM7S0FDYjtBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhQcm92aWRlciB9IGZyb20gJy4vYXV0aC1wcm92aWRlci50eXBlcyc7XG5pbXBvcnQgeyBCYXNpY0F1dGhQcm92aWRlciB9IGZyb20gJy4vYmFzaWMtYXV0aC1wcm92aWRlcic7XG5pbXBvcnQgeyBCZWFyZXJBdXRoUHJvdmlkZXIgfSBmcm9tICcuL2JlYXJlci1hdXRoLXByb3ZpZGVyJztcbmltcG9ydCB7IEN1c3RvbUhlYWRlckF1dGhQcm92aWRlciB9IGZyb20gJy4vY3VzdG9tLWhlYWRlci1hdXRoLXByb3ZpZGVyJztcblxuZXhwb3J0IGNvbnN0IGlzQmFzaWNBdXRoUHJvdmlkZXIgPSAoYXV0aFByb3ZpZGVyOiBBdXRoUHJvdmlkZXIpOiBhdXRoUHJvdmlkZXIgaXMgQmFzaWNBdXRoUHJvdmlkZXIgPT5cbiAgYXV0aFByb3ZpZGVyIGluc3RhbmNlb2YgQmFzaWNBdXRoUHJvdmlkZXI7XG5cbmV4cG9ydCBjb25zdCBpc0JlYXJlckF1dGhQcm92aWRlciA9IChhdXRoUHJvdmlkZXI6IEF1dGhQcm92aWRlcik6IGF1dGhQcm92aWRlciBpcyBCZWFyZXJBdXRoUHJvdmlkZXIgPT5cbiAgYXV0aFByb3ZpZGVyIGluc3RhbmNlb2YgQmVhcmVyQXV0aFByb3ZpZGVyO1xuXG5leHBvcnQgY29uc3QgaXNDdXN0b21IZWFkZXJBdXRoUHJvdmlkZXIgPSAoYXV0aFByb3ZpZGVyOiBBdXRoUHJvdmlkZXIpOiBhdXRoUHJvdmlkZXIgaXMgQ3VzdG9tSGVhZGVyQXV0aFByb3ZpZGVyID0+XG4gIGF1dGhQcm92aWRlciBpbnN0YW5jZW9mIEN1c3RvbUhlYWRlckF1dGhQcm92aWRlcjtcblxuZXhwb3J0IGNvbnN0IGRlY3J5cHRCZWFyZXIgPSA8UmVzdWx0ID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4+KHRva2VuOiBzdHJpbmcpID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBiYXNlNjRVcmwgPSB0b2tlbi5zcGxpdCgnLicpWzFdO1xuICAgIGNvbnN0IGJhc2U2NCA9IGJhc2U2NFVybC5yZXBsYWNlKC8tL2csICcrJykucmVwbGFjZSgvXy9nLCAnLycpO1xuICAgIGNvbnN0IGpzb25QYXlsb2FkID0gZGVjb2RlVVJJQ29tcG9uZW50KFxuICAgICAgYXRvYihiYXNlNjQpXG4gICAgICAgIC5zcGxpdCgnJylcbiAgICAgICAgLm1hcCgoYykgPT4gJyUnICsgKCcwMCcgKyBjLmNoYXJDb2RlQXQoMCkudG9TdHJpbmcoMTYpKS5zbGljZSgtMikpXG4gICAgICAgIC5qb2luKCcnKSxcbiAgICApO1xuXG4gICAgcmV0dXJuIEpTT04ucGFyc2UoanNvblBheWxvYWQpIGFzIFJlc3VsdDtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKGBJbnZhbGlkIGJlYXJlciB0b2tlbjogJHt0b2tlbn1gLCBlcnJvcik7XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufTtcbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1wcm92aWRlci51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcXVlcnkvc3JjL2xpYi9hdXRoL2F1dGgtcHJvdmlkZXIudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFekUsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxZQUEwQixFQUFxQyxFQUFFLENBQ25HLFlBQVksWUFBWSxpQkFBaUIsQ0FBQztBQUU1QyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUNsQyxZQUEwQixFQUNhLEVBQUUsQ0FBQyxZQUFZLFlBQVksa0JBQWtCLENBQUM7QUFFdkYsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxZQUEwQixFQUE0QyxFQUFFLENBQ2pILFlBQVksWUFBWSx3QkFBd0IsQ0FBQztBQUVuRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBbUMsS0FBYSxFQUFFLEVBQUU7SUFDL0UsSUFBSTtRQUNGLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEMsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvRCxNQUFNLFdBQVcsR0FBRyxrQkFBa0IsQ0FDcEMsSUFBSSxDQUFDLE1BQU0sQ0FBQzthQUNULEtBQUssQ0FBQyxFQUFFLENBQUM7YUFDVCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2pFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FDWixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBVyxDQUFDO0tBQzFDO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxPQUFPLENBQUMsS0FBSyxDQUFDLHlCQUF5QixLQUFLLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV2RCxPQUFPLElBQUksQ0FBQztLQUNiO0FBQ0gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW55UXVlcnlDcmVhdG9yIH0gZnJvbSAnLi4vcXVlcnktY2xpZW50JztcbmltcG9ydCB7IEF1dGhQcm92aWRlciB9IGZyb20gJy4vYXV0aC1wcm92aWRlci50eXBlcyc7XG5pbXBvcnQgeyBCYXNpY0F1dGhQcm92aWRlciB9IGZyb20gJy4vYmFzaWMtYXV0aC1wcm92aWRlcic7XG5pbXBvcnQgeyBCZWFyZXJBdXRoUHJvdmlkZXIgfSBmcm9tICcuL2JlYXJlci1hdXRoLXByb3ZpZGVyJztcbmltcG9ydCB7IEN1c3RvbUhlYWRlckF1dGhQcm92aWRlciB9IGZyb20gJy4vY3VzdG9tLWhlYWRlci1hdXRoLXByb3ZpZGVyJztcblxuZXhwb3J0IGNvbnN0IGlzQmFzaWNBdXRoUHJvdmlkZXIgPSAoYXV0aFByb3ZpZGVyOiBBdXRoUHJvdmlkZXIpOiBhdXRoUHJvdmlkZXIgaXMgQmFzaWNBdXRoUHJvdmlkZXIgPT5cbiAgYXV0aFByb3ZpZGVyIGluc3RhbmNlb2YgQmFzaWNBdXRoUHJvdmlkZXI7XG5cbmV4cG9ydCBjb25zdCBpc0JlYXJlckF1dGhQcm92aWRlciA9IDxUIGV4dGVuZHMgQW55UXVlcnlDcmVhdG9yID0gQW55UXVlcnlDcmVhdG9yPihcbiAgYXV0aFByb3ZpZGVyOiBBdXRoUHJvdmlkZXIsXG4pOiBhdXRoUHJvdmlkZXIgaXMgQmVhcmVyQXV0aFByb3ZpZGVyPFQ+ID0+IGF1dGhQcm92aWRlciBpbnN0YW5jZW9mIEJlYXJlckF1dGhQcm92aWRlcjtcblxuZXhwb3J0IGNvbnN0IGlzQ3VzdG9tSGVhZGVyQXV0aFByb3ZpZGVyID0gKGF1dGhQcm92aWRlcjogQXV0aFByb3ZpZGVyKTogYXV0aFByb3ZpZGVyIGlzIEN1c3RvbUhlYWRlckF1dGhQcm92aWRlciA9PlxuICBhdXRoUHJvdmlkZXIgaW5zdGFuY2VvZiBDdXN0b21IZWFkZXJBdXRoUHJvdmlkZXI7XG5cbmV4cG9ydCBjb25zdCBkZWNyeXB0QmVhcmVyID0gPFJlc3VsdCA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+Pih0b2tlbjogc3RyaW5nKSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgYmFzZTY0VXJsID0gdG9rZW4uc3BsaXQoJy4nKVsxXTtcbiAgICBjb25zdCBiYXNlNjQgPSBiYXNlNjRVcmwucmVwbGFjZSgvLS9nLCAnKycpLnJlcGxhY2UoL18vZywgJy8nKTtcbiAgICBjb25zdCBqc29uUGF5bG9hZCA9IGRlY29kZVVSSUNvbXBvbmVudChcbiAgICAgIGF0b2IoYmFzZTY0KVxuICAgICAgICAuc3BsaXQoJycpXG4gICAgICAgIC5tYXAoKGMpID0+ICclJyArICgnMDAnICsgYy5jaGFyQ29kZUF0KDApLnRvU3RyaW5nKDE2KSkuc2xpY2UoLTIpKVxuICAgICAgICAuam9pbignJyksXG4gICAgKTtcblxuICAgIHJldHVybiBKU09OLnBhcnNlKGpzb25QYXlsb2FkKSBhcyBSZXN1bHQ7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcihgSW52YWxpZCBiZWFyZXIgdG9rZW46ICR7dG9rZW59YCwgZXJyb3IpO1xuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn07XG4iXX0=
@@ -1,16 +1,15 @@
1
1
  export class BasicAuthProvider {
2
- constructor(_config) {
3
- this._config = _config;
4
- this.queryClient = null;
5
- }
6
2
  get header() {
7
3
  return { Authorization: `Basic ${this._basicAuthString}` };
8
4
  }
9
5
  get _basicAuthString() {
10
6
  return btoa(`${this._config.username}:${this._config.password}`);
11
7
  }
8
+ constructor(_config) {
9
+ this._config = _config;
10
+ }
12
11
  cleanUp() {
13
12
  // noop
14
13
  }
15
14
  }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtYXV0aC1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcXVlcnkvc3JjL2xpYi9hdXRoL2Jhc2ljLWF1dGgtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFPLGlCQUFpQjtJQVc1QixZQUFvQixPQUFnQztRQUFoQyxZQUFPLEdBQVAsT0FBTyxDQUF5QjtRQUZwRCxnQkFBVyxHQUF1QixJQUFJLENBQUM7SUFFZ0IsQ0FBQztJQVZ4RCxJQUFJLE1BQU07UUFDUixPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQztJQUM3RCxDQUFDO0lBRUQsSUFBWSxnQkFBZ0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQU1ELE9BQU87UUFDTCxPQUFPO0lBQ1QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUXVlcnlDbGllbnQgfSBmcm9tICcuLi9xdWVyeS1jbGllbnQnO1xuaW1wb3J0IHsgQXV0aFByb3ZpZGVyLCBBdXRoUHJvdmlkZXJCYXNpY0NvbmZpZyB9IGZyb20gJy4vYXV0aC1wcm92aWRlci50eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBCYXNpY0F1dGhQcm92aWRlciBpbXBsZW1lbnRzIEF1dGhQcm92aWRlciB7XG4gIGdldCBoZWFkZXIoKSB7XG4gICAgcmV0dXJuIHsgQXV0aG9yaXphdGlvbjogYEJhc2ljICR7dGhpcy5fYmFzaWNBdXRoU3RyaW5nfWAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9iYXNpY0F1dGhTdHJpbmcoKSB7XG4gICAgcmV0dXJuIGJ0b2EoYCR7dGhpcy5fY29uZmlnLnVzZXJuYW1lfToke3RoaXMuX2NvbmZpZy5wYXNzd29yZH1gKTtcbiAgfVxuXG4gIHF1ZXJ5Q2xpZW50OiBRdWVyeUNsaWVudCB8IG51bGwgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NvbmZpZzogQXV0aFByb3ZpZGVyQmFzaWNDb25maWcpIHt9XG5cbiAgY2xlYW5VcCgpOiB2b2lkIHtcbiAgICAvLyBub29wXG4gIH1cbn1cbiJdfQ==
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtYXV0aC1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcXVlcnkvc3JjL2xpYi9hdXRoL2Jhc2ljLWF1dGgtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixJQUFJLE1BQU07UUFDUixPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQztJQUM3RCxDQUFDO0lBRUQsSUFBWSxnQkFBZ0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELFlBQW9CLE9BQWdDO1FBQWhDLFlBQU8sR0FBUCxPQUFPLENBQXlCO0lBQUcsQ0FBQztJQUV4RCxPQUFPO1FBQ0wsT0FBTztJQUNULENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhQcm92aWRlciwgQXV0aFByb3ZpZGVyQmFzaWNDb25maWcgfSBmcm9tICcuL2F1dGgtcHJvdmlkZXIudHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgQmFzaWNBdXRoUHJvdmlkZXIgaW1wbGVtZW50cyBBdXRoUHJvdmlkZXIge1xuICBnZXQgaGVhZGVyKCkge1xuICAgIHJldHVybiB7IEF1dGhvcml6YXRpb246IGBCYXNpYyAke3RoaXMuX2Jhc2ljQXV0aFN0cmluZ31gIH07XG4gIH1cblxuICBwcml2YXRlIGdldCBfYmFzaWNBdXRoU3RyaW5nKCkge1xuICAgIHJldHVybiBidG9hKGAke3RoaXMuX2NvbmZpZy51c2VybmFtZX06JHt0aGlzLl9jb25maWcucGFzc3dvcmR9YCk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jb25maWc6IEF1dGhQcm92aWRlckJhc2ljQ29uZmlnKSB7fVxuXG4gIGNsZWFuVXAoKTogdm9pZCB7XG4gICAgLy8gbm9vcFxuICB9XG59XG4iXX0=
@@ -1,86 +1,143 @@
1
- import { Subject, timer } from 'rxjs';
2
- import { buildBody, buildRequestError, buildRoute, request } from '../request';
1
+ import { deleteCookie, getCookie, setCookie } from '@ethlete/core';
2
+ import { BehaviorSubject, Subject, takeUntil, tap, timer } from 'rxjs';
3
+ import { isQueryStateFailure, isQueryStateSuccess, switchQueryState, takeUntilResponse } from '../query';
3
4
  import { decryptBearer } from './auth-provider.utils';
4
5
  export class BearerAuthProvider {
6
+ get header() {
7
+ return { Authorization: `Bearer ${this._tokens$.getValue().token}` };
8
+ }
9
+ get tokens$() {
10
+ return this._tokens$.asObservable();
11
+ }
12
+ get tokens() {
13
+ return this._tokens$.getValue();
14
+ }
15
+ get currentRefreshQuery$() {
16
+ return this._currentRefreshQuery$.asObservable();
17
+ }
18
+ get currentRefreshQuery() {
19
+ return this._currentRefreshQuery$.getValue();
20
+ }
5
21
  constructor(_config) {
6
22
  this._config = _config;
7
- this._refreshToken = null;
8
- this._refreshTimerSubscription = null;
9
- this.queryClient = null;
10
- this.onRefreshInitiation$ = new Subject();
11
- this.onRefreshSuccess$ = new Subject();
12
- this.onRefreshFailure$ = new Subject();
13
- this._token = _config.token;
14
- this._refreshToken = _config.refreshConfig?.token ?? null;
15
- if (this._config.refreshConfig) {
16
- this._setupRefresh(this._config.refreshConfig);
23
+ this._destroy$ = new Subject();
24
+ this._currentRefreshQuery$ = new BehaviorSubject(null);
25
+ this._tokens$ = new BehaviorSubject({
26
+ token: null,
27
+ refreshToken: null,
28
+ });
29
+ const cookieEnabled = _config.refreshConfig?.cookieEnabled ?? true;
30
+ const cookieToken = _config.refreshConfig?.cookieName && cookieEnabled ? getCookie(_config.refreshConfig.cookieName) ?? null : null;
31
+ this._tokens$.next({
32
+ token: _config.token || null,
33
+ refreshToken: _config.refreshConfig?.token || cookieToken || null,
34
+ });
35
+ if (!this.tokens.token && !this.tokens.refreshToken) {
36
+ if (!_config.refreshConfig?.cookieName) {
37
+ console.error('A BearerAuthProvider was created without token or refresh token. You should provide at least a cookieName where the refresh token might be stored.');
38
+ }
39
+ return;
40
+ }
41
+ if (this.tokens.token) {
42
+ this._prepareForRefresh();
43
+ if (this.tokens.refreshToken && this._config.refreshConfig?.cookieName) {
44
+ setCookie(this._config.refreshConfig.cookieName, this.tokens.refreshToken);
45
+ }
46
+ }
47
+ else if (this.tokens.refreshToken) {
48
+ this._refreshQuery();
17
49
  }
18
- }
19
- get header() {
20
- return { Authorization: `Bearer ${this._token}` };
21
50
  }
22
51
  cleanUp() {
23
- this._refreshTimerSubscription?.unsubscribe();
24
- this._refreshTimerSubscription = null;
52
+ this._destroy$.next(true);
53
+ this._destroy$.unsubscribe();
54
+ this._currentRefreshQuery$.next(null);
55
+ if (this._config.refreshConfig?.cookieName) {
56
+ deleteCookie(this._config.refreshConfig.cookieName, '/');
57
+ }
58
+ }
59
+ enableCookie() {
60
+ if (!this._config.refreshConfig?.cookieName) {
61
+ throw new Error('No cookie name was provided');
62
+ }
63
+ if (!this.tokens.refreshToken) {
64
+ throw new Error('No refresh token was provided');
65
+ }
66
+ this._config.refreshConfig.cookieEnabled = true;
67
+ setCookie(this._config.refreshConfig.cookieName, this.tokens.refreshToken);
25
68
  }
26
- _setupRefresh(config) {
27
- const bearer = decryptBearer(this._token);
69
+ disableCookie() {
70
+ if (!this._config.refreshConfig?.cookieName) {
71
+ throw new Error('No cookie name was provided');
72
+ }
73
+ this._config.refreshConfig.cookieEnabled = false;
74
+ deleteCookie(this._config.refreshConfig.cookieName, '/');
75
+ }
76
+ _prepareForRefresh() {
77
+ if (!this.tokens.token || !this._config.refreshConfig) {
78
+ return;
79
+ }
80
+ const bearer = decryptBearer(this.tokens.token);
28
81
  if (!bearer) {
29
82
  return;
30
83
  }
31
- const expiresInPropertyName = config.expiresInPropertyName || 'exp';
84
+ const expiresInPropertyName = this._config.refreshConfig.expiresInPropertyName || 'exp';
32
85
  const expiresIn = bearer[expiresInPropertyName];
33
86
  const fiveMinutes = 5 * 60 * 1000;
87
+ const refreshBuffer = this._config.refreshConfig.refreshBuffer ?? fiveMinutes;
34
88
  if (expiresIn === undefined) {
35
89
  throw new Error(`Bearer token does not contain an '${expiresInPropertyName}' property`);
36
90
  }
37
- const remainingTime = new Date(expiresIn * 1000).getTime() - fiveMinutes - new Date().getTime();
38
- const strategy = config.strategy ?? "beforeExpiration" /* AuthBearerRefreshStrategy.BeforeExpiration */;
91
+ const remainingTime = new Date(expiresIn * 1000).getTime() - refreshBuffer - new Date().getTime();
92
+ const strategy = this._config.refreshConfig.strategy ?? "beforeExpiration" /* AuthBearerRefreshStrategy.BeforeExpiration */;
39
93
  switch (strategy) {
40
94
  case "beforeExpiration" /* AuthBearerRefreshStrategy.BeforeExpiration */:
41
- this._refreshTimerSubscription = timer(remainingTime).subscribe(() => this._refresh(config));
95
+ timer(remainingTime)
96
+ .pipe(takeUntil(this._destroy$))
97
+ .subscribe(() => this._refreshQuery());
42
98
  break;
43
99
  }
44
100
  }
45
- async _refresh(config) {
46
- if (!this._refreshToken) {
47
- throw new Error('No refresh token found');
48
- }
49
- if (!this.queryClient) {
50
- throw new Error('Query client instance is null');
51
- }
52
- const { method, route, bodyAdapter, responseAdapter } = config;
53
- const fullRoute = buildRoute({
54
- base: this.queryClient.config.baseRoute,
55
- route,
56
- });
57
- const body = bodyAdapter ? bodyAdapter(this._refreshToken) : { refreshToken: this._refreshToken };
58
- const requestInit = { body: buildBody(body), method };
59
- this.onRefreshInitiation$.next();
60
- try {
61
- const result = await request({
62
- route: fullRoute,
63
- init: requestInit,
64
- });
65
- const tokens = responseAdapter ? responseAdapter(result.data) : result.data;
66
- if (!tokens.token) {
67
- throw new Error('Token not found in response');
68
- }
69
- if (!tokens.refreshToken) {
70
- throw new Error('Refresh token not found in response');
71
- }
72
- this._token = tokens.token;
73
- this._refreshToken = tokens.refreshToken;
74
- this.onRefreshSuccess$.next(tokens);
101
+ _refreshQuery() {
102
+ const currentRefreshToken = this.tokens.refreshToken;
103
+ if (!currentRefreshToken || !this._config.refreshConfig) {
104
+ return;
75
105
  }
76
- catch (error) {
77
- if (error instanceof Error) {
78
- this.onRefreshFailure$.next(await buildRequestError(error, fullRoute, requestInit));
106
+ const args = this._config.refreshConfig.requestArgsAdapter?.({
107
+ token: this.tokens.token,
108
+ refreshToken: currentRefreshToken,
109
+ }) ?? {
110
+ body: { refreshToken: currentRefreshToken },
111
+ };
112
+ const query = this._config.refreshConfig.queryCreator.prepare(args).execute({ skipCache: true });
113
+ this._currentRefreshQuery$.next(query);
114
+ this._currentRefreshQuery$
115
+ .pipe(switchQueryState(), tap((state) => {
116
+ if (isQueryStateSuccess(state)) {
117
+ if (this._config.refreshConfig?.responseAdapter) {
118
+ const tokens = this._config.refreshConfig.responseAdapter(state.response);
119
+ this._tokens$.next(tokens);
120
+ }
121
+ else {
122
+ this._tokens$.next({
123
+ token: state.response['token'],
124
+ refreshToken: state.response['refreshToken'],
125
+ });
126
+ }
127
+ const cookieEnabled = this._config.refreshConfig?.cookieEnabled ?? true;
128
+ if (this._config.refreshConfig?.cookieName && this.tokens.refreshToken && cookieEnabled) {
129
+ setCookie(this._config.refreshConfig.cookieName, this.tokens.refreshToken);
130
+ }
131
+ this._prepareForRefresh();
79
132
  }
80
- else {
81
- this.onRefreshFailure$.next(error);
133
+ else if (isQueryStateFailure(state)) {
134
+ this._tokens$.next({ token: null, refreshToken: null });
135
+ if (this._config.refreshConfig?.cookieName) {
136
+ deleteCookie(this._config.refreshConfig.cookieName, '/');
137
+ }
82
138
  }
83
- }
139
+ }), takeUntilResponse(), takeUntil(this._destroy$))
140
+ .subscribe();
84
141
  }
85
142
  }
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVhcmVyLWF1dGgtcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3F1ZXJ5L3NyYy9saWIvYXV0aC9iZWFyZXItYXV0aC1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFnQixLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFnQixNQUFNLFlBQVksQ0FBQztBQVE3RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdEQsTUFBTSxPQUFPLGtCQUFrQjtJQWU3QixZQUFvQixPQUFpQztRQUFqQyxZQUFPLEdBQVAsT0FBTyxDQUEwQjtRQWI3QyxrQkFBYSxHQUFrQixJQUFJLENBQUM7UUFDcEMsOEJBQXlCLEdBQXdCLElBQUksQ0FBQztRQU05RCxnQkFBVyxHQUF1QixJQUFJLENBQUM7UUFFdkMseUJBQW9CLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUMzQyxzQkFBaUIsR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztRQUNqRCxzQkFBaUIsR0FBRyxJQUFJLE9BQU8sRUFBZ0IsQ0FBQztRQUc5QyxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDNUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUM7UUFFMUQsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRTtZQUM5QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDaEQ7SUFDSCxDQUFDO0lBakJELElBQUksTUFBTTtRQUNSLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxJQUFJLENBQUMsTUFBTSxFQUFFLEVB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QUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO2FBQ3hEO1lBRUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQzNCLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztZQUV6QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3JDO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxJQUFJLEtBQUssWUFBWSxLQUFLLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7YUFDckY7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFxQixDQUFDLENBQUM7YUFDcEQ7U0FDRjtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFF1ZXJ5Q2xpZW50IH0gZnJvbSAnLi4vcXVlcnktY2xpZW50JztcbmltcG9ydCB7IGJ1aWxkQm9keSwgYnVpbGRSZXF1ZXN0RXJyb3IsIGJ1aWxkUm91dGUsIHJlcXVlc3QsIFJlcXVlc3RFcnJvciB9IGZyb20gJy4uL3JlcXVlc3QnO1xuaW1wb3J0IHtcbiAgQXV0aEJlYXJlclJlZnJlc2hTdHJhdGVneSxcbiAgQXV0aFByb3ZpZGVyLFxuICBBdXRoUHJvdmlkZXJCZWFyZXJDb25maWcsXG4gIEJlYXJlclJlZnJlc2hDb25maWcsXG4gIFRva2VuUmVzcG9uc2UsXG59IGZyb20gJy4vYXV0aC1wcm92aWRlci50eXBlcyc7XG5pbXBvcnQgeyBkZWNyeXB0QmVhcmVyIH0gZnJvbSAnLi9hdXRoLXByb3ZpZGVyLnV0aWxzJztcblxuZXhwb3J0IGNsYXNzIEJlYXJlckF1dGhQcm92aWRlciBpbXBsZW1lbnRzIEF1dGhQcm92aWRlciB7XG4gIHByaXZhdGUgX3Rva2VuOiBzdHJpbmc7XG4gIHByaXZhdGUgX3JlZnJlc2hUb2tlbjogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3JlZnJlc2hUaW1lclN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgZ2V0IGhlYWRlcigpIHtcbiAgICByZXR1cm4geyBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7dGhpcy5fdG9rZW59YCB9O1xuICB9XG5cbiAgcXVlcnlDbGllbnQ6IFF1ZXJ5Q2xpZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgb25SZWZyZXNoSW5pdGlhdGlvbiQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBvblJlZnJlc2hTdWNjZXNzJCA9IG5ldyBTdWJqZWN0PFRva2VuUmVzcG9uc2U+KCk7XG4gIG9uUmVmcmVzaEZhaWx1cmUkID0gbmV3IFN1YmplY3Q8UmVxdWVzdEVycm9yPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NvbmZpZzogQXV0aFByb3ZpZGVyQmVhcmVyQ29uZmlnKSB7XG4gICAgdGhpcy5fdG9rZW4gPSBfY29uZmlnLnRva2VuO1xuICAgIHRoaXMuX3JlZnJlc2hUb2tlbiA9IF9jb25maWcucmVmcmVzaENvbmZpZz8udG9rZW4gPz8gbnVsbDtcblxuICAgIGlmICh0aGlzLl9jb25maWcucmVmcmVzaENvbmZpZykge1xuICAgICAgdGhpcy5fc2V0dXBSZWZyZXNoKHRoaXMuX2NvbmZpZy5yZWZyZXNoQ29uZmlnKTtcbiAgICB9XG4gIH1cblxuICBjbGVhblVwKCk6IHZvaWQge1xuICAgIHRoaXMuX3JlZnJlc2hUaW1lclN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLl9yZWZyZXNoVGltZXJTdWJzY3JpcHRpb24gPSBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0dXBSZWZyZXNoKGNvbmZpZzogQmVhcmVyUmVmcmVzaENvbmZpZykge1xuICAgIGNvbnN0IGJlYXJlciA9IGRlY3J5cHRCZWFyZXIodGhpcy5fdG9rZW4pO1xuXG4gICAgaWYgKCFiZWFyZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBleHBpcmVzSW5Qcm9wZXJ0eU5hbWUgPSBjb25maWcuZXhwaXJlc0luUHJvcGVydHlOYW1lIHx8ICdleHAnO1xuICAgIGNvbnN0IGV4cGlyZXNJbiA9IGJlYXJlcltleHBpcmVzSW5Qcm9wZXJ0eU5hbWVdIGFzIG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICBjb25zdCBmaXZlTWludXRlcyA9IDUgKiA2MCAqIDEwMDA7XG5cbiAgICBpZiAoZXhwaXJlc0luID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQmVhcmVyIHRva2VuIGRvZXMgbm90IGNvbnRhaW4gYW4gJyR7ZXhwaXJlc0luUHJvcGVydHlOYW1lfScgcHJvcGVydHlgKTtcbiAgICB9XG5cbiAgICBjb25zdCByZW1haW5pbmdUaW1lID0gbmV3IERhdGUoZXhwaXJlc0luICogMTAwMCkuZ2V0VGltZSgpIC0gZml2ZU1pbnV0ZXMgLSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcblxuICAgIGNvbnN0IHN0cmF0ZWd5ID0gY29uZmlnLnN0cmF0ZWd5ID8/IEF1dGhCZWFyZXJSZWZyZXNoU3RyYXRlZ3kuQmVmb3JlRXhwaXJhdGlvbjtcblxuICAgIHN3aXRjaCAoc3RyYXRlZ3kpIHtcbiAgICAgIGNhc2UgQXV0aEJlYXJlclJlZnJlc2hTdHJhdGVneS5CZWZvcmVFeHBpcmF0aW9uOlxuICAgICAgICB0aGlzLl9yZWZyZXNoVGltZXJTdWJzY3JpcHRpb24gPSB0aW1lcihyZW1haW5pbmdUaW1lKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fcmVmcmVzaChjb25maWcpKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfcmVmcmVzaChjb25maWc6IEJlYXJlclJlZnJlc2hDb25maWcpIHtcbiAgICBpZiAoIXRoaXMuX3JlZnJlc2hUb2tlbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyByZWZyZXNoIHRva2VuIGZvdW5kJyk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnF1ZXJ5Q2xpZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1F1ZXJ5IGNsaWVudCBpbnN0YW5jZSBpcyBudWxsJyk7XG4gICAgfVxuXG4gICAgY29uc3QgeyBtZXRob2QsIHJvdXRlLCBib2R5QWRhcHRlciwgcmVzcG9uc2VBZGFwdGVyIH0gPSBjb25maWc7XG5cbiAgICBjb25zdCBmdWxsUm91dGUgPSBidWlsZFJvdXRlKHtcbiAgICAgIGJhc2U6IHRoaXMucXVlcnlDbGllbnQuY29uZmlnLmJhc2VSb3V0ZSxcbiAgICAgIHJvdXRlLFxuICAgIH0pO1xuXG4gICAgY29uc3QgYm9keSA9IGJvZHlBZGFwdGVyID8gYm9keUFkYXB0ZXIodGhpcy5fcmVmcmVzaFRva2VuKSA6IHsgcmVmcmVzaFRva2VuOiB0aGlzLl9yZWZyZXNoVG9rZW4gfTtcbiAgICBjb25zdCByZXF1ZXN0SW5pdDogUmVxdWVzdEluaXQgPSB7IGJvZHk6IGJ1aWxkQm9keShib2R5KSwgbWV0aG9kIH07XG5cbiAgICB0aGlzLm9uUmVmcmVzaEluaXRpYXRpb24kLm5leHQoKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCByZXF1ZXN0KHtcbiAgICAgICAgcm91dGU6IGZ1bGxSb3V0ZSxcbiAgICAgICAgaW5pdDogcmVxdWVzdEluaXQsXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgdG9rZW5zID0gcmVzcG9uc2VBZGFwdGVyID8gcmVzcG9uc2VBZGFwdGVyKHJlc3VsdC5kYXRhKSA6IChyZXN1bHQuZGF0YSBhcyBUb2tlblJlc3BvbnNlKTtcblxuICAgICAgaWYgKCF0b2tlbnMudG9rZW4pIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUb2tlbiBub3QgZm91bmQgaW4gcmVzcG9uc2UnKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0b2tlbnMucmVmcmVzaFRva2VuKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignUmVmcmVzaCB0b2tlbiBub3QgZm91bmQgaW4gcmVzcG9uc2UnKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5fdG9rZW4gPSB0b2tlbnMudG9rZW47XG4gICAgICB0aGlzLl9yZWZyZXNoVG9rZW4gPSB0b2tlbnMucmVmcmVzaFRva2VuO1xuXG4gICAgICB0aGlzLm9uUmVmcmVzaFN1Y2Nlc3MkLm5leHQodG9rZW5zKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgdGhpcy5vblJlZnJlc2hGYWlsdXJlJC5uZXh0KGF3YWl0IGJ1aWxkUmVxdWVzdEVycm9yKGVycm9yLCBmdWxsUm91dGUsIHJlcXVlc3RJbml0KSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLm9uUmVmcmVzaEZhaWx1cmUkLm5leHQoZXJyb3IgYXMgUmVxdWVzdEVycm9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVhcmVyLWF1dGgtcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3F1ZXJ5L3NyYy9saWIvYXV0aC9iZWFyZXItYXV0aC1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBUXpHLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV0RCxNQUFNLE9BQU8sa0JBQWtCO0lBUzdCLElBQUksTUFBTTtRQUNSLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7SUFDdkUsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLG9CQUFvQjtRQUN0QixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsSUFBSSxtQkFBbUI7UUFDckIsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVELFlBQW9CLE9BQW9DO1FBQXBDLFlBQU8sR0FBUCxPQUFPLENBQTZC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QUMsRUFDRixpQkFBaUIsRUFBRSxFQUNuQixTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUMxQjthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlbGV0ZUNvb2tpZSwgZ2V0Q29va2llLCBzZXRDb29raWUgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCwgdGFrZVVudGlsLCB0YXAsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBpc1F1ZXJ5U3RhdGVGYWlsdXJlLCBpc1F1ZXJ5U3RhdGVTdWNjZXNzLCBzd2l0Y2hRdWVyeVN0YXRlLCB0YWtlVW50aWxSZXNwb25zZSB9IGZyb20gJy4uL3F1ZXJ5JztcbmltcG9ydCB7IEFueVF1ZXJ5Q3JlYXRvciwgUXVlcnlDcmVhdG9yUmV0dXJuVHlwZSB9IGZyb20gJy4uL3F1ZXJ5LWNsaWVudCc7XG5pbXBvcnQge1xuICBBdXRoQmVhcmVyUmVmcmVzaFN0cmF0ZWd5LFxuICBBdXRoUHJvdmlkZXIsXG4gIEF1dGhQcm92aWRlckJlYXJlckNvbmZpZyxcbiAgVG9rZW5SZXNwb25zZSxcbn0gZnJvbSAnLi9hdXRoLXByb3ZpZGVyLnR5cGVzJztcbmltcG9ydCB7IGRlY3J5cHRCZWFyZXIgfSBmcm9tICcuL2F1dGgtcHJvdmlkZXIudXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgQmVhcmVyQXV0aFByb3ZpZGVyPFQgZXh0ZW5kcyBBbnlRdWVyeUNyZWF0b3I+IGltcGxlbWVudHMgQXV0aFByb3ZpZGVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jdXJyZW50UmVmcmVzaFF1ZXJ5JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UXVlcnlDcmVhdG9yUmV0dXJuVHlwZTxUPiB8IG51bGw+KG51bGwpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3Rva2VucyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRva2VuUmVzcG9uc2U+KHtcbiAgICB0b2tlbjogbnVsbCxcbiAgICByZWZyZXNoVG9rZW46IG51bGwsXG4gIH0pO1xuXG4gIGdldCBoZWFkZXIoKSB7XG4gICAgcmV0dXJuIHsgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3RoaXMuX3Rva2VucyQuZ2V0VmFsdWUoKS50b2tlbn1gIH07XG4gIH1cblxuICBnZXQgdG9rZW5zJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fdG9rZW5zJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCB0b2tlbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Rva2VucyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIGdldCBjdXJyZW50UmVmcmVzaFF1ZXJ5JCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY3VycmVudFJlZnJlc2hRdWVyeSQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgY3VycmVudFJlZnJlc2hRdWVyeSgpIHtcbiAgICByZXR1cm4gdGhpcy5fY3VycmVudFJlZnJlc2hRdWVyeSQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NvbmZpZzogQXV0aFByb3ZpZGVyQmVhcmVyQ29uZmlnPFQ+KSB7XG4gICAgY29uc3QgY29va2llRW5hYmxlZCA9IF9jb25maWcucmVmcmVzaENvbmZpZz8uY29va2llRW5hYmxlZCA/PyB0cnVlO1xuICAgIGNvbnN0IGNvb2tpZVRva2VuID1cbiAgICAgIF9jb25maWcucmVmcmVzaENvbmZpZz8uY29va2llTmFtZSAmJiBjb29raWVFbmFibGVkID8gZ2V0Q29va2llKF9jb25maWcucmVmcmVzaENvbmZpZy5jb29raWVOYW1lKSA/PyBudWxsIDogbnVsbDtcblxuICAgIHRoaXMuX3Rva2VucyQubmV4dCh7XG4gICAgICB0b2tlbjogX2NvbmZpZy50b2tlbiB8fCBudWxsLFxuICAgICAgcmVmcmVzaFRva2VuOiBfY29uZmlnLnJlZnJlc2hDb25maWc/LnRva2VuIHx8IGNvb2tpZVRva2VuIHx8IG51bGwsXG4gICAgfSk7XG5cbiAgICBpZiAoIXRoaXMudG9rZW5zLnRva2VuICYmICF0aGlzLnRva2Vucy5yZWZyZXNoVG9rZW4pIHtcbiAgICAgIGlmICghX2NvbmZpZy5yZWZyZXNoQ29uZmlnPy5jb29raWVOYW1lKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgJ0EgQmVhcmVyQXV0aFByb3ZpZGVyIHdhcyBjcmVhdGVkIHdpdGhvdXQgdG9rZW4gb3IgcmVmcmVzaCB0b2tlbi4gWW91IHNob3VsZCBwcm92aWRlIGF0IGxlYXN0IGEgY29va2llTmFtZSB3aGVyZSB0aGUgcmVmcmVzaCB0b2tlbiBtaWdodCBiZSBzdG9yZWQuJyxcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnRva2Vucy50b2tlbikge1xuICAgICAgdGhpcy5fcHJlcGFyZUZvclJlZnJlc2goKTtcblxuICAgICAgaWYgKHRoaXMudG9rZW5zLnJlZnJlc2hUb2tlbiAmJiB0aGlzLl9jb25maWcucmVmcmVzaENvbmZpZz8uY29va2llTmFtZSkge1xuICAgICAgICBzZXRDb29raWUodGhpcy5fY29uZmlnLnJlZnJlc2hDb25maWcuY29va2llTmFtZSwgdGhpcy50b2tlbnMucmVmcmVzaFRva2VuKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMudG9rZW5zLnJlZnJlc2hUb2tlbikge1xuICAgICAgdGhpcy5fcmVmcmVzaFF1ZXJ5KCk7XG4gICAgfVxuICB9XG5cbiAgY2xlYW5VcCgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KHRydWUpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fY3VycmVudFJlZnJlc2hRdWVyeSQubmV4dChudWxsKTtcblxuICAgIGlmICh0aGlzLl9jb25maWcucmVmcmVzaENvbmZpZz8uY29va2llTmFtZSkge1xuICAgICAgZGVsZXRlQ29va2llKHRoaXMuX2NvbmZpZy5yZWZyZXNoQ29uZmlnLmNvb2tpZU5hbWUsICcvJyk7XG4gICAgfVxuICB9XG5cbiAgZW5hYmxlQ29va2llKCkge1xuICAgIGlmICghdGhpcy5fY29uZmlnLnJlZnJlc2hDb25maWc/LmNvb2tpZU5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gY29va2llIG5hbWUgd2FzIHByb3ZpZGVkJyk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnRva2Vucy5yZWZyZXNoVG9rZW4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gcmVmcmVzaCB0b2tlbiB3YXMgcHJvdmlkZWQnKTtcbiAgICB9XG5cbiAgICB0aGlzLl9jb25maWcucmVmcmVzaENvbmZpZy5jb29raWVFbmFibGVkID0gdHJ1ZTtcblxuICAgIHNldENvb2tpZSh0aGlzLl9jb25maWcucmVmcmVzaENvbmZpZy5jb29raWVOYW1lLCB0aGlzLnRva2Vucy5yZWZyZXNoVG9rZW4pO1xuICB9XG5cbiAgZGlzYWJsZUNvb2tpZSgpIHtcbiAgICBpZiAoIXRoaXMuX2NvbmZpZy5yZWZyZXNoQ29uZmlnPy5jb29raWVOYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGNvb2tpZSBuYW1lIHdhcyBwcm92aWRlZCcpO1xuICAgIH1cblxuICAgIHRoaXMuX2NvbmZpZy5yZWZyZXNoQ29uZmlnLmNvb2tpZUVuYWJsZWQgPSBmYWxzZTtcblxuICAgIGRlbGV0ZUNvb2tpZSh0aGlzLl9jb25maWcucmVmcmVzaENvbmZpZy5jb29raWVOYW1lLCAnLycpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcHJlcGFyZUZvclJlZnJlc2goKSB7XG4gICAgaWYgKCF0aGlzLnRva2Vucy50b2tlbiB8fCAhdGhpcy5fY29uZmlnLnJlZnJlc2hDb25maWcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBiZWFyZXIgPSBkZWNyeXB0QmVhcmVyKHRoaXMudG9rZW5zLnRva2VuKTtcblxuICAgIGlmICghYmVhcmVyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZXhwaXJlc0luUHJvcGVydHlOYW1lID0gdGhpcy5fY29uZmlnLnJlZnJlc2hDb25maWcuZXhwaXJlc0luUHJvcGVydHlOYW1lIHx8ICdleHAnO1xuICAgIGNvbnN0IGV4cGlyZXNJbiA9IGJlYXJlcltleHBpcmVzSW5Qcm9wZXJ0eU5hbWVdIGFzIG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICBjb25zdCBmaXZlTWludXRlcyA9IDUgKiA2MCAqIDEwMDA7XG4gICAgY29uc3QgcmVmcmVzaEJ1ZmZlciA9IHRoaXMuX2NvbmZpZy5yZWZyZXNoQ29uZmlnLnJlZnJlc2hCdWZmZXIgPz8gZml2ZU1pbnV0ZXM7XG5cbiAgICBpZiAoZXhwaXJlc0luID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQmVhcmVyIHRva2VuIGRvZXMgbm90IGNvbnRhaW4gYW4gJyR7ZXhwaXJlc0luUHJvcGVydHlOYW1lfScgcHJvcGVydHlgKTtcbiAgICB9XG5cbiAgICBjb25zdCByZW1haW5pbmdUaW1lID0gbmV3IERhdGUoZXhwaXJlc0luICogMTAwMCkuZ2V0VGltZSgpIC0gcmVmcmVzaEJ1ZmZlciAtIG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuXG4gICAgY29uc3Qgc3RyYXRlZ3kgPSB0aGlzLl9jb25maWcucmVmcmVzaENvbmZpZy5zdHJhdGVneSA/PyBBdXRoQmVhcmVyUmVmcmVzaFN0cmF0ZWd5LkJlZm9yZUV4cGlyYXRpb247XG5cbiAgICBzd2l0Y2ggKHN0cmF0ZWd5KSB7XG4gICAgICBjYXNlIEF1dGhCZWFyZXJSZWZyZXNoU3RyYXRlZ3kuQmVmb3JlRXhwaXJhdGlvbjpcbiAgICAgICAgdGltZXIocmVtYWluaW5nVGltZSlcbiAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fcmVmcmVzaFF1ZXJ5KCkpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZWZyZXNoUXVlcnkoKSB7XG4gICAgY29uc3QgY3VycmVudFJlZnJlc2hUb2tlbiA9IHRoaXMudG9rZW5zLnJlZnJlc2hUb2tlbjtcblxuICAgIGlmICghY3VycmVudFJlZnJlc2hUb2tlbiB8fCAhdGhpcy5fY29uZmlnLnJlZnJlc2hDb25maWcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBhcmdzID0gdGhpcy5fY29uZmlnLnJlZnJlc2hDb25maWcucmVxdWVzdEFyZ3NBZGFwdGVyPy4oe1xuICAgICAgdG9rZW46IHRoaXMudG9rZW5zLnRva2VuLFxuICAgICAgcmVmcmVzaFRva2VuOiBjdXJyZW50UmVmcmVzaFRva2VuLFxuICAgIH0pID8/IHtcbiAgICAgIGJvZHk6IHsgcmVmcmVzaFRva2VuOiBjdXJyZW50UmVmcmVzaFRva2VuIH0sXG4gICAgfTtcblxuICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy5fY29uZmlnLnJlZnJlc2hDb25maWcucXVlcnlDcmVhdG9yLnByZXBhcmUoYXJncykuZXhlY3V0ZSh7IHNraXBDYWNoZTogdHJ1ZSB9KTtcblxuICAgIHRoaXMuX2N1cnJlbnRSZWZyZXNoUXVlcnkkLm5leHQocXVlcnkgYXMgUXVlcnlDcmVhdG9yUmV0dXJuVHlwZTxUPik7XG5cbiAgICB0aGlzLl9jdXJyZW50UmVmcmVzaFF1ZXJ5JFxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaFF1ZXJ5U3RhdGUoKSxcbiAgICAgICAgdGFwKChzdGF0ZSkgPT4ge1xuICAgICAgICAgIGlmIChpc1F1ZXJ5U3RhdGVTdWNjZXNzKHN0YXRlKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2NvbmZpZy5yZWZyZXNoQ29uZmlnPy5yZXNwb25zZUFkYXB0ZXIpIHtcbiAgICAgICAgICAgICAgY29uc3QgdG9rZW5zID0gdGhpcy5fY29uZmlnLnJlZnJlc2hDb25maWcucmVzcG9uc2VBZGFwdGVyKHN0YXRlLnJlc3BvbnNlKTtcblxuICAgICAgICAgICAgICB0aGlzLl90b2tlbnMkLm5leHQodG9rZW5zKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuX3Rva2VucyQubmV4dCh7XG4gICAgICAgICAgICAgICAgdG9rZW46IHN0YXRlLnJlc3BvbnNlWyd0b2tlbiddLFxuICAgICAgICAgICAgICAgIHJlZnJlc2hUb2tlbjogc3RhdGUucmVzcG9uc2VbJ3JlZnJlc2hUb2tlbiddLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGNvb2tpZUVuYWJsZWQgPSB0aGlzLl9jb25maWcucmVmcmVzaENvbmZpZz8uY29va2llRW5hYmxlZCA/PyB0cnVlO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5fY29uZmlnLnJlZnJlc2hDb25maWc/LmNvb2tpZU5hbWUgJiYgdGhpcy50b2tlbnMucmVmcmVzaFRva2VuICYmIGNvb2tpZUVuYWJsZWQpIHtcbiAgICAgICAgICAgICAgc2V0Q29va2llKHRoaXMuX2NvbmZpZy5yZWZyZXNoQ29uZmlnLmNvb2tpZU5hbWUsIHRoaXMudG9rZW5zLnJlZnJlc2hUb2tlbik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX3ByZXBhcmVGb3JSZWZyZXNoKCk7XG4gICAgICAgICAgfSBlbHNlIGlmIChpc1F1ZXJ5U3RhdGVGYWlsdXJlKHN0YXRlKSkge1xuICAgICAgICAgICAgdGhpcy5fdG9rZW5zJC5uZXh0KHsgdG9rZW46IG51bGwsIHJlZnJlc2hUb2tlbjogbnVsbCB9KTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuX2NvbmZpZy5yZWZyZXNoQ29uZmlnPy5jb29raWVOYW1lKSB7XG4gICAgICAgICAgICAgIGRlbGV0ZUNvb2tpZSh0aGlzLl9jb25maWcucmVmcmVzaENvbmZpZy5jb29raWVOYW1lLCAnLycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbFJlc3BvbnNlKCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,13 +1,12 @@
1
1
  export class CustomHeaderAuthProvider {
2
- constructor(_config) {
3
- this._config = _config;
4
- this.queryClient = null;
5
- }
6
2
  get header() {
7
3
  return { [this._config.name]: this._config.value };
8
4
  }
5
+ constructor(_config) {
6
+ this._config = _config;
7
+ }
9
8
  cleanUp() {
10
9
  // noop
11
10
  }
12
11
  }
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWhlYWRlci1hdXRoLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9xdWVyeS9zcmMvbGliL2F1dGgvY3VzdG9tLWhlYWRlci1hdXRoLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyx3QkFBd0I7SUFPbkMsWUFBb0IsT0FBdUM7UUFBdkMsWUFBTyxHQUFQLE9BQU8sQ0FBZ0M7UUFGM0QsZ0JBQVcsR0FBdUIsSUFBSSxDQUFDO0lBRXVCLENBQUM7SUFOL0QsSUFBSSxNQUFNO1FBQ1IsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3JELENBQUM7SUFNRCxPQUFPO1FBQ0wsT0FBTztJQUNULENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFF1ZXJ5Q2xpZW50IH0gZnJvbSAnLi4vcXVlcnktY2xpZW50JztcbmltcG9ydCB7IEF1dGhQcm92aWRlciwgQXV0aFByb3ZpZGVyQ3VzdG9tSGVhZGVyQ29uZmlnIH0gZnJvbSAnLi9hdXRoLXByb3ZpZGVyLnR5cGVzJztcblxuZXhwb3J0IGNsYXNzIEN1c3RvbUhlYWRlckF1dGhQcm92aWRlciBpbXBsZW1lbnRzIEF1dGhQcm92aWRlciB7XG4gIGdldCBoZWFkZXIoKSB7XG4gICAgcmV0dXJuIHsgW3RoaXMuX2NvbmZpZy5uYW1lXTogdGhpcy5fY29uZmlnLnZhbHVlIH07XG4gIH1cblxuICBxdWVyeUNsaWVudDogUXVlcnlDbGllbnQgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jb25maWc6IEF1dGhQcm92aWRlckN1c3RvbUhlYWRlckNvbmZpZykge31cblxuICBjbGVhblVwKCk6IHZvaWQge1xuICAgIC8vIG5vb3BcbiAgfVxufVxuIl19
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWhlYWRlci1hdXRoLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9xdWVyeS9zcmMvbGliL2F1dGgvY3VzdG9tLWhlYWRlci1hdXRoLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyx3QkFBd0I7SUFDbkMsSUFBSSxNQUFNO1FBQ1IsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3JELENBQUM7SUFFRCxZQUFvQixPQUF1QztRQUF2QyxZQUFPLEdBQVAsT0FBTyxDQUFnQztJQUFHLENBQUM7SUFFL0QsT0FBTztRQUNMLE9BQU87SUFDVCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdXRoUHJvdmlkZXIsIEF1dGhQcm92aWRlckN1c3RvbUhlYWRlckNvbmZpZyB9IGZyb20gJy4vYXV0aC1wcm92aWRlci50eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBDdXN0b21IZWFkZXJBdXRoUHJvdmlkZXIgaW1wbGVtZW50cyBBdXRoUHJvdmlkZXIge1xuICBnZXQgaGVhZGVyKCkge1xuICAgIHJldHVybiB7IFt0aGlzLl9jb25maWcubmFtZV06IHRoaXMuX2NvbmZpZy52YWx1ZSB9O1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY29uZmlnOiBBdXRoUHJvdmlkZXJDdXN0b21IZWFkZXJDb25maWcpIHt9XG5cbiAgY2xlYW5VcCgpOiB2b2lkIHtcbiAgICAvLyBub29wXG4gIH1cbn1cbiJdfQ==
@@ -39,9 +39,9 @@ export class InfinityQueryTriggerDirective {
39
39
  this._observer.observe(this._elementRef.nativeElement);
40
40
  }
41
41
  }
42
- InfinityQueryTriggerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: InfinityQueryTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
43
- InfinityQueryTriggerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: InfinityQueryTriggerDirective, isStandalone: true, selector: "[infinityQueryTrigger], infinity-query-trigger", inputs: { scrollContainerSelector: "scrollContainerSelector" }, ngImport: i0 });
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: InfinityQueryTriggerDirective, decorators: [{
42
+ InfinityQueryTriggerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: InfinityQueryTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
43
+ InfinityQueryTriggerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.4", type: InfinityQueryTriggerDirective, isStandalone: true, selector: "[infinityQueryTrigger], infinity-query-trigger", inputs: { scrollContainerSelector: "scrollContainerSelector" }, ngImport: i0 });
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: InfinityQueryTriggerDirective, decorators: [{
45
45
  type: Directive,
46
46
  args: [{
47
47
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -1,11 +1,10 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
2
  import { ChangeDetectorRef, Directive, ErrorHandler, inject, InjectionToken, Input, TemplateRef, ViewContainerRef, } from '@angular/core';
3
- import { DestroyDirective } from '@ethlete/core';
3
+ import { DestroyService } from '@ethlete/core';
4
4
  import { BehaviorSubject, of, Subject, switchMap, takeUntil, tap } from 'rxjs';
5
5
  import { InfinityQuery } from '../infinite-query';
6
6
  import { isQueryStateFailure, isQueryStateLoading, isQueryStateSuccess } from '../query';
7
7
  import * as i0 from "@angular/core";
8
- import * as i1 from "@ethlete/core";
9
8
  export const INFINITY_QUERY_TOKEN = new InjectionToken('INFINITY_QUERY_TOKEN');
10
9
  export class InfinityQueryDirective {
11
10
  constructor() {
@@ -23,7 +22,7 @@ export class InfinityQueryDirective {
23
22
  itemsPerPage: null,
24
23
  };
25
24
  this._infinityQueryInstance = null;
26
- this._destroy$ = inject(DestroyDirective).destroy$;
25
+ this._destroy$ = inject(DestroyService, { host: true }).destroy$;
27
26
  this._cdr = inject(ChangeDetectorRef);
28
27
  this._viewContainerRef = inject(ViewContainerRef);
29
28
  this._mainTemplateRef = inject((TemplateRef));
@@ -138,19 +137,18 @@ export class InfinityQueryDirective {
138
137
  this._data$.next([]);
139
138
  }
140
139
  }
141
- InfinityQueryDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: InfinityQueryDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
142
- InfinityQueryDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: InfinityQueryDirective, isStandalone: true, selector: "[infinityQuery]", inputs: { infinityQuery: "infinityQuery" }, providers: [{ provide: INFINITY_QUERY_TOKEN, useExisting: InfinityQueryDirective }], exportAs: ["infinityQuery"], hostDirectives: [{ directive: i1.DestroyDirective }], ngImport: i0 });
143
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: InfinityQueryDirective, decorators: [{
140
+ InfinityQueryDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: InfinityQueryDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
141
+ InfinityQueryDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.4", type: InfinityQueryDirective, isStandalone: true, selector: "[infinityQuery]", inputs: { infinityQuery: "infinityQuery" }, providers: [{ provide: INFINITY_QUERY_TOKEN, useExisting: InfinityQueryDirective }, DestroyService], exportAs: ["infinityQuery"], ngImport: i0 });
142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: InfinityQueryDirective, decorators: [{
144
143
  type: Directive,
145
144
  args: [{
146
145
  // eslint-disable-next-line @angular-eslint/directive-selector
147
146
  selector: '[infinityQuery]',
148
147
  exportAs: 'infinityQuery',
149
148
  standalone: true,
150
- providers: [{ provide: INFINITY_QUERY_TOKEN, useExisting: InfinityQueryDirective }],
151
- hostDirectives: [DestroyDirective],
149
+ providers: [{ provide: INFINITY_QUERY_TOKEN, useExisting: InfinityQueryDirective }, DestroyService],
152
150
  }]
153
151
  }], propDecorators: { infinityQuery: [{
154
152
  type: Input
155
153
  }] } });
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5maW5pdHktcXVlcnkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9xdWVyeS9zcmMvbGliL2RpcmVjdGl2ZXMvaW5maW5pdHktcXVlcnkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBR0wsV0FBVyxFQUNYLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxhQUFhLEVBQXVCLE1BQU0sbUJBQW1CLENBQUM7QUFDdkUsT0FBTyxFQUFpQixtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBa0J4RyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLGNBQWMsQ0FBOEIsc0JBQXNCLENBQUMsQ0FBQztBQVU1RyxNQUFNLE9BQU8sc0JBQXNCO0lBUm5DO1FBV21CLHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7UUFDOUMsaUJBQVksR0FBNEI7WUFDdkQsU0FBUyxFQUFFLElBQUk7WUFDZixhQUFhLEVBQUUsSUFBSTtZQUNuQixPQUFPLEVBQUUsS0FBSztZQUNkLEtBQUssRUFBRSxJQUFJO1lBRVgsV0FBVyxFQUFFLEtBQUs7WUFDbEIsV0FBVyxFQUFFLEtBQUs7WUFDbEIsV0FBVyxFQUFFLElBQUk7WUFDakIscUJBQXFCLEVBQUUsSUFBSTtZQUMzQixVQUFVLEVBQUUsSUFBSTtZQUNo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Q0FBQztvQkFDbkYsY0FBYyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQ25DOzhCQStCSyxhQUFhO3NCQURoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRXJyb3JIYW5kbGVyLFxuICBpbmplY3QsXG4gIEluamVjdGlvblRva2VuLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlc3Ryb3lEaXJlY3RpdmUgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgb2YsIFN1YmplY3QsIHN3aXRjaE1hcCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEluZmluaXR5UXVlcnksIEluZmluaXR5UXVlcnlDb25maWcgfSBmcm9tICcuLi9pbmZpbml0ZS1xdWVyeSc7XG5pbXBvcnQgeyBCYXNlQXJndW1lbnRzLCBpc1F1ZXJ5U3RhdGVGYWlsdXJlLCBpc1F1ZXJ5U3RhdGVMb2FkaW5nLCBpc1F1ZXJ5U3RhdGVTdWNjZXNzIH0gZnJvbSAnLi4vcXVlcnknO1xuaW1wb3J0IHsgQW55UXVlcnlDcmVhdG9yIH0gZnJvbSAnLi4vcXVlcnktY2xpZW50JztcbmltcG9ydCB7IFJlcXVlc3RFcnJvciB9IGZyb20gJy4uL3JlcXVlc3QnO1xuXG5pbnRlcmZhY2UgSW5maW5pdHlRdWVyeUNvbnRleHQ8USBleHRlbmRzIEluZmluaXR5UXVlcnlDb25maWc8QW55UXVlcnlDcmVhdG9yLCBCYXNlQXJndW1lbnRzLCBhbnksIHVua25vd25bXT4+IHtcbiAgJGltcGxpY2l0OiBRWydyZXNwb25zZSddWydhcnJheVR5cGUnXSB8IG51bGw7XG4gIGluZmluaXR5UXVlcnk6IFFbJ3Jlc3BvbnNlJ11bJ2FycmF5VHlwZSddIHwgbnVsbDtcbiAgbG9hZGluZzogYm9vbGVhbjtcbiAgZXJyb3I6IFJlcXVlc3RFcnJvcjx1bmtub3duPiB8IG51bGw7XG5cbiAgaXNGaXJzdExvYWQ6IGJvb2xlYW47XG4gIGNhbkxvYWRNb3JlOiBib29sZWFuO1xuICBjdXJyZW50UGFnZTogbnVtYmVyIHwgbnVsbDtcbiAgY3VycmVudENhbGN1bGF0ZWRQYWdlOiBudW1iZXIgfCBudWxsO1xuICB0b3RhbFBhZ2VzOiBudW1iZXIgfCBudWxsO1xuICBpdGVtc1BlclBhZ2U6IG51bWJlciB8IG51bGw7XG59XG5cbmV4cG9ydCBjb25zdCBJTkZJTklUWV9RVUVSWV9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJbmZpbml0eVF1ZXJ5RGlyZWN0aXZlPGFueT4+KCdJTkZJTklUWV9RVUVSWV9UT0tFTicpO1xuXG5ARGlyZWN0aXZlKHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdbaW5maW5pdHlRdWVyeV0nLFxuICBleHBvcnRBczogJ2luZmluaXR5UXVlcnknLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IElORklOSVRZX1FVRVJZX1RPS0VOLCB1c2VFeGlzdGluZzogSW5maW5pdHlRdWVyeURpcmVjdGl2ZSB9XSxcbiAgaG9zdERpcmVjdGl2ZXM6IFtEZXN0cm95RGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgSW5maW5pdHlRdWVyeURpcmVjdGl2ZTxRIGV4dGVuZHMgSW5maW5pdHlRdWVyeUNvbmZpZzxBbnlRdWVyeUNyZWF0b3IsIEJhc2VBcmd1bWVudHMsIGFueSwgdW5rbm93bltdPj5cbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveVxue1xuICBwcml2YXRlIHJlYWRvbmx5IF9xdWVyeUNvbmZpZ0NoYW5nZWQkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdmlld0NvbnRleHQ6IEluZmluaXR5UXVlcnlDb250ZXh0PFE+ID0ge1xuICAgICRpbXBsaWNpdDogbnVsbCxcbiAgICBpbmZpbml0eVF1ZXJ5OiBudWxsLFxuICAgIGxvYWRpbmc6IGZhbHNlLFxuICAgIGVycm9yOiBudWxsLFxuXG4gICAgaXNGaXJzdExvYWQ6IGZhbHNlLFxuICAgIGNhbkxvYWRNb3JlOiBmYWxzZSxcbiAgICBjdXJyZW50UGFnZTogbnVsbCxcbiAgICBjdXJyZW50Q2FsY3VsYXRlZFBhZ2U6IG51bGwsXG4gICAgdG90YWxQYWdlczogbnVsbCxcbiAgICBpdGVtc1BlclBhZ2U6IG51bGwsXG4gIH07XG4gIHByaXZhdGUgX2luZmluaXR5UXVlcnlJbnN0YW5jZTogUmV0dXJuVHlwZTx0eXBlb2YgdGhpcy5fc2V0dXBJbmZpbml0eVF1ZXJ5PiB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kkID0gaW5qZWN0KERlc3Ryb3lEaXJlY3RpdmUpLmRlc3Ryb3kkO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGFpbmVyUmVmID0gaW5qZWN0KFZpZXdDb250YWluZXJSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tYWluVGVtcGxhdGVSZWYgPSBpbmplY3QoVGVtcGxhdGVSZWY8SW5maW5pdHlRdWVyeUNvbnRleHQ8UT4+KTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZXJyb3JIYW5kbGVyID0gaW5qZWN0KEVycm9ySGFuZGxlcik7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZGF0YSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFFbJ3Jlc3BvbnNlJ11bJ2FycmF5VHlwZSddPihbXSk7XG5cbiAgcHJpdmF0ZSBfaXNNYWluVmlld0NyZWF0ZWQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBnZXQgaW5maW5pdHlRdWVyeSgpOiBRIHtcbiAgICByZXR1cm4gdGhpcy5faW5maW5pdHlRdWVyeTtcbiAgfVxuICBzZXQgaW5maW5pdHlRdWVyeSh2OiBRKSB7XG4gICAgdGhpcy5fY2xlYW51cCgpO1xuXG4gICAgdGhpcy5faW5maW5pdHlRdWVyeSA9IHY7XG4gICAgdGhpcy5faW5maW5pdHlRdWVyeUluc3RhbmNlID0gdGhpcy5fc2V0dXBJbmZpbml0eVF1ZXJ5KHYpO1xuICAgIHRoaXMuX2xvYWROZXh0UGFnZSgpO1xuICB9XG4gIHByaXZhdGUgX2luZmluaXR5UXVlcnkhOiBRO1xuXG4gIGdldCBjb250ZXh0KCkge1xuICAgIHJldHVybiB0aGlzLl92aWV3Q29udGV4dDtcbiAgfVxuXG4gIGdldCBpbnN0YW5jZSgpIHtcbiAgICByZXR1cm4gdGhpcy5faW5maW5pdHlRdWVyeUluc3RhbmNlO1xuICB9XG5cbiAgZ2V0IGRhdGEkKCkge1xuICAgIHJldHVybiB0aGlzLl9kYXRhJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBkYXRhKCkge1xuICAgIHJldHVybiB0aGlzLl9kYXRhJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgc3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQ8USBleHRlbmRzIEluZmluaXR5UXVlcnlDb25maWc8QW55UXVlcnlDcmVhdG9yLCBCYXNlQXJndW1lbnRzLCBhbnksIHVua25vd25bXT4+KFxuICAgIGRpcjogSW5maW5pdHlRdWVyeURpcmVjdGl2ZTxRPixcbiAgICBjdHg6IHVua25vd24sXG4gICk6IGN0eCBpcyBJbmZpbml0eVF1ZXJ5Q29udGV4dDxRPiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9yZW5kZXJNYWluVmlldygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5pbnN0YW5jZT8uX2Rlc3Ryb3koKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldHVwSW5maW5pdHlRdWVyeShjb25maWc6IFEpIHtcbiAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyBJbmZpbml0eVF1ZXJ5KGNvbmZpZyk7XG5cbiAgICBpbnN0YW5jZS5jdXJyZW50UXVlcnkkXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChxKSA9PiBxPy5zdGF0ZSQgPz8gb2YobnVsbCkpLFxuICAgICAgICB0YXAoKHN0YXRlKSA9PiB7XG4gICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuY3VycmVudFBhZ2UgPSBpbnN0YW5jZS5jdXJyZW50UGFnZTtcbiAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC50b3RhbFBhZ2VzID0gaW5zdGFuY2UudG90YWxQYWdlcztcbiAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5pdGVtc1BlclBhZ2UgPSBpbnN0YW5jZS5pdGVtc1BlclBhZ2U7XG4gICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuY2FuTG9hZE1vcmUgPVxuICAgICAgICAgICAgKGluc3RhbmNlLnRvdGFsUGFnZXMgJiYgaW5zdGFuY2UuY3VycmVudFBhZ2UgJiYgaW5zdGFuY2UudG90YWxQYWdlcyA+IGluc3RhbmNlLmN1cnJlbnRQYWdlKSB8fCBmYWxzZTtcbiAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5jdXJyZW50Q2FsY3VsYXRlZFBhZ2UgPSBpbnN0YW5jZS5jdXJyZW50Q2FsY3VsYXRlZFBhZ2U7XG5cbiAgICAgICAgICBpZiAoaXNRdWVyeVN0YXRlTG9hZGluZyhzdGF0ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250ZXh0LmxvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuZXJyb3IgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuaXNGaXJzdExvYWQgPSB0aGlzLmNvbnRleHQuaW5maW5pdHlRdWVyeSA9PT0gbnVsbDtcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzUXVlcnlTdGF0ZUZhaWx1cmUoc3RhdGUpKSB7XG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5lcnJvciA9IHN0YXRlLmVycm9yO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuaXNGaXJzdExvYWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuX2Vycm9ySGFuZGxlci5oYW5kbGVFcnJvcihzdGF0ZS5lcnJvcik7XG4gICAgICAgICAgfSBlbHNlIGlmIChpc1F1ZXJ5U3RhdGVTdWNjZXNzKHN0YXRlKSkge1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuZXJyb3IgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuaXNGaXJzdExvYWQgPSBmYWxzZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuZXJyb3IgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuaW5maW5pdHlRdWVyeSA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC4kaW1wbGljaXQgPSBudWxsO1xuXG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5pc0ZpcnN0TG9hZCA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuY2FuTG9hZE1vcmUgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250ZXh0LmN1cnJlbnRQYWdlID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250ZXh0Lml0ZW1zUGVyUGFnZSA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC50b3RhbFBhZ2VzID0gbnVsbDtcblxuICAgICAgICAgICAgdGhpcy5fZGF0YSQubmV4dChbXSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX3F1ZXJ5Q29uZmlnQ2hhbmdlZCQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuXG4gICAgaW5zdGFuY2UuZGF0YSRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKGRhdGEpID0+IHtcbiAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5pbmZpbml0eVF1ZXJ5ID0gdGhpcy5fdmlld0NvbnRleHQuJGltcGxpY2l0ID0gZGF0YSBhcyBRWydyZXNwb25zZSddWydhcnJheVR5cGUnXSB8IG51bGw7XG4gICAgICAgICAgdGhpcy5fZGF0YSQubmV4dChkYXRhKTtcblxuICAgICAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9xdWVyeUNvbmZpZ0NoYW5nZWQkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIHJldHVybiBpbnN0YW5jZTtcbiAgfVxuXG4gIF9sb2FkTmV4dFBhZ2UoKSB7XG4gICAgaWYgKCF0aGlzLl9pbmZpbml0eVF1ZXJ5SW5zdGFuY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9pbmZpbml0eVF1ZXJ5SW5zdGFuY2UubmV4dFBhZ2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlck1haW5WaWV3KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5faXNNYWluVmlld0NyZWF0ZWQpIHtcbiAgICAgIHRoaXMuX2lzTWFpblZpZXdDcmVhdGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuX3ZpZXdDb250YWluZXJSZWYuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuX21haW5UZW1wbGF0ZVJlZiwgdGhpcy5fdmlld0NvbnRleHQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NsZWFudXAoKSB7XG4gICAgdGhpcy5fcXVlcnlDb25maWdDaGFuZ2VkJC5uZXh0KHRydWUpO1xuXG4gICAgdGhpcy5pbnN0YW5jZT8uX2Rlc3Ryb3koKTtcblxuICAgIHRoaXMuX3ZpZXdDb250ZXh0LmxvYWRpbmcgPSBmYWxzZTtcbiAgICB0aGlzLl92aWV3Q29udGV4dC5lcnJvciA9IG51bGw7XG4gICAgdGhpcy5fdmlld0NvbnRleHQuaW5maW5pdHlRdWVyeSA9IG51bGw7XG4gICAgdGhpcy5fdmlld0NvbnRleHQuJGltcGxpY2l0ID0gbnVsbDtcblxuICAgIHRoaXMuX3ZpZXdDb250ZXh0LmlzRmlyc3RMb2FkID0gZmFsc2U7XG4gICAgdGhpcy5fdmlld0NvbnRleHQuY2FuTG9hZE1vcmUgPSBmYWxzZTtcbiAgICB0aGlzLl92aWV3Q29udGV4dC5jdXJyZW50UGFnZSA9IG51bGw7XG4gICAgdGhpcy5fdmlld0NvbnRleHQuaXRlbXNQZXJQYWdlID0gbnVsbDtcbiAgICB0aGlzLl92aWV3Q29udGV4dC50b3RhbFBhZ2VzID0gbnVsbDtcblxuICAgIHRoaXMuX2RhdGEkLm5leHQoW10pO1xuICB9XG59XG4iXX0=
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5maW5pdHktcXVlcnkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9xdWVyeS9zcmMvbGliL2RpcmVjdGl2ZXMvaW5maW5pdHktcXVlcnkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBR0wsV0FBVyxFQUNYLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvRSxPQUFPLEVBQUUsYUFBYSxFQUF1QixNQUFNLG1CQUFtQixDQUFDO0FBQ3ZFLE9BQU8sRUFBaUIsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBa0J4RyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLGNBQWMsQ0FBOEIsc0JBQXNCLENBQUMsQ0FBQztBQVM1RyxNQUFNLE9BQU8sc0JBQXNCO0lBUG5DO1FBVW1CLHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7UUFDOUMsaUJBQVksR0FBNEI7WUFDdkQsU0FBUyxFQUFFLElBQUk7WUFDZixhQUFhLEVBQUUsSUFBSTtZQUNuQixPQUFPLEVBQUUsS0FBSztZQUNkLEtBQUssRUFBRSxJQUFJO1lBRVgsV0FBVyxFQUFFLEtBQUs7WUFDbEIsV0FBVyxFQUFFLEtBQUs7WUFDbEIsV0FBVyxFQUFFLElBQUk7WUFDakIscUJBQXFCLEVBQUUsSUFBSTtZQUMzQixVQUFVLEVBQUUsSUFBSTtZQUNoQixZ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LEVBQUUsb0JBQW9CLEVBQUUsV0FBVyx3QkFBd0IsRUFBRSxFQUFFLGNBQWMsQ0FBQztpQkFDcEc7OEJBK0JLLGFBQWE7c0JBRGhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgRGlyZWN0aXZlLFxuICBFcnJvckhhbmRsZXIsXG4gIGluamVjdCxcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGVzdHJveVNlcnZpY2UgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgb2YsIFN1YmplY3QsIHN3aXRjaE1hcCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEluZmluaXR5UXVlcnksIEluZmluaXR5UXVlcnlDb25maWcgfSBmcm9tICcuLi9pbmZpbml0ZS1xdWVyeSc7XG5pbXBvcnQgeyBCYXNlQXJndW1lbnRzLCBpc1F1ZXJ5U3RhdGVGYWlsdXJlLCBpc1F1ZXJ5U3RhdGVMb2FkaW5nLCBpc1F1ZXJ5U3RhdGVTdWNjZXNzIH0gZnJvbSAnLi4vcXVlcnknO1xuaW1wb3J0IHsgQW55UXVlcnlDcmVhdG9yIH0gZnJvbSAnLi4vcXVlcnktY2xpZW50JztcbmltcG9ydCB7IFJlcXVlc3RFcnJvciB9IGZyb20gJy4uL3JlcXVlc3QnO1xuXG5pbnRlcmZhY2UgSW5maW5pdHlRdWVyeUNvbnRleHQ8USBleHRlbmRzIEluZmluaXR5UXVlcnlDb25maWc8QW55UXVlcnlDcmVhdG9yLCBCYXNlQXJndW1lbnRzLCBhbnksIHVua25vd25bXT4+IHtcbiAgJGltcGxpY2l0OiBRWydyZXNwb25zZSddWydhcnJheVR5cGUnXSB8IG51bGw7XG4gIGluZmluaXR5UXVlcnk6IFFbJ3Jlc3BvbnNlJ11bJ2FycmF5VHlwZSddIHwgbnVsbDtcbiAgbG9hZGluZzogYm9vbGVhbjtcbiAgZXJyb3I6IFJlcXVlc3RFcnJvcjx1bmtub3duPiB8IG51bGw7XG5cbiAgaXNGaXJzdExvYWQ6IGJvb2xlYW47XG4gIGNhbkxvYWRNb3JlOiBib29sZWFuO1xuICBjdXJyZW50UGFnZTogbnVtYmVyIHwgbnVsbDtcbiAgY3VycmVudENhbGN1bGF0ZWRQYWdlOiBudW1iZXIgfCBudWxsO1xuICB0b3RhbFBhZ2VzOiBudW1iZXIgfCBudWxsO1xuICBpdGVtc1BlclBhZ2U6IG51bWJlciB8IG51bGw7XG59XG5cbmV4cG9ydCBjb25zdCBJTkZJTklUWV9RVUVSWV9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJbmZpbml0eVF1ZXJ5RGlyZWN0aXZlPGFueT4+KCdJTkZJTklUWV9RVUVSWV9UT0tFTicpO1xuXG5ARGlyZWN0aXZlKHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdbaW5maW5pdHlRdWVyeV0nLFxuICBleHBvcnRBczogJ2luZmluaXR5UXVlcnknLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IElORklOSVRZX1FVRVJZX1RPS0VOLCB1c2VFeGlzdGluZzogSW5maW5pdHlRdWVyeURpcmVjdGl2ZSB9LCBEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEluZmluaXR5UXVlcnlEaXJlY3RpdmU8USBleHRlbmRzIEluZmluaXR5UXVlcnlDb25maWc8QW55UXVlcnlDcmVhdG9yLCBCYXNlQXJndW1lbnRzLCBhbnksIHVua25vd25bXT4+XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3lcbntcbiAgcHJpdmF0ZSByZWFkb25seSBfcXVlcnlDb25maWdDaGFuZ2VkJCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3ZpZXdDb250ZXh0OiBJbmZpbml0eVF1ZXJ5Q29udGV4dDxRPiA9IHtcbiAgICAkaW1wbGljaXQ6IG51bGwsXG4gICAgaW5maW5pdHlRdWVyeTogbnVsbCxcbiAgICBsb2FkaW5nOiBmYWxzZSxcbiAgICBlcnJvcjogbnVsbCxcblxuICAgIGlzRmlyc3RMb2FkOiBmYWxzZSxcbiAgICBjYW5Mb2FkTW9yZTogZmFsc2UsXG4gICAgY3VycmVudFBhZ2U6IG51bGwsXG4gICAgY3VycmVudENhbGN1bGF0ZWRQYWdlOiBudWxsLFxuICAgIHRvdGFsUGFnZXM6IG51bGwsXG4gICAgaXRlbXNQZXJQYWdlOiBudWxsLFxuICB9O1xuICBwcml2YXRlIF9pbmZpbml0eVF1ZXJ5SW5zdGFuY2U6IFJldHVyblR5cGU8dHlwZW9mIHRoaXMuX3NldHVwSW5maW5pdHlRdWVyeT4gfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IGluamVjdChEZXN0cm95U2VydmljZSwgeyBob3N0OiB0cnVlIH0pLmRlc3Ryb3kkO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGFpbmVyUmVmID0gaW5qZWN0KFZpZXdDb250YWluZXJSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tYWluVGVtcGxhdGVSZWYgPSBpbmplY3QoVGVtcGxhdGVSZWY8SW5maW5pdHlRdWVyeUNvbnRleHQ8UT4+KTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZXJyb3JIYW5kbGVyID0gaW5qZWN0KEVycm9ySGFuZGxlcik7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZGF0YSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFFbJ3Jlc3BvbnNlJ11bJ2FycmF5VHlwZSddPihbXSk7XG5cbiAgcHJpdmF0ZSBfaXNNYWluVmlld0NyZWF0ZWQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBnZXQgaW5maW5pdHlRdWVyeSgpOiBRIHtcbiAgICByZXR1cm4gdGhpcy5faW5maW5pdHlRdWVyeTtcbiAgfVxuICBzZXQgaW5maW5pdHlRdWVyeSh2OiBRKSB7XG4gICAgdGhpcy5fY2xlYW51cCgpO1xuXG4gICAgdGhpcy5faW5maW5pdHlRdWVyeSA9IHY7XG4gICAgdGhpcy5faW5maW5pdHlRdWVyeUluc3RhbmNlID0gdGhpcy5fc2V0dXBJbmZpbml0eVF1ZXJ5KHYpO1xuICAgIHRoaXMuX2xvYWROZXh0UGFnZSgpO1xuICB9XG4gIHByaXZhdGUgX2luZmluaXR5UXVlcnkhOiBRO1xuXG4gIGdldCBjb250ZXh0KCkge1xuICAgIHJldHVybiB0aGlzLl92aWV3Q29udGV4dDtcbiAgfVxuXG4gIGdldCBpbnN0YW5jZSgpIHtcbiAgICByZXR1cm4gdGhpcy5faW5maW5pdHlRdWVyeUluc3RhbmNlO1xuICB9XG5cbiAgZ2V0IGRhdGEkKCkge1xuICAgIHJldHVybiB0aGlzLl9kYXRhJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBkYXRhKCkge1xuICAgIHJldHVybiB0aGlzLl9kYXRhJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgc3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQ8USBleHRlbmRzIEluZmluaXR5UXVlcnlDb25maWc8QW55UXVlcnlDcmVhdG9yLCBCYXNlQXJndW1lbnRzLCBhbnksIHVua25vd25bXT4+KFxuICAgIGRpcjogSW5maW5pdHlRdWVyeURpcmVjdGl2ZTxRPixcbiAgICBjdHg6IHVua25vd24sXG4gICk6IGN0eCBpcyBJbmZpbml0eVF1ZXJ5Q29udGV4dDxRPiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9yZW5kZXJNYWluVmlldygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5pbnN0YW5jZT8uX2Rlc3Ryb3koKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldHVwSW5maW5pdHlRdWVyeShjb25maWc6IFEpIHtcbiAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyBJbmZpbml0eVF1ZXJ5KGNvbmZpZyk7XG5cbiAgICBpbnN0YW5jZS5jdXJyZW50UXVlcnkkXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChxKSA9PiBxPy5zdGF0ZSQgPz8gb2YobnVsbCkpLFxuICAgICAgICB0YXAoKHN0YXRlKSA9PiB7XG4gICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuY3VycmVudFBhZ2UgPSBpbnN0YW5jZS5jdXJyZW50UGFnZTtcbiAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC50b3RhbFBhZ2VzID0gaW5zdGFuY2UudG90YWxQYWdlcztcbiAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5pdGVtc1BlclBhZ2UgPSBpbnN0YW5jZS5pdGVtc1BlclBhZ2U7XG4gICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuY2FuTG9hZE1vcmUgPVxuICAgICAgICAgICAgKGluc3RhbmNlLnRvdGFsUGFnZXMgJiYgaW5zdGFuY2UuY3VycmVudFBhZ2UgJiYgaW5zdGFuY2UudG90YWxQYWdlcyA+IGluc3RhbmNlLmN1cnJlbnRQYWdlKSB8fCBmYWxzZTtcbiAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5jdXJyZW50Q2FsY3VsYXRlZFBhZ2UgPSBpbnN0YW5jZS5jdXJyZW50Q2FsY3VsYXRlZFBhZ2U7XG5cbiAgICAgICAgICBpZiAoaXNRdWVyeVN0YXRlTG9hZGluZyhzdGF0ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250ZXh0LmxvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuZXJyb3IgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuaXNGaXJzdExvYWQgPSB0aGlzLmNvbnRleHQuaW5maW5pdHlRdWVyeSA9PT0gbnVsbDtcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzUXVlcnlTdGF0ZUZhaWx1cmUoc3RhdGUpKSB7XG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5lcnJvciA9IHN0YXRlLmVycm9yO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuaXNGaXJzdExvYWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuX2Vycm9ySGFuZGxlci5oYW5kbGVFcnJvcihzdGF0ZS5lcnJvcik7XG4gICAgICAgICAgfSBlbHNlIGlmIChpc1F1ZXJ5U3RhdGVTdWNjZXNzKHN0YXRlKSkge1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuZXJyb3IgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuaXNGaXJzdExvYWQgPSBmYWxzZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuZXJyb3IgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuaW5maW5pdHlRdWVyeSA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC4kaW1wbGljaXQgPSBudWxsO1xuXG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5pc0ZpcnN0TG9hZCA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5fdmlld0NvbnRleHQuY2FuTG9hZE1vcmUgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250ZXh0LmN1cnJlbnRQYWdlID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdDb250ZXh0Lml0ZW1zUGVyUGFnZSA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC50b3RhbFBhZ2VzID0gbnVsbDtcblxuICAgICAgICAgICAgdGhpcy5fZGF0YSQubmV4dChbXSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX3F1ZXJ5Q29uZmlnQ2hhbmdlZCQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuXG4gICAgaW5zdGFuY2UuZGF0YSRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKGRhdGEpID0+IHtcbiAgICAgICAgICB0aGlzLl92aWV3Q29udGV4dC5pbmZpbml0eVF1ZXJ5ID0gdGhpcy5fdmlld0NvbnRleHQuJGltcGxpY2l0ID0gZGF0YSBhcyBRWydyZXNwb25zZSddWydhcnJheVR5cGUnXSB8IG51bGw7XG4gICAgICAgICAgdGhpcy5fZGF0YSQubmV4dChkYXRhKTtcblxuICAgICAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9xdWVyeUNvbmZpZ0NoYW5nZWQkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIHJldHVybiBpbnN0YW5jZTtcbiAgfVxuXG4gIF9sb2FkTmV4dFBhZ2UoKSB7XG4gICAgaWYgKCF0aGlzLl9pbmZpbml0eVF1ZXJ5SW5zdGFuY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9pbmZpbml0eVF1ZXJ5SW5zdGFuY2UubmV4dFBhZ2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlck1haW5WaWV3KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5faXNNYWluVmlld0NyZWF0ZWQpIHtcbiAgICAgIHRoaXMuX2lzTWFpblZpZXdDcmVhdGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuX3ZpZXdDb250YWluZXJSZWYuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuX21haW5UZW1wbGF0ZVJlZiwgdGhpcy5fdmlld0NvbnRleHQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NsZWFudXAoKSB7XG4gICAgdGhpcy5fcXVlcnlDb25maWdDaGFuZ2VkJC5uZXh0KHRydWUpO1xuXG4gICAgdGhpcy5pbnN0YW5jZT8uX2Rlc3Ryb3koKTtcblxuICAgIHRoaXMuX3ZpZXdDb250ZXh0LmxvYWRpbmcgPSBmYWxzZTtcbiAgICB0aGlzLl92aWV3Q29udGV4dC5lcnJvciA9IG51bGw7XG4gICAgdGhpcy5fdmlld0NvbnRleHQuaW5maW5pdHlRdWVyeSA9IG51bGw7XG4gICAgdGhpcy5fdmlld0NvbnRleHQuJGltcGxpY2l0ID0gbnVsbDtcblxuICAgIHRoaXMuX3ZpZXdDb250ZXh0LmlzRmlyc3RMb2FkID0gZmFsc2U7XG4gICAgdGhpcy5fdmlld0NvbnRleHQuY2FuTG9hZE1vcmUgPSBmYWxzZTtcbiAgICB0aGlzLl92aWV3Q29udGV4dC5jdXJyZW50UGFnZSA9IG51bGw7XG4gICAgdGhpcy5fdmlld0NvbnRleHQuaXRlbXNQZXJQYWdlID0gbnVsbDtcbiAgICB0aGlzLl92aWV3Q29udGV4dC50b3RhbFBhZ2VzID0gbnVsbDtcblxuICAgIHRoaXMuX2RhdGEkLm5leHQoW10pO1xuICB9XG59XG4iXX0=
@@ -1,8 +1,21 @@
1
1
  import { ChangeDetectorRef, Directive, ErrorHandler, Input, TemplateRef, ViewContainerRef, } from '@angular/core';
2
2
  import { tap } from 'rxjs';
3
- import { isQueryStateFailure, isQueryStateLoading, isQueryStateSuccess, } from '../query';
3
+ import { isQuery, isQueryStateFailure, isQueryStateLoading, isQueryStateSuccess, } from '../query';
4
4
  import * as i0 from "@angular/core";
5
5
  export class QueryDirective {
6
+ get query() {
7
+ return this._query;
8
+ }
9
+ set query(v) {
10
+ this._query = v;
11
+ this._subscribeToQuery();
12
+ }
13
+ get cache() {
14
+ return this._cache;
15
+ }
16
+ set cache(v) {
17
+ this._cache = v;
18
+ }
6
19
  constructor(_mainTemplateRef, _viewContainerRef, _errorHandler, _cdr) {
7
20
  this._mainTemplateRef = _mainTemplateRef;
8
21
  this._viewContainerRef = _viewContainerRef;
@@ -16,22 +29,10 @@ export class QueryDirective {
16
29
  raw: null,
17
30
  loading: false,
18
31
  error: null,
32
+ progress: null,
19
33
  };
20
34
  this._cache = false;
21
35
  }
22
- get query() {
23
- return this._query;
24
- }
25
- set query(v) {
26
- this._query = v;
27
- this._subscribeToQuery();
28
- }
29
- get cache() {
30
- return this._cache;
31
- }
32
- set cache(v) {
33
- this._cache = v;
34
- }
35
36
  static ngTemplateContextGuard(dir, ctx) {
36
37
  return true;
37
38
  }
@@ -47,15 +48,18 @@ export class QueryDirective {
47
48
  if (!this.query) {
48
49
  return;
49
50
  }
50
- const sub = this.query.state$.pipe(tap((state) => this._updateView(state))).subscribe();
51
+ const query = isQuery(this.query) ? this.query : this.query.query;
52
+ const sub = query.state$.pipe(tap((state) => this._updateView(state))).subscribe();
51
53
  this._subscription = sub;
52
54
  }
53
55
  _updateView(state) {
54
56
  if (isQueryStateLoading(state)) {
55
57
  this._viewContext.loading = true;
58
+ this._viewContext.progress = state.progress ?? null;
56
59
  }
57
60
  else {
58
61
  this._viewContext.loading = false;
62
+ this._viewContext.progress = null;
59
63
  }
60
64
  if (isQueryStateSuccess(state)) {
61
65
  this._viewContext.query = state.response;
@@ -83,9 +87,9 @@ export class QueryDirective {
83
87
  }
84
88
  }
85
89
  }
86
- QueryDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: QueryDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i0.ErrorHandler }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
87
- QueryDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: QueryDirective, isStandalone: true, selector: "[query]", inputs: { query: "query", cache: ["queryCache", "cache"] }, ngImport: i0 });
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: QueryDirective, decorators: [{
90
+ QueryDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: QueryDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i0.ErrorHandler }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
91
+ QueryDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.4", type: QueryDirective, isStandalone: true, selector: "[query]", inputs: { query: "query", cache: ["queryCache", "cache"] }, ngImport: i0 });
92
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: QueryDirective, decorators: [{
89
93
  type: Directive,
90
94
  args: [{
91
95
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -98,4 +102,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImpor
98
102
  type: Input,
99
103
  args: ['queryCache']
100
104
  }] } });
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9xdWVyeS9zcmMvbGliL2RpcmVjdGl2ZXMvcXVlcnkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsV0FBVyxFQUNYLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWdCLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBRUwsbUJBQW1CLEVBQ25CLG1CQUFtQixFQUNuQixtQkFBbUIsR0FJcEIsTUFBTSxVQUFVLENBQUM7O0FBZ0JsQixNQUFNLE9BQU8sY0FBYztJQWdDekIsWUFDVSxnQkFBOEMsRUFDOUMsaUJBQW1DLEVBQ25DLGFBQTJCLEVBQzNCLElBQXVCO1FBSHZCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBOEI7UUFDOUMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQUNuQyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMzQixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQW5DekIsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO1FBQzNCLGtCQUFhLEdBQXdCLElBQUksQ0FBQztRQUVqQyxpQkFBWSxHQUFvQjtZQUMvQyxTQUFTLEVBQUUsSUFBNEI7WUFDdkMsS0FBSyxFQUFFLElBQTRCO1lBQ25DLEdBQUcsRUFBRSxJQUErQjtZQUNwQyxPQUFPLEVBQUUsS0FBSztZQUNkLEtBQUssRUFBRSxJQUFJO1NBQ1osQ0FBQztRQW9CTSxXQUFNLEdBQUcsS0FBSyxDQUFDO0lBT3BCLENBQUM7SUF6QkosSUFDSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxDQUFJO1FBQ1osSUFBSSxDQUFDLE1BQU0sR0FB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QUM5RCxRQUFRLEVBQUUsU0FBUztvQkFDbkIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzRMQWNLLEtBQUs7c0JBRFIsS0FBSztnQkFZRixLQUFLO3NCQURSLEtBQUs7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVycm9ySGFuZGxlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgQW55UXVlcnksXG4gIGlzUXVlcnlTdGF0ZUZhaWx1cmUsXG4gIGlzUXVlcnlTdGF0ZUxvYWRpbmcsXG4gIGlzUXVlcnlTdGF0ZVN1Y2Nlc3MsXG4gIFF1ZXJ5UmF3UmVzcG9uc2VUeXBlLFxuICBRdWVyeVJlc3BvbnNlVHlwZSxcbiAgUXVlcnlTdGF0ZSxcbn0gZnJvbSAnLi4vcXVlcnknO1xuaW1wb3J0IHsgUmVxdWVzdEVycm9yIH0gZnJvbSAnLi4vcmVxdWVzdCc7XG5cbmludGVyZmFjZSBRdWVyeUNvbnRleHQ8USBleHRlbmRzIEFueVF1ZXJ5IHwgbnVsbD4ge1xuICAkaW1wbGljaXQ6IFF1ZXJ5UmVzcG9uc2VUeXBlPFE+O1xuICBxdWVyeTogUXVlcnlSZXNwb25zZVR5cGU8UT47XG4gIHJhdzogUXVlcnlSYXdSZXNwb25zZVR5cGU8UT47XG4gIGxvYWRpbmc6IGJvb2xlYW47XG4gIGVycm9yOiBSZXF1ZXN0RXJyb3I8dW5rbm93bj4gfCBudWxsO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdbcXVlcnldJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgUXVlcnlEaXJlY3RpdmU8USBleHRlbmRzIEFueVF1ZXJ5IHwgbnVsbD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2lzTWFpblZpZXdDcmVhdGVkID0gZmFsc2U7XG4gIHByaXZhdGUgX3N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdmlld0NvbnRleHQ6IFF1ZXJ5Q29udGV4dDxRPiA9IHtcbiAgICAkaW1wbGljaXQ6IG51bGwgYXMgUXVlcnlSZXNwb25zZVR5cGU8UT4sXG4gICAgcXVlcnk6IG51bGwgYXMgUXVlcnlSZXNwb25zZVR5cGU8UT4sXG4gICAgcmF3OiBudWxsIGFzIFF1ZXJ5UmF3UmVzcG9uc2VUeXBlPFE+LFxuICAgIGxvYWRpbmc6IGZhbHNlLFxuICAgIGVycm9yOiBudWxsLFxuICB9O1xuXG4gIEBJbnB1dCgpXG4gIGdldCBxdWVyeSgpOiBRIHtcbiAgICByZXR1cm4gdGhpcy5fcXVlcnk7XG4gIH1cbiAgc2V0IHF1ZXJ5KHY6IFEpIHtcbiAgICB0aGlzLl9xdWVyeSA9IHY7XG5cbiAgICB0aGlzLl9zdWJzY3JpYmVUb1F1ZXJ5KCk7XG4gIH1cbiAgcHJpdmF0ZSBfcXVlcnkhOiBRO1xuXG4gIEBJbnB1dCgncXVlcnlDYWNoZScpXG4gIGdldCBjYWNoZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fY2FjaGU7XG4gIH1cbiAgc2V0IGNhY2hlKHY6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9jYWNoZSA9IHY7XG4gIH1cbiAgcHJpdmF0ZSBfY2FjaGUgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9tYWluVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPFF1ZXJ5Q29udGV4dDxRPj4sXG4gICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIF9lcnJvckhhbmRsZXI6IEVycm9ySGFuZGxlcixcbiAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHt9XG5cbiAgc3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQ8USBleHRlbmRzIEFueVF1ZXJ5IHwgbnVsbD4oXG4gICAgZGlyOiBRdWVyeURpcmVjdGl2ZTxRPixcbiAgICBjdHg6IHVua25vd24sXG4gICk6IGN0eCBpcyBRdWVyeUNvbnRleHQ8UT4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fcmVuZGVyTWFpblZpZXcoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3N1YnNjcmliZVRvUXVlcnkoKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IG51bGw7XG5cbiAgICBpZiAoIXRoaXMucXVlcnkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzdWIgPSB0aGlzLnF1ZXJ5LnN0YXRlJC5waXBlKHRhcCgoc3RhdGUpID0+IHRoaXMuX3VwZGF0ZVZpZXcoc3RhdGUpKSkuc3Vic2NyaWJlKCk7XG5cbiAgICB0aGlzLl9zdWJzY3JpcHRpb24gPSBzdWI7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVWaWV3KHN0YXRlOiBRdWVyeVN0YXRlKSB7XG4gICAgaWYgKGlzUXVlcnlTdGF0ZUxvYWRpbmcoc3RhdGUpKSB7XG4gICAgICB0aGlzLl92aWV3Q29udGV4dC5sb2FkaW5nID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fdmlld0NvbnRleHQubG9hZGluZyA9IGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChpc1F1ZXJ5U3RhdGVTdWNjZXNzKHN0YXRlKSkge1xuICAgICAgdGhpcy5fdmlld0NvbnRleHQucXVlcnkgPSBzdGF0ZS5yZXNwb25zZSBhcyBRdWVyeVJlc3BvbnNlVHlwZTxRPjtcbiAgICAgIHRoaXMuX3ZpZXdDb250ZXh0LiRpbXBsaWNpdCA9IHN0YXRlLnJlc3BvbnNlIGFzIFF1ZXJ5UmVzcG9uc2VUeXBlPFE+O1xuICAgICAgdGhpcy5fdmlld0NvbnRleHQucmF3ID0gc3RhdGUucmF3UmVzcG9uc2UgYXMgUXVlcnlSYXdSZXNwb25zZVR5cGU8UT47XG4gICAgfSBlbHNlIGlmICghdGhpcy5jYWNoZSkge1xuICAgICAgdGhpcy5fdmlld0NvbnRleHQucXVlcnkgPSBudWxsIGFzIFF1ZXJ5UmVzcG9uc2VUeXBlPFE+O1xuICAgICAgdGhpcy5fdmlld0NvbnRleHQuJGltcGxpY2l0ID0gbnVsbCBhcyBRdWVyeVJlc3BvbnNlVHlwZTxRPjtcbiAgICAgIHRoaXMuX3ZpZXdDb250ZXh0LnJhdyA9IG51bGwgYXMgUXVlcnlSYXdSZXNwb25zZVR5cGU8UT47XG4gICAgfVxuXG4gICAgaWYgKGlzUXVlcnlTdGF0ZUZhaWx1cmUoc3RhdGUpKSB7XG4gICAgICB0aGlzLl92aWV3Q29udGV4dC5lcnJvciA9IHN0YXRlLmVycm9yO1xuXG4gICAgICB0aGlzLl9lcnJvckhhbmRsZXIuaGFuZGxlRXJyb3Ioc3RhdGUuZXJyb3IpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl92aWV3Q29udGV4dC5lcnJvciA9IG51bGw7XG4gICAgfVxuXG4gICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVyTWFpblZpZXcoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9pc01haW5WaWV3Q3JlYXRlZCkge1xuICAgICAgdGhpcy5faXNNYWluVmlld0NyZWF0ZWQgPSB0cnVlO1xuICAgICAgdGhpcy5fdmlld0NvbnRhaW5lclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5fbWFpblRlbXBsYXRlUmVmLCB0aGlzLl92aWV3Q29udGV4dCk7XG4gICAgfVxuICB9XG59XG4iXX0=
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9xdWVyeS9zcmMvbGliL2RpcmVjdGl2ZXMvcXVlcnkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsV0FBVyxFQUNYLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWdCLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBSUwsT0FBTyxFQUNQLG1CQUFtQixFQUNuQixtQkFBbUIsRUFDbkIsbUJBQW1CLEdBS3BCLE1BQU0sVUFBVSxDQUFDOztBQWlCbEIsTUFBTSxPQUFPLGNBQWM7SUFlekIsSUFDSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxDQUFJO1FBQ1osSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFFaEIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUdELElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsQ0FBVTtRQUNsQixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBR0QsWUFDVSxnQkFBdUQsRUFDdkQsaUJBQW1DLEVBQ25DLGFBQTJCLEVBQzNCLElBQXVCO1FBSHZCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBdUM7UUFDdkQsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQUNuQyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMzQixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQXBDekIsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO1FBQzNCLGtC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QUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUM1QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1lBQy9CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ3JGO0lBQ0gsQ0FBQzs7MkdBM0dVLGNBQWM7K0ZBQWQsY0FBYzsyRkFBZCxjQUFjO2tCQUwxQixTQUFTO21CQUFDO29CQUNULDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLFNBQVM7b0JBQ25CLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs0TEFpQkssS0FBSztzQkFEUixLQUFLO2dCQVlGLEtBQUs7c0JBRFIsS0FBSzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRXJyb3JIYW5kbGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBBbnlRdWVyeSxcbiAgQW55UXVlcnlDcmVhdG9yQ29sbGVjdGlvbixcbiAgQW55UXVlcnlPZkNyZWF0b3JDb2xsZWN0aW9uLFxuICBpc1F1ZXJ5LFxuICBpc1F1ZXJ5U3RhdGVGYWlsdXJlLFxuICBpc1F1ZXJ5U3RhdGVMb2FkaW5nLFxuICBpc1F1ZXJ5U3RhdGVTdWNjZXNzLFxuICBRdWVyeU9mLFxuICBRdWVyeVJhd1Jlc3BvbnNlVHlwZSxcbiAgUXVlcnlSZXNwb25zZVR5cGUsXG4gIFF1ZXJ5U3RhdGUsXG59IGZyb20gJy4uL3F1ZXJ5JztcbmltcG9ydCB7IFJlcXVlc3RFcnJvciwgUmVxdWVzdFByb2dyZXNzIH0gZnJvbSAnLi4vcmVxdWVzdCc7XG5cbmludGVyZmFjZSBRdWVyeUNvbnRleHQ8USBleHRlbmRzIEFueVF1ZXJ5IHwgbnVsbD4ge1xuICAkaW1wbGljaXQ6IFF1ZXJ5UmVzcG9uc2VUeXBlPFE+O1xuICBxdWVyeTogUXVlcnlSZXNwb25zZVR5cGU8UT47XG4gIHJhdzogUXVlcnlSYXdSZXNwb25zZVR5cGU8UT47XG4gIGxvYWRpbmc6IGJvb2xlYW47XG4gIHByb2dyZXNzOiBSZXF1ZXN0UHJvZ3Jlc3MgfCBudWxsO1xuICBlcnJvcjogUmVxdWVzdEVycm9yPHVua25vd24+IHwgbnVsbDtcbn1cblxuQERpcmVjdGl2ZSh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnW3F1ZXJ5XScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFF1ZXJ5RGlyZWN0aXZlPFEgZXh0ZW5kcyBBbnlRdWVyeSB8IEFueVF1ZXJ5T2ZDcmVhdG9yQ29sbGVjdGlvbjxBbnlRdWVyeUNyZWF0b3JDb2xsZWN0aW9uPiB8IG51bGw+XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3lcbntcbiAgcHJpdmF0ZSBfaXNNYWluVmlld0NyZWF0ZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGV4dDogUXVlcnlDb250ZXh0PFF1ZXJ5T2Y8UT4+ID0ge1xuICAgICRpbXBsaWNpdDogbnVsbCBhcyBRdWVyeVJlc3BvbnNlVHlwZTxRdWVyeU9mPFE+PixcbiAgICBxdWVyeTogbnVsbCBhcyBRdWVyeVJlc3BvbnNlVHlwZTxRdWVyeU9mPFE+PixcbiAgICByYXc6IG51bGwgYXMgUXVlcnlSYXdSZXNwb25zZVR5cGU8UXVlcnlPZjxRPj4sXG4gICAgbG9hZGluZzogZmFsc2UsXG4gICAgZXJyb3I6IG51bGwsXG4gICAgcHJvZ3Jlc3M6IG51bGwsXG4gIH07XG5cbiAgQElucHV0KClcbiAgZ2V0IHF1ZXJ5KCk6IFEge1xuICAgIHJldHVybiB0aGlzLl9xdWVyeTtcbiAgfVxuICBzZXQgcXVlcnkodjogUSkge1xuICAgIHRoaXMuX3F1ZXJ5ID0gdjtcblxuICAgIHRoaXMuX3N1YnNjcmliZVRvUXVlcnkoKTtcbiAgfVxuICBwcml2YXRlIF9xdWVyeSE6IFE7XG5cbiAgQElucHV0KCdxdWVyeUNhY2hlJylcbiAgZ2V0IGNhY2hlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9jYWNoZTtcbiAgfVxuICBzZXQgY2FjaGUodjogYm9vbGVhbikge1xuICAgIHRoaXMuX2NhY2hlID0gdjtcbiAgfVxuICBwcml2YXRlIF9jYWNoZSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX21haW5UZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8UXVlcnlDb250ZXh0PFF1ZXJ5T2Y8UT4+PixcbiAgICBwcml2YXRlIF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgX2Vycm9ySGFuZGxlcjogRXJyb3JIYW5kbGVyLFxuICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBzdGF0aWMgbmdUZW1wbGF0ZUNvbnRleHRHdWFyZDxRIGV4dGVuZHMgQW55UXVlcnkgfCBBbnlRdWVyeU9mQ3JlYXRvckNvbGxlY3Rpb248QW55UXVlcnlDcmVhdG9yQ29sbGVjdGlvbj4gfCBudWxsPihcbiAgICBkaXI6IFF1ZXJ5RGlyZWN0aXZlPFE+LFxuICAgIGN0eDogdW5rbm93bixcbiAgKTogY3R4IGlzIFF1ZXJ5Q29udGV4dDxRdWVyeU9mPFE+PiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9yZW5kZXJNYWluVmlldygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc3Vic2NyaWJlVG9RdWVyeSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gbnVsbDtcblxuICAgIGlmICghdGhpcy5xdWVyeSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHF1ZXJ5ID0gaXNRdWVyeSh0aGlzLnF1ZXJ5KSA/IHRoaXMucXVlcnkgOiB0aGlzLnF1ZXJ5LnF1ZXJ5O1xuXG4gICAgY29uc3Qgc3ViID0gcXVlcnkuc3RhdGUkLnBpcGUodGFwKChzdGF0ZSkgPT4gdGhpcy5fdXBkYXRlVmlldyhzdGF0ZSkpKS5zdWJzY3JpYmUoKTtcblxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHN1YjtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVZpZXcoc3RhdGU6IFF1ZXJ5U3RhdGUpIHtcbiAgICBpZiAoaXNRdWVyeVN0YXRlTG9hZGluZyhzdGF0ZSkpIHtcbiAgICAgIHRoaXMuX3ZpZXdDb250ZXh0LmxvYWRpbmcgPSB0cnVlO1xuICAgICAgdGhpcy5fdmlld0NvbnRleHQucHJvZ3Jlc3MgPSBzdGF0ZS5wcm9ncmVzcyA/PyBudWxsO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl92aWV3Q29udGV4dC5sb2FkaW5nID0gZmFsc2U7XG4gICAgICB0aGlzLl92aWV3Q29udGV4dC5wcm9ncmVzcyA9IG51bGw7XG4gICAgfVxuXG4gICAgaWYgKGlzUXVlcnlTdGF0ZVN1Y2Nlc3Moc3RhdGUpKSB7XG4gICAgICB0aGlzLl92aWV3Q29udGV4dC5xdWVyeSA9IHN0YXRlLnJlc3BvbnNlIGFzIFF1ZXJ5UmVzcG9uc2VUeXBlPFF1ZXJ5T2Y8UT4+O1xuICAgICAgdGhpcy5fdmlld0NvbnRleHQuJGltcGxpY2l0ID0gc3RhdGUucmVzcG9uc2UgYXMgUXVlcnlSZXNwb25zZVR5cGU8UXVlcnlPZjxRPj47XG4gICAgICB0aGlzLl92aWV3Q29udGV4dC5yYXcgPSBzdGF0ZS5yYXdSZXNwb25zZSBhcyBRdWVyeVJhd1Jlc3BvbnNlVHlwZTxRdWVyeU9mPFE+PjtcbiAgICB9IGVsc2UgaWYgKCF0aGlzLmNhY2hlKSB7XG4gICAgICB0aGlzLl92aWV3Q29udGV4dC5xdWVyeSA9IG51bGwgYXMgUXVlcnlSZXNwb25zZVR5cGU8UXVlcnlPZjxRPj47XG4gICAgICB0aGlzLl92aWV3Q29udGV4dC4kaW1wbGljaXQgPSBudWxsIGFzIFF1ZXJ5UmVzcG9uc2VUeXBlPFF1ZXJ5T2Y8UT4+O1xuICAgICAgdGhpcy5fdmlld0NvbnRleHQucmF3ID0gbnVsbCBhcyBRdWVyeVJhd1Jlc3BvbnNlVHlwZTxRdWVyeU9mPFE+PjtcbiAgICB9XG5cbiAgICBpZiAoaXNRdWVyeVN0YXRlRmFpbHVyZShzdGF0ZSkpIHtcbiAgICAgIHRoaXMuX3ZpZXdDb250ZXh0LmVycm9yID0gc3RhdGUuZXJyb3I7XG5cbiAgICAgIHRoaXMuX2Vycm9ySGFuZGxlci5oYW5kbGVFcnJvcihzdGF0ZS5lcnJvcik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3ZpZXdDb250ZXh0LmVycm9yID0gbnVsbDtcbiAgICB9XG5cbiAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJNYWluVmlldygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2lzTWFpblZpZXdDcmVhdGVkKSB7XG4gICAgICB0aGlzLl9pc01haW5WaWV3Q3JlYXRlZCA9IHRydWU7XG4gICAgICB0aGlzLl92aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLl9tYWluVGVtcGxhdGVSZWYsIHRoaXMuX3ZpZXdDb250ZXh0KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==