@cimpress/react-components
Version:
React components to support the MCP styleguide
99 lines • 4.85 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const react_1 = __importStar(require("react"));
const react_hot_loader_1 = require("react-hot-loader");
const react_router_dom_1 = require("react-router-dom");
const history_1 = require("history");
const css_1 = require("@emotion/css");
const react_components_1 = require("@cimpress/react-components");
const DocsHeader_jsx_1 = __importDefault(require("./DocsHeader.jsx"));
const introduction_jsx_1 = __importDefault(require("./introduction.jsx"));
const pages_1 = __importDefault(require("./pages"));
const sideBar = (0, css_1.css) `
width: 200px;
flex: 0 0 auto;
margin: 8px 16px;
padding: 8px;
background-color: white;
`;
const flex = (0, css_1.css) `
display: flex;
`;
const minHeight = (0, css_1.css) `
min-height: calc(100vh - 120px);
`;
const activeLink = (0, css_1.css) `
font-weight: bold;
`;
class App extends react_1.Component {
constructor() {
super({});
Object.defineProperty(this, "history", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
Object.defineProperty(this, "basename", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
// TODO make these act nice on previous versions
const basename = process.env.BASE_NAME || (process.env.NODE_ENV === 'production' ? '/react-components/latest' : '');
const ROOT_URL = process.env.NODE_ENV === 'production' ? `https://static.ux.cimpress.io/${basename}/` : 'http://localhost:8080/';
this.basename = basename;
this.history = (0, history_1.createBrowserHistory)({ basename });
const path = window.location.hash.slice(1);
if (path) {
window.location.hash = '';
this.history.replaceState({}, '', `${ROOT_URL}${path}`);
}
}
render() {
return (react_1.default.createElement(react_router_dom_1.BrowserRouter, { basename: this.basename },
react_1.default.createElement(react_components_1.GlobalStyles, null),
react_1.default.createElement(DocsHeader_jsx_1.default, null),
react_1.default.createElement("div", { className: flex },
react_1.default.createElement("div", { className: sideBar },
react_1.default.createElement("div", null,
react_1.default.createElement(react_router_dom_1.NavLink, { to: "/", activeClassName: activeLink, exact: true }, "Introduction")),
react_1.default.createElement("h5", null, "Available Components:"),
pages_1.default.map(component => (react_1.default.createElement("div", { key: component.displayName },
react_1.default.createElement(react_router_dom_1.NavLink, { to: component.route, activeClassName: activeLink }, component.displayName))))),
react_1.default.createElement("div", { className: "container" },
react_1.default.createElement("div", { className: (0, css_1.cx)('content-wrapper', minHeight) },
react_1.default.createElement(react_router_dom_1.Switch, null,
pages_1.default.map(c => (react_1.default.createElement(react_router_dom_1.Route, { key: c.route, path: c.route, component: c.component }))),
react_1.default.createElement(react_router_dom_1.Route, { path: "/(index.html)?", component: introduction_jsx_1.default })))))));
}
}
exports.default = (0, react_hot_loader_1.hot)(module)(App);
//# sourceMappingURL=App.js.map