04652e0d88b98d91c2d45400e9732e083ff5f6031a5278b321b0b9e2a95dcd9df56708c04444e36de50754ce0e42efc33d7e08f445e7fee9138363c8e56aee 798 B

123456789101112131415161718192021222324252627
  1. import { EmptyError } from './util/EmptyError';
  2. export function lastValueFrom(source, config) {
  3. const hasConfig = typeof config === 'object';
  4. return new Promise((resolve, reject) => {
  5. let _hasValue = false;
  6. let _value;
  7. source.subscribe({
  8. next: (value) => {
  9. _value = value;
  10. _hasValue = true;
  11. },
  12. error: reject,
  13. complete: () => {
  14. if (_hasValue) {
  15. resolve(_value);
  16. }
  17. else if (hasConfig) {
  18. resolve(config.defaultValue);
  19. }
  20. else {
  21. reject(new EmptyError());
  22. }
  23. },
  24. });
  25. });
  26. }
  27. //# sourceMappingURL=lastValueFrom.js.map