react-rx 1.0.0-beta.6 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,8 +8,6 @@
8
8
  <change beforePath="$PROJECT_DIR$/../react-rx.dev/package-lock.json" beforeDir="false" afterPath="$PROJECT_DIR$/../react-rx.dev/package-lock.json" afterDir="false" />
9
9
  <change beforePath="$PROJECT_DIR$/../react-rx.dev/package.json" beforeDir="false" afterPath="$PROJECT_DIR$/../react-rx.dev/package.json" afterDir="false" />
10
10
  <change beforePath="$PROJECT_DIR$/../react-rx.dev/src/pages/Index/ReactRxReadme.md" beforeDir="false" afterPath="$PROJECT_DIR$/../react-rx.dev/src/pages/Index/ReactRxReadme.md" afterDir="false" />
11
- <change beforePath="$PROJECT_DIR$/src/index.ts" beforeDir="false" afterPath="$PROJECT_DIR$/src/index.ts" afterDir="false" />
12
- <change beforePath="$PROJECT_DIR$/src/useObservable.ts" beforeDir="false" afterPath="$PROJECT_DIR$/src/useObservable.ts" afterDir="false" />
13
11
  </list>
14
12
  <option name="SHOW_DIALOG" value="false" />
15
13
  <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -85,7 +83,7 @@
85
83
  <recent name="$PROJECT_DIR$/../react-rx.dev/webpack-configs" />
86
84
  </key>
87
85
  </component>
88
- <component name="RunManager" selected="Jest.useObservable.test.tsx">
86
+ <component name="RunManager" selected="Jest.it calls the setup function once, at mount">
89
87
  <configuration name="All Tests" type="JavaScriptTestRunnerJest" nameIsGenerated="true">
90
88
  <node-interpreter value="project" />
91
89
  <node-options value="" />
@@ -105,20 +103,20 @@
105
103
  <test-file value="$PROJECT_DIR$/src/__tests__/asObservable.test.tsx" />
106
104
  <method v="2" />
107
105
  </configuration>
108
- <configuration name="the returned observable should *not* receive a new value when component is rendered with an unchanged value" type="JavaScriptTestRunnerJest" temporary="true" nameIsGenerated="true">
106
+ <configuration name="it calls the setup function once, at mount" type="JavaScriptTestRunnerJest" temporary="true" nameIsGenerated="true">
109
107
  <node-interpreter value="project" />
110
108
  <node-options value="" />
111
109
  <jest-package value="$PROJECT_DIR$/node_modules/jest" />
112
110
  <working-dir value="$PROJECT_DIR$" />
113
111
  <envs />
114
112
  <scope-kind value="TEST" />
115
- <test-file value="$PROJECT_DIR$/src/__tests__/asObservable.test.tsx" />
113
+ <test-file value="$PROJECT_DIR$/src/__tests__/reactiveComponent.test.tsx" />
116
114
  <test-names>
117
- <test-name value="the returned observable should *not* receive a new value when component is rendered with an unchanged value" />
115
+ <test-name value="it calls the setup function once, at mount" />
118
116
  </test-names>
119
117
  <method v="2" />
120
118
  </configuration>
121
- <configuration name="the returned observable should receive a new value when component is rendered with a new value" type="JavaScriptTestRunnerJest" temporary="true" nameIsGenerated="true">
119
+ <configuration name="the returned observable should *not* receive a new value when component is rendered with an unchanged value" type="JavaScriptTestRunnerJest" temporary="true" nameIsGenerated="true">
122
120
  <node-interpreter value="project" />
123
121
  <node-options value="" />
124
122
  <jest-package value="$PROJECT_DIR$/node_modules/jest" />
@@ -127,11 +125,11 @@
127
125
  <scope-kind value="TEST" />
128
126
  <test-file value="$PROJECT_DIR$/src/__tests__/asObservable.test.tsx" />
129
127
  <test-names>
130
- <test-name value="the returned observable should receive a new value when component is rendered with a new value" />
128
+ <test-name value="the returned observable should *not* receive a new value when component is rendered with an unchanged value" />
131
129
  </test-names>
132
130
  <method v="2" />
133
131
  </configuration>
134
- <configuration name="the returned observable should receive a new value when component is rendered with an unchanged value" type="JavaScriptTestRunnerJest" temporary="true" nameIsGenerated="true">
132
+ <configuration name="the returned observable should receive a new value when component is rendered with a new value" type="JavaScriptTestRunnerJest" temporary="true" nameIsGenerated="true">
135
133
  <node-interpreter value="project" />
136
134
  <node-options value="" />
137
135
  <jest-package value="$PROJECT_DIR$/node_modules/jest" />
@@ -140,7 +138,7 @@
140
138
  <scope-kind value="TEST" />
141
139
  <test-file value="$PROJECT_DIR$/src/__tests__/asObservable.test.tsx" />
142
140
  <test-names>
143
- <test-name value="the returned observable should receive a new value when component is rendered with an unchanged value" />
141
+ <test-name value="the returned observable should receive a new value when component is rendered with a new value" />
144
142
  </test-names>
145
143
  <method v="2" />
146
144
  </configuration>
@@ -166,20 +164,20 @@
166
164
  </configuration>
167
165
  <list>
168
166
  <item itemvalue="Jest.All Tests" />
167
+ <item itemvalue="Jest.useObservable.test.tsx" />
169
168
  <item itemvalue="Jest.asObservable.test.tsx" />
169
+ <item itemvalue="Jest.it calls the setup function once, at mount" />
170
170
  <item itemvalue="Jest.the returned observable should *not* receive a new value when component is rendered with an unchanged value" />
171
171
  <item itemvalue="Jest.the returned observable should receive a new value when component is rendered with a new value" />
172
- <item itemvalue="Jest.the returned observable should receive a new value when component is rendered with an unchanged value" />
173
172
  <item itemvalue="Jest.useAsObservable.test.tsx" />
174
- <item itemvalue="Jest.useObservable.test.tsx" />
175
173
  </list>
176
174
  <recent_temporary>
177
175
  <list>
176
+ <item itemvalue="Jest.it calls the setup function once, at mount" />
178
177
  <item itemvalue="Jest.useAsObservable.test.tsx" />
179
178
  <item itemvalue="Jest.asObservable.test.tsx" />
180
179
  <item itemvalue="Jest.the returned observable should receive a new value when component is rendered with a new value" />
181
180
  <item itemvalue="Jest.the returned observable should *not* receive a new value when component is rendered with an unchanged value" />
182
- <item itemvalue="Jest.the returned observable should receive a new value when component is rendered with an unchanged value" />
183
181
  </list>
184
182
  </recent_temporary>
185
183
  </component>
@@ -222,7 +220,7 @@
222
220
  </ignored-roots>
223
221
  </component>
224
222
  <component name="com.intellij.coverage.CoverageDataManagerImpl">
225
- <SUITE FILE_PATH="coverage/react_rx$All_Tests.info" NAME="All Tests Coverage Results" MODIFIED="1585859619310" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="JestJavaScriptTestRunnerCoverage" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false" />
226
223
  <SUITE FILE_PATH="coverage/react_rx$toObservable_test_tsx.info" NAME="toObservable.test.tsx Coverage Results" MODIFIED="1585859575939" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="JestJavaScriptTestRunnerCoverage" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false" />
224
+ <SUITE FILE_PATH="coverage/react_rx$All_Tests.info" NAME="All Tests Coverage Results" MODIFIED="1585859619310" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="JestJavaScriptTestRunnerCoverage" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false" />
227
225
  </component>
228
226
  </project>
@@ -4,9 +4,9 @@ exports.WithObservable = void 0;
4
4
  var operators_1 = require("rxjs/operators");
5
5
  var reactiveComponent_1 = require("./reactiveComponent");
6
6
  function createWithObservable() {
7
- return reactiveComponent_1.reactiveComponent(function (props$) {
8
- return props$.pipe(operators_1.distinctUntilChanged(function (props, prevProps) { return props.observable === prevProps.observable; }), operators_1.switchMap(function (props) {
9
- return props.observable.pipe(operators_1.map(function (observableValue) { return props.children(observableValue); }));
7
+ return (0, reactiveComponent_1.reactiveComponent)(function (props$) {
8
+ return props$.pipe((0, operators_1.distinctUntilChanged)(function (props, prevProps) { return props.observable === prevProps.observable; }), (0, operators_1.switchMap)(function (props) {
9
+ return props.observable.pipe((0, operators_1.map)(function (observableValue) { return props.children(observableValue); }));
10
10
  }));
11
11
  });
12
12
  }
@@ -7,14 +7,14 @@ var useObservable_1 = require("./useObservable");
7
7
  var react_1 = require("react");
8
8
  function fromComponent(component) {
9
9
  var wrappedComponent = function (props) {
10
- return react_1.createElement(react_1.Fragment, null, useObservable_1.useObservable(react_1.useRef(component(useAsObservable_1.useAsObservable(props))).current));
10
+ return (0, react_1.createElement)(react_1.Fragment, null, (0, useObservable_1.useObservable)((0, react_1.useRef)(component((0, useAsObservable_1.useAsObservable)(props))).current));
11
11
  };
12
- wrappedComponent.displayName = displayName_1.wrapDisplayName(component, 'reactiveComponent');
12
+ wrappedComponent.displayName = (0, displayName_1.wrapDisplayName)(component, 'reactiveComponent');
13
13
  return wrappedComponent;
14
14
  }
15
15
  function fromObservable(input$) {
16
16
  return function ReactiveComponent() {
17
- return react_1.createElement(react_1.Fragment, null, useObservable_1.useObservable(input$));
17
+ return (0, react_1.createElement)(react_1.Fragment, null, (0, useObservable_1.useObservable)(input$));
18
18
  };
19
19
  }
20
20
  function reactiveComponent(observableOrComponent) {
@@ -24,10 +24,10 @@ function reactiveComponent(observableOrComponent) {
24
24
  }
25
25
  exports.reactiveComponent = reactiveComponent;
26
26
  function forwardRef(component) {
27
- var wrappedComponent = react_1.forwardRef(function (props, ref) {
28
- return react_1.createElement(react_1.Fragment, null, useObservable_1.useObservable(react_1.useRef(component(useAsObservable_1.useAsObservable(props), ref)).current));
27
+ var wrappedComponent = (0, react_1.forwardRef)(function (props, ref) {
28
+ return (0, react_1.createElement)(react_1.Fragment, null, (0, useObservable_1.useObservable)((0, react_1.useRef)(component((0, useAsObservable_1.useAsObservable)(props), ref)).current));
29
29
  });
30
- wrappedComponent.displayName = displayName_1.wrapDisplayName(component, 'reactiveComponent');
30
+ wrappedComponent.displayName = (0, displayName_1.wrapDisplayName)(component, 'reactiveComponent');
31
31
  return wrappedComponent;
32
32
  }
33
33
  exports.forwardRef = forwardRef;
@@ -5,14 +5,14 @@ var rxjs_1 = require("rxjs");
5
5
  var react_1 = require("react");
6
6
  var useIsomorphicEffect_1 = require("./useIsomorphicEffect");
7
7
  function useAsObservable(value, operator) {
8
- var isInitial = react_1.useRef(true);
9
- var subjectRef = react_1.useRef(new rxjs_1.BehaviorSubject(value));
10
- var observableRef = react_1.useRef();
8
+ var isInitial = (0, react_1.useRef)(true);
9
+ var subjectRef = (0, react_1.useRef)(new rxjs_1.BehaviorSubject(value));
10
+ var observableRef = (0, react_1.useRef)();
11
11
  if (!observableRef.current) {
12
12
  var observable = subjectRef.current.asObservable();
13
13
  observableRef.current = operator ? observable.pipe(operator) : observable;
14
14
  }
15
- useIsomorphicEffect_1.useIsomorphicEffect(function () {
15
+ (0, useIsomorphicEffect_1.useIsomorphicEffect)(function () {
16
16
  if (isInitial.current) {
17
17
  isInitial.current = false;
18
18
  }
@@ -21,7 +21,7 @@ function useAsObservable(value, operator) {
21
21
  subjectRef.current.next(value);
22
22
  }
23
23
  }, [value]);
24
- useIsomorphicEffect_1.useIsomorphicEffect(function () {
24
+ (0, useIsomorphicEffect_1.useIsomorphicEffect)(function () {
25
25
  return function () {
26
26
  return subjectRef.current.complete();
27
27
  };
@@ -7,9 +7,9 @@ function getValue(value) {
7
7
  return typeof value === 'function' ? value() : value;
8
8
  }
9
9
  function useObservable(observable, initialValue) {
10
- var subscription = react_1.useRef();
11
- var isInitial = react_1.useRef(true);
12
- var _a = react_1.useState(function () {
10
+ var subscription = (0, react_1.useRef)();
11
+ var isInitial = (0, react_1.useRef)(true);
12
+ var _a = (0, react_1.useState)(function () {
13
13
  var isSync = true;
14
14
  var syncVal = getValue(initialValue);
15
15
  subscription.current = observable.subscribe(function (nextVal) {
@@ -23,7 +23,7 @@ function useObservable(observable, initialValue) {
23
23
  isSync = false;
24
24
  return syncVal;
25
25
  }), value = _a[0], setState = _a[1];
26
- useIsomorphicEffect_1.useIsomorphicEffect(function () {
26
+ (0, useIsomorphicEffect_1.useIsomorphicEffect)(function () {
27
27
  // when the observable changes after initial (possibly sync render)
28
28
  if (!isInitial.current) {
29
29
  subscription.current = observable.subscribe(function (nextVal) { return setState(nextVal); });
@@ -40,6 +40,6 @@ function useObservable(observable, initialValue) {
40
40
  }
41
41
  exports.useObservable = useObservable;
42
42
  function useMemoObservable(observableOrFactory, deps, initialValue) {
43
- return useObservable(react_1.useMemo(function () { return getValue(observableOrFactory); }, deps), initialValue);
43
+ return useObservable((0, react_1.useMemo)(function () { return getValue(observableOrFactory); }, deps), initialValue);
44
44
  }
45
45
  exports.useMemoObservable = useMemoObservable;
@@ -6,14 +6,14 @@ var observable_callback_1 = require("observable-callback");
6
6
  var EMPTY_DEPS = [];
7
7
  function useObservableCallback(fn, dependencies) {
8
8
  if (dependencies === void 0) { dependencies = EMPTY_DEPS; }
9
- var callbackRef = react_1.useRef();
9
+ var callbackRef = (0, react_1.useRef)();
10
10
  if (!callbackRef.current) {
11
- callbackRef.current = observable_callback_1.observableCallback();
11
+ callbackRef.current = (0, observable_callback_1.observableCallback)();
12
12
  }
13
13
  var _a = callbackRef.current, calls$ = _a[0], call = _a[1];
14
14
  // eslint-disable-next-line react-hooks/exhaustive-deps
15
- var callback = react_1.useCallback(fn, dependencies);
16
- react_1.useEffect(function () {
15
+ var callback = (0, react_1.useCallback)(fn, dependencies);
16
+ (0, react_1.useEffect)(function () {
17
17
  var subscription = calls$.pipe(callback).subscribe();
18
18
  return function () {
19
19
  subscription.unsubscribe();
@@ -5,7 +5,7 @@ var useObservable_1 = require("./useObservable");
5
5
  var useAsObservable_1 = require("./useAsObservable");
6
6
  function useWithObservable(value, operator) {
7
7
  return operator
8
- ? useObservable_1.useObservable(useAsObservable_1.useAsObservable(value, operator))
9
- : useObservable_1.useObservable(useAsObservable_1.useAsObservable(value));
8
+ ? (0, useObservable_1.useObservable)((0, useAsObservable_1.useAsObservable)(value, operator))
9
+ : (0, useObservable_1.useObservable)((0, useAsObservable_1.useAsObservable)(value));
10
10
  }
11
11
  exports.useWithObservable = useWithObservable;
package/dist/cjs/utils.js CHANGED
@@ -5,26 +5,26 @@ var useAsObservable_1 = require("./useAsObservable");
5
5
  var observable_callback_1 = require("observable-callback");
6
6
  var operators_1 = require("rxjs/operators");
7
7
  var react_1 = require("react");
8
- var createState = function (initialState) { return observable_callback_1.observableCallback(operators_1.startWith(initialState)); };
8
+ var createState = function (initialState) { return (0, observable_callback_1.observableCallback)((0, operators_1.startWith)(initialState)); };
9
9
  function observeState(initial) {
10
- var _a = react_1.useState(initial), value = _a[0], update = _a[1];
11
- return [useAsObservable_1.useAsObservable(value), update];
10
+ var _a = (0, react_1.useState)(initial), value = _a[0], update = _a[1];
11
+ return [(0, useAsObservable_1.useAsObservable)(value), update];
12
12
  }
13
13
  exports.observeState = observeState;
14
14
  function observeCallback(operator) {
15
- var ref = react_1.useRef();
15
+ var ref = (0, react_1.useRef)();
16
16
  if (!ref.current) {
17
- ref.current = operator ? observable_callback_1.observableCallback(operator) : observable_callback_1.observableCallback();
17
+ ref.current = operator ? (0, observable_callback_1.observableCallback)(operator) : (0, observable_callback_1.observableCallback)();
18
18
  }
19
19
  return ref.current;
20
20
  }
21
21
  exports.observeCallback = observeCallback;
22
22
  function observeContext(context) {
23
- return useAsObservable_1.useAsObservable(react_1.useContext(context));
23
+ return (0, useAsObservable_1.useAsObservable)((0, react_1.useContext)(context));
24
24
  }
25
25
  exports.observeContext = observeContext;
26
26
  function observeElement() {
27
- var ref = react_1.useRef();
27
+ var ref = (0, react_1.useRef)();
28
28
  if (!ref.current) {
29
29
  ref.current = createState(null);
30
30
  }
@@ -39,13 +39,13 @@ var reactiveComponent_1 = require("./reactiveComponent");
39
39
  * @deprecated Use reactiveComponent instead
40
40
  */
41
41
  function withPropsStream(observableOrFactory, TargetComponent) {
42
- var ComposedComponent = reactiveComponent_1.reactiveComponent(function (sourceProps$) {
42
+ var ComposedComponent = (0, reactiveComponent_1.reactiveComponent)(function (sourceProps$) {
43
43
  var targetProps$ = typeof observableOrFactory === 'function'
44
44
  ? observableOrFactory(sourceProps$)
45
45
  : observableOrFactory;
46
- return targetProps$.pipe(operators_1.map(function (props) { return React.createElement(TargetComponent, __assign({}, props)); }));
46
+ return targetProps$.pipe((0, operators_1.map)(function (props) { return React.createElement(TargetComponent, __assign({}, props)); }));
47
47
  });
48
- ComposedComponent.displayName = displayName_1.wrapDisplayName(TargetComponent, 'withPropsStream');
48
+ ComposedComponent.displayName = (0, displayName_1.wrapDisplayName)(TargetComponent, 'withPropsStream');
49
49
  return ComposedComponent;
50
50
  }
51
51
  exports.withPropsStream = withPropsStream;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-rx",
3
- "version": "1.0.0-beta.6",
3
+ "version": "1.0.0",
4
4
  "description": "React + RxJS = <3",
5
5
  "main": "dist/cjs/index.js",
6
6
  "types": "dist/cjs/index.d.ts",
@@ -25,8 +25,8 @@
25
25
  "observable-callback": "^1.0.1"
26
26
  },
27
27
  "peerDependencies": {
28
- "react": ">=16.8",
29
- "rxjs": "^6"
28
+ "react": ">=16.8 | >= 17",
29
+ "rxjs": "^6 | ^7"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@testing-library/dom": "^7.29.6",