@readme/markdown 6.66.0-beta.7 → 6.67.0-beta.1

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.
@@ -78,7 +78,7 @@ function CreateCode({ copyButtons, theme }) {
78
78
  }
79
79
 
80
80
  Code.propTypes = {
81
- children: PropTypes.oneOf(PropTypes.arrayOf(PropTypes.string), PropTypes.string),
81
+ children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.string]),
82
82
  className: PropTypes.string,
83
83
  copyButtons: PropTypes.bool,
84
84
  lang: PropTypes.string,
@@ -66,7 +66,7 @@ const CodeTabs = props => {
66
66
  };
67
67
 
68
68
  CodeTabs.propTypes = {
69
- children: PropTypes.oneOf(PropTypes.arrayOf(PropTypes.any), PropTypes.object),
69
+ children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.any), PropTypes.object]),
70
70
  theme: PropTypes.string,
71
71
  };
72
72
 
@@ -19,7 +19,7 @@ const Div = ({ components, theme, ...props }) => {
19
19
  };
20
20
 
21
21
  Div.propTypes = {
22
- children: PropTypes.oneOf(PropTypes.arrayOf(PropTypes.any), PropTypes.object),
22
+ children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.any), PropTypes.object]),
23
23
  className: PropTypes.string,
24
24
  components: PropTypes.object,
25
25
  theme: PropTypes.string.isRequired,
package/dist/main.js CHANGED
@@ -7625,7 +7625,7 @@ function CreateCode(_ref2) {
7625
7625
  };
7626
7626
  }
7627
7627
  Code.propTypes = {
7628
- children: PropTypes.oneOf(PropTypes.arrayOf(PropTypes.string), PropTypes.string),
7628
+ children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.string]),
7629
7629
  className: PropTypes.string,
7630
7630
  copyButtons: PropTypes.bool,
7631
7631
  lang: PropTypes.string,
@@ -7724,7 +7724,7 @@ var CodeTabs = function CodeTabs(props) {
7724
7724
  }, children));
7725
7725
  };
7726
7726
  CodeTabs.propTypes = {
7727
- children: PropTypes.oneOf(PropTypes.arrayOf(PropTypes.any), PropTypes.object),
7727
+ children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.any), PropTypes.object]),
7728
7728
  theme: PropTypes.string
7729
7729
  };
7730
7730
  function CreateCodeTabs(_ref3) {
@@ -7776,7 +7776,7 @@ var Div = function Div(_ref) {
7776
7776
  return /*#__PURE__*/React.createElement("div", props);
7777
7777
  };
7778
7778
  Div.propTypes = {
7779
- children: PropTypes.oneOf(PropTypes.arrayOf(PropTypes.any), PropTypes.object),
7779
+ children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.any), PropTypes.object]),
7780
7780
  className: PropTypes.string,
7781
7781
  components: PropTypes.object,
7782
7782
  theme: PropTypes.string.isRequired
@@ -8460,6 +8460,36 @@ module.exports = React.createContext([]);
8460
8460
 
8461
8461
  /***/ }),
8462
8462
 
8463
+ /***/ 5894:
8464
+ /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8465
+
8466
+ var React = __webpack_require__(3634);
8467
+ var CreateCodeTabs = __webpack_require__(6553);
8468
+
8469
+ /*
8470
+ * To get around hast/html sanitation, we pass custom components through using
8471
+ * className's. Then we hijack `React.createElement` so we can render the associated component
8472
+ * instead. If we use a custom `Div` like we do with MDX, `remarkRehype`
8473
+ * inserts an extra root div, and that messes with our styles. Fun!
8474
+ */
8475
+
8476
+ var createElement = function createElement(opts) {
8477
+ return (
8478
+ // eslint-disable-next-line react/display-name
8479
+ function (type, props) {
8480
+ // eslint-disable-next-line react/prop-types
8481
+ var rdmdType = type === 'div' && (props === null || props === void 0 ? void 0 : props.className) === 'code-tabs' ? CreateCodeTabs(opts) : type;
8482
+ for (var _len = arguments.length, children = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
8483
+ children[_key - 2] = arguments[_key];
8484
+ }
8485
+ return React.createElement.apply(React, [rdmdType, props].concat(children));
8486
+ }
8487
+ );
8488
+ };
8489
+ module.exports = createElement;
8490
+
8491
+ /***/ }),
8492
+
8463
8493
  /***/ 1264:
8464
8494
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8465
8495
 
@@ -8552,6 +8582,7 @@ var options = {
8552
8582
  },
8553
8583
  lazyImages: true,
8554
8584
  normalize: true,
8585
+ mdx: false,
8555
8586
  safeMode: false,
8556
8587
  settings: {
8557
8588
  position: false
@@ -9004,6 +9035,8 @@ module.exports = function YamlCompiler() {
9004
9035
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9005
9036
 
9006
9037
  var _slicedToArray = __webpack_require__(7424);
9038
+ var _require = __webpack_require__(2135),
9039
+ insertBlockTokenizerBefore = _require.insertBlockTokenizerBefore;
9007
9040
  var rgx = /^(#{1,6})(?!(?:#|\s))([^\n]+)\n/;
9008
9041
  function tokenizer(eat, value) {
9009
9042
  if (!rgx.test(value)) return true;
@@ -9020,11 +9053,11 @@ function tokenizer(eat, value) {
9020
9053
  });
9021
9054
  }
9022
9055
  function parser() {
9023
- var Parser = this.Parser;
9024
- var tokenizers = Parser.prototype.blockTokenizers;
9025
- var methods = Parser.prototype.blockMethods;
9026
- tokenizers.compactHeading = tokenizer;
9027
- methods.splice(methods.indexOf('newline'), 0, 'compactHeading');
9056
+ insertBlockTokenizerBefore.call(this, {
9057
+ name: 'compactHeading',
9058
+ before: 'atxHeading',
9059
+ tokenizer: tokenizer
9060
+ });
9028
9061
  }
9029
9062
  module.exports = parser;
9030
9063
  module.exports.sanitize = function (sanitizeSchema) {
@@ -9244,6 +9277,8 @@ var _setPrototypeOf = __webpack_require__(6015);
9244
9277
  var _slicedToArray = __webpack_require__(7424);
9245
9278
  function _wrapRegExp() { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, void 0, groups); }; var _super = RegExp.prototype, _groups = new WeakMap(); function BabelRegExp(re, flags, groups) { var _this = new RegExp(re, flags); return _groups.set(_this, groups || _groups.get(re)), _setPrototypeOf(_this, BabelRegExp.prototype); } function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { var i = g[name]; if ("number" == typeof i) groups[name] = result[i];else { for (var k = 0; void 0 === result[i[k]] && k + 1 < i.length;) { k++; } groups[name] = result[i[k]]; } return groups; }, Object.create(null)); } return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); return result && (result.groups = buildGroups(result, this)), result; }, BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if ("string" == typeof substitution) { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\$<([^>]+)>/g, function (_, name) { return "$" + groups[name]; })); } if ("function" == typeof substitution) { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = arguments; return "object" != _typeof(args[args.length - 1]) && (args = [].slice.call(args)).push(buildGroups(args, _this)), substitution.apply(this, args); }); } return _super[Symbol.replace].call(this, str, substitution); }, _wrapRegExp.apply(this, arguments); }
9246
9279
  var decode = __webpack_require__(7574);
9280
+ var _require = __webpack_require__(2135),
9281
+ insertBlockTokenizerBefore = _require.insertBlockTokenizerBefore;
9247
9282
  function tokenizer(eat, value) {
9248
9283
  // eslint-disable-next-line unicorn/no-unsafe-regex
9249
9284
  var TAB_BLOCK_RGXP = /^(?:(?:^|\n)```(?:(?!\n```)[\s\S])*\n```[^\S\n]*){2,}/g;
@@ -9306,11 +9341,11 @@ function tokenizer(eat, value) {
9306
9341
  });
9307
9342
  }
9308
9343
  function parser() {
9309
- var Parser = this.Parser;
9310
- var tokenizers = Parser.prototype.blockTokenizers;
9311
- var methods = Parser.prototype.blockMethods;
9312
- tokenizers.codeTabs = tokenizer;
9313
- methods.splice(methods.indexOf('indentedCode') - 1, 0, 'codeTabs');
9344
+ insertBlockTokenizerBefore.call(this, {
9345
+ name: 'codeTabs',
9346
+ before: 'indentedCode',
9347
+ tokenizer: tokenizer
9348
+ });
9314
9349
  }
9315
9350
  module.exports = parser;
9316
9351
  module.exports.sanitize = function (sanitizeSchema) {
@@ -9325,6 +9360,8 @@ module.exports.sanitize = function (sanitizeSchema) {
9325
9360
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9326
9361
 
9327
9362
  var _slicedToArray = __webpack_require__(7424);
9363
+ var _require = __webpack_require__(2135),
9364
+ insertBlockTokenizerBefore = _require.insertBlockTokenizerBefore;
9328
9365
  var rgx = /^\[([^\]]*)\]\((\S*) ["'](@\w+)"\)/;
9329
9366
  function tokenizer(eat, value) {
9330
9367
  if (!rgx.test(value)) return true;
@@ -9364,11 +9401,11 @@ function tokenizer(eat, value) {
9364
9401
  });
9365
9402
  }
9366
9403
  function parser() {
9367
- var Parser = this.Parser;
9368
- var tokenizers = Parser.prototype.blockTokenizers;
9369
- var methods = Parser.prototype.blockMethods;
9370
- tokenizers.embed = tokenizer;
9371
- methods.splice(methods.indexOf('newline'), 0, 'embed');
9404
+ insertBlockTokenizerBefore.call(this, {
9405
+ name: 'embed',
9406
+ before: 'blankLine',
9407
+ tokenizer: tokenizer
9408
+ });
9372
9409
  }
9373
9410
  module.exports = parser;
9374
9411
  module.exports.sanitize = function (sanitizeSchema) {
@@ -9383,6 +9420,8 @@ module.exports.sanitize = function (sanitizeSchema) {
9383
9420
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9384
9421
 
9385
9422
  var Emoji = (__webpack_require__(368)/* .emoji */ .r);
9423
+ var _require = __webpack_require__(2135),
9424
+ insertInlineTokenizerBefore = _require.insertInlineTokenizerBefore;
9386
9425
  var emojis = new Emoji();
9387
9426
  var colon = ':';
9388
9427
  function tokenize(eat, value, silent) {
@@ -9429,11 +9468,11 @@ function locate(value, fromIndex) {
9429
9468
  }
9430
9469
  tokenize.locator = locate;
9431
9470
  function parser() {
9432
- var Parser = this.Parser;
9433
- var tokenizers = Parser.prototype.inlineTokenizers;
9434
- var methods = Parser.prototype.inlineMethods;
9435
- tokenizers.gemoji = tokenize;
9436
- methods.splice(methods.indexOf('text'), 0, 'gemoji');
9471
+ insertInlineTokenizerBefore.call(this, {
9472
+ name: 'gemoji',
9473
+ before: 'text',
9474
+ tokenizer: tokenize
9475
+ });
9437
9476
  }
9438
9477
  module.exports = parser;
9439
9478
  module.exports.sanitize = function (sanitizeSchema) {
@@ -9573,6 +9612,8 @@ var _slicedToArray = __webpack_require__(7424);
9573
9612
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9574
9613
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9575
9614
  /* eslint-disable consistent-return */
9615
+ var _require = __webpack_require__(2135),
9616
+ insertBlockTokenizerBefore = _require.insertBlockTokenizerBefore;
9576
9617
  var RGXP = /^\[block:(.*)\]([^]+?)\[\/block\]/;
9577
9618
  var WrapPinnedBlocks = function WrapPinnedBlocks(node, json) {
9578
9619
  if (!json.sidebar) return node;
@@ -9856,15 +9897,16 @@ function tokenize(_ref) {
9856
9897
  };
9857
9898
  }
9858
9899
  function parser() {
9859
- var Parser = this.Parser;
9860
- var tokenizers = Parser.prototype.blockTokenizers;
9861
- var methods = Parser.prototype.blockMethods;
9862
- tokenizers.magicBlocks = tokenize({
9900
+ var tokenizer = tokenize({
9863
9901
  compatibilityMode: this.data('compatibilityMode'),
9864
9902
  safeMode: this.data('safeMode'),
9865
9903
  alwaysThrow: this.data('alwaysThrow')
9866
9904
  });
9867
- methods.splice(methods.indexOf('newline'), 0, 'magicBlocks');
9905
+ insertBlockTokenizerBefore.call(this, {
9906
+ name: 'magicBlocks',
9907
+ before: 'blankLine',
9908
+ tokenizer: tokenizer
9909
+ });
9868
9910
  }
9869
9911
  module.exports = parser;
9870
9912
  module.exports.sanitize = function (sanitizeSchema) {
@@ -9880,11 +9922,53 @@ module.exports.imgSizeByWidth = imgSizeByWidth;
9880
9922
 
9881
9923
  /***/ }),
9882
9924
 
9925
+ /***/ 2135:
9926
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9927
+
9928
+ "use strict";
9929
+ __webpack_require__.r(__webpack_exports__);
9930
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9931
+ /* harmony export */ "insertBlockTokenizerBefore": () => (/* binding */ insertBlockTokenizerBefore),
9932
+ /* harmony export */ "insertInlineTokenizerBefore": () => (/* binding */ insertInlineTokenizerBefore)
9933
+ /* harmony export */ });
9934
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4942);
9935
+
9936
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9937
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9938
+ function insertTokenizerBefore(_ref) {
9939
+ var name = _ref.name,
9940
+ before = _ref.before,
9941
+ tokenizer = _ref.tokenizer,
9942
+ _ref$type = _ref.type,
9943
+ type = _ref$type === void 0 ? 'block' : _ref$type;
9944
+ var Parser = this.Parser;
9945
+ var tokenizers = Parser.prototype["".concat(type, "Tokenizers")];
9946
+ var methods = Parser.prototype["".concat(type, "Methods")];
9947
+ var index = methods.indexOf(before);
9948
+ if (index === -1) {
9949
+ throw new Error("The '".concat(before, "' tokenizer does not exist!"));
9950
+ }
9951
+ tokenizers[name] = tokenizer;
9952
+ methods.splice(index, 0, name);
9953
+ }
9954
+ function insertBlockTokenizerBefore(args) {
9955
+ insertTokenizerBefore.call(this, args);
9956
+ }
9957
+ function insertInlineTokenizerBefore(args) {
9958
+ return insertTokenizerBefore.call(this, _objectSpread(_objectSpread({}, args), {}, {
9959
+ type: 'inline'
9960
+ }));
9961
+ }
9962
+
9963
+ /***/ }),
9964
+
9883
9965
  /***/ 2697:
9884
9966
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9885
9967
 
9886
9968
  var _require = __webpack_require__(1882),
9887
9969
  VARIABLE_REGEXP = _require.VARIABLE_REGEXP;
9970
+ var _require2 = __webpack_require__(2135),
9971
+ insertInlineTokenizerBefore = _require2.insertInlineTokenizerBefore;
9888
9972
  function tokenizeVariable(eat, value, silent) {
9889
9973
  // Modifies the regular expression to match from
9890
9974
  // the start of the line
@@ -9928,11 +10012,11 @@ function locate(value, fromIndex) {
9928
10012
  }
9929
10013
  tokenizeVariable.locator = locate;
9930
10014
  function parser() {
9931
- var Parser = this.Parser;
9932
- var tokenizers = Parser.prototype.inlineTokenizers;
9933
- var methods = Parser.prototype.inlineMethods;
9934
- tokenizers.variable = tokenizeVariable;
9935
- methods.splice(methods.indexOf('text'), 0, 'variable');
10015
+ insertInlineTokenizerBefore.call(this, {
10016
+ name: 'variable',
10017
+ before: 'text',
10018
+ tokenizer: tokenizeVariable
10019
+ });
9936
10020
  }
9937
10021
  module.exports = parser;
9938
10022
  module.exports.sanitize = function (sanitizeSchema) {
@@ -10082,9 +10166,11 @@ function transformer(ast) {
10082
10166
  return [_objectSpread(_objectSpread({}, node), {}, {
10083
10167
  children: [_objectSpread(_objectSpread({}, node.children[0]), {}, {
10084
10168
  value: valuesToString(header)
10085
- }), _objectSpread(_objectSpread({}, node.children[1]), {}, {
10169
+ }), body ? _objectSpread(_objectSpread({}, node.children[1]), {}, {
10086
10170
  value: valuesToString(body)
10087
- })]
10171
+ }) : null].filter(function (x) {
10172
+ return x;
10173
+ })
10088
10174
  })];
10089
10175
  }
10090
10176
  return [node];
@@ -10097,7 +10183,7 @@ module.exports.tableFlattening = transformer;
10097
10183
 
10098
10184
  /***/ }),
10099
10185
 
10100
- /***/ 8192:
10186
+ /***/ 3628:
10101
10187
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
10102
10188
 
10103
10189
  "use strict";
@@ -10106,7 +10192,8 @@ __webpack_require__.r(__webpack_exports__);
10106
10192
 
10107
10193
  // EXPORTS
10108
10194
  __webpack_require__.d(__webpack_exports__, {
10109
- "singleCodeTabs": () => (/* reexport */ single_code_tabs)
10195
+ "rehypeTransformers": () => (/* binding */ rehypeTransformers),
10196
+ "remarkTransformers": () => (/* binding */ remarkTransformers)
10110
10197
  });
10111
10198
 
10112
10199
  ;// CONCATENATED MODULE: ./node_modules/unist-util-visit/node_modules/unist-util-is/index.js
@@ -10596,7 +10683,7 @@ const visit =
10596
10683
 
10597
10684
  var singleCodeTabs = function singleCodeTabs() {
10598
10685
  return function (tree) {
10599
- visit(tree, function (node, index, parent) {
10686
+ return visit(tree, function (node, index, parent) {
10600
10687
  if (node.type === 'code' && (node.lang || node.meta) && parent.type !== 'code-tabs') {
10601
10688
  Object.assign(node, {
10602
10689
  className: 'tab-panel',
@@ -10620,14 +10707,48 @@ var singleCodeTabs = function singleCodeTabs() {
10620
10707
  children: [node]
10621
10708
  };
10622
10709
  }
10710
+ return tree;
10623
10711
  });
10624
- return tree;
10625
10712
  };
10626
10713
  };
10627
10714
  /* harmony default export */ const single_code_tabs = (singleCodeTabs);
10715
+ ;// CONCATENATED MODULE: ./processor/transform/table-cell-inline-code.js
10716
+
10717
+ var rxEscapedPipe = /\\\|/g;
10718
+
10719
+ /**
10720
+ * HAST Transformer that finds all inline code nodes within table cells and
10721
+ * unescapes any escaped pipe chars so that the editor outputs them without
10722
+ * escape chars.
10723
+ *
10724
+ * This appears to be a bug with remark-parse < ~8
10725
+ */
10726
+ var tableCellInlineCode = function tableCellInlineCode() {
10727
+ return function (tree) {
10728
+ visit(tree, [{
10729
+ tagName: 'th'
10730
+ }, {
10731
+ tagName: 'td'
10732
+ }], function (tableCellNode) {
10733
+ visit(tableCellNode, {
10734
+ tagName: 'code'
10735
+ }, function (inlineCodeNode) {
10736
+ var textNode = inlineCodeNode.children[0];
10737
+ if (rxEscapedPipe.test(textNode.value)) {
10738
+ textNode.value = textNode.value.replace(rxEscapedPipe, '|');
10739
+ }
10740
+ });
10741
+ return SKIP;
10742
+ });
10743
+ };
10744
+ };
10745
+ /* harmony default export */ const table_cell_inline_code = (tableCellInlineCode);
10628
10746
  ;// CONCATENATED MODULE: ./processor/transform/index.js
10629
10747
 
10630
10748
 
10749
+ var remarkTransformers = [single_code_tabs];
10750
+ var rehypeTransformers = [table_cell_inline_code];
10751
+
10631
10752
  /***/ }),
10632
10753
 
10633
10754
  /***/ 8229:
@@ -36745,6 +36866,7 @@ var Components = __webpack_require__(3354);
36745
36866
  var _require3 = __webpack_require__(8447),
36746
36867
  getHref = _require3.getHref;
36747
36868
  var BaseUrlContext = __webpack_require__(6785);
36869
+ var createElement = __webpack_require__(5894);
36748
36870
  var CustomParsers = Object.values(__webpack_require__(8521));
36749
36871
  var customCompilers = Object.values(__webpack_require__(9647));
36750
36872
  var registerCustomComponents = __webpack_require__(1264);
@@ -36756,7 +36878,9 @@ var _require5 = __webpack_require__(8160),
36756
36878
  var toPlainText = __webpack_require__(4792);
36757
36879
  var sectionAnchorId = __webpack_require__(9620);
36758
36880
  var tableFlattening = __webpack_require__(4625);
36759
- var transformers = Object.values(__webpack_require__(8192));
36881
+ var _require6 = __webpack_require__(3628),
36882
+ remarkTransformers = _require6.remarkTransformers,
36883
+ rehypeTransformers = _require6.rehypeTransformers;
36760
36884
  var createSchema = __webpack_require__(8229);
36761
36885
  var Anchor = Components.Anchor,
36762
36886
  Callout = Components.Callout,
@@ -36809,22 +36933,24 @@ var utils = {
36809
36933
  * Core markdown to mdast processor
36810
36934
  */
36811
36935
  function processor() {
36936
+ var _unified$use$use$use$;
36812
36937
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
36813
36938
  var _setup = setup('', opts);
36814
36939
  var _setup2 = (0,slicedToArray/* default */.Z)(_setup, 2);
36815
36940
  opts = _setup2[1];
36816
36941
  var _opts = opts,
36817
36942
  sanitize = _opts.sanitize;
36818
- return unified().use(remarkParse, opts.markdownOptions).use(opts.mdx ? remarkMdx : function () {}).use(remarkFrontmatter, ['yaml', 'toml']).data('settings', opts.settings).data('compatibilityMode', opts.compatibilityMode).data('alwaysThrow', opts.alwaysThrow).use(!opts.correctnewlines ? remarkBreaks : function () {}).use(CustomParsers.map(function (parser) {
36943
+ return (_unified$use$use$use$ = unified().use(remarkParse, opts.markdownOptions).use(opts.mdx ? remarkMdx : function () {}).use(remarkFrontmatter, ['yaml', 'toml']).data('settings', opts.settings).data('compatibilityMode', opts.compatibilityMode).data('alwaysThrow', opts.alwaysThrow).data('mdx', opts.mdx).use(!opts.correctnewlines ? remarkBreaks : function () {}).use(CustomParsers.map(function (parser) {
36819
36944
  var _parser$sanitize;
36820
36945
  return ((_parser$sanitize = parser.sanitize) === null || _parser$sanitize === void 0 ? void 0 : _parser$sanitize.call(parser, sanitize)) || parser;
36821
- })).use(transformers).use(remarkSlug).use(remarkDisableTokenizers, opts.disableTokenizers);
36946
+ }))).use.apply(_unified$use$use$use$, (0,toConsumableArray/* default */.Z)(remarkTransformers)).use(remarkSlug).use(remarkDisableTokenizers, opts.disableTokenizers);
36822
36947
  }
36823
36948
 
36824
36949
  /**
36825
36950
  * Full markdown to html processor
36826
36951
  */
36827
36952
  function htmlProcessor() {
36953
+ var _processor$use$use$us;
36828
36954
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
36829
36955
  var _setup3 = setup('', opts);
36830
36956
  var _setup4 = (0,slicedToArray/* default */.Z)(_setup3, 2);
@@ -36850,9 +36976,9 @@ function htmlProcessor() {
36850
36976
  * - sanitize and remove any disallowed attributes
36851
36977
  * - output the hast to a React vdom with our custom components
36852
36978
  */
36853
- return processor(opts).use(remarkRehype, {
36979
+ return (_processor$use$use$us = processor(opts).use(remarkRehype, {
36854
36980
  allowDangerousHtml: true
36855
- }).use(rehypeRaw).use(rehypeSanitize, sanitize);
36981
+ }).use(rehypeRaw).use(rehypeSanitize, sanitize)).use.apply(_processor$use$use$us, (0,toConsumableArray/* default */.Z)(rehypeTransformers));
36856
36982
  }
36857
36983
  function plain(text) {
36858
36984
  var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -36863,7 +36989,7 @@ function plain(text) {
36863
36989
  text = _setup6[0];
36864
36990
  opts = _setup6[1];
36865
36991
  var proc = htmlProcessor(opts).use(rehypeReact, {
36866
- createElement: React.createElement,
36992
+ createElement: createElement(opts),
36867
36993
  Fragment: React.Fragment,
36868
36994
  components: components
36869
36995
  });
@@ -36883,7 +37009,7 @@ var PinWrap = function PinWrap(_ref) {
36883
37009
 
36884
37010
  var reactComponents = function reactComponents(opts) {
36885
37011
  var components = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
36886
- return _objectSpread({
37012
+ return _objectSpread(_objectSpread({
36887
37013
  'html-block': HTMLBlock(opts),
36888
37014
  'rdme-callout': Callout,
36889
37015
  'readme-variable': Variable,
@@ -36900,11 +37026,12 @@ var reactComponents = function reactComponents(opts) {
36900
37026
  h6: Heading(6, opts),
36901
37027
  code: Code(opts),
36902
37028
  img: Image(opts),
36903
- style: Style(opts),
37029
+ style: Style(opts)
37030
+ }, opts.mdx ? {
36904
37031
  div: Div({
36905
37032
  'code-tabs': CodeTabs(opts)
36906
37033
  }, opts)
36907
- }, registerCustomComponents(components, opts.sanitize, opts.customComponentPrefix));
37034
+ } : {}), registerCustomComponents(components, opts.sanitize, opts.customComponentPrefix));
36908
37035
  };
36909
37036
  function reactProcessor() {
36910
37037
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -36912,11 +37039,14 @@ function reactProcessor() {
36912
37039
  var _setup7 = setup('', opts);
36913
37040
  var _setup8 = (0,slicedToArray/* default */.Z)(_setup7, 2);
36914
37041
  opts = _setup8[1];
36915
- return htmlProcessor(_objectSpread({}, opts)).use(sectionAnchorId).use(rehypeReact, {
36916
- createElement: React.createElement,
37042
+ var rdmdComponents = reactComponents(opts, components);
37043
+ var proc = htmlProcessor(_objectSpread({}, opts)).use(sectionAnchorId).use(rehypeReact, {
37044
+ createElement: createElement(opts),
36917
37045
  Fragment: React.Fragment,
36918
- components: reactComponents(opts, components)
37046
+ components: rdmdComponents
36919
37047
  });
37048
+ proc.components = rdmdComponents;
37049
+ return proc;
36920
37050
  }
36921
37051
  function react(content) {
36922
37052
  var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -36937,12 +37067,12 @@ function react(content) {
36937
37067
  var remarkPlugins = [[remarkFrontmatter, ['yaml', 'toml']], !opts.correctnewlines ? remarkBreaks : function () {}].concat((0,toConsumableArray/* default */.Z)(CustomParsers.map(function (parser) {
36938
37068
  var _parser$sanitize2;
36939
37069
  return ((_parser$sanitize2 = parser.sanitize) === null || _parser$sanitize2 === void 0 ? void 0 : _parser$sanitize2.call(parser, opts.sanitize)) || parser;
36940
- })), transformers, [remarkSlug, [remarkDisableTokenizers, opts.disableTokenizers]]);
37070
+ })), (0,toConsumableArray/* default */.Z)(remarkTransformers), [remarkSlug, [remarkDisableTokenizers, opts.disableTokenizers]]);
36941
37071
  return /*#__PURE__*/React.createElement(ErrorBoundary, {
36942
37072
  key: content
36943
37073
  }, /*#__PURE__*/React.createElement(Mdx, {
36944
37074
  components: reactComponents(opts, components),
36945
- rehypePlugins: [sectionAnchorId],
37075
+ rehypePlugins: [sectionAnchorId].concat((0,toConsumableArray/* default */.Z)(rehypeTransformers)),
36946
37076
  remarkPlugins: remarkPlugins
36947
37077
  }, content));
36948
37078
  }
package/dist/main.node.js CHANGED
@@ -7625,7 +7625,7 @@ function CreateCode(_ref2) {
7625
7625
  };
7626
7626
  }
7627
7627
  Code.propTypes = {
7628
- children: PropTypes.oneOf(PropTypes.arrayOf(PropTypes.string), PropTypes.string),
7628
+ children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.string]),
7629
7629
  className: PropTypes.string,
7630
7630
  copyButtons: PropTypes.bool,
7631
7631
  lang: PropTypes.string,
@@ -7724,7 +7724,7 @@ var CodeTabs = function CodeTabs(props) {
7724
7724
  }, children));
7725
7725
  };
7726
7726
  CodeTabs.propTypes = {
7727
- children: PropTypes.oneOf(PropTypes.arrayOf(PropTypes.any), PropTypes.object),
7727
+ children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.any), PropTypes.object]),
7728
7728
  theme: PropTypes.string
7729
7729
  };
7730
7730
  function CreateCodeTabs(_ref3) {
@@ -7776,7 +7776,7 @@ var Div = function Div(_ref) {
7776
7776
  return /*#__PURE__*/React.createElement("div", props);
7777
7777
  };
7778
7778
  Div.propTypes = {
7779
- children: PropTypes.oneOf(PropTypes.arrayOf(PropTypes.any), PropTypes.object),
7779
+ children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.any), PropTypes.object]),
7780
7780
  className: PropTypes.string,
7781
7781
  components: PropTypes.object,
7782
7782
  theme: PropTypes.string.isRequired
@@ -8460,6 +8460,36 @@ module.exports = React.createContext([]);
8460
8460
 
8461
8461
  /***/ }),
8462
8462
 
8463
+ /***/ 5894:
8464
+ /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8465
+
8466
+ var React = __webpack_require__(3634);
8467
+ var CreateCodeTabs = __webpack_require__(6553);
8468
+
8469
+ /*
8470
+ * To get around hast/html sanitation, we pass custom components through using
8471
+ * className's. Then we hijack `React.createElement` so we can render the associated component
8472
+ * instead. If we use a custom `Div` like we do with MDX, `remarkRehype`
8473
+ * inserts an extra root div, and that messes with our styles. Fun!
8474
+ */
8475
+
8476
+ var createElement = function createElement(opts) {
8477
+ return (
8478
+ // eslint-disable-next-line react/display-name
8479
+ function (type, props) {
8480
+ // eslint-disable-next-line react/prop-types
8481
+ var rdmdType = type === 'div' && (props === null || props === void 0 ? void 0 : props.className) === 'code-tabs' ? CreateCodeTabs(opts) : type;
8482
+ for (var _len = arguments.length, children = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
8483
+ children[_key - 2] = arguments[_key];
8484
+ }
8485
+ return React.createElement.apply(React, [rdmdType, props].concat(children));
8486
+ }
8487
+ );
8488
+ };
8489
+ module.exports = createElement;
8490
+
8491
+ /***/ }),
8492
+
8463
8493
  /***/ 1264:
8464
8494
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
8465
8495
 
@@ -8920,6 +8950,7 @@ var options = {
8920
8950
  },
8921
8951
  lazyImages: true,
8922
8952
  normalize: true,
8953
+ mdx: false,
8923
8954
  safeMode: false,
8924
8955
  settings: {
8925
8956
  position: false
@@ -9372,6 +9403,8 @@ module.exports = function YamlCompiler() {
9372
9403
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9373
9404
 
9374
9405
  var _slicedToArray = __webpack_require__(7424);
9406
+ var _require = __webpack_require__(2135),
9407
+ insertBlockTokenizerBefore = _require.insertBlockTokenizerBefore;
9375
9408
  var rgx = /^(#{1,6})(?!(?:#|\s))([^\n]+)\n/;
9376
9409
  function tokenizer(eat, value) {
9377
9410
  if (!rgx.test(value)) return true;
@@ -9388,11 +9421,11 @@ function tokenizer(eat, value) {
9388
9421
  });
9389
9422
  }
9390
9423
  function parser() {
9391
- var Parser = this.Parser;
9392
- var tokenizers = Parser.prototype.blockTokenizers;
9393
- var methods = Parser.prototype.blockMethods;
9394
- tokenizers.compactHeading = tokenizer;
9395
- methods.splice(methods.indexOf('newline'), 0, 'compactHeading');
9424
+ insertBlockTokenizerBefore.call(this, {
9425
+ name: 'compactHeading',
9426
+ before: 'atxHeading',
9427
+ tokenizer: tokenizer
9428
+ });
9396
9429
  }
9397
9430
  module.exports = parser;
9398
9431
  module.exports.sanitize = function (sanitizeSchema) {
@@ -9614,6 +9647,8 @@ var _setPrototypeOf = __webpack_require__(6015);
9614
9647
  var _slicedToArray = __webpack_require__(7424);
9615
9648
  function _wrapRegExp() { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, void 0, groups); }; var _super = RegExp.prototype, _groups = new WeakMap(); function BabelRegExp(re, flags, groups) { var _this = new RegExp(re, flags); return _groups.set(_this, groups || _groups.get(re)), _setPrototypeOf(_this, BabelRegExp.prototype); } function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { var i = g[name]; if ("number" == typeof i) groups[name] = result[i];else { for (var k = 0; void 0 === result[i[k]] && k + 1 < i.length;) { k++; } groups[name] = result[i[k]]; } return groups; }, Object.create(null)); } return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); return result && (result.groups = buildGroups(result, this)), result; }, BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if ("string" == typeof substitution) { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\$<([^>]+)>/g, function (_, name) { return "$" + groups[name]; })); } if ("function" == typeof substitution) { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = arguments; return "object" != _typeof(args[args.length - 1]) && (args = [].slice.call(args)).push(buildGroups(args, _this)), substitution.apply(this, args); }); } return _super[Symbol.replace].call(this, str, substitution); }, _wrapRegExp.apply(this, arguments); }
9616
9649
  var decode = __webpack_require__(7574);
9650
+ var _require = __webpack_require__(2135),
9651
+ insertBlockTokenizerBefore = _require.insertBlockTokenizerBefore;
9617
9652
  function tokenizer(eat, value) {
9618
9653
  // eslint-disable-next-line unicorn/no-unsafe-regex
9619
9654
  var TAB_BLOCK_RGXP = /^(?:(?:^|\n)```(?:(?!\n```)[\s\S])*\n```[^\S\n]*){2,}/g;
@@ -9676,11 +9711,11 @@ function tokenizer(eat, value) {
9676
9711
  });
9677
9712
  }
9678
9713
  function parser() {
9679
- var Parser = this.Parser;
9680
- var tokenizers = Parser.prototype.blockTokenizers;
9681
- var methods = Parser.prototype.blockMethods;
9682
- tokenizers.codeTabs = tokenizer;
9683
- methods.splice(methods.indexOf('indentedCode') - 1, 0, 'codeTabs');
9714
+ insertBlockTokenizerBefore.call(this, {
9715
+ name: 'codeTabs',
9716
+ before: 'indentedCode',
9717
+ tokenizer: tokenizer
9718
+ });
9684
9719
  }
9685
9720
  module.exports = parser;
9686
9721
  module.exports.sanitize = function (sanitizeSchema) {
@@ -9695,6 +9730,8 @@ module.exports.sanitize = function (sanitizeSchema) {
9695
9730
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9696
9731
 
9697
9732
  var _slicedToArray = __webpack_require__(7424);
9733
+ var _require = __webpack_require__(2135),
9734
+ insertBlockTokenizerBefore = _require.insertBlockTokenizerBefore;
9698
9735
  var rgx = /^\[([^\]]*)\]\((\S*) ["'](@\w+)"\)/;
9699
9736
  function tokenizer(eat, value) {
9700
9737
  if (!rgx.test(value)) return true;
@@ -9734,11 +9771,11 @@ function tokenizer(eat, value) {
9734
9771
  });
9735
9772
  }
9736
9773
  function parser() {
9737
- var Parser = this.Parser;
9738
- var tokenizers = Parser.prototype.blockTokenizers;
9739
- var methods = Parser.prototype.blockMethods;
9740
- tokenizers.embed = tokenizer;
9741
- methods.splice(methods.indexOf('newline'), 0, 'embed');
9774
+ insertBlockTokenizerBefore.call(this, {
9775
+ name: 'embed',
9776
+ before: 'blankLine',
9777
+ tokenizer: tokenizer
9778
+ });
9742
9779
  }
9743
9780
  module.exports = parser;
9744
9781
  module.exports.sanitize = function (sanitizeSchema) {
@@ -9753,6 +9790,8 @@ module.exports.sanitize = function (sanitizeSchema) {
9753
9790
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9754
9791
 
9755
9792
  var Emoji = (__webpack_require__(368)/* .emoji */ .r);
9793
+ var _require = __webpack_require__(2135),
9794
+ insertInlineTokenizerBefore = _require.insertInlineTokenizerBefore;
9756
9795
  var emojis = new Emoji();
9757
9796
  var colon = ':';
9758
9797
  function tokenize(eat, value, silent) {
@@ -9799,11 +9838,11 @@ function locate(value, fromIndex) {
9799
9838
  }
9800
9839
  tokenize.locator = locate;
9801
9840
  function parser() {
9802
- var Parser = this.Parser;
9803
- var tokenizers = Parser.prototype.inlineTokenizers;
9804
- var methods = Parser.prototype.inlineMethods;
9805
- tokenizers.gemoji = tokenize;
9806
- methods.splice(methods.indexOf('text'), 0, 'gemoji');
9841
+ insertInlineTokenizerBefore.call(this, {
9842
+ name: 'gemoji',
9843
+ before: 'text',
9844
+ tokenizer: tokenize
9845
+ });
9807
9846
  }
9808
9847
  module.exports = parser;
9809
9848
  module.exports.sanitize = function (sanitizeSchema) {
@@ -9944,6 +9983,8 @@ var _slicedToArray = __webpack_require__(7424);
9944
9983
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9945
9984
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9946
9985
  /* eslint-disable consistent-return */
9986
+ var _require = __webpack_require__(2135),
9987
+ insertBlockTokenizerBefore = _require.insertBlockTokenizerBefore;
9947
9988
  var RGXP = /^\[block:(.*)\]([^]+?)\[\/block\]/;
9948
9989
  var WrapPinnedBlocks = function WrapPinnedBlocks(node, json) {
9949
9990
  if (!json.sidebar) return node;
@@ -10227,15 +10268,16 @@ function tokenize(_ref) {
10227
10268
  };
10228
10269
  }
10229
10270
  function parser() {
10230
- var Parser = this.Parser;
10231
- var tokenizers = Parser.prototype.blockTokenizers;
10232
- var methods = Parser.prototype.blockMethods;
10233
- tokenizers.magicBlocks = tokenize({
10271
+ var tokenizer = tokenize({
10234
10272
  compatibilityMode: this.data('compatibilityMode'),
10235
10273
  safeMode: this.data('safeMode'),
10236
10274
  alwaysThrow: this.data('alwaysThrow')
10237
10275
  });
10238
- methods.splice(methods.indexOf('newline'), 0, 'magicBlocks');
10276
+ insertBlockTokenizerBefore.call(this, {
10277
+ name: 'magicBlocks',
10278
+ before: 'blankLine',
10279
+ tokenizer: tokenizer
10280
+ });
10239
10281
  }
10240
10282
  module.exports = parser;
10241
10283
  module.exports.sanitize = function (sanitizeSchema) {
@@ -10251,11 +10293,54 @@ module.exports.imgSizeByWidth = imgSizeByWidth;
10251
10293
 
10252
10294
  /***/ }),
10253
10295
 
10296
+ /***/ 2135:
10297
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
10298
+
10299
+ "use strict";
10300
+ __webpack_require__.r(__webpack_exports__);
10301
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
10302
+ /* harmony export */ "insertBlockTokenizerBefore": () => (/* binding */ insertBlockTokenizerBefore),
10303
+ /* harmony export */ "insertInlineTokenizerBefore": () => (/* binding */ insertInlineTokenizerBefore)
10304
+ /* harmony export */ });
10305
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8416);
10306
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
10307
+
10308
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10309
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10310
+ function insertTokenizerBefore(_ref) {
10311
+ var name = _ref.name,
10312
+ before = _ref.before,
10313
+ tokenizer = _ref.tokenizer,
10314
+ _ref$type = _ref.type,
10315
+ type = _ref$type === void 0 ? 'block' : _ref$type;
10316
+ var Parser = this.Parser;
10317
+ var tokenizers = Parser.prototype["".concat(type, "Tokenizers")];
10318
+ var methods = Parser.prototype["".concat(type, "Methods")];
10319
+ var index = methods.indexOf(before);
10320
+ if (index === -1) {
10321
+ throw new Error("The '".concat(before, "' tokenizer does not exist!"));
10322
+ }
10323
+ tokenizers[name] = tokenizer;
10324
+ methods.splice(index, 0, name);
10325
+ }
10326
+ function insertBlockTokenizerBefore(args) {
10327
+ insertTokenizerBefore.call(this, args);
10328
+ }
10329
+ function insertInlineTokenizerBefore(args) {
10330
+ return insertTokenizerBefore.call(this, _objectSpread(_objectSpread({}, args), {}, {
10331
+ type: 'inline'
10332
+ }));
10333
+ }
10334
+
10335
+ /***/ }),
10336
+
10254
10337
  /***/ 2697:
10255
10338
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10256
10339
 
10257
10340
  var _require = __webpack_require__(1882),
10258
10341
  VARIABLE_REGEXP = _require.VARIABLE_REGEXP;
10342
+ var _require2 = __webpack_require__(2135),
10343
+ insertInlineTokenizerBefore = _require2.insertInlineTokenizerBefore;
10259
10344
  function tokenizeVariable(eat, value, silent) {
10260
10345
  // Modifies the regular expression to match from
10261
10346
  // the start of the line
@@ -10299,11 +10384,11 @@ function locate(value, fromIndex) {
10299
10384
  }
10300
10385
  tokenizeVariable.locator = locate;
10301
10386
  function parser() {
10302
- var Parser = this.Parser;
10303
- var tokenizers = Parser.prototype.inlineTokenizers;
10304
- var methods = Parser.prototype.inlineMethods;
10305
- tokenizers.variable = tokenizeVariable;
10306
- methods.splice(methods.indexOf('text'), 0, 'variable');
10387
+ insertInlineTokenizerBefore.call(this, {
10388
+ name: 'variable',
10389
+ before: 'text',
10390
+ tokenizer: tokenizeVariable
10391
+ });
10307
10392
  }
10308
10393
  module.exports = parser;
10309
10394
  module.exports.sanitize = function (sanitizeSchema) {
@@ -10453,9 +10538,11 @@ function transformer(ast) {
10453
10538
  return [_objectSpread(_objectSpread({}, node), {}, {
10454
10539
  children: [_objectSpread(_objectSpread({}, node.children[0]), {}, {
10455
10540
  value: valuesToString(header)
10456
- }), _objectSpread(_objectSpread({}, node.children[1]), {}, {
10541
+ }), body ? _objectSpread(_objectSpread({}, node.children[1]), {}, {
10457
10542
  value: valuesToString(body)
10458
- })]
10543
+ }) : null].filter(function (x) {
10544
+ return x;
10545
+ })
10459
10546
  })];
10460
10547
  }
10461
10548
  return [node];
@@ -10468,7 +10555,7 @@ module.exports.tableFlattening = transformer;
10468
10555
 
10469
10556
  /***/ }),
10470
10557
 
10471
- /***/ 6676:
10558
+ /***/ 2442:
10472
10559
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
10473
10560
 
10474
10561
  "use strict";
@@ -10477,7 +10564,8 @@ __webpack_require__.r(__webpack_exports__);
10477
10564
 
10478
10565
  // EXPORTS
10479
10566
  __webpack_require__.d(__webpack_exports__, {
10480
- "singleCodeTabs": () => (/* reexport */ single_code_tabs)
10567
+ "rehypeTransformers": () => (/* binding */ rehypeTransformers),
10568
+ "remarkTransformers": () => (/* binding */ remarkTransformers)
10481
10569
  });
10482
10570
 
10483
10571
  ;// CONCATENATED MODULE: ./node_modules/unist-util-visit/node_modules/unist-util-is/index.js
@@ -10967,7 +11055,7 @@ const visit =
10967
11055
 
10968
11056
  var singleCodeTabs = function singleCodeTabs() {
10969
11057
  return function (tree) {
10970
- visit(tree, function (node, index, parent) {
11058
+ return visit(tree, function (node, index, parent) {
10971
11059
  if (node.type === 'code' && (node.lang || node.meta) && parent.type !== 'code-tabs') {
10972
11060
  Object.assign(node, {
10973
11061
  className: 'tab-panel',
@@ -10991,14 +11079,48 @@ var singleCodeTabs = function singleCodeTabs() {
10991
11079
  children: [node]
10992
11080
  };
10993
11081
  }
11082
+ return tree;
10994
11083
  });
10995
- return tree;
10996
11084
  };
10997
11085
  };
10998
11086
  /* harmony default export */ const single_code_tabs = (singleCodeTabs);
11087
+ ;// CONCATENATED MODULE: ./processor/transform/table-cell-inline-code.js
11088
+
11089
+ var rxEscapedPipe = /\\\|/g;
11090
+
11091
+ /**
11092
+ * HAST Transformer that finds all inline code nodes within table cells and
11093
+ * unescapes any escaped pipe chars so that the editor outputs them without
11094
+ * escape chars.
11095
+ *
11096
+ * This appears to be a bug with remark-parse < ~8
11097
+ */
11098
+ var tableCellInlineCode = function tableCellInlineCode() {
11099
+ return function (tree) {
11100
+ visit(tree, [{
11101
+ tagName: 'th'
11102
+ }, {
11103
+ tagName: 'td'
11104
+ }], function (tableCellNode) {
11105
+ visit(tableCellNode, {
11106
+ tagName: 'code'
11107
+ }, function (inlineCodeNode) {
11108
+ var textNode = inlineCodeNode.children[0];
11109
+ if (rxEscapedPipe.test(textNode.value)) {
11110
+ textNode.value = textNode.value.replace(rxEscapedPipe, '|');
11111
+ }
11112
+ });
11113
+ return SKIP;
11114
+ });
11115
+ };
11116
+ };
11117
+ /* harmony default export */ const table_cell_inline_code = (tableCellInlineCode);
10999
11118
  ;// CONCATENATED MODULE: ./processor/transform/index.js
11000
11119
 
11001
11120
 
11121
+ var remarkTransformers = [single_code_tabs];
11122
+ var rehypeTransformers = [table_cell_inline_code];
11123
+
11002
11124
  /***/ }),
11003
11125
 
11004
11126
  /***/ 8229:
@@ -34408,6 +34530,7 @@ var Components = __webpack_require__(3354);
34408
34530
  var _require3 = __webpack_require__(8447),
34409
34531
  getHref = _require3.getHref;
34410
34532
  var BaseUrlContext = __webpack_require__(6785);
34533
+ var createElement = __webpack_require__(5894);
34411
34534
  var CustomParsers = Object.values(__webpack_require__(8521));
34412
34535
  var customCompilers = Object.values(__webpack_require__(9647));
34413
34536
  var registerCustomComponents = __webpack_require__(1264);
@@ -34419,7 +34542,9 @@ var _require5 = __webpack_require__(8160),
34419
34542
  var toPlainText = __webpack_require__(4792);
34420
34543
  var sectionAnchorId = __webpack_require__(9620);
34421
34544
  var tableFlattening = __webpack_require__(4625);
34422
- var transformers = Object.values(__webpack_require__(6676));
34545
+ var _require6 = __webpack_require__(2442),
34546
+ remarkTransformers = _require6.remarkTransformers,
34547
+ rehypeTransformers = _require6.rehypeTransformers;
34423
34548
  var createSchema = __webpack_require__(8229);
34424
34549
  var Anchor = Components.Anchor,
34425
34550
  Callout = Components.Callout,
@@ -34472,22 +34597,24 @@ var utils = {
34472
34597
  * Core markdown to mdast processor
34473
34598
  */
34474
34599
  function processor() {
34600
+ var _unified$use$use$use$;
34475
34601
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
34476
34602
  var _setup = setup('', opts);
34477
34603
  var _setup2 = slicedToArray_default()(_setup, 2);
34478
34604
  opts = _setup2[1];
34479
34605
  var _opts = opts,
34480
34606
  sanitize = _opts.sanitize;
34481
- return unified().use(remarkParse, opts.markdownOptions).use(opts.mdx ? remarkMdx : function () {}).use(remarkFrontmatter, ['yaml', 'toml']).data('settings', opts.settings).data('compatibilityMode', opts.compatibilityMode).data('alwaysThrow', opts.alwaysThrow).use(!opts.correctnewlines ? remarkBreaks : function () {}).use(CustomParsers.map(function (parser) {
34607
+ return (_unified$use$use$use$ = unified().use(remarkParse, opts.markdownOptions).use(opts.mdx ? remarkMdx : function () {}).use(remarkFrontmatter, ['yaml', 'toml']).data('settings', opts.settings).data('compatibilityMode', opts.compatibilityMode).data('alwaysThrow', opts.alwaysThrow).data('mdx', opts.mdx).use(!opts.correctnewlines ? remarkBreaks : function () {}).use(CustomParsers.map(function (parser) {
34482
34608
  var _parser$sanitize;
34483
34609
  return ((_parser$sanitize = parser.sanitize) === null || _parser$sanitize === void 0 ? void 0 : _parser$sanitize.call(parser, sanitize)) || parser;
34484
- })).use(transformers).use(remarkSlug).use(remarkDisableTokenizers, opts.disableTokenizers);
34610
+ }))).use.apply(_unified$use$use$use$, toConsumableArray_default()(remarkTransformers)).use(remarkSlug).use(remarkDisableTokenizers, opts.disableTokenizers);
34485
34611
  }
34486
34612
 
34487
34613
  /**
34488
34614
  * Full markdown to html processor
34489
34615
  */
34490
34616
  function htmlProcessor() {
34617
+ var _processor$use$use$us;
34491
34618
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
34492
34619
  var _setup3 = setup('', opts);
34493
34620
  var _setup4 = slicedToArray_default()(_setup3, 2);
@@ -34513,9 +34640,9 @@ function htmlProcessor() {
34513
34640
  * - sanitize and remove any disallowed attributes
34514
34641
  * - output the hast to a React vdom with our custom components
34515
34642
  */
34516
- return processor(opts).use(remarkRehype, {
34643
+ return (_processor$use$use$us = processor(opts).use(remarkRehype, {
34517
34644
  allowDangerousHtml: true
34518
- }).use(rehypeRaw).use(rehypeSanitize, sanitize);
34645
+ }).use(rehypeRaw).use(rehypeSanitize, sanitize)).use.apply(_processor$use$use$us, toConsumableArray_default()(rehypeTransformers));
34519
34646
  }
34520
34647
  function plain(text) {
34521
34648
  var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -34526,7 +34653,7 @@ function plain(text) {
34526
34653
  text = _setup6[0];
34527
34654
  opts = _setup6[1];
34528
34655
  var proc = htmlProcessor(opts).use(rehypeReact, {
34529
- createElement: React.createElement,
34656
+ createElement: createElement(opts),
34530
34657
  Fragment: React.Fragment,
34531
34658
  components: components
34532
34659
  });
@@ -34546,7 +34673,7 @@ var PinWrap = function PinWrap(_ref) {
34546
34673
 
34547
34674
  var reactComponents = function reactComponents(opts) {
34548
34675
  var components = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
34549
- return _objectSpread({
34676
+ return _objectSpread(_objectSpread({
34550
34677
  'html-block': HTMLBlock(opts),
34551
34678
  'rdme-callout': Callout,
34552
34679
  'readme-variable': Variable,
@@ -34563,11 +34690,12 @@ var reactComponents = function reactComponents(opts) {
34563
34690
  h6: Heading(6, opts),
34564
34691
  code: Code(opts),
34565
34692
  img: Image(opts),
34566
- style: Style(opts),
34693
+ style: Style(opts)
34694
+ }, opts.mdx ? {
34567
34695
  div: Div({
34568
34696
  'code-tabs': CodeTabs(opts)
34569
34697
  }, opts)
34570
- }, registerCustomComponents(components, opts.sanitize, opts.customComponentPrefix));
34698
+ } : {}), registerCustomComponents(components, opts.sanitize, opts.customComponentPrefix));
34571
34699
  };
34572
34700
  function reactProcessor() {
34573
34701
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -34575,11 +34703,14 @@ function reactProcessor() {
34575
34703
  var _setup7 = setup('', opts);
34576
34704
  var _setup8 = slicedToArray_default()(_setup7, 2);
34577
34705
  opts = _setup8[1];
34578
- return htmlProcessor(_objectSpread({}, opts)).use(sectionAnchorId).use(rehypeReact, {
34579
- createElement: React.createElement,
34706
+ var rdmdComponents = reactComponents(opts, components);
34707
+ var proc = htmlProcessor(_objectSpread({}, opts)).use(sectionAnchorId).use(rehypeReact, {
34708
+ createElement: createElement(opts),
34580
34709
  Fragment: React.Fragment,
34581
- components: reactComponents(opts, components)
34710
+ components: rdmdComponents
34582
34711
  });
34712
+ proc.components = rdmdComponents;
34713
+ return proc;
34583
34714
  }
34584
34715
  function react(content) {
34585
34716
  var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -34600,12 +34731,12 @@ function react(content) {
34600
34731
  var remarkPlugins = [[remarkFrontmatter, ['yaml', 'toml']], !opts.correctnewlines ? remarkBreaks : function () {}].concat(toConsumableArray_default()(CustomParsers.map(function (parser) {
34601
34732
  var _parser$sanitize2;
34602
34733
  return ((_parser$sanitize2 = parser.sanitize) === null || _parser$sanitize2 === void 0 ? void 0 : _parser$sanitize2.call(parser, opts.sanitize)) || parser;
34603
- })), transformers, [remarkSlug, [remarkDisableTokenizers, opts.disableTokenizers]]);
34734
+ })), toConsumableArray_default()(remarkTransformers), [remarkSlug, [remarkDisableTokenizers, opts.disableTokenizers]]);
34604
34735
  return /*#__PURE__*/React.createElement(ErrorBoundary, {
34605
34736
  key: content
34606
34737
  }, /*#__PURE__*/React.createElement(Mdx, {
34607
34738
  components: reactComponents(opts, components),
34608
- rehypePlugins: [sectionAnchorId],
34739
+ rehypePlugins: [sectionAnchorId].concat(toConsumableArray_default()(rehypeTransformers)),
34609
34740
  remarkPlugins: remarkPlugins
34610
34741
  }, content));
34611
34742
  }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@readme/markdown",
3
3
  "description": "ReadMe's React-based Markdown parser",
4
4
  "author": "Rafe Goldberg <rafe@readme.io>",
5
- "version": "6.66.0-beta.7",
5
+ "version": "6.67.0-beta.1",
6
6
  "main": "dist/main.node.js",
7
7
  "browser": "dist/main.js",
8
8
  "files": [