@trpc/client 10.0.0-alpha.13 → 10.0.0-alpha.16

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 (61) hide show
  1. package/dist/index.js +972 -35
  2. package/dist/index.mjs +953 -21
  3. package/dist/links/wsLink.d.ts.map +1 -1
  4. package/dist/observable/index.js +3 -5
  5. package/dist/observable/index.mjs +1 -3
  6. package/dist/observable/{util → internals}/identity.d.ts +0 -0
  7. package/dist/observable/internals/identity.d.ts.map +1 -0
  8. package/dist/observable/{util → internals}/observableToPromise.d.ts +0 -0
  9. package/dist/observable/internals/observableToPromise.d.ts.map +1 -0
  10. package/dist/observable/{util → internals}/pipe.d.ts +0 -0
  11. package/dist/observable/internals/pipe.d.ts.map +1 -0
  12. package/dist/{share-9f12d26c.mjs → tap-4bc60fb0.mjs} +131 -1
  13. package/dist/{share-4afc084f.js → tap-fcd41ae6.js} +132 -0
  14. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.d.ts +11 -0
  15. package/links/httpBatchLink/dist/trpc-client-links-httpBatchLink.cjs.js +16 -0
  16. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.d.ts +11 -0
  17. package/links/httpLink/dist/trpc-client-links-httpLink.cjs.js +16 -0
  18. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.d.ts +11 -0
  19. package/links/loggerLink/dist/trpc-client-links-loggerLink.cjs.js +16 -0
  20. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.d.ts +11 -0
  21. package/links/splitLink/dist/trpc-client-links-splitLink.cjs.js +16 -0
  22. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.d.ts +11 -0
  23. package/links/wsLink/dist/trpc-client-links-wsLink.cjs.js +16 -0
  24. package/package.json +43 -8
  25. package/src/internals/TRPCClient.ts +1 -1
  26. package/src/links/wsLink.ts +1 -2
  27. package/src/observable/{util → internals}/identity.ts +0 -0
  28. package/src/observable/{util → internals}/observableToPromise.ts +0 -0
  29. package/src/observable/{util → internals}/pipe.ts +0 -0
  30. package/src/observable/observable.ts +1 -1
  31. package/dist/httpUtils-27640b42.js +0 -97
  32. package/dist/httpUtils-b92552af.mjs +0 -91
  33. package/dist/links/httpBatchLink.js +0 -195
  34. package/dist/links/httpBatchLink.mjs +0 -191
  35. package/dist/links/httpBatchLink.ts.js +0 -1
  36. package/dist/links/httpLink.js +0 -44
  37. package/dist/links/httpLink.mjs +0 -40
  38. package/dist/links/httpLink.ts.js +0 -1
  39. package/dist/links/loggerLink.js +0 -108
  40. package/dist/links/loggerLink.mjs +0 -99
  41. package/dist/links/loggerLink.ts.js +0 -1
  42. package/dist/links/splitLink.js +0 -10
  43. package/dist/links/splitLink.mjs +0 -2
  44. package/dist/links/splitLink.ts.js +0 -1
  45. package/dist/links/transformerLink.js +0 -79
  46. package/dist/links/transformerLink.mjs +0 -71
  47. package/dist/links/transformerLink.ts.js +0 -1
  48. package/dist/links/wsLink.js +0 -19
  49. package/dist/links/wsLink.mjs +0 -10
  50. package/dist/links/wsLink.ts.js +0 -1
  51. package/dist/observable/util/identity.d.ts.map +0 -1
  52. package/dist/observable/util/observableToPromise.d.ts.map +0 -1
  53. package/dist/observable/util/pipe.d.ts.map +0 -1
  54. package/dist/observable-16fde241.mjs +0 -102
  55. package/dist/observable-9aaca086.js +0 -104
  56. package/dist/splitLink-8635d455.js +0 -52
  57. package/dist/splitLink-a736378a.mjs +0 -49
  58. package/dist/tap-aacf31bf.js +0 -32
  59. package/dist/tap-f567ea97.mjs +0 -30
  60. package/dist/wsLink-a6a0f3a8.mjs +0 -440
  61. package/dist/wsLink-c9323097.js +0 -455
@@ -1,108 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
7
- var observable = require('../observable-9aaca086.js');
8
- var tap = require('../tap-aacf31bf.js');
9
-
10
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
-
12
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
13
- var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
14
-
15
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
16
-
17
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
18
- var palette = {
19
- query: ['72e3ff', '3fb0d8'],
20
- mutation: ['c5a3fc', '904dfc'],
21
- subscription: ['ff49e1', 'd83fbe']
22
- };
23
-
24
- // maybe this should be moved to it's own package
25
- var defaultLogger = function defaultLogger() {
26
- var c = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : console;
27
- return function (props) {
28
- var direction = props.direction,
29
- input = props.input,
30
- type = props.type,
31
- path = props.path,
32
- context = props.context,
33
- id = props.id;
34
-
35
- var _palette$type = _slicedToArray__default["default"](palette[type], 2),
36
- light = _palette$type[0],
37
- dark = _palette$type[1];
38
-
39
- var css = "\n background-color: #".concat(direction === 'up' ? light : dark, "; \n color: ").concat(direction === 'up' ? 'black' : 'white', ";\n padding: 2px;\n ");
40
- var parts = ['%c', direction === 'up' ? '>>' : '<<', type, "#".concat(id), "%c".concat(path, "%c"), '%O'];
41
- var args = [css, "".concat(css, "; font-weight: bold;"), "".concat(css, "; font-weight: normal;")];
42
-
43
- if (props.direction === 'up') {
44
- args.push({
45
- input: input,
46
- context: context
47
- });
48
- } else {
49
- args.push({
50
- input: input,
51
- result: props.result,
52
- elapsedMs: props.elapsedMs,
53
- context: context
54
- });
55
- }
56
-
57
- var fn = props.direction === 'down' && props.result && (props.result instanceof Error || 'error' in props.result.data) ? 'error' : 'log';
58
- c[fn].apply(null, [parts.join(' ')].concat(args));
59
- };
60
- };
61
-
62
- function loggerLink() {
63
- var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
64
- var _opts$enabled = opts.enabled,
65
- enabled = _opts$enabled === void 0 ? function () {
66
- return true;
67
- } : _opts$enabled;
68
- var _opts$logger = opts.logger,
69
- logger = _opts$logger === void 0 ? defaultLogger(opts.console) : _opts$logger;
70
- return function () {
71
- return function (_ref) {
72
- var op = _ref.op,
73
- next = _ref.next;
74
- return observable.observable(function (observer) {
75
- // ->
76
- enabled(_objectSpread(_objectSpread({}, op), {}, {
77
- direction: 'up'
78
- })) && logger(_objectSpread(_objectSpread({}, op), {}, {
79
- direction: 'up'
80
- }));
81
- var requestStartTime = Date.now();
82
-
83
- function logResult(result) {
84
- var elapsedMs = Date.now() - requestStartTime;
85
- enabled(_objectSpread(_objectSpread({}, op), {}, {
86
- direction: 'down',
87
- result: result
88
- })) && logger(_objectSpread(_objectSpread({}, op), {}, {
89
- direction: 'down',
90
- elapsedMs: elapsedMs,
91
- result: result
92
- }));
93
- }
94
-
95
- return next(op).pipe(tap.tap({
96
- next: function next(result) {
97
- logResult(result);
98
- },
99
- error: function error(result) {
100
- logResult(result);
101
- }
102
- })).subscribe(observer);
103
- });
104
- };
105
- };
106
- }
107
-
108
- exports.loggerLink = loggerLink;
@@ -1,99 +0,0 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
- import { o as observable } from '../observable-16fde241.mjs';
4
- import { t as tap } from '../tap-f567ea97.mjs';
5
-
6
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
-
8
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9
- var palette = {
10
- query: ['72e3ff', '3fb0d8'],
11
- mutation: ['c5a3fc', '904dfc'],
12
- subscription: ['ff49e1', 'd83fbe']
13
- };
14
-
15
- // maybe this should be moved to it's own package
16
- var defaultLogger = function defaultLogger() {
17
- var c = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : console;
18
- return function (props) {
19
- var direction = props.direction,
20
- input = props.input,
21
- type = props.type,
22
- path = props.path,
23
- context = props.context,
24
- id = props.id;
25
-
26
- var _palette$type = _slicedToArray(palette[type], 2),
27
- light = _palette$type[0],
28
- dark = _palette$type[1];
29
-
30
- var css = "\n background-color: #".concat(direction === 'up' ? light : dark, "; \n color: ").concat(direction === 'up' ? 'black' : 'white', ";\n padding: 2px;\n ");
31
- var parts = ['%c', direction === 'up' ? '>>' : '<<', type, "#".concat(id), "%c".concat(path, "%c"), '%O'];
32
- var args = [css, "".concat(css, "; font-weight: bold;"), "".concat(css, "; font-weight: normal;")];
33
-
34
- if (props.direction === 'up') {
35
- args.push({
36
- input: input,
37
- context: context
38
- });
39
- } else {
40
- args.push({
41
- input: input,
42
- result: props.result,
43
- elapsedMs: props.elapsedMs,
44
- context: context
45
- });
46
- }
47
-
48
- var fn = props.direction === 'down' && props.result && (props.result instanceof Error || 'error' in props.result.data) ? 'error' : 'log';
49
- c[fn].apply(null, [parts.join(' ')].concat(args));
50
- };
51
- };
52
-
53
- function loggerLink() {
54
- var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
55
- var _opts$enabled = opts.enabled,
56
- enabled = _opts$enabled === void 0 ? function () {
57
- return true;
58
- } : _opts$enabled;
59
- var _opts$logger = opts.logger,
60
- logger = _opts$logger === void 0 ? defaultLogger(opts.console) : _opts$logger;
61
- return function () {
62
- return function (_ref) {
63
- var op = _ref.op,
64
- next = _ref.next;
65
- return observable(function (observer) {
66
- // ->
67
- enabled(_objectSpread(_objectSpread({}, op), {}, {
68
- direction: 'up'
69
- })) && logger(_objectSpread(_objectSpread({}, op), {}, {
70
- direction: 'up'
71
- }));
72
- var requestStartTime = Date.now();
73
-
74
- function logResult(result) {
75
- var elapsedMs = Date.now() - requestStartTime;
76
- enabled(_objectSpread(_objectSpread({}, op), {}, {
77
- direction: 'down',
78
- result: result
79
- })) && logger(_objectSpread(_objectSpread({}, op), {}, {
80
- direction: 'down',
81
- elapsedMs: elapsedMs,
82
- result: result
83
- }));
84
- }
85
-
86
- return next(op).pipe(tap({
87
- next: function next(result) {
88
- logResult(result);
89
- },
90
- error: function error(result) {
91
- logResult(result);
92
- }
93
- })).subscribe(observer);
94
- });
95
- };
96
- };
97
- }
98
-
99
- export { loggerLink };
@@ -1 +0,0 @@
1
-
@@ -1,10 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- require('../observable-9aaca086.js');
6
- var links_splitLink = require('../splitLink-8635d455.js');
7
-
8
-
9
-
10
- exports.splitLink = links_splitLink.splitLink;
@@ -1,2 +0,0 @@
1
- import '../observable-16fde241.mjs';
2
- export { s as splitLink } from '../splitLink-a736378a.mjs';
@@ -1 +0,0 @@
1
-
@@ -1,79 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- var observable = require('../observable-9aaca086.js');
7
-
8
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
-
10
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
11
-
12
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
13
-
14
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
-
16
- /**
17
- * @internal
18
- */
19
- function transformOperationResult(result, transformer) {
20
- if ('error' in result.data) {
21
- return _objectSpread(_objectSpread({}, result), {}, {
22
- data: _objectSpread(_objectSpread({}, result.data), {}, {
23
- error: transformer.deserialize(result.data.error)
24
- })
25
- });
26
- }
27
-
28
- if (result.data.result.type !== 'data') {
29
- return result;
30
- }
31
-
32
- return _objectSpread(_objectSpread({}, result), {}, {
33
- data: _objectSpread(_objectSpread({}, result.data), {}, {
34
- result: _objectSpread(_objectSpread({}, result.data.result), {}, {
35
- data: transformer.deserialize(result.data.result.data)
36
- })
37
- })
38
- });
39
- }
40
-
41
- function transformerLink(transformer) {
42
- var _transformer = transformer ? 'input' in transformer ? {
43
- serialize: transformer.input.serialize,
44
- deserialize: transformer.output.deserialize
45
- } : transformer : {
46
- serialize: function serialize(data) {
47
- return data;
48
- },
49
- deserialize: function deserialize(data) {
50
- return data;
51
- }
52
- };
53
-
54
- return function () {
55
- return function (props) {
56
- var input = _transformer.serialize(props.op.input);
57
-
58
- return observable.observable(function (observer) {
59
- var subscription = props.next(_objectSpread(_objectSpread({}, props.op), {}, {
60
- input: input
61
- })).subscribe({
62
- next: function next(value) {
63
- var transformed = transformOperationResult(value, _transformer);
64
- observer.next(transformed);
65
- },
66
- error: function error(err) {
67
- observer.error(err);
68
- },
69
- complete: function complete() {
70
- observer.complete();
71
- }
72
- });
73
- return subscription;
74
- });
75
- };
76
- };
77
- }
78
-
79
- exports.transformerLink = transformerLink;
@@ -1,71 +0,0 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import { o as observable } from '../observable-16fde241.mjs';
3
-
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
-
6
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
-
8
- /**
9
- * @internal
10
- */
11
- function transformOperationResult(result, transformer) {
12
- if ('error' in result.data) {
13
- return _objectSpread(_objectSpread({}, result), {}, {
14
- data: _objectSpread(_objectSpread({}, result.data), {}, {
15
- error: transformer.deserialize(result.data.error)
16
- })
17
- });
18
- }
19
-
20
- if (result.data.result.type !== 'data') {
21
- return result;
22
- }
23
-
24
- return _objectSpread(_objectSpread({}, result), {}, {
25
- data: _objectSpread(_objectSpread({}, result.data), {}, {
26
- result: _objectSpread(_objectSpread({}, result.data.result), {}, {
27
- data: transformer.deserialize(result.data.result.data)
28
- })
29
- })
30
- });
31
- }
32
-
33
- function transformerLink(transformer) {
34
- var _transformer = transformer ? 'input' in transformer ? {
35
- serialize: transformer.input.serialize,
36
- deserialize: transformer.output.deserialize
37
- } : transformer : {
38
- serialize: function serialize(data) {
39
- return data;
40
- },
41
- deserialize: function deserialize(data) {
42
- return data;
43
- }
44
- };
45
-
46
- return function () {
47
- return function (props) {
48
- var input = _transformer.serialize(props.op.input);
49
-
50
- return observable(function (observer) {
51
- var subscription = props.next(_objectSpread(_objectSpread({}, props.op), {}, {
52
- input: input
53
- })).subscribe({
54
- next: function next(value) {
55
- var transformed = transformOperationResult(value, _transformer);
56
- observer.next(transformed);
57
- },
58
- error: function error(err) {
59
- observer.error(err);
60
- },
61
- complete: function complete() {
62
- observer.complete();
63
- }
64
- });
65
- return subscription;
66
- });
67
- };
68
- };
69
- }
70
-
71
- export { transformerLink };
@@ -1 +0,0 @@
1
-
@@ -1,19 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- require('@babel/runtime/helpers/createClass');
6
- require('@babel/runtime/helpers/classCallCheck');
7
- require('@babel/runtime/helpers/assertThisInitialized');
8
- require('@babel/runtime/helpers/inherits');
9
- require('@babel/runtime/helpers/possibleConstructorReturn');
10
- require('@babel/runtime/helpers/getPrototypeOf');
11
- require('@babel/runtime/helpers/wrapNativeSuper');
12
- var links_wsLink = require('../wsLink-c9323097.js');
13
- require('../observable-9aaca086.js');
14
- require('@babel/runtime/helpers/defineProperty');
15
-
16
-
17
-
18
- exports.createWSClient = links_wsLink.createWSClient;
19
- exports.wsLink = links_wsLink.wsLink;
@@ -1,10 +0,0 @@
1
- import '@babel/runtime/helpers/createClass';
2
- import '@babel/runtime/helpers/classCallCheck';
3
- import '@babel/runtime/helpers/assertThisInitialized';
4
- import '@babel/runtime/helpers/inherits';
5
- import '@babel/runtime/helpers/possibleConstructorReturn';
6
- import '@babel/runtime/helpers/getPrototypeOf';
7
- import '@babel/runtime/helpers/wrapNativeSuper';
8
- export { c as createWSClient, w as wsLink } from '../wsLink-a6a0f3a8.mjs';
9
- import '../observable-16fde241.mjs';
10
- import '@babel/runtime/helpers/defineProperty';
@@ -1 +0,0 @@
1
-
@@ -1 +0,0 @@
1
- {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../../src/observable/util/identity.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAEnC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"observableToPromise.d.ts","sourceRoot":"","sources":["../../../src/observable/util/observableToPromise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAK5B;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,CAAC,MAAM,EACxC,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC;;iBAEtB,IAAI;EAkCtB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pipe.d.ts","sourceRoot":"","sources":["../../../src/observable/util/pipe.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,gBAAgB;AAChB,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAChC,GAAG,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAC9B,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAerB"}
@@ -1,102 +0,0 @@
1
- function identity(x) {
2
- return x;
3
- }
4
-
5
- /** @internal */
6
- function pipeFromArray(fns) {
7
- if (fns.length === 0) {
8
- return identity;
9
- }
10
-
11
- if (fns.length === 1) {
12
- return fns[0];
13
- }
14
-
15
- return function piped(input) {
16
- return fns.reduce(function (prev, fn) {
17
- return fn(prev);
18
- }, input);
19
- };
20
- }
21
-
22
- function observable(_subscribe) {
23
- var self = {
24
- subscribe: function subscribe(observer) {
25
- var teardownRef = null;
26
- var isDone = false;
27
- var unsubscribed = false;
28
- var teardownImmediately = false;
29
-
30
- function unsubscribe() {
31
- if (teardownRef === null) {
32
- teardownImmediately = true;
33
- return;
34
- }
35
-
36
- if (unsubscribed) {
37
- return;
38
- }
39
-
40
- unsubscribed = true;
41
-
42
- if (typeof teardownRef === 'function') {
43
- teardownRef();
44
- } else if (teardownRef) {
45
- teardownRef.unsubscribe();
46
- }
47
- }
48
-
49
- teardownRef = _subscribe({
50
- next: function next(value) {
51
- var _observer$next;
52
-
53
- if (isDone) {
54
- return;
55
- }
56
-
57
- (_observer$next = observer.next) === null || _observer$next === void 0 ? void 0 : _observer$next.call(observer, value);
58
- },
59
- error: function error(err) {
60
- var _observer$error;
61
-
62
- if (isDone) {
63
- return;
64
- }
65
-
66
- isDone = true;
67
- (_observer$error = observer.error) === null || _observer$error === void 0 ? void 0 : _observer$error.call(observer, err);
68
- unsubscribe();
69
- },
70
- complete: function complete() {
71
- var _observer$complete;
72
-
73
- if (isDone) {
74
- return;
75
- }
76
-
77
- isDone = true;
78
- (_observer$complete = observer.complete) === null || _observer$complete === void 0 ? void 0 : _observer$complete.call(observer);
79
- unsubscribe();
80
- }
81
- });
82
-
83
- if (teardownImmediately) {
84
- unsubscribe();
85
- }
86
-
87
- return {
88
- unsubscribe: unsubscribe
89
- };
90
- },
91
- pipe: function pipe() {
92
- for (var _len = arguments.length, operations = new Array(_len), _key = 0; _key < _len; _key++) {
93
- operations[_key] = arguments[_key];
94
- }
95
-
96
- return pipeFromArray(operations)(self);
97
- }
98
- };
99
- return self;
100
- }
101
-
102
- export { observable as o };
@@ -1,104 +0,0 @@
1
- 'use strict';
2
-
3
- function identity(x) {
4
- return x;
5
- }
6
-
7
- /** @internal */
8
- function pipeFromArray(fns) {
9
- if (fns.length === 0) {
10
- return identity;
11
- }
12
-
13
- if (fns.length === 1) {
14
- return fns[0];
15
- }
16
-
17
- return function piped(input) {
18
- return fns.reduce(function (prev, fn) {
19
- return fn(prev);
20
- }, input);
21
- };
22
- }
23
-
24
- function observable(_subscribe) {
25
- var self = {
26
- subscribe: function subscribe(observer) {
27
- var teardownRef = null;
28
- var isDone = false;
29
- var unsubscribed = false;
30
- var teardownImmediately = false;
31
-
32
- function unsubscribe() {
33
- if (teardownRef === null) {
34
- teardownImmediately = true;
35
- return;
36
- }
37
-
38
- if (unsubscribed) {
39
- return;
40
- }
41
-
42
- unsubscribed = true;
43
-
44
- if (typeof teardownRef === 'function') {
45
- teardownRef();
46
- } else if (teardownRef) {
47
- teardownRef.unsubscribe();
48
- }
49
- }
50
-
51
- teardownRef = _subscribe({
52
- next: function next(value) {
53
- var _observer$next;
54
-
55
- if (isDone) {
56
- return;
57
- }
58
-
59
- (_observer$next = observer.next) === null || _observer$next === void 0 ? void 0 : _observer$next.call(observer, value);
60
- },
61
- error: function error(err) {
62
- var _observer$error;
63
-
64
- if (isDone) {
65
- return;
66
- }
67
-
68
- isDone = true;
69
- (_observer$error = observer.error) === null || _observer$error === void 0 ? void 0 : _observer$error.call(observer, err);
70
- unsubscribe();
71
- },
72
- complete: function complete() {
73
- var _observer$complete;
74
-
75
- if (isDone) {
76
- return;
77
- }
78
-
79
- isDone = true;
80
- (_observer$complete = observer.complete) === null || _observer$complete === void 0 ? void 0 : _observer$complete.call(observer);
81
- unsubscribe();
82
- }
83
- });
84
-
85
- if (teardownImmediately) {
86
- unsubscribe();
87
- }
88
-
89
- return {
90
- unsubscribe: unsubscribe
91
- };
92
- },
93
- pipe: function pipe() {
94
- for (var _len = arguments.length, operations = new Array(_len), _key = 0; _key < _len; _key++) {
95
- operations[_key] = arguments[_key];
96
- }
97
-
98
- return pipeFromArray(operations)(self);
99
- }
100
- };
101
- return self;
102
- }
103
-
104
- exports.observable = observable;