react-readme-printer
Version:
Provides a function to load a readme file from github repositories and a React component to automatically load and convert markdown to jsx
740 lines (639 loc) • 75.5 kB
JavaScript
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var React = require('react');
var axios = require('axios');
var go = require('react-icons/go');
var lib = require('react-icons/lib');
var ReactMarkdown = require('react-markdown');
var remarkGfm = require('remark-gfm');
var rehypeHighlight = require('rehype-highlight');
require('rehype-raw');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
var ReactMarkdown__default = /*#__PURE__*/_interopDefaultLegacy(ReactMarkdown);
var remarkGfm__default = /*#__PURE__*/_interopDefaultLegacy(remarkGfm);
var rehypeHighlight__default = /*#__PURE__*/_interopDefaultLegacy(rehypeHighlight);
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);
}
}
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);
});
};
}
function _extends() {
_extends = Object.assign || function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
};
return _extends.apply(this, arguments);
}
function _slicedToArray(arr, i) {
return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
}
function _arrayWithHoles(arr) {
if (Array.isArray(arr)) return arr;
}
function _iterableToArrayLimit(arr, i) {
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
if (_i == null) return;
var _arr = [];
var _n = true;
var _d = false;
var _s, _e;
try {
for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
_arr.push(_s.value);
if (i && _arr.length === i) break;
}
} catch (err) {
_d = true;
_e = err;
} finally {
try {
if (!_n && _i["return"] != null) _i["return"]();
} finally {
if (_d) throw _e;
}
}
return _arr;
}
function _unsupportedIterableToArray(o, minLen) {
if (!o) return;
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
var n = Object.prototype.toString.call(o).slice(8, -1);
if (n === "Object" && o.constructor) n = o.constructor.name;
if (n === "Map" || n === "Set") return Array.from(o);
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
}
function _arrayLikeToArray(arr, len) {
if (len == null || len > arr.length) len = arr.length;
for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
return arr2;
}
function _nonIterableRest() {
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}
function styleInject(css, ref) {
if ( ref === void 0 ) ref = {};
var insertAt = ref.insertAt;
if (!css || typeof document === 'undefined') { return; }
var head = document.head || document.getElementsByTagName('head')[0];
var style = document.createElement('style');
style.type = 'text/css';
if (insertAt === 'top') {
if (head.firstChild) {
head.insertBefore(style, head.firstChild);
} else {
head.appendChild(style);
}
} else {
head.appendChild(style);
}
if (style.styleSheet) {
style.styleSheet.cssText = css;
} else {
style.appendChild(document.createTextNode(css));
}
}
var css_248z = ".readme-file {\r\n font-size: 75%;\r\n}\r\n\r\n.readme-file .repo {\r\n background-color: rgb(202, 202, 202);\r\n padding: 5px 10px;\r\n border-radius: 10px;\r\n}\r\n\r\n.readme-file.dark-mode .repo {\r\n background-color: rgba(241, 241, 241, 0.121);\r\n}\r\n\r\n.readme-file.dark-mode {\r\n color: rgb(226, 226, 226);\r\n}\r\n\r\n.markdown-body .octicon {\r\n display: inline-block;\r\n fill: currentColor;\r\n vertical-align: text-bottom;\r\n }\r\n \r\n .markdown-body .anchor {\r\n float: left;\r\n line-height: 1;\r\n margin-left: -20px;\r\n padding-right: 4px;\r\n }\r\n \r\n .markdown-body .anchor:focus {\r\n outline: none;\r\n }\r\n \r\n .markdown-body h1 .octicon-link,\r\n .markdown-body h2 .octicon-link,\r\n .markdown-body h3 .octicon-link,\r\n .markdown-body h4 .octicon-link,\r\n .markdown-body h5 .octicon-link,\r\n .markdown-body h6 .octicon-link {\r\n color: #1b1f23;\r\n vertical-align: middle;\r\n visibility: hidden;\r\n }\r\n \r\n .markdown-body h1:hover .anchor,\r\n .markdown-body h2:hover .anchor,\r\n .markdown-body h3:hover .anchor,\r\n .markdown-body h4:hover .anchor,\r\n .markdown-body h5:hover .anchor,\r\n .markdown-body h6:hover .anchor {\r\n text-decoration: none;\r\n }\r\n \r\n .markdown-body h1:hover .anchor .octicon-link,\r\n .markdown-body h2:hover .anchor .octicon-link,\r\n .markdown-body h3:hover .anchor .octicon-link,\r\n .markdown-body h4:hover .anchor .octicon-link,\r\n .markdown-body h5:hover .anchor .octicon-link,\r\n .markdown-body h6:hover .anchor .octicon-link {\r\n visibility: visible;\r\n }\r\n \r\n .markdown-body h1:hover .anchor .octicon-link:before,\r\n .markdown-body h2:hover .anchor .octicon-link:before,\r\n .markdown-body h3:hover .anchor .octicon-link:before,\r\n .markdown-body h4:hover .anchor .octicon-link:before,\r\n .markdown-body h5:hover .anchor .octicon-link:before,\r\n .markdown-body h6:hover .anchor .octicon-link:before {\r\n width: 16px;\r\n height: 16px;\r\n content: ' ';\r\n display: inline-block;\r\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath fill-rule='evenodd' d='M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z'%3E%3C/path%3E%3C/svg%3E\");\r\n }\r\n .markdown-body {\r\n -ms-text-size-adjust: 100%;\r\n -webkit-text-size-adjust: 100%;\r\n line-height: 1.5;\r\n color: #24292e;\r\n font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;\r\n font-size: 16px;\r\n line-height: 1.5;\r\n word-wrap: break-word;\r\n }\r\n\r\n .markdown-body.dark-mode {\r\n color: rgb(226, 226, 226);\r\n }\r\n \r\n .markdown-body details {\r\n display: block;\r\n }\r\n \r\n .markdown-body summary {\r\n display: list-item;\r\n }\r\n \r\n .markdown-body a {\r\n background-color: initial;\r\n }\r\n \r\n .markdown-body a:active,\r\n .markdown-body a:hover {\r\n outline-width: 0;\r\n }\r\n \r\n .markdown-body strong {\r\n font-weight: inherit;\r\n font-weight: bolder;\r\n }\r\n \r\n .markdown-body h1 {\r\n font-size: 2em;\r\n margin: .67em 0;\r\n }\r\n \r\n .markdown-body img {\r\n border-style: none;\r\n }\r\n \r\n .markdown-body code,\r\n .markdown-body kbd,\r\n .markdown-body pre {\r\n font-family: monospace,monospace;\r\n font-size: 1em;\r\n }\r\n \r\n .markdown-body hr {\r\n box-sizing: initial;\r\n height: 0;\r\n overflow: visible;\r\n }\r\n \r\n .markdown-body input {\r\n font: inherit;\r\n margin: 0;\r\n }\r\n \r\n .markdown-body input {\r\n overflow: visible;\r\n }\r\n \r\n .markdown-body [type=checkbox] {\r\n box-sizing: border-box;\r\n padding: 0;\r\n }\r\n \r\n .markdown-body * {\r\n box-sizing: border-box;\r\n }\r\n \r\n .markdown-body input {\r\n font-family: inherit;\r\n font-size: inherit;\r\n line-height: inherit;\r\n }\r\n \r\n .markdown-body a {\r\n color: #0366d6;\r\n text-decoration: none;\r\n }\r\n \r\n .markdown-body a:hover {\r\n text-decoration: underline;\r\n }\r\n \r\n .markdown-body strong {\r\n font-weight: 600;\r\n }\r\n \r\n .markdown-body hr {\r\n height: 0;\r\n margin: 15px 0;\r\n overflow: hidden;\r\n background: transparent;\r\n border: 0;\r\n border-bottom: 1px solid #dfe2e5;\r\n }\r\n \r\n .markdown-body hr:after,\r\n .markdown-body hr:before {\r\n display: table;\r\n content: \"\";\r\n }\r\n \r\n .markdown-body hr:after {\r\n clear: both;\r\n }\r\n \r\n .markdown-body table {\r\n border-spacing: 0;\r\n border-collapse: collapse;\r\n }\r\n\r\n \r\n \r\n .markdown-body td,\r\n .markdown-body th {\r\n padding: 0;\r\n }\r\n \r\n .markdown-body details summary {\r\n cursor: pointer;\r\n }\r\n \r\n .markdown-body kbd {\r\n display: inline-block;\r\n padding: 3px 5px;\r\n font: 11px SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;\r\n line-height: 10px;\r\n color: #444d56;\r\n vertical-align: middle;\r\n background-color: #fafbfc;\r\n border: 1px solid #d1d5da;\r\n border-radius: 3px;\r\n box-shadow: inset 0 -1px 0 #d1d5da;\r\n }\r\n \r\n .markdown-body h1,\r\n .markdown-body h2,\r\n .markdown-body h3,\r\n .markdown-body h4,\r\n .markdown-body h5,\r\n .markdown-body h6 {\r\n margin-top: 0;\r\n margin-bottom: 0;\r\n }\r\n \r\n .markdown-body h1 {\r\n font-size: 32px;\r\n }\r\n \r\n .markdown-body h1,\r\n .markdown-body h2 {\r\n font-weight: 600;\r\n }\r\n \r\n .markdown-body h2 {\r\n font-size: 24px;\r\n }\r\n \r\n .markdown-body h3 {\r\n font-size: 20px;\r\n }\r\n \r\n .markdown-body h3,\r\n .markdown-body h4 {\r\n font-weight: 600;\r\n }\r\n \r\n .markdown-body h4 {\r\n font-size: 16px;\r\n }\r\n \r\n .markdown-body h5 {\r\n font-size: 14px;\r\n }\r\n \r\n .markdown-body h5,\r\n .markdown-body h6 {\r\n font-weight: 600;\r\n }\r\n \r\n .markdown-body h6 {\r\n font-size: 12px;\r\n }\r\n \r\n .markdown-body p {\r\n margin-top: 0;\r\n margin-bottom: 10px;\r\n }\r\n \r\n .markdown-body blockquote {\r\n margin: 0;\r\n }\r\n \r\n .markdown-body ol,\r\n .markdown-body ul {\r\n padding-left: 0;\r\n margin-top: 0;\r\n margin-bottom: 0;\r\n }\r\n \r\n .markdown-body ol ol,\r\n .markdown-body ul ol {\r\n list-style-type: lower-roman;\r\n }\r\n \r\n .markdown-body ol ol ol,\r\n .markdown-body ol ul ol,\r\n .markdown-body ul ol ol,\r\n .markdown-body ul ul ol {\r\n list-style-type: lower-alpha;\r\n }\r\n \r\n .markdown-body dd {\r\n margin-left: 0;\r\n }\r\n \r\n .markdown-body code,\r\n .markdown-body pre {\r\n font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;\r\n font-size: 12px;\r\n }\r\n \r\n .markdown-body pre {\r\n margin-top: 0;\r\n margin-bottom: 0;\r\n }\r\n \r\n .markdown-body input::-webkit-inner-spin-button,\r\n .markdown-body input::-webkit-outer-spin-button {\r\n margin: 0;\r\n -webkit-appearance: none;\r\n appearance: none;\r\n }\r\n \r\n .markdown-body :checked+.radio-label {\r\n position: relative;\r\n z-index: 1;\r\n border-color: #0366d6;\r\n }\r\n \r\n .markdown-body .border {\r\n border: 1px solid #e1e4e8!important;\r\n }\r\n \r\n .markdown-body .border-0 {\r\n border: 0!important;\r\n }\r\n \r\n .markdown-body .border-bottom {\r\n border-bottom: 1px solid #e1e4e8!important;\r\n }\r\n \r\n .markdown-body .rounded-1 {\r\n border-radius: 3px!important;\r\n }\r\n \r\n .markdown-body .bg-white {\r\n background-color: #fff!important;\r\n }\r\n \r\n .markdown-body .bg-gray-light {\r\n background-color: #fafbfc!important;\r\n }\r\n \r\n .markdown-body .text-gray-light {\r\n color: #6a737d!important;\r\n }\r\n \r\n .markdown-body .mb-0 {\r\n margin-bottom: 0!important;\r\n }\r\n \r\n .markdown-body .my-2 {\r\n margin-top: 8px!important;\r\n margin-bottom: 8px!important;\r\n }\r\n \r\n .markdown-body .pl-0 {\r\n padding-left: 0!important;\r\n }\r\n \r\n .markdown-body .py-0 {\r\n padding-top: 0!important;\r\n padding-bottom: 0!important;\r\n }\r\n \r\n .markdown-body .pl-1 {\r\n padding-left: 4px!important;\r\n }\r\n \r\n .markdown-body .pl-2 {\r\n padding-left: 8px!important;\r\n }\r\n \r\n .markdown-body .py-2 {\r\n padding-top: 8px!important;\r\n padding-bottom: 8px!important;\r\n }\r\n \r\n .markdown-body .pl-3,\r\n .markdown-body .px-3 {\r\n padding-left: 16px!important;\r\n }\r\n \r\n .markdown-body .px-3 {\r\n padding-right: 16px!important;\r\n }\r\n \r\n .markdown-body .pl-4 {\r\n padding-left: 24px!important;\r\n }\r\n \r\n .markdown-body .pl-5 {\r\n padding-left: 32px!important;\r\n }\r\n \r\n .markdown-body .pl-6 {\r\n padding-left: 40px!important;\r\n }\r\n \r\n .markdown-body .f6 {\r\n font-size: 12px!important;\r\n }\r\n \r\n .markdown-body .lh-condensed {\r\n line-height: 1.25!important;\r\n }\r\n \r\n .markdown-body .text-bold {\r\n font-weight: 600!important;\r\n }\r\n \r\n .markdown-body .pl-c {\r\n color: #6a737d;\r\n }\r\n \r\n .markdown-body .pl-c1,\r\n .markdown-body .pl-s .pl-v {\r\n color: #005cc5;\r\n }\r\n \r\n .markdown-body .pl-e,\r\n .markdown-body .pl-en {\r\n color: #6f42c1;\r\n }\r\n \r\n .markdown-body .pl-s .pl-s1,\r\n .markdown-body .pl-smi {\r\n color: #24292e;\r\n }\r\n \r\n .markdown-body .pl-ent {\r\n color: #22863a;\r\n }\r\n \r\n .markdown-body .pl-k {\r\n color: #d73a49;\r\n }\r\n \r\n .markdown-body .pl-pds,\r\n .markdown-body .pl-s,\r\n .markdown-body .pl-s .pl-pse .pl-s1,\r\n .markdown-body .pl-sr,\r\n .markdown-body .pl-sr .pl-cce,\r\n .markdown-body .pl-sr .pl-sra,\r\n .markdown-body .pl-sr .pl-sre {\r\n color: #032f62;\r\n }\r\n \r\n .markdown-body .pl-smw,\r\n .markdown-body .pl-v {\r\n color: #e36209;\r\n }\r\n \r\n .markdown-body .pl-bu {\r\n color: #b31d28;\r\n }\r\n \r\n .markdown-body .pl-ii {\r\n color: #fafbfc;\r\n background-color: #b31d28;\r\n }\r\n \r\n .markdown-body .pl-c2 {\r\n color: #fafbfc;\r\n background-color: #d73a49;\r\n }\r\n \r\n .markdown-body .pl-c2:before {\r\n content: \"^M\";\r\n }\r\n \r\n .markdown-body .pl-sr .pl-cce {\r\n font-weight: 700;\r\n color: #22863a;\r\n }\r\n \r\n .markdown-body .pl-ml {\r\n color: #735c0f;\r\n }\r\n \r\n .markdown-body .pl-mh,\r\n .markdown-body .pl-mh .pl-en,\r\n .markdown-body .pl-ms {\r\n font-weight: 700;\r\n color: #005cc5;\r\n }\r\n \r\n .markdown-body .pl-mi {\r\n font-style: italic;\r\n color: #24292e;\r\n }\r\n \r\n .markdown-body .pl-mb {\r\n font-weight: 700;\r\n color: #24292e;\r\n }\r\n \r\n .markdown-body .pl-md {\r\n color: #b31d28;\r\n background-color: #ffeef0;\r\n }\r\n \r\n .markdown-body .pl-mi1 {\r\n color: #22863a;\r\n background-color: #f0fff4;\r\n }\r\n \r\n .markdown-body .pl-mc {\r\n color: #e36209;\r\n background-color: #ffebda;\r\n }\r\n \r\n .markdown-body .pl-mi2 {\r\n color: #f6f8fa;\r\n background-color: #005cc5;\r\n }\r\n \r\n .markdown-body .pl-mdr {\r\n font-weight: 700;\r\n color: #6f42c1;\r\n }\r\n \r\n .markdown-body .pl-ba {\r\n color: #586069;\r\n }\r\n \r\n .markdown-body .pl-sg {\r\n color: #959da5;\r\n }\r\n \r\n .markdown-body .pl-corl {\r\n text-decoration: underline;\r\n color: #032f62;\r\n }\r\n \r\n .markdown-body .mb-0 {\r\n margin-bottom: 0!important;\r\n }\r\n \r\n .markdown-body .my-2 {\r\n margin-bottom: 8px!important;\r\n }\r\n \r\n .markdown-body .my-2 {\r\n margin-top: 8px!important;\r\n }\r\n \r\n .markdown-body .pl-0 {\r\n padding-left: 0!important;\r\n }\r\n \r\n .markdown-body .py-0 {\r\n padding-top: 0!important;\r\n padding-bottom: 0!important;\r\n }\r\n \r\n .markdown-body .pl-1 {\r\n padding-left: 4px!important;\r\n }\r\n \r\n .markdown-body .pl-2 {\r\n padding-left: 8px!important;\r\n }\r\n \r\n .markdown-body .py-2 {\r\n padding-top: 8px!important;\r\n padding-bottom: 8px!important;\r\n }\r\n \r\n .markdown-body .pl-3 {\r\n padding-left: 16px!important;\r\n }\r\n \r\n .markdown-body .pl-4 {\r\n padding-left: 24px!important;\r\n }\r\n \r\n .markdown-body .pl-5 {\r\n padding-left: 32px!important;\r\n }\r\n \r\n .markdown-body .pl-6 {\r\n padding-left: 40px!important;\r\n }\r\n \r\n .markdown-body .pl-7 {\r\n padding-left: 48px!important;\r\n }\r\n \r\n .markdown-body .pl-8 {\r\n padding-left: 64px!important;\r\n }\r\n \r\n .markdown-body .pl-9 {\r\n padding-left: 80px!important;\r\n }\r\n \r\n .markdown-body .pl-10 {\r\n padding-left: 96px!important;\r\n }\r\n \r\n .markdown-body .pl-11 {\r\n padding-left: 112px!important;\r\n }\r\n \r\n .markdown-body .pl-12 {\r\n padding-left: 128px!important;\r\n }\r\n \r\n .markdown-body hr {\r\n border-bottom-color: #eee;\r\n }\r\n \r\n .markdown-body kbd {\r\n display: inline-block;\r\n padding: 3px 5px;\r\n font: 11px SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;\r\n line-height: 10px;\r\n color: #444d56;\r\n vertical-align: middle;\r\n background-color: #fafbfc;\r\n border: 1px solid #d1d5da;\r\n border-radius: 3px;\r\n box-shadow: inset 0 -1px 0 #d1d5da;\r\n }\r\n \r\n .markdown-body:after,\r\n .markdown-body:before {\r\n display: table;\r\n content: \"\";\r\n }\r\n \r\n .markdown-body:after {\r\n clear: both;\r\n }\r\n \r\n .markdown-body>:first-child {\r\n margin-top: 0!important;\r\n }\r\n \r\n .markdown-body>:last-child {\r\n margin-bottom: 0!important;\r\n }\r\n \r\n .markdown-body a:not([href]) {\r\n color: inherit;\r\n text-decoration: none;\r\n }\r\n \r\n .markdown-body blockquote,\r\n .markdown-body details,\r\n .markdown-body dl,\r\n .markdown-body ol,\r\n .markdown-body p,\r\n .markdown-body pre,\r\n .markdown-body table,\r\n .markdown-body ul {\r\n margin-top: 0;\r\n margin-bottom: 16px;\r\n }\r\n \r\n .markdown-body hr {\r\n height: .25em;\r\n padding: 0;\r\n margin: 24px 0;\r\n background-color: #e1e4e8;\r\n border: 0;\r\n }\r\n \r\n .markdown-body blockquote {\r\n padding: 0 1em;\r\n color: #6a737d;\r\n border-left: .25em solid #dfe2e5;\r\n }\r\n \r\n .markdown-body blockquote>:first-child {\r\n margin-top: 0;\r\n }\r\n \r\n .markdown-body blockquote>:last-child {\r\n margin-bottom: 0;\r\n }\r\n \r\n .markdown-body h1,\r\n .markdown-body h2,\r\n .markdown-body h3,\r\n .markdown-body h4,\r\n .markdown-body h5,\r\n .markdown-body h6 {\r\n margin-top: 24px;\r\n margin-bottom: 16px;\r\n font-weight: 600;\r\n line-height: 1.25;\r\n }\r\n \r\n .markdown-body h1 {\r\n font-size: 2em;\r\n }\r\n \r\n .markdown-body h1,\r\n .markdown-body h2 {\r\n padding-bottom: .3em;\r\n border-bottom: 1px solid #eaecef;\r\n }\r\n \r\n .markdown-body h2 {\r\n font-size: 1.5em;\r\n }\r\n \r\n .markdown-body h3 {\r\n font-size: 1.25em;\r\n }\r\n \r\n .markdown-body h4 {\r\n font-size: 1em;\r\n }\r\n \r\n .markdown-body h5 {\r\n font-size: .875em;\r\n }\r\n \r\n .markdown-body h6 {\r\n font-size: .85em;\r\n color: #6a737d;\r\n }\r\n \r\n .markdown-body ol,\r\n .markdown-body ul {\r\n padding-left: 2em;\r\n }\r\n \r\n .markdown-body ol ol,\r\n .markdown-body ol ul,\r\n .markdown-body ul ol,\r\n .markdown-body ul ul {\r\n margin-top: 0;\r\n margin-bottom: 0;\r\n }\r\n \r\n .markdown-body li {\r\n word-wrap: break-all;\r\n }\r\n \r\n .markdown-body li>p {\r\n margin-top: 16px;\r\n }\r\n \r\n .markdown-body li+li {\r\n margin-top: .25em;\r\n }\r\n \r\n .markdown-body dl {\r\n padding: 0;\r\n }\r\n \r\n .markdown-body dl dt {\r\n padding: 0;\r\n margin-top: 16px;\r\n font-size: 1em;\r\n font-style: italic;\r\n font-weight: 600;\r\n }\r\n \r\n .markdown-body dl dd {\r\n padding: 0 16px;\r\n margin-bottom: 16px;\r\n }\r\n \r\n .markdown-body table {\r\n display: block;\r\n width: 100%;\r\n overflow: auto;\r\n }\r\n \r\n .markdown-body table th {\r\n font-weight: 600;\r\n }\r\n \r\n .markdown-body table td,\r\n .markdown-body table th {\r\n padding: 6px 13px;\r\n border: 1px solid #dfe2e5;\r\n }\r\n \r\n .markdown-body table tr {\r\n background-color: #fff;\r\n border-top: 1px solid #c6cbd1;\r\n }\r\n \r\n .markdown-body table tr:nth-child(2n) {\r\n background-color: #f6f8fa;\r\n }\r\n\r\n .markdown-body.dark-mode table tr {\r\n background-color: #1b1f23;\r\n }\r\n\r\n .markdown-body.dark-mode table tr:nth-child(2n) {\r\n background-color: #262a2f;\r\n }\r\n \r\n .markdown-body img {\r\n max-width: 100%;\r\n box-sizing: initial;\r\n background-color: #fff;\r\n }\r\n \r\n .markdown-body img[align=right] {\r\n padding-left: 20px;\r\n }\r\n \r\n .markdown-body img[align=left] {\r\n padding-right: 20px;\r\n }\r\n \r\n .markdown-body code {\r\n padding: .2em .4em;\r\n margin: 0;\r\n font-size: 85%;\r\n background-color: rgba(27,31,35,.05);\r\n border-radius: 3px;\r\n }\r\n \r\n .markdown-body pre {\r\n word-wrap: normal;\r\n }\r\n \r\n .markdown-body pre>code {\r\n padding: 0;\r\n margin: 0;\r\n font-size: 100%;\r\n word-break: normal;\r\n white-space: pre;\r\n background: transparent;\r\n border: 0;\r\n }\r\n \r\n .markdown-body .highlight {\r\n margin-bottom: 16px;\r\n }\r\n \r\n .markdown-body .highlight pre {\r\n margin-bottom: 0;\r\n word-break: normal;\r\n }\r\n \r\n .markdown-body .highlight pre,\r\n .markdown-body pre {\r\n padding: 16px;\r\n overflow: auto;\r\n font-size: 85%;\r\n line-height: 1.45;\r\n background-color: #f6f8fa;\r\n border-radius: 3px;\r\n }\r\n .markdown-body.dark-mode pre {\r\n background-color: #1f1f1fc9;\r\n }\r\n \r\n .markdown-body pre code {\r\n display: inline;\r\n max-width: auto;\r\n padding: 0;\r\n margin: 0;\r\n overflow: visible;\r\n line-height: inherit;\r\n word-wrap: normal;\r\n background-color: initial;\r\n border: 0;\r\n }\r\n \r\n .markdown-body .commit-tease-sha {\r\n display: inline-block;\r\n font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;\r\n font-size: 90%;\r\n color: #444d56;\r\n }\r\n \r\n .markdown-body .full-commit .btn-outline:not(:disabled):hover {\r\n color: #005cc5;\r\n border-color: #005cc5;\r\n }\r\n \r\n .markdown-body .blob-wrapper {\r\n overflow-x: auto;\r\n overflow-y: hidden;\r\n }\r\n \r\n .markdown-body .blob-wrapper-embedded {\r\n max-height: 240px;\r\n overflow-y: auto;\r\n }\r\n \r\n .markdown-body .blob-num {\r\n width: 1%;\r\n min-width: 50px;\r\n padding-right: 10px;\r\n padding-left: 10px;\r\n font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;\r\n font-size: 12px;\r\n line-height: 20px;\r\n color: rgba(27,31,35,.3);\r\n text-align: right;\r\n white-space: nowrap;\r\n vertical-align: top;\r\n cursor: pointer;\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n user-select: none;\r\n }\r\n \r\n .markdown-body .blob-num:hover {\r\n color: rgba(27,31,35,.6);\r\n }\r\n \r\n .markdown-body .blob-num:before {\r\n content: attr(data-line-number);\r\n }\r\n \r\n .markdown-body .blob-code {\r\n position: relative;\r\n padding-right: 10px;\r\n padding-left: 10px;\r\n line-height: 20px;\r\n vertical-align: top;\r\n }\r\n \r\n .markdown-body .blob-code-inner {\r\n overflow: visible;\r\n font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;\r\n font-size: 12px;\r\n color: #24292e;\r\n word-wrap: normal;\r\n white-space: pre;\r\n }\r\n \r\n .markdown-body .pl-token.active,\r\n .markdown-body .pl-token:hover {\r\n cursor: pointer;\r\n background: #ffea7f;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"1\"] {\r\n -moz-tab-size: 1;\r\n tab-size: 1;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"2\"] {\r\n -moz-tab-size: 2;\r\n tab-size: 2;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"3\"] {\r\n -moz-tab-size: 3;\r\n tab-size: 3;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"4\"] {\r\n -moz-tab-size: 4;\r\n tab-size: 4;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"5\"] {\r\n -moz-tab-size: 5;\r\n tab-size: 5;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"6\"] {\r\n -moz-tab-size: 6;\r\n tab-size: 6;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"7\"] {\r\n -moz-tab-size: 7;\r\n tab-size: 7;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"8\"] {\r\n -moz-tab-size: 8;\r\n tab-size: 8;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"9\"] {\r\n -moz-tab-size: 9;\r\n tab-size: 9;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"10\"] {\r\n -moz-tab-size: 10;\r\n tab-size: 10;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"11\"] {\r\n -moz-tab-size: 11;\r\n tab-size: 11;\r\n }\r\n \r\n .markdown-body .tab-size[data-tab-size=\"12\"] {\r\n -moz-tab-size: 12;\r\n tab-size: 12;\r\n }\r\n \r\n .markdown-body .task-list-item {\r\n list-style-type: none;\r\n }\r\n \r\n .markdown-body .task-list-item+.task-list-item {\r\n margin-top: 3px;\r\n }\r\n \r\n .markdown-body .task-list-item input {\r\n margin: 0 .2em .25em -1.6em;\r\n vertical-align: middle;\r\n }\r\n \r\n\r\n .hljs{display:block;overflow-x:auto;padding:.5em;color:#333;background:#f8f8f8}\r\n .dark-mode .hljs {color: rgb(226, 226, 226);}\r\n .hljs-comment,.hljs-quote{color:#998;font-style:italic}\r\n .hljs-keyword,.hljs-selector-tag,.hljs-subst{color:#333;font-weight:700;}\r\n .dark-mode .hljs-keyword {color: rgb(226, 226, 226);}\r\n .hljs-literal,.hljs-number,.hljs-tag .hljs-attr,.hljs-template-variable,.hljs-variable{color:teal}\r\n .hljs-doctag,.hljs-string{color:#d14}\r\n .hljs-section,.hljs-selector-id,.hljs-title{color:#900;font-weight:700;}\r\n .hljs-subst{font-weight:400}\r\n .hljs-class .hljs-title,.hljs-type{color:#458;font-weight:700}\r\n .hljs-attribute,.hljs-name,.hljs-tag{color:rgb(0, 71, 238);font-weight:400}\r\n .hljs-link,.hljs-regexp{color:#009926}\r\n .hljs-bullet,.hljs-symbol{color:#990073}\r\n .hljs-built_in,.hljs-builtin-name{color:#0086b3}\r\n .hljs-meta{color:#999;font-weight:700}\r\n .hljs-deletion{background:#fdd}\r\n .hljs-addition{background:#dfd}\r\n .hljs-emphasis{font-style:italic}\r\n .hljs-strong{font-weight:700}";
styleInject(css_248z);
var propTypes = {exports: {}};
var reactIs = {exports: {}};
var reactIs_production_min = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var b="function"===typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?
Symbol.for("react.suspense_list"):60120,r=b?Symbol.for("react.memo"):60115,t=b?Symbol.for("react.lazy"):60116,v=b?Symbol.for("react.block"):60121,w=b?Symbol.for("react.fundamental"):60117,x=b?Symbol.for("react.responder"):60118,y=b?Symbol.for("react.scope"):60119;
function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}reactIs_production_min.AsyncMode=l;reactIs_production_min.ConcurrentMode=m;reactIs_production_min.ContextConsumer=k;reactIs_production_min.ContextProvider=h;reactIs_production_min.Element=c;reactIs_production_min.ForwardRef=n;reactIs_production_min.Fragment=e;reactIs_production_min.Lazy=t;reactIs_production_min.Memo=r;reactIs_production_min.Portal=d;
reactIs_production_min.Profiler=g;reactIs_production_min.StrictMode=f;reactIs_production_min.Suspense=p;reactIs_production_min.isAsyncMode=function(a){return A(a)||z(a)===l};reactIs_production_min.isConcurrentMode=A;reactIs_production_min.isContextConsumer=function(a){return z(a)===k};reactIs_production_min.isContextProvider=function(a){return z(a)===h};reactIs_production_min.isElement=function(a){return "object"===typeof a&&null!==a&&a.$$typeof===c};reactIs_production_min.isForwardRef=function(a){return z(a)===n};reactIs_production_min.isFragment=function(a){return z(a)===e};reactIs_production_min.isLazy=function(a){return z(a)===t};
reactIs_production_min.isMemo=function(a){return z(a)===r};reactIs_production_min.isPortal=function(a){return z(a)===d};reactIs_production_min.isProfiler=function(a){return z(a)===g};reactIs_production_min.isStrictMode=function(a){return z(a)===f};reactIs_production_min.isSuspense=function(a){return z(a)===p};
reactIs_production_min.isValidElementType=function(a){return "string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||"object"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};reactIs_production_min.typeOf=z;
var reactIs_development = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
if (process.env.NODE_ENV !== "production") {
(function() {
// The Symbol used to tag the ReactElement-like types. If there is no native Symbol
// nor polyfill, then a plain number is used for performance.
var hasSymbol = typeof Symbol === 'function' && Symbol.for;
var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
// (unstable) APIs that have been removed. Can we remove the symbols?
var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
function isValidElementType(type) {
return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
}
function typeOf(object) {
if (typeof object === 'object' && object !== null) {
var $$typeof = object.$$typeof;
switch ($$typeof) {
case REACT_ELEMENT_TYPE:
var type = object.type;
switch (type) {
case REACT_ASYNC_MODE_TYPE:
case REACT_CONCURRENT_MODE_TYPE:
case REACT_FRAGMENT_TYPE:
case REACT_PROFILER_TYPE:
case REACT_STRICT_MODE_TYPE:
case REACT_SUSPENSE_TYPE:
return type;
default:
var $$typeofType = type && type.$$typeof;
switch ($$typeofType) {
case REACT_CONTEXT_TYPE:
case REACT_FORWARD_REF_TYPE:
case REACT_LAZY_TYPE:
case REACT_MEMO_TYPE:
case REACT_PROVIDER_TYPE:
return $$typeofType;
default:
return $$typeof;
}
}
case REACT_PORTAL_TYPE:
return $$typeof;
}
}
return undefined;
} // AsyncMode is deprecated along with isAsyncMode
var AsyncMode = REACT_ASYNC_MODE_TYPE;
var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
var ContextConsumer = REACT_CONTEXT_TYPE;
var ContextProvider = REACT_PROVIDER_TYPE;
var Element = REACT_ELEMENT_TYPE;
var ForwardRef = REACT_FORWARD_REF_TYPE;
var Fragment = REACT_FRAGMENT_TYPE;
var Lazy = REACT_LAZY_TYPE;
var Memo = REACT_MEMO_TYPE;
var Portal = REACT_PORTAL_TYPE;
var Profiler = REACT_PROFILER_TYPE;
var StrictMode = REACT_STRICT_MODE_TYPE;
var Suspense = REACT_SUSPENSE_TYPE;
var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
function isAsyncMode(object) {
{
if (!hasWarnedAboutDeprecatedIsAsyncMode) {
hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
}
}
return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
}
function isConcurrentMode(object) {
return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
}
function isContextConsumer(object) {
return typeOf(object) === REACT_CONTEXT_TYPE;
}
function isContextProvider(object) {
return typeOf(object) === REACT_PROVIDER_TYPE;
}
function isElement(object) {
return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
}
function isForwardRef(object) {
return typeOf(object) === REACT_FORWARD_REF_TYPE;
}
function isFragment(object) {
return typeOf(object) === REACT_FRAGMENT_TYPE;
}
function isLazy(object) {
return typeOf(object) === REACT_LAZY_TYPE;
}
function isMemo(object) {
return typeOf(object) === REACT_MEMO_TYPE;
}
function isPortal(object) {
return typeOf(object) === REACT_PORTAL_TYPE;
}
function isProfiler(object) {
return typeOf(object) === REACT_PROFILER_TYPE;
}
function isStrictMode(object) {
return typeOf(object) === REACT_STRICT_MODE_TYPE;
}
function isSuspense(object) {
return typeOf(object) === REACT_SUSPENSE_TYPE;
}
reactIs_development.AsyncMode = AsyncMode;
reactIs_development.ConcurrentMode = ConcurrentMode;
reactIs_development.ContextConsumer = ContextConsumer;
reactIs_development.ContextProvider = ContextProvider;
reactIs_development.Element = Element;
reactIs_development.ForwardRef = ForwardRef;
reactIs_development.Fragment = Fragment;
reactIs_development.Lazy = Lazy;
reactIs_development.Memo = Memo;
reactIs_development.Portal = Portal;
reactIs_development.Profiler = Profiler;
reactIs_development.StrictMode = StrictMode;
reactIs_development.Suspense = Suspense;
reactIs_development.isAsyncMode = isAsyncMode;
reactIs_development.isConcurrentMode = isConcurrentMode;
reactIs_development.isContextConsumer = isContextConsumer;
reactIs_development.isContextProvider = isContextProvider;
reactIs_development.isElement = isElement;
reactIs_development.isForwardRef = isForwardRef;
reactIs_development.isFragment = isFragment;
reactIs_development.isLazy = isLazy;
reactIs_development.isMemo = isMemo;
reactIs_development.isPortal = isPortal;
reactIs_development.isProfiler = isProfiler;
reactIs_development.isStrictMode = isStrictMode;
reactIs_development.isSuspense = isSuspense;
reactIs_development.isValidElementType = isValidElementType;
reactIs_development.typeOf = typeOf;
})();
}
if (process.env.NODE_ENV === 'production') {
reactIs.exports = reactIs_production_min;
} else {
reactIs.exports = reactIs_development;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
/* eslint-disable no-unused-vars */
var getOwnPropertySymbols = Object.getOwnPropertySymbols;
var hasOwnProperty = Object.prototype.hasOwnProperty;
var propIsEnumerable = Object.prototype.propertyIsEnumerable;
function toObject(val) {
if (val === null || val === undefined) {
throw new TypeError('Object.assign cannot be called with null or undefined');
}
return Object(val);
}
function shouldUseNative() {
try {
if (!Object.assign) {
return false;
}
// Detect buggy property enumeration order in older V8 versions.
// https://bugs.chromium.org/p/v8/issues/detail?id=4118
var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
test1[5] = 'de';
if (Object.getOwnPropertyNames(test1)[0] === '5') {
return false;
}
// https://bugs.chromium.org/p/v8/issues/detail?id=3056
var test2 = {};
for (var i = 0; i < 10; i++) {
test2['_' + String.fromCharCode(i)] = i;
}
var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
return test2[n];
});
if (order2.join('') !== '0123456789') {
return false;
}
// https://bugs.chromium.org/p/v8/issues/detail?id=3056
var test3 = {};
'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
test3[letter] = letter;
});
if (Object.keys(Object.assign({}, test3)).join('') !==
'abcdefghijklmnopqrst') {
return false;
}
return true;
} catch (err) {
// We don't expect any of the above to throw, but better to be safe.
return false;
}
}
var objectAssign = shouldUseNative() ? Object.assign : function (target, source) {
var from;
var to = toObject(target);
var symbols;
for (var s = 1; s < arguments.length; s++) {
from = Object(arguments[s]);
for (var key in from) {
if (hasOwnProperty.call(from, key)) {
to[key] = from[key];
}
}
if (getOwnPropertySymbols) {
symbols = getOwnPropertySymbols(from);
for (var i = 0; i < symbols.length; i++) {
if (propIsEnumerable.call(from, symbols[i])) {
to[symbols[i]] = from[symbols[i]];
}
}
}
}
return to;
};
/**
* Copyright (c) 2013-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var ReactPropTypesSecret$3 = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
var ReactPropTypesSecret_1 = ReactPropTypesSecret$3;
var has$2 = Function.call.bind(Object.prototype.hasOwnProperty);
/**
* Copyright (c) 2013-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var printWarning$1 = function() {};
if (process.env.NODE_ENV !== 'production') {
var ReactPropTypesSecret$2 = ReactPropTypesSecret_1;
var loggedTypeFailures = {};
var has$1 = has$2;
printWarning$1 = function(text) {
var message = 'Warning: ' + text;
if (typeof console !== 'undefined') {
console.error(message);
}
try {
// --- Welcome to debugging React ---
// This error was thrown as a convenience so that you can use this stack
// to find the callsite that caused this warning to fire.
throw new Error(message);
} catch (x) { /**/ }
};
}
/**
* Assert that the values match with the type specs.
* Error messages are memorized and will only be shown once.
*
* @param {object} typeSpecs Map of name to a ReactPropType
* @param {object} values Runtime values that need to be type-checked
* @param {string} location e.g. "prop", "context", "child context"
* @param {string} componentName Name of the component for error messages.
* @param {?Function} getStack Returns the component stack.
* @private
*/
function checkPropTypes$1(typeSpecs, values, location, componentName, getStack) {
if (process.env.NODE_ENV !== 'production') {
for (var typeSpecName in typeSpecs) {
if (has$1(typeSpecs, typeSpecName)) {
var error;
// Prop type validation may throw. In case they do, we don't want to
// fail the render phase where it didn't fail before. So we log it.
// After these have been cleaned up, we'll let them throw.
try {
// This is intentionally an invariant that gets caught. It's the same
// behavior as without this statement except with a better message.
if (typeof typeSpecs[typeSpecName] !== 'function') {
var err = Error(
(componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +
'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'
);
err.name = 'Invariant Violation';
throw err;
}
error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret$2);
} catch (ex) {
error = ex;
}
if (error && !(error instanceof Error)) {
printWarning$1(
(componentName || 'React class') + ': type specification of ' +
location + ' `' + typeSpecName + '` is invalid; the type checker ' +
'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
'You may have forgotten to pass an argument to the type checker ' +
'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
'shape all require an argument).'
);
}
if (error instanceof Error && !(error.message in loggedTypeFailures)) {
// Only monitor this failure once because there tends to be a lot of the
// same error.
loggedTypeFailures[error.message] = true;
var stack = getStack ? getStack() : '';
printWarning$1(
'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
);
}
}
}
}
}
/**
* Resets warning cache when testing.
*
* @private
*/
checkPropTypes$1.resetWarningCache = function() {
if (process.env.NODE_ENV !== 'production') {
loggedTypeFailures = {};
}
};
var checkPropTypes_1 = checkPropTypes$1;
/**
* Copyright (c) 2013-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var ReactIs$1 = reactIs.exports;
var assign = objectAssign;
var ReactPropTypesSecret$1 = ReactPropTypesSecret_1;
var has = has$2;
var checkPropTypes = checkPropTypes_1;
var printWarning = function() {};
if (process.env.NODE_ENV !== 'production') {
printWarning = function(text) {
var message = 'Warning: ' + text;
if (typeof console !== 'undefined') {
console.error(message);
}
try {
// --- Welcome to debugging React ---
// This error was thrown as a convenience so that you can use this stack
// to find the callsite that caused this warning to fire.
throw new Error(message);
} catch (x) {}
};
}
function emptyFunctionThatReturnsNull() {
return null;
}
var factoryWithTypeCheckers = function(isValidElement, throwOnDirectAccess) {
/* global Symbol */
var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
/**
* Returns the iterator method function contained on the iterable object.
*
* Be sure to invoke the function with the iterable as context:
*
* var iteratorFn = getIteratorFn(myIterable);
* if (iteratorFn) {
* var iterator = iteratorFn.call(myIterable);
* ...
* }
*
* @param {?object} maybeIterable
* @return {?function}
*/
function getIteratorFn(maybeIterable) {
var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
if (typeof iteratorFn === 'function') {
return iteratorFn;
}
}
/**
* Collection of methods that allow declaration and validation of props that are
* supplied to React components. Example usage:
*
* var Props = require('ReactPropTypes');
* var MyArticle = React.createClass({
* propTypes: {
* // An optional string prop named "description".
* description: Props.string,
*
* // A required enum prop named "category".
* category: Props.oneOf(['News','Photos']).isRequired,
*
* // A prop named "dialog" that requires an instance of Dialog.
* dialog: Props.instanceOf(Dialog).isRequired
* },
* render: function() { ... }
* });
*
* A more formal specification of how these methods are used:
*
* type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
* decl := ReactPropTypes.{type}(.isRequired)?
*
* Each and every declaration produces a function with the same signature. This
* allows the creation of custom validation functions. For example:
*
* var MyLink = React.createClass({
* propTypes: {
* // An optional string or URI prop named "href".
* href: function(props, propName, componentName) {
* var propValue = props[propName];
* if (propValue != null && typeof propValue !== 'string' &&
* !(propValue instanceof URI)) {
* return new Error(
* 'Expected a string or an URI for ' + propName + ' in ' +
* componentName
* );
* }
* }
* },
* render: function() {...}
* });
*
* @internal
*/
var ANONYMOUS = '<<anonymous>>';
// Important!
// Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
var ReactPropTypes = {
array: createPrimitiveTypeChecker('array'),
bigint: createPrimitiveTypeChecker('bigint'),
bool: createPrimitiveTypeChecker('boolean'),
func: createPrimitiveTypeChecker('function'),
number: createPrimitiveTypeChecker('number'),
object: createPrimitiveTypeChecker('object'),
string: createPrimitiveTypeChecker('string'),
symbol: createPrimitiveTypeChecker('symbol'),
any: createAnyTypeChecker(),
arrayOf: createArrayOfTypeChecker,
element: createElementTypeChecker(),
elementType: createElementTypeTypeChecker(),
instanceOf: createInstanceTypeChecker,
node: createNodeChecker(),
objectOf: createObjectOfTypeChecker,
oneOf: createEnumTypeChecker,
oneOfType: createUnionTypeChecker,
shape: createShapeTypeChecker,
exact: createStrictShapeTypeChecker,
};
/**
* inlined Object.is polyfill to avoid requiring consumers ship their own
* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
*/
/*eslint-disable no-self-compare*/
function is(x, y) {
// SameValue algorithm
if (x === y) {
// Steps 1-5, 7-10
// Steps 6.b-6.e: +0 != -0
return x !== 0 || 1 / x === 1 / y;
} else {
// Step 6.a: NaN == NaN
return x !== x && y !== y;
}
}
/*eslint-enable no-self-compare*/
/**
* We use an Error-like object for backward compatibility as people may call
* PropTypes directly and inspect their output. However, we don't use real
* Errors anymore. We don't inspect their stack anyway, and creating them
* is prohibitively expensive if they are created too often, such as what
* happens in oneOfType() for any type before the one that matched.
*/
function PropTypeError(message, data) {
this.message = message;
this.data = data && typeof data === 'object' ? data: {};
this.stack