1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.Observer = void 0;
|
4 | var useObserver_1 = require("./useObserver");
|
5 | function ObserverComponent(_a) {
|
6 | var children = _a.children, render = _a.render;
|
7 | var component = children || render;
|
8 | if (typeof component !== "function") {
|
9 | return null;
|
10 | }
|
11 | return useObserver_1.useObserver(component);
|
12 | }
|
13 | exports.Observer = ObserverComponent;
|
14 | if ("production" !== process.env.NODE_ENV) {
|
15 | ObserverComponent.propTypes = {
|
16 | children: ObserverPropsCheck,
|
17 | render: ObserverPropsCheck
|
18 | };
|
19 | }
|
20 | ObserverComponent.displayName = "Observer";
|
21 | function ObserverPropsCheck(props, key, componentName, location, propFullName) {
|
22 | var extraKey = key === "children" ? "render" : "children";
|
23 | var hasProp = typeof props[key] === "function";
|
24 | var hasExtraProp = typeof props[extraKey] === "function";
|
25 | if (hasProp && hasExtraProp) {
|
26 | return new Error("MobX Observer: Do not use children and render in the same time in`" + componentName);
|
27 | }
|
28 | if (hasProp || hasExtraProp) {
|
29 | return null;
|
30 | }
|
31 | return new Error("Invalid prop `" +
|
32 | propFullName +
|
33 | "` of type `" +
|
34 | typeof props[key] +
|
35 | "` supplied to" +
|
36 | " `" +
|
37 | componentName +
|
38 | "`, expected `function`.");
|
39 | }
|
40 |
|
\ | No newline at end of file |