react-cosmos 5.6.4

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 (150) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +7 -0
  3. package/bin/cosmos-export.js +14 -0
  4. package/bin/cosmos-native.js +14 -0
  5. package/bin/cosmos.js +18 -0
  6. package/config.schema.json +186 -0
  7. package/dist/config/createCosmosConfig.d.ts +2 -0
  8. package/dist/config/createCosmosConfig.js +133 -0
  9. package/dist/config/detectCosmosConfig.d.ts +2 -0
  10. package/dist/config/detectCosmosConfig.js +57 -0
  11. package/dist/config/getCosmosConfigAtPath.d.ts +1 -0
  12. package/dist/config/getCosmosConfigAtPath.js +28 -0
  13. package/dist/config/index.d.ts +5 -0
  14. package/dist/config/index.js +51 -0
  15. package/dist/config/resolve.d.ts +1 -0
  16. package/dist/config/resolve.js +20 -0
  17. package/dist/config/shared.d.ts +29 -0
  18. package/dist/config/shared.js +17 -0
  19. package/dist/dom/DomFixtureLoader.d.ts +8 -0
  20. package/dist/dom/DomFixtureLoader.js +38 -0
  21. package/dist/dom/ErrorCatch.d.ts +15 -0
  22. package/dist/dom/ErrorCatch.js +117 -0
  23. package/dist/dom/container.d.ts +1 -0
  24. package/dist/dom/container.js +32 -0
  25. package/dist/dom/globalErrorHandler.d.ts +1 -0
  26. package/dist/dom/globalErrorHandler.js +14 -0
  27. package/dist/dom/index.d.ts +13 -0
  28. package/dist/dom/index.js +47 -0
  29. package/dist/dom/renderMessage.d.ts +3 -0
  30. package/dist/dom/renderMessage.js +30 -0
  31. package/dist/dom/rendererConnect.d.ts +1 -0
  32. package/dist/dom/rendererConnect.js +18 -0
  33. package/dist/dom/rendererId.d.ts +1 -0
  34. package/dist/dom/rendererId.js +26 -0
  35. package/dist/dom/selectedFixtureId.d.ts +2 -0
  36. package/dist/dom/selectedFixtureId.js +41 -0
  37. package/dist/dom/shared.d.ts +1 -0
  38. package/dist/dom/shared.js +14 -0
  39. package/dist/fixture.d.ts +1 -0
  40. package/dist/fixture.js +31 -0
  41. package/dist/getFixtureUrls.d.ts +8 -0
  42. package/dist/getFixtureUrls.js +98 -0
  43. package/dist/getFixtures.d.ts +13 -0
  44. package/dist/getFixtures.js +90 -0
  45. package/dist/getFixtures2.d.ts +14 -0
  46. package/dist/getFixtures2.js +117 -0
  47. package/dist/index.d.ts +4 -0
  48. package/dist/index.js +67 -0
  49. package/dist/native.d.ts +9 -0
  50. package/dist/native.js +69 -0
  51. package/dist/nativeServer.d.ts +1 -0
  52. package/dist/nativeServer.js +39 -0
  53. package/dist/plugins/httpProxy.d.ts +2 -0
  54. package/dist/plugins/httpProxy.js +31 -0
  55. package/dist/plugins/openFile.d.ts +2 -0
  56. package/dist/plugins/openFile.js +87 -0
  57. package/dist/plugins/userDepsFile.d.ts +2 -0
  58. package/dist/plugins/userDepsFile.js +164 -0
  59. package/dist/plugins/webpack/client/errorOverlay/index.d.ts +1 -0
  60. package/dist/plugins/webpack/client/errorOverlay/index.js +16 -0
  61. package/dist/plugins/webpack/client/errorOverlay/reactErrorOverlay.d.ts +2 -0
  62. package/dist/plugins/webpack/client/errorOverlay/reactErrorOverlay.js +63 -0
  63. package/dist/plugins/webpack/client/hmrErrorHandler.d.ts +1 -0
  64. package/dist/plugins/webpack/client/hmrErrorHandler.js +16 -0
  65. package/dist/plugins/webpack/client/index.d.ts +6 -0
  66. package/dist/plugins/webpack/client/index.js +43 -0
  67. package/dist/plugins/webpack/client/reactDevtoolsHook.d.ts +0 -0
  68. package/dist/plugins/webpack/client/reactDevtoolsHook.js +19 -0
  69. package/dist/plugins/webpack/client/userDeps.d.ts +5 -0
  70. package/dist/plugins/webpack/client/userDeps.js +15 -0
  71. package/dist/plugins/webpack/cosmosConfig/dom.d.ts +6 -0
  72. package/dist/plugins/webpack/cosmosConfig/dom.js +19 -0
  73. package/dist/plugins/webpack/cosmosConfig/webpack.d.ts +9 -0
  74. package/dist/plugins/webpack/cosmosConfig/webpack.js +88 -0
  75. package/dist/plugins/webpack/devServer.d.ts +2 -0
  76. package/dist/plugins/webpack/devServer.js +168 -0
  77. package/dist/plugins/webpack/export.d.ts +2 -0
  78. package/dist/plugins/webpack/export.js +135 -0
  79. package/dist/plugins/webpack/index.d.ts +2 -0
  80. package/dist/plugins/webpack/index.js +21 -0
  81. package/dist/plugins/webpack/shared.d.ts +2 -0
  82. package/dist/plugins/webpack/shared.js +22 -0
  83. package/dist/plugins/webpack/webpackConfig/default.d.ts +2 -0
  84. package/dist/plugins/webpack/webpackConfig/default.js +152 -0
  85. package/dist/plugins/webpack/webpackConfig/devServer.d.ts +3 -0
  86. package/dist/plugins/webpack/webpackConfig/devServer.js +144 -0
  87. package/dist/plugins/webpack/webpackConfig/export.d.ts +3 -0
  88. package/dist/plugins/webpack/webpackConfig/export.js +110 -0
  89. package/dist/plugins/webpack/webpackConfig/htmlPlugin.d.ts +16 -0
  90. package/dist/plugins/webpack/webpackConfig/htmlPlugin.js +80 -0
  91. package/dist/plugins/webpack/webpackConfig/index.d.ts +2 -0
  92. package/dist/plugins/webpack/webpackConfig/index.js +21 -0
  93. package/dist/plugins/webpack/webpackConfig/module.d.ts +3 -0
  94. package/dist/plugins/webpack/webpackConfig/module.js +18 -0
  95. package/dist/plugins/webpack/webpackConfig/shared.d.ts +11 -0
  96. package/dist/plugins/webpack/webpackConfig/shared.js +254 -0
  97. package/dist/plugins/webpack/webpackConfig/userDepsLoader.d.ts +1 -0
  98. package/dist/plugins/webpack/webpackConfig/userDepsLoader.js +36 -0
  99. package/dist/shared/cli.d.ts +5 -0
  100. package/dist/shared/cli.js +14 -0
  101. package/dist/shared/devServer/app.d.ts +5 -0
  102. package/dist/shared/devServer/app.js +51 -0
  103. package/dist/shared/devServer/httpServer.d.ts +11 -0
  104. package/dist/shared/devServer/httpServer.js +183 -0
  105. package/dist/shared/devServer/index.d.ts +18 -0
  106. package/dist/shared/devServer/index.js +209 -0
  107. package/dist/shared/devServer/messageHandler.d.ts +7 -0
  108. package/dist/shared/devServer/messageHandler.js +42 -0
  109. package/dist/shared/export.d.ts +6 -0
  110. package/dist/shared/export.js +137 -0
  111. package/dist/shared/fs.d.ts +4 -0
  112. package/dist/shared/fs.js +37 -0
  113. package/dist/shared/playgroundHtml.d.ts +6 -0
  114. package/dist/shared/playgroundHtml.js +116 -0
  115. package/dist/shared/pluginConfigs.d.ts +2 -0
  116. package/dist/shared/pluginConfigs.js +15 -0
  117. package/dist/shared/rendererConfig.d.ts +6 -0
  118. package/dist/shared/rendererConfig.js +5 -0
  119. package/dist/shared/shared.d.ts +6 -0
  120. package/dist/shared/shared.js +22 -0
  121. package/dist/shared/static/favicon.ico +0 -0
  122. package/dist/shared/static/index.html +19 -0
  123. package/dist/shared/static.d.ts +3 -0
  124. package/dist/shared/static.js +30 -0
  125. package/dist/shared/userDeps/findUserModulePaths.d.ts +11 -0
  126. package/dist/shared/userDeps/findUserModulePaths.js +45 -0
  127. package/dist/shared/userDeps/generateUserDepsModule.d.ts +9 -0
  128. package/dist/shared/userDeps/generateUserDepsModule.js +37 -0
  129. package/dist/shared/userDeps/getUserModules.d.ts +8 -0
  130. package/dist/shared/userDeps/getUserModules.js +45 -0
  131. package/dist/shared/userDeps/index.d.ts +4 -0
  132. package/dist/shared/userDeps/index.js +49 -0
  133. package/dist/shared/userDeps/shared.d.ts +6 -0
  134. package/dist/shared/userDeps/shared.js +32 -0
  135. package/dist/shared/userDeps/userDepsTemplate.d.ts +11 -0
  136. package/dist/shared/userDeps/userDepsTemplate.js +52 -0
  137. package/dist/webExport.d.ts +1 -0
  138. package/dist/webExport.js +37 -0
  139. package/dist/webServer.d.ts +1 -0
  140. package/dist/webServer.js +43 -0
  141. package/dom.d.ts +1 -0
  142. package/dom.js +2 -0
  143. package/fixture.d.ts +1 -0
  144. package/fixture.js +2 -0
  145. package/index.d.ts +1 -0
  146. package/index.js +2 -0
  147. package/native.d.ts +1 -0
  148. package/native.js +2 -0
  149. package/package.json +42 -0
  150. package/yarn-error.log +13450 -0
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DomFixtureLoader = DomFixtureLoader;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _FixtureLoader = require("react-cosmos-shared2/FixtureLoader");
11
+
12
+ var _ErrorCatch = require("./ErrorCatch");
13
+
14
+ var _rendererConnect = require("./rendererConnect");
15
+
16
+ var _rendererId = require("./rendererId");
17
+
18
+ var _renderMessage = require("./renderMessage");
19
+
20
+ var _selectedFixtureId = require("./selectedFixtureId");
21
+
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
+
24
+ function DomFixtureLoader(_ref) {
25
+ var fixtures = _ref.fixtures,
26
+ decorators = _ref.decorators,
27
+ onErrorReset = _ref.onErrorReset;
28
+ return /*#__PURE__*/_react.default.createElement(_FixtureLoader.FixtureLoader, {
29
+ rendererId: _rendererId.rendererId,
30
+ rendererConnect: _rendererConnect.rendererConnect,
31
+ fixtures: fixtures,
32
+ selectedFixtureId: _selectedFixtureId.selectedFixtureId,
33
+ systemDecorators: [_ErrorCatch.ErrorCatch],
34
+ userDecorators: decorators,
35
+ renderMessage: _renderMessage.renderMessage,
36
+ onErrorReset: onErrorReset
37
+ });
38
+ }
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { ReactDecoratorProps } from 'react-cosmos-shared2/react';
3
+ declare type State = {
4
+ error: null | string;
5
+ };
6
+ export declare class ErrorCatch extends React.Component<ReactDecoratorProps, State> {
7
+ state: State;
8
+ componentDidCatch(error: Error, info: {
9
+ componentStack: string;
10
+ }): void;
11
+ componentDidUpdate(prevProps: ReactDecoratorProps): void;
12
+ render(): React.ReactNode;
13
+ renderError(error: string): JSX.Element | null;
14
+ }
15
+ export {};
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.ErrorCatch = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _lodash = require("lodash");
13
+
14
+ var _react2 = require("react-cosmos-shared2/react");
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
18
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
19
+
20
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
21
+
22
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
23
+
24
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
25
+
26
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
27
+
28
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
29
+
30
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
31
+
32
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
33
+
34
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
35
+
36
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
37
+
38
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
39
+
40
+ var ErrorCatch = /*#__PURE__*/function (_React$Component) {
41
+ _inherits(ErrorCatch, _React$Component);
42
+
43
+ var _super = _createSuper(ErrorCatch);
44
+
45
+ function ErrorCatch() {
46
+ var _this;
47
+
48
+ _classCallCheck(this, ErrorCatch);
49
+
50
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
51
+ args[_key] = arguments[_key];
52
+ }
53
+
54
+ _this = _super.call.apply(_super, [this].concat(args));
55
+
56
+ _defineProperty(_assertThisInitialized(_this), "state", {
57
+ error: null
58
+ });
59
+
60
+ return _this;
61
+ }
62
+
63
+ _createClass(ErrorCatch, [{
64
+ key: "componentDidCatch",
65
+ value: function componentDidCatch(error, info) {
66
+ this.setState({
67
+ error: "".concat(error.message, "\n").concat(info.componentStack)
68
+ });
69
+ }
70
+ }, {
71
+ key: "componentDidUpdate",
72
+ value: function componentDidUpdate(prevProps) {
73
+ // A change in fixture (children) or fixture state signifies that the
74
+ // problem that caused the current error might've been solved. If the error
75
+ // persists, it will organically trigger the error state again in the next
76
+ // update
77
+ if (this.state.error && (fixtureChanged(this.props.children, prevProps.children) || fixtureStateChanged(this.props.fixtureState, prevProps.fixtureState))) {
78
+ this.setState({
79
+ error: null
80
+ });
81
+ this.props.onErrorReset();
82
+ }
83
+ }
84
+ }, {
85
+ key: "render",
86
+ value: function render() {
87
+ return this.state.error ? this.renderError(this.state.error) : this.props.children;
88
+ }
89
+ }, {
90
+ key: "renderError",
91
+ value: function renderError(error) {
92
+ // Don't render error details here in dev mode because react-error-overlay
93
+ // takes care of it in a nicer way. We used to render both for a while but
94
+ // it proved annoying. react-error-overlay has a slight delay and seeing
95
+ // the same error reported twice feels clumsy.
96
+ if (__DEV__) {
97
+ return null;
98
+ } // In static exports, however, where react-error-overlay is missing,
99
+ // rendering plain error details is superior to showing a blank screen.
100
+
101
+
102
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement("strong", null, "Ouch, something wrong!")), /*#__PURE__*/_react.default.createElement("pre", null, error), /*#__PURE__*/_react.default.createElement("p", null, "Check console for more info."));
103
+ }
104
+ }]);
105
+
106
+ return ErrorCatch;
107
+ }(_react.default.Component);
108
+
109
+ exports.ErrorCatch = ErrorCatch;
110
+
111
+ function fixtureChanged(f1, f2) {
112
+ return !(0, _react2.areNodesEqual)(f1, f2, true);
113
+ }
114
+
115
+ function fixtureStateChanged(fS1, fS2) {
116
+ return !(0, _lodash.isEqual)(fS1, fS2);
117
+ }
@@ -0,0 +1 @@
1
+ export declare function getDomContainer(querySelector: null | string): Element;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getDomContainer = getDomContainer;
7
+
8
+ function getDomContainer(querySelector) {
9
+ if (!querySelector) {
10
+ return getFallbackDomContainer();
11
+ }
12
+
13
+ var existingContainer = document.querySelector(querySelector);
14
+
15
+ if (!existingContainer) {
16
+ console.warn("Query selector \"".concat(querySelector, "\" doesn't match any existing DOM element. ") + "Are you using a custom HTML template? " + "Add an element matching \"".concat(querySelector, "\" to your template or change the containerQuerySelector setting."));
17
+ return getFallbackDomContainer();
18
+ }
19
+
20
+ return existingContainer;
21
+ }
22
+
23
+ function getFallbackDomContainer() {
24
+ return document.getElementById('root') || createDomContainer();
25
+ }
26
+
27
+ function createDomContainer() {
28
+ var container = document.createElement('div');
29
+ container.setAttribute('id', 'root');
30
+ document.body.appendChild(container);
31
+ return container;
32
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ var _rendererId = require("./rendererId");
4
+
5
+ var _rendererConnect = require("./rendererConnect");
6
+
7
+ window.addEventListener('error', function () {
8
+ _rendererConnect.rendererConnect.postMessage({
9
+ type: 'rendererError',
10
+ payload: {
11
+ rendererId: _rendererId.rendererId
12
+ }
13
+ });
14
+ });
@@ -0,0 +1,13 @@
1
+ import { ReactDecoratorsByPath, ReactFixtureExportsByPath } from 'react-cosmos-shared2/react';
2
+ import { DomRendererConfig } from '../shared/rendererConfig';
3
+ import './globalErrorHandler';
4
+ import { rendererConnect } from './rendererConnect';
5
+ import { rendererId } from './rendererId';
6
+ export { rendererId, rendererConnect };
7
+ declare type Args = {
8
+ rendererConfig: DomRendererConfig;
9
+ fixtures: ReactFixtureExportsByPath;
10
+ decorators: ReactDecoratorsByPath;
11
+ onErrorReset?: () => unknown;
12
+ };
13
+ export declare function mountDomRenderer({ rendererConfig, fixtures, decorators, onErrorReset, }: Args): void;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.mountDomRenderer = mountDomRenderer;
7
+ Object.defineProperty(exports, "rendererConnect", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _rendererConnect.rendererConnect;
11
+ }
12
+ });
13
+ Object.defineProperty(exports, "rendererId", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _rendererId.rendererId;
17
+ }
18
+ });
19
+
20
+ var _react = _interopRequireDefault(require("react"));
21
+
22
+ var _reactDom = require("react-dom");
23
+
24
+ var _container = require("./container");
25
+
26
+ var _DomFixtureLoader = require("./DomFixtureLoader");
27
+
28
+ require("./globalErrorHandler");
29
+
30
+ var _rendererConnect = require("./rendererConnect");
31
+
32
+ var _rendererId = require("./rendererId");
33
+
34
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
35
+
36
+ function mountDomRenderer(_ref) {
37
+ var rendererConfig = _ref.rendererConfig,
38
+ fixtures = _ref.fixtures,
39
+ decorators = _ref.decorators,
40
+ onErrorReset = _ref.onErrorReset;
41
+ var domContainer = (0, _container.getDomContainer)(rendererConfig.containerQuerySelector);
42
+ (0, _reactDom.render)( /*#__PURE__*/_react.default.createElement(_DomFixtureLoader.DomFixtureLoader, {
43
+ fixtures: fixtures,
44
+ decorators: decorators,
45
+ onErrorReset: onErrorReset
46
+ }), domContainer);
47
+ }
@@ -0,0 +1,3 @@
1
+ export declare function renderMessage({ msg }: {
2
+ msg: string;
3
+ }): JSX.Element;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.renderMessage = renderMessage;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ var containerStyle = {
13
+ position: 'absolute',
14
+ top: 0,
15
+ bottom: 0,
16
+ left: 0,
17
+ right: 0,
18
+ display: 'flex',
19
+ justifyContent: 'center',
20
+ alignItems: 'center',
21
+ fontFamily: '-apple-system, BlinkMacSystemFont, Ubuntu, "Helvetica Neue", Helvetica, sans-serif',
22
+ fontSize: 14
23
+ };
24
+
25
+ function renderMessage(_ref) {
26
+ var msg = _ref.msg;
27
+ return /*#__PURE__*/_react.default.createElement("div", {
28
+ style: containerStyle
29
+ }, msg);
30
+ }
@@ -0,0 +1 @@
1
+ export declare const rendererConnect: import("react-cosmos-shared2/renderer").RendererConnect<import("react-cosmos-shared2/renderer").RendererRequest, import("react-cosmos-shared2/renderer").RendererResponse>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.rendererConnect = void 0;
7
+
8
+ var _FixtureLoader = require("react-cosmos-shared2/FixtureLoader");
9
+
10
+ var _shared = require("./shared");
11
+
12
+ var rendererConnect = (0, _shared.isInsideCosmosPreviewIframe)() ? (0, _FixtureLoader.createPostMessageConnect)() : (0, _FixtureLoader.createWebSocketsConnect)(getWebSocketsUrl());
13
+ exports.rendererConnect = rendererConnect;
14
+
15
+ function getWebSocketsUrl() {
16
+ // TODO: Allow user to input URL
17
+ return location.origin;
18
+ }
@@ -0,0 +1 @@
1
+ export declare const rendererId: string;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.rendererId = void 0;
7
+
8
+ var _util = require("react-cosmos-shared2/util");
9
+
10
+ var rendererId = getRendererId(); // Renderer ID is remembered to avoid announcing a new renderer when reloading
11
+ // the renderer window. Note that each tab has creates a new session and thus
12
+ // a new rendererId.
13
+ // https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage
14
+
15
+ exports.rendererId = rendererId;
16
+
17
+ function getRendererId() {
18
+ var id = sessionStorage.getItem('cosmosRendererId');
19
+
20
+ if (!id) {
21
+ id = (0, _util.uuid)();
22
+ sessionStorage.setItem('cosmosRendererId', id);
23
+ }
24
+
25
+ return id;
26
+ }
@@ -0,0 +1,2 @@
1
+ import { FixtureId } from 'react-cosmos-shared2/renderer';
2
+ export declare const selectedFixtureId: FixtureId | null;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.selectedFixtureId = void 0;
7
+
8
+ var _url = require("react-cosmos-shared2/url");
9
+
10
+ var _shared = require("./shared");
11
+
12
+ var selectedFixtureId = getSelectedFixtureId(); // The selected fixture ID is stored in session because components might change
13
+ // the URL as a side effect. This means that after the renderer stores the
14
+ // fixture ID initially, the renderer window can be refreshed and the same
15
+ // fixture will be selected even if the URL no longer contains the fixture ID.
16
+
17
+ exports.selectedFixtureId = selectedFixtureId;
18
+
19
+ function getSelectedFixtureId() {
20
+ var urlParams = (0, _url.parseRendererUrlQuery)(location.search);
21
+
22
+ if (urlParams._fixtureId) {
23
+ setFixtureIdToSession(urlParams._fixtureId);
24
+ return urlParams._fixtureId;
25
+ }
26
+
27
+ return getFixtureIdFromSession();
28
+ }
29
+
30
+ function setFixtureIdToSession(fixtureId) {
31
+ sessionStorage.setItem('cosmosFixtureId', JSON.stringify(fixtureId));
32
+ }
33
+
34
+ function getFixtureIdFromSession() {
35
+ if ((0, _shared.isInsideCosmosPreviewIframe)()) {
36
+ return null;
37
+ }
38
+
39
+ var stringifiedFixtureId = sessionStorage.getItem('cosmosFixtureId');
40
+ return stringifiedFixtureId ? JSON.parse(stringifiedFixtureId) : null;
41
+ }
@@ -0,0 +1 @@
1
+ export declare function isInsideCosmosPreviewIframe(): boolean;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isInsideCosmosPreviewIframe = isInsideCosmosPreviewIframe;
7
+
8
+ function isInsideCosmosPreviewIframe() {
9
+ try {
10
+ return window.self !== window.parent;
11
+ } catch (e) {
12
+ return true;
13
+ }
14
+ }
@@ -0,0 +1 @@
1
+ export { FixtureContext, useSelect, useValue, Viewport, } from 'react-cosmos-shared2/FixtureLoader';
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "FixtureContext", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _FixtureLoader.FixtureContext;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "useSelect", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _FixtureLoader.useSelect;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "useValue", {
19
+ enumerable: true,
20
+ get: function get() {
21
+ return _FixtureLoader.useValue;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "Viewport", {
25
+ enumerable: true,
26
+ get: function get() {
27
+ return _FixtureLoader.Viewport;
28
+ }
29
+ });
30
+
31
+ var _FixtureLoader = require("react-cosmos-shared2/FixtureLoader");
@@ -0,0 +1,8 @@
1
+ import { CosmosConfig } from './config';
2
+ declare type Args = {
3
+ cosmosConfig: CosmosConfig;
4
+ fullScreen?: boolean;
5
+ };
6
+ export declare const getFixtureUrls: (args: Args) => Promise<string[]>;
7
+ export declare function getFixtureUrlsSync({ cosmosConfig, fullScreen }: Args): string[];
8
+ export {};
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getFixtureUrlsSync = getFixtureUrlsSync;
7
+ exports.getFixtureUrls = void 0;
8
+
9
+ var _react = require("react-cosmos-shared2/react");
10
+
11
+ var _url = require("react-cosmos-shared2/url");
12
+
13
+ var _playgroundHtml = require("./shared/playgroundHtml");
14
+
15
+ var _userDeps = require("./shared/userDeps");
16
+
17
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
18
+
19
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
20
+
21
+ var getFixtureUrls = /*#__PURE__*/function () {
22
+ var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(args) {
23
+ return regeneratorRuntime.wrap(function _callee$(_context) {
24
+ while (1) {
25
+ switch (_context.prev = _context.next) {
26
+ case 0:
27
+ return _context.abrupt("return", getFixtureUrlsSync(args));
28
+
29
+ case 1:
30
+ case "end":
31
+ return _context.stop();
32
+ }
33
+ }
34
+ }, _callee);
35
+ }));
36
+
37
+ return function getFixtureUrls(_x) {
38
+ return _ref.apply(this, arguments);
39
+ };
40
+ }();
41
+
42
+ exports.getFixtureUrls = getFixtureUrls;
43
+
44
+ function getFixtureUrlsSync(_ref2) {
45
+ var cosmosConfig = _ref2.cosmosConfig,
46
+ _ref2$fullScreen = _ref2.fullScreen,
47
+ fullScreen = _ref2$fullScreen === void 0 ? false : _ref2$fullScreen;
48
+ var host = getPlaygroundHost(cosmosConfig);
49
+ var fixtureUrls = [];
50
+
51
+ function pushFixtureUrl(fixtureId) {
52
+ fixtureUrls.push(createFixtureUrl(host, fixtureId, fullScreen));
53
+ }
54
+
55
+ var _getUserModules = (0, _userDeps.getUserModules)(cosmosConfig),
56
+ fixtureExportsByPath = _getUserModules.fixtureExportsByPath;
57
+
58
+ var fixtureNamesByPath = (0, _react.getFixtureNamesByPath)(fixtureExportsByPath);
59
+ Object.keys(fixtureNamesByPath).forEach(function (fixturePath) {
60
+ var fixtureNames = fixtureNamesByPath[fixturePath];
61
+
62
+ if (fixtureNames === null) {
63
+ pushFixtureUrl({
64
+ path: fixturePath,
65
+ name: null
66
+ });
67
+ } else {
68
+ fixtureNames.forEach(function (fixtureName) {
69
+ pushFixtureUrl({
70
+ path: fixturePath,
71
+ name: fixtureName
72
+ });
73
+ });
74
+ }
75
+ });
76
+ return fixtureUrls;
77
+ }
78
+
79
+ function createFixtureUrl(host, fixtureId, fullScreen) {
80
+ if (fullScreen) {
81
+ var _query = (0, _url.stringifyRendererUrlQuery)({
82
+ _fixtureId: fixtureId
83
+ });
84
+
85
+ return "".concat(host, "/").concat(_playgroundHtml.RENDERER_FILENAME, "?").concat(_query);
86
+ }
87
+
88
+ var query = (0, _url.stringifyPlaygroundUrlQuery)({
89
+ fixtureId: fixtureId
90
+ });
91
+ return "".concat(host, "/?").concat(query);
92
+ }
93
+
94
+ function getPlaygroundHost(_ref3) {
95
+ var hostname = _ref3.hostname,
96
+ port = _ref3.port;
97
+ return "".concat(hostname || 'localhost', ":").concat(port);
98
+ }
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { FixtureId } from 'react-cosmos-shared2/renderer';
3
+ import { CosmosConfig } from './config';
4
+ declare type Args = {
5
+ cosmosConfig: CosmosConfig;
6
+ };
7
+ declare type RenderableFixture = {
8
+ fixtureId: FixtureId;
9
+ getElement: () => React.ReactElement<any>;
10
+ };
11
+ export declare const getFixtures: (args: Args) => Promise<RenderableFixture[]>;
12
+ export declare function getFixturesSync({ cosmosConfig }: Args): RenderableFixture[];
13
+ export {};