From 844f625298c4a4bffa329dcfa36b719012db9f70 Mon Sep 17 00:00:00 2001 From: Clement Desmidt Date: Fri, 4 Mar 2022 13:07:27 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=92=84=20Am=C3=A9liore=20l'affichage=20et?= =?UTF-8?q?=20certaines=20actions?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fait fonctionner la suppression d'une page Fait fonctionner la pagination Fait fonctionner mieux le formulaire Fait fonctionner le markdown --- public/js/app.js | 77744 ++++++++++++++++++++++- resources/js/components/pages/App.tsx | 30 +- resources/js/components/pages/Form.tsx | 68 +- resources/js/components/pages/List.tsx | 47 +- resources/js/components/pages/Page.tsx | 27 +- 5 files changed, 77671 insertions(+), 245 deletions(-) diff --git a/public/js/app.js b/public/js/app.js index 3ec04ae..bc60e16 100644 --- a/public/js/app.js +++ b/public/js/app.js @@ -2056,6 +2056,73 @@ var weakMemoize = function weakMemoize(func) { /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (weakMemoize); +/***/ }), + +/***/ "./node_modules/@mapbox/rehype-prism/index.js": +/*!****************************************************!*\ + !*** ./node_modules/@mapbox/rehype-prism/index.js ***! + \****************************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +const visit = __webpack_require__(/*! unist-util-visit */ "./node_modules/unist-util-visit/index.js"); +const nodeToString = __webpack_require__(/*! hast-util-to-string */ "./node_modules/hast-util-to-string/index.js"); +const refractor = __webpack_require__(/*! refractor */ "./node_modules/refractor/index.js"); + +module.exports = (options) => { + options = options || {}; + + if (options.alias) { + refractor.alias(options.alias); + } + + return (tree) => { + visit(tree, 'element', visitor); + }; + + function visitor(node, index, parent) { + if (!parent || parent.tagName !== 'pre' || node.tagName !== 'code') { + return; + } + + const lang = getLanguage(node); + + if (lang === null) { + return; + } + + let result; + try { + parent.properties.className = (parent.properties.className || []).concat( + 'language-' + lang + ); + result = refractor.highlight(nodeToString(node), lang); + } catch (err) { + if (options.ignoreMissing && /Unknown language/.test(err.message)) { + return; + } + throw err; + } + + node.children = result; + } +}; + +function getLanguage(node) { + const className = node.properties.className || []; + + for (const classListItem of className) { + if (classListItem.slice(0, 9) === 'language-') { + return classListItem.slice(9).toLowerCase(); + } + } + + return null; +} + + /***/ }), /***/ "./node_modules/@mui/base/BackdropUnstyled/BackdropUnstyled.js": @@ -17734,6 +17801,203 @@ const selectClasses = (0,_mui_base__WEBPACK_IMPORTED_MODULE_1__["default"])('Mui /***/ }), +/***/ "./node_modules/@mui/material/Stack/Stack.js": +/*!***************************************************!*\ + !*** ./node_modules/@mui/material/Stack/Stack.js ***! + \***************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "style": () => (/* binding */ style), +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutPropertiesLoose */ "./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js"); +/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"); +/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_10__); +/* harmony import */ var _mui_system__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @mui/system */ "./node_modules/@mui/system/esm/breakpoints.js"); +/* harmony import */ var _mui_system__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @mui/system */ "./node_modules/@mui/system/esm/spacing.js"); +/* harmony import */ var _mui_system__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @mui/system */ "./node_modules/@mui/system/esm/styleFunctionSx/extendSxProp.js"); +/* harmony import */ var _mui_utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @mui/utils */ "./node_modules/@mui/utils/esm/deepmerge.js"); +/* harmony import */ var _styles_styled__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../styles/styled */ "./node_modules/@mui/material/styles/styled.js"); +/* harmony import */ var _styles_useThemeProps__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../styles/useThemeProps */ "./node_modules/@mui/material/styles/useThemeProps.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + +const _excluded = ["component", "direction", "spacing", "divider", "children"]; + + + + + + +/** + * Return an array with the separator React element interspersed between + * each React node of the input children. + * + * > joinChildren([1,2,3], 0) + * [1,0,2,0,3] + */ + + + +function joinChildren(children, separator) { + const childrenArray = react__WEBPACK_IMPORTED_MODULE_2__.Children.toArray(children).filter(Boolean); + return childrenArray.reduce((output, child, index) => { + output.push(child); + + if (index < childrenArray.length - 1) { + output.push( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.cloneElement(separator, { + key: `separator-${index}` + })); + } + + return output; + }, []); +} + +const getSideFromDirection = direction => { + return { + row: 'Left', + 'row-reverse': 'Right', + column: 'Top', + 'column-reverse': 'Bottom' + }[direction]; +}; + +const style = ({ + ownerState, + theme +}) => { + let styles = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({ + display: 'flex' + }, (0,_mui_system__WEBPACK_IMPORTED_MODULE_4__.handleBreakpoints)({ + theme + }, (0,_mui_system__WEBPACK_IMPORTED_MODULE_4__.resolveBreakpointValues)({ + values: ownerState.direction, + breakpoints: theme.breakpoints.values + }), propValue => ({ + flexDirection: propValue + }))); + + if (ownerState.spacing) { + const transformer = (0,_mui_system__WEBPACK_IMPORTED_MODULE_5__.createUnarySpacing)(theme); + const base = Object.keys(theme.breakpoints.values).reduce((acc, breakpoint) => { + if (ownerState.spacing[breakpoint] != null || ownerState.direction[breakpoint] != null) { + acc[breakpoint] = true; + } + + return acc; + }, {}); + const directionValues = (0,_mui_system__WEBPACK_IMPORTED_MODULE_4__.resolveBreakpointValues)({ + values: ownerState.direction, + base + }); + const spacingValues = (0,_mui_system__WEBPACK_IMPORTED_MODULE_4__.resolveBreakpointValues)({ + values: ownerState.spacing, + base + }); + + const styleFromPropValue = (propValue, breakpoint) => { + return { + '& > :not(style) + :not(style)': { + margin: 0, + [`margin${getSideFromDirection(breakpoint ? directionValues[breakpoint] : ownerState.direction)}`]: (0,_mui_system__WEBPACK_IMPORTED_MODULE_5__.getValue)(transformer, propValue) + } + }; + }; + + styles = (0,_mui_utils__WEBPACK_IMPORTED_MODULE_6__["default"])(styles, (0,_mui_system__WEBPACK_IMPORTED_MODULE_4__.handleBreakpoints)({ + theme + }, spacingValues, styleFromPropValue)); + } + + return styles; +}; +const StackRoot = (0,_styles_styled__WEBPACK_IMPORTED_MODULE_7__["default"])('div', { + name: 'MuiStack', + slot: 'Root', + overridesResolver: (props, styles) => { + return [styles.root]; + } +})(style); +const Stack = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.forwardRef(function Stack(inProps, ref) { + const themeProps = (0,_styles_useThemeProps__WEBPACK_IMPORTED_MODULE_8__["default"])({ + props: inProps, + name: 'MuiStack' + }); + const props = (0,_mui_system__WEBPACK_IMPORTED_MODULE_9__["default"])(themeProps); + + const { + component = 'div', + direction = 'column', + spacing = 0, + divider, + children + } = props, + other = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(props, _excluded); + + const ownerState = { + direction, + spacing + }; + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(StackRoot, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({ + as: component, + ownerState: ownerState, + ref: ref + }, other, { + children: divider ? joinChildren(children, divider) : children + })); +}); + true ? Stack.propTypes +/* remove-proptypes */ += { + // ----------------------------- Warning -------------------------------- + // | These PropTypes are generated from the TypeScript type definitions | + // | To update them edit the d.ts file and run "yarn proptypes" | + // ---------------------------------------------------------------------- + + /** + * The content of the component. + */ + children: (prop_types__WEBPACK_IMPORTED_MODULE_10___default().node), + + /** + * The component used for the root node. + * Either a string to use a HTML element or a component. + */ + component: (prop_types__WEBPACK_IMPORTED_MODULE_10___default().elementType), + + /** + * Defines the `flex-direction` style property. + * It is applied for all screen sizes. + * @default 'column' + */ + direction: prop_types__WEBPACK_IMPORTED_MODULE_10___default().oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_10___default().oneOf(['column-reverse', 'column', 'row-reverse', 'row']), prop_types__WEBPACK_IMPORTED_MODULE_10___default().arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_10___default().oneOf(['column-reverse', 'column', 'row-reverse', 'row'])), (prop_types__WEBPACK_IMPORTED_MODULE_10___default().object)]), + + /** + * Add an element between each child. + */ + divider: (prop_types__WEBPACK_IMPORTED_MODULE_10___default().node), + + /** + * Defines the space between immediate children. + * @default 0 + */ + spacing: prop_types__WEBPACK_IMPORTED_MODULE_10___default().oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_10___default().arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_10___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_10___default().number), (prop_types__WEBPACK_IMPORTED_MODULE_10___default().string)])), (prop_types__WEBPACK_IMPORTED_MODULE_10___default().number), (prop_types__WEBPACK_IMPORTED_MODULE_10___default().object), (prop_types__WEBPACK_IMPORTED_MODULE_10___default().string)]), + + /** + * The system prop, which allows defining system overrides as well as additional CSS styles. + */ + sx: prop_types__WEBPACK_IMPORTED_MODULE_10___default().oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_10___default().arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_10___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_10___default().func), (prop_types__WEBPACK_IMPORTED_MODULE_10___default().object), (prop_types__WEBPACK_IMPORTED_MODULE_10___default().bool)])), (prop_types__WEBPACK_IMPORTED_MODULE_10___default().func), (prop_types__WEBPACK_IMPORTED_MODULE_10___default().object)]) +} : 0; +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Stack); + +/***/ }), + /***/ "./node_modules/@mui/material/SvgIcon/SvgIcon.js": /*!*******************************************************!*\ !*** ./node_modules/@mui/material/SvgIcon/SvgIcon.js ***! @@ -27562,6 +27826,3102 @@ function withinMaxClamp(min, value, max) { /***/ }), +/***/ "./node_modules/@uiw/copy-to-clipboard/dist/copy-to-clipboard.umd.js": +/*!***************************************************************************!*\ + !*** ./node_modules/@uiw/copy-to-clipboard/dist/copy-to-clipboard.umd.js ***! + \***************************************************************************/ +/***/ (function(module) { + +/*! + * @uiw/copy-to-clipboard v1.0.12 + * Copy to clipboard. + * + * Copyright (c) 2021 Kenny Wang + * https://github.com/uiwjs/copy-to-clipboard.git + * + * Licensed under the MIT license. + */ + +(function (global, factory) { + true ? module.exports = factory() : + 0; +}(this, (function () { 'use strict'; + + /** + * *** This styling is an extra step which is likely not required. *** + * https://github.com/w3c/clipboard-apis/blob/master/explainer.adoc#writing-to-the-clipboard + * + * Why is it here? To ensure: + * + * 1. the element is able to have focus and selection. + * 2. if element was to flash render it has minimal visual impact. + * 3. less flakyness with selection and copying which **might** occur if + * the textarea element is not visible. + * + * The likelihood is the element won't even render, not even a flash, + * so some of these are just precautions. However in IE the element + * is visible whilst the popup box asking the user for permission for + * the web page to copy to the clipboard. + * + * Place in top-left corner of screen regardless of scroll position. + * + * @typedef CopyTextToClipboard + * @property {(text: string, method?: (isCopy: boolean) => void) => void} void + * @returns {void} + * + * @param {string} text + * @param {CopyTextToClipboard} cb + */ + function copyTextToClipboard(text, cb) { + const el = document.createElement('textarea'); + el.value = text; + el.setAttribute('readonly', ''); + el.style = { + position: 'absolute', + left: '-9999px', + }; + document.body.appendChild(el); + const selected = document.getSelection().rangeCount > 0 ? document.getSelection().getRangeAt(0) : false; + el.select(); + let isCopy = false; + try { + const successful = document.execCommand('copy'); + isCopy = !!successful; + } catch (err) { + isCopy = false; + } + document.body.removeChild(el); + if (selected && document.getSelection) { + document.getSelection().removeAllRanges(); + document.getSelection().addRange(selected); + } + cb && cb(isCopy); + } + + return copyTextToClipboard; + +}))); +//# sourceMappingURL=copy-to-clipboard.umd.js.map + + +/***/ }), + +/***/ "./node_modules/@uiw/react-markdown-preview/esm/index.js": +/*!***************************************************************!*\ + !*** ./node_modules/@uiw/react-markdown-preview/esm/index.js ***! + \***************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ "./node_modules/@uiw/react-markdown-preview/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js"); +/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@uiw/react-markdown-preview/node_modules/@babel/runtime/helpers/esm/extends.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var react_markdown__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! react-markdown */ "./node_modules/react-markdown/lib/react-markdown.js"); +/* harmony import */ var remark_gfm__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! remark-gfm */ "./node_modules/remark-gfm/index.js"); +/* harmony import */ var rehype_slug__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! rehype-slug */ "./node_modules/rehype-slug/index.js"); +/* harmony import */ var rehype_autolink_headings__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! rehype-autolink-headings */ "./node_modules/rehype-autolink-headings/lib/index.js"); +/* harmony import */ var rehype_raw__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! rehype-raw */ "./node_modules/rehype-raw/index.js"); +/* harmony import */ var rehype_attr__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! rehype-attr */ "./node_modules/rehype-attr/lib/index.js"); +/* harmony import */ var _mapbox_rehype_prism__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @mapbox/rehype-prism */ "./node_modules/@mapbox/rehype-prism/index.js"); +/* harmony import */ var _mapbox_rehype_prism__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_mapbox_rehype_prism__WEBPACK_IMPORTED_MODULE_3__); +/* harmony import */ var rehype_rewrite__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! rehype-rewrite */ "./node_modules/rehype-rewrite/lib/index.js"); +/* harmony import */ var _nodes_octiconLink__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./nodes/octiconLink */ "./node_modules/@uiw/react-markdown-preview/esm/nodes/octiconLink.js"); +/* harmony import */ var _nodes_copy__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./nodes/copy */ "./node_modules/@uiw/react-markdown-preview/esm/nodes/copy.js"); +/* harmony import */ var _styles_markdown_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./styles/markdown.css */ "./node_modules/@uiw/react-markdown-preview/esm/styles/markdown.css"); +/* harmony import */ var _styles_markdowncolor_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./styles/markdowncolor.css */ "./node_modules/@uiw/react-markdown-preview/esm/styles/markdowncolor.css"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + +var _excluded = ["prefixCls", "className", "source", "style", "onScroll", "onMouseOver", "warpperElement"]; + + + + + + + // @ts-ignore + + + + + + + + + +var rehypeRewriteHandle = (node, index, parent) => { + if (node.type === 'element' && parent && parent.type === 'root' && /h(1|2|3|4|5|6)/.test(node.tagName)) { + var child = node.children && node.children[0]; + + if (child && child.properties && child.properties.ariaHidden === 'true') { + child.properties = (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({ + class: 'anchor' + }, child.properties); + child.children = [_nodes_octiconLink__WEBPACK_IMPORTED_MODULE_4__.octiconLink]; + } + } + + if (node.type === 'element' && node.tagName === 'pre') { + var code = getCodeStr(node.children); + node.children.push((0,_nodes_copy__WEBPACK_IMPORTED_MODULE_5__.copyElement)(code)); + } +}; + +var getCodeStr = function getCodeStr(data, code) { + if (data === void 0) { + data = []; + } + + if (code === void 0) { + code = ''; + } + + data.forEach(node => { + if (node.type === 'text') { + code += node.value; + } else if (node.type === 'element' && node.children && Array.isArray(node.children)) { + code += getCodeStr(node.children); + } + }); + return code; +}; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.forwardRef((props, ref) => { + var { + prefixCls = 'wmde-markdown wmde-markdown-color', + className, + source, + style, + onScroll, + onMouseOver, + warpperElement = {} + } = props, + other = (0,_babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__["default"])(props, _excluded); + + var mdp = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createRef(); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useImperativeHandle)(ref, () => (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, props, { + mdp + }), [mdp, props]); + var cls = (prefixCls || '') + " " + (className || ''); + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("div", (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({ + ref: mdp, + onScroll: onScroll, + onMouseOver: onMouseOver + }, warpperElement, { + className: cls, + style: style, + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(react_markdown__WEBPACK_IMPORTED_MODULE_9__.ReactMarkdown, (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__["default"])({}, other, { + rehypePlugins: [[(_mapbox_rehype_prism__WEBPACK_IMPORTED_MODULE_3___default()), { + ignoreMissing: true + }], rehype_raw__WEBPACK_IMPORTED_MODULE_10__["default"], rehype_slug__WEBPACK_IMPORTED_MODULE_11__["default"], rehype_autolink_headings__WEBPACK_IMPORTED_MODULE_12__["default"], [rehype_rewrite__WEBPACK_IMPORTED_MODULE_13__["default"], { + rewrite: rehypeRewriteHandle + }], [rehype_attr__WEBPACK_IMPORTED_MODULE_14__["default"], { + properties: 'attr' + }], ...(other.rehypePlugins || [])], + remarkPlugins: [...(other.remarkPlugins || []), remark_gfm__WEBPACK_IMPORTED_MODULE_15__["default"]], + children: source || '' + })) + })); +})); +//# sourceMappingURL=index.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-markdown-preview/esm/nodes/copy.js": +/*!********************************************************************!*\ + !*** ./node_modules/@uiw/react-markdown-preview/esm/nodes/copy.js ***! + \********************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "copyElement": () => (/* binding */ copyElement) +/* harmony export */ }); +/* harmony import */ var _uiw_copy_to_clipboard__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @uiw/copy-to-clipboard */ "./node_modules/@uiw/copy-to-clipboard/dist/copy-to-clipboard.umd.js"); +/* harmony import */ var _uiw_copy_to_clipboard__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_uiw_copy_to_clipboard__WEBPACK_IMPORTED_MODULE_0__); + +function copyElement(str) { + if (str === void 0) { + str = 'test'; + } + + return { + type: 'element', + tagName: 'div', + properties: { + // @ts-ignore + onClick: _ref => { + var { + target + } = _ref; + target.classList.add('active'); + _uiw_copy_to_clipboard__WEBPACK_IMPORTED_MODULE_0___default()(target.dataset.code, function () { + setTimeout(() => { + target.classList.remove('active'); + }, 2000); + }); + }, + 'data-code': str, + class: 'copied' + }, + children: [{ + type: 'element', + tagName: 'svg', + properties: { + className: 'octicon-copy', + ariaHidden: 'true', + viewBox: '0 0 16 16', + fill: 'currentColor', + height: 12, + width: 12 + }, + children: [{ + type: 'element', + tagName: 'path', + properties: { + fillRule: 'evenodd', + d: 'M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z' + }, + children: [] + }, { + type: 'element', + tagName: 'path', + properties: { + fillRule: 'evenodd', + d: 'M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z' + }, + children: [] + }] + }, { + type: 'element', + tagName: 'svg', + properties: { + className: 'octicon-check', + ariaHidden: 'true', + viewBox: '0 0 16 16', + fill: 'currentColor', + height: 12, + width: 12 + }, + children: [{ + type: 'element', + tagName: 'path', + properties: { + fillRule: 'evenodd', + d: 'M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z' + }, + children: [] + }] + }] + }; +} +//# sourceMappingURL=copy.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-markdown-preview/esm/nodes/octiconLink.js": +/*!***************************************************************************!*\ + !*** ./node_modules/@uiw/react-markdown-preview/esm/nodes/octiconLink.js ***! + \***************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "octiconLink": () => (/* binding */ octiconLink) +/* harmony export */ }); +var octiconLink = { + type: 'element', + tagName: 'svg', + properties: { + className: 'octicon octicon-link', + viewBox: '0 0 16 16', + version: '1.1', + width: '16', + height: '16', + ariaHidden: 'true' + }, + children: [{ + type: 'element', + tagName: 'path', + children: [], + properties: { + fillRule: 'evenodd', + d: 'M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z' + } + }] +}; +//# sourceMappingURL=octiconLink.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/Context.js": +/*!**********************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/Context.js ***! + \**********************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "reducer": () => (/* binding */ reducer), +/* harmony export */ "EditorContext": () => (/* binding */ EditorContext) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); + + +function reducer(state, action) { + return (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, state, action); +} +var EditorContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createContext({ + markdown: '' +}); +//# sourceMappingURL=Context.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/Editor.js": +/*!*********************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/Editor.js ***! + \*********************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); +/* harmony import */ var _babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ "./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _uiw_react_markdown_preview__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @uiw/react-markdown-preview */ "./node_modules/@uiw/react-markdown-preview/esm/index.js"); +/* harmony import */ var _components_TextArea__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/TextArea */ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/index.js"); +/* harmony import */ var _components_Toolbar__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/Toolbar */ "./node_modules/@uiw/react-md-editor/esm/components/Toolbar/index.js"); +/* harmony import */ var _components_DragBar__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/DragBar */ "./node_modules/@uiw/react-md-editor/esm/components/DragBar/index.js"); +/* harmony import */ var _commands__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./commands */ "./node_modules/@uiw/react-md-editor/esm/commands/index.js"); +/* harmony import */ var _Context__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Context */ "./node_modules/@uiw/react-md-editor/esm/Context.js"); +/* harmony import */ var _index_css__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./index.css */ "./node_modules/@uiw/react-md-editor/esm/index.css"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + +var _excluded = ["prefixCls", "className", "value", "commands", "commandsFilter", "extraCommands", "height", "toolbarHeight", "enableScroll", "visiableDragbar", "highlightEnable", "preview", "fullscreen", "previewOptions", "textareaProps", "maxHeight", "minHeight", "autoFocus", "tabSize", "defaultTabEnable", "onChange", "hideToolbar", "renderTextarea"]; + + + + + + + + + + + +function setGroupPopFalse(data) { + if (data === void 0) { + data = {}; + } + + Object.keys(data).forEach(keyname => { + data[keyname] = false; + }); + return data; +} + +var InternalMDEditor = (props, ref) => { + var _ref = props || {}, + { + prefixCls = 'w-md-editor', + className, + value: propsValue, + commands = (0,_commands__WEBPACK_IMPORTED_MODULE_7__.getCommands)(), + commandsFilter, + extraCommands = (0,_commands__WEBPACK_IMPORTED_MODULE_7__.getExtraCommands)(), + height = 200, + toolbarHeight = 29, + enableScroll = true, + visiableDragbar = true, + highlightEnable = true, + preview: previewType = 'live', + fullscreen = false, + previewOptions = {}, + textareaProps, + maxHeight = 1200, + minHeight = 100, + autoFocus, + tabSize = 2, + defaultTabEnable = false, + onChange: _onChange, + hideToolbar, + renderTextarea + } = _ref, + other = (0,_babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__["default"])(_ref, _excluded); + + var cmds = commands.map(item => commandsFilter ? commandsFilter(item, false) : item).filter(Boolean); + var extraCmds = extraCommands.map(item => commandsFilter ? commandsFilter(item, true) : item).filter(Boolean); + var [state, dispatch] = (0,react__WEBPACK_IMPORTED_MODULE_2__.useReducer)(_Context__WEBPACK_IMPORTED_MODULE_8__.reducer, { + markdown: propsValue, + preview: previewType, + height, + highlightEnable, + tabSize, + defaultTabEnable, + scrollTop: 0, + scrollTopPreview: 0, + commands: cmds, + extraCommands: extraCmds, + fullscreen, + barPopup: {} + }); + var container = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)(null); + var previewRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)(null); + var enableScrollRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)(enableScroll); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useImperativeHandle)(ref, () => (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, state)); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(() => enableScrollRef.current = enableScroll, [enableScroll]); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(() => { + var stateInit = {}; + + if (container.current) { + stateInit.container = container.current || undefined; + } + + stateInit.markdown = propsValue || ''; + stateInit.barPopup = {}; + + if (dispatch) { + dispatch((0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, state, stateInit)); + } // eslint-disable-next-line react-hooks/exhaustive-deps + + }, []); + var cls = [className, prefixCls, state.preview ? prefixCls + "-show-" + state.preview : null, state.fullscreen ? prefixCls + "-fullscreen" : null].filter(Boolean).join(' ').trim(); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(() => propsValue !== state.markdown && dispatch({ + markdown: propsValue || '' + }), [propsValue, state.markdown]); // eslint-disable-next-line react-hooks/exhaustive-deps + + (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(() => previewType !== state.preview && dispatch({ + preview: previewType + }), [previewType]); // eslint-disable-next-line react-hooks/exhaustive-deps + + (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(() => height !== state.height && dispatch({ + height: height + }), [height]); // eslint-disable-next-line react-hooks/exhaustive-deps + + (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(() => tabSize !== state.tabSize && dispatch({ + tabSize + }), [tabSize]); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(() => highlightEnable !== state.highlightEnable && dispatch({ + highlightEnable + }), // eslint-disable-next-line react-hooks/exhaustive-deps + [highlightEnable]); // eslint-disable-next-line react-hooks/exhaustive-deps + + (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(() => autoFocus !== state.autoFocus && dispatch({ + autoFocus: autoFocus + }), [autoFocus]); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(() => fullscreen !== state.fullscreen && dispatch({ + fullscreen: fullscreen + }), // eslint-disable-next-line react-hooks/exhaustive-deps + [fullscreen]); + var textareaDomRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)(); + var active = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)('preview'); + var initScroll = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)(false); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(() => { + textareaDomRef.current = state.textareaWarp; + + if (state.textareaWarp) { + state.textareaWarp.addEventListener('mouseover', () => { + active.current = 'text'; + }); + state.textareaWarp.addEventListener('mouseleave', () => { + active.current = 'preview'; + }); + } + }, [state.textareaWarp]); + + var handleScroll = (e, type) => { + if (!enableScrollRef.current) return; + var textareaDom = textareaDomRef.current; + var previewDom = previewRef.current ? previewRef.current.mdp.current : undefined; + + if (!initScroll.current) { + active.current = type; + initScroll.current = true; + } + + if (textareaDom && previewDom) { + var scale = (textareaDom.scrollHeight - textareaDom.offsetHeight) / (previewDom.scrollHeight - previewDom.offsetHeight); + + if (e.target === textareaDom && active.current === 'text') { + previewDom.scrollTop = textareaDom.scrollTop / scale; + } + + if (e.target === previewDom && active.current === 'preview') { + textareaDom.scrollTop = previewDom.scrollTop * scale; + } + + var scrollTop = 0; + + if (active.current === 'text') { + scrollTop = textareaDom.scrollTop || 0; + } else if (active.current === 'preview') { + scrollTop = previewDom.scrollTop || 0; + } + + dispatch({ + scrollTop + }); + } + }; + + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx)(_Context__WEBPACK_IMPORTED_MODULE_8__.EditorContext.Provider, { + value: (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, state, { + dispatch + }), + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("div", (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({ + ref: container, + className: cls + }, other, { + onClick: () => { + dispatch({ + barPopup: (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, setGroupPopFalse(state.barPopup)) + }); + }, + style: (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, other.style, { + height: state.fullscreen ? '100%' : hideToolbar ? Number(state.height) - toolbarHeight : state.height + }), + children: [!hideToolbar && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx)(_components_Toolbar__WEBPACK_IMPORTED_MODULE_5__["default"], { + prefixCls: prefixCls, + height: toolbarHeight + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsxs)("div", { + className: prefixCls + "-content", + style: { + height: state.fullscreen ? "calc(100% - " + toolbarHeight + "px)" : Number(state.height) - toolbarHeight + }, + children: [/(edit|live)/.test(state.preview || '') && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx)(_components_TextArea__WEBPACK_IMPORTED_MODULE_4__["default"], (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({ + className: prefixCls + "-input", + prefixCls: prefixCls, + autoFocus: autoFocus + }, textareaProps, { + onChange: evn => { + _onChange && _onChange(evn.target.value); + + if (textareaProps && textareaProps.onChange) { + textareaProps.onChange(evn); + } + }, + renderTextarea: renderTextarea, + onScroll: e => handleScroll(e, 'text') + })), /(live|preview)/.test(state.preview || '') && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx)(_uiw_react_markdown_preview__WEBPACK_IMPORTED_MODULE_3__["default"], (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, previewOptions, { + onScroll: e => handleScroll(e, 'preview'), + ref: previewRef, + source: state.markdown || '', + className: prefixCls + "-preview " + (previewOptions.className || '') + }))] + }), visiableDragbar && !state.fullscreen && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__.jsx)(_components_DragBar__WEBPACK_IMPORTED_MODULE_6__["default"], { + prefixCls: prefixCls, + height: state.height, + maxHeight: maxHeight, + minHeight: minHeight, + onChange: newHeight => { + dispatch({ + height: newHeight + }); + } + })] + })) + }); +}; + +var mdEditor = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.forwardRef(InternalMDEditor); +mdEditor.Markdown = _uiw_react_markdown_preview__WEBPACK_IMPORTED_MODULE_3__["default"]; +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (mdEditor); +//# sourceMappingURL=Editor.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/bold.js": +/*!****************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/bold.js ***! + \****************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "bold": () => (/* binding */ bold) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/markdownUtils */ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var bold = { + name: 'bold', + keyCommand: 'bold', + shortcuts: 'ctrlcmd+b', + buttonProps: { + 'aria-label': 'Add bold text', + title: 'Add bold text' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + role: "img", + width: "12", + height: "12", + viewBox: "0 0 384 512", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M304.793 243.891c33.639-18.537 53.657-54.16 53.657-95.693 0-48.236-26.25-87.626-68.626-104.179C265.138 34.01 240.849 32 209.661 32H24c-8.837 0-16 7.163-16 16v33.049c0 8.837 7.163 16 16 16h33.113v318.53H24c-8.837 0-16 7.163-16 16V464c0 8.837 7.163 16 16 16h195.69c24.203 0 44.834-1.289 66.866-7.584C337.52 457.193 376 410.647 376 350.014c0-52.168-26.573-91.684-71.207-106.123zM142.217 100.809h67.444c16.294 0 27.536 2.019 37.525 6.717 15.828 8.479 24.906 26.502 24.906 49.446 0 35.029-20.32 56.79-53.029 56.79h-76.846V100.809zm112.642 305.475c-10.14 4.056-22.677 4.907-31.409 4.907h-81.233V281.943h84.367c39.645 0 63.057 25.38 63.057 63.057.001 28.425-13.66 52.483-34.782 61.284z" + }) + }), + execute: (state, api) => { + // Adjust the selection to encompass the whole word if the caret is inside one + var newSelectionRange = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.selectWord)({ + text: state.text, + selection: state.selection + }); + var state1 = api.setSelectionRange(newSelectionRange); // Replaces the current selection with the bold mark up + + var state2 = api.replaceSelection("**" + state1.selectedText + "**"); // Adjust the selection to not contain the ** + + api.setSelectionRange({ + start: state2.selection.end - 2 - state1.selectedText.length, + end: state2.selection.end - 2 + }); + } +}; +//# sourceMappingURL=bold.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/code.js": +/*!****************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/code.js ***! + \****************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "code": () => (/* binding */ code), +/* harmony export */ "codeBlock": () => (/* binding */ codeBlock) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/markdownUtils */ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var code = { + name: 'code', + keyCommand: 'code', + shortcuts: 'ctrlcmd+j', + buttonProps: { + 'aria-label': 'Insert code' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + width: "12", + height: "12", + role: "img", + viewBox: "0 0 640 512", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M278.9 511.5l-61-17.7c-6.4-1.8-10-8.5-8.2-14.9L346.2 8.7c1.8-6.4 8.5-10 14.9-8.2l61 17.7c6.4 1.8 10 8.5 8.2 14.9L293.8 503.3c-1.9 6.4-8.5 10.1-14.9 8.2zm-114-112.2l43.5-46.4c4.6-4.9 4.3-12.7-.8-17.2L117 256l90.6-79.7c5.1-4.5 5.5-12.3.8-17.2l-43.5-46.4c-4.5-4.8-12.1-5.1-17-.5L3.8 247.2c-5.1 4.7-5.1 12.8 0 17.5l144.1 135.1c4.9 4.6 12.5 4.4 17-.5zm327.2.6l144.1-135.1c5.1-4.7 5.1-12.8 0-17.5L492.1 112.1c-4.8-4.5-12.4-4.3-17 .5L431.6 159c-4.6 4.9-4.3 12.7.8 17.2L523 256l-90.6 79.7c-5.1 4.5-5.5 12.3-.8 17.2l43.5 46.4c4.5 4.9 12.1 5.1 17 .6z" + }) + }), + execute: (tate, api) => { + // Adjust the selection to encompass the whole word if the caret is inside one + var newSelectionRange = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.selectWord)({ + text: tate.text, + selection: tate.selection + }); + var state1 = api.setSelectionRange(newSelectionRange); // when there's no breaking line + + if (state1.selectedText.indexOf('\n') === -1) { + api.replaceSelection("`" + state1.selectedText + "`"); // Adjust the selection to not contain the ** + + var _selectionStart = state1.selection.start + 1; + + var _selectionEnd = _selectionStart + state1.selectedText.length; + + api.setSelectionRange({ + start: _selectionStart, + end: _selectionEnd + }); + return; + } + + var breaksBeforeCount = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.getBreaksNeededForEmptyLineBefore)(state1.text, state1.selection.start); + var breaksBefore = Array(breaksBeforeCount + 1).join('\n'); + var breaksAfterCount = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.getBreaksNeededForEmptyLineAfter)(state1.text, state1.selection.end); + var breaksAfter = Array(breaksAfterCount + 1).join('\n'); + api.replaceSelection(breaksBefore + "```\n" + state1.selectedText + "\n```" + breaksAfter); + var selectionStart = state1.selection.start + breaksBeforeCount + 4; + var selectionEnd = selectionStart + state1.selectedText.length; + api.setSelectionRange({ + start: selectionStart, + end: selectionEnd + }); + } +}; +var codeBlock = { + name: 'codeBlock', + keyCommand: 'codeBlock', + shortcuts: 'ctrlcmd+shift+j', + execute: (tate, api) => { + // Adjust the selection to encompass the whole word if the caret is inside one + var newSelectionRange = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.selectWord)({ + text: tate.text, + selection: tate.selection + }); + var state1 = api.setSelectionRange(newSelectionRange); + var breaksBeforeCount = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.getBreaksNeededForEmptyLineBefore)(state1.text, state1.selection.start); + var breaksBefore = Array(breaksBeforeCount + 1).join('\n'); + var breaksAfterCount = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.getBreaksNeededForEmptyLineAfter)(state1.text, state1.selection.end); + var breaksAfter = Array(breaksAfterCount + 1).join('\n'); + api.replaceSelection(breaksBefore + "```\n" + state1.selectedText + "\n```" + breaksAfter); + var selectionStart = state1.selection.start + breaksBeforeCount + 4; + var selectionEnd = selectionStart + state1.selectedText.length; + api.setSelectionRange({ + start: selectionStart, + end: selectionEnd + }); + } +}; +//# sourceMappingURL=code.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/comment.js": +/*!*******************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/comment.js ***! + \*******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "comment": () => (/* binding */ comment) +/* harmony export */ }); +/* harmony import */ var _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/markdownUtils */ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js"); + +var comment = { + name: 'comment', + keyCommand: 'comment', + shortcuts: 'ctrlcmd+/', + execute: (state, api) => { + // Adjust the selection to encompass the whole word if the caret is inside one + var newSelectionRange = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_0__.selectWord)({ + text: state.text, + selection: state.selection + }); + var state1 = api.setSelectionRange(newSelectionRange); // Replaces the current selection with the bold mark up + + var state2 = api.replaceSelection(""); // Adjust the selection to not contain the ** + + api.setSelectionRange({ + start: state2.selection.end - 4 - state1.selectedText.length, + end: state2.selection.end - 4 + }); + } +}; +//# sourceMappingURL=comment.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/divider.js": +/*!*******************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/divider.js ***! + \*******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "divider": () => (/* binding */ divider) +/* harmony export */ }); +var divider = { + keyCommand: 'divider' +}; +//# sourceMappingURL=divider.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/fullscreen.js": +/*!**********************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/fullscreen.js ***! + \**********************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "fullscreen": () => (/* binding */ fullscreen) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + +var fullscreen = { + name: 'fullscreen', + keyCommand: 'fullscreen', + shortcuts: 'escape', + buttonProps: { + 'aria-label': 'fullscreen', + title: 'fullscreen' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("svg", { + width: "12", + height: "12", + viewBox: "0 0 520 520", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("path", { + fill: "currentColor", + d: "M118 171.133334L118 342.200271C118 353.766938 126.675 365.333605 141.133333 365.333605L382.634614 365.333605C394.201281 365.333605 405.767948 356.658605 405.767948 342.200271L405.767948 171.133334C405.767948 159.566667 397.092948 148 382.634614 148L141.133333 148C126.674999 148 117.999999 156.675 118 171.133334zM465.353591 413.444444L370 413.444444 370 471.222222 474.0221 471.222222C500.027624 471.222222 520.254143 451 520.254143 425L520.254143 321 462.464089 321 462.464089 413.444444 465.353591 413.444444zM471.0221 43L367 43 367 100.777778 462.353591 100.777778 462.353591 196.111111 520.143647 196.111111 520.143647 89.2222219C517.254144 63.2222219 497.027624 43 471.0221 43zM57.7900547 100.777778L153.143646 100.777778 153.143646 43 46.2320439 43C20.2265191 43 0 63.2222219 0 89.2222219L0 193.222222 57.7900547 193.222222 57.7900547 100.777778zM57.7900547 321L0 321 0 425C0 451 20.2265191 471.222222 46.2320439 471.222223L150.254143 471.222223 150.254143 413.444445 57.7900547 413.444445 57.7900547 321z" + }) + }), + execute: (state, api, dispatch, executeCommandState) => { + api.textArea.focus(); + + if (dispatch && executeCommandState && executeCommandState.fullscreen) { + dispatch({ + fullscreen: false + }); + } + } +}; +//# sourceMappingURL=fullscreen.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/group.js": +/*!*****************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/group.js ***! + \*****************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "group": () => (/* binding */ group) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var group = (arr, options) => { + var data = (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({ + children: arr, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + width: "12", + height: "12", + viewBox: "0 0 520 520", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M15.7083333,468 C7.03242448,468 0,462.030833 0,454.666667 L0,421.333333 C0,413.969167 7.03242448,408 15.7083333,408 L361.291667,408 C369.967576,408 377,413.969167 377,421.333333 L377,454.666667 C377,462.030833 369.967576,468 361.291667,468 L15.7083333,468 Z M21.6666667,366 C9.69989583,366 0,359.831861 0,352.222222 L0,317.777778 C0,310.168139 9.69989583,304 21.6666667,304 L498.333333,304 C510.300104,304 520,310.168139 520,317.777778 L520,352.222222 C520,359.831861 510.300104,366 498.333333,366 L21.6666667,366 Z M136.835938,64 L136.835937,126 L107.25,126 L107.25,251 L40.75,251 L40.75,126 L-5.68434189e-14,126 L-5.68434189e-14,64 L136.835938,64 Z M212,64 L212,251 L161.648438,251 L161.648438,64 L212,64 Z M378,64 L378,126 L343.25,126 L343.25,251 L281.75,251 L281.75,126 L238,126 L238,64 L378,64 Z M449.047619,189.550781 L520,189.550781 L520,251 L405,251 L405,64 L449.047619,64 L449.047619,189.550781 Z" + }) + }), + execute: () => {} + }, options, { + keyCommand: 'group' + }); + + if (Array.isArray(data.children)) { + data.children = data.children.map(_ref => { + var item = (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, _ref); + + item.parent = data; + return (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, item); + }); + } + + return data; +}; +//# sourceMappingURL=group.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/hr.js": +/*!**************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/hr.js ***! + \**************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "hr": () => (/* binding */ hr) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + +var hr = { + name: 'hr', + keyCommand: 'hr', + shortcuts: 'ctrlcmd+h', + buttonProps: { + 'aria-label': 'Insert HR', + title: 'Insert HR' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("svg", { + width: "12", + height: "12", + viewBox: "0 0 175 175", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("path", { + fill: "currentColor", + d: "M0,129 L175,129 L175,154 L0,154 L0,129 Z M3,9 L28.2158203,9 L28.2158203,47.9824219 L55.7695313,47.9824219 L55.7695313,9 L81.0966797,9 L81.0966797,107.185547 L55.7695313,107.185547 L55.7695313,68.0214844 L28.2158203,68.0214844 L28.2158203,107.185547 L3,107.185547 L3,9 Z M93.1855469,100.603516 L93.1855469,19 L135.211914,19 C143.004922,19 148.960917,19.6679621 153.080078,21.0039063 C157.199239,22.3398504 160.520495,24.8168764 163.043945,28.4350586 C165.567395,32.0532407 166.829102,36.459935 166.829102,41.6552734 C166.829102,46.1826398 165.864267,50.0883625 163.93457,53.3725586 C162.004873,56.6567547 159.351579,59.3193257 155.974609,61.3603516 C153.822255,62.6591862 150.872089,63.7353473 147.124023,64.5888672 C150.129898,65.5908253 152.319329,66.5927684 153.692383,67.5947266 C154.620122,68.2626987 155.965323,69.6913953 157.728027,71.8808594 C159.490731,74.0703234 160.668942,75.7587831 161.262695,76.9462891 L173,100.603516 L144.953125,100.603516 L131.482422,75.6660156 C129.775382,72.4374839 128.253913,70.3408251 126.917969,69.3759766 C125.0996,68.1142515 123.040051,67.4833984 120.739258,67.4833984 L118.512695,67.4833984 L118.512695,100.603516 L93.1855469,100.603516 Z M118.512695,52.0644531 L129.144531,52.0644531 C130.294928,52.0644531 132.521468,51.6933631 135.824219,50.9511719 C137.494149,50.6171858 138.857905,49.7636787 139.915527,48.390625 C140.97315,47.0175713 141.501953,45.4404386 141.501953,43.6591797 C141.501953,41.0244009 140.667001,39.0019602 138.99707,37.5917969 C137.32714,36.1816336 134.191429,35.4765625 129.589844,35.4765625 L117.512695,35.4765625 L118.512695,52.0644531 Z", + transform: "translate(0 9)" + }) + }), + execute: (state, api) => { + api.replaceSelection(state.selectedText + "\n\n----------\n\n"); + } +}; +//# sourceMappingURL=hr.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/image.js": +/*!*****************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/image.js ***! + \*****************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "image": () => (/* binding */ image) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/markdownUtils */ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var image = { + name: 'image', + keyCommand: 'image', + shortcuts: 'ctrlcmd+i', + buttonProps: { + 'aria-label': 'Add image', + title: 'Add image' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + width: "12", + height: "12", + viewBox: "0 0 20 20", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M15 9c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm4-7H1c-.55 0-1 .45-1 1v14c0 .55.45 1 1 1h18c.55 0 1-.45 1-1V3c0-.55-.45-1-1-1zm-1 13l-6-5-2 2-4-5-4 8V4h16v11z" + }) + }), + execute: (state, api) => { + // Select everything + var newSelectionRange = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.selectWord)({ + text: state.text, + selection: state.selection + }); + var state1 = api.setSelectionRange(newSelectionRange); // Replaces the current selection with the image + + var imageTemplate = state1.selectedText || 'https://example.com/your-image.png'; + api.replaceSelection("![](" + imageTemplate + ")"); // Adjust the selection to not contain the ** + + api.setSelectionRange({ + start: 4 + state1.selection.start, + end: 4 + state1.selection.start + imageTemplate.length + }); + } +}; +//# sourceMappingURL=image.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/index.js": +/*!*****************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/index.js ***! + \*****************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "title": () => (/* reexport safe */ _title__WEBPACK_IMPORTED_MODULE_7__.title), +/* harmony export */ "title1": () => (/* reexport safe */ _title1__WEBPACK_IMPORTED_MODULE_8__.title1), +/* harmony export */ "title2": () => (/* reexport safe */ _title2__WEBPACK_IMPORTED_MODULE_9__.title2), +/* harmony export */ "title3": () => (/* reexport safe */ _title3__WEBPACK_IMPORTED_MODULE_10__.title3), +/* harmony export */ "title4": () => (/* reexport safe */ _title4__WEBPACK_IMPORTED_MODULE_11__.title4), +/* harmony export */ "title5": () => (/* reexport safe */ _title5__WEBPACK_IMPORTED_MODULE_12__.title5), +/* harmony export */ "title6": () => (/* reexport safe */ _title6__WEBPACK_IMPORTED_MODULE_13__.title6), +/* harmony export */ "bold": () => (/* reexport safe */ _bold__WEBPACK_IMPORTED_MODULE_0__.bold), +/* harmony export */ "codeBlock": () => (/* reexport safe */ _code__WEBPACK_IMPORTED_MODULE_1__.codeBlock), +/* harmony export */ "italic": () => (/* reexport safe */ _italic__WEBPACK_IMPORTED_MODULE_2__.italic), +/* harmony export */ "strikethrough": () => (/* reexport safe */ _strikeThrough__WEBPACK_IMPORTED_MODULE_20__.strikethrough), +/* harmony export */ "hr": () => (/* reexport safe */ _hr__WEBPACK_IMPORTED_MODULE_6__.hr), +/* harmony export */ "group": () => (/* reexport safe */ _group__WEBPACK_IMPORTED_MODULE_15__.group), +/* harmony export */ "divider": () => (/* reexport safe */ _divider__WEBPACK_IMPORTED_MODULE_16__.divider), +/* harmony export */ "link": () => (/* reexport safe */ _link__WEBPACK_IMPORTED_MODULE_3__.link), +/* harmony export */ "quote": () => (/* reexport safe */ _quote__WEBPACK_IMPORTED_MODULE_5__.quote), +/* harmony export */ "code": () => (/* reexport safe */ _code__WEBPACK_IMPORTED_MODULE_1__.code), +/* harmony export */ "image": () => (/* reexport safe */ _image__WEBPACK_IMPORTED_MODULE_19__.image), +/* harmony export */ "unorderedListCommand": () => (/* reexport safe */ _list__WEBPACK_IMPORTED_MODULE_4__.unorderedListCommand), +/* harmony export */ "orderedListCommand": () => (/* reexport safe */ _list__WEBPACK_IMPORTED_MODULE_4__.orderedListCommand), +/* harmony export */ "checkedListCommand": () => (/* reexport safe */ _list__WEBPACK_IMPORTED_MODULE_4__.checkedListCommand), +/* harmony export */ "codeEdit": () => (/* reexport safe */ _preview__WEBPACK_IMPORTED_MODULE_17__.codeEdit), +/* harmony export */ "codeLive": () => (/* reexport safe */ _preview__WEBPACK_IMPORTED_MODULE_17__.codeLive), +/* harmony export */ "codePreview": () => (/* reexport safe */ _preview__WEBPACK_IMPORTED_MODULE_17__.codePreview), +/* harmony export */ "fullscreen": () => (/* reexport safe */ _fullscreen__WEBPACK_IMPORTED_MODULE_18__.fullscreen), +/* harmony export */ "getCommands": () => (/* binding */ getCommands), +/* harmony export */ "getExtraCommands": () => (/* binding */ getExtraCommands), +/* harmony export */ "getStateFromTextArea": () => (/* binding */ getStateFromTextArea), +/* harmony export */ "TextAreaCommandOrchestrator": () => (/* binding */ TextAreaCommandOrchestrator), +/* harmony export */ "TextAreaTextApi": () => (/* binding */ TextAreaTextApi) +/* harmony export */ }); +/* harmony import */ var _bold__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./bold */ "./node_modules/@uiw/react-md-editor/esm/commands/bold.js"); +/* harmony import */ var _code__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./code */ "./node_modules/@uiw/react-md-editor/esm/commands/code.js"); +/* harmony import */ var _italic__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./italic */ "./node_modules/@uiw/react-md-editor/esm/commands/italic.js"); +/* harmony import */ var _link__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./link */ "./node_modules/@uiw/react-md-editor/esm/commands/link.js"); +/* harmony import */ var _list__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./list */ "./node_modules/@uiw/react-md-editor/esm/commands/list.js"); +/* harmony import */ var _quote__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./quote */ "./node_modules/@uiw/react-md-editor/esm/commands/quote.js"); +/* harmony import */ var _hr__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./hr */ "./node_modules/@uiw/react-md-editor/esm/commands/hr.js"); +/* harmony import */ var _title__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./title */ "./node_modules/@uiw/react-md-editor/esm/commands/title.js"); +/* harmony import */ var _title1__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./title1 */ "./node_modules/@uiw/react-md-editor/esm/commands/title1.js"); +/* harmony import */ var _title2__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./title2 */ "./node_modules/@uiw/react-md-editor/esm/commands/title2.js"); +/* harmony import */ var _title3__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./title3 */ "./node_modules/@uiw/react-md-editor/esm/commands/title3.js"); +/* harmony import */ var _title4__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./title4 */ "./node_modules/@uiw/react-md-editor/esm/commands/title4.js"); +/* harmony import */ var _title5__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./title5 */ "./node_modules/@uiw/react-md-editor/esm/commands/title5.js"); +/* harmony import */ var _title6__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./title6 */ "./node_modules/@uiw/react-md-editor/esm/commands/title6.js"); +/* harmony import */ var _comment__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./comment */ "./node_modules/@uiw/react-md-editor/esm/commands/comment.js"); +/* harmony import */ var _group__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./group */ "./node_modules/@uiw/react-md-editor/esm/commands/group.js"); +/* harmony import */ var _divider__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./divider */ "./node_modules/@uiw/react-md-editor/esm/commands/divider.js"); +/* harmony import */ var _preview__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./preview */ "./node_modules/@uiw/react-md-editor/esm/commands/preview.js"); +/* harmony import */ var _fullscreen__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./fullscreen */ "./node_modules/@uiw/react-md-editor/esm/commands/fullscreen.js"); +/* harmony import */ var _image__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./image */ "./node_modules/@uiw/react-md-editor/esm/commands/image.js"); +/* harmony import */ var _strikeThrough__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./strikeThrough */ "./node_modules/@uiw/react-md-editor/esm/commands/strikeThrough.js"); +/* harmony import */ var _utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../utils/InsertTextAtPosition */ "./node_modules/@uiw/react-md-editor/esm/utils/InsertTextAtPosition.js"); + + + + + + + + + + + + + + + + + + + + + + + +var getCommands = () => [_comment__WEBPACK_IMPORTED_MODULE_14__.comment, _bold__WEBPACK_IMPORTED_MODULE_0__.bold, _italic__WEBPACK_IMPORTED_MODULE_2__.italic, _strikeThrough__WEBPACK_IMPORTED_MODULE_20__.strikethrough, _hr__WEBPACK_IMPORTED_MODULE_6__.hr, _title__WEBPACK_IMPORTED_MODULE_7__.title, _divider__WEBPACK_IMPORTED_MODULE_16__.divider, _link__WEBPACK_IMPORTED_MODULE_3__.link, _quote__WEBPACK_IMPORTED_MODULE_5__.quote, _code__WEBPACK_IMPORTED_MODULE_1__.code, _code__WEBPACK_IMPORTED_MODULE_1__.codeBlock, _image__WEBPACK_IMPORTED_MODULE_19__.image, _divider__WEBPACK_IMPORTED_MODULE_16__.divider, _list__WEBPACK_IMPORTED_MODULE_4__.unorderedListCommand, _list__WEBPACK_IMPORTED_MODULE_4__.orderedListCommand, _list__WEBPACK_IMPORTED_MODULE_4__.checkedListCommand]; + +var getExtraCommands = () => [_preview__WEBPACK_IMPORTED_MODULE_17__.codeEdit, _preview__WEBPACK_IMPORTED_MODULE_17__.codeLive, _preview__WEBPACK_IMPORTED_MODULE_17__.codePreview, _divider__WEBPACK_IMPORTED_MODULE_16__.divider, _fullscreen__WEBPACK_IMPORTED_MODULE_18__.fullscreen]; + +function getStateFromTextArea(textArea) { + return { + selection: { + start: textArea.selectionStart, + end: textArea.selectionEnd + }, + text: textArea.value, + selectedText: textArea.value.slice(textArea.selectionStart, textArea.selectionEnd) + }; +} + +class TextAreaTextApi { + constructor(textArea) { + this.textArea = void 0; + this.textArea = textArea; + } + /** + * Replaces the current selection with the new text. This will make the new selectedText to be empty, the + * selection start and selection end will be the same and will both point to the end + * @param text Text that should replace the current selection + */ + + + replaceSelection(text) { + (0,_utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_21__.insertTextAtPosition)(this.textArea, text); + return getStateFromTextArea(this.textArea); + } + /** + * Selects the specified text range + * @param selection + */ + + + setSelectionRange(selection) { + this.textArea.focus(); + this.textArea.selectionStart = selection.start; + this.textArea.selectionEnd = selection.end; + return getStateFromTextArea(this.textArea); + } + +} + +class TextAreaCommandOrchestrator { + constructor(textArea) { + this.textArea = void 0; + this.textApi = void 0; + this.textArea = textArea; + this.textApi = new TextAreaTextApi(textArea); + } + + getState() { + if (!this.textArea) return false; + return getStateFromTextArea(this.textArea); + } + + executeCommand(command, dispatch, state) { + command.execute && command.execute(getStateFromTextArea(this.textArea), this.textApi, dispatch, state); + } + +} + + +//# sourceMappingURL=index.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/italic.js": +/*!******************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/italic.js ***! + \******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "italic": () => (/* binding */ italic) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/markdownUtils */ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var italic = { + name: 'italic', + keyCommand: 'italic', + shortcuts: 'ctrlcmd+i', + buttonProps: { + 'aria-label': 'Add italic text', + title: 'Add italic text' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + "data-name": "italic", + width: "12", + height: "12", + role: "img", + viewBox: "0 0 320 512", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M204.758 416h-33.849l62.092-320h40.725a16 16 0 0 0 15.704-12.937l6.242-32C297.599 41.184 290.034 32 279.968 32H120.235a16 16 0 0 0-15.704 12.937l-6.242 32C96.362 86.816 103.927 96 113.993 96h33.846l-62.09 320H46.278a16 16 0 0 0-15.704 12.935l-6.245 32C22.402 470.815 29.967 480 40.034 480h158.479a16 16 0 0 0 15.704-12.935l6.245-32c1.927-9.88-5.638-19.065-15.704-19.065z" + }) + }), + execute: (state, api) => { + // Adjust the selection to encompass the whole word if the caret is inside one + var newSelectionRange = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.selectWord)({ + text: state.text, + selection: state.selection + }); + var state1 = api.setSelectionRange(newSelectionRange); // Replaces the current selection with the italic mark up + + var state2 = api.replaceSelection("*" + state1.selectedText + "*"); // Adjust the selection to not contain the * + + api.setSelectionRange({ + start: state2.selection.end - 1 - state1.selectedText.length, + end: state2.selection.end - 1 + }); + } +}; +//# sourceMappingURL=italic.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/link.js": +/*!****************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/link.js ***! + \****************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "link": () => (/* binding */ link) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/markdownUtils */ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var link = { + name: 'link', + keyCommand: 'link', + shortcuts: 'ctrlcmd+k', + buttonProps: { + 'aria-label': 'Add a link', + title: 'Add a link' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + "data-name": "italic", + width: "12", + height: "12", + role: "img", + viewBox: "0 0 520 520", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M331.751196,182.121107 C392.438214,241.974735 391.605313,337.935283 332.11686,396.871226 C332.005129,396.991316 331.873084,397.121413 331.751196,397.241503 L263.493918,464.491645 C203.291404,523.80587 105.345257,523.797864 45.151885,464.491645 C-15.0506283,405.187427 -15.0506283,308.675467 45.151885,249.371249 L82.8416853,212.237562 C92.836501,202.39022 110.049118,208.9351 110.56511,222.851476 C111.223305,240.5867 114.451306,258.404985 120.407566,275.611815 C122.424812,281.438159 120.983487,287.882964 116.565047,292.23621 L103.272145,305.332975 C74.8052033,333.379887 73.9123737,379.047937 102.098973,407.369054 C130.563883,435.969378 177.350591,436.139505 206.033884,407.879434 L274.291163,340.6393 C302.9257,312.427264 302.805844,266.827265 274.291163,238.733318 C270.531934,235.036561 266.74528,232.16442 263.787465,230.157924 C259.544542,227.2873 256.928256,222.609848 256.731165,217.542518 C256.328935,206.967633 260.13184,196.070508 268.613213,187.714278 L289.998463,166.643567 C295.606326,161.118448 304.403592,160.439942 310.906317,164.911276 C318.353355,170.034591 325.328531,175.793397 331.751196,182.121107 Z M240.704978,55.4828366 L172.447607,122.733236 C172.325719,122.853326 172.193674,122.983423 172.081943,123.103513 C117.703294,179.334654 129.953294,261.569283 185.365841,328.828764 C191.044403,335.721376 198.762988,340.914712 206.209732,346.037661 C212.712465,350.509012 221.510759,349.829503 227.117615,344.305363 L248.502893,323.234572 C256.984277,314.87831 260.787188,303.981143 260.384957,293.406218 C260.187865,288.338869 257.571576,283.661398 253.328648,280.790763 C250.370829,278.78426 246.58417,275.912107 242.824936,272.215337 C214.310216,244.121282 206.209732,204.825874 229.906702,179.334654 L298.164073,112.094263 C326.847404,83.8340838 373.633159,84.0042113 402.099123,112.604645 C430.285761,140.92587 429.393946,186.594095 400.92595,214.641114 L387.63303,227.737929 C383.214584,232.091191 381.773257,238.536021 383.790506,244.362388 C389.746774,261.569283 392.974779,279.387637 393.632975,297.122928 C394.149984,311.039357 411.361608,317.584262 421.356437,307.736882 L459.046288,270.603053 C519.249898,211.29961 519.249898,114.787281 459.047304,55.4828366 C398.853851,-3.82360914 300.907572,-3.83161514 240.704978,55.4828366 Z" + }) + }), + execute: (state, api) => { + // Adjust the selection to encompass the whole word if the caret is inside one + var newSelectionRange = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.selectWord)({ + text: state.text, + selection: state.selection + }); + var state1 = api.setSelectionRange(newSelectionRange); // Replaces the current selection with the bold mark up + + var state2 = api.replaceSelection("[" + state1.selectedText + "](url)"); // Adjust the selection to not contain the ** + + api.setSelectionRange({ + start: state2.selection.end - 6 - state1.selectedText.length, + end: state2.selection.end - 6 + }); + } +}; +//# sourceMappingURL=link.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/list.js": +/*!****************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/list.js ***! + \****************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "insertBeforeEachLine": () => (/* binding */ insertBeforeEachLine), +/* harmony export */ "makeList": () => (/* binding */ makeList), +/* harmony export */ "unorderedListCommand": () => (/* binding */ unorderedListCommand), +/* harmony export */ "orderedListCommand": () => (/* binding */ orderedListCommand), +/* harmony export */ "checkedListCommand": () => (/* binding */ checkedListCommand) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/markdownUtils */ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + + +/** + * Inserts insertionString before each line + */ +function insertBeforeEachLine(selectedText, insertBefore) { + var lines = selectedText.split(/\n/); + var insertionLength = 0; + var modifiedText = lines.map((item, index) => { + if (typeof insertBefore === 'string') { + insertionLength += insertBefore.length; + return insertBefore + item; + } else if (typeof insertBefore === 'function') { + var insertionResult = insertBefore(item, index); + insertionLength += insertionResult.length; + return insertBefore(item, index) + item; + } + + throw Error('insertion is expected to be either a string or a function'); + }).join('\n'); + return { + modifiedText, + insertionLength + }; +} +var makeList = (state, api, insertBefore) => { + // Adjust the selection to encompass the whole word if the caret is inside one + var newSelectionRange = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.selectWord)({ + text: state.text, + selection: state.selection + }); + var state1 = api.setSelectionRange(newSelectionRange); + var breaksBeforeCount = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.getBreaksNeededForEmptyLineBefore)(state1.text, state1.selection.start); + var breaksBefore = Array(breaksBeforeCount + 1).join('\n'); + var breaksAfterCount = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.getBreaksNeededForEmptyLineAfter)(state1.text, state1.selection.end); + var breaksAfter = Array(breaksAfterCount + 1).join('\n'); + var modifiedText = insertBeforeEachLine(state1.selectedText, insertBefore); + api.replaceSelection("" + breaksBefore + modifiedText.modifiedText + breaksAfter); // Specifically when the text has only one line, we can exclude the "- ", for example, from the selection + + var oneLinerOffset = state1.selectedText.indexOf('\n') === -1 ? modifiedText.insertionLength : 0; + var selectionStart = state1.selection.start + breaksBeforeCount + oneLinerOffset; + var selectionEnd = selectionStart + modifiedText.modifiedText.length - oneLinerOffset; // Adjust the selection to not contain the ** + + api.setSelectionRange({ + start: selectionStart, + end: selectionEnd + }); +}; +var unorderedListCommand = { + name: 'unordered-list', + keyCommand: 'list', + shortcuts: 'ctrl+shift+l', + buttonProps: { + 'aria-label': 'Add unordered list', + title: 'Add unordered list' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + "data-name": "unordered-list", + width: "12", + height: "12", + viewBox: "0 0 512 512", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M96 96c0 26.51-21.49 48-48 48S0 122.51 0 96s21.49-48 48-48 48 21.49 48 48zM48 208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm0 160c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm96-236h352c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H144c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h352c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H144c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h352c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H144c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z" + }) + }), + execute: (state, api) => { + makeList(state, api, '- '); + } +}; +var orderedListCommand = { + name: 'ordered-list', + keyCommand: 'list', + shortcuts: 'ctrl+shift+o', + buttonProps: { + 'aria-label': 'Add ordered list', + title: 'Add ordered list' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + "data-name": "ordered-list", + width: "12", + height: "12", + role: "img", + viewBox: "0 0 512 512", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M3.263 139.527c0-7.477 3.917-11.572 11.573-11.572h15.131V88.078c0-5.163.534-10.503.534-10.503h-.356s-1.779 2.67-2.848 3.738c-4.451 4.273-10.504 4.451-15.666-1.068l-5.518-6.231c-5.342-5.341-4.984-11.216.534-16.379l21.72-19.938C32.815 33.602 36.732 32 42.785 32H54.89c7.656 0 11.749 3.916 11.749 11.572v84.384h15.488c7.655 0 11.572 4.094 11.572 11.572v8.901c0 7.477-3.917 11.572-11.572 11.572H14.836c-7.656 0-11.573-4.095-11.573-11.572v-8.902zM2.211 304.591c0-47.278 50.955-56.383 50.955-69.165 0-7.18-5.954-8.755-9.28-8.755-3.153 0-6.479 1.051-9.455 3.852-5.079 4.903-10.507 7.004-16.111 2.451l-8.579-6.829c-5.779-4.553-7.18-9.805-2.803-15.409C13.592 201.981 26.025 192 47.387 192c19.437 0 44.476 10.506 44.476 39.573 0 38.347-46.753 46.402-48.679 56.909h39.049c7.529 0 11.557 4.027 11.557 11.382v8.755c0 7.354-4.028 11.382-11.557 11.382h-67.94c-7.005 0-12.083-4.028-12.083-11.382v-4.028zM5.654 454.61l5.603-9.28c3.853-6.654 9.105-7.004 15.584-3.152 4.903 2.101 9.63 3.152 14.359 3.152 10.155 0 14.358-3.502 14.358-8.23 0-6.654-5.604-9.106-15.934-9.106h-4.728c-5.954 0-9.28-2.101-12.258-7.88l-1.05-1.926c-2.451-4.728-1.226-9.806 2.801-14.884l5.604-7.004c6.829-8.405 12.257-13.483 12.257-13.483v-.35s-4.203 1.051-12.608 1.051H16.685c-7.53 0-11.383-4.028-11.383-11.382v-8.755c0-7.53 3.853-11.382 11.383-11.382h58.484c7.529 0 11.382 4.027 11.382 11.382v3.327c0 5.778-1.401 9.806-5.079 14.183l-17.509 20.137c19.611 5.078 28.716 20.487 28.716 34.845 0 21.363-14.358 44.126-48.503 44.126-16.636 0-28.192-4.728-35.896-9.455-5.779-4.202-6.304-9.805-2.626-15.934zM144 132h352c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H144c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h352c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H144c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h352c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H144c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z" + }) + }), + execute: (state, api) => { + makeList(state, api, (item, index) => index + 1 + ". "); + } +}; +var checkedListCommand = { + name: 'checked-list', + keyCommand: 'list', + shortcuts: 'ctrl+shift+c', + buttonProps: { + 'aria-label': 'Add checked list', + title: 'Add checked list' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + "data-name": "checked-list", + width: "12", + height: "12", + role: "img", + viewBox: "0 0 512 512", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M208 132h288c8.8 0 16-7.2 16-16V76c0-8.8-7.2-16-16-16H208c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16zm0 160h288c8.8 0 16-7.2 16-16v-40c0-8.8-7.2-16-16-16H208c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16zm0 160h288c8.8 0 16-7.2 16-16v-40c0-8.8-7.2-16-16-16H208c-8.8 0-16 7.2-16 16v40c0 8.8 7.2 16 16 16zM64 368c-26.5 0-48.6 21.5-48.6 48s22.1 48 48.6 48 48-21.5 48-48-21.5-48-48-48zm92.5-299l-72.2 72.2-15.6 15.6c-4.7 4.7-12.9 4.7-17.6 0L3.5 109.4c-4.7-4.7-4.7-12.3 0-17l15.7-15.7c4.7-4.7 12.3-4.7 17 0l22.7 22.1 63.7-63.3c4.7-4.7 12.3-4.7 17 0l17 16.5c4.6 4.7 4.6 12.3-.1 17zm0 159.6l-72.2 72.2-15.7 15.7c-4.7 4.7-12.9 4.7-17.6 0L3.5 269c-4.7-4.7-4.7-12.3 0-17l15.7-15.7c4.7-4.7 12.3-4.7 17 0l22.7 22.1 63.7-63.7c4.7-4.7 12.3-4.7 17 0l17 17c4.6 4.6 4.6 12.2-.1 16.9z" + }) + }), + execute: (state, api) => { + makeList(state, api, (item, index) => "- [ ] "); + } +}; +//# sourceMappingURL=list.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/preview.js": +/*!*******************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/preview.js ***! + \*******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "codePreview": () => (/* binding */ codePreview), +/* harmony export */ "codeEdit": () => (/* binding */ codeEdit), +/* harmony export */ "codeLive": () => (/* binding */ codeLive) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var codePreview = { + name: 'preview', + keyCommand: 'preview', + value: 'preview', + buttonProps: { + 'aria-label': 'Preview code', + title: 'Preview code' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)("svg", { + width: "12", + height: "12", + viewBox: "0 0 520 520", + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("polygon", { + fill: "currentColor", + points: "0 71.293 0 122 38.023 123 38.023 398 0 397 0 449.707 91.023 450.413 91.023 72.293" + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("polygon", { + fill: "currentColor", + points: "148.023 72.293 520 71.293 520 122 200.023 124 200.023 397 520 396 520 449.707 148.023 450.413" + })] + }), + execute: () => {} +}; +var codeEdit = { + name: 'edit', + keyCommand: 'preview', + value: 'edit', + buttonProps: { + 'aria-label': 'Edit code', + title: 'Edit code' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)("svg", { + width: "12", + height: "12", + viewBox: "0 0 520 520", + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("polygon", { + fill: "currentColor", + points: "0 71.293 0 122 319 122 319 397 0 397 0 449.707 372 449.413 372 71.293" + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("polygon", { + fill: "currentColor", + points: "429 71.293 520 71.293 520 122 481 123 481 396 520 396 520 449.707 429 449.413" + })] + }), + execute: () => {} +}; +var codeLive = { + name: 'live', + keyCommand: 'preview', + value: 'live', + buttonProps: { + 'aria-label': 'Live code', + title: 'Live code' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)("svg", { + width: "12", + height: "12", + viewBox: "0 0 520 520", + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("polygon", { + fill: "currentColor", + points: "0 71.293 0 122 179 122 179 397 0 397 0 449.707 232 449.413 232 71.293" + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("polygon", { + fill: "currentColor", + points: "289 71.293 520 71.293 520 122 341 123 341 396 520 396 520 449.707 289 449.413" + })] + }), + execute: () => {} +}; +//# sourceMappingURL=preview.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/quote.js": +/*!*****************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/quote.js ***! + \*****************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "quote": () => (/* binding */ quote) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/markdownUtils */ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var quote = { + name: 'quote', + keyCommand: 'quote', + shortcuts: 'ctrlcmd+q', + buttonProps: { + 'aria-label': 'Insert a quote', + title: 'Insert a quote' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + width: "12", + height: "12", + viewBox: "0 0 520 520", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M520,95.75 L520,225.75 C520,364.908906 457.127578,437.050625 325.040469,472.443125 C309.577578,476.586875 294.396016,464.889922 294.396016,448.881641 L294.396016,414.457031 C294.396016,404.242891 300.721328,395.025078 310.328125,391.554687 C377.356328,367.342187 414.375,349.711094 414.375,274.5 L341.25,274.5 C314.325781,274.5 292.5,252.674219 292.5,225.75 L292.5,95.75 C292.5,68.8257812 314.325781,47 341.25,47 L471.25,47 C498.174219,47 520,68.8257812 520,95.75 Z M178.75,47 L48.75,47 C21.8257813,47 0,68.8257812 0,95.75 L0,225.75 C0,252.674219 21.8257813,274.5 48.75,274.5 L121.875,274.5 C121.875,349.711094 84.8563281,367.342187 17.828125,391.554687 C8.22132813,395.025078 1.89601563,404.242891 1.89601563,414.457031 L1.89601563,448.881641 C1.89601563,464.889922 17.0775781,476.586875 32.5404687,472.443125 C164.627578,437.050625 227.5,364.908906 227.5,225.75 L227.5,95.75 C227.5,68.8257812 205.674219,47 178.75,47 Z" + }) + }), + execute: (state, api) => { + // Adjust the selection to encompass the whole word if the caret is inside one + var newSelectionRange = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.selectWord)({ + text: state.text, + selection: state.selection + }); + var state1 = api.setSelectionRange(newSelectionRange); + var breaksBeforeCount = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.getBreaksNeededForEmptyLineBefore)(state1.text, state1.selection.start); + var breaksBefore = Array(breaksBeforeCount + 1).join('\n'); + var breaksAfterCount = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.getBreaksNeededForEmptyLineAfter)(state1.text, state1.selection.end); + var breaksAfter = Array(breaksAfterCount + 1).join('\n'); // Replaces the current selection with the quote mark up + + api.replaceSelection(breaksBefore + "> " + state1.selectedText + breaksAfter); + var selectionStart = state1.selection.start + breaksBeforeCount + 2; + var selectionEnd = selectionStart + state1.selectedText.length; + api.setSelectionRange({ + start: selectionStart, + end: selectionEnd + }); + } +}; +//# sourceMappingURL=quote.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/strikeThrough.js": +/*!*************************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/strikeThrough.js ***! + \*************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "strikethrough": () => (/* binding */ strikethrough) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/markdownUtils */ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var strikethrough = { + name: 'strikethrough', + keyCommand: 'strikethrough', + shortcuts: 'ctrl+shift+x', + buttonProps: { + 'aria-label': 'Add strikethrough text', + title: 'Add strikethrough text' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + "data-name": "strikethrough", + width: "12", + height: "12", + role: "img", + viewBox: "0 0 512 512", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M496 288H16c-8.837 0-16-7.163-16-16v-32c0-8.837 7.163-16 16-16h480c8.837 0 16 7.163 16 16v32c0 8.837-7.163 16-16 16zm-214.666 16c27.258 12.937 46.524 28.683 46.524 56.243 0 33.108-28.977 53.676-75.621 53.676-32.325 0-76.874-12.08-76.874-44.271V368c0-8.837-7.164-16-16-16H113.75c-8.836 0-16 7.163-16 16v19.204c0 66.845 77.717 101.82 154.487 101.82 88.578 0 162.013-45.438 162.013-134.424 0-19.815-3.618-36.417-10.143-50.6H281.334zm-30.952-96c-32.422-13.505-56.836-28.946-56.836-59.683 0-33.92 30.901-47.406 64.962-47.406 42.647 0 64.962 16.593 64.962 32.985V136c0 8.837 7.164 16 16 16h45.613c8.836 0 16-7.163 16-16v-30.318c0-52.438-71.725-79.875-142.575-79.875-85.203 0-150.726 40.972-150.726 125.646 0 22.71 4.665 41.176 12.777 56.547h129.823z" + }) + }), + execute: (state, api) => { + // Adjust the selection to encompass the whole word if the caret is inside one + var newSelectionRange = (0,_utils_markdownUtils__WEBPACK_IMPORTED_MODULE_1__.selectWord)({ + text: state.text, + selection: state.selection + }); + var state1 = api.setSelectionRange(newSelectionRange); // Replaces the current selection with the strikethrough mark up + + var state2 = api.replaceSelection("~~" + state1.selectedText + "~~"); // Adjust the selection to not contain the ~~ + + api.setSelectionRange({ + start: state2.selection.end - 2 - state1.selectedText.length, + end: state2.selection.end - 2 + }); + } +}; +//# sourceMappingURL=strikeThrough.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/title.js": +/*!*****************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/title.js ***! + \*****************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "title": () => (/* binding */ title) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _title2__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./title2 */ "./node_modules/@uiw/react-md-editor/esm/commands/title2.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + + +var title = (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, _title2__WEBPACK_IMPORTED_MODULE_2__.title2, { + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("svg", { + width: "12", + height: "12", + viewBox: "0 0 520 520", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("path", { + fill: "currentColor", + d: "M15.7083333,468 C7.03242448,468 0,462.030833 0,454.666667 L0,421.333333 C0,413.969167 7.03242448,408 15.7083333,408 L361.291667,408 C369.967576,408 377,413.969167 377,421.333333 L377,454.666667 C377,462.030833 369.967576,468 361.291667,468 L15.7083333,468 Z M21.6666667,366 C9.69989583,366 0,359.831861 0,352.222222 L0,317.777778 C0,310.168139 9.69989583,304 21.6666667,304 L498.333333,304 C510.300104,304 520,310.168139 520,317.777778 L520,352.222222 C520,359.831861 510.300104,366 498.333333,366 L21.6666667,366 Z M136.835938,64 L136.835937,126 L107.25,126 L107.25,251 L40.75,251 L40.75,126 L-5.68434189e-14,126 L-5.68434189e-14,64 L136.835938,64 Z M212,64 L212,251 L161.648438,251 L161.648438,64 L212,64 Z M378,64 L378,126 L343.25,126 L343.25,251 L281.75,251 L281.75,126 L238,126 L238,64 L378,64 Z M449.047619,189.550781 L520,189.550781 L520,251 L405,251 L405,64 L449.047619,64 L449.047619,189.550781 Z" + }) + }) +}); +//# sourceMappingURL=title.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/title1.js": +/*!******************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/title1.js ***! + \******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "title1": () => (/* binding */ title1) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/InsertTextAtPosition */ "./node_modules/@uiw/react-md-editor/esm/utils/InsertTextAtPosition.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var title1 = { + name: 'title1', + keyCommand: 'title1', + shortcuts: 'ctrlcmd+1', + buttonProps: { + 'aria-label': 'Insert title 1', + title: 'Insert title 1' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", { + style: { + fontSize: 18, + textAlign: 'left' + }, + children: "Title 1" + }), + execute: (state, api) => { + if (state.selection.start === 0 || /\n$/.test(state.text)) { + api.replaceSelection('# '); + } else { + (0,_utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__.insertAtLineStart)('# ', state.selection.start, api.textArea); + } + } +}; +//# sourceMappingURL=title1.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/title2.js": +/*!******************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/title2.js ***! + \******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "title2": () => (/* binding */ title2) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/InsertTextAtPosition */ "./node_modules/@uiw/react-md-editor/esm/utils/InsertTextAtPosition.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var title2 = { + name: 'title2', + keyCommand: 'title2', + shortcuts: 'ctrlcmd+2', + buttonProps: { + 'aria-label': 'Insert title2', + title: 'Insert title 2' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", { + style: { + fontSize: 16, + textAlign: 'left' + }, + children: "Title 2" + }), + execute: (state, api) => { + if (state.selection.start === 0 || /\n$/.test(state.text)) { + api.replaceSelection('## '); + } else { + (0,_utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__.insertAtLineStart)('## ', state.selection.start, api.textArea); + } + } +}; +//# sourceMappingURL=title2.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/title3.js": +/*!******************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/title3.js ***! + \******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "title3": () => (/* binding */ title3) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/InsertTextAtPosition */ "./node_modules/@uiw/react-md-editor/esm/utils/InsertTextAtPosition.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var title3 = { + name: 'title3', + keyCommand: 'title3', + shortcuts: 'ctrlcmd+3', + buttonProps: { + 'aria-label': 'Insert title3', + title: 'Insert title 3' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", { + style: { + fontSize: 15, + textAlign: 'left' + }, + children: "Title 3" + }), + execute: (state, api) => { + if (state.selection.start === 0 || /\n$/.test(state.text)) { + api.replaceSelection('### '); + } else { + (0,_utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__.insertAtLineStart)('### ', state.selection.start, api.textArea); + } + } +}; +//# sourceMappingURL=title3.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/title4.js": +/*!******************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/title4.js ***! + \******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "title4": () => (/* binding */ title4) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/InsertTextAtPosition */ "./node_modules/@uiw/react-md-editor/esm/utils/InsertTextAtPosition.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var title4 = { + name: 'title4', + keyCommand: 'title4', + shortcuts: 'ctrlcmd+4', + buttonProps: { + 'aria-label': 'Insert title4', + title: 'Insert title 4' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", { + style: { + fontSize: 14, + textAlign: 'left' + }, + children: "Title 4" + }), + execute: (state, api) => { + if (state.selection.start === 0 || /\n$/.test(state.text)) { + api.replaceSelection('#### '); + } else { + (0,_utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__.insertAtLineStart)('#### ', state.selection.start, api.textArea); + } + } +}; +//# sourceMappingURL=title4.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/title5.js": +/*!******************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/title5.js ***! + \******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "title5": () => (/* binding */ title5) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/InsertTextAtPosition */ "./node_modules/@uiw/react-md-editor/esm/utils/InsertTextAtPosition.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var title5 = { + name: 'title5', + keyCommand: 'title5', + shortcuts: 'ctrlcmd+5', + buttonProps: { + 'aria-label': 'Insert title5', + title: 'Insert title 5' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", { + style: { + fontSize: 12, + textAlign: 'left' + }, + children: "Title 5" + }), + execute: (state, api) => { + if (state.selection.start === 0 || /\n$/.test(state.text)) { + api.replaceSelection('##### '); + } else { + (0,_utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__.insertAtLineStart)('##### ', state.selection.start, api.textArea); + } + } +}; +//# sourceMappingURL=title5.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/commands/title6.js": +/*!******************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/commands/title6.js ***! + \******************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "title6": () => (/* binding */ title6) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/InsertTextAtPosition */ "./node_modules/@uiw/react-md-editor/esm/utils/InsertTextAtPosition.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + +var title6 = { + name: 'title6', + keyCommand: 'title6', + shortcuts: 'ctrlcmd+6', + buttonProps: { + 'aria-label': 'Insert title6', + title: 'Insert title 6' + }, + icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", { + style: { + fontSize: 12, + textAlign: 'left' + }, + children: "Title 6" + }), + execute: (state, api) => { + if (state.selection.start === 0 || /\n$/.test(state.text)) { + api.replaceSelection('###### '); + } else { + (0,_utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_1__.insertAtLineStart)('###### ', state.selection.start, api.textArea); + } + } +}; +//# sourceMappingURL=title6.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/components/DragBar/index.js": +/*!***************************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/components/DragBar/index.js ***! + \***************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _index_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.css */ "./node_modules/@uiw/react-md-editor/esm/components/DragBar/index.css"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + + +var DragBar = props => { + var { + prefixCls, + onChange + } = props || {}; + var dragRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(); + + function handleMouseMove(event) { + if (dragRef.current) { + var newHeight = dragRef.current.height + event.clientY - dragRef.current.dragY; + + if (newHeight >= props.minHeight && newHeight <= props.maxHeight) { + onChange && onChange(dragRef.current.height + (event.clientY - dragRef.current.dragY)); + } + } + } + + function handleMouseUp() { + dragRef.current = undefined; + } + + function handleMouseDown(event) { + dragRef.current = { + height: props.height, + dragY: event.clientY + }; + } + + (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => { + if (document) { + document.addEventListener('mousemove', handleMouseMove); + document.addEventListener('mouseup', handleMouseUp); + } + + return () => { + if (document) { + document.removeEventListener('mousemove', handleMouseMove); + document.removeEventListener('mouseup', handleMouseUp); + } + }; // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); + var svg = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("svg", { + viewBox: "0 0 512 512", + height: "100%", + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("path", { + fill: "currentColor", + d: "M304 256c0 26.5-21.5 48-48 48s-48-21.5-48-48 21.5-48 48-48 48 21.5 48 48zm120-48c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm-336 0c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48z" + }) + }), []); + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_2__.jsx)("div", { + className: prefixCls + "-bar", + onMouseDown: handleMouseDown, + children: svg + }); +}; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (DragBar); +//# sourceMappingURL=index.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/Markdown.js": +/*!*******************************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/components/TextArea/Markdown.js ***! + \*******************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Markdown) +/* harmony export */ }); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var rehype__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! rehype */ "./node_modules/rehype/index.js"); +/* harmony import */ var _mapbox_rehype_prism__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @mapbox/rehype-prism */ "./node_modules/@mapbox/rehype-prism/index.js"); +/* harmony import */ var _mapbox_rehype_prism__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_mapbox_rehype_prism__WEBPACK_IMPORTED_MODULE_1__); +/* harmony import */ var _Context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../Context */ "./node_modules/@uiw/react-md-editor/esm/Context.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + // @ts-ignore + + + + +function Markdown(props) { + var { + prefixCls + } = props; + var { + markdown = '', + highlightEnable, + dispatch + } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_Context__WEBPACK_IMPORTED_MODULE_2__.EditorContext); + var preRef = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createRef(); + (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => { + if (preRef.current && dispatch) { + dispatch({ + textareaPre: preRef.current + }); + } // eslint-disable-next-line react-hooks/exhaustive-deps + + }, []); + + function html2Escape(sHtml) { + return sHtml.replace(/```(.*)\s+([\s\S]*?)(\s.+)?```/g, str => { + return str.replace(/[<>&"]/g, c => ({ + '<': '<', + '>': '>', + '&': '&', + '"': '"' + })[c]); + }).replace(/[<>&"]/g, c => ({ + '<': '<', + '>': '>', + '&': '&', + '"': '"' + })[c]); + } + + return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => { + if (!highlightEnable || !markdown) { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("pre", { + children: markdown || '', + ref: preRef, + className: prefixCls + "-text-pre wmde-markdown-color" + }); + } + + var str = (0,rehype__WEBPACK_IMPORTED_MODULE_4__.rehype)().data('settings', { + fragment: true + }).use((_mapbox_rehype_prism__WEBPACK_IMPORTED_MODULE_1___default()), { + ignoreMissing: true + }).processSync("
" + html2Escape(markdown) + "\n
"); + return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement('div', { + className: 'wmde-markdown-color', + dangerouslySetInnerHTML: { + __html: str.value + } + }); + }, [highlightEnable, markdown, preRef, prefixCls]); +} +//# sourceMappingURL=Markdown.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/Textarea.js": +/*!*******************************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/components/TextArea/Textarea.js ***! + \*******************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Textarea) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); +/* harmony import */ var _babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ "./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _Context__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../Context */ "./node_modules/@uiw/react-md-editor/esm/Context.js"); +/* harmony import */ var _commands__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../commands */ "./node_modules/@uiw/react-md-editor/esm/commands/index.js"); +/* harmony import */ var _handleKeyDown__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./handleKeyDown */ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/handleKeyDown.js"); +/* harmony import */ var _shortcuts__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./shortcuts */ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/shortcuts.js"); +/* harmony import */ var _index_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./index.css */ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/index.css"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + +var _excluded = ["prefixCls", "onChange"]; + + + + + + + +function Textarea(props) { + var { + prefixCls, + onChange: _onChange + } = props, + other = (0,_babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__["default"])(props, _excluded); + + var { + markdown, + commands, + fullscreen, + preview, + highlightEnable, + extraCommands, + tabSize, + defaultTabEnable, + dispatch + } = (0,react__WEBPACK_IMPORTED_MODULE_2__.useContext)(_Context__WEBPACK_IMPORTED_MODULE_3__.EditorContext); + var textRef = react__WEBPACK_IMPORTED_MODULE_2__.useRef(null); + var executeRef = react__WEBPACK_IMPORTED_MODULE_2__.useRef(); + var statesRef = react__WEBPACK_IMPORTED_MODULE_2__.useRef({ + fullscreen, + preview + }); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(() => { + statesRef.current = { + fullscreen, + preview, + highlightEnable + }; + }, [fullscreen, preview, highlightEnable]); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(() => { + if (textRef.current && dispatch) { + var commandOrchestrator = new _commands__WEBPACK_IMPORTED_MODULE_4__.TextAreaCommandOrchestrator(textRef.current); + executeRef.current = commandOrchestrator; + dispatch({ + textarea: textRef.current, + commandOrchestrator + }); + } // eslint-disable-next-line react-hooks/exhaustive-deps + + }, []); + + var onKeyDown = e => { + (0,_handleKeyDown__WEBPACK_IMPORTED_MODULE_5__["default"])(e, tabSize, defaultTabEnable); + (0,_shortcuts__WEBPACK_IMPORTED_MODULE_6__["default"])(e, [...(commands || []), ...(extraCommands || [])], executeRef.current, dispatch, statesRef.current); + }; + + (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(() => { + if (textRef.current) { + textRef.current.addEventListener('keydown', onKeyDown); + } + + return () => { + if (textRef.current) { + // eslint-disable-next-line react-hooks/exhaustive-deps + textRef.current.removeEventListener('keydown', onKeyDown); + } + }; // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("textarea", (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({ + autoComplete: "off", + autoCorrect: "off", + autoCapitalize: "off", + spellCheck: false + }, other, { + ref: textRef, + className: prefixCls + "-text-input " + (other.className ? other.className : ''), + value: markdown, + onChange: e => { + dispatch && dispatch({ + markdown: e.target.value + }); + _onChange && _onChange(e); + } + })); +} +//# sourceMappingURL=Textarea.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/handleKeyDown.js": +/*!************************************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/components/TextArea/handleKeyDown.js ***! + \************************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ handleKeyDown) +/* harmony export */ }); +/* harmony import */ var _utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/InsertTextAtPosition */ "./node_modules/@uiw/react-md-editor/esm/utils/InsertTextAtPosition.js"); +/* harmony import */ var _commands__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../commands */ "./node_modules/@uiw/react-md-editor/esm/commands/index.js"); +/* harmony import */ var _commands_list__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../commands/list */ "./node_modules/@uiw/react-md-editor/esm/commands/list.js"); + + + +/** + * - `13` - `Enter` + * - `9` - `Tab` + */ + +function stopPropagation(e) { + e.stopPropagation(); + e.preventDefault(); +} + +function handleKeyDown(e, tabSize, defaultTabEnable) { + if (tabSize === void 0) { + tabSize = 2; + } + + if (defaultTabEnable === void 0) { + defaultTabEnable = false; + } + + var target = e.target; + var starVal = target.value.substr(0, target.selectionStart); + var valArr = starVal.split('\n'); + var currentLineStr = valArr[valArr.length - 1]; + var textArea = new _commands__WEBPACK_IMPORTED_MODULE_1__.TextAreaTextApi(target); + /** + * `9` - `Tab` + */ + + if (!defaultTabEnable && e.code && e.code.toLowerCase() === 'tab') { + stopPropagation(e); + var space = new Array(tabSize + 1).join(' '); + + if (target.selectionStart !== target.selectionEnd) { + var _star = target.value.substring(0, target.selectionStart).split('\n'); + + var _end = target.value.substring(0, target.selectionEnd).split('\n'); + + var modifiedTextLine = []; + + _end.forEach((item, idx) => { + if (item !== _star[idx]) { + modifiedTextLine.push(item); + } + }); + + var modifiedText = modifiedTextLine.join('\n'); + var oldSelectText = target.value.substring(target.selectionStart, target.selectionEnd); + var newStarNum = target.value.substring(0, target.selectionStart).length; + textArea.setSelectionRange({ + start: target.value.indexOf(modifiedText), + end: target.selectionEnd + }); + var modifiedTextObj = (0,_commands_list__WEBPACK_IMPORTED_MODULE_2__.insertBeforeEachLine)(modifiedText, e.shiftKey ? '' : space); + var text = modifiedTextObj.modifiedText; + + if (e.shiftKey) { + text = text.split('\n').map(item => item.replace(new RegExp("^" + space), '')).join('\n'); + } + + textArea.replaceSelection(text); + var startTabSize = e.shiftKey ? -tabSize : tabSize; + var endTabSize = e.shiftKey ? -modifiedTextLine.length * tabSize : modifiedTextLine.length * tabSize; + textArea.setSelectionRange({ + start: newStarNum + startTabSize, + end: newStarNum + oldSelectText.length + endTabSize + }); + } else { + return (0,_utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_0__.insertTextAtPosition)(target, space); + } + } else if (e.code && e.code.toLowerCase() === 'enter' && (/^(-|\*)\s/.test(currentLineStr) || /^\d+.\s/.test(currentLineStr))) { + /** + * `13` - `Enter` + */ + stopPropagation(e); + var startStr = '\n- '; + + if (currentLineStr.startsWith('*')) { + startStr = '\n* '; + } + + if (currentLineStr.startsWith('- [ ]')) { + startStr = '\n- [ ] '; + } else if (currentLineStr.startsWith('- [X]')) { + startStr = '\n- [X] '; + } + + if (/^\d+.\s/.test(currentLineStr)) { + startStr = "\n" + (parseInt(currentLineStr) + 1) + ". "; + } + + return (0,_utils_InsertTextAtPosition__WEBPACK_IMPORTED_MODULE_0__.insertTextAtPosition)(target, startStr); + } +} +//# sourceMappingURL=handleKeyDown.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/index.js": +/*!****************************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/components/TextArea/index.js ***! + \****************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ TextArea) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); +/* harmony import */ var _babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ "./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _Context__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../Context */ "./node_modules/@uiw/react-md-editor/esm/Context.js"); +/* harmony import */ var _shortcuts__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./shortcuts */ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/shortcuts.js"); +/* harmony import */ var _Markdown__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Markdown */ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/Markdown.js"); +/* harmony import */ var _Textarea__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Textarea */ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/Textarea.js"); +/* harmony import */ var _commands__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../commands */ "./node_modules/@uiw/react-md-editor/esm/commands/index.js"); +/* harmony import */ var _index_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./index.css */ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/index.css"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + +var _excluded = ["prefixCls", "className", "onScroll", "renderTextarea"]; + + + + + + + + + +function TextArea(props) { + var _ref = props || {}, + { + prefixCls, + className, + onScroll, + renderTextarea + } = _ref, + otherProps = (0,_babel_runtime_helpers_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__["default"])(_ref, _excluded); + + var { + markdown, + scrollTop, + commands, + extraCommands, + dispatch + } = (0,react__WEBPACK_IMPORTED_MODULE_2__.useContext)(_Context__WEBPACK_IMPORTED_MODULE_3__.EditorContext); + var textRef = react__WEBPACK_IMPORTED_MODULE_2__.useRef(null); + var executeRef = react__WEBPACK_IMPORTED_MODULE_2__.useRef(); + var warp = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createRef(); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(() => { + var state = {}; + + if (warp.current) { + state.textareaWarp = warp.current || undefined; + warp.current.scrollTop = scrollTop || 0; + } + + if (dispatch) { + dispatch((0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, state)); + } // eslint-disable-next-line react-hooks/exhaustive-deps + + }, []); + (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(() => { + if (textRef.current && dispatch) { + var _commandOrchestrator = new _commands__WEBPACK_IMPORTED_MODULE_7__.TextAreaCommandOrchestrator(textRef.current); + + executeRef.current = _commandOrchestrator; + dispatch({ + textarea: textRef.current, + commandOrchestrator: _commandOrchestrator + }); + } // eslint-disable-next-line react-hooks/exhaustive-deps + + }, []); + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx)("div", { + ref: warp, + className: prefixCls + "-aree " + (className || ''), + onScroll: onScroll, + children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx)("div", { + className: prefixCls + "-text", + children: renderTextarea ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.cloneElement(renderTextarea((0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, otherProps, { + value: markdown, + autoComplete: 'off', + autoCorrect: 'off', + spellCheck: 'false', + autoCapitalize: 'off', + className: prefixCls + "-text-input", + style: { + WebkitTextFillColor: 'inherit', + overflow: 'auto' + } + }), { + dispatch, + onChange: otherProps.onChange, + shortcuts: _shortcuts__WEBPACK_IMPORTED_MODULE_4__["default"], + useContext: { + commands, + extraCommands, + commandOrchestrator: executeRef.current + } + }), { + ref: textRef + }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsxs)(react__WEBPACK_IMPORTED_MODULE_2__.Fragment, { + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx)(_Markdown__WEBPACK_IMPORTED_MODULE_5__["default"], { + prefixCls: prefixCls + }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx)(_Textarea__WEBPACK_IMPORTED_MODULE_6__["default"], (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({ + prefixCls: prefixCls + }, otherProps))] + }) + }) + }); +} +//# sourceMappingURL=index.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/components/TextArea/shortcuts.js": +/*!********************************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/components/TextArea/shortcuts.js ***! + \********************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ shortcutsHandle) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); + + +function getCommands(data, resulte) { + if (data === void 0) { + data = []; + } + + if (resulte === void 0) { + resulte = {}; + } + + data.forEach(item => { + if (item.children && Array.isArray(item.children)) { + resulte = (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, resulte, getCommands(item.children || [])); + } else if (item.keyCommand && item.shortcuts && item.execute) { + resulte[item.shortcuts.toLocaleLowerCase()] = item; + } + }); + return resulte; +} + +function shortcutsHandle(e, commands, commandOrchestrator, dispatch, state) { + if (commands === void 0) { + commands = []; + } + + var data = getCommands(commands || []); + var shortcuts = []; + + if (e.altKey) { + shortcuts.push('alt'); + } + + if (e.shiftKey) { + shortcuts.push('shift'); + } + + if (e.metaKey) { + shortcuts.push('cmd'); + } + + if (e.ctrlKey) { + shortcuts.push('ctrl'); + } + + if (shortcuts.length > 0 && !/(control|alt|meta|shift)/.test(e.key.toLocaleLowerCase())) { + shortcuts.push(e.key.toLocaleLowerCase()); + } + + if (/escape/.test(e.key.toLocaleLowerCase())) { + shortcuts.push('escape'); + } + + if (shortcuts.length < 1) { + return; + } + + var equal = !!data[shortcuts.join('+')]; + var command = equal ? data[shortcuts.join('+')] : undefined; + Object.keys(data).forEach(item => { + var isequal = item.split('+').every(v => { + if (/ctrlcmd/.test(v)) { + return shortcuts.includes('ctrl') || shortcuts.includes('cmd'); + } + + return shortcuts.includes(v); + }); + + if (isequal) { + command = data[item]; + } + }); + + if (command && commandOrchestrator) { + e.stopPropagation(); + e.preventDefault(); + commandOrchestrator.executeCommand(command, dispatch, state); + return; + } +} +//# sourceMappingURL=shortcuts.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/components/Toolbar/Child.js": +/*!***************************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/components/Toolbar/Child.js ***! + \***************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ Child) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _Child_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Child.css */ "./node_modules/@uiw/react-md-editor/esm/components/Toolbar/Child.css"); +/* harmony import */ var ___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ */ "./node_modules/@uiw/react-md-editor/esm/components/Toolbar/index.js"); +/* harmony import */ var _Context__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../Context */ "./node_modules/@uiw/react-md-editor/esm/Context.js"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + + + + +function Child(props) { + var { + prefixCls, + groupName, + commands, + children + } = props || {}; + var { + barPopup = {} + } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(_Context__WEBPACK_IMPORTED_MODULE_4__.EditorContext); + return (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(() => /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)("div", { + className: prefixCls + "-toolbar-child " + (groupName && barPopup[groupName] ? 'active' : ''), + onClick: e => e.stopPropagation(), + children: Array.isArray(commands) ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(___WEBPACK_IMPORTED_MODULE_3__["default"], (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({ + commands: commands + }, props, { + height: "", + isChild: true + })) : children + }), // eslint-disable-next-line react-hooks/exhaustive-deps + [commands, barPopup, groupName, prefixCls]); +} +//# sourceMappingURL=Child.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/components/Toolbar/index.js": +/*!***************************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/components/Toolbar/index.js ***! + \***************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "ToolbarItems": () => (/* binding */ ToolbarItems), +/* harmony export */ "default": () => (/* binding */ Toolbar) +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/esm/extends.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _Context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../Context */ "./node_modules/@uiw/react-md-editor/esm/Context.js"); +/* harmony import */ var _Child__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Child */ "./node_modules/@uiw/react-md-editor/esm/components/Toolbar/Child.js"); +/* harmony import */ var _index_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./index.css */ "./node_modules/@uiw/react-md-editor/esm/components/Toolbar/index.css"); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react/jsx-runtime */ "./node_modules/react/jsx-runtime.js"); + + + + + + + +function ToolbarItems(props) { + var { + prefixCls + } = props; + var { + fullscreen, + preview, + barPopup = {}, + commandOrchestrator, + dispatch + } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(_Context__WEBPACK_IMPORTED_MODULE_2__.EditorContext); + var originalOverflow = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(''); + + function handleClick(command, name) { + if (!dispatch) return; + var state = { + barPopup: (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, barPopup) + }; + + if (command.keyCommand === 'preview') { + state.preview = command.value; + } + + if (command.keyCommand === 'fullscreen') { + state.fullscreen = !fullscreen; + } + + if (props.commands && command.keyCommand === 'group') { + props.commands.forEach(item => { + if (name === item.groupName) { + state.barPopup[name] = true; + } else if (item.keyCommand) { + state.barPopup[item.groupName] = false; + } + }); + } else if (name || command.parent) { + Object.keys(state.barPopup || {}).forEach(keyName => { + state.barPopup[keyName] = false; + }); + } + + if (Object.keys(state).length) { + dispatch((0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, state)); + } + + commandOrchestrator && commandOrchestrator.executeCommand(command); + } + + (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(() => { + if (document) { + if (fullscreen) { + // prevent scroll on fullscreen + document.body.style.overflow = 'hidden'; + } else { + // get the original overflow only the first time + if (!originalOverflow.current) { + originalOverflow.current = window.getComputedStyle(document.body, null).overflow; + } // reset to the original overflow + + + document.body.style.overflow = originalOverflow.current; + } + } + }, [fullscreen, originalOverflow]); + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)("ul", { + children: (props.commands || []).map((item, idx) => { + if (item.keyCommand === 'divider') { + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)("li", (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, item.liProps, { + className: prefixCls + "-toolbar-divider" + }), idx); + } + + if (!item.keyCommand) return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, {}); + var activeBtn = fullscreen && item.keyCommand === 'fullscreen' || item.keyCommand === 'preview' && preview === item.value; + var childNode = item.children && typeof item.children === 'function' ? item.children({ + getState: () => commandOrchestrator.getState(), + textApi: commandOrchestrator ? commandOrchestrator.textApi : undefined, + close: () => handleClick({}, item.groupName), + execute: () => handleClick({ + execute: item.execute + }) + }) : undefined; + var disabled = barPopup && preview && preview === 'preview' && !/(preview|fullscreen)/.test(item.keyCommand); + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)("li", (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, item.liProps, { + className: activeBtn ? "active" : '', + children: [!item.buttonProps && item.icon, item.buttonProps && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement('button', (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({ + type: 'button', + disabled, + 'data-name': item.name + }, item.buttonProps, { + onClick: evn => { + evn.stopPropagation(); + handleClick(item, item.groupName); + } + }), item.icon), item.children && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(_Child__WEBPACK_IMPORTED_MODULE_3__["default"], { + groupName: item.groupName, + prefixCls: prefixCls, + children: childNode, + commands: Array.isArray(item.children) ? item.children : undefined + })] + }), idx); + }) + }); +} +function Toolbar(props) { + if (props === void 0) { + props = {}; + } + + var { + prefixCls, + height = 29, + isChild + } = props; + var { + commands, + extraCommands + } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(_Context__WEBPACK_IMPORTED_MODULE_2__.EditorContext); + return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsxs)("div", { + className: prefixCls + "-toolbar", + style: { + height + }, + children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(ToolbarItems, (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, props, { + commands: props.commands || commands || [] + })), !isChild && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__.jsx)(ToolbarItems, (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__["default"])({}, props, { + commands: extraCommands || [] + }))] + }); +} +//# sourceMappingURL=index.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/index.js": +/*!********************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/index.js ***! + \********************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "TextAreaCommandOrchestrator": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.TextAreaCommandOrchestrator), +/* harmony export */ "TextAreaTextApi": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.TextAreaTextApi), +/* harmony export */ "bold": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.bold), +/* harmony export */ "checkedListCommand": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.checkedListCommand), +/* harmony export */ "code": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.code), +/* harmony export */ "codeBlock": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.codeBlock), +/* harmony export */ "codeEdit": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.codeEdit), +/* harmony export */ "codeLive": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.codeLive), +/* harmony export */ "codePreview": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.codePreview), +/* harmony export */ "divider": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.divider), +/* harmony export */ "fullscreen": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.fullscreen), +/* harmony export */ "getCommands": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.getCommands), +/* harmony export */ "getExtraCommands": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.getExtraCommands), +/* harmony export */ "getStateFromTextArea": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.getStateFromTextArea), +/* harmony export */ "group": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.group), +/* harmony export */ "hr": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.hr), +/* harmony export */ "image": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.image), +/* harmony export */ "italic": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.italic), +/* harmony export */ "link": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.link), +/* harmony export */ "orderedListCommand": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.orderedListCommand), +/* harmony export */ "quote": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.quote), +/* harmony export */ "strikethrough": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.strikethrough), +/* harmony export */ "title": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.title), +/* harmony export */ "title1": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.title1), +/* harmony export */ "title2": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.title2), +/* harmony export */ "title3": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.title3), +/* harmony export */ "title4": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.title4), +/* harmony export */ "title5": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.title5), +/* harmony export */ "title6": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.title6), +/* harmony export */ "unorderedListCommand": () => (/* reexport safe */ _commands__WEBPACK_IMPORTED_MODULE_1__.unorderedListCommand), +/* harmony export */ "getBreaksNeededForEmptyLineAfter": () => (/* reexport safe */ _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_2__.getBreaksNeededForEmptyLineAfter), +/* harmony export */ "getBreaksNeededForEmptyLineBefore": () => (/* reexport safe */ _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_2__.getBreaksNeededForEmptyLineBefore), +/* harmony export */ "getSurroundingWord": () => (/* reexport safe */ _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_2__.getSurroundingWord), +/* harmony export */ "selectWord": () => (/* reexport safe */ _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_2__.selectWord), +/* harmony export */ "EditorContext": () => (/* reexport safe */ _Context__WEBPACK_IMPORTED_MODULE_3__.EditorContext), +/* harmony export */ "reducer": () => (/* reexport safe */ _Context__WEBPACK_IMPORTED_MODULE_3__.reducer), +/* harmony export */ "MarkdownUtil": () => (/* reexport module object */ _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_2__), +/* harmony export */ "commands": () => (/* reexport module object */ _commands__WEBPACK_IMPORTED_MODULE_1__), +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _Editor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Editor */ "./node_modules/@uiw/react-md-editor/esm/Editor.js"); +/* harmony import */ var _commands__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./commands */ "./node_modules/@uiw/react-md-editor/esm/commands/index.js"); +/* harmony import */ var _utils_markdownUtils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/markdownUtils */ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js"); +/* harmony import */ var _Context__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Context */ "./node_modules/@uiw/react-md-editor/esm/Context.js"); + + + + + + + + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_Editor__WEBPACK_IMPORTED_MODULE_0__["default"]); +//# sourceMappingURL=index.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/utils/InsertTextAtPosition.js": +/*!*****************************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/utils/InsertTextAtPosition.js ***! + \*****************************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "insertAtLineStart": () => (/* binding */ insertAtLineStart), +/* harmony export */ "insertTextAtPosition": () => (/* binding */ insertTextAtPosition) +/* harmony export */ }); +/** + * The MIT License + * Copyright (c) 2018 Dmitriy Kubyshkin + * Copied from https://github.com/grassator/insert-text-at-cursor + */ +var browserSupportsTextareaTextNodes; +/** + * @param {HTMLElement} input + * @return {boolean} + */ + +function canManipulateViaTextNodes(input) { + if (input.nodeName !== 'TEXTAREA') { + return false; + } + + if (typeof browserSupportsTextareaTextNodes === 'undefined') { + var textarea = document.createElement('textarea'); + textarea.value = '1'; + browserSupportsTextareaTextNodes = !!textarea.firstChild; + } + + return browserSupportsTextareaTextNodes; +} +/** + * @param {string} val + * @param {number} cursorIdx + * @param {HTMLTextAreaElement|HTMLInputElement} input + * @return {void} + */ + + +var insertAtLineStart = (val, cursorIdx, input) => { + var content = input.value; + var startIdx = 0; + + while (cursorIdx--) { + var char = content[cursorIdx]; + + if (char === '\n') { + startIdx = cursorIdx + 1; + break; + } + } + + input.focus(); + input.setRangeText(val, startIdx, startIdx); + input.dispatchEvent(new Event('input', { + bubbles: true + })); +}; +/** + * @param {HTMLTextAreaElement|HTMLInputElement} input + * @param {string} text + * @returns {void} + */ + +function insertTextAtPosition(input, text) { + // Most of the used APIs only work with the field selected + input.focus(); // IE 8-10 + + if (document.selection) { + var ieRange = document.selection.createRange(); + ieRange.text = text; // Move cursor after the inserted text + + ieRange.collapse(false + /* to the end */ + ); + ieRange.select(); + return; + } // Webkit + Edge + + + var isSuccess = document.execCommand && document.execCommand('insertText', false, text); + + if (!isSuccess) { + var start = input.selectionStart; + var end = input.selectionEnd; // Firefox (non-standard method) + + if (typeof input.setRangeText === 'function') { + input.setRangeText(text); + } else { + // To make a change we just need a Range, not a Selection + var range = document.createRange(); + var textNode = document.createTextNode(text); + + if (canManipulateViaTextNodes(input)) { + var node = input.firstChild; // If textarea is empty, just insert the text + + if (!node) { + input.appendChild(textNode); + } else { + // Otherwise we need to find a nodes for start and end + var offset = 0; + var startNode = null; + var endNode = null; + + while (node && (startNode === null || endNode === null)) { + var nodeLength = node.nodeValue.length; // if start of the selection falls into current node + + if (start >= offset && start <= offset + nodeLength) { + range.setStart(startNode = node, start - offset); + } // if end of the selection falls into current node + + + if (end >= offset && end <= offset + nodeLength) { + range.setEnd(endNode = node, end - offset); + } + + offset += nodeLength; + node = node.nextSibling; + } // If there is some text selected, remove it as we should replace it + + + if (start !== end) { + range.deleteContents(); + } + } + } // If the node is a textarea and the range doesn't span outside the element + // + // Get the commonAncestorContainer of the selected range and test its type + // If the node is of type `#text` it means that we're still working with text nodes within our textarea element + // otherwise, if it's of type `#document` for example it means our selection spans outside the textarea. + + + if (canManipulateViaTextNodes(input) && range.commonAncestorContainer.nodeName === '#text') { + // Finally insert a new node. The browser will automatically split start and end nodes into two if necessary + range.insertNode(textNode); + } else { + // If the node is not a textarea or the range spans outside a textarea the only way is to replace the whole value + var value = input.value; + input.value = value.slice(0, start) + text + value.slice(end); + } + } // Correct the cursor position to be at the end of the insertion + + + input.setSelectionRange(start + text.length, start + text.length); // Notify any possible listeners of the change + + var e = document.createEvent('UIEvent'); + e.initEvent('input', true, false); + input.dispatchEvent(e); + } +} +//# sourceMappingURL=InsertTextAtPosition.js.map + +/***/ }), + +/***/ "./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js": +/*!**********************************************************************!*\ + !*** ./node_modules/@uiw/react-md-editor/esm/utils/markdownUtils.js ***! + \**********************************************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "selectWord": () => (/* binding */ selectWord), +/* harmony export */ "getBreaksNeededForEmptyLineBefore": () => (/* binding */ getBreaksNeededForEmptyLineBefore), +/* harmony export */ "getBreaksNeededForEmptyLineAfter": () => (/* binding */ getBreaksNeededForEmptyLineAfter), +/* harmony export */ "getSurroundingWord": () => (/* binding */ getSurroundingWord) +/* harmony export */ }); +function selectWord(_ref) { + var { + text, + selection + } = _ref; + + if (text && text.length && selection.start === selection.end) { + // the user is pointing to a word + return getSurroundingWord(text, selection.start); + } + + return selection; +} +/** + * Gets the number of line-breaks that would have to be inserted before the given 'startPosition' + * to make sure there's an empty line between 'startPosition' and the previous text + */ + +function getBreaksNeededForEmptyLineBefore(text, startPosition) { + if (text === void 0) { + text = ''; + } + + if (startPosition === 0) return 0; // rules: + // - If we're in the first line, no breaks are needed + // - Otherwise there must be 2 breaks before the previous character. Depending on how many breaks exist already, we + // may need to insert 0, 1 or 2 breaks + + var neededBreaks = 2; + var isInFirstLine = true; + + for (var i = startPosition - 1; i >= 0 && neededBreaks >= 0; i--) { + switch (text.charCodeAt(i)) { + case 32: + // blank space + continue; + + case 10: + // line break + neededBreaks--; + isInFirstLine = false; + break; + + default: + return neededBreaks; + } + } + + return isInFirstLine ? 0 : neededBreaks; +} +/** + * Gets the number of line-breaks that would have to be inserted after the given 'startPosition' + * to make sure there's an empty line between 'startPosition' and the next text + */ + +function getBreaksNeededForEmptyLineAfter(text, startPosition) { + if (text === void 0) { + text = ''; + } + + if (startPosition === text.length - 1) return 0; // rules: + // - If we're in the first line, no breaks are needed + // - Otherwise there must be 2 breaks before the previous character. Depending on how many breaks exist already, we + // may need to insert 0, 1 or 2 breaks + + var neededBreaks = 2; + var isInLastLine = true; + + for (var i = startPosition; i < text.length && neededBreaks >= 0; i++) { + switch (text.charCodeAt(i)) { + case 32: + continue; + + case 10: + { + neededBreaks--; + isInLastLine = false; + break; + } + + default: + return neededBreaks; + } + } + + return isInLastLine ? 0 : neededBreaks; +} +function getSurroundingWord(text, position) { + if (!text) throw Error("Argument 'text' should be truthy"); + + var isWordDelimiter = c => c === ' ' || c.charCodeAt(0) === 10; // leftIndex is initialized to 0 because if selection is 0, it won't even enter the iteration + + + var start = 0; // rightIndex is initialized to text.length because if selection is equal to text.length it won't even enter the interation + + var end = text.length; // iterate to the left + + for (var i = position; i - 1 > -1; i--) { + if (isWordDelimiter(text[i - 1])) { + start = i; + break; + } + } // iterate to the right + + + for (var _i = position; _i < text.length; _i++) { + if (isWordDelimiter(text[_i])) { + end = _i; + break; + } + } + + return { + start, + end + }; +} +//# sourceMappingURL=markdownUtils.js.map + +/***/ }), + /***/ "./node_modules/axios/index.js": /*!*************************************!*\ !*** ./node_modules/axios/index.js ***! @@ -29660,7 +33020,8 @@ __webpack_require__.r(__webpack_exports__); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); /* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/Alert/Alert.js"); /* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/AlertTitle/AlertTitle.js"); -/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/Divider/Divider.js"); +/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/Button/Button.js"); +/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/Divider/Divider.js"); /* harmony import */ var storage_encryption__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! storage-encryption */ "./node_modules/storage-encryption/build/index.js"); /* harmony import */ var storage_encryption__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(storage_encryption__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router/esm/react-router.js"); @@ -29788,13 +33149,20 @@ function App() { var AuthButton = function AuthButton() { var history = (0,react_router_dom__WEBPACK_IMPORTED_MODULE_5__.useHistory)(); - return user ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement("p", null, "Welcome!", " ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement("button", { + return user ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement("p", null, "Bienvenue !", " ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_8__["default"], { + variant: "outlined", + size: "small", + sx: { + align: "right" + }, onClick: function onClick() { signout(function () { return history.push("/"); }); } - }, "Sign out")) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement("p", null, "You are not logged in."); + }, "Fermer mon carnet \xE0 clef")) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement("p", null, "Votre carnet est ferm\xE9.", " ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(react_router_dom__WEBPACK_IMPORTED_MODULE_9__.Link, { + to: "/diary/public/pages" + }, "Voir vos pages")); }; function updatePassphrase(newPassphrase) { @@ -29841,7 +33209,7 @@ function App() { function ListPage() { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement("div", { - className: "col-md-8" + className: "col-md-12" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(_List__WEBPACK_IMPORTED_MODULE_1__["default"], { pages: listPages, url: getPageContentUrl, @@ -29849,7 +33217,7 @@ function App() { setPassphrase: setPassphrase, csrf: csrf, removeUrl: removeUrl - }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_8__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(_Form__WEBPACK_IMPORTED_MODULE_0__["default"], { + }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(_Form__WEBPACK_IMPORTED_MODULE_0__["default"], { setListPages: setListPages, csrf: csrf, url: postUrl, @@ -29857,9 +33225,13 @@ function App() { })); } - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(AuthButton, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(Error, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement("ul", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(react_router_dom__WEBPACK_IMPORTED_MODULE_9__.Link, { - to: "/diary/public/pages" - }, "Voir vos pages"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(react_router_dom__WEBPACK_IMPORTED_MODULE_5__.Switch, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(react_router_dom__WEBPACK_IMPORTED_MODULE_5__.Route, { + return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(AuthButton, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(Error, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__["default"], { + sx: { + height: "20px", + mb: "20px", + mt: "10px" + } + }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(react_router_dom__WEBPACK_IMPORTED_MODULE_5__.Switch, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(react_router_dom__WEBPACK_IMPORTED_MODULE_5__.Route, { path: "/diary/public/pass" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(PromptPage, null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3__.createElement(PrivateRoute, { path: "/diary/public/pages" @@ -29917,16 +33289,12 @@ __webpack_require__.r(__webpack_exports__); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); /* harmony import */ var storage_encryption__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! storage-encryption */ "./node_modules/storage-encryption/build/index.js"); /* harmony import */ var storage_encryption__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(storage_encryption__WEBPACK_IMPORTED_MODULE_2__); +/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/Stack/Stack.js"); +/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/TextField/TextField.js"); +/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/Button/Button.js"); +/* harmony import */ var _uiw_react_md_editor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @uiw/react-md-editor */ "./node_modules/@uiw/react-md-editor/esm/index.js"); -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } - -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 _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 _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } @@ -29937,10 +33305,18 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } +function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } + +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 _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 _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 _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } + var __awaiter = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { @@ -29975,6 +33351,8 @@ var __awaiter = undefined && undefined.__awaiter || function (thisArg, _argument + + var encryptStorage = new storage_encryption__WEBPACK_IMPORTED_MODULE_2__.EncryptStorage('test'); // TODO la clef doit venir de l'utilisateur function PageForm(_ref) { @@ -29986,6 +33364,11 @@ function PageForm(_ref) { passphrase = _ref.passphrase; var isPassphraseSet = passphrase !== null; + var _React$useState = react__WEBPACK_IMPORTED_MODULE_1__.useState(""), + _React$useState2 = _slicedToArray(_React$useState, 2), + content = _React$useState2[0], + setContent = _React$useState2[1]; + var onSubmit = function onSubmit(event) { return __awaiter(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().mark(function _callee() { var HTMLForm, decryptedFormData, encryptedFormData, _iterator, _step, _step$value, key, value, newEncryptedString, response, json, uuid, _iterator2, _step2, _key, _newEncryptedString; @@ -30017,19 +33400,21 @@ function PageForm(_ref) { _iterator.f(); } + encryptStorage.encrypt('uuidtext', content); + encryptedFormData.append("text", "" + localStorage.getItem('uuidtext')); encryptedFormData.append('_token', csrf); - _context.next = 10; + _context.next = 12; return fetch(url, { method: 'POST', body: encryptedFormData }); - case 10: + case 12: response = _context.sent; - _context.next = 13; + _context.next = 15; return response.json(); - case 13: + case 15: json = _context.sent; uuid = json.uuid; _iterator2 = _createForOfIteratorHelper(decryptedFormData.keys()); @@ -30059,7 +33444,7 @@ function PageForm(_ref) { }); } - case 18: + case 20: case "end": return _context.stop(); } @@ -30069,71 +33454,27 @@ function PageForm(_ref) { }; if (isPassphraseSet) { - return ( - /*#__PURE__*/ - - /* - - - - - - */ - react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", { - className: "container" - }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", { - className: "row justify-content-center" - }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", { - className: "col-md-8" - }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", { - className: "card" - }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("form", { - action: url, - id: "postPage", - method: "post", - onSubmit: onSubmit - }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("label", { - htmlFor: "title" - }, "Titre:"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("input", { - id: "title", - name: "title" - }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("hr", null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("label", { - htmlFor: "text" - }, "Texte:"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("textarea", { - id: "text", - name: "text" - }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("hr", null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("input", { - type: "submit", - value: "Enregistrer" - })))))) - ); + return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("form", { + action: url, + id: "postPage", + method: "post", + onSubmit: onSubmit + }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_4__["default"], { + component: "div", + spacing: 2 + }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_5__["default"], { + label: "Titre", + id: "title", + name: "title", + variant: "outlined", + size: "small" + }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_uiw_react_md_editor__WEBPACK_IMPORTED_MODULE_3__["default"], { + value: content, + onChange: setContent + }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_6__["default"], { + variant: "contained", + type: "submit" + }, "Enregistrer"))); } return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", null); @@ -30152,14 +33493,64 @@ __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ Pages) /* harmony export */ }); -/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/Grid/Grid.js"); -/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/Pagination/Pagination.js"); -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); -/* harmony import */ var _Page__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Page */ "./resources/js/components/pages/Page.tsx"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/Grid/Grid.js"); +/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @mui/material */ "./node_modules/@mui/material/Pagination/Pagination.js"); +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); +/* harmony import */ var _Page__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Page */ "./resources/js/components/pages/Page.tsx"); + + +function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } + +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 _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 _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 _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } + +var __awaiter = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function (resolve) { + resolve(value); + }); + } + + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + + function step(result) { + result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); + } + + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; + function Pages(_ref) { + var _this = this; + var pages = _ref.pages, url = _ref.url, removeUrl = _ref.removeUrl, @@ -30167,30 +33558,119 @@ function Pages(_ref) { passphrase = _ref.passphrase, setPassphrase = _ref.setPassphrase; var isPassphraseSet = passphrase !== null; - var listPages = pages.map(function (page) { - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Page__WEBPACK_IMPORTED_MODULE_1__["default"], { + var perPage = 3; + var total = pages.length; + var numberOfPage = Math.ceil(total / perPage); + + var _React$useState = react__WEBPACK_IMPORTED_MODULE_1__.useState(1), + _React$useState2 = _slicedToArray(_React$useState, 2), + currentPage = _React$useState2[0], + setPage = _React$useState2[1]; + + var _React$useState3 = react__WEBPACK_IMPORTED_MODULE_1__.useState(pages), + _React$useState4 = _slicedToArray(_React$useState3, 2), + listPages = _React$useState4[0], + setListPages = _React$useState4[1]; + + var removePage = function removePage(id) { + return __awaiter(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().mark(function _callee() { + var formData, response, json, newListPages; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + formData = new FormData(); + formData.set('_token', csrf); + formData.set('_method', 'DELETE'); + _context.next = 5; + return fetch(removeUrl.replace("replace_me", id), { + method: 'POST', + body: formData + }); + + case 5: + response = _context.sent; + _context.next = 8; + return response.json(); + + case 8: + json = _context.sent; + + if (json.success) { + console.log(listPages.length); + newListPages = listPages.filter(function (value) { + console.log(value.id); + return value.id !== id; + }); + setListPages(newListPages); + console.log(newListPages.length); + console.log(listPages.length); + updateListPages(newListPages.slice((currentPage - 1) * perPage, (currentPage - 1) * perPage + perPage).map(function (page) { + return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_Page__WEBPACK_IMPORTED_MODULE_2__["default"], { + page: page, + url: url, + remove: removePage, + setPassphrase: setPassphrase, + passphrase: passphrase, + key: page.id + }); + })); + } + + case 10: + case "end": + return _context.stop(); + } + } + }, _callee); + })); + }; + + var _React$useState5 = react__WEBPACK_IMPORTED_MODULE_1__.useState(listPages.slice((currentPage - 1) * perPage, (currentPage - 1) * perPage + perPage).map(function (page) { + return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_Page__WEBPACK_IMPORTED_MODULE_2__["default"], { page: page, url: url, + remove: removePage, setPassphrase: setPassphrase, passphrase: passphrase, - csrf: csrf, - removeUrl: removeUrl, key: page.id }); - }); + })), + _React$useState6 = _slicedToArray(_React$useState5, 2), + listPagesDisplayed = _React$useState6[0], + updateListPages = _React$useState6[1]; + + var handlePageChange = function handlePageChange(event, value) { + setPage(value); + updateListPages(listPages.slice((value - 1) * perPage, (value - 1) * perPage + perPage).map(function (page) { + return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_Page__WEBPACK_IMPORTED_MODULE_2__["default"], { + page: page, + url: url, + remove: removePage, + setPassphrase: setPassphrase, + passphrase: passphrase, + key: page.id + }); + })); + }; if (isPassphraseSet) { - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_2__["default"], { + return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_3__["default"], { container: true, rowSpacing: 1, columnSpacing: 1 - }, listPages), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_3__["default"], { - count: 10, + }, listPagesDisplayed), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_4__["default"], { + count: numberOfPage, + page: currentPage, + onChange: handlePageChange, + sx: { + align: "center" + }, color: "primary" })); } - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", null); + return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", null); } /***/ }), @@ -30225,7 +33705,7 @@ __webpack_require__.r(__webpack_exports__); /* harmony import */ var storage_encryption__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! storage-encryption */ "./node_modules/storage-encryption/build/index.js"); /* harmony import */ var storage_encryption__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(storage_encryption__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _mui_icons_material__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @mui/icons-material */ "./node_modules/@mui/icons-material/esm/Delete.js"); -/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js"); +/* harmony import */ var _uiw_react_md_editor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @uiw/react-md-editor */ "./node_modules/@uiw/react-md-editor/esm/index.js"); function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } @@ -30314,10 +33794,9 @@ function Page(_ref2) { var page = _ref2.page, url = _ref2.url, - removeUrl = _ref2.removeUrl, - csrf = _ref2.csrf, passphrase = _ref2.passphrase, - setPassphrase = _ref2.setPassphrase; + setPassphrase = _ref2.setPassphrase, + remove = _ref2.remove; var _React$useState = react__WEBPACK_IMPORTED_MODULE_1__.useState(false), _React$useState2 = _slicedToArray(_React$useState, 2), @@ -30339,40 +33818,6 @@ function Page(_ref2) { }); }; - var remove = function remove() { - return __awaiter(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().mark(function _callee() { - var formData, response, json; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - formData = new FormData(); - formData.set('_token', csrf); - formData.set('_method', 'DELETE'); - _context.next = 5; - return fetch(removeUrl.replace("replace_me", page.id), { - method: 'POST', - body: formData - }); - - case 5: - response = _context.sent; - _context.next = 8; - return response.json(); - - case 8: - json = _context.sent; - (0,react_dom__WEBPACK_IMPORTED_MODULE_3__.unmountComponentAtNode)(document.getElementById(page.id)); - - case 10: - case "end": - return _context.stop(); - } - } - }, _callee); - })); - }; - var encryptStorage = new storage_encryption__WEBPACK_IMPORTED_MODULE_2__.EncryptStorage(passphrase); var title, content = ""; @@ -30381,16 +33826,16 @@ function Page(_ref2) { setContent = null; var onLoad = function onLoad() { - return __awaiter(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().mark(function _callee2() { - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().wrap(function _callee2$(_context2) { + return __awaiter(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().mark(function _callee() { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().wrap(function _callee$(_context) { while (1) { - switch (_context2.prev = _context2.next) { + switch (_context.prev = _context.next) { case 0: case "end": - return _context2.stop(); + return _context.stop(); } } - }, _callee2); + }, _callee); })); }; @@ -30410,27 +33855,27 @@ function Page(_ref2) { setTitle = _React$useState8[1]; onLoad = function onLoad() { - return __awaiter(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().mark(function _callee3() { + return __awaiter(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().mark(function _callee2() { var response, json; - return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().wrap(function _callee3$(_context3) { + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default().wrap(function _callee2$(_context2) { while (1) { - switch (_context3.prev = _context3.next) { + switch (_context2.prev = _context2.next) { case 0: if (!(localStorage.getItem(page.id + "text") === null)) { - _context3.next = 9; + _context2.next = 9; break; } - _context3.next = 3; + _context2.next = 3; return fetch(url.replace("replace_me", page.id)); case 3: - response = _context3.sent; - _context3.next = 6; + response = _context2.sent; + _context2.next = 6; return response.json(); case 6: - json = _context3.sent; + json = _context2.sent; localStorage.setItem(page.id + "title", json.metadata.title); localStorage.setItem(page.id + "text", json.content); @@ -30441,10 +33886,10 @@ function Page(_ref2) { case 11: case "end": - return _context3.stop(); + return _context2.stop(); } } - }, _callee3); + }, _callee2); })); }; } catch (e) { @@ -30458,8 +33903,8 @@ function Page(_ref2) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_8__["default"], { item: true, xs: 12, - sm: 6, - md: 6, + sm: 12, + md: 12, id: page.id }, alert_popup, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_9__["default"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__["default"], { action: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_5__["default"], { @@ -30474,7 +33919,9 @@ function Page(_ref2) { unmountOnExit: true }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_5__["default"], { "aria-label": "remove", - onClick: remove + onClick: function onClick() { + remove(page.id); + } }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_icons_material__WEBPACK_IMPORTED_MODULE_13__["default"], null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__["default"], { disableSpacing: true }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(ExpandMore, { @@ -30488,7 +33935,9 @@ function Page(_ref2) { unmountOnExit: true }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__["default"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_mui_material__WEBPACK_IMPORTED_MODULE_17__["default"], { paragraph: true - }, content))))); + }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_uiw_react_md_editor__WEBPACK_IMPORTED_MODULE_3__["default"].Markdown, { + source: content + })))))); } /***/ }), @@ -30744,6 +34193,23 @@ window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest'; /***/ }), +/***/ "./node_modules/boolbase/index.js": +/*!****************************************!*\ + !*** ./node_modules/boolbase/index.js ***! + \****************************************/ +/***/ ((module) => { + +module.exports = { + trueFunc: function trueFunc(){ + return true; + }, + falseFunc: function falseFunc(){ + return false; + } +}; + +/***/ }), + /***/ "./node_modules/bootstrap/dist/js/bootstrap.esm.js": /*!*********************************************************!*\ !*** ./node_modules/bootstrap/dist/js/bootstrap.esm.js ***! @@ -42693,6 +46159,3047 @@ function toVal(mix) { })); +/***/ }), + +/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-markdown-preview/esm/styles/markdown.css": +/*!************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-markdown-preview/esm/styles/markdown.css ***! + \************************************************************************************************************************************************************************************************************************************/ +/***/ ((module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__); +// Imports + +var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, ".wmde-markdown {\n font-size: 16px;\n line-height: 1.5;\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;\n}\n.wmde-markdown > :first-child {\n margin-top: 0 !important;\n}\n.wmde-markdown > :last-child {\n margin-bottom: 0 !important;\n}\n.wmde-markdown pre[class*='language-']:hover .copied,\n.wmde-markdown pre:hover .copied {\n visibility: visible;\n}\n.wmde-markdown pre[class*='language-'] .copied,\n.wmde-markdown pre .copied {\n visibility: hidden;\n display: flex;\n position: absolute;\n cursor: pointer;\n color: #a5afbb;\n top: 6px;\n right: 6px;\n border-radius: 5px;\n background: #e3e3e3;\n padding: 6px;\n font-size: 12px;\n transition: all 0.3s;\n}\n.wmde-markdown pre[class*='language-'] .copied::before,\n.wmde-markdown pre .copied::before {\n content: ' ';\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n}\n.wmde-markdown pre[class*='language-'] .copied .octicon-copy,\n.wmde-markdown pre .copied .octicon-copy {\n display: block;\n}\n.wmde-markdown pre[class*='language-'] .copied .octicon-check,\n.wmde-markdown pre .copied .octicon-check {\n display: none;\n}\n.wmde-markdown pre[class*='language-'] .copied.active .octicon-copy,\n.wmde-markdown pre .copied.active .octicon-copy {\n display: none;\n}\n.wmde-markdown pre[class*='language-'] .copied.active .octicon-check,\n.wmde-markdown pre .copied.active .octicon-check {\n display: block;\n}\n.wmde-markdown pre[class*='language-'] .copied:hover,\n.wmde-markdown pre .copied:hover,\n.wmde-markdown pre[class*='language-'] .copied:active,\n.wmde-markdown pre .copied:active,\n.wmde-markdown pre[class*='language-'] .copied.active,\n.wmde-markdown pre .copied.active {\n background: #2e9b33;\n color: #fff;\n}\n.wmde-markdown code[class*='language-'],\n.wmde-markdown pre[class*='language-'] {\n color: black;\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n word-wrap: normal;\n -webkit-hyphens: none;\n hyphens: none;\n}\n.wmde-markdown pre code {\n display: block;\n padding: 16px;\n overflow: auto;\n font-size: 85%;\n line-height: 1.45;\n background-color: #f6f8fa;\n border-radius: 6px;\n}\n.wmde-markdown pre {\n margin-bottom: 18px;\n line-height: 1.45;\n position: relative;\n overflow-x: auto;\n background-color: #f6f8fa;\n border-radius: 3px;\n}\n.wmde-markdown code,\n.wmde-markdown tt {\n background-color: rgba(27, 31, 35, 0.05);\n border-radius: 3px;\n font-size: 85%;\n margin: 0;\n padding: 0.2em 0.4em;\n}\n.wmde-markdown pre,\n.wmde-markdown code,\n.wmde-markdown tt {\n font-family: SFMono-Regular, Consolas, Liberation Mono, Menlo, monospace;\n}\n.wmde-markdown img {\n max-width: 100%;\n}\n.wmde-markdown input {\n vertical-align: middle;\n margin: 0 0.2em 0.25em -1.6em;\n}\n.wmde-markdown input + p {\n display: inline;\n}\n.wmde-markdown h1,\n.wmde-markdown h2 {\n border-bottom: 1px solid #eaecef;\n padding-bottom: 0.3em;\n}\n.wmde-markdown h1,\n.wmde-markdown h2,\n.wmde-markdown h3,\n.wmde-markdown h4,\n.wmde-markdown h5,\n.wmde-markdown h6 {\n font-weight: 600;\n line-height: 1.25;\n margin-bottom: 16px;\n margin-top: 24px;\n}\n.wmde-markdown h1 .anchor,\n.wmde-markdown h2 .anchor,\n.wmde-markdown h3 .anchor,\n.wmde-markdown h4 .anchor,\n.wmde-markdown h5 .anchor,\n.wmde-markdown h6 .anchor {\n float: left;\n padding-right: 4px;\n margin-left: -20px;\n line-height: 1;\n}\n.wmde-markdown h1 .octicon-link,\n.wmde-markdown h2 .octicon-link,\n.wmde-markdown h3 .octicon-link,\n.wmde-markdown h4 .octicon-link,\n.wmde-markdown h5 .octicon-link,\n.wmde-markdown h6 .octicon-link {\n visibility: hidden;\n vertical-align: middle;\n}\n.wmde-markdown h1:hover .octicon-link,\n.wmde-markdown h2:hover .octicon-link,\n.wmde-markdown h3:hover .octicon-link,\n.wmde-markdown h4:hover .octicon-link,\n.wmde-markdown h5:hover .octicon-link,\n.wmde-markdown h6:hover .octicon-link {\n visibility: visible;\n}\n.wmde-markdown h1 {\n font-size: 2em;\n}\n.wmde-markdown h2 {\n font-size: 1.5em;\n}\n.wmde-markdown h3 {\n font-size: 1.25em;\n}\n.wmde-markdown h4 {\n font-size: 1em;\n}\n.wmde-markdown h5 {\n font-size: 0.875em;\n}\n.wmde-markdown h6 {\n font-size: 0.85em;\n}\n.wmde-markdown ol,\n.wmde-markdown ul {\n padding-left: 2em;\n}\n.wmde-markdown ol > p,\n.wmde-markdown ul > p {\n margin-bottom: 0;\n}\n.wmde-markdown ul {\n margin-bottom: 16px;\n margin-top: 0;\n list-style: initial;\n}\n.wmde-markdown > blockquote,\n.wmde-markdown > blockquote blockquote {\n margin: 0;\n border-left: 0.25em solid #dfe2e5;\n color: #6a737d;\n padding: 0 1em;\n}\n.wmde-markdown > blockquote > :last-child,\n.wmde-markdown > blockquote blockquote > :last-child {\n margin-bottom: 0;\n}\n.wmde-markdown > blockquote > :first-child,\n.wmde-markdown > blockquote blockquote > :first-child {\n margin-top: 0;\n}\n.wmde-markdown hr {\n margin: 1.5em auto;\n border: 0;\n border-top: 2px dotted #eee;\n height: 1px;\n}\n.wmde-markdown > table,\n.wmde-markdown > blockquote table {\n display: block;\n overflow: auto;\n width: 100%;\n border-collapse: collapse;\n border-spacing: 0;\n font-size: 14px;\n}\n.wmde-markdown > table tr,\n.wmde-markdown > blockquote table tr {\n background-color: #fff;\n border-top: 1px solid #c6cbd1;\n}\n.wmde-markdown > table td,\n.wmde-markdown > blockquote table td,\n.wmde-markdown > table th,\n.wmde-markdown > blockquote table th {\n border: 1px solid #dfe2e5;\n padding: 6px 13px;\n}\n.wmde-markdown blockquote,\n.wmde-markdown details,\n.wmde-markdown dl,\n.wmde-markdown ol,\n.wmde-markdown p,\n.wmde-markdown pre,\n.wmde-markdown table,\n.wmde-markdown ul {\n margin-bottom: 16px;\n margin-top: 0;\n}\n.wmde-markdown a {\n color: #0366d6;\n text-decoration: none;\n}\n.wmde-markdown a:hover {\n text-decoration: underline;\n}\n.wmde-markdown .namespace {\n opacity: 0.7;\n}\n.wmde-markdown .token.important {\n font-weight: normal;\n}\n.wmde-markdown .token.bold {\n font-weight: bold;\n}\n.wmde-markdown .token.italic {\n font-style: italic;\n}\n.wmde-markdown .token.entity {\n cursor: help;\n}\n.wmde-markdown kbd {\n background-color: #fafbfc;\n border-bottom-color: #d1d5da;\n border: 1px solid #d1d5da;\n border-radius: 3px;\n box-shadow: inset 0 -1px 0 #d1d5da;\n color: #56595d;\n display: inline-block;\n font-size: 10px;\n font-family: ui-monospace, SFMono-Regular, SF Mono, Consolas, Liberation Mono, Menlo, monospace;\n line-height: 10px;\n padding: 2px 4px;\n vertical-align: middle;\n}\n", ""]); +// Exports +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); + + +/***/ }), + +/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-markdown-preview/esm/styles/markdowncolor.css": +/*!*****************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-markdown-preview/esm/styles/markdowncolor.css ***! + \*****************************************************************************************************************************************************************************************************************************************/ +/***/ ((module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__); +// Imports + +var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, ".wmde-markdown-color .token.tag .attr-value {\n color: #032f62;\n}\n.wmde-markdown-color .token.property,\n.wmde-markdown-color .token.tag,\n.wmde-markdown-color .token.boolean,\n.wmde-markdown-color .token.number,\n.wmde-markdown-color .token.function-name,\n.wmde-markdown-color .token.constant,\n.wmde-markdown-color .token.symbol,\n.wmde-markdown-color .token.deleted {\n color: #0060c9;\n}\n.wmde-markdown-color .token.punctuation {\n color: #a0a0a0;\n}\n.wmde-markdown-color code[class*='language-'] {\n color: black;\n}\n.wmde-markdown-color code[class*='language-'] .token.selector,\n.wmde-markdown-color code[class*='language-'] .token.attr-name,\n.wmde-markdown-color code[class*='language-'] .token.string,\n.wmde-markdown-color code[class*='language-'] .token.char,\n.wmde-markdown-color code[class*='language-'] .token.function,\n.wmde-markdown-color code[class*='language-'] .token.builtin {\n color: #6f42c1;\n}\n.wmde-markdown-color code[class*='language-'] .token.inserted {\n color: #22863a;\n background-color: #f0fff4;\n}\n.wmde-markdown-color code[class*='language-'] .token.deleted {\n color: #b31d28;\n background-color: #ffeef0;\n}\n.wmde-markdown-color code[class*='language-'] .token.class-name {\n color: #6f42c1;\n}\n.wmde-markdown-color code[class*='language-'] .code-block {\n color: #032f62;\n}\n.wmde-markdown-color code[class*='language-'] .token.comment,\n.wmde-markdown-color code[class*='language-'] .token.block-comment,\n.wmde-markdown-color code[class*='language-'] .token.prolog,\n.wmde-markdown-color code[class*='language-'] .token.doctype,\n.wmde-markdown-color code[class*='language-'] .token.cdata {\n color: #7d8b99;\n}\n.wmde-markdown-color code[class*='language-'] .token.punctuation {\n color: #a0a0a0;\n}\n.wmde-markdown-color code[class*='language-'] .token.operator,\n.wmde-markdown-color code[class*='language-'] .token.entity,\n.wmde-markdown-color code[class*='language-'] .token.url,\n.wmde-markdown-color code[class*='language-'] .token.variable {\n color: #d73a49;\n background: rgba(255, 255, 255, 0.5);\n}\n.wmde-markdown-color code[class*='language-'] .token.atrule,\n.wmde-markdown-color code[class*='language-'] .token.attr-value {\n color: #004698;\n}\n.wmde-markdown-color code[class*='language-'] .token.keyword {\n color: #d63200;\n}\n.wmde-markdown-color code[class*='language-'] .token.regex,\n.wmde-markdown-color code[class*='language-'] .token.important {\n color: #e90;\n}\n.wmde-markdown-color code[class*='language-'] .token.string {\n color: #0a53c1;\n}\n", ""]); +// Exports +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); + + +/***/ }), + +/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-md-editor/esm/components/DragBar/index.css": +/*!**************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-md-editor/esm/components/DragBar/index.css ***! + \**************************************************************************************************************************************************************************************************************************************/ +/***/ ((module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__); +// Imports + +var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, ".w-md-editor-bar {\n position: absolute;\n cursor: s-resize;\n right: 0;\n margin-top: -11px;\n margin-right: 0;\n width: 14px;\n z-index: 3;\n height: 10px;\n border-radius: 0 0 3px 0;\n -webkit-user-select: none;\n user-select: none;\n}\n.w-md-editor-bar svg {\n display: block;\n margin: 0 auto;\n}\n", ""]); +// Exports +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); + + +/***/ }), + +/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-md-editor/esm/components/TextArea/index.css": +/*!***************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-md-editor/esm/components/TextArea/index.css ***! + \***************************************************************************************************************************************************************************************************************************************/ +/***/ ((module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__); +// Imports + +var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, ".w-md-editor-aree {\n overflow: auto;\n border-radius: 5px;\n}\n.w-md-editor-text {\n min-height: 100%;\n position: relative;\n text-align: left;\n white-space: pre-wrap;\n word-break: keep-all;\n overflow-wrap: break-word;\n box-sizing: border-box;\n padding: 10px;\n margin: 0;\n font-size: 14px;\n line-height: 18px;\n font-variant-ligatures: common-ligatures;\n}\n.w-md-editor-text-pre,\n.w-md-editor-text-input,\n.w-md-editor-text > .w-md-editor-text-pre {\n margin: 0;\n border: 0;\n background: none;\n box-sizing: inherit;\n display: inherit;\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-variant-ligatures: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n line-height: inherit;\n tab-size: inherit;\n text-indent: inherit;\n text-rendering: inherit;\n text-transform: inherit;\n white-space: inherit;\n overflow-wrap: inherit;\n word-break: inherit;\n word-break: normal;\n padding: 0;\n}\n.w-md-editor-text-pre > code,\n.w-md-editor-text-input > code,\n.w-md-editor-text > .w-md-editor-text-pre > code {\n font-family: inherit;\n}\n.w-md-editor-text-pre {\n position: relative;\n margin: 0px;\n pointer-events: none;\n}\n.w-md-editor-text-input {\n position: absolute;\n top: 0px;\n left: 0px;\n height: 100%;\n width: 100%;\n resize: none;\n color: inherit;\n overflow: hidden;\n outline: 0;\n padding: inherit;\n -webkit-font-smoothing: antialiased;\n -webkit-text-fill-color: transparent;\n}\n.w-md-editor-text-input:empty {\n -webkit-text-fill-color: inherit !important;\n}\n.w-md-editor-text-pre,\n.w-md-editor-text-input {\n word-wrap: pre;\n word-break: break-word;\n white-space: pre-wrap;\n}\n/**\n * Hack to apply on some CSS on IE10 and IE11\n */\n@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n /**\n * IE doesn't support '-webkit-text-fill-color'\n * So we use 'color: transparent' to make the text transparent on IE\n * Unlike other browsers, it doesn't affect caret color in IE\n */\n .w-md-editor-text-input {\n color: transparent !important;\n }\n .w-md-editor-text-input::selection {\n background-color: #accef7 !important;\n color: transparent !important;\n }\n}\n.w-md-editor-text-pre {\n color: #333;\n}\n.w-md-editor-text-pre .table .punctuation {\n color: #c3c3c3;\n}\n.w-md-editor-text-pre .table .table-header {\n color: #000;\n}\n.w-md-editor-text-pre .url {\n color: #032f62 !important;\n}\n.w-md-editor-text-pre .url .content {\n color: #0366d6;\n}\n.w-md-editor-text-pre .hr {\n color: #999;\n}\n.w-md-editor-text-pre .blockquote {\n color: #a6a6a6;\n}\n.w-md-editor-text-pre .title,\n.w-md-editor-text-pre .bold {\n color: #000 !important;\n}\n.w-md-editor-text-pre .title {\n line-height: unset !important;\n font-size: unset !important;\n font-weight: unset !important;\n}\n.w-md-editor-text-pre .code.keyword {\n color: #596394 !important;\n}\n.w-md-editor-text-pre .strike {\n color: #bf4ca0;\n}\n", ""]); +// Exports +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); + + +/***/ }), + +/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-md-editor/esm/components/Toolbar/Child.css": +/*!**************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-md-editor/esm/components/Toolbar/Child.css ***! + \**************************************************************************************************************************************************************************************************************************************/ +/***/ ((module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__); +// Imports + +var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, ".w-md-editor-toolbar-child {\n position: absolute;\n border-radius: 3px;\n box-shadow: 0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2);\n background-color: #fff;\n z-index: 1;\n display: none;\n}\n.w-md-editor-toolbar-child.active {\n display: block;\n}\n.w-md-editor-toolbar-child .w-md-editor-toolbar {\n border-bottom: 0;\n padding: 3px;\n border-radius: 3px;\n}\n.w-md-editor-toolbar-child .w-md-editor-toolbar ul > li {\n display: block;\n}\n.w-md-editor-toolbar-child .w-md-editor-toolbar ul > li button {\n width: -webkit-fill-available;\n height: initial;\n box-sizing: border-box;\n padding: 3px 4px 2px 4px;\n margin: 0;\n}\n", ""]); +// Exports +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); + + +/***/ }), + +/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-md-editor/esm/components/Toolbar/index.css": +/*!**************************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-md-editor/esm/components/Toolbar/index.css ***! + \**************************************************************************************************************************************************************************************************************************************/ +/***/ ((module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__); +// Imports + +var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, ".w-md-editor-toolbar {\n border-bottom: 1px solid #dfdfe0;\n background-color: #fbfbfb;\n padding: 0 5px 0 5px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-radius: 3px 3px 0 0;\n -webkit-user-select: none;\n user-select: none;\n}\n.w-md-editor-toolbar ul,\n.w-md-editor-toolbar li {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n.w-md-editor-toolbar li {\n display: inline-block;\n font-size: 14px;\n}\n.w-md-editor-toolbar li > button {\n border: none;\n height: 20px;\n line-height: 14px;\n background: none;\n color: #586069;\n padding: 4px;\n margin: 0 1px;\n border-radius: 2px;\n text-transform: none;\n font-weight: normal;\n overflow: visible;\n outline: none;\n cursor: pointer;\n transition: all 0.3s;\n white-space: nowrap;\n}\n.w-md-editor-toolbar li > button:hover,\n.w-md-editor-toolbar li > button:focus {\n color: #06c;\n background-color: #dcdcdc;\n}\n.w-md-editor-toolbar li > button:active {\n color: #6a57ff;\n background-color: #dcdcdc;\n}\n.w-md-editor-toolbar li > button:disabled {\n color: #ccc;\n cursor: not-allowed;\n}\n.w-md-editor-toolbar li > button:disabled:hover {\n background-color: transparent;\n color: #ccc;\n}\n.w-md-editor-toolbar li.active > button {\n color: #06c;\n background-color: #e8e8e8;\n}\n.w-md-editor-toolbar-divider {\n height: 14px;\n width: 1px;\n margin: -3px 3px 0 3px !important;\n vertical-align: middle;\n background-color: #ccc;\n}\n", ""]); +// Exports +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); + + +/***/ }), + +/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-md-editor/esm/index.css": +/*!*******************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./node_modules/@uiw/react-md-editor/esm/index.css ***! + \*******************************************************************************************************************************************************************************************************************/ +/***/ ((module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); +/* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__); +// Imports + +var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, ".w-md-editor {\n color: #24292e;\n text-align: left;\n box-shadow: 0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2);\n border-radius: 3px;\n padding-bottom: 1px;\n position: relative;\n background-color: #fff;\n font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;\n}\n.w-md-editor-content {\n position: relative;\n border-radius: 0 0 3px 0;\n height: calc(100% - 39.1px);\n}\n.w-md-editor-input {\n width: 50%;\n height: 100%;\n}\n.w-md-editor-preview {\n width: 50%;\n box-sizing: border-box;\n box-shadow: inset 1px 0 0 0 #dfdfe0;\n position: absolute;\n padding: 10px 20px;\n overflow: auto;\n top: 0;\n right: 0;\n bottom: 0;\n}\n.w-md-editor-preview .anchor {\n display: none;\n}\n.w-md-editor-preview .contains-task-list {\n list-style: none;\n}\n.w-md-editor-show-preview .w-md-editor-input {\n width: 0%;\n overflow: hidden;\n background-color: #fdfdfd;\n}\n.w-md-editor-show-preview .w-md-editor-preview {\n width: 100%;\n box-shadow: inset 0 0 0 0;\n}\n.w-md-editor-show-edit .w-md-editor-input {\n width: 100%;\n}\n.w-md-editor-show-edit .w-md-editor-preview {\n width: 0%;\n padding: 0;\n}\n.w-md-editor-fullscreen {\n overflow: hidden;\n position: fixed;\n z-index: 99999;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n}\n.w-md-editor-fullscreen .w-md-editor-content {\n height: 100%;\n}\n", ""]); +// Exports +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); + + +/***/ }), + +/***/ "./node_modules/css-loader/dist/runtime/api.js": +/*!*****************************************************!*\ + !*** ./node_modules/css-loader/dist/runtime/api.js ***! + \*****************************************************/ +/***/ ((module) => { + +"use strict"; + + +/* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Tobias Koppers @sokra +*/ +// css base code, injected by the css-loader +// eslint-disable-next-line func-names +module.exports = function (cssWithMappingToString) { + var list = []; // return the list of modules as css string + + list.toString = function toString() { + return this.map(function (item) { + var content = cssWithMappingToString(item); + + if (item[2]) { + return "@media ".concat(item[2], " {").concat(content, "}"); + } + + return content; + }).join(""); + }; // import a list of modules into the list + // eslint-disable-next-line func-names + + + list.i = function (modules, mediaQuery, dedupe) { + if (typeof modules === "string") { + // eslint-disable-next-line no-param-reassign + modules = [[null, modules, ""]]; + } + + var alreadyImportedModules = {}; + + if (dedupe) { + for (var i = 0; i < this.length; i++) { + // eslint-disable-next-line prefer-destructuring + var id = this[i][0]; + + if (id != null) { + alreadyImportedModules[id] = true; + } + } + } + + for (var _i = 0; _i < modules.length; _i++) { + var item = [].concat(modules[_i]); + + if (dedupe && alreadyImportedModules[item[0]]) { + // eslint-disable-next-line no-continue + continue; + } + + if (mediaQuery) { + if (!item[2]) { + item[2] = mediaQuery; + } else { + item[2] = "".concat(mediaQuery, " and ").concat(item[2]); + } + } + + list.push(item); + } + }; + + return list; +}; + +/***/ }), + +/***/ "./node_modules/css-selector-parser/lib/index.js": +/*!*******************************************************!*\ + !*** ./node_modules/css-selector-parser/lib/index.js ***! + \*******************************************************/ +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { + +"use strict"; + +Object.defineProperty(exports, "__esModule", ({ value: true })); +var parser_context_1 = __webpack_require__(/*! ./parser-context */ "./node_modules/css-selector-parser/lib/parser-context.js"); +var render_1 = __webpack_require__(/*! ./render */ "./node_modules/css-selector-parser/lib/render.js"); +var CssSelectorParser = /** @class */ (function () { + function CssSelectorParser() { + this.pseudos = {}; + this.attrEqualityMods = {}; + this.ruleNestingOperators = {}; + this.substitutesEnabled = false; + } + CssSelectorParser.prototype.registerSelectorPseudos = function () { + var pseudos = []; + for (var _i = 0; _i < arguments.length; _i++) { + pseudos[_i] = arguments[_i]; + } + for (var _a = 0, pseudos_1 = pseudos; _a < pseudos_1.length; _a++) { + var pseudo = pseudos_1[_a]; + this.pseudos[pseudo] = 'selector'; + } + return this; + }; + CssSelectorParser.prototype.unregisterSelectorPseudos = function () { + var pseudos = []; + for (var _i = 0; _i < arguments.length; _i++) { + pseudos[_i] = arguments[_i]; + } + for (var _a = 0, pseudos_2 = pseudos; _a < pseudos_2.length; _a++) { + var pseudo = pseudos_2[_a]; + delete this.pseudos[pseudo]; + } + return this; + }; + CssSelectorParser.prototype.registerNumericPseudos = function () { + var pseudos = []; + for (var _i = 0; _i < arguments.length; _i++) { + pseudos[_i] = arguments[_i]; + } + for (var _a = 0, pseudos_3 = pseudos; _a < pseudos_3.length; _a++) { + var pseudo = pseudos_3[_a]; + this.pseudos[pseudo] = 'numeric'; + } + return this; + }; + CssSelectorParser.prototype.unregisterNumericPseudos = function () { + var pseudos = []; + for (var _i = 0; _i < arguments.length; _i++) { + pseudos[_i] = arguments[_i]; + } + for (var _a = 0, pseudos_4 = pseudos; _a < pseudos_4.length; _a++) { + var pseudo = pseudos_4[_a]; + delete this.pseudos[pseudo]; + } + return this; + }; + CssSelectorParser.prototype.registerNestingOperators = function () { + var operators = []; + for (var _i = 0; _i < arguments.length; _i++) { + operators[_i] = arguments[_i]; + } + for (var _a = 0, operators_1 = operators; _a < operators_1.length; _a++) { + var operator = operators_1[_a]; + this.ruleNestingOperators[operator] = true; + } + return this; + }; + CssSelectorParser.prototype.unregisterNestingOperators = function () { + var operators = []; + for (var _i = 0; _i < arguments.length; _i++) { + operators[_i] = arguments[_i]; + } + for (var _a = 0, operators_2 = operators; _a < operators_2.length; _a++) { + var operator = operators_2[_a]; + delete this.ruleNestingOperators[operator]; + } + return this; + }; + CssSelectorParser.prototype.registerAttrEqualityMods = function () { + var mods = []; + for (var _i = 0; _i < arguments.length; _i++) { + mods[_i] = arguments[_i]; + } + for (var _a = 0, mods_1 = mods; _a < mods_1.length; _a++) { + var mod = mods_1[_a]; + this.attrEqualityMods[mod] = true; + } + return this; + }; + CssSelectorParser.prototype.unregisterAttrEqualityMods = function () { + var mods = []; + for (var _i = 0; _i < arguments.length; _i++) { + mods[_i] = arguments[_i]; + } + for (var _a = 0, mods_2 = mods; _a < mods_2.length; _a++) { + var mod = mods_2[_a]; + delete this.attrEqualityMods[mod]; + } + return this; + }; + CssSelectorParser.prototype.enableSubstitutes = function () { + this.substitutesEnabled = true; + return this; + }; + CssSelectorParser.prototype.disableSubstitutes = function () { + this.substitutesEnabled = false; + return this; + }; + CssSelectorParser.prototype.parse = function (str) { + return parser_context_1.parseCssSelector(str, 0, this.pseudos, this.attrEqualityMods, this.ruleNestingOperators, this.substitutesEnabled); + }; + CssSelectorParser.prototype.render = function (path) { + return render_1.renderEntity(path).trim(); + }; + return CssSelectorParser; +}()); +exports.CssSelectorParser = CssSelectorParser; + + +/***/ }), + +/***/ "./node_modules/css-selector-parser/lib/parser-context.js": +/*!****************************************************************!*\ + !*** ./node_modules/css-selector-parser/lib/parser-context.js ***! + \****************************************************************/ +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { + +"use strict"; + +Object.defineProperty(exports, "__esModule", ({ value: true })); +var utils_1 = __webpack_require__(/*! ./utils */ "./node_modules/css-selector-parser/lib/utils.js"); +function parseCssSelector(str, pos, pseudos, attrEqualityMods, ruleNestingOperators, substitutesEnabled) { + var l = str.length; + var chr = ''; + function getStr(quote, escapeTable) { + var result = ''; + pos++; + chr = str.charAt(pos); + while (pos < l) { + if (chr === quote) { + pos++; + return result; + } + else if (chr === '\\') { + pos++; + chr = str.charAt(pos); + var esc = void 0; + if (chr === quote) { + result += quote; + } + else if ((esc = escapeTable[chr]) !== undefined) { + result += esc; + } + else if (utils_1.isHex(chr)) { + var hex = chr; + pos++; + chr = str.charAt(pos); + while (utils_1.isHex(chr)) { + hex += chr; + pos++; + chr = str.charAt(pos); + } + if (chr === ' ') { + pos++; + chr = str.charAt(pos); + } + result += String.fromCharCode(parseInt(hex, 16)); + continue; + } + else { + result += chr; + } + } + else { + result += chr; + } + pos++; + chr = str.charAt(pos); + } + return result; + } + function getIdent() { + var result = ''; + chr = str.charAt(pos); + while (pos < l) { + if (utils_1.isIdent(chr)) { + result += chr; + } + else if (chr === '\\') { + pos++; + if (pos >= l) { + throw Error('Expected symbol but end of file reached.'); + } + chr = str.charAt(pos); + if (utils_1.identSpecialChars[chr]) { + result += chr; + } + else if (utils_1.isHex(chr)) { + var hex = chr; + pos++; + chr = str.charAt(pos); + while (utils_1.isHex(chr)) { + hex += chr; + pos++; + chr = str.charAt(pos); + } + if (chr === ' ') { + pos++; + chr = str.charAt(pos); + } + result += String.fromCharCode(parseInt(hex, 16)); + continue; + } + else { + result += chr; + } + } + else { + return result; + } + pos++; + chr = str.charAt(pos); + } + return result; + } + function skipWhitespace() { + chr = str.charAt(pos); + var result = false; + while (chr === ' ' || chr === "\t" || chr === "\n" || chr === "\r" || chr === "\f") { + result = true; + pos++; + chr = str.charAt(pos); + } + return result; + } + function parse() { + var res = parseSelector(); + if (pos < l) { + throw Error('Rule expected but "' + str.charAt(pos) + '" found.'); + } + return res; + } + function parseSelector() { + var selector = parseSingleSelector(); + if (!selector) { + return null; + } + var res = selector; + chr = str.charAt(pos); + while (chr === ',') { + pos++; + skipWhitespace(); + if (res.type !== 'selectors') { + res = { + type: 'selectors', + selectors: [selector] + }; + } + selector = parseSingleSelector(); + if (!selector) { + throw Error('Rule expected after ",".'); + } + res.selectors.push(selector); + } + return res; + } + function parseSingleSelector() { + skipWhitespace(); + var selector = { + type: 'ruleSet' + }; + var rule = parseRule(); + if (!rule) { + return null; + } + var currentRule = selector; + while (rule) { + rule.type = 'rule'; + currentRule.rule = rule; + currentRule = rule; + skipWhitespace(); + chr = str.charAt(pos); + if (pos >= l || chr === ',' || chr === ')') { + break; + } + if (ruleNestingOperators[chr]) { + var op = chr; + pos++; + skipWhitespace(); + rule = parseRule(); + if (!rule) { + throw Error('Rule expected after "' + op + '".'); + } + rule.nestingOperator = op; + } + else { + rule = parseRule(); + if (rule) { + rule.nestingOperator = null; + } + } + } + return selector; + } + // @ts-ignore no-overlap + function parseRule() { + var rule = null; + while (pos < l) { + chr = str.charAt(pos); + if (chr === '*') { + pos++; + (rule = rule || {}).tagName = '*'; + } + else if (utils_1.isIdentStart(chr) || chr === '\\') { + (rule = rule || {}).tagName = getIdent(); + } + else if (chr === '.') { + pos++; + rule = rule || {}; + (rule.classNames = rule.classNames || []).push(getIdent()); + } + else if (chr === '#') { + pos++; + (rule = rule || {}).id = getIdent(); + } + else if (chr === '[') { + pos++; + skipWhitespace(); + var attr = { + name: getIdent() + }; + skipWhitespace(); + // @ts-ignore + if (chr === ']') { + pos++; + } + else { + var operator = ''; + if (attrEqualityMods[chr]) { + operator = chr; + pos++; + chr = str.charAt(pos); + } + if (pos >= l) { + throw Error('Expected "=" but end of file reached.'); + } + if (chr !== '=') { + throw Error('Expected "=" but "' + chr + '" found.'); + } + attr.operator = operator + '='; + pos++; + skipWhitespace(); + var attrValue = ''; + attr.valueType = 'string'; + // @ts-ignore + if (chr === '"') { + attrValue = getStr('"', utils_1.doubleQuotesEscapeChars); + // @ts-ignore + } + else if (chr === '\'') { + attrValue = getStr('\'', utils_1.singleQuoteEscapeChars); + // @ts-ignore + } + else if (substitutesEnabled && chr === '$') { + pos++; + attrValue = getIdent(); + attr.valueType = 'substitute'; + } + else { + while (pos < l) { + if (chr === ']') { + break; + } + attrValue += chr; + pos++; + chr = str.charAt(pos); + } + attrValue = attrValue.trim(); + } + skipWhitespace(); + if (pos >= l) { + throw Error('Expected "]" but end of file reached.'); + } + if (chr !== ']') { + throw Error('Expected "]" but "' + chr + '" found.'); + } + pos++; + attr.value = attrValue; + } + rule = rule || {}; + (rule.attrs = rule.attrs || []).push(attr); + } + else if (chr === ':') { + pos++; + var pseudoName = getIdent(); + var pseudo = { + name: pseudoName + }; + // @ts-ignore + if (chr === '(') { + pos++; + var value = ''; + skipWhitespace(); + if (pseudos[pseudoName] === 'selector') { + pseudo.valueType = 'selector'; + value = parseSelector(); + } + else { + pseudo.valueType = pseudos[pseudoName] || 'string'; + // @ts-ignore + if (chr === '"') { + value = getStr('"', utils_1.doubleQuotesEscapeChars); + // @ts-ignore + } + else if (chr === '\'') { + value = getStr('\'', utils_1.singleQuoteEscapeChars); + // @ts-ignore + } + else if (substitutesEnabled && chr === '$') { + pos++; + value = getIdent(); + pseudo.valueType = 'substitute'; + } + else { + while (pos < l) { + if (chr === ')') { + break; + } + value += chr; + pos++; + chr = str.charAt(pos); + } + value = value.trim(); + } + skipWhitespace(); + } + if (pos >= l) { + throw Error('Expected ")" but end of file reached.'); + } + if (chr !== ')') { + throw Error('Expected ")" but "' + chr + '" found.'); + } + pos++; + pseudo.value = value; + } + rule = rule || {}; + (rule.pseudos = rule.pseudos || []).push(pseudo); + } + else { + break; + } + } + return rule; + } + return parse(); +} +exports.parseCssSelector = parseCssSelector; + + +/***/ }), + +/***/ "./node_modules/css-selector-parser/lib/render.js": +/*!********************************************************!*\ + !*** ./node_modules/css-selector-parser/lib/render.js ***! + \********************************************************/ +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { + +"use strict"; + +Object.defineProperty(exports, "__esModule", ({ value: true })); +var utils_1 = __webpack_require__(/*! ./utils */ "./node_modules/css-selector-parser/lib/utils.js"); +function renderEntity(entity) { + var res = ''; + switch (entity.type) { + case 'ruleSet': + var currentEntity = entity.rule; + var parts = []; + while (currentEntity) { + if (currentEntity.nestingOperator) { + parts.push(currentEntity.nestingOperator); + } + parts.push(renderEntity(currentEntity)); + currentEntity = currentEntity.rule; + } + res = parts.join(' '); + break; + case 'selectors': + res = entity.selectors.map(renderEntity).join(', '); + break; + case 'rule': + if (entity.tagName) { + if (entity.tagName === '*') { + res = '*'; + } + else { + res = utils_1.escapeIdentifier(entity.tagName); + } + } + if (entity.id) { + res += "#" + utils_1.escapeIdentifier(entity.id); + } + if (entity.classNames) { + res += entity.classNames.map(function (cn) { + return "." + (utils_1.escapeIdentifier(cn)); + }).join(''); + } + if (entity.attrs) { + res += entity.attrs.map(function (attr) { + if ('operator' in attr) { + if (attr.valueType === 'substitute') { + return "[" + utils_1.escapeIdentifier(attr.name) + attr.operator + "$" + attr.value + "]"; + } + else { + return "[" + utils_1.escapeIdentifier(attr.name) + attr.operator + utils_1.escapeStr(attr.value) + "]"; + } + } + else { + return "[" + utils_1.escapeIdentifier(attr.name) + "]"; + } + }).join(''); + } + if (entity.pseudos) { + res += entity.pseudos.map(function (pseudo) { + if (pseudo.valueType) { + if (pseudo.valueType === 'selector') { + return ":" + utils_1.escapeIdentifier(pseudo.name) + "(" + renderEntity(pseudo.value) + ")"; + } + else if (pseudo.valueType === 'substitute') { + return ":" + utils_1.escapeIdentifier(pseudo.name) + "($" + pseudo.value + ")"; + } + else if (pseudo.valueType === 'numeric') { + return ":" + utils_1.escapeIdentifier(pseudo.name) + "(" + pseudo.value + ")"; + } + else { + return (":" + utils_1.escapeIdentifier(pseudo.name) + + "(" + utils_1.escapeIdentifier(pseudo.value) + ")"); + } + } + else { + return ":" + utils_1.escapeIdentifier(pseudo.name); + } + }).join(''); + } + break; + default: + throw Error('Unknown entity type: "' + entity.type + '".'); + } + return res; +} +exports.renderEntity = renderEntity; + + +/***/ }), + +/***/ "./node_modules/css-selector-parser/lib/utils.js": +/*!*******************************************************!*\ + !*** ./node_modules/css-selector-parser/lib/utils.js ***! + \*******************************************************/ +/***/ ((__unused_webpack_module, exports) => { + +"use strict"; + +Object.defineProperty(exports, "__esModule", ({ value: true })); +function isIdentStart(c) { + return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c === '-') || (c === '_'); +} +exports.isIdentStart = isIdentStart; +function isIdent(c) { + return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || c === '-' || c === '_'; +} +exports.isIdent = isIdent; +function isHex(c) { + return (c >= 'a' && c <= 'f') || (c >= 'A' && c <= 'F') || (c >= '0' && c <= '9'); +} +exports.isHex = isHex; +function escapeIdentifier(s) { + var len = s.length; + var result = ''; + var i = 0; + while (i < len) { + var chr = s.charAt(i); + if (exports.identSpecialChars[chr]) { + result += '\\' + chr; + } + else { + if (!(chr === '_' || chr === '-' || + (chr >= 'A' && chr <= 'Z') || + (chr >= 'a' && chr <= 'z') || + (i !== 0 && chr >= '0' && chr <= '9'))) { + var charCode = chr.charCodeAt(0); + if ((charCode & 0xF800) === 0xD800) { + var extraCharCode = s.charCodeAt(i++); + if ((charCode & 0xFC00) !== 0xD800 || (extraCharCode & 0xFC00) !== 0xDC00) { + throw Error('UCS-2(decode): illegal sequence'); + } + charCode = ((charCode & 0x3FF) << 10) + (extraCharCode & 0x3FF) + 0x10000; + } + result += '\\' + charCode.toString(16) + ' '; + } + else { + result += chr; + } + } + i++; + } + return result; +} +exports.escapeIdentifier = escapeIdentifier; +function escapeStr(s) { + var len = s.length; + var result = ''; + var i = 0; + var replacement; + while (i < len) { + var chr = s.charAt(i); + if (chr === '"') { + chr = '\\"'; + } + else if (chr === '\\') { + chr = '\\\\'; + } + else if ((replacement = exports.strReplacementsRev[chr]) !== undefined) { + chr = replacement; + } + result += chr; + i++; + } + return "\"" + result + "\""; +} +exports.escapeStr = escapeStr; +exports.identSpecialChars = { + '!': true, + '"': true, + '#': true, + '$': true, + '%': true, + '&': true, + '\'': true, + '(': true, + ')': true, + '*': true, + '+': true, + ',': true, + '.': true, + '/': true, + ';': true, + '<': true, + '=': true, + '>': true, + '?': true, + '@': true, + '[': true, + '\\': true, + ']': true, + '^': true, + '`': true, + '{': true, + '|': true, + '}': true, + '~': true +}; +exports.strReplacementsRev = { + '\n': '\\n', + '\r': '\\r', + '\t': '\\t', + '\f': '\\f', + '\v': '\\v' +}; +exports.singleQuoteEscapeChars = { + n: '\n', + r: '\r', + t: '\t', + f: '\f', + '\\': '\\', + '\'': '\'' +}; +exports.doubleQuotesEscapeChars = { + n: '\n', + r: '\r', + t: '\t', + f: '\f', + '\\': '\\', + '"': '"' +}; + + +/***/ }), + +/***/ "./node_modules/debug/src/browser.js": +/*!*******************************************!*\ + !*** ./node_modules/debug/src/browser.js ***! + \*******************************************/ +/***/ ((module, exports, __webpack_require__) => { + +/* provided dependency */ var process = __webpack_require__(/*! process/browser.js */ "./node_modules/process/browser.js"); +/* eslint-env browser */ + +/** + * This is the web browser implementation of `debug()`. + */ + +exports.formatArgs = formatArgs; +exports.save = save; +exports.load = load; +exports.useColors = useColors; +exports.storage = localstorage(); +exports.destroy = (() => { + let warned = false; + + return () => { + if (!warned) { + warned = true; + console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'); + } + }; +})(); + +/** + * Colors. + */ + +exports.colors = [ + '#0000CC', + '#0000FF', + '#0033CC', + '#0033FF', + '#0066CC', + '#0066FF', + '#0099CC', + '#0099FF', + '#00CC00', + '#00CC33', + '#00CC66', + '#00CC99', + '#00CCCC', + '#00CCFF', + '#3300CC', + '#3300FF', + '#3333CC', + '#3333FF', + '#3366CC', + '#3366FF', + '#3399CC', + '#3399FF', + '#33CC00', + '#33CC33', + '#33CC66', + '#33CC99', + '#33CCCC', + '#33CCFF', + '#6600CC', + '#6600FF', + '#6633CC', + '#6633FF', + '#66CC00', + '#66CC33', + '#9900CC', + '#9900FF', + '#9933CC', + '#9933FF', + '#99CC00', + '#99CC33', + '#CC0000', + '#CC0033', + '#CC0066', + '#CC0099', + '#CC00CC', + '#CC00FF', + '#CC3300', + '#CC3333', + '#CC3366', + '#CC3399', + '#CC33CC', + '#CC33FF', + '#CC6600', + '#CC6633', + '#CC9900', + '#CC9933', + '#CCCC00', + '#CCCC33', + '#FF0000', + '#FF0033', + '#FF0066', + '#FF0099', + '#FF00CC', + '#FF00FF', + '#FF3300', + '#FF3333', + '#FF3366', + '#FF3399', + '#FF33CC', + '#FF33FF', + '#FF6600', + '#FF6633', + '#FF9900', + '#FF9933', + '#FFCC00', + '#FFCC33' +]; + +/** + * Currently only WebKit-based Web Inspectors, Firefox >= v31, + * and the Firebug extension (any Firefox version) are known + * to support "%c" CSS customizations. + * + * TODO: add a `localStorage` variable to explicitly enable/disable colors + */ + +// eslint-disable-next-line complexity +function useColors() { + // NB: In an Electron preload script, document will be defined but not fully + // initialized. Since we know we're in Chrome, we'll just detect this case + // explicitly + if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) { + return true; + } + + // Internet Explorer and Edge do not support colors. + if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) { + return false; + } + + // Is webkit? http://stackoverflow.com/a/16459606/376773 + // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632 + return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) || + // Is firebug? http://stackoverflow.com/a/398120/376773 + (typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) || + // Is firefox >= v31? + // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages + (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31) || + // Double check webkit in userAgent just in case we are in a worker + (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)); +} + +/** + * Colorize log arguments if enabled. + * + * @api public + */ + +function formatArgs(args) { + args[0] = (this.useColors ? '%c' : '') + + this.namespace + + (this.useColors ? ' %c' : ' ') + + args[0] + + (this.useColors ? '%c ' : ' ') + + '+' + module.exports.humanize(this.diff); + + if (!this.useColors) { + return; + } + + const c = 'color: ' + this.color; + args.splice(1, 0, c, 'color: inherit'); + + // The final "%c" is somewhat tricky, because there could be other + // arguments passed either before or after the %c, so we need to + // figure out the correct index to insert the CSS into + let index = 0; + let lastC = 0; + args[0].replace(/%[a-zA-Z%]/g, match => { + if (match === '%%') { + return; + } + index++; + if (match === '%c') { + // We only are interested in the *last* %c + // (the user may have provided their own) + lastC = index; + } + }); + + args.splice(lastC, 0, c); +} + +/** + * Invokes `console.debug()` when available. + * No-op when `console.debug` is not a "function". + * If `console.debug` is not available, falls back + * to `console.log`. + * + * @api public + */ +exports.log = console.debug || console.log || (() => {}); + +/** + * Save `namespaces`. + * + * @param {String} namespaces + * @api private + */ +function save(namespaces) { + try { + if (namespaces) { + exports.storage.setItem('debug', namespaces); + } else { + exports.storage.removeItem('debug'); + } + } catch (error) { + // Swallow + // XXX (@Qix-) should we be logging these? + } +} + +/** + * Load `namespaces`. + * + * @return {String} returns the previously persisted debug modes + * @api private + */ +function load() { + let r; + try { + r = exports.storage.getItem('debug'); + } catch (error) { + // Swallow + // XXX (@Qix-) should we be logging these? + } + + // If debug isn't set in LS, and we're in Electron, try to load $DEBUG + if (!r && typeof process !== 'undefined' && 'env' in process) { + r = process.env.DEBUG; + } + + return r; +} + +/** + * Localstorage attempts to return the localstorage. + * + * This is necessary because safari throws + * when a user disables cookies/localstorage + * and you attempt to access it. + * + * @return {LocalStorage} + * @api private + */ + +function localstorage() { + try { + // TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context + // The Browser also has localStorage in the global context. + return localStorage; + } catch (error) { + // Swallow + // XXX (@Qix-) should we be logging these? + } +} + +module.exports = __webpack_require__(/*! ./common */ "./node_modules/debug/src/common.js")(exports); + +const {formatters} = module.exports; + +/** + * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default. + */ + +formatters.j = function (v) { + try { + return JSON.stringify(v); + } catch (error) { + return '[UnexpectedJSONParseError]: ' + error.message; + } +}; + + +/***/ }), + +/***/ "./node_modules/debug/src/common.js": +/*!******************************************!*\ + !*** ./node_modules/debug/src/common.js ***! + \******************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +/** + * This is the common logic for both the Node.js and web browser + * implementations of `debug()`. + */ + +function setup(env) { + createDebug.debug = createDebug; + createDebug.default = createDebug; + createDebug.coerce = coerce; + createDebug.disable = disable; + createDebug.enable = enable; + createDebug.enabled = enabled; + createDebug.humanize = __webpack_require__(/*! ms */ "./node_modules/ms/index.js"); + createDebug.destroy = destroy; + + Object.keys(env).forEach(key => { + createDebug[key] = env[key]; + }); + + /** + * The currently active debug mode names, and names to skip. + */ + + createDebug.names = []; + createDebug.skips = []; + + /** + * Map of special "%n" handling functions, for the debug "format" argument. + * + * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N". + */ + createDebug.formatters = {}; + + /** + * Selects a color for a debug namespace + * @param {String} namespace The namespace string for the debug instance to be colored + * @return {Number|String} An ANSI color code for the given namespace + * @api private + */ + function selectColor(namespace) { + let hash = 0; + + for (let i = 0; i < namespace.length; i++) { + hash = ((hash << 5) - hash) + namespace.charCodeAt(i); + hash |= 0; // Convert to 32bit integer + } + + return createDebug.colors[Math.abs(hash) % createDebug.colors.length]; + } + createDebug.selectColor = selectColor; + + /** + * Create a debugger with the given `namespace`. + * + * @param {String} namespace + * @return {Function} + * @api public + */ + function createDebug(namespace) { + let prevTime; + let enableOverride = null; + let namespacesCache; + let enabledCache; + + function debug(...args) { + // Disabled? + if (!debug.enabled) { + return; + } + + const self = debug; + + // Set `diff` timestamp + const curr = Number(new Date()); + const ms = curr - (prevTime || curr); + self.diff = ms; + self.prev = prevTime; + self.curr = curr; + prevTime = curr; + + args[0] = createDebug.coerce(args[0]); + + if (typeof args[0] !== 'string') { + // Anything else let's inspect with %O + args.unshift('%O'); + } + + // Apply any `formatters` transformations + let index = 0; + args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => { + // If we encounter an escaped % then don't increase the array index + if (match === '%%') { + return '%'; + } + index++; + const formatter = createDebug.formatters[format]; + if (typeof formatter === 'function') { + const val = args[index]; + match = formatter.call(self, val); + + // Now we need to remove `args[index]` since it's inlined in the `format` + args.splice(index, 1); + index--; + } + return match; + }); + + // Apply env-specific formatting (colors, etc.) + createDebug.formatArgs.call(self, args); + + const logFn = self.log || createDebug.log; + logFn.apply(self, args); + } + + debug.namespace = namespace; + debug.useColors = createDebug.useColors(); + debug.color = createDebug.selectColor(namespace); + debug.extend = extend; + debug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release. + + Object.defineProperty(debug, 'enabled', { + enumerable: true, + configurable: false, + get: () => { + if (enableOverride !== null) { + return enableOverride; + } + if (namespacesCache !== createDebug.namespaces) { + namespacesCache = createDebug.namespaces; + enabledCache = createDebug.enabled(namespace); + } + + return enabledCache; + }, + set: v => { + enableOverride = v; + } + }); + + // Env-specific initialization logic for debug instances + if (typeof createDebug.init === 'function') { + createDebug.init(debug); + } + + return debug; + } + + function extend(namespace, delimiter) { + const newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace); + newDebug.log = this.log; + return newDebug; + } + + /** + * Enables a debug mode by namespaces. This can include modes + * separated by a colon and wildcards. + * + * @param {String} namespaces + * @api public + */ + function enable(namespaces) { + createDebug.save(namespaces); + createDebug.namespaces = namespaces; + + createDebug.names = []; + createDebug.skips = []; + + let i; + const split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/); + const len = split.length; + + for (i = 0; i < len; i++) { + if (!split[i]) { + // ignore empty strings + continue; + } + + namespaces = split[i].replace(/\*/g, '.*?'); + + if (namespaces[0] === '-') { + createDebug.skips.push(new RegExp('^' + namespaces.substr(1) + '$')); + } else { + createDebug.names.push(new RegExp('^' + namespaces + '$')); + } + } + } + + /** + * Disable debug output. + * + * @return {String} namespaces + * @api public + */ + function disable() { + const namespaces = [ + ...createDebug.names.map(toNamespace), + ...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace) + ].join(','); + createDebug.enable(''); + return namespaces; + } + + /** + * Returns true if the given mode name is enabled, false otherwise. + * + * @param {String} name + * @return {Boolean} + * @api public + */ + function enabled(name) { + if (name[name.length - 1] === '*') { + return true; + } + + let i; + let len; + + for (i = 0, len = createDebug.skips.length; i < len; i++) { + if (createDebug.skips[i].test(name)) { + return false; + } + } + + for (i = 0, len = createDebug.names.length; i < len; i++) { + if (createDebug.names[i].test(name)) { + return true; + } + } + + return false; + } + + /** + * Convert regexp to namespace + * + * @param {RegExp} regxep + * @return {String} namespace + * @api private + */ + function toNamespace(regexp) { + return regexp.toString() + .substring(2, regexp.toString().length - 2) + .replace(/\.\*\?$/, '*'); + } + + /** + * Coerce `val`. + * + * @param {Mixed} val + * @return {Mixed} + * @api private + */ + function coerce(val) { + if (val instanceof Error) { + return val.stack || val.message; + } + return val; + } + + /** + * XXX DO NOT USE. This is a temporary stub function. + * XXX It WILL be removed in the next major release. + */ + function destroy() { + console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'); + } + + createDebug.enable(createDebug.load()); + + return createDebug; +} + +module.exports = setup; + + +/***/ }), + +/***/ "./node_modules/extend/index.js": +/*!**************************************!*\ + !*** ./node_modules/extend/index.js ***! + \**************************************/ +/***/ ((module) => { + +"use strict"; + + +var hasOwn = Object.prototype.hasOwnProperty; +var toStr = Object.prototype.toString; +var defineProperty = Object.defineProperty; +var gOPD = Object.getOwnPropertyDescriptor; + +var isArray = function isArray(arr) { + if (typeof Array.isArray === 'function') { + return Array.isArray(arr); + } + + return toStr.call(arr) === '[object Array]'; +}; + +var isPlainObject = function isPlainObject(obj) { + if (!obj || toStr.call(obj) !== '[object Object]') { + return false; + } + + var hasOwnConstructor = hasOwn.call(obj, 'constructor'); + var hasIsPrototypeOf = obj.constructor && obj.constructor.prototype && hasOwn.call(obj.constructor.prototype, 'isPrototypeOf'); + // Not own constructor property must be Object + if (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) { + return false; + } + + // Own properties are enumerated firstly, so to speed up, + // if last one is own, then all properties are own. + var key; + for (key in obj) { /**/ } + + return typeof key === 'undefined' || hasOwn.call(obj, key); +}; + +// If name is '__proto__', and Object.defineProperty is available, define __proto__ as an own property on target +var setProperty = function setProperty(target, options) { + if (defineProperty && options.name === '__proto__') { + defineProperty(target, options.name, { + enumerable: true, + configurable: true, + value: options.newValue, + writable: true + }); + } else { + target[options.name] = options.newValue; + } +}; + +// Return undefined instead of __proto__ if '__proto__' is not an own property +var getProperty = function getProperty(obj, name) { + if (name === '__proto__') { + if (!hasOwn.call(obj, name)) { + return void 0; + } else if (gOPD) { + // In early versions of node, obj['__proto__'] is buggy when obj has + // __proto__ as an own property. Object.getOwnPropertyDescriptor() works. + return gOPD(obj, name).value; + } + } + + return obj[name]; +}; + +module.exports = function extend() { + var options, name, src, copy, copyIsArray, clone; + var target = arguments[0]; + var i = 1; + var length = arguments.length; + var deep = false; + + // Handle a deep copy situation + if (typeof target === 'boolean') { + deep = target; + target = arguments[1] || {}; + // skip the boolean and the target + i = 2; + } + if (target == null || (typeof target !== 'object' && typeof target !== 'function')) { + target = {}; + } + + for (; i < length; ++i) { + options = arguments[i]; + // Only deal with non-null/undefined values + if (options != null) { + // Extend the base object + for (name in options) { + src = getProperty(target, name); + copy = getProperty(options, name); + + // Prevent never-ending loop + if (target !== copy) { + // Recurse if we're merging plain objects or arrays + if (deep && copy && (isPlainObject(copy) || (copyIsArray = isArray(copy)))) { + if (copyIsArray) { + copyIsArray = false; + clone = src && isArray(src) ? src : []; + } else { + clone = src && isPlainObject(src) ? src : {}; + } + + // Never move original objects, clone them + setProperty(target, { name: name, newValue: extend(deep, clone, copy) }); + + // Don't bring in undefined values + } else if (typeof copy !== 'undefined') { + setProperty(target, { name: name, newValue: copy }); + } + } + } + } + } + + // Return the modified object + return target; +}; + + +/***/ }), + +/***/ "./node_modules/github-slugger/index.js": +/*!**********************************************!*\ + !*** ./node_modules/github-slugger/index.js ***! + \**********************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +const regex = __webpack_require__(/*! ./regex.js */ "./node_modules/github-slugger/regex.js") + +module.exports = BananaSlug + +const own = Object.hasOwnProperty + +function BananaSlug () { + const self = this + + if (!(self instanceof BananaSlug)) return new BananaSlug() + + self.reset() +} + +/** + * Generate a unique slug. + * @param {string} value String of text to slugify + * @param {boolean} [false] Keep the current case, otherwise make all lowercase + * @return {string} A unique slug string + */ +BananaSlug.prototype.slug = function (value, maintainCase) { + const self = this + let slug = slugger(value, maintainCase === true) + const originalSlug = slug + + while (own.call(self.occurrences, slug)) { + self.occurrences[originalSlug]++ + slug = originalSlug + '-' + self.occurrences[originalSlug] + } + + self.occurrences[slug] = 0 + + return slug +} + +/** + * Reset - Forget all previous slugs + * @return void + */ +BananaSlug.prototype.reset = function () { + this.occurrences = Object.create(null) +} + +function slugger (string, maintainCase) { + if (typeof string !== 'string') return '' + if (!maintainCase) string = string.toLowerCase() + return string.replace(regex, '').replace(/ /g, '-') +} + +BananaSlug.slug = slugger + + +/***/ }), + +/***/ "./node_modules/github-slugger/regex.js": +/*!**********************************************!*\ + !*** ./node_modules/github-slugger/regex.js ***! + \**********************************************/ +/***/ ((module) => { + +// This module is generated by `script/`. +/* eslint-disable no-control-regex, no-misleading-character-class, no-useless-escape */ +module.exports = /[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08BE-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B55\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D04\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D81\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1ABF-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31BB-\u31EF\u3200-\u33FF\u4DB6-\u4DFF\u9FF0-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7C7-\uA7F6\uA828-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB68-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD47-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD-\uDDCF\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC60-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD00-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD823-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D-\uD83F\uD87B-\uD87D\uD87F-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE4-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD822[\uDEF3-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD869[\uDED7-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g + + +/***/ }), + +/***/ "./node_modules/hast-util-parse-selector/index.js": +/*!********************************************************!*\ + !*** ./node_modules/hast-util-parse-selector/index.js ***! + \********************************************************/ +/***/ ((module) => { + +"use strict"; + + +module.exports = parse + +var search = /[#.]/g + +// Create a hast element from a simple CSS selector. +function parse(selector, defaultTagName) { + var value = selector || '' + var name = defaultTagName || 'div' + var props = {} + var start = 0 + var subvalue + var previous + var match + + while (start < value.length) { + search.lastIndex = start + match = search.exec(value) + subvalue = value.slice(start, match ? match.index : value.length) + + if (subvalue) { + if (!previous) { + name = subvalue + } else if (previous === '#') { + props.id = subvalue + } else if (props.className) { + props.className.push(subvalue) + } else { + props.className = [subvalue] + } + + start += subvalue.length + } + + if (match) { + previous = match[0] + start++ + } + } + + return {type: 'element', tagName: name, properties: props, children: []} +} + + +/***/ }), + +/***/ "./node_modules/hast-util-to-string/index.js": +/*!***************************************************!*\ + !*** ./node_modules/hast-util-to-string/index.js ***! + \***************************************************/ +/***/ ((module) => { + +"use strict"; +/** + * @fileoverview + * Get the plain-text value of a hast node. + * @longdescription + * ## Use + * + * ```js + * var h = require('hastscript') + * var toString = require('hast-util-to-string') + * + * toString(h('p', 'Alpha')) + * //=> 'Alpha' + * toString(h('div', [h('b', 'Bold'), ' and ', h('i', 'italic'), '.'])) + * //=> 'Bold and italic.' + * ``` + * + * ## API + * + * ### `toString(node)` + * + * Transform a node to a string. + */ + + + +module.exports = toString + +function toString(node) { + // “The concatenation of data of all the Text node descendants of the context + // object, in tree order.” + if ('children' in node) { + return all(node) + } + + // “Context object’s data.” + return 'value' in node ? node.value : '' +} + +function one(node) { + if (node.type === 'text') { + return node.value + } + + return node.children ? all(node) : '' +} + +function all(node) { + var children = node.children + var length = children.length + var index = -1 + var result = [] + + while (++index < length) { + result[index] = one(children[index]) + } + + return result.join('') +} + + +/***/ }), + +/***/ "./node_modules/hastscript/factory.js": +/*!********************************************!*\ + !*** ./node_modules/hastscript/factory.js ***! + \********************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var find = __webpack_require__(/*! property-information/find */ "./node_modules/hastscript/node_modules/property-information/find.js") +var normalize = __webpack_require__(/*! property-information/normalize */ "./node_modules/hastscript/node_modules/property-information/normalize.js") +var parseSelector = __webpack_require__(/*! hast-util-parse-selector */ "./node_modules/hast-util-parse-selector/index.js") +var spaces = (__webpack_require__(/*! space-separated-tokens */ "./node_modules/hastscript/node_modules/space-separated-tokens/index.js").parse) +var commas = (__webpack_require__(/*! comma-separated-tokens */ "./node_modules/hastscript/node_modules/comma-separated-tokens/index.js").parse) + +module.exports = factory + +var own = {}.hasOwnProperty + +function factory(schema, defaultTagName, caseSensitive) { + var adjust = caseSensitive ? createAdjustMap(caseSensitive) : null + + return h + + // Hyperscript compatible DSL for creating virtual hast trees. + function h(selector, properties) { + var node = parseSelector(selector, defaultTagName) + var children = Array.prototype.slice.call(arguments, 2) + var name = node.tagName.toLowerCase() + var property + + node.tagName = adjust && own.call(adjust, name) ? adjust[name] : name + + if (properties && isChildren(properties, node)) { + children.unshift(properties) + properties = null + } + + if (properties) { + for (property in properties) { + addProperty(node.properties, property, properties[property]) + } + } + + addChild(node.children, children) + + if (node.tagName === 'template') { + node.content = {type: 'root', children: node.children} + node.children = [] + } + + return node + } + + function addProperty(properties, key, value) { + var info + var property + var result + + // Ignore nullish and NaN values. + if (value === null || value === undefined || value !== value) { + return + } + + info = find(schema, key) + property = info.property + result = value + + // Handle list values. + if (typeof result === 'string') { + if (info.spaceSeparated) { + result = spaces(result) + } else if (info.commaSeparated) { + result = commas(result) + } else if (info.commaOrSpaceSeparated) { + result = spaces(commas(result).join(' ')) + } + } + + // Accept `object` on style. + if (property === 'style' && typeof value !== 'string') { + result = style(result) + } + + // Class-names (which can be added both on the `selector` and here). + if (property === 'className' && properties.className) { + result = properties.className.concat(result) + } + + properties[property] = parsePrimitives(info, property, result) + } +} + +function isChildren(value, node) { + return ( + typeof value === 'string' || + 'length' in value || + isNode(node.tagName, value) + ) +} + +function isNode(tagName, value) { + var type = value.type + + if (tagName === 'input' || !type || typeof type !== 'string') { + return false + } + + if (typeof value.children === 'object' && 'length' in value.children) { + return true + } + + type = type.toLowerCase() + + if (tagName === 'button') { + return ( + type !== 'menu' && + type !== 'submit' && + type !== 'reset' && + type !== 'button' + ) + } + + return 'value' in value +} + +function addChild(nodes, value) { + var index + var length + + if (typeof value === 'string' || typeof value === 'number') { + nodes.push({type: 'text', value: String(value)}) + return + } + + if (typeof value === 'object' && 'length' in value) { + index = -1 + length = value.length + + while (++index < length) { + addChild(nodes, value[index]) + } + + return + } + + if (typeof value !== 'object' || !('type' in value)) { + throw new Error('Expected node, nodes, or string, got `' + value + '`') + } + + nodes.push(value) +} + +// Parse a (list of) primitives. +function parsePrimitives(info, name, value) { + var index + var length + var result + + if (typeof value !== 'object' || !('length' in value)) { + return parsePrimitive(info, name, value) + } + + length = value.length + index = -1 + result = [] + + while (++index < length) { + result[index] = parsePrimitive(info, name, value[index]) + } + + return result +} + +// Parse a single primitives. +function parsePrimitive(info, name, value) { + var result = value + + if (info.number || info.positiveNumber) { + if (!isNaN(result) && result !== '') { + result = Number(result) + } + } else if (info.boolean || info.overloadedBoolean) { + // Accept `boolean` and `string`. + if ( + typeof result === 'string' && + (result === '' || normalize(value) === normalize(name)) + ) { + result = true + } + } + + return result +} + +function style(value) { + var result = [] + var key + + for (key in value) { + result.push([key, value[key]].join(': ')) + } + + return result.join('; ') +} + +function createAdjustMap(values) { + var length = values.length + var index = -1 + var result = {} + var value + + while (++index < length) { + value = values[index] + result[value.toLowerCase()] = value + } + + return result +} + + +/***/ }), + +/***/ "./node_modules/hastscript/html.js": +/*!*****************************************!*\ + !*** ./node_modules/hastscript/html.js ***! + \*****************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var schema = __webpack_require__(/*! property-information/html */ "./node_modules/hastscript/node_modules/property-information/html.js") +var factory = __webpack_require__(/*! ./factory */ "./node_modules/hastscript/factory.js") + +var html = factory(schema, 'div') +html.displayName = 'html' + +module.exports = html + + +/***/ }), + +/***/ "./node_modules/hastscript/index.js": +/*!******************************************!*\ + !*** ./node_modules/hastscript/index.js ***! + \******************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +module.exports = __webpack_require__(/*! ./html */ "./node_modules/hastscript/html.js") + + +/***/ }), + +/***/ "./node_modules/hastscript/node_modules/comma-separated-tokens/index.js": +/*!******************************************************************************!*\ + !*** ./node_modules/hastscript/node_modules/comma-separated-tokens/index.js ***! + \******************************************************************************/ +/***/ ((__unused_webpack_module, exports) => { + +"use strict"; + + +exports.parse = parse +exports.stringify = stringify + +var comma = ',' +var space = ' ' +var empty = '' + +// Parse comma-separated tokens to an array. +function parse(value) { + var values = [] + var input = String(value || empty) + var index = input.indexOf(comma) + var lastIndex = 0 + var end = false + var val + + while (!end) { + if (index === -1) { + index = input.length + end = true + } + + val = input.slice(lastIndex, index).trim() + + if (val || !end) { + values.push(val) + } + + lastIndex = index + 1 + index = input.indexOf(comma, lastIndex) + } + + return values +} + +// Compile an array to comma-separated tokens. +// `options.padLeft` (default: `true`) pads a space left of each token, and +// `options.padRight` (default: `false`) pads a space to the right of each token. +function stringify(values, options) { + var settings = options || {} + var left = settings.padLeft === false ? empty : space + var right = settings.padRight ? space : empty + + // Ensure the last empty entry is seen. + if (values[values.length - 1] === empty) { + values = values.concat(empty) + } + + return values.join(right + comma + left).trim() +} + + +/***/ }), + +/***/ "./node_modules/hastscript/node_modules/property-information/find.js": +/*!***************************************************************************!*\ + !*** ./node_modules/hastscript/node_modules/property-information/find.js ***! + \***************************************************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var normalize = __webpack_require__(/*! ./normalize */ "./node_modules/hastscript/node_modules/property-information/normalize.js") +var DefinedInfo = __webpack_require__(/*! ./lib/util/defined-info */ "./node_modules/hastscript/node_modules/property-information/lib/util/defined-info.js") +var Info = __webpack_require__(/*! ./lib/util/info */ "./node_modules/hastscript/node_modules/property-information/lib/util/info.js") + +var data = 'data' + +module.exports = find + +var valid = /^data[-\w.:]+$/i +var dash = /-[a-z]/g +var cap = /[A-Z]/g + +function find(schema, value) { + var normal = normalize(value) + var prop = value + var Type = Info + + if (normal in schema.normal) { + return schema.property[schema.normal[normal]] + } + + if (normal.length > 4 && normal.slice(0, 4) === data && valid.test(value)) { + // Attribute or property. + if (value.charAt(4) === '-') { + prop = datasetToProperty(value) + } else { + value = datasetToAttribute(value) + } + + Type = DefinedInfo + } + + return new Type(prop, value) +} + +function datasetToProperty(attribute) { + var value = attribute.slice(5).replace(dash, camelcase) + return data + value.charAt(0).toUpperCase() + value.slice(1) +} + +function datasetToAttribute(property) { + var value = property.slice(4) + + if (dash.test(value)) { + return property + } + + value = value.replace(cap, kebab) + + if (value.charAt(0) !== '-') { + value = '-' + value + } + + return data + value +} + +function kebab($0) { + return '-' + $0.toLowerCase() +} + +function camelcase($0) { + return $0.charAt(1).toUpperCase() +} + + +/***/ }), + +/***/ "./node_modules/hastscript/node_modules/property-information/html.js": +/*!***************************************************************************!*\ + !*** ./node_modules/hastscript/node_modules/property-information/html.js ***! + \***************************************************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var merge = __webpack_require__(/*! ./lib/util/merge */ "./node_modules/hastscript/node_modules/property-information/lib/util/merge.js") +var xlink = __webpack_require__(/*! ./lib/xlink */ "./node_modules/hastscript/node_modules/property-information/lib/xlink.js") +var xml = __webpack_require__(/*! ./lib/xml */ "./node_modules/hastscript/node_modules/property-information/lib/xml.js") +var xmlns = __webpack_require__(/*! ./lib/xmlns */ "./node_modules/hastscript/node_modules/property-information/lib/xmlns.js") +var aria = __webpack_require__(/*! ./lib/aria */ "./node_modules/hastscript/node_modules/property-information/lib/aria.js") +var html = __webpack_require__(/*! ./lib/html */ "./node_modules/hastscript/node_modules/property-information/lib/html.js") + +module.exports = merge([xml, xlink, xmlns, aria, html]) + + +/***/ }), + +/***/ "./node_modules/hastscript/node_modules/property-information/lib/aria.js": +/*!*******************************************************************************!*\ + !*** ./node_modules/hastscript/node_modules/property-information/lib/aria.js ***! + \*******************************************************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var types = __webpack_require__(/*! ./util/types */ "./node_modules/hastscript/node_modules/property-information/lib/util/types.js") +var create = __webpack_require__(/*! ./util/create */ "./node_modules/hastscript/node_modules/property-information/lib/util/create.js") + +var booleanish = types.booleanish +var number = types.number +var spaceSeparated = types.spaceSeparated + +module.exports = create({ + transform: ariaTransform, + properties: { + ariaActiveDescendant: null, + ariaAtomic: booleanish, + ariaAutoComplete: null, + ariaBusy: booleanish, + ariaChecked: booleanish, + ariaColCount: number, + ariaColIndex: number, + ariaColSpan: number, + ariaControls: spaceSeparated, + ariaCurrent: null, + ariaDescribedBy: spaceSeparated, + ariaDetails: null, + ariaDisabled: booleanish, + ariaDropEffect: spaceSeparated, + ariaErrorMessage: null, + ariaExpanded: booleanish, + ariaFlowTo: spaceSeparated, + ariaGrabbed: booleanish, + ariaHasPopup: null, + ariaHidden: booleanish, + ariaInvalid: null, + ariaKeyShortcuts: null, + ariaLabel: null, + ariaLabelledBy: spaceSeparated, + ariaLevel: number, + ariaLive: null, + ariaModal: booleanish, + ariaMultiLine: booleanish, + ariaMultiSelectable: booleanish, + ariaOrientation: null, + ariaOwns: spaceSeparated, + ariaPlaceholder: null, + ariaPosInSet: number, + ariaPressed: booleanish, + ariaReadOnly: booleanish, + ariaRelevant: null, + ariaRequired: booleanish, + ariaRoleDescription: spaceSeparated, + ariaRowCount: number, + ariaRowIndex: number, + ariaRowSpan: number, + ariaSelected: booleanish, + ariaSetSize: number, + ariaSort: null, + ariaValueMax: number, + ariaValueMin: number, + ariaValueNow: number, + ariaValueText: null, + role: null + } +}) + +function ariaTransform(_, prop) { + return prop === 'role' ? prop : 'aria-' + prop.slice(4).toLowerCase() +} + + +/***/ }), + +/***/ "./node_modules/hastscript/node_modules/property-information/lib/html.js": +/*!*******************************************************************************!*\ + !*** ./node_modules/hastscript/node_modules/property-information/lib/html.js ***! + \*******************************************************************************/ +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var types = __webpack_require__(/*! ./util/types */ "./node_modules/hastscript/node_modules/property-information/lib/util/types.js") +var create = __webpack_require__(/*! ./util/create */ "./node_modules/hastscript/node_modules/property-information/lib/util/create.js") +var caseInsensitiveTransform = __webpack_require__(/*! ./util/case-insensitive-transform */ "./node_modules/hastscript/node_modules/property-information/lib/util/case-insensitive-transform.js") + +var boolean = types.boolean +var overloadedBoolean = types.overloadedBoolean +var booleanish = types.booleanish +var number = types.number +var spaceSeparated = types.spaceSeparated +var commaSeparated = types.commaSeparated + +module.exports = create({ + space: 'html', + attributes: { + acceptcharset: 'accept-charset', + classname: 'class', + htmlfor: 'for', + httpequiv: 'http-equiv' + }, + transform: caseInsensitiveTransform, + mustUseProperty: ['checked', 'multiple', 'muted', 'selected'], + properties: { + // Standard Properties. + abbr: null, + accept: commaSeparated, + acceptCharset: spaceSeparated, + accessKey: spaceSeparated, + action: null, + allow: null, + allowFullScreen: boolean, + allowPaymentRequest: boolean, + allowUserMedia: boolean, + alt: null, + as: null, + async: boolean, + autoCapitalize: null, + autoComplete: spaceSeparated, + autoFocus: boolean, + autoPlay: boolean, + capture: boolean, + charSet: null, + checked: boolean, + cite: null, + className: spaceSeparated, + cols: number, + colSpan: null, + content: null, + contentEditable: booleanish, + controls: boolean, + controlsList: spaceSeparated, + coords: number | commaSeparated, + crossOrigin: null, + data: null, + dateTime: null, + decoding: null, + default: boolean, + defer: boolean, + dir: null, + dirName: null, + disabled: boolean, + download: overloadedBoolean, + draggable: booleanish, + encType: null, + enterKeyHint: null, + form: null, + formAction: null, + formEncType: null, + formMethod: null, + formNoValidate: boolean, + formTarget: null, + headers: spaceSeparated, + height: number, + hidden: boolean, + high: number, + href: null, + hrefLang: null, + htmlFor: spaceSeparated, + httpEquiv: spaceSeparated, + id: null, + imageSizes: null, + imageSrcSet: commaSeparated, + inputMode: null, + integrity: null, + is: null, + isMap: boolean, + itemId: null, + itemProp: spaceSeparated, + itemRef: spaceSeparated, + itemScope: boolean, + itemType: spaceSeparated, + kind: null, + label: null, + lang: null, + language: null, + list: null, + loading: null, + loop: boolean, + low: number, + manifest: null, + max: null, + maxLength: number, + media: null, + method: null, + min: null, + minLength: number, + multiple: boolean, + muted: boolean, + name: null, + nonce: null, + noModule: boolean, + noValidate: boolean, + onAbort: null, + onAfterPrint: null, + onAuxClick: null, + onBeforePrint: null, + onBeforeUnload: null, + onBlur: null, + onCancel: null, + onCanPlay: null, + onCanPlayThrough: null, + onChange: null, + onClick: null, + onClose: null, + onContextMenu: null, + onCopy: null, + onCueChange: null, + onCut: null, + onDblClick: null, + onDrag: null, + onDragEnd: null, + onDragEnter: null, + onDragExit: null, + onDragLeave: null, + onDragOver: null, + onDragStart: null, + onDrop: null, + onDurationChange: null, + onEmptied: null, + onEnded: null, + onError: null, + onFocus: null, + onFormData: null, + onHashChange: null, + onInput: null, + onInvalid: null, + onKeyDown: null, + onKeyPress: null, + onKeyUp: null, + onLanguageChange: null, + onLoad: null, + onLoadedData: null, + onLoadedMetadata: null, + onLoadEnd: null, + onLoadStart: null, + onMessage: null, + onMessageError: null, + onMouseDown: null, + onMouseEnter: null, + onMouseLeave: null, + onMouseMove: null, + onMouseOut: null, + onMouseOver: null, + onMouseUp: null, + onOffline: null, + onOnline: null, + onPageHide: null, + onPageShow: null, + onPaste: null, + onPause: null, + onPlay: null, + onPlaying: null, + onPopState: null, + onProgress: null, + onRateChange: null, + onRejectionHandled: null, + onReset: null, + onResize: null, + onScroll: null, + onSecurityPolicyViolation: null, + onSeeked: null, + onSeeking: null, + onSelect: null, + onSlotChange: null, + onStalled: null, + onStorage: null, + onSubmit: null, + onSuspend: null, + onTimeUpdate: null, + onToggle: null, + onUnhandledRejection: null, + onUnload: null, + onVolumeChange: null, + onWaiting: null, + onWheel: null, + open: boolean, + optimum: number, + pattern: null, + ping: spaceSeparated, + placeholder: null, + playsInline: boolean, + poster: null, + preload: null, + readOnly: boolean, + referrerPolicy: null, + rel: spaceSeparated, + required: boolean, + reversed: boolean, + rows: number, + rowSpan: number, + sandbox: spaceSeparated, + scope: null, + scoped: boolean, + seamless: boolean, + selected: boolean, + shape: null, + size: number, + sizes: null, + slot: null, + span: number, + spellCheck: booleanish, + src: null, + srcDoc: null, + srcLang: null, + srcSet: commaSeparated, + start: number, + step: null, + style: null, + tabIndex: number, + target: null, + title: null, + translate: null, + type: null, + typeMustMatch: boolean, + useMap: null, + value: booleanish, + width: number, + wrap: null, + + // Legacy. + // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis + align: null, // Several. Use CSS `text-align` instead, + aLink: null, // ``. Use CSS `a:active {color}` instead + archive: spaceSeparated, // ``. List of URIs to archives + axis: null, // `` and ``. Use `scope` on `` + background: null, // ``. Use CSS `background-image` instead + bgColor: null, // `` and table elements. Use CSS `background-color` instead + border: number, // ``. Use CSS `border-width` instead, + borderColor: null, // `
`. Use CSS `border-color` instead, + bottomMargin: number, // `` + cellPadding: null, // `
` + cellSpacing: null, // `
` + char: null, // Several table elements. When `align=char`, sets the character to align on + charOff: null, // Several table elements. When `char`, offsets the alignment + classId: null, // `` + clear: null, // `
`. Use CSS `clear` instead + code: null, // `` + codeBase: null, // `` + codeType: null, // `` + color: null, // `` and `
`. Use CSS instead + compact: boolean, // Lists. Use CSS to reduce space between items instead + declare: boolean, // `` + event: null, // ` + * ``` + * + * Elements by their ID are made available in browsers on the `window` object. + * Using a prefix prevents this from being a problem. + * @property {string} [label='Footnotes'] + * Label to use for the footnotes section. + * Affects screen reader users. + * Change it if you’re authoring in a different language. + * @property {string} [backLabel='Back to content'] + * Label to use from backreferences back to their footnote call. + * Affects screen reader users. + * Change it if you’re authoring in a different language. + */ + + + + + +const own = {}.hasOwnProperty + +/** + * @param {Options} [options={}] + * @returns {HtmlExtension} + */ +function gfmFootnoteHtml(options = {}) { + const label = options.label || 'Footnotes' + const backLabel = options.backLabel || 'Back to content' + const clobberPrefix = + options.clobberPrefix === undefined || options.clobberPrefix === null + ? 'user-content-' + : options.clobberPrefix + return { + enter: { + gfmFootnoteDefinition() { + const stack = /** @type {Array} */ (this.getData('tightStack')) + stack.push(false) + }, + gfmFootnoteDefinitionLabelString() { + this.buffer() + }, + gfmFootnoteCallString() { + this.buffer() + } + }, + exit: { + gfmFootnoteDefinition() { + let definitions = /** @type {Record} */ ( + this.getData('gfmFootnoteDefinitions') + ) + const footnoteStack = /** @type {Array} */ ( + this.getData('gfmFootnoteDefinitionStack') + ) + const tightStack = /** @type {Array} */ ( + this.getData('tightStack') + ) + const current = footnoteStack.pop() + const value = this.resume() + + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(current, 'expected to be in a footnote') + + if (!definitions) { + this.setData('gfmFootnoteDefinitions', (definitions = {})) + } + + if (!own.call(definitions, current)) definitions[current] = value + + tightStack.pop() + this.setData('slurpOneLineEnding', true) + // “Hack” to prevent a line ending from showing up if we’re in a definition in + // an empty list item. + this.setData('lastWasTag') + }, + gfmFootnoteDefinitionLabelString(token) { + let footnoteStack = /** @type {Array} */ ( + this.getData('gfmFootnoteDefinitionStack') + ) + + if (!footnoteStack) { + this.setData('gfmFootnoteDefinitionStack', (footnoteStack = [])) + } + + footnoteStack.push((0,micromark_util_normalize_identifier__WEBPACK_IMPORTED_MODULE_1__.normalizeIdentifier)(this.sliceSerialize(token))) + this.resume() // Drop the label. + this.buffer() // Get ready for a value. + }, + gfmFootnoteCallString(token) { + let calls = /** @type {Array|undefined} */ ( + this.getData('gfmFootnoteCallOrder') + ) + let counts = /** @type {Record|undefined} */ ( + this.getData('gfmFootnoteCallCounts') + ) + const id = (0,micromark_util_normalize_identifier__WEBPACK_IMPORTED_MODULE_1__.normalizeIdentifier)(this.sliceSerialize(token)) + /** @type {number} */ + let counter + + this.resume() + + if (!calls) this.setData('gfmFootnoteCallOrder', (calls = [])) + if (!counts) this.setData('gfmFootnoteCallCounts', (counts = {})) + + const index = calls.indexOf(id) + const safeId = (0,micromark_util_sanitize_uri__WEBPACK_IMPORTED_MODULE_2__.sanitizeUri)(id.toLowerCase()) + + if (index === -1) { + calls.push(id) + counts[id] = 1 + counter = calls.length + } else { + counts[id]++ + counter = index + 1 + } + + const reuseCounter = counts[id] + + this.tag( + '' + + String(counter) + + '' + ) + }, + null() { + const calls = /** @type {Array} */ ( + this.getData('gfmFootnoteCallOrder') || [] + ) + const counts = /** @type {Record} */ ( + this.getData('gfmFootnoteCallCounts') || {} + ) + const definitions = /** @type {Record} */ ( + this.getData('gfmFootnoteDefinitions') || {} + ) + let index = -1 + + if (calls.length > 0) { + this.lineEndingIfNeeded() + this.tag( + '

' + ) + this.raw(this.encode(label)) + this.tag('

') + this.lineEndingIfNeeded() + this.tag('
    ') + } + + while (++index < calls.length) { + // Called definitions are always defined. + const id = calls[index] + const safeId = (0,micromark_util_sanitize_uri__WEBPACK_IMPORTED_MODULE_2__.sanitizeUri)(id.toLowerCase()) + let referenceIndex = 0 + /** @type {Array} */ + const references = [] + + while (++referenceIndex <= counts[id]) { + references.push( + '↩' + + (referenceIndex > 1 + ? '' + referenceIndex + '' + : '') + + '' + ) + } + + const reference = references.join(' ') + let injected = false + + this.lineEndingIfNeeded() + this.tag('
  1. ') + this.lineEndingIfNeeded() + this.tag( + definitions[id].replace( + /<\/p>(?:\r?\n|\r)?$/, + (/** @type {string} */ $0) => { + injected = true + return ' ' + reference + $0 + } + ) + ) + + if (!injected) { + this.lineEndingIfNeeded() + this.tag(reference) + } + + this.lineEndingIfNeeded() + this.tag('
  2. ') + } + + if (calls.length > 0) { + this.lineEndingIfNeeded() + this.tag('
') + this.lineEndingIfNeeded() + this.tag('
') + } + } + } + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-extension-gfm-footnote/dev/lib/syntax.js": +/*!*************************************************************************!*\ + !*** ./node_modules/micromark-extension-gfm-footnote/dev/lib/syntax.js ***! + \*************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "gfmFootnote": () => (/* binding */ gfmFootnote) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/blank-line.js"); +/* harmony import */ var micromark_factory_space__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! micromark-factory-space */ "./node_modules/micromark-factory-space/dev/index.js"); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/* harmony import */ var micromark_util_normalize_identifier__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-normalize-identifier */ "./node_modules/micromark-util-normalize-identifier/dev/index.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').Extension} Extension + * @typedef {import('micromark-util-types').Resolver} Resolver + * @typedef {import('micromark-util-types').Token} Token + * @typedef {import('micromark-util-types').Tokenizer} Tokenizer + * @typedef {import('micromark-util-types').Exiter} Exiter + * @typedef {import('micromark-util-types').State} State + * @typedef {import('micromark-util-types').Event} Event + */ + + + + + + + + + + +const indent = {tokenize: tokenizeIndent, partial: true} + +/** + * @returns {Extension} + */ +function gfmFootnote() { + /** @type {Extension} */ + return { + document: { + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket]: { + tokenize: tokenizeDefinitionStart, + continuation: {tokenize: tokenizeDefinitionContinuation}, + exit: gfmFootnoteDefinitionEnd + } + }, + text: { + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket]: {tokenize: tokenizeGfmFootnoteCall}, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket]: { + add: 'after', + tokenize: tokenizePotentialGfmFootnoteCall, + resolveTo: resolveToPotentialGfmFootnoteCall + } + } + } +} + +/** @type {Tokenizer} */ +function tokenizePotentialGfmFootnoteCall(effects, ok, nok) { + const self = this + let index = self.events.length + /** @type {Array} */ + // @ts-expect-error It’s fine! + const defined = self.parser.gfmFootnotes || (self.parser.gfmFootnotes = []) + /** @type {Token} */ + let labelStart + + // Find an opening. + while (index--) { + const token = self.events[index][1] + + if (token.type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.labelImage) { + labelStart = token + break + } + + // Exit if we’ve walked far enough. + if ( + token.type === 'gfmFootnoteCall' || + token.type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.labelLink || + token.type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.label || + token.type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.image || + token.type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.link + ) { + break + } + } + + return start + + /** @type {State} */ + function start(code) { + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket, 'expected `]`') + + if (!labelStart || !labelStart._balanced) { + return nok(code) + } + + const id = (0,micromark_util_normalize_identifier__WEBPACK_IMPORTED_MODULE_3__.normalizeIdentifier)( + self.sliceSerialize({start: labelStart.end, end: self.now()}) + ) + + if (id.charCodeAt(0) !== micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.caret || !defined.includes(id.slice(1))) { + return nok(code) + } + + effects.enter('gfmFootnoteCallLabelMarker') + effects.consume(code) + effects.exit('gfmFootnoteCallLabelMarker') + return ok(code) + } +} + +/** @type {Resolver} */ +function resolveToPotentialGfmFootnoteCall(events, context) { + let index = events.length + /** @type {Token|undefined} */ + let labelStart + + // Find an opening. + while (index--) { + if ( + events[index][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.labelImage && + events[index][0] === 'enter' + ) { + labelStart = events[index][1] + break + } + } + + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(labelStart, 'expected `labelStart` to resolve') + + // Change the `labelImageMarker` to a `data`. + events[index + 1][1].type = micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.data + events[index + 3][1].type = 'gfmFootnoteCallLabelMarker' + + // The whole (without `!`): + const call = { + type: 'gfmFootnoteCall', + start: Object.assign({}, events[index + 3][1].start), + end: Object.assign({}, events[events.length - 1][1].end) + } + // The `^` marker + const marker = { + type: 'gfmFootnoteCallMarker', + start: Object.assign({}, events[index + 3][1].end), + end: Object.assign({}, events[index + 3][1].end) + } + // Increment the end 1 character. + marker.end.column++ + marker.end.offset++ + marker.end._bufferIndex++ + const string = { + type: 'gfmFootnoteCallString', + start: Object.assign({}, marker.end), + end: Object.assign({}, events[events.length - 1][1].start) + } + const chunk = { + type: micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.chunkString, + contentType: 'string', + start: Object.assign({}, string.start), + end: Object.assign({}, string.end) + } + + /** @type {Array} */ + const replacement = [ + // Take the `labelImageMarker` (now `data`, the `!`) + events[index + 1], + events[index + 2], + ['enter', call, context], + // The `[` + events[index + 3], + events[index + 4], + // The `^`. + ['enter', marker, context], + ['exit', marker, context], + // Everything in between. + ['enter', string, context], + ['enter', chunk, context], + ['exit', chunk, context], + ['exit', string, context], + // The ending (`]`, properly parsed and labelled). + events[events.length - 2], + events[events.length - 1], + ['exit', call, context] + ] + + events.splice(index, events.length - index + 1, ...replacement) + + return events +} + +/** @type {Tokenizer} */ +function tokenizeGfmFootnoteCall(effects, ok, nok) { + const self = this + /** @type {Array} */ + // @ts-expect-error It’s fine! + const defined = self.parser.gfmFootnotes || (self.parser.gfmFootnotes = []) + let size = 0 + /** @type {boolean} */ + let data + + return start + + /** @type {State} */ + function start(code) { + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket, 'expected `[`') + effects.enter('gfmFootnoteCall') + effects.enter('gfmFootnoteCallLabelMarker') + effects.consume(code) + effects.exit('gfmFootnoteCallLabelMarker') + return callStart + } + + /** @type {State} */ + function callStart(code) { + if (code !== micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.caret) return nok(code) + + effects.enter('gfmFootnoteCallMarker') + effects.consume(code) + effects.exit('gfmFootnoteCallMarker') + effects.enter('gfmFootnoteCallString') + effects.enter('chunkString').contentType = 'string' + return callData + } + + /** @type {State} */ + function callData(code) { + /** @type {Token} */ + let token + + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket || + size++ > micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_4__.constants.linkReferenceSizeMax + ) { + return nok(code) + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket) { + if (!data) { + return nok(code) + } + + effects.exit('chunkString') + token = effects.exit('gfmFootnoteCallString') + return defined.includes((0,micromark_util_normalize_identifier__WEBPACK_IMPORTED_MODULE_3__.normalizeIdentifier)(self.sliceSerialize(token))) + ? end(code) + : nok(code) + } + + effects.consume(code) + + if (!(0,micromark_util_character__WEBPACK_IMPORTED_MODULE_5__.markdownLineEndingOrSpace)(code)) { + data = true + } + + return code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.backslash ? callEscape : callData + } + + /** @type {State} */ + function callEscape(code) { + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.backslash || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket + ) { + effects.consume(code) + size++ + return callData + } + + return callData(code) + } + + /** @type {State} */ + function end(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket, 'expected `]`') + effects.enter('gfmFootnoteCallLabelMarker') + effects.consume(code) + effects.exit('gfmFootnoteCallLabelMarker') + effects.exit('gfmFootnoteCall') + return ok + } +} + +/** @type {Tokenizer} */ +function tokenizeDefinitionStart(effects, ok, nok) { + const self = this + /** @type {Array} */ + // @ts-expect-error It’s fine! + const defined = self.parser.gfmFootnotes || (self.parser.gfmFootnotes = []) + /** @type {string} */ + let identifier + let size = 0 + /** @type {boolean|undefined} */ + let data + + return start + + /** @type {State} */ + function start(code) { + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket, 'expected `[`') + effects.enter('gfmFootnoteDefinition')._container = true + effects.enter('gfmFootnoteDefinitionLabel') + effects.enter('gfmFootnoteDefinitionLabelMarker') + effects.consume(code) + effects.exit('gfmFootnoteDefinitionLabelMarker') + return labelStart + } + + /** @type {State} */ + function labelStart(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.caret) { + effects.enter('gfmFootnoteDefinitionMarker') + effects.consume(code) + effects.exit('gfmFootnoteDefinitionMarker') + effects.enter('gfmFootnoteDefinitionLabelString') + return atBreak + } + + return nok(code) + } + + /** @type {State} */ + function atBreak(code) { + /** @type {Token} */ + let token + + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket || + size > micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_4__.constants.linkReferenceSizeMax + ) { + return nok(code) + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket) { + if (!data) { + return nok(code) + } + + token = effects.exit('gfmFootnoteDefinitionLabelString') + identifier = (0,micromark_util_normalize_identifier__WEBPACK_IMPORTED_MODULE_3__.normalizeIdentifier)(self.sliceSerialize(token)) + effects.enter('gfmFootnoteDefinitionLabelMarker') + effects.consume(code) + effects.exit('gfmFootnoteDefinitionLabelMarker') + effects.exit('gfmFootnoteDefinitionLabel') + return labelAfter + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_5__.markdownLineEnding)(code)) { + effects.enter('lineEnding') + effects.consume(code) + effects.exit('lineEnding') + size++ + return atBreak + } + + effects.enter('chunkString').contentType = 'string' + return label(code) + } + + /** @type {State} */ + function label(code) { + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof || + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_5__.markdownLineEnding)(code) || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket || + size > micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_4__.constants.linkReferenceSizeMax + ) { + effects.exit('chunkString') + return atBreak(code) + } + + if (!(0,micromark_util_character__WEBPACK_IMPORTED_MODULE_5__.markdownLineEndingOrSpace)(code)) { + data = true + } + + size++ + effects.consume(code) + return code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.backslash ? labelEscape : label + } + + /** @type {State} */ + function labelEscape(code) { + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.backslash || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket + ) { + effects.consume(code) + size++ + return label + } + + return label(code) + } + + /** @type {State} */ + function labelAfter(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.colon) { + effects.enter('definitionMarker') + effects.consume(code) + effects.exit('definitionMarker') + // Any whitespace after the marker is eaten, forming indented code + // is not possible. + // No space is also fine, just like a block quote marker. + return (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_6__.factorySpace)(effects, done, 'gfmFootnoteDefinitionWhitespace') + } + + return nok(code) + } + + /** @type {State} */ + function done(code) { + if (!defined.includes(identifier)) { + defined.push(identifier) + } + + return ok(code) + } +} + +/** @type {Tokenizer} */ +function tokenizeDefinitionContinuation(effects, ok, nok) { + // Either a blank line, which is okay, or an indented thing. + return effects.check(micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_7__.blankLine, ok, effects.attempt(indent, ok, nok)) +} + +/** @type {Exiter} */ +function gfmFootnoteDefinitionEnd(effects) { + effects.exit('gfmFootnoteDefinition') +} + +/** @type {Tokenizer} */ +function tokenizeIndent(effects, ok, nok) { + const self = this + + return (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_6__.factorySpace)( + effects, + afterPrefix, + 'gfmFootnoteDefinitionIndent', + micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_4__.constants.tabSize + 1 + ) + + /** @type {State} */ + function afterPrefix(code) { + const tail = self.events[self.events.length - 1] + return tail && + tail[1].type === 'gfmFootnoteDefinitionIndent' && + tail[2].sliceSerialize(tail[1], true).length === micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_4__.constants.tabSize + ? ok(code) + : nok(code) + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-extension-gfm-strikethrough/dev/lib/html.js": +/*!****************************************************************************!*\ + !*** ./node_modules/micromark-extension-gfm-strikethrough/dev/lib/html.js ***! + \****************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "gfmStrikethroughHtml": () => (/* binding */ gfmStrikethroughHtml) +/* harmony export */ }); +/** + * @typedef {import('micromark-util-types').HtmlExtension} HtmlExtension + */ + +/** @type {HtmlExtension} */ +const gfmStrikethroughHtml = { + enter: { + strikethrough() { + this.tag('') + } + }, + exit: { + strikethrough() { + this.tag('') + } + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-extension-gfm-strikethrough/dev/lib/syntax.js": +/*!******************************************************************************!*\ + !*** ./node_modules/micromark-extension-gfm-strikethrough/dev/lib/syntax.js ***! + \******************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "gfmStrikethrough": () => (/* binding */ gfmStrikethrough) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var micromark_util_chunked__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-chunked */ "./node_modules/micromark-util-chunked/dev/index.js"); +/* harmony import */ var micromark_util_classify_character__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! micromark-util-classify-character */ "./node_modules/micromark-util-classify-character/dev/index.js"); +/* harmony import */ var micromark_util_resolve_all__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-resolve-all */ "./node_modules/micromark-util-resolve-all/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').Extension} Extension + * @typedef {import('micromark-util-types').Resolver} Resolver + * @typedef {import('micromark-util-types').Tokenizer} Tokenizer + * @typedef {import('micromark-util-types').State} State + * @typedef {import('micromark-util-types').Token} Token + * @typedef {import('micromark-util-types').Event} Event + */ + +/** + * @typedef Options + * Configuration (optional). + * @property {boolean} [singleTilde=true] + * Whether to support strikethrough with a single tilde (`boolean`, default: + * `true`). + * Single tildes work on github.com, but are technically prohibited by the + * GFM spec. + */ + + + + + + + + + +/** + * @param {Options} [options] + * @returns {Extension} + */ +function gfmStrikethrough(options = {}) { + let single = options.singleTilde + const tokenizer = { + tokenize: tokenizeStrikethrough, + resolveAll: resolveAllStrikethrough + } + + if (single === null || single === undefined) { + single = true + } + + return { + text: {[micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.tilde]: tokenizer}, + insideSpan: {null: [tokenizer]}, + attentionMarkers: {null: [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.tilde]} + } + + /** + * Take events and resolve strikethrough. + * + * @type {Resolver} + */ + function resolveAllStrikethrough(events, context) { + let index = -1 + + // Walk through all events. + while (++index < events.length) { + // Find a token that can close. + if ( + events[index][0] === 'enter' && + events[index][1].type === 'strikethroughSequenceTemporary' && + events[index][1]._close + ) { + let open = index + + // Now walk back to find an opener. + while (open--) { + // Find a token that can open the closer. + if ( + events[open][0] === 'exit' && + events[open][1].type === 'strikethroughSequenceTemporary' && + events[open][1]._open && + // If the sizes are the same: + events[index][1].end.offset - events[index][1].start.offset === + events[open][1].end.offset - events[open][1].start.offset + ) { + events[index][1].type = 'strikethroughSequence' + events[open][1].type = 'strikethroughSequence' + + const strikethrough = { + type: 'strikethrough', + start: Object.assign({}, events[open][1].start), + end: Object.assign({}, events[index][1].end) + } + + const text = { + type: 'strikethroughText', + start: Object.assign({}, events[open][1].end), + end: Object.assign({}, events[index][1].start) + } + + // Opening. + const nextEvents = [ + ['enter', strikethrough, context], + ['enter', events[open][1], context], + ['exit', events[open][1], context], + ['enter', text, context] + ] + + // Between. + ;(0,micromark_util_chunked__WEBPACK_IMPORTED_MODULE_2__.splice)( + nextEvents, + nextEvents.length, + 0, + (0,micromark_util_resolve_all__WEBPACK_IMPORTED_MODULE_3__.resolveAll)( + context.parser.constructs.insideSpan.null, + events.slice(open + 1, index), + context + ) + ) + + // Closing. + ;(0,micromark_util_chunked__WEBPACK_IMPORTED_MODULE_2__.splice)(nextEvents, nextEvents.length, 0, [ + ['exit', text, context], + ['enter', events[index][1], context], + ['exit', events[index][1], context], + ['exit', strikethrough, context] + ]) + + ;(0,micromark_util_chunked__WEBPACK_IMPORTED_MODULE_2__.splice)(events, open - 1, index - open + 3, nextEvents) + + index = open + nextEvents.length - 2 + break + } + } + } + } + + index = -1 + + while (++index < events.length) { + if (events[index][1].type === 'strikethroughSequenceTemporary') { + events[index][1].type = micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.data + } + } + + return events + } + + /** @type {Tokenizer} */ + function tokenizeStrikethrough(effects, ok, nok) { + const previous = this.previous + const events = this.events + let size = 0 + + return start + + /** @type {State} */ + function start(code) { + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.tilde, 'expected `~`') + + if ( + previous === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.tilde && + events[events.length - 1][1].type !== micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.characterEscape + ) { + return nok(code) + } + + effects.enter('strikethroughSequenceTemporary') + return more(code) + } + + /** @type {State} */ + function more(code) { + const before = (0,micromark_util_classify_character__WEBPACK_IMPORTED_MODULE_5__.classifyCharacter)(previous) + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.tilde) { + // If this is the third marker, exit. + if (size > 1) return nok(code) + effects.consume(code) + size++ + return more + } + + if (size < 2 && !single) return nok(code) + const token = effects.exit('strikethroughSequenceTemporary') + const after = (0,micromark_util_classify_character__WEBPACK_IMPORTED_MODULE_5__.classifyCharacter)(code) + token._open = + !after || (after === micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_6__.constants.attentionSideAfter && Boolean(before)) + token._close = + !before || (before === micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_6__.constants.attentionSideAfter && Boolean(after)) + return ok(code) + } + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-extension-gfm-table/dev/lib/html.js": +/*!********************************************************************!*\ + !*** ./node_modules/micromark-extension-gfm-table/dev/lib/html.js ***! + \********************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "gfmTableHtml": () => (/* binding */ gfmTableHtml) +/* harmony export */ }); +/** + * @typedef {import('micromark-util-types').HtmlExtension} HtmlExtension + * @typedef {import('./syntax.js').Align} Align + */ + +const alignment = { + none: '', + left: ' align="left"', + right: ' align="right"', + center: ' align="center"' +} + +/** @type {HtmlExtension} */ +const gfmTableHtml = { + enter: { + table(token) { + /** @type {Array} */ + // @ts-expect-error Custom. + const tableAlign = token._align + this.lineEndingIfNeeded() + this.tag('
') + this.setData('tableAlign', tableAlign) + }, + tableBody() { + // Clear slurping line ending from the delimiter row. + this.setData('slurpOneLineEnding') + this.tag('') + }, + tableData() { + const tableAlign = /** @type {Array} */ ( + this.getData('tableAlign') + ) + const tableColumn = /** @type {number} */ (this.getData('tableColumn')) + const align = alignment[tableAlign[tableColumn]] + + if (align === undefined) { + // Capture results to ignore them. + this.buffer() + } else { + this.lineEndingIfNeeded() + this.tag('') + } + }, + tableHead() { + this.lineEndingIfNeeded() + this.tag('') + }, + tableHeader() { + const tableAlign = /** @type {Array} */ ( + this.getData('tableAlign') + ) + const tableColumn = /** @type {number} */ (this.getData('tableColumn')) + const align = alignment[tableAlign[tableColumn]] + + this.lineEndingIfNeeded() + this.tag('') + }, + tableRow() { + this.setData('tableColumn', 0) + this.lineEndingIfNeeded() + this.tag('') + } + }, + exit: { + // Overwrite the default code text data handler to unescape escaped pipes when + // they are in tables. + codeTextData(token) { + let value = this.sliceSerialize(token) + + if (this.getData('tableAlign')) { + value = value.replace(/\\([\\|])/g, replace) + } + + this.raw(this.encode(value)) + }, + table() { + this.setData('tableAlign') + // If there was no table body, make sure the slurping from the delimiter row + // is cleared. + this.setData('slurpAllLineEndings') + this.lineEndingIfNeeded() + this.tag('
') + }, + tableBody() { + this.lineEndingIfNeeded() + this.tag('') + }, + tableData() { + const tableAlign = /** @type {Array} */ ( + this.getData('tableAlign') + ) + const tableColumn = /** @type {number} */ (this.getData('tableColumn')) + + if (tableColumn in tableAlign) { + this.tag('') + this.setData('tableColumn', tableColumn + 1) + } else { + // Stop capturing. + this.resume() + } + }, + tableHead() { + this.lineEndingIfNeeded() + this.tag('') + this.setData('slurpOneLineEnding', true) + // Slurp the line ending from the delimiter row. + }, + tableHeader() { + const tableColumn = /** @type {number} */ (this.getData('tableColumn')) + this.tag('') + this.setData('tableColumn', tableColumn + 1) + }, + tableRow() { + const tableAlign = /** @type {Array} */ ( + this.getData('tableAlign') + ) + let tableColumn = /** @type {number} */ (this.getData('tableColumn')) + + while (tableColumn < tableAlign.length) { + this.lineEndingIfNeeded() + this.tag('') + tableColumn++ + } + + this.setData('tableColumn', tableColumn) + this.lineEndingIfNeeded() + this.tag('') + } + } +} + +/** + * @param {string} $0 + * @param {string} $1 + * @returns {string} + */ +function replace($0, $1) { + // Pipes work, backslashes don’t (but can’t escape pipes). + return $1 === '|' ? $1 : $0 +} + + +/***/ }), + +/***/ "./node_modules/micromark-extension-gfm-table/dev/lib/syntax.js": +/*!**********************************************************************!*\ + !*** ./node_modules/micromark-extension-gfm-table/dev/lib/syntax.js ***! + \**********************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "gfmTable": () => (/* binding */ gfmTable) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var micromark_factory_space__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! micromark-factory-space */ "./node_modules/micromark-factory-space/dev/index.js"); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').Extension} Extension + * @typedef {import('micromark-util-types').Resolver} Resolver + * @typedef {import('micromark-util-types').Tokenizer} Tokenizer + * @typedef {import('micromark-util-types').State} State + * @typedef {import('micromark-util-types').Token} Token + */ + +/** + * @typedef {'left'|'center'|'right'|'none'} Align + */ + + + + + + + + +/** @type {Extension} */ +const gfmTable = { + flow: {null: {tokenize: tokenizeTable, resolve: resolveTable}} +} + +const nextPrefixedOrBlank = { + tokenize: tokenizeNextPrefixedOrBlank, + partial: true +} + +/** @type {Resolver} */ +function resolveTable(events, context) { + let index = -1 + /** @type {boolean|undefined} */ + let inHead + /** @type {boolean|undefined} */ + let inDelimiterRow + /** @type {boolean|undefined} */ + let inRow + /** @type {number|undefined} */ + let contentStart + /** @type {number|undefined} */ + let contentEnd + /** @type {number|undefined} */ + let cellStart + /** @type {boolean|undefined} */ + let seenCellInRow + + while (++index < events.length) { + const token = events[index][1] + + if (inRow) { + if (token.type === 'temporaryTableCellContent') { + contentStart = contentStart || index + contentEnd = index + } + + if ( + // Combine separate content parts into one. + (token.type === 'tableCellDivider' || token.type === 'tableRow') && + contentEnd + ) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + contentStart, + 'expected `contentStart` to be defined if `contentEnd` is' + ) + const content = { + type: 'tableContent', + start: events[contentStart][1].start, + end: events[contentEnd][1].end + } + /** @type {Token} */ + const text = { + type: micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.chunkText, + start: content.start, + end: content.end, + // @ts-expect-error It’s fine. + contentType: micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.contentTypeText + } + + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + contentStart, + 'expected `contentStart` to be defined if `contentEnd` is' + ) + + events.splice( + contentStart, + contentEnd - contentStart + 1, + ['enter', content, context], + ['enter', text, context], + ['exit', text, context], + ['exit', content, context] + ) + + index -= contentEnd - contentStart - 3 + contentStart = undefined + contentEnd = undefined + } + } + + if ( + events[index][0] === 'exit' && + cellStart !== undefined && + cellStart + (seenCellInRow ? 0 : 1) < index && + (token.type === 'tableCellDivider' || + (token.type === 'tableRow' && + (cellStart + 3 < index || + events[cellStart][1].type !== micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.whitespace))) + ) { + const cell = { + type: inDelimiterRow + ? 'tableDelimiter' + : inHead + ? 'tableHeader' + : 'tableData', + start: events[cellStart][1].start, + end: events[index][1].end + } + events.splice(index + (token.type === 'tableCellDivider' ? 1 : 0), 0, [ + 'exit', + cell, + context + ]) + events.splice(cellStart, 0, ['enter', cell, context]) + index += 2 + cellStart = index + 1 + seenCellInRow = true + } + + if (token.type === 'tableRow') { + inRow = events[index][0] === 'enter' + + if (inRow) { + cellStart = index + 1 + seenCellInRow = false + } + } + + if (token.type === 'tableDelimiterRow') { + inDelimiterRow = events[index][0] === 'enter' + + if (inDelimiterRow) { + cellStart = index + 1 + seenCellInRow = false + } + } + + if (token.type === 'tableHead') { + inHead = events[index][0] === 'enter' + } + } + + return events +} + +/** @type {Tokenizer} */ +function tokenizeTable(effects, ok, nok) { + const self = this + /** @type {Array} */ + const align = [] + let tableHeaderCount = 0 + /** @type {boolean|undefined} */ + let seenDelimiter + /** @type {boolean|undefined} */ + let hasDash + + return start + + /** @type {State} */ + function start(code) { + // @ts-expect-error Custom. + effects.enter('table')._align = align + effects.enter('tableHead') + effects.enter('tableRow') + + // If we start with a pipe, we open a cell marker. + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar) { + return cellDividerHead(code) + } + + tableHeaderCount++ + effects.enter('temporaryTableCellContent') + // Can’t be space or eols at the start of a construct, so we’re in a cell. + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(!(0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEndingOrSpace)(code), 'expected non-space') + return inCellContentHead(code) + } + + /** @type {State} */ + function cellDividerHead(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar, 'expected `|`') + effects.enter('tableCellDivider') + effects.consume(code) + effects.exit('tableCellDivider') + seenDelimiter = true + return cellBreakHead + } + + /** @type {State} */ + function cellBreakHead(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof || (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEnding)(code)) { + return atRowEndHead(code) + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownSpace)(code)) { + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.whitespace) + effects.consume(code) + return inWhitespaceHead + } + + if (seenDelimiter) { + seenDelimiter = undefined + tableHeaderCount++ + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar) { + return cellDividerHead(code) + } + + // Anything else is cell content. + effects.enter('temporaryTableCellContent') + return inCellContentHead(code) + } + + /** @type {State} */ + function inWhitespaceHead(code) { + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownSpace)(code)) { + effects.consume(code) + return inWhitespaceHead + } + + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.whitespace) + return cellBreakHead(code) + } + + /** @type {State} */ + function inCellContentHead(code) { + // EOF, whitespace, pipe + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar || + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEndingOrSpace)(code) + ) { + effects.exit('temporaryTableCellContent') + return cellBreakHead(code) + } + + effects.consume(code) + return code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.backslash + ? inCellContentEscapeHead + : inCellContentHead + } + + /** @type {State} */ + function inCellContentEscapeHead(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.backslash || code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar) { + effects.consume(code) + return inCellContentHead + } + + // Anything else. + return inCellContentHead(code) + } + + /** @type {State} */ + function atRowEndHead(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof) { + return nok(code) + } + + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEnding)(code), 'expected eol') + effects.exit('tableRow') + effects.exit('tableHead') + const originalInterrupt = self.interrupt + self.interrupt = true + return effects.attempt( + {tokenize: tokenizeRowEnd, partial: true}, + function (code) { + self.interrupt = originalInterrupt + effects.enter('tableDelimiterRow') + return atDelimiterRowBreak(code) + }, + function (code) { + self.interrupt = originalInterrupt + return nok(code) + } + )(code) + } + + /** @type {State} */ + function atDelimiterRowBreak(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof || (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEnding)(code)) { + return rowEndDelimiter(code) + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownSpace)(code)) { + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.whitespace) + effects.consume(code) + return inWhitespaceDelimiter + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.dash) { + effects.enter('tableDelimiterFiller') + effects.consume(code) + hasDash = true + align.push('none') + return inFillerDelimiter + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.colon) { + effects.enter('tableDelimiterAlignment') + effects.consume(code) + effects.exit('tableDelimiterAlignment') + align.push('left') + return afterLeftAlignment + } + + // If we start with a pipe, we open a cell marker. + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar) { + effects.enter('tableCellDivider') + effects.consume(code) + effects.exit('tableCellDivider') + return atDelimiterRowBreak + } + + return nok(code) + } + + /** @type {State} */ + function inWhitespaceDelimiter(code) { + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownSpace)(code)) { + effects.consume(code) + return inWhitespaceDelimiter + } + + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.whitespace) + return atDelimiterRowBreak(code) + } + + /** @type {State} */ + function inFillerDelimiter(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.dash) { + effects.consume(code) + return inFillerDelimiter + } + + effects.exit('tableDelimiterFiller') + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.colon) { + effects.enter('tableDelimiterAlignment') + effects.consume(code) + effects.exit('tableDelimiterAlignment') + + align[align.length - 1] = + align[align.length - 1] === 'left' ? 'center' : 'right' + + return afterRightAlignment + } + + return atDelimiterRowBreak(code) + } + + /** @type {State} */ + function afterLeftAlignment(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.dash) { + effects.enter('tableDelimiterFiller') + effects.consume(code) + hasDash = true + return inFillerDelimiter + } + + // Anything else is not ok. + return nok(code) + } + + /** @type {State} */ + function afterRightAlignment(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof || (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEnding)(code)) { + return rowEndDelimiter(code) + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownSpace)(code)) { + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.whitespace) + effects.consume(code) + return inWhitespaceDelimiter + } + + // `|` + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar) { + effects.enter('tableCellDivider') + effects.consume(code) + effects.exit('tableCellDivider') + return atDelimiterRowBreak + } + + return nok(code) + } + + /** @type {State} */ + function rowEndDelimiter(code) { + effects.exit('tableDelimiterRow') + + // Exit if there was no dash at all, or if the header cell count is not the + // delimiter cell count. + if (!hasDash || tableHeaderCount !== align.length) { + return nok(code) + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof) { + return tableClose(code) + } + + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEnding)(code), 'expected eol') + return effects.check( + nextPrefixedOrBlank, + tableClose, + effects.attempt( + {tokenize: tokenizeRowEnd, partial: true}, + (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_5__.factorySpace)(effects, bodyStart, micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.linePrefix, micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.tabSize), + tableClose + ) + )(code) + } + + /** @type {State} */ + function tableClose(code) { + effects.exit('table') + return ok(code) + } + + /** @type {State} */ + function bodyStart(code) { + effects.enter('tableBody') + return rowStartBody(code) + } + + /** @type {State} */ + function rowStartBody(code) { + effects.enter('tableRow') + + // If we start with a pipe, we open a cell marker. + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar) { + return cellDividerBody(code) + } + + effects.enter('temporaryTableCellContent') + // Can’t be space or eols at the start of a construct, so we’re in a cell. + return inCellContentBody(code) + } + + /** @type {State} */ + function cellDividerBody(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar, 'expected `|`') + effects.enter('tableCellDivider') + effects.consume(code) + effects.exit('tableCellDivider') + return cellBreakBody + } + + /** @type {State} */ + function cellBreakBody(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof || (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEnding)(code)) { + return atRowEndBody(code) + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownSpace)(code)) { + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.whitespace) + effects.consume(code) + return inWhitespaceBody + } + + // `|` + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar) { + return cellDividerBody(code) + } + + // Anything else is cell content. + effects.enter('temporaryTableCellContent') + return inCellContentBody(code) + } + + /** @type {State} */ + function inWhitespaceBody(code) { + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownSpace)(code)) { + effects.consume(code) + return inWhitespaceBody + } + + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.whitespace) + return cellBreakBody(code) + } + + /** @type {State} */ + function inCellContentBody(code) { + // EOF, whitespace, pipe + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar || + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEndingOrSpace)(code) + ) { + effects.exit('temporaryTableCellContent') + return cellBreakBody(code) + } + + effects.consume(code) + return code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.backslash + ? inCellContentEscapeBody + : inCellContentBody + } + + /** @type {State} */ + function inCellContentEscapeBody(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.backslash || code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.verticalBar) { + effects.consume(code) + return inCellContentBody + } + + // Anything else. + return inCellContentBody(code) + } + + /** @type {State} */ + function atRowEndBody(code) { + effects.exit('tableRow') + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof) { + return tableBodyClose(code) + } + + return effects.check( + nextPrefixedOrBlank, + tableBodyClose, + effects.attempt( + {tokenize: tokenizeRowEnd, partial: true}, + (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_5__.factorySpace)( + effects, + rowStartBody, + micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.linePrefix, + micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.tabSize + ), + tableBodyClose + ) + )(code) + } + + /** @type {State} */ + function tableBodyClose(code) { + effects.exit('tableBody') + return tableClose(code) + } + + /** @type {Tokenizer} */ + function tokenizeRowEnd(effects, ok, nok) { + return start + + /** @type {State} */ + function start(code) { + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEnding)(code), 'expected eol') + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineEnding) + effects.consume(code) + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineEnding) + return (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_5__.factorySpace)(effects, prefixed, micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.linePrefix) + } + + /** @type {State} */ + function prefixed(code) { + // Blank or interrupting line. + if ( + self.parser.lazy[self.now().line] || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof || + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEnding)(code) + ) { + return nok(code) + } + + const tail = self.events[self.events.length - 1] + + // Indented code can interrupt delimiter and body rows. + if ( + !self.parser.constructs.disable.null.includes('codeIndented') && + tail && + tail[1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.linePrefix && + tail[2].sliceSerialize(tail[1], true).length >= micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.tabSize + ) { + return nok(code) + } + + self._gfmTableDynamicInterruptHack = true + + return effects.check( + self.parser.constructs.flow, + function (code) { + self._gfmTableDynamicInterruptHack = false + return nok(code) + }, + function (code) { + self._gfmTableDynamicInterruptHack = false + return ok(code) + } + )(code) + } + } +} + +/** @type {Tokenizer} */ +function tokenizeNextPrefixedOrBlank(effects, ok, nok) { + let size = 0 + + return start + + /** @type {State} */ + function start(code) { + // This is a check, so we don’t care about tokens, but we open a bogus one + // so we’re valid. + effects.enter('check') + // EOL. + effects.consume(code) + return whitespace + } + + /** @type {State} */ + function whitespace(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.virtualSpace || code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.space) { + effects.consume(code) + size++ + return size === micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.tabSize ? ok : whitespace + } + + // EOF or whitespace + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof || (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_4__.markdownLineEndingOrSpace)(code)) { + return ok(code) + } + + // Anything else. + return nok(code) + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-extension-gfm-tagfilter/index.js": +/*!*****************************************************************!*\ + !*** ./node_modules/micromark-extension-gfm-tagfilter/index.js ***! + \*****************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "gfmTagfilterHtml": () => (/* binding */ gfmTagfilterHtml) +/* harmony export */ }); +/** + * @typedef {import('micromark-util-types').HtmlExtension} HtmlExtension + * @typedef {import('micromark-util-types').Token} Token + * @typedef {import('micromark-util-types').CompileContext} CompileContext + */ + +/** + * An opening or closing tag, followed by a case-insensitive specific tag name, + * followed by HTML whitespace, a greater than, or a slash. + */ +const reFlow = + /<(\/?)(iframe|noembed|noframes|plaintext|script|style|title|textarea|xmp)(?=[\t\n\f\r />])/gi + +/** + * As HTML (text) parses tags separately (and v. strictly), we don’t need to be + * global. + */ +const reText = new RegExp('^' + reFlow.source, 'i') + +/** @type {HtmlExtension} */ +const gfmTagfilterHtml = { + exit: { + htmlFlowData(token) { + exitHtmlData.call(this, token, reFlow) + }, + htmlTextData(token) { + exitHtmlData.call(this, token, reText) + } + } +} + +/** + * @this {CompileContext} + * @param {Token} token + * @param {RegExp} filter + */ +function exitHtmlData(token, filter) { + let value = this.sliceSerialize(token) + + if (this.options.allowDangerousHtml) { + value = value.replace(filter, '<$1$2') + } + + this.raw(this.encode(value)) +} + + +/***/ }), + +/***/ "./node_modules/micromark-extension-gfm-task-list-item/dev/lib/html.js": +/*!*****************************************************************************!*\ + !*** ./node_modules/micromark-extension-gfm-task-list-item/dev/lib/html.js ***! + \*****************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "gfmTaskListItemHtml": () => (/* binding */ gfmTaskListItemHtml) +/* harmony export */ }); +/** + * @typedef {import('micromark-util-types').HtmlExtension} HtmlExtension + */ + +/** @type {HtmlExtension} */ +const gfmTaskListItemHtml = { + enter: { + taskListCheck() { + this.tag('') + }, + taskListCheckValueChecked() { + this.tag('checked="" ') + } + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-extension-gfm-task-list-item/dev/lib/syntax.js": +/*!*******************************************************************************!*\ + !*** ./node_modules/micromark-extension-gfm-task-list-item/dev/lib/syntax.js ***! + \*******************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "gfmTaskListItem": () => (/* binding */ gfmTaskListItem) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var micromark_factory_space__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-factory-space */ "./node_modules/micromark-factory-space/dev/index.js"); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').Extension} Extension + * @typedef {import('micromark-util-types').ConstructRecord} ConstructRecord + * @typedef {import('micromark-util-types').Tokenizer} Tokenizer + * @typedef {import('micromark-util-types').Previous} Previous + * @typedef {import('micromark-util-types').State} State + * @typedef {import('micromark-util-types').Event} Event + * @typedef {import('micromark-util-types').Code} Code + */ + + + + + + + +const tasklistCheck = {tokenize: tokenizeTasklistCheck} + +const gfmTaskListItem = { + text: {[micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket]: tasklistCheck} +} + +/** @type {Tokenizer} */ +function tokenizeTasklistCheck(effects, ok, nok) { + const self = this + + return open + + /** @type {State} */ + function open(code) { + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket, 'expected `[`') + + if ( + // Exit if there’s stuff before. + self.previous !== micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof || + // Exit if not in the first content that is the first child of a list + // item. + !self._gfmTasklistFirstContentOfListItem + ) { + return nok(code) + } + + effects.enter('taskListCheck') + effects.enter('taskListCheckMarker') + effects.consume(code) + effects.exit('taskListCheckMarker') + return inside + } + + /** @type {State} */ + function inside(code) { + // To match how GH works in comments, use `markdownSpace` (`[ \t]`) instead + // of `markdownLineEndingOrSpace` (`[ \t\r\n]`). + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_2__.markdownLineEndingOrSpace)(code)) { + effects.enter('taskListCheckValueUnchecked') + effects.consume(code) + effects.exit('taskListCheckValueUnchecked') + return close + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.uppercaseX || code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.lowercaseX) { + effects.enter('taskListCheckValueChecked') + effects.consume(code) + effects.exit('taskListCheckValueChecked') + return close + } + + return nok(code) + } + + /** @type {State} */ + function close(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket) { + effects.enter('taskListCheckMarker') + effects.consume(code) + effects.exit('taskListCheckMarker') + effects.exit('taskListCheck') + return effects.check({tokenize: spaceThenNonSpace}, ok, nok) + } + + return nok(code) + } +} + +/** @type {Tokenizer} */ +function spaceThenNonSpace(effects, ok, nok) { + const self = this + + return (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_3__.factorySpace)(effects, after, micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.whitespace) + + /** @type {State} */ + function after(code) { + const tail = self.events[self.events.length - 1] + + return ( + // We either found spaces… + ((tail && tail[1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.whitespace) || + // …or it was followed by a line ending, in which case, there has to be + // non-whitespace after that line ending, because otherwise we’d get an + // EOF as the content is closed with blank lines. + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_2__.markdownLineEnding)(code)) && + code !== micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof + ? ok(code) + : nok(code) + ) + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-extension-gfm/index.js": +/*!*******************************************************!*\ + !*** ./node_modules/micromark-extension-gfm/index.js ***! + \*******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "gfm": () => (/* binding */ gfm), +/* harmony export */ "gfmHtml": () => (/* binding */ gfmHtml) +/* harmony export */ }); +/* harmony import */ var micromark_util_combine_extensions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-combine-extensions */ "./node_modules/micromark-util-combine-extensions/index.js"); +/* harmony import */ var micromark_extension_gfm_autolink_literal__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-extension-gfm-autolink-literal */ "./node_modules/micromark-extension-gfm-autolink-literal/dev/lib/syntax.js"); +/* harmony import */ var micromark_extension_gfm_autolink_literal__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! micromark-extension-gfm-autolink-literal */ "./node_modules/micromark-extension-gfm-autolink-literal/dev/lib/html.js"); +/* harmony import */ var micromark_extension_gfm_footnote__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-extension-gfm-footnote */ "./node_modules/micromark-extension-gfm-footnote/dev/lib/syntax.js"); +/* harmony import */ var micromark_extension_gfm_footnote__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! micromark-extension-gfm-footnote */ "./node_modules/micromark-extension-gfm-footnote/dev/lib/html.js"); +/* harmony import */ var micromark_extension_gfm_strikethrough__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-extension-gfm-strikethrough */ "./node_modules/micromark-extension-gfm-strikethrough/dev/lib/syntax.js"); +/* harmony import */ var micromark_extension_gfm_strikethrough__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! micromark-extension-gfm-strikethrough */ "./node_modules/micromark-extension-gfm-strikethrough/dev/lib/html.js"); +/* harmony import */ var micromark_extension_gfm_table__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-extension-gfm-table */ "./node_modules/micromark-extension-gfm-table/dev/lib/syntax.js"); +/* harmony import */ var micromark_extension_gfm_table__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! micromark-extension-gfm-table */ "./node_modules/micromark-extension-gfm-table/dev/lib/html.js"); +/* harmony import */ var micromark_extension_gfm_tagfilter__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! micromark-extension-gfm-tagfilter */ "./node_modules/micromark-extension-gfm-tagfilter/index.js"); +/* harmony import */ var micromark_extension_gfm_task_list_item__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! micromark-extension-gfm-task-list-item */ "./node_modules/micromark-extension-gfm-task-list-item/dev/lib/syntax.js"); +/* harmony import */ var micromark_extension_gfm_task_list_item__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! micromark-extension-gfm-task-list-item */ "./node_modules/micromark-extension-gfm-task-list-item/dev/lib/html.js"); +/** + * @typedef {import('micromark-util-types').Extension} Extension + * @typedef {import('micromark-util-types').HtmlExtension} HtmlExtension + * @typedef {import('micromark-extension-gfm-strikethrough').Options} Options + * @typedef {import('micromark-extension-gfm-footnote').HtmlOptions} HtmlOptions + */ + + + + + + + + + +/** + * Support GFM or markdown on github.com. + * + * @param {Options} [options] + * @returns {Extension} + */ +function gfm(options) { + return (0,micromark_util_combine_extensions__WEBPACK_IMPORTED_MODULE_0__.combineExtensions)([ + micromark_extension_gfm_autolink_literal__WEBPACK_IMPORTED_MODULE_1__.gfmAutolinkLiteral, + (0,micromark_extension_gfm_footnote__WEBPACK_IMPORTED_MODULE_2__.gfmFootnote)(), + (0,micromark_extension_gfm_strikethrough__WEBPACK_IMPORTED_MODULE_3__.gfmStrikethrough)(options), + micromark_extension_gfm_table__WEBPACK_IMPORTED_MODULE_4__.gfmTable, + micromark_extension_gfm_task_list_item__WEBPACK_IMPORTED_MODULE_5__.gfmTaskListItem + ]) +} + +/** + * Support to compile GFM to HTML. + * + * @param {HtmlOptions} [options] + * @returns {HtmlExtension} + */ +function gfmHtml(options) { + return (0,micromark_util_combine_extensions__WEBPACK_IMPORTED_MODULE_0__.combineHtmlExtensions)([ + micromark_extension_gfm_autolink_literal__WEBPACK_IMPORTED_MODULE_6__.gfmAutolinkLiteralHtml, + (0,micromark_extension_gfm_footnote__WEBPACK_IMPORTED_MODULE_7__.gfmFootnoteHtml)(options), + micromark_extension_gfm_strikethrough__WEBPACK_IMPORTED_MODULE_8__.gfmStrikethroughHtml, + micromark_extension_gfm_table__WEBPACK_IMPORTED_MODULE_9__.gfmTableHtml, + micromark_extension_gfm_tagfilter__WEBPACK_IMPORTED_MODULE_10__.gfmTagfilterHtml, + micromark_extension_gfm_task_list_item__WEBPACK_IMPORTED_MODULE_11__.gfmTaskListItemHtml + ]) +} + + +/***/ }), + +/***/ "./node_modules/micromark-factory-destination/dev/index.js": +/*!*****************************************************************!*\ + !*** ./node_modules/micromark-factory-destination/dev/index.js ***! + \*****************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "factoryDestination": () => (/* binding */ factoryDestination) +/* harmony export */ }); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').Effects} Effects + * @typedef {import('micromark-util-types').State} State + */ + + + + + + +/** + * @param {Effects} effects + * @param {State} ok + * @param {State} nok + * @param {string} type + * @param {string} literalType + * @param {string} literalMarkerType + * @param {string} rawType + * @param {string} stringType + * @param {number} [max=Infinity] + * @returns {State} + */ +// eslint-disable-next-line max-params +function factoryDestination( + effects, + ok, + nok, + type, + literalType, + literalMarkerType, + rawType, + stringType, + max +) { + const limit = max || Number.POSITIVE_INFINITY + let balance = 0 + + return start + + /** @type {State} */ + function start(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.lessThan) { + effects.enter(type) + effects.enter(literalType) + effects.enter(literalMarkerType) + effects.consume(code) + effects.exit(literalMarkerType) + return destinationEnclosedBefore + } + + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.eof || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.rightParenthesis || + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_1__.asciiControl)(code) + ) { + return nok(code) + } + + effects.enter(type) + effects.enter(rawType) + effects.enter(stringType) + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.chunkString, {contentType: micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_3__.constants.contentTypeString}) + return destinationRaw(code) + } + + /** @type {State} */ + function destinationEnclosedBefore(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.greaterThan) { + effects.enter(literalMarkerType) + effects.consume(code) + effects.exit(literalMarkerType) + effects.exit(literalType) + effects.exit(type) + return ok + } + + effects.enter(stringType) + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.chunkString, {contentType: micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_3__.constants.contentTypeString}) + return destinationEnclosed(code) + } + + /** @type {State} */ + function destinationEnclosed(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.greaterThan) { + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.chunkString) + effects.exit(stringType) + return destinationEnclosedBefore(code) + } + + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.eof || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.lessThan || + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_1__.markdownLineEnding)(code) + ) { + return nok(code) + } + + effects.consume(code) + return code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.backslash + ? destinationEnclosedEscape + : destinationEnclosed + } + + /** @type {State} */ + function destinationEnclosedEscape(code) { + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.lessThan || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.greaterThan || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.backslash + ) { + effects.consume(code) + return destinationEnclosed + } + + return destinationEnclosed(code) + } + + /** @type {State} */ + function destinationRaw(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.leftParenthesis) { + if (++balance > limit) return nok(code) + effects.consume(code) + return destinationRaw + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.rightParenthesis) { + if (!balance--) { + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.chunkString) + effects.exit(stringType) + effects.exit(rawType) + effects.exit(type) + return ok(code) + } + + effects.consume(code) + return destinationRaw + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.eof || (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_1__.markdownLineEndingOrSpace)(code)) { + if (balance) return nok(code) + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_2__.types.chunkString) + effects.exit(stringType) + effects.exit(rawType) + effects.exit(type) + return ok(code) + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_1__.asciiControl)(code)) return nok(code) + effects.consume(code) + return code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.backslash ? destinationRawEscape : destinationRaw + } + + /** @type {State} */ + function destinationRawEscape(code) { + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.leftParenthesis || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.rightParenthesis || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.backslash + ) { + effects.consume(code) + return destinationRaw + } + + return destinationRaw(code) + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-factory-label/dev/index.js": +/*!***********************************************************!*\ + !*** ./node_modules/micromark-factory-label/dev/index.js ***! + \***********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "factoryLabel": () => (/* binding */ factoryLabel) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').Effects} Effects + * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext + * @typedef {import('micromark-util-types').State} State + */ + + + + + + + +/** + * @this {TokenizeContext} + * @param {Effects} effects + * @param {State} ok + * @param {State} nok + * @param {string} type + * @param {string} markerType + * @param {string} stringType + * @returns {State} + */ +// eslint-disable-next-line max-params +function factoryLabel(effects, ok, nok, type, markerType, stringType) { + const self = this + let size = 0 + /** @type {boolean} */ + let data + + return start + + /** @type {State} */ + function start(code) { + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket, 'expected `[`') + effects.enter(type) + effects.enter(markerType) + effects.consume(code) + effects.exit(markerType) + effects.enter(stringType) + return atBreak + } + + /** @type {State} */ + function atBreak(code) { + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket || + (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket && !data) || + /* To do: remove in the future once we’ve switched from + * `micromark-extension-footnote` to `micromark-extension-gfm-footnote`, + * which doesn’t need this */ + /* Hidden footnotes hook */ + /* c8 ignore next 3 */ + (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.caret && + !size && + '_hiddenFootnoteSupport' in self.parser.constructs) || + size > micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.linkReferenceSizeMax + ) { + return nok(code) + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket) { + effects.exit(stringType) + effects.enter(markerType) + effects.consume(code) + effects.exit(markerType) + effects.exit(type) + return ok + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_3__.markdownLineEnding)(code)) { + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.lineEnding) + effects.consume(code) + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.lineEnding) + return atBreak + } + + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.chunkString, {contentType: micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.contentTypeString}) + return label(code) + } + + /** @type {State} */ + function label(code) { + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket || + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_3__.markdownLineEnding)(code) || + size++ > micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.linkReferenceSizeMax + ) { + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.chunkString) + return atBreak(code) + } + + effects.consume(code) + data = data || !(0,micromark_util_character__WEBPACK_IMPORTED_MODULE_3__.markdownSpace)(code) + return code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.backslash ? labelEscape : label + } + + /** @type {State} */ + function labelEscape(code) { + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftSquareBracket || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.backslash || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightSquareBracket + ) { + effects.consume(code) + size++ + return label + } + + return label(code) + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-factory-space/dev/index.js": +/*!***********************************************************!*\ + !*** ./node_modules/micromark-factory-space/dev/index.js ***! + \***********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "factorySpace": () => (/* binding */ factorySpace) +/* harmony export */ }); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/** + * @typedef {import('micromark-util-types').Effects} Effects + * @typedef {import('micromark-util-types').State} State + */ + + + +/** + * @param {Effects} effects + * @param {State} ok + * @param {string} type + * @param {number} [max=Infinity] + * @returns {State} + */ +function factorySpace(effects, ok, type, max) { + const limit = max ? max - 1 : Number.POSITIVE_INFINITY + let size = 0 + + return start + + /** @type {State} */ + function start(code) { + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_0__.markdownSpace)(code)) { + effects.enter(type) + return prefix(code) + } + + return ok(code) + } + + /** @type {State} */ + function prefix(code) { + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_0__.markdownSpace)(code) && size++ < limit) { + effects.consume(code) + return prefix + } + + effects.exit(type) + return ok(code) + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-factory-title/dev/index.js": +/*!***********************************************************!*\ + !*** ./node_modules/micromark-factory-title/dev/index.js ***! + \***********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "factoryTitle": () => (/* binding */ factoryTitle) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var micromark_factory_space__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-factory-space */ "./node_modules/micromark-factory-space/dev/index.js"); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').Effects} Effects + * @typedef {import('micromark-util-types').State} State + * @typedef {import('micromark-util-types').Code} Code + */ + + + + + + + + +/** + * @param {Effects} effects + * @param {State} ok + * @param {State} nok + * @param {string} type + * @param {string} markerType + * @param {string} stringType + * @returns {State} + */ +// eslint-disable-next-line max-params +function factoryTitle(effects, ok, nok, type, markerType, stringType) { + /** @type {NonNullable} */ + let marker + + return start + + /** @type {State} */ + function start(code) { + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.quotationMark || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.apostrophe || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftParenthesis, + 'expected `"`, `\'`, or `(`' + ) + effects.enter(type) + effects.enter(markerType) + effects.consume(code) + effects.exit(markerType) + marker = code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.leftParenthesis ? micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.rightParenthesis : code + return atFirstTitleBreak + } + + /** @type {State} */ + function atFirstTitleBreak(code) { + if (code === marker) { + effects.enter(markerType) + effects.consume(code) + effects.exit(markerType) + effects.exit(type) + return ok + } + + effects.enter(stringType) + return atTitleBreak(code) + } + + /** @type {State} */ + function atTitleBreak(code) { + if (code === marker) { + effects.exit(stringType) + return atFirstTitleBreak(marker) + } + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof) { + return nok(code) + } + + // Note: blank lines can’t exist in content. + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_2__.markdownLineEnding)(code)) { + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.lineEnding) + effects.consume(code) + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.lineEnding) + return (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_4__.factorySpace)(effects, atTitleBreak, micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.linePrefix) + } + + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.chunkString, {contentType: micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_5__.constants.contentTypeString}) + return title(code) + } + + /** @type {State} */ + function title(code) { + if (code === marker || code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof || (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_2__.markdownLineEnding)(code)) { + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.chunkString) + return atTitleBreak(code) + } + + effects.consume(code) + return code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.backslash ? titleEscape : title + } + + /** @type {State} */ + function titleEscape(code) { + if (code === marker || code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.backslash) { + effects.consume(code) + return title + } + + return title(code) + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-factory-whitespace/dev/index.js": +/*!****************************************************************!*\ + !*** ./node_modules/micromark-factory-whitespace/dev/index.js ***! + \****************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "factoryWhitespace": () => (/* binding */ factoryWhitespace) +/* harmony export */ }); +/* harmony import */ var micromark_factory_space__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-factory-space */ "./node_modules/micromark-factory-space/dev/index.js"); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').Effects} Effects + * @typedef {import('micromark-util-types').State} State + */ + + + + + +/** + * @param {Effects} effects + * @param {State} ok + */ +function factoryWhitespace(effects, ok) { + /** @type {boolean} */ + let seen + + return start + + /** @type {State} */ + function start(code) { + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_0__.markdownLineEnding)(code)) { + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineEnding) + effects.consume(code) + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineEnding) + seen = true + return start + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_0__.markdownSpace)(code)) { + return (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_2__.factorySpace)( + effects, + start, + seen ? micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.linePrefix : micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineSuffix + )(code) + } + + return ok(code) + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-character/dev/index.js": +/*!************************************************************!*\ + !*** ./node_modules/micromark-util-character/dev/index.js ***! + \************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "asciiAlpha": () => (/* binding */ asciiAlpha), +/* harmony export */ "asciiDigit": () => (/* binding */ asciiDigit), +/* harmony export */ "asciiHexDigit": () => (/* binding */ asciiHexDigit), +/* harmony export */ "asciiAlphanumeric": () => (/* binding */ asciiAlphanumeric), +/* harmony export */ "asciiPunctuation": () => (/* binding */ asciiPunctuation), +/* harmony export */ "asciiAtext": () => (/* binding */ asciiAtext), +/* harmony export */ "asciiControl": () => (/* binding */ asciiControl), +/* harmony export */ "markdownLineEndingOrSpace": () => (/* binding */ markdownLineEndingOrSpace), +/* harmony export */ "markdownLineEnding": () => (/* binding */ markdownLineEnding), +/* harmony export */ "markdownSpace": () => (/* binding */ markdownSpace), +/* harmony export */ "unicodeWhitespace": () => (/* binding */ unicodeWhitespace), +/* harmony export */ "unicodePunctuation": () => (/* binding */ unicodePunctuation) +/* harmony export */ }); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var _lib_unicode_punctuation_regex_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/unicode-punctuation-regex.js */ "./node_modules/micromark-util-character/dev/lib/unicode-punctuation-regex.js"); +/** + * @typedef {import('micromark-util-types').Code} Code + */ + + + + +/** + * Check whether the character code represents an ASCII alpha (`a` through `z`, + * case insensitive). + * + * An **ASCII alpha** is an ASCII upper alpha or ASCII lower alpha. + * + * An **ASCII upper alpha** is a character in the inclusive range U+0041 (`A`) + * to U+005A (`Z`). + * + * An **ASCII lower alpha** is a character in the inclusive range U+0061 (`a`) + * to U+007A (`z`). + */ +const asciiAlpha = regexCheck(/[A-Za-z]/) + +/** + * Check whether the character code represents an ASCII digit (`0` through `9`). + * + * An **ASCII digit** is a character in the inclusive range U+0030 (`0`) to + * U+0039 (`9`). + */ +const asciiDigit = regexCheck(/\d/) + +/** + * Check whether the character code represents an ASCII hex digit (`a` through + * `f`, case insensitive, or `0` through `9`). + * + * An **ASCII hex digit** is an ASCII digit (see `asciiDigit`), ASCII upper hex + * digit, or an ASCII lower hex digit. + * + * An **ASCII upper hex digit** is a character in the inclusive range U+0041 + * (`A`) to U+0046 (`F`). + * + * An **ASCII lower hex digit** is a character in the inclusive range U+0061 + * (`a`) to U+0066 (`f`). + */ +const asciiHexDigit = regexCheck(/[\dA-Fa-f]/) + +/** + * Check whether the character code represents an ASCII alphanumeric (`a` + * through `z`, case insensitive, or `0` through `9`). + * + * An **ASCII alphanumeric** is an ASCII digit (see `asciiDigit`) or ASCII alpha + * (see `asciiAlpha`). + */ +const asciiAlphanumeric = regexCheck(/[\dA-Za-z]/) + +/** + * Check whether the character code represents ASCII punctuation. + * + * An **ASCII punctuation** is a character in the inclusive ranges U+0021 + * EXCLAMATION MARK (`!`) to U+002F SLASH (`/`), U+003A COLON (`:`) to U+0040 AT + * SIGN (`@`), U+005B LEFT SQUARE BRACKET (`[`) to U+0060 GRAVE ACCENT + * (`` ` ``), or U+007B LEFT CURLY BRACE (`{`) to U+007E TILDE (`~`). + */ +const asciiPunctuation = regexCheck(/[!-/:-@[-`{-~]/) + +/** + * Check whether the character code represents an ASCII atext. + * + * atext is an ASCII alphanumeric (see `asciiAlphanumeric`), or a character in + * the inclusive ranges U+0023 NUMBER SIGN (`#`) to U+0027 APOSTROPHE (`'`), + * U+002A ASTERISK (`*`), U+002B PLUS SIGN (`+`), U+002D DASH (`-`), U+002F + * SLASH (`/`), U+003D EQUALS TO (`=`), U+003F QUESTION MARK (`?`), U+005E + * CARET (`^`) to U+0060 GRAVE ACCENT (`` ` ``), or U+007B LEFT CURLY BRACE + * (`{`) to U+007E TILDE (`~`). + * + * See: + * **\[RFC5322]**: + * [Internet Message Format](https://tools.ietf.org/html/rfc5322). + * P. Resnick. + * IETF. + */ +const asciiAtext = regexCheck(/[#-'*+\--9=?A-Z^-~]/) + +/** + * Check whether a character code is an ASCII control character. + * + * An **ASCII control** is a character in the inclusive range U+0000 NULL (NUL) + * to U+001F (US), or U+007F (DEL). + * + * @param {Code} code + * @returns {code is number} + */ +function asciiControl(code) { + return ( + // Special whitespace codes (which have negative values), C0 and Control + // character DEL + code !== null && (code < micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.space || code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.del) + ) +} + +/** + * Check whether a character code is a markdown line ending (see + * `markdownLineEnding`) or markdown space (see `markdownSpace`). + * + * @param {Code} code + * @returns {code is number} + */ +function markdownLineEndingOrSpace(code) { + return code !== null && (code < micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.nul || code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.space) +} + +/** + * Check whether a character code is a markdown line ending. + * + * A **markdown line ending** is the virtual characters M-0003 CARRIAGE RETURN + * LINE FEED (CRLF), M-0004 LINE FEED (LF) and M-0005 CARRIAGE RETURN (CR). + * + * In micromark, the actual character U+000A LINE FEED (LF) and U+000D CARRIAGE + * RETURN (CR) are replaced by these virtual characters depending on whether + * they occurred together. + * + * @param {Code} code + * @returns {code is number} + */ +function markdownLineEnding(code) { + return code !== null && code < micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.horizontalTab +} + +/** + * Check whether a character code is a markdown space. + * + * A **markdown space** is the concrete character U+0020 SPACE (SP) and the + * virtual characters M-0001 VIRTUAL SPACE (VS) and M-0002 HORIZONTAL TAB (HT). + * + * In micromark, the actual character U+0009 CHARACTER TABULATION (HT) is + * replaced by one M-0002 HORIZONTAL TAB (HT) and between 0 and 3 M-0001 VIRTUAL + * SPACE (VS) characters, depending on the column at which the tab occurred. + * + * @param {Code} code + * @returns {code is number} + */ +function markdownSpace(code) { + return ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.horizontalTab || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.virtualSpace || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.space + ) +} + +/** + * Check whether the character code represents Unicode whitespace. + * + * Note that this does handle micromark specific markdown whitespace characters. + * See `markdownLineEndingOrSpace` to check that. + * + * A **Unicode whitespace** is a character in the Unicode `Zs` (Separator, + * Space) category, or U+0009 CHARACTER TABULATION (HT), U+000A LINE FEED (LF), + * U+000C (FF), or U+000D CARRIAGE RETURN (CR) (**\[UNICODE]**). + * + * See: + * **\[UNICODE]**: + * [The Unicode Standard](https://www.unicode.org/versions/). + * Unicode Consortium. + */ +const unicodeWhitespace = regexCheck(/\s/) + +/** + * Check whether the character code represents Unicode punctuation. + * + * A **Unicode punctuation** is a character in the Unicode `Pc` (Punctuation, + * Connector), `Pd` (Punctuation, Dash), `Pe` (Punctuation, Close), `Pf` + * (Punctuation, Final quote), `Pi` (Punctuation, Initial quote), `Po` + * (Punctuation, Other), or `Ps` (Punctuation, Open) categories, or an ASCII + * punctuation (see `asciiPunctuation`). + * + * See: + * **\[UNICODE]**: + * [The Unicode Standard](https://www.unicode.org/versions/). + * Unicode Consortium. + */ +// Size note: removing ASCII from the regex and using `asciiPunctuation` here +// In fact adds to the bundle size. +const unicodePunctuation = regexCheck(_lib_unicode_punctuation_regex_js__WEBPACK_IMPORTED_MODULE_1__.unicodePunctuationRegex) + +/** + * Create a code check from a regex. + * + * @param {RegExp} regex + * @returns {(code: Code) => code is number} + */ +function regexCheck(regex) { + return check + + /** + * Check whether a code matches the bound regex. + * + * @param {Code} code Character code + * @returns {code is number} Whether the character code matches the bound regex + */ + function check(code) { + return code !== null && regex.test(String.fromCharCode(code)) + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-character/dev/lib/unicode-punctuation-regex.js": +/*!************************************************************************************!*\ + !*** ./node_modules/micromark-util-character/dev/lib/unicode-punctuation-regex.js ***! + \************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "unicodePunctuationRegex": () => (/* binding */ unicodePunctuationRegex) +/* harmony export */ }); +// This module is generated by `script/`. +// +// CommonMark handles attention (emphasis, strong) markers based on what comes +// before or after them. +// One such difference is if those characters are Unicode punctuation. +// This script is generated from the Unicode data. +const unicodePunctuationRegex = + /[!-/:-@[-`{-~\u00A1\u00A7\u00AB\u00B6\u00B7\u00BB\u00BF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]/ + + +/***/ }), + +/***/ "./node_modules/micromark-util-chunked/dev/index.js": +/*!**********************************************************!*\ + !*** ./node_modules/micromark-util-chunked/dev/index.js ***! + \**********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "splice": () => (/* binding */ splice), +/* harmony export */ "push": () => (/* binding */ push) +/* harmony export */ }); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); + + +/** + * Like `Array#splice`, but smarter for giant arrays. + * + * `Array#splice` takes all items to be inserted as individual argument which + * causes a stack overflow in V8 when trying to insert 100k items for instance. + * + * Otherwise, this does not return the removed items, and takes `items` as an + * array instead of rest parameters. + * + * @template {unknown} T + * @param {T[]} list + * @param {number} start + * @param {number} remove + * @param {T[]} items + * @returns {void} + */ +function splice(list, start, remove, items) { + const end = list.length + let chunkStart = 0 + /** @type {unknown[]} */ + let parameters + + // Make start between zero and `end` (included). + if (start < 0) { + start = -start > end ? 0 : end + start + } else { + start = start > end ? end : start + } + + remove = remove > 0 ? remove : 0 + + // No need to chunk the items if there’s only a couple (10k) items. + if (items.length < micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_0__.constants.v8MaxSafeChunkSize) { + parameters = Array.from(items) + parameters.unshift(start, remove) + // @ts-expect-error Hush, it’s fine. + ;[].splice.apply(list, parameters) + } else { + // Delete `remove` items starting from `start` + if (remove) [].splice.apply(list, [start, remove]) + + // Insert the items in chunks to not cause stack overflows. + while (chunkStart < items.length) { + parameters = items.slice( + chunkStart, + chunkStart + micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_0__.constants.v8MaxSafeChunkSize + ) + parameters.unshift(start, 0) + // @ts-expect-error Hush, it’s fine. + ;[].splice.apply(list, parameters) + + chunkStart += micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_0__.constants.v8MaxSafeChunkSize + start += micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_0__.constants.v8MaxSafeChunkSize + } + } +} + +/** + * Append `items` (an array) at the end of `list` (another array). + * When `list` was empty, returns `items` instead. + * + * This prevents a potentially expensive operation when `list` is empty, + * and adds items in batches to prevent V8 from hanging. + * + * @template {unknown} T + * @param {T[]} list + * @param {T[]} items + * @returns {T[]} + */ +function push(list, items) { + if (list.length > 0) { + splice(list, list.length, 0, items) + return list + } + + return items +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-classify-character/dev/index.js": +/*!*********************************************************************!*\ + !*** ./node_modules/micromark-util-classify-character/dev/index.js ***! + \*********************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "classifyCharacter": () => (/* binding */ classifyCharacter) +/* harmony export */ }); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/** + * @typedef {import('micromark-util-types').Code} Code + */ + + + + + +/** + * Classify whether a character code represents whitespace, punctuation, or + * something else. + * + * Used for attention (emphasis, strong), whose sequences can open or close + * based on the class of surrounding characters. + * + * Note that eof (`null`) is seen as whitespace. + * + * @param {Code} code + * @returns {number|undefined} + */ +function classifyCharacter(code) { + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.eof || + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_1__.markdownLineEndingOrSpace)(code) || + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_1__.unicodeWhitespace)(code) + ) { + return micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.characterGroupWhitespace + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_1__.unicodePunctuation)(code)) { + return micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.characterGroupPunctuation + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-combine-extensions/index.js": +/*!*****************************************************************!*\ + !*** ./node_modules/micromark-util-combine-extensions/index.js ***! + \*****************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "combineExtensions": () => (/* binding */ combineExtensions), +/* harmony export */ "combineHtmlExtensions": () => (/* binding */ combineHtmlExtensions) +/* harmony export */ }); +/* harmony import */ var micromark_util_chunked__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-chunked */ "./node_modules/micromark-util-chunked/dev/index.js"); +/** + * @typedef {import('micromark-util-types').NormalizedExtension} NormalizedExtension + * @typedef {import('micromark-util-types').Extension} Extension + * @typedef {import('micromark-util-types').Construct} Construct + * @typedef {import('micromark-util-types').HtmlExtension} HtmlExtension + */ + + + +const hasOwnProperty = {}.hasOwnProperty + +/** + * Combine several syntax extensions into one. + * + * @param {Extension[]} extensions List of syntax extensions. + * @returns {NormalizedExtension} A single combined extension. + */ +function combineExtensions(extensions) { + /** @type {NormalizedExtension} */ + const all = {} + let index = -1 + + while (++index < extensions.length) { + syntaxExtension(all, extensions[index]) + } + + return all +} + +/** + * Merge `extension` into `all`. + * + * @param {NormalizedExtension} all Extension to merge into. + * @param {Extension} extension Extension to merge. + * @returns {void} + */ +function syntaxExtension(all, extension) { + /** @type {string} */ + let hook + + for (hook in extension) { + const maybe = hasOwnProperty.call(all, hook) ? all[hook] : undefined + const left = maybe || (all[hook] = {}) + const right = extension[hook] + /** @type {string} */ + let code + + for (code in right) { + if (!hasOwnProperty.call(left, code)) left[code] = [] + const value = right[code] + constructs( + // @ts-expect-error Looks like a list. + left[code], + Array.isArray(value) ? value : value ? [value] : [] + ) + } + } +} + +/** + * Merge `list` into `existing` (both lists of constructs). + * Mutates `existing`. + * + * @param {unknown[]} existing + * @param {unknown[]} list + * @returns {void} + */ +function constructs(existing, list) { + let index = -1 + /** @type {unknown[]} */ + const before = [] + + while (++index < list.length) { + // @ts-expect-error Looks like an object. + ;(list[index].add === 'after' ? existing : before).push(list[index]) + } + + (0,micromark_util_chunked__WEBPACK_IMPORTED_MODULE_0__.splice)(existing, 0, 0, before) +} + +/** + * Combine several HTML extensions into one. + * + * @param {HtmlExtension[]} htmlExtensions List of HTML extensions. + * @returns {HtmlExtension} A single combined extension. + */ +function combineHtmlExtensions(htmlExtensions) { + /** @type {HtmlExtension} */ + const handlers = {} + let index = -1 + + while (++index < htmlExtensions.length) { + htmlExtension(handlers, htmlExtensions[index]) + } + + return handlers +} + +/** + * Merge `extension` into `all`. + * + * @param {HtmlExtension} all Extension to merge into. + * @param {HtmlExtension} extension Extension to merge. + * @returns {void} + */ +function htmlExtension(all, extension) { + /** @type {string} */ + let hook + + for (hook in extension) { + const maybe = hasOwnProperty.call(all, hook) ? all[hook] : undefined + const left = maybe || (all[hook] = {}) + const right = extension[hook] + /** @type {string} */ + let type + + if (right) { + for (type in right) { + left[type] = right[type] + } + } + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-decode-numeric-character-reference/dev/index.js": +/*!*************************************************************************************!*\ + !*** ./node_modules/micromark-util-decode-numeric-character-reference/dev/index.js ***! + \*************************************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "decodeNumericCharacterReference": () => (/* binding */ decodeNumericCharacterReference) +/* harmony export */ }); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/values.js */ "./node_modules/micromark-util-symbol/values.js"); + + + +/** + * Turn the number (in string form as either hexa- or plain decimal) coming from + * a numeric character reference into a character. + * + * @param {string} value + * Value to decode. + * @param {number} base + * Numeric base. + * @returns {string} + */ +function decodeNumericCharacterReference(value, base) { + const code = Number.parseInt(value, base) + + if ( + // C0 except for HT, LF, FF, CR, space + code < micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.ht || + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.vt || + (code > micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.cr && code < micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.space) || + // Control character (DEL) of the basic block and C1 controls. + (code > micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.tilde && code < 160) || + // Lone high surrogates and low surrogates. + (code > 55295 && code < 57344) || + // Noncharacters. + (code > 64975 && code < 65008) || + (code & 65535) === 65535 || + (code & 65535) === 65534 || + // Out of range + code > 1114111 + ) { + return micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_1__.values.replacementCharacter + } + + return String.fromCharCode(code) +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-decode-string/dev/index.js": +/*!****************************************************************!*\ + !*** ./node_modules/micromark-util-decode-string/dev/index.js ***! + \****************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "decodeString": () => (/* binding */ decodeString) +/* harmony export */ }); +/* harmony import */ var decode_named_character_reference__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! decode-named-character-reference */ "./node_modules/decode-named-character-reference/index.dom.js"); +/* harmony import */ var micromark_util_decode_numeric_character_reference__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-decode-numeric-character-reference */ "./node_modules/micromark-util-decode-numeric-character-reference/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); + + + + + +const characterEscapeOrReference = + /\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi + +/** + * Utility to decode markdown strings (which occur in places such as fenced + * code info strings, destinations, labels, and titles). + * The “string” content type allows character escapes and -references. + * This decodes those. + * + * @param {string} value + * @returns {string} + */ +function decodeString(value) { + return value.replace(characterEscapeOrReference, decode) +} + +/** + * @param {string} $0 + * @param {string} $1 + * @param {string} $2 + * @returns {string} + */ +function decode($0, $1, $2) { + if ($1) { + // Escape. + return $1 + } + + // Reference. + const head = $2.charCodeAt(0) + + if (head === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.numberSign) { + const head = $2.charCodeAt(1) + const hex = head === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.lowercaseX || head === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.uppercaseX + return (0,micromark_util_decode_numeric_character_reference__WEBPACK_IMPORTED_MODULE_1__.decodeNumericCharacterReference)( + $2.slice(hex ? 2 : 1), + hex ? micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.numericBaseHexadecimal : micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.numericBaseDecimal + ) + } + + return (0,decode_named_character_reference__WEBPACK_IMPORTED_MODULE_3__.decodeNamedCharacterReference)($2) || $0 +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-encode/index.js": +/*!*****************************************************!*\ + !*** ./node_modules/micromark-util-encode/index.js ***! + \*****************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "encode": () => (/* binding */ encode) +/* harmony export */ }); +const characterReferences = {'"': 'quot', '&': 'amp', '<': 'lt', '>': 'gt'} + +/** + * Encode only the dangerous HTML characters. + * + * This ensures that certain characters which have special meaning in HTML are + * dealt with. + * Technically, we can skip `>` and `"` in many cases, but CM includes them. + * + * @param {string} value + * @returns {string} + */ +function encode(value) { + return value.replace(/["&<>]/g, replace) + + /** + * @param {string} value + * @returns {string} + */ + function replace(value) { + // @ts-expect-error Hush, it’s fine. + return '&' + characterReferences[value] + ';' + } +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-html-tag-name/index.js": +/*!************************************************************!*\ + !*** ./node_modules/micromark-util-html-tag-name/index.js ***! + \************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "htmlBlockNames": () => (/* binding */ htmlBlockNames), +/* harmony export */ "htmlRawNames": () => (/* binding */ htmlRawNames) +/* harmony export */ }); +/** + * List of lowercase HTML tag names which when parsing HTML (flow), result + * in more relaxed rules (condition 6): because they are known blocks, the + * HTML-like syntax doesn’t have to be strictly parsed. + * For tag names not in this list, a more strict algorithm (condition 7) is used + * to detect whether the HTML-like syntax is seen as HTML (flow) or not. + * + * This is copied from: + * . + */ +const htmlBlockNames = [ + 'address', + 'article', + 'aside', + 'base', + 'basefont', + 'blockquote', + 'body', + 'caption', + 'center', + 'col', + 'colgroup', + 'dd', + 'details', + 'dialog', + 'dir', + 'div', + 'dl', + 'dt', + 'fieldset', + 'figcaption', + 'figure', + 'footer', + 'form', + 'frame', + 'frameset', + 'h1', + 'h2', + 'h3', + 'h4', + 'h5', + 'h6', + 'head', + 'header', + 'hr', + 'html', + 'iframe', + 'legend', + 'li', + 'link', + 'main', + 'menu', + 'menuitem', + 'nav', + 'noframes', + 'ol', + 'optgroup', + 'option', + 'p', + 'param', + 'section', + 'source', + 'summary', + 'table', + 'tbody', + 'td', + 'tfoot', + 'th', + 'thead', + 'title', + 'tr', + 'track', + 'ul' +] + +/** + * List of lowercase HTML tag names which when parsing HTML (flow), result in + * HTML that can include lines w/o exiting, until a closing tag also in this + * list is found (condition 1). + * + * This module is copied from: + * . + * + * Note that `textarea` is not available in `CommonMark@0.29` but has been + * merged to the primary branch and is slated to be released in the next release + * of CommonMark. + */ +const htmlRawNames = ['pre', 'script', 'style', 'textarea'] + + +/***/ }), + +/***/ "./node_modules/micromark-util-normalize-identifier/dev/index.js": +/*!***********************************************************************!*\ + !*** ./node_modules/micromark-util-normalize-identifier/dev/index.js ***! + \***********************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "normalizeIdentifier": () => (/* binding */ normalizeIdentifier) +/* harmony export */ }); +/* harmony import */ var micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-symbol/values.js */ "./node_modules/micromark-util-symbol/values.js"); + + +/** + * Normalize an identifier (such as used in definitions). + * + * @param {string} value + * @returns {string} + */ +function normalizeIdentifier(value) { + return ( + value + // Collapse Markdown whitespace. + .replace(/[\t\n\r ]+/g, micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_0__.values.space) + // Trim. + .replace(/^ | $/g, '') + // Some characters are considered “uppercase”, but if their lowercase + // counterpart is uppercased will result in a different uppercase + // character. + // Hence, to get that form, we perform both lower- and uppercase. + // Upper case makes sure keys will not interact with default prototypal + // methods: no method is uppercase. + .toLowerCase() + .toUpperCase() + ) +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-resolve-all/index.js": +/*!**********************************************************!*\ + !*** ./node_modules/micromark-util-resolve-all/index.js ***! + \**********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "resolveAll": () => (/* binding */ resolveAll) +/* harmony export */ }); +/** + * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext + * @typedef {import('micromark-util-types').Event} Event + * @typedef {import('micromark-util-types').Resolver} Resolver + */ + +/** + * Call all `resolveAll`s. + * + * @param {{resolveAll?: Resolver}[]} constructs + * @param {Event[]} events + * @param {TokenizeContext} context + * @returns {Event[]} + */ +function resolveAll(constructs, events, context) { + /** @type {Resolver[]} */ + const called = [] + let index = -1 + + while (++index < constructs.length) { + const resolve = constructs[index].resolveAll + + if (resolve && !called.includes(resolve)) { + events = resolve(events, context) + called.push(resolve) + } + } + + return events +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-sanitize-uri/dev/index.js": +/*!***************************************************************!*\ + !*** ./node_modules/micromark-util-sanitize-uri/dev/index.js ***! + \***************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "sanitizeUri": () => (/* binding */ sanitizeUri) +/* harmony export */ }); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_encode__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-encode */ "./node_modules/micromark-util-encode/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-symbol/values.js */ "./node_modules/micromark-util-symbol/values.js"); + + + + + +/** + * Make a value safe for injection as a URL. + * + * This encodes unsafe characters with percent-encoding and skips already + * encoded sequences (see `normalizeUri` below). + * Further unsafe characters are encoded as character references (see + * `micromark-util-encode`). + * + * Then, a regex of allowed protocols can be given, in which case the URL is + * sanitized. + * For example, `/^(https?|ircs?|mailto|xmpp)$/i` can be used for `a[href]`, + * or `/^https?$/i` for `img[src]`. + * If the URL includes an unknown protocol (one not matched by `protocol`, such + * as a dangerous example, `javascript:`), the value is ignored. + * + * @param {string|undefined} url + * @param {RegExp} [protocol] + * @returns {string} + */ +function sanitizeUri(url, protocol) { + const value = (0,micromark_util_encode__WEBPACK_IMPORTED_MODULE_0__.encode)(normalizeUri(url || '')) + + if (!protocol) { + return value + } + + const colon = value.indexOf(':') + const questionMark = value.indexOf('?') + const numberSign = value.indexOf('#') + const slash = value.indexOf('/') + + if ( + // If there is no protocol, it’s relative. + colon < 0 || + // If the first colon is after a `?`, `#`, or `/`, it’s not a protocol. + (slash > -1 && colon > slash) || + (questionMark > -1 && colon > questionMark) || + (numberSign > -1 && colon > numberSign) || + // It is a protocol, it should be allowed. + protocol.test(value.slice(0, colon)) + ) { + return value + } + + return '' +} + +/** + * Normalize a URL (such as used in definitions). + * + * Encode unsafe characters with percent-encoding, skipping already encoded + * sequences. + * + * @param {string} value + * @returns {string} + */ +function normalizeUri(value) { + /** @type {string[]} */ + const result = [] + let index = -1 + let start = 0 + let skip = 0 + + while (++index < value.length) { + const code = value.charCodeAt(index) + /** @type {string} */ + let replace = '' + + // A correct percent encoded value. + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.percentSign && + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_2__.asciiAlphanumeric)(value.charCodeAt(index + 1)) && + (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_2__.asciiAlphanumeric)(value.charCodeAt(index + 2)) + ) { + skip = 2 + } + // ASCII. + else if (code < 128) { + if (!/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(code))) { + replace = String.fromCharCode(code) + } + } + // Astral. + else if (code > 55295 && code < 57344) { + const next = value.charCodeAt(index + 1) + + // A correct surrogate pair. + if (code < 56320 && next > 56319 && next < 57344) { + replace = String.fromCharCode(code, next) + skip = 1 + } + // Lone surrogate. + else { + replace = micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_3__.values.replacementCharacter + } + } + // Unicode. + else { + replace = String.fromCharCode(code) + } + + if (replace) { + result.push(value.slice(start, index), encodeURIComponent(replace)) + start = index + skip + 1 + replace = '' + } + + if (skip) { + index += skip + skip = 0 + } + } + + return result.join('') + value.slice(start) +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-subtokenize/dev/index.js": +/*!**************************************************************!*\ + !*** ./node_modules/micromark-util-subtokenize/dev/index.js ***! + \**************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "subtokenize": () => (/* binding */ subtokenize) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var micromark_util_chunked__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-chunked */ "./node_modules/micromark-util-chunked/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').Token} Token + * @typedef {import('micromark-util-types').Chunk} Chunk + * @typedef {import('micromark-util-types').Event} Event + */ + + + + + + +/** + * Tokenize subcontent. + * + * @param {Event[]} events + * @returns {boolean} + */ +function subtokenize(events) { + /** @type {Record} */ + const jumps = {} + let index = -1 + /** @type {Event} */ + let event + /** @type {number|undefined} */ + let lineIndex + /** @type {number} */ + let otherIndex + /** @type {Event} */ + let otherEvent + /** @type {Event[]} */ + let parameters + /** @type {Event[]} */ + let subevents + /** @type {boolean|undefined} */ + let more + + while (++index < events.length) { + while (index in jumps) { + index = jumps[index] + } + + event = events[index] + + // Add a hook for the GFM tasklist extension, which needs to know if text + // is in the first content of a list item. + if ( + index && + event[1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.chunkFlow && + events[index - 1][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.listItemPrefix + ) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(event[1]._tokenizer, 'expected `_tokenizer` on subtokens') + subevents = event[1]._tokenizer.events + otherIndex = 0 + + if ( + otherIndex < subevents.length && + subevents[otherIndex][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineEndingBlank + ) { + otherIndex += 2 + } + + if ( + otherIndex < subevents.length && + subevents[otherIndex][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.content + ) { + while (++otherIndex < subevents.length) { + if (subevents[otherIndex][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.content) { + break + } + + if (subevents[otherIndex][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.chunkText) { + subevents[otherIndex][1]._isInFirstContentOfListItem = true + otherIndex++ + } + } + } + } + + // Enter. + if (event[0] === 'enter') { + if (event[1].contentType) { + Object.assign(jumps, subcontent(events, index)) + index = jumps[index] + more = true + } + } + // Exit. + else if (event[1]._container) { + otherIndex = index + lineIndex = undefined + + while (otherIndex--) { + otherEvent = events[otherIndex] + + if ( + otherEvent[1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineEnding || + otherEvent[1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineEndingBlank + ) { + if (otherEvent[0] === 'enter') { + if (lineIndex) { + events[lineIndex][1].type = micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineEndingBlank + } + + otherEvent[1].type = micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineEnding + lineIndex = otherIndex + } + } else { + break + } + } + + if (lineIndex) { + // Fix position. + event[1].end = Object.assign({}, events[lineIndex][1].start) + + // Switch container exit w/ line endings. + parameters = events.slice(lineIndex, index) + parameters.unshift(event) + ;(0,micromark_util_chunked__WEBPACK_IMPORTED_MODULE_2__.splice)(events, lineIndex, index - lineIndex + 1, parameters) + } + } + } + + return !more +} + +/** + * Tokenize embedded tokens. + * + * @param {Event[]} events + * @param {number} eventIndex + * @returns {Record} + */ +function subcontent(events, eventIndex) { + const token = events[eventIndex][1] + const context = events[eventIndex][2] + let startPosition = eventIndex - 1 + /** @type {number[]} */ + const startPositions = [] + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(token.contentType, 'expected `contentType` on subtokens') + const tokenizer = + token._tokenizer || context.parser[token.contentType](token.start) + const childEvents = tokenizer.events + /** @type {[number, number][]} */ + const jumps = [] + /** @type {Record} */ + const gaps = {} + /** @type {Chunk[]} */ + let stream + /** @type {Token|undefined} */ + let previous + let index = -1 + /** @type {Token|undefined} */ + let current = token + let adjust = 0 + let start = 0 + const breaks = [start] + + // Loop forward through the linked tokens to pass them in order to the + // subtokenizer. + while (current) { + // Find the position of the event for this token. + while (events[++startPosition][1] !== current) { + // Empty. + } + + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + !previous || current.previous === previous, + 'expected previous to match' + ) + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(!previous || previous.next === current, 'expected next to match') + + startPositions.push(startPosition) + + if (!current._tokenizer) { + stream = context.sliceStream(current) + + if (!current.next) { + stream.push(micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof) + } + + if (previous) { + tokenizer.defineSkip(current.start) + } + + if (current._isInFirstContentOfListItem) { + tokenizer._gfmTasklistFirstContentOfListItem = true + } + + tokenizer.write(stream) + + if (current._isInFirstContentOfListItem) { + tokenizer._gfmTasklistFirstContentOfListItem = undefined + } + } + + // Unravel the next token. + previous = current + current = current.next + } + + // Now, loop back through all events (and linked tokens), to figure out which + // parts belong where. + current = token + + while (++index < childEvents.length) { + if ( + // Find a void token that includes a break. + childEvents[index][0] === 'exit' && + childEvents[index - 1][0] === 'enter' && + childEvents[index][1].type === childEvents[index - 1][1].type && + childEvents[index][1].start.line !== childEvents[index][1].end.line + ) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(current, 'expected a current token') + start = index + 1 + breaks.push(start) + // Help GC. + current._tokenizer = undefined + current.previous = undefined + current = current.next + } + } + + // Help GC. + tokenizer.events = [] + + // If there’s one more token (which is the cases for lines that end in an + // EOF), that’s perfect: the last point we found starts it. + // If there isn’t then make sure any remaining content is added to it. + if (current) { + // Help GC. + current._tokenizer = undefined + current.previous = undefined + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(!current.next, 'expected no next token') + } else { + breaks.pop() + } + + // Now splice the events from the subtokenizer into the current events, + // moving back to front so that splice indices aren’t affected. + index = breaks.length + + while (index--) { + const slice = childEvents.slice(breaks[index], breaks[index + 1]) + const start = startPositions.pop() + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(start !== undefined, 'expected a start position when splicing') + jumps.unshift([start, start + slice.length - 1]) + ;(0,micromark_util_chunked__WEBPACK_IMPORTED_MODULE_2__.splice)(events, start, 2, slice) + } + + index = -1 + + while (++index < jumps.length) { + gaps[adjust + jumps[index][0]] = adjust + jumps[index][1] + adjust += jumps[index][1] - jumps[index][0] - 1 + } + + return gaps +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-symbol/codes.js": +/*!*****************************************************!*\ + !*** ./node_modules/micromark-util-symbol/codes.js ***! + \*****************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "codes": () => (/* binding */ codes) +/* harmony export */ }); +/** + * Character codes. + * + * This module is compiled away! + * + * micromark works based on character codes. + * This module contains constants for the ASCII block and the replacement + * character. + * A couple of them are handled in a special way, such as the line endings + * (CR, LF, and CR+LF, commonly known as end-of-line: EOLs), the tab (horizontal + * tab) and its expansion based on what column it’s at (virtual space), + * and the end-of-file (eof) character. + * As values are preprocessed before handling them, the actual characters LF, + * CR, HT, and NUL (which is present as the replacement character), are + * guaranteed to not exist. + * + * Unicode basic latin block. + */ +const codes = { + carriageReturn: -5, + lineFeed: -4, + carriageReturnLineFeed: -3, + horizontalTab: -2, + virtualSpace: -1, + eof: null, + nul: 0, + soh: 1, + stx: 2, + etx: 3, + eot: 4, + enq: 5, + ack: 6, + bel: 7, + bs: 8, + ht: 9, // `\t` + lf: 10, // `\n` + vt: 11, // `\v` + ff: 12, // `\f` + cr: 13, // `\r` + so: 14, + si: 15, + dle: 16, + dc1: 17, + dc2: 18, + dc3: 19, + dc4: 20, + nak: 21, + syn: 22, + etb: 23, + can: 24, + em: 25, + sub: 26, + esc: 27, + fs: 28, + gs: 29, + rs: 30, + us: 31, + space: 32, + exclamationMark: 33, // `!` + quotationMark: 34, // `"` + numberSign: 35, // `#` + dollarSign: 36, // `$` + percentSign: 37, // `%` + ampersand: 38, // `&` + apostrophe: 39, // `'` + leftParenthesis: 40, // `(` + rightParenthesis: 41, // `)` + asterisk: 42, // `*` + plusSign: 43, // `+` + comma: 44, // `,` + dash: 45, // `-` + dot: 46, // `.` + slash: 47, // `/` + digit0: 48, // `0` + digit1: 49, // `1` + digit2: 50, // `2` + digit3: 51, // `3` + digit4: 52, // `4` + digit5: 53, // `5` + digit6: 54, // `6` + digit7: 55, // `7` + digit8: 56, // `8` + digit9: 57, // `9` + colon: 58, // `:` + semicolon: 59, // `;` + lessThan: 60, // `<` + equalsTo: 61, // `=` + greaterThan: 62, // `>` + questionMark: 63, // `?` + atSign: 64, // `@` + uppercaseA: 65, // `A` + uppercaseB: 66, // `B` + uppercaseC: 67, // `C` + uppercaseD: 68, // `D` + uppercaseE: 69, // `E` + uppercaseF: 70, // `F` + uppercaseG: 71, // `G` + uppercaseH: 72, // `H` + uppercaseI: 73, // `I` + uppercaseJ: 74, // `J` + uppercaseK: 75, // `K` + uppercaseL: 76, // `L` + uppercaseM: 77, // `M` + uppercaseN: 78, // `N` + uppercaseO: 79, // `O` + uppercaseP: 80, // `P` + uppercaseQ: 81, // `Q` + uppercaseR: 82, // `R` + uppercaseS: 83, // `S` + uppercaseT: 84, // `T` + uppercaseU: 85, // `U` + uppercaseV: 86, // `V` + uppercaseW: 87, // `W` + uppercaseX: 88, // `X` + uppercaseY: 89, // `Y` + uppercaseZ: 90, // `Z` + leftSquareBracket: 91, // `[` + backslash: 92, // `\` + rightSquareBracket: 93, // `]` + caret: 94, // `^` + underscore: 95, // `_` + graveAccent: 96, // `` ` `` + lowercaseA: 97, // `a` + lowercaseB: 98, // `b` + lowercaseC: 99, // `c` + lowercaseD: 100, // `d` + lowercaseE: 101, // `e` + lowercaseF: 102, // `f` + lowercaseG: 103, // `g` + lowercaseH: 104, // `h` + lowercaseI: 105, // `i` + lowercaseJ: 106, // `j` + lowercaseK: 107, // `k` + lowercaseL: 108, // `l` + lowercaseM: 109, // `m` + lowercaseN: 110, // `n` + lowercaseO: 111, // `o` + lowercaseP: 112, // `p` + lowercaseQ: 113, // `q` + lowercaseR: 114, // `r` + lowercaseS: 115, // `s` + lowercaseT: 116, // `t` + lowercaseU: 117, // `u` + lowercaseV: 118, // `v` + lowercaseW: 119, // `w` + lowercaseX: 120, // `x` + lowercaseY: 121, // `y` + lowercaseZ: 122, // `z` + leftCurlyBrace: 123, // `{` + verticalBar: 124, // `|` + rightCurlyBrace: 125, // `}` + tilde: 126, // `~` + del: 127, + // Unicode Specials block. + byteOrderMarker: 65279, + // Unicode Specials block. + replacementCharacter: 65533 // `�` +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-symbol/constants.js": +/*!*********************************************************!*\ + !*** ./node_modules/micromark-util-symbol/constants.js ***! + \*********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "constants": () => (/* binding */ constants) +/* harmony export */ }); +/** + * This module is compiled away! + * + * Parsing markdown comes with a couple of constants, such as minimum or maximum + * sizes of certain sequences. + * Additionally, there are a couple symbols used inside micromark. + * These are all defined here, but compiled away by scripts. + */ +const constants = { + attentionSideBefore: 1, // Symbol to mark an attention sequence as before content: `*a` + attentionSideAfter: 2, // Symbol to mark an attention sequence as after content: `a*` + atxHeadingOpeningFenceSizeMax: 6, // 6 number signs is fine, 7 isn’t. + autolinkDomainSizeMax: 63, // 63 characters is fine, 64 is too many. + autolinkSchemeSizeMax: 32, // 32 characters is fine, 33 is too many. + cdataOpeningString: 'CDATA[', // And preceded by `` + htmlComment: 2, // Symbol for `` + htmlInstruction: 3, // Symbol for `` + htmlDeclaration: 4, // Symbol for `` + htmlCdata: 5, // Symbol for `` + htmlBasic: 6, // Symbol for `` + htmlRawSizeMax: 8, // Length of `textarea`. + linkResourceDestinationBalanceMax: 32, // See: , + linkReferenceSizeMax: 999, // See: + listItemValueSizeMax: 10, // See: + numericBaseDecimal: 10, + numericBaseHexadecimal: 0x10, + tabSize: 4, // Tabs have a hard-coded size of 4, per CommonMark. + thematicBreakMarkerCountMin: 3, // At least 3 asterisks, dashes, or underscores are needed. + v8MaxSafeChunkSize: 10000 // V8 (and potentially others) have problems injecting giant arrays into other arrays, hence we operate in chunks. +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-symbol/types.js": +/*!*****************************************************!*\ + !*** ./node_modules/micromark-util-symbol/types.js ***! + \*****************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "types": () => (/* binding */ types) +/* harmony export */ }); +/** + * This module is compiled away! + * + * Here is the list of all types of tokens exposed by micromark, with a short + * explanation of what they include and where they are found. + * In picking names, generally, the rule is to be as explicit as possible + * instead of reusing names. + * For example, there is a `definitionDestination` and a `resourceDestination`, + * instead of one shared name. + */ + +const types = { + // Generic type for data, such as in a title, a destination, etc. + data: 'data', + + // Generic type for syntactic whitespace (tabs, virtual spaces, spaces). + // Such as, between a fenced code fence and an info string. + whitespace: 'whitespace', + + // Generic type for line endings (line feed, carriage return, carriage return + + // line feed). + lineEnding: 'lineEnding', + + // A line ending, but ending a blank line. + lineEndingBlank: 'lineEndingBlank', + + // Generic type for whitespace (tabs, virtual spaces, spaces) at the start of a + // line. + linePrefix: 'linePrefix', + + // Generic type for whitespace (tabs, virtual spaces, spaces) at the end of a + // line. + lineSuffix: 'lineSuffix', + + // Whole ATX heading: + // + // ```markdown + // # + // ## Alpha + // ### Bravo ### + // ``` + // + // Includes `atxHeadingSequence`, `whitespace`, `atxHeadingText`. + atxHeading: 'atxHeading', + + // Sequence of number signs in an ATX heading (`###`). + atxHeadingSequence: 'atxHeadingSequence', + + // Content in an ATX heading (`alpha`). + // Includes text. + atxHeadingText: 'atxHeadingText', + + // Whole autolink (`` or ``) + // Includes `autolinkMarker` and `autolinkProtocol` or `autolinkEmail`. + autolink: 'autolink', + + // Email autolink w/o markers (`admin@example.com`) + autolinkEmail: 'autolinkEmail', + + // Marker around an `autolinkProtocol` or `autolinkEmail` (`<` or `>`). + autolinkMarker: 'autolinkMarker', + + // Protocol autolink w/o markers (`https://example.com`) + autolinkProtocol: 'autolinkProtocol', + + // A whole character escape (`\-`). + // Includes `escapeMarker` and `characterEscapeValue`. + characterEscape: 'characterEscape', + + // The escaped character (`-`). + characterEscapeValue: 'characterEscapeValue', + + // A whole character reference (`&`, `≠`, or `𝌆`). + // Includes `characterReferenceMarker`, an optional + // `characterReferenceMarkerNumeric`, in which case an optional + // `characterReferenceMarkerHexadecimal`, and a `characterReferenceValue`. + characterReference: 'characterReference', + + // The start or end marker (`&` or `;`). + characterReferenceMarker: 'characterReferenceMarker', + + // Mark reference as numeric (`#`). + characterReferenceMarkerNumeric: 'characterReferenceMarkerNumeric', + + // Mark reference as numeric (`x` or `X`). + characterReferenceMarkerHexadecimal: 'characterReferenceMarkerHexadecimal', + + // Value of character reference w/o markers (`amp`, `8800`, or `1D306`). + characterReferenceValue: 'characterReferenceValue', + + // Whole fenced code: + // + // ````markdown + // ```js + // alert(1) + // ``` + // ```` + codeFenced: 'codeFenced', + + // A fenced code fence, including whitespace, sequence, info, and meta + // (` ```js `). + codeFencedFence: 'codeFencedFence', + + // Sequence of grave accent or tilde characters (` ``` `) in a fence. + codeFencedFenceSequence: 'codeFencedFenceSequence', + + // Info word (`js`) in a fence. + // Includes string. + codeFencedFenceInfo: 'codeFencedFenceInfo', + + // Meta words (`highlight="1"`) in a fence. + // Includes string. + codeFencedFenceMeta: 'codeFencedFenceMeta', + + // A line of code. + codeFlowValue: 'codeFlowValue', + + // Whole indented code: + // + // ```markdown + // alert(1) + // ``` + // + // Includes `lineEnding`, `linePrefix`, and `codeFlowValue`. + codeIndented: 'codeIndented', + + // A text code (``` `alpha` ```). + // Includes `codeTextSequence`, `codeTextData`, `lineEnding`, and can include + // `codeTextPadding`. + codeText: 'codeText', + + codeTextData: 'codeTextData', + + // A space or line ending right after or before a tick. + codeTextPadding: 'codeTextPadding', + + // A text code fence (` `` `). + codeTextSequence: 'codeTextSequence', + + // Whole content: + // + // ```markdown + // [a]: b + // c + // = + // d + // ``` + // + // Includes `paragraph` and `definition`. + content: 'content', + // Whole definition: + // + // ```markdown + // [micromark]: https://github.com/micromark/micromark + // ``` + // + // Includes `definitionLabel`, `definitionMarker`, `whitespace`, + // `definitionDestination`, and optionally `lineEnding` and `definitionTitle`. + definition: 'definition', + + // Destination of a definition (`https://github.com/micromark/micromark` or + // ``). + // Includes `definitionDestinationLiteral` or `definitionDestinationRaw`. + definitionDestination: 'definitionDestination', + + // Enclosed destination of a definition + // (``). + // Includes `definitionDestinationLiteralMarker` and optionally + // `definitionDestinationString`. + definitionDestinationLiteral: 'definitionDestinationLiteral', + + // Markers of an enclosed definition destination (`<` or `>`). + definitionDestinationLiteralMarker: 'definitionDestinationLiteralMarker', + + // Unenclosed destination of a definition + // (`https://github.com/micromark/micromark`). + // Includes `definitionDestinationString`. + definitionDestinationRaw: 'definitionDestinationRaw', + + // Text in an destination (`https://github.com/micromark/micromark`). + // Includes string. + definitionDestinationString: 'definitionDestinationString', + + // Label of a definition (`[micromark]`). + // Includes `definitionLabelMarker` and `definitionLabelString`. + definitionLabel: 'definitionLabel', + + // Markers of a definition label (`[` or `]`). + definitionLabelMarker: 'definitionLabelMarker', + + // Value of a definition label (`micromark`). + // Includes string. + definitionLabelString: 'definitionLabelString', + + // Marker between a label and a destination (`:`). + definitionMarker: 'definitionMarker', + + // Title of a definition (`"x"`, `'y'`, or `(z)`). + // Includes `definitionTitleMarker` and optionally `definitionTitleString`. + definitionTitle: 'definitionTitle', + + // Marker around a title of a definition (`"`, `'`, `(`, or `)`). + definitionTitleMarker: 'definitionTitleMarker', + + // Data without markers in a title (`z`). + // Includes string. + definitionTitleString: 'definitionTitleString', + + // Emphasis (`*alpha*`). + // Includes `emphasisSequence` and `emphasisText`. + emphasis: 'emphasis', + + // Sequence of emphasis markers (`*` or `_`). + emphasisSequence: 'emphasisSequence', + + // Emphasis text (`alpha`). + // Includes text. + emphasisText: 'emphasisText', + + // The character escape marker (`\`). + escapeMarker: 'escapeMarker', + + // A hard break created with a backslash (`\\n`). + // Includes `escapeMarker` (does not include the line ending) + hardBreakEscape: 'hardBreakEscape', + + // A hard break created with trailing spaces (` \n`). + // Does not include the line ending. + hardBreakTrailing: 'hardBreakTrailing', + + // Flow HTML: + // + // ```markdown + //
b`). + // Includes `lineEnding`, `htmlTextData`. + htmlText: 'htmlText', + + htmlTextData: 'htmlTextData', + + // Whole image (`![alpha](bravo)`, `![alpha][bravo]`, `![alpha][]`, or + // `![alpha]`). + // Includes `label` and an optional `resource` or `reference`. + image: 'image', + + // Whole link label (`[*alpha*]`). + // Includes `labelLink` or `labelImage`, `labelText`, and `labelEnd`. + label: 'label', + + // Text in an label (`*alpha*`). + // Includes text. + labelText: 'labelText', + + // Start a link label (`[`). + // Includes a `labelMarker`. + labelLink: 'labelLink', + + // Start an image label (`![`). + // Includes `labelImageMarker` and `labelMarker`. + labelImage: 'labelImage', + + // Marker of a label (`[` or `]`). + labelMarker: 'labelMarker', + + // Marker to start an image (`!`). + labelImageMarker: 'labelImageMarker', + + // End a label (`]`). + // Includes `labelMarker`. + labelEnd: 'labelEnd', + + // Whole link (`[alpha](bravo)`, `[alpha][bravo]`, `[alpha][]`, or `[alpha]`). + // Includes `label` and an optional `resource` or `reference`. + link: 'link', + + // Whole paragraph: + // + // ```markdown + // alpha + // bravo. + // ``` + // + // Includes text. + paragraph: 'paragraph', + + // A reference (`[alpha]` or `[]`). + // Includes `referenceMarker` and an optional `referenceString`. + reference: 'reference', + + // A reference marker (`[` or `]`). + referenceMarker: 'referenceMarker', + + // Reference text (`alpha`). + // Includes string. + referenceString: 'referenceString', + + // A resource (`(https://example.com "alpha")`). + // Includes `resourceMarker`, an optional `resourceDestination` with an optional + // `whitespace` and `resourceTitle`. + resource: 'resource', + + // A resource destination (`https://example.com`). + // Includes `resourceDestinationLiteral` or `resourceDestinationRaw`. + resourceDestination: 'resourceDestination', + + // A literal resource destination (``). + // Includes `resourceDestinationLiteralMarker` and optionally + // `resourceDestinationString`. + resourceDestinationLiteral: 'resourceDestinationLiteral', + + // A resource destination marker (`<` or `>`). + resourceDestinationLiteralMarker: 'resourceDestinationLiteralMarker', + + // A raw resource destination (`https://example.com`). + // Includes `resourceDestinationString`. + resourceDestinationRaw: 'resourceDestinationRaw', + + // Resource destination text (`https://example.com`). + // Includes string. + resourceDestinationString: 'resourceDestinationString', + + // A resource marker (`(` or `)`). + resourceMarker: 'resourceMarker', + + // A resource title (`"alpha"`, `'alpha'`, or `(alpha)`). + // Includes `resourceTitleMarker` and optionally `resourceTitleString`. + resourceTitle: 'resourceTitle', + + // A resource title marker (`"`, `'`, `(`, or `)`). + resourceTitleMarker: 'resourceTitleMarker', + + // Resource destination title (`alpha`). + // Includes string. + resourceTitleString: 'resourceTitleString', + + // Whole setext heading: + // + // ```markdown + // alpha + // bravo + // ===== + // ``` + // + // Includes `setextHeadingText`, `lineEnding`, `linePrefix`, and + // `setextHeadingLine`. + setextHeading: 'setextHeading', + + // Content in a setext heading (`alpha\nbravo`). + // Includes text. + setextHeadingText: 'setextHeadingText', + + // Underline in a setext heading, including whitespace suffix (`==`). + // Includes `setextHeadingLineSequence`. + setextHeadingLine: 'setextHeadingLine', + + // Sequence of equals or dash characters in underline in a setext heading (`-`). + setextHeadingLineSequence: 'setextHeadingLineSequence', + + // Strong (`**alpha**`). + // Includes `strongSequence` and `strongText`. + strong: 'strong', + + // Sequence of strong markers (`**` or `__`). + strongSequence: 'strongSequence', + + // Strong text (`alpha`). + // Includes text. + strongText: 'strongText', + + // Whole thematic break: + // + // ```markdown + // * * * + // ``` + // + // Includes `thematicBreakSequence` and `whitespace`. + thematicBreak: 'thematicBreak', + + // A sequence of one or more thematic break markers (`***`). + thematicBreakSequence: 'thematicBreakSequence', + + // Whole block quote: + // + // ```markdown + // > a + // > + // > b + // ``` + // + // Includes `blockQuotePrefix` and flow. + blockQuote: 'blockQuote', + // The `>` or `> ` of a block quote. + blockQuotePrefix: 'blockQuotePrefix', + // The `>` of a block quote prefix. + blockQuoteMarker: 'blockQuoteMarker', + // The optional ` ` of a block quote prefix. + blockQuotePrefixWhitespace: 'blockQuotePrefixWhitespace', + + // Whole unordered list: + // + // ```markdown + // - a + // b + // ``` + // + // Includes `listItemPrefix`, flow, and optionally `listItemIndent` on further + // lines. + listOrdered: 'listOrdered', + + // Whole ordered list: + // + // ```markdown + // 1. a + // b + // ``` + // + // Includes `listItemPrefix`, flow, and optionally `listItemIndent` on further + // lines. + listUnordered: 'listUnordered', + + // The indent of further list item lines. + listItemIndent: 'listItemIndent', + + // A marker, as in, `*`, `+`, `-`, `.`, or `)`. + listItemMarker: 'listItemMarker', + + // The thing that starts a list item, such as `1. `. + // Includes `listItemValue` if ordered, `listItemMarker`, and + // `listItemPrefixWhitespace` (unless followed by a line ending). + listItemPrefix: 'listItemPrefix', + + // The whitespace after a marker. + listItemPrefixWhitespace: 'listItemPrefixWhitespace', + + // The numerical value of an ordered item. + listItemValue: 'listItemValue', + + // Internal types used for subtokenizers, compiled away + chunkDocument: 'chunkDocument', + chunkContent: 'chunkContent', + chunkFlow: 'chunkFlow', + chunkText: 'chunkText', + chunkString: 'chunkString' +} + + +/***/ }), + +/***/ "./node_modules/micromark-util-symbol/values.js": +/*!******************************************************!*\ + !*** ./node_modules/micromark-util-symbol/values.js ***! + \******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "values": () => (/* binding */ values) +/* harmony export */ }); +// This module is compiled away! +// +// While micromark works based on character codes, this module includes the +// string versions of ’em. +// The C0 block, except for LF, CR, HT, and w/ the replacement character added, +// are available here. +const values = { + ht: '\t', + lf: '\n', + cr: '\r', + space: ' ', + exclamationMark: '!', + quotationMark: '"', + numberSign: '#', + dollarSign: '$', + percentSign: '%', + ampersand: '&', + apostrophe: "'", + leftParenthesis: '(', + rightParenthesis: ')', + asterisk: '*', + plusSign: '+', + comma: ',', + dash: '-', + dot: '.', + slash: '/', + digit0: '0', + digit1: '1', + digit2: '2', + digit3: '3', + digit4: '4', + digit5: '5', + digit6: '6', + digit7: '7', + digit8: '8', + digit9: '9', + colon: ':', + semicolon: ';', + lessThan: '<', + equalsTo: '=', + greaterThan: '>', + questionMark: '?', + atSign: '@', + uppercaseA: 'A', + uppercaseB: 'B', + uppercaseC: 'C', + uppercaseD: 'D', + uppercaseE: 'E', + uppercaseF: 'F', + uppercaseG: 'G', + uppercaseH: 'H', + uppercaseI: 'I', + uppercaseJ: 'J', + uppercaseK: 'K', + uppercaseL: 'L', + uppercaseM: 'M', + uppercaseN: 'N', + uppercaseO: 'O', + uppercaseP: 'P', + uppercaseQ: 'Q', + uppercaseR: 'R', + uppercaseS: 'S', + uppercaseT: 'T', + uppercaseU: 'U', + uppercaseV: 'V', + uppercaseW: 'W', + uppercaseX: 'X', + uppercaseY: 'Y', + uppercaseZ: 'Z', + leftSquareBracket: '[', + backslash: '\\', + rightSquareBracket: ']', + caret: '^', + underscore: '_', + graveAccent: '`', + lowercaseA: 'a', + lowercaseB: 'b', + lowercaseC: 'c', + lowercaseD: 'd', + lowercaseE: 'e', + lowercaseF: 'f', + lowercaseG: 'g', + lowercaseH: 'h', + lowercaseI: 'i', + lowercaseJ: 'j', + lowercaseK: 'k', + lowercaseL: 'l', + lowercaseM: 'm', + lowercaseN: 'n', + lowercaseO: 'o', + lowercaseP: 'p', + lowercaseQ: 'q', + lowercaseR: 'r', + lowercaseS: 's', + lowercaseT: 't', + lowercaseU: 'u', + lowercaseV: 'v', + lowercaseW: 'w', + lowercaseX: 'x', + lowercaseY: 'y', + lowercaseZ: 'z', + leftCurlyBrace: '{', + verticalBar: '|', + rightCurlyBrace: '}', + tilde: '~', + replacementCharacter: '�' +} + + +/***/ }), + +/***/ "./node_modules/micromark/dev/lib/constructs.js": +/*!******************************************************!*\ + !*** ./node_modules/micromark/dev/lib/constructs.js ***! + \******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "document": () => (/* binding */ document), +/* harmony export */ "contentInitial": () => (/* binding */ contentInitial), +/* harmony export */ "flowInitial": () => (/* binding */ flowInitial), +/* harmony export */ "flow": () => (/* binding */ flow), +/* harmony export */ "string": () => (/* binding */ string), +/* harmony export */ "text": () => (/* binding */ text), +/* harmony export */ "insideSpan": () => (/* binding */ insideSpan), +/* harmony export */ "attentionMarkers": () => (/* binding */ attentionMarkers), +/* harmony export */ "disable": () => (/* binding */ disable) +/* harmony export */ }); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/list.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/block-quote.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/definition.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/code-indented.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/heading-atx.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/thematic-break.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/setext-underline.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/html-flow.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/code-fenced.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/character-reference.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/character-escape.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/line-ending.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/label-start-image.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/attention.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/autolink.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/html-text.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/label-start-link.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/hard-break-escape.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/label-end.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/code-text.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var _initialize_text_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./initialize/text.js */ "./node_modules/micromark/dev/lib/initialize/text.js"); +/** + * @typedef {import('micromark-util-types').Extension} Extension + */ + + + + + +/** @type {Extension['document']} */ +const document = { + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.asterisk]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.plusSign]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.dash]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.digit0]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.digit1]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.digit2]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.digit3]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.digit4]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.digit5]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.digit6]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.digit7]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.digit8]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.digit9]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.list, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.greaterThan]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_2__.blockQuote +} + +/** @type {Extension['contentInitial']} */ +const contentInitial = { + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.leftSquareBracket]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_3__.definition +} + +/** @type {Extension['flowInitial']} */ +const flowInitial = { + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.horizontalTab]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_4__.codeIndented, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.virtualSpace]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_4__.codeIndented, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.space]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_4__.codeIndented +} + +/** @type {Extension['flow']} */ +const flow = { + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.numberSign]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_5__.headingAtx, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.asterisk]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_6__.thematicBreak, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.dash]: [micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_7__.setextUnderline, micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_6__.thematicBreak], + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.lessThan]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_8__.htmlFlow, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.equalsTo]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_7__.setextUnderline, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.underscore]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_6__.thematicBreak, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.graveAccent]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_9__.codeFenced, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.tilde]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_9__.codeFenced +} + +/** @type {Extension['string']} */ +const string = { + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.ampersand]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_10__.characterReference, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.backslash]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_11__.characterEscape +} + +/** @type {Extension['text']} */ +const text = { + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.carriageReturn]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_12__.lineEnding, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.lineFeed]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_12__.lineEnding, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.carriageReturnLineFeed]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_12__.lineEnding, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.exclamationMark]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_13__.labelStartImage, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.ampersand]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_10__.characterReference, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.asterisk]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_14__.attention, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.lessThan]: [micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_15__.autolink, micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_16__.htmlText], + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.leftSquareBracket]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_17__.labelStartLink, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.backslash]: [micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_18__.hardBreakEscape, micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_11__.characterEscape], + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.rightSquareBracket]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_19__.labelEnd, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.underscore]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_14__.attention, + [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.graveAccent]: micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_20__.codeText +} + +/** @type {Extension['insideSpan']} */ +const insideSpan = {null: [micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_14__.attention, _initialize_text_js__WEBPACK_IMPORTED_MODULE_21__.resolver]} + +/** @type {Extension['attentionMarkers']} */ +const attentionMarkers = {null: [micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.asterisk, micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.underscore]} + +/** @type {Extension['disable']} */ +const disable = {null: []} + + +/***/ }), + +/***/ "./node_modules/micromark/dev/lib/create-tokenizer.js": +/*!************************************************************!*\ + !*** ./node_modules/micromark/dev/lib/create-tokenizer.js ***! + \************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "createTokenizer": () => (/* binding */ createTokenizer) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var debug__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! debug */ "./node_modules/debug/src/browser.js"); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_chunked__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-chunked */ "./node_modules/micromark-util-chunked/dev/index.js"); +/* harmony import */ var micromark_util_resolve_all__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-util-resolve-all */ "./node_modules/micromark-util-resolve-all/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! micromark-util-symbol/values.js */ "./node_modules/micromark-util-symbol/values.js"); +/** + * @typedef {import('micromark-util-types').Code} Code + * @typedef {import('micromark-util-types').Chunk} Chunk + * @typedef {import('micromark-util-types').Point} Point + * @typedef {import('micromark-util-types').Token} Token + * @typedef {import('micromark-util-types').Effects} Effects + * @typedef {import('micromark-util-types').State} State + * @typedef {import('micromark-util-types').Construct} Construct + * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct + * @typedef {import('micromark-util-types').ConstructRecord} ConstructRecord + * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext + * @typedef {import('micromark-util-types').ParseContext} ParseContext + */ + +/** + * @typedef Info + * @property {() => void} restore + * @property {number} from + * + * @callback ReturnHandle + * Handle a successful run. + * @param {Construct} construct + * @param {Info} info + * @returns {void} + */ + + + + + + + + + +const debug = debug__WEBPACK_IMPORTED_MODULE_1__('micromark') + +/** + * Create a tokenizer. + * Tokenizers deal with one type of data (e.g., containers, flow, text). + * The parser is the object dealing with it all. + * `initialize` works like other constructs, except that only its `tokenize` + * function is used, in which case it doesn’t receive an `ok` or `nok`. + * `from` can be given to set the point before the first character, although + * when further lines are indented, they must be set with `defineSkip`. + * + * @param {ParseContext} parser + * @param {InitialConstruct} initialize + * @param {Omit} [from] + * @returns {TokenizeContext} + */ +function createTokenizer(parser, initialize, from) { + /** @type {Point} */ + let point = Object.assign( + from ? Object.assign({}, from) : {line: 1, column: 1, offset: 0}, + {_index: 0, _bufferIndex: -1} + ) + /** @type {Record} */ + const columnStart = {} + /** @type {Construct[]} */ + const resolveAllConstructs = [] + /** @type {Chunk[]} */ + let chunks = [] + /** @type {Token[]} */ + let stack = [] + /** @type {boolean|undefined} */ + let consumed = true + + /** + * Tools used for tokenizing. + * + * @type {Effects} + */ + const effects = { + consume, + enter, + exit, + attempt: constructFactory(onsuccessfulconstruct), + check: constructFactory(onsuccessfulcheck), + interrupt: constructFactory(onsuccessfulcheck, {interrupt: true}) + } + + /** + * State and tools for resolving and serializing. + * + * @type {TokenizeContext} + */ + const context = { + previous: micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.eof, + code: micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.eof, + containerState: {}, + events: [], + parser, + sliceStream, + sliceSerialize, + now, + defineSkip, + write + } + + /** + * The state function. + * + * @type {State|void} + */ + let state = initialize.tokenize.call(context, effects) + + /** + * Track which character we expect to be consumed, to catch bugs. + * + * @type {Code} + */ + let expectedCode + + if (initialize.resolveAll) { + resolveAllConstructs.push(initialize) + } + + return context + + /** @type {TokenizeContext['write']} */ + function write(slice) { + chunks = (0,micromark_util_chunked__WEBPACK_IMPORTED_MODULE_3__.push)(chunks, slice) + + main() + + // Exit if we’re not done, resolve might change stuff. + if (chunks[chunks.length - 1] !== micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.eof) { + return [] + } + + addResult(initialize, 0) + + // Otherwise, resolve, and exit. + context.events = (0,micromark_util_resolve_all__WEBPACK_IMPORTED_MODULE_4__.resolveAll)(resolveAllConstructs, context.events, context) + + return context.events + } + + // + // Tools. + // + + /** @type {TokenizeContext['sliceSerialize']} */ + function sliceSerialize(token, expandTabs) { + return serializeChunks(sliceStream(token), expandTabs) + } + + /** @type {TokenizeContext['sliceStream']} */ + function sliceStream(token) { + return sliceChunks(chunks, token) + } + + /** @type {TokenizeContext['now']} */ + function now() { + return Object.assign({}, point) + } + + /** @type {TokenizeContext['defineSkip']} */ + function defineSkip(value) { + columnStart[value.line] = value.column + accountForPotentialSkip() + debug('position: define skip: `%j`', point) + } + + // + // State management. + // + + /** + * Main loop (note that `_index` and `_bufferIndex` in `point` are modified by + * `consume`). + * Here is where we walk through the chunks, which either include strings of + * several characters, or numerical character codes. + * The reason to do this in a loop instead of a call is so the stack can + * drain. + * + * @returns {void} + */ + function main() { + /** @type {number} */ + let chunkIndex + + while (point._index < chunks.length) { + const chunk = chunks[point._index] + + // If we’re in a buffer chunk, loop through it. + if (typeof chunk === 'string') { + chunkIndex = point._index + + if (point._bufferIndex < 0) { + point._bufferIndex = 0 + } + + while ( + point._index === chunkIndex && + point._bufferIndex < chunk.length + ) { + go(chunk.charCodeAt(point._bufferIndex)) + } + } else { + go(chunk) + } + } + } + + /** + * Deal with one code. + * + * @param {Code} code + * @returns {void} + */ + function go(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(consumed === true, 'expected character to be consumed') + consumed = undefined + debug('main: passing `%s` to %s', code, state && state.name) + expectedCode = code + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(typeof state === 'function', 'expected state') + state = state(code) + } + + /** @type {Effects['consume']} */ + function consume(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === expectedCode, 'expected given code to equal expected code') + + debug('consume: `%s`', code) + + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + consumed === undefined, + 'expected code to not have been consumed: this might be because `return x(code)` instead of `return x` was used' + ) + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + code === null + ? context.events.length === 0 || + context.events[context.events.length - 1][0] === 'exit' + : context.events[context.events.length - 1][0] === 'enter', + 'expected last token to be open' + ) + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_5__.markdownLineEnding)(code)) { + point.line++ + point.column = 1 + point.offset += code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.carriageReturnLineFeed ? 2 : 1 + accountForPotentialSkip() + debug('position: after eol: `%j`', point) + } else if (code !== micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.virtualSpace) { + point.column++ + point.offset++ + } + + // Not in a string chunk. + if (point._bufferIndex < 0) { + point._index++ + } else { + point._bufferIndex++ + + // At end of string chunk. + // @ts-expect-error Points w/ non-negative `_bufferIndex` reference + // strings. + if (point._bufferIndex === chunks[point._index].length) { + point._bufferIndex = -1 + point._index++ + } + } + + // Expose the previous character. + context.previous = code + + // Mark as consumed. + consumed = true + } + + /** @type {Effects['enter']} */ + function enter(type, fields) { + /** @type {Token} */ + // @ts-expect-error Patch instead of assign required fields to help GC. + const token = fields || {} + token.type = type + token.start = now() + + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(typeof type === 'string', 'expected string type') + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(type.length > 0, 'expected non-empty string') + debug('enter: `%s`', type) + + context.events.push(['enter', token, context]) + + stack.push(token) + + return token + } + + /** @type {Effects['exit']} */ + function exit(type) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(typeof type === 'string', 'expected string type') + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(type.length > 0, 'expected non-empty string') + + const token = stack.pop() + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(token, 'cannot close w/o open tokens') + token.end = now() + + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(type === token.type, 'expected exit token to match current token') + + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + !( + token.start._index === token.end._index && + token.start._bufferIndex === token.end._bufferIndex + ), + 'expected non-empty token (`' + type + '`)' + ) + + debug('exit: `%s`', token.type) + context.events.push(['exit', token, context]) + + return token + } + + /** + * Use results. + * + * @type {ReturnHandle} + */ + function onsuccessfulconstruct(construct, info) { + addResult(construct, info.from) + } + + /** + * Discard results. + * + * @type {ReturnHandle} + */ + function onsuccessfulcheck(_, info) { + info.restore() + } + + /** + * Factory to attempt/check/interrupt. + * + * @param {ReturnHandle} onreturn + * @param {Record} [fields] + */ + function constructFactory(onreturn, fields) { + return hook + + /** + * Handle either an object mapping codes to constructs, a list of + * constructs, or a single construct. + * + * @param {Construct|Construct[]|ConstructRecord} constructs + * @param {State} returnState + * @param {State} [bogusState] + * @returns {State} + */ + function hook(constructs, returnState, bogusState) { + /** @type {Construct[]} */ + let listOfConstructs + /** @type {number} */ + let constructIndex + /** @type {Construct} */ + let currentConstruct + /** @type {Info} */ + let info + + return Array.isArray(constructs) + ? /* c8 ignore next 1 */ + handleListOfConstructs(constructs) + : 'tokenize' in constructs + ? // @ts-expect-error Looks like a construct. + handleListOfConstructs([constructs]) + : handleMapOfConstructs(constructs) + + /** + * Handle a list of construct. + * + * @param {ConstructRecord} map + * @returns {State} + */ + function handleMapOfConstructs(map) { + return start + + /** @type {State} */ + function start(code) { + const def = code !== null && map[code] + const all = code !== null && map.null + const list = [ + // To do: add more extension tests. + /* c8 ignore next 2 */ + ...(Array.isArray(def) ? def : def ? [def] : []), + ...(Array.isArray(all) ? all : all ? [all] : []) + ] + + return handleListOfConstructs(list)(code) + } + } + + /** + * Handle a list of construct. + * + * @param {Construct[]} list + * @returns {State} + */ + function handleListOfConstructs(list) { + listOfConstructs = list + constructIndex = 0 + + if (list.length === 0) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(bogusState, 'expected `bogusState` to be given') + return bogusState + } + + return handleConstruct(list[constructIndex]) + } + + /** + * Handle a single construct. + * + * @param {Construct} construct + * @returns {State} + */ + function handleConstruct(construct) { + return start + + /** @type {State} */ + function start(code) { + // To do: not needed to store if there is no bogus state, probably? + // Currently doesn’t work because `inspect` in document does a check + // w/o a bogus, which doesn’t make sense. But it does seem to help perf + // by not storing. + info = store() + currentConstruct = construct + + if (!construct.partial) { + context.currentConstruct = construct + } + + if ( + construct.name && + context.parser.constructs.disable.null.includes(construct.name) + ) { + return nok(code) + } + + return construct.tokenize.call( + // If we do have fields, create an object w/ `context` as its + // prototype. + // This allows a “live binding”, which is needed for `interrupt`. + fields ? Object.assign(Object.create(context), fields) : context, + effects, + ok, + nok + )(code) + } + } + + /** @type {State} */ + function ok(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === expectedCode, 'expected code') + consumed = true + onreturn(currentConstruct, info) + return returnState + } + + /** @type {State} */ + function nok(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(code === expectedCode, 'expected code') + consumed = true + info.restore() + + if (++constructIndex < listOfConstructs.length) { + return handleConstruct(listOfConstructs[constructIndex]) + } + + return bogusState + } + } + } + + /** + * @param {Construct} construct + * @param {number} from + * @returns {void} + */ + function addResult(construct, from) { + if (construct.resolveAll && !resolveAllConstructs.includes(construct)) { + resolveAllConstructs.push(construct) + } + + if (construct.resolve) { + (0,micromark_util_chunked__WEBPACK_IMPORTED_MODULE_3__.splice)( + context.events, + from, + context.events.length - from, + construct.resolve(context.events.slice(from), context) + ) + } + + if (construct.resolveTo) { + context.events = construct.resolveTo(context.events, context) + } + + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + construct.partial || + context.events.length === 0 || + context.events[context.events.length - 1][0] === 'exit', + 'expected last token to end' + ) + } + + /** + * Store state. + * + * @returns {Info} + */ + function store() { + const startPoint = now() + const startPrevious = context.previous + const startCurrentConstruct = context.currentConstruct + const startEventsIndex = context.events.length + const startStack = Array.from(stack) + + return {restore, from: startEventsIndex} + + /** + * Restore state. + * + * @returns {void} + */ + function restore() { + point = startPoint + context.previous = startPrevious + context.currentConstruct = startCurrentConstruct + context.events.length = startEventsIndex + stack = startStack + accountForPotentialSkip() + debug('position: restore: `%j`', point) + } + } + + /** + * Move the current point a bit forward in the line when it’s on a column + * skip. + * + * @returns {void} + */ + function accountForPotentialSkip() { + if (point.line in columnStart && point.column < 2) { + point.column = columnStart[point.line] + point.offset += columnStart[point.line] - 1 + } + } +} + +/** + * Get the chunks from a slice of chunks in the range of a token. + * + * @param {Chunk[]} chunks + * @param {Pick} token + * @returns {Chunk[]} + */ +function sliceChunks(chunks, token) { + const startIndex = token.start._index + const startBufferIndex = token.start._bufferIndex + const endIndex = token.end._index + const endBufferIndex = token.end._bufferIndex + /** @type {Chunk[]} */ + let view + + if (startIndex === endIndex) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(endBufferIndex > -1, 'expected non-negative end buffer index') + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(startBufferIndex > -1, 'expected non-negative start buffer index') + // @ts-expect-error `_bufferIndex` is used on string chunks. + view = [chunks[startIndex].slice(startBufferIndex, endBufferIndex)] + } else { + view = chunks.slice(startIndex, endIndex) + + if (startBufferIndex > -1) { + // @ts-expect-error `_bufferIndex` is used on string chunks. + view[0] = view[0].slice(startBufferIndex) + } + + if (endBufferIndex > 0) { + // @ts-expect-error `_bufferIndex` is used on string chunks. + view.push(chunks[endIndex].slice(0, endBufferIndex)) + } + } + + return view +} + +/** + * Get the string value of a slice of chunks. + * + * @param {Chunk[]} chunks + * @param {boolean} [expandTabs=false] + * @returns {string} + */ +function serializeChunks(chunks, expandTabs) { + let index = -1 + /** @type {string[]} */ + const result = [] + /** @type {boolean|undefined} */ + let atTab + + while (++index < chunks.length) { + const chunk = chunks[index] + /** @type {string} */ + let value + + if (typeof chunk === 'string') { + value = chunk + } else + switch (chunk) { + case micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.carriageReturn: { + value = micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_6__.values.cr + + break + } + + case micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.lineFeed: { + value = micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_6__.values.lf + + break + } + + case micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.carriageReturnLineFeed: { + value = micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_6__.values.cr + micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_6__.values.lf + + break + } + + case micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.horizontalTab: { + value = expandTabs ? micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_6__.values.space : micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_6__.values.ht + + break + } + + case micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.virtualSpace: { + if (!expandTabs && atTab) continue + value = micromark_util_symbol_values_js__WEBPACK_IMPORTED_MODULE_6__.values.space + + break + } + + default: { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(typeof chunk === 'number', 'expected number') + // Currently only replacement character. + value = String.fromCharCode(chunk) + } + } + + atTab = chunk === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_2__.codes.horizontalTab + result.push(value) + } + + return result.join('') +} + + +/***/ }), + +/***/ "./node_modules/micromark/dev/lib/initialize/content.js": +/*!**************************************************************!*\ + !*** ./node_modules/micromark/dev/lib/initialize/content.js ***! + \**************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "content": () => (/* binding */ content) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var micromark_factory_space__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-factory-space */ "./node_modules/micromark-factory-space/dev/index.js"); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct + * @typedef {import('micromark-util-types').Initializer} Initializer + * @typedef {import('micromark-util-types').Token} Token + * @typedef {import('micromark-util-types').State} State + */ + + + + + + + + +/** @type {InitialConstruct} */ +const content = {tokenize: initializeContent} + +/** @type {Initializer} */ +function initializeContent(effects) { + const contentStart = effects.attempt( + this.parser.constructs.contentInitial, + afterContentStartConstruct, + paragraphInitial + ) + /** @type {Token} */ + let previous + + return contentStart + + /** @type {State} */ + function afterContentStartConstruct(code) { + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof || (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_2__.markdownLineEnding)(code), + 'expected eol or eof' + ) + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof) { + effects.consume(code) + return + } + + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.lineEnding) + effects.consume(code) + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.lineEnding) + return (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_4__.factorySpace)(effects, contentStart, micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.linePrefix) + } + + /** @type {State} */ + function paragraphInitial(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + code !== micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof && !(0,micromark_util_character__WEBPACK_IMPORTED_MODULE_2__.markdownLineEnding)(code), + 'expected anything other than a line ending or EOF' + ) + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.paragraph) + return lineStart(code) + } + + /** @type {State} */ + function lineStart(code) { + const token = effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.chunkText, { + contentType: micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_5__.constants.contentTypeText, + previous + }) + + if (previous) { + previous.next = token + } + + previous = token + + return data(code) + } + + /** @type {State} */ + function data(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_1__.codes.eof) { + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.chunkText) + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.paragraph) + effects.consume(code) + return + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_2__.markdownLineEnding)(code)) { + effects.consume(code) + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_3__.types.chunkText) + return lineStart + } + + // Data. + effects.consume(code) + return data + } +} + + +/***/ }), + +/***/ "./node_modules/micromark/dev/lib/initialize/document.js": +/*!***************************************************************!*\ + !*** ./node_modules/micromark/dev/lib/initialize/document.js ***! + \***************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "document": () => (/* binding */ document) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var micromark_factory_space__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! micromark-factory-space */ "./node_modules/micromark-factory-space/dev/index.js"); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/* harmony import */ var micromark_util_chunked__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-chunked */ "./node_modules/micromark-util-chunked/dev/index.js"); +/** + * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct + * @typedef {import('micromark-util-types').Initializer} Initializer + * @typedef {import('micromark-util-types').Construct} Construct + * @typedef {import('micromark-util-types').TokenizeContext} TokenizeContext + * @typedef {import('micromark-util-types').Tokenizer} Tokenizer + * @typedef {import('micromark-util-types').Token} Token + * @typedef {import('micromark-util-types').State} State + * @typedef {import('micromark-util-types').Point} Point + */ + +/** + * @typedef {Record} StackState + * @typedef {[Construct, StackState]} StackItem + */ + + + + + + + + + +/** @type {InitialConstruct} */ +const document = {tokenize: initializeDocument} + +/** @type {Construct} */ +const containerConstruct = {tokenize: tokenizeContainer} + +/** @type {Initializer} */ +function initializeDocument(effects) { + const self = this + /** @type {StackItem[]} */ + const stack = [] + let continued = 0 + /** @type {TokenizeContext|undefined} */ + let childFlow + /** @type {Token|undefined} */ + let childToken + /** @type {number} */ + let lineStartOffset + + return start + + /** @type {State} */ + function start(code) { + // First we iterate through the open blocks, starting with the root + // document, and descending through last children down to the last open + // block. + // Each block imposes a condition that the line must satisfy if the block is + // to remain open. + // For example, a block quote requires a `>` character. + // A paragraph requires a non-blank line. + // In this phase we may match all or just some of the open blocks. + // But we cannot close unmatched blocks yet, because we may have a lazy + // continuation line. + if (continued < stack.length) { + const item = stack[continued] + self.containerState = item[1] + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + item[0].continuation, + 'expected `continuation` to be defined on container construct' + ) + return effects.attempt( + item[0].continuation, + documentContinue, + checkNewContainers + )(code) + } + + // Done. + return checkNewContainers(code) + } + + /** @type {State} */ + function documentContinue(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + self.containerState, + 'expected `containerState` to be defined after continuation' + ) + + continued++ + + // Note: this field is called `_closeFlow` but it also closes containers. + // Perhaps a good idea to rename it but it’s already used in the wild by + // extensions. + if (self.containerState._closeFlow) { + self.containerState._closeFlow = undefined + + if (childFlow) { + closeFlow() + } + + // Note: this algorithm for moving events around is similar to the + // algorithm when dealing with lazy lines in `writeToChild`. + const indexBeforeExits = self.events.length + let indexBeforeFlow = indexBeforeExits + /** @type {Point|undefined} */ + let point + + // Find the flow chunk. + while (indexBeforeFlow--) { + if ( + self.events[indexBeforeFlow][0] === 'exit' && + self.events[indexBeforeFlow][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.chunkFlow + ) { + point = self.events[indexBeforeFlow][1].end + break + } + } + + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(point, 'could not find previous flow chunk') + + exitContainers(continued) + + // Fix positions. + let index = indexBeforeExits + + while (index < self.events.length) { + self.events[index][1].end = Object.assign({}, point) + index++ + } + + // Inject the exits earlier (they’re still also at the end). + (0,micromark_util_chunked__WEBPACK_IMPORTED_MODULE_2__.splice)( + self.events, + indexBeforeFlow + 1, + 0, + self.events.slice(indexBeforeExits) + ) + + // Discard the duplicate exits. + self.events.length = index + + return checkNewContainers(code) + } + + return start(code) + } + + /** @type {State} */ + function checkNewContainers(code) { + // Next, after consuming the continuation markers for existing blocks, we + // look for new block starts (e.g. `>` for a block quote). + // If we encounter a new block start, we close any blocks unmatched in + // step 1 before creating the new block as a child of the last matched + // block. + if (continued === stack.length) { + // No need to `check` whether there’s a container, of `exitContainers` + // would be moot. + // We can instead immediately `attempt` to parse one. + if (!childFlow) { + return documentContinued(code) + } + + // If we have concrete content, such as block HTML or fenced code, + // we can’t have containers “pierce” into them, so we can immediately + // start. + if (childFlow.currentConstruct && childFlow.currentConstruct.concrete) { + return flowStart(code) + } + + // If we do have flow, it could still be a blank line, + // but we’d be interrupting it w/ a new container if there’s a current + // construct. + self.interrupt = Boolean( + childFlow.currentConstruct && !childFlow._gfmTableDynamicInterruptHack + ) + } + + // Check if there is a new container. + self.containerState = {} + return effects.check( + containerConstruct, + thereIsANewContainer, + thereIsNoNewContainer + )(code) + } + + /** @type {State} */ + function thereIsANewContainer(code) { + if (childFlow) closeFlow() + exitContainers(continued) + return documentContinued(code) + } + + /** @type {State} */ + function thereIsNoNewContainer(code) { + self.parser.lazy[self.now().line] = continued !== stack.length + lineStartOffset = self.now().offset + return flowStart(code) + } + + /** @type {State} */ + function documentContinued(code) { + // Try new containers. + self.containerState = {} + return effects.attempt( + containerConstruct, + containerContinue, + flowStart + )(code) + } + + /** @type {State} */ + function containerContinue(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + self.currentConstruct, + 'expected `currentConstruct` to be defined on tokenizer' + ) + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + self.containerState, + 'expected `containerState` to be defined on tokenizer' + ) + continued++ + stack.push([self.currentConstruct, self.containerState]) + // Try another. + return documentContinued(code) + } + + /** @type {State} */ + function flowStart(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof) { + if (childFlow) closeFlow() + exitContainers(0) + effects.consume(code) + return + } + + childFlow = childFlow || self.parser.flow(self.now()) + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.chunkFlow, { + contentType: micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_4__.constants.contentTypeFlow, + previous: childToken, + _tokenizer: childFlow + }) + + return flowContinue(code) + } + + /** @type {State} */ + function flowContinue(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof) { + writeToChild(effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.chunkFlow), true) + exitContainers(0) + effects.consume(code) + return + } + + if ((0,micromark_util_character__WEBPACK_IMPORTED_MODULE_5__.markdownLineEnding)(code)) { + effects.consume(code) + writeToChild(effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.chunkFlow)) + // Get ready for the next line. + continued = 0 + self.interrupt = undefined + return start + } + + effects.consume(code) + return flowContinue + } + + /** + * @param {Token} token + * @param {boolean} [eof] + * @returns {void} + */ + function writeToChild(token, eof) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(childFlow, 'expected `childFlow` to be defined when continuing') + const stream = self.sliceStream(token) + if (eof) stream.push(null) + token.previous = childToken + if (childToken) childToken.next = token + childToken = token + childFlow.defineSkip(token.start) + childFlow.write(stream) + + // Alright, so we just added a lazy line: + // + // ```markdown + // > a + // b. + // + // Or: + // + // > ~~~c + // d + // + // Or: + // + // > | e | + // f + // ``` + // + // The construct in the second example (fenced code) does not accept lazy + // lines, so it marked itself as done at the end of its first line, and + // then the content construct parses `d`. + // Most constructs in markdown match on the first line: if the first line + // forms a construct, a non-lazy line can’t “unmake” it. + // + // The construct in the third example is potentially a GFM table, and + // those are *weird*. + // It *could* be a table, from the first line, if the following line + // matches a condition. + // In this case, that second line is lazy, which “unmakes” the first line + // and turns the whole into one content block. + // + // We’ve now parsed the non-lazy and the lazy line, and can figure out + // whether the lazy line started a new flow block. + // If it did, we exit the current containers between the two flow blocks. + if (self.parser.lazy[token.start.line]) { + let index = childFlow.events.length + + while (index--) { + if ( + // The token starts before the line ending… + childFlow.events[index][1].start.offset < lineStartOffset && + // …and either is not ended yet… + (!childFlow.events[index][1].end || + // …or ends after it. + childFlow.events[index][1].end.offset > lineStartOffset) + ) { + // Exit: there’s still something open, which means it’s a lazy line + // part of something. + return + } + } + + // Note: this algorithm for moving events around is similar to the + // algorithm when closing flow in `documentContinue`. + const indexBeforeExits = self.events.length + let indexBeforeFlow = indexBeforeExits + /** @type {boolean|undefined} */ + let seen + /** @type {Point|undefined} */ + let point + + // Find the previous chunk (the one before the lazy line). + while (indexBeforeFlow--) { + if ( + self.events[indexBeforeFlow][0] === 'exit' && + self.events[indexBeforeFlow][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.chunkFlow + ) { + if (seen) { + point = self.events[indexBeforeFlow][1].end + break + } + + seen = true + } + } + + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(point, 'could not find previous flow chunk') + + exitContainers(continued) + + // Fix positions. + index = indexBeforeExits + + while (index < self.events.length) { + self.events[index][1].end = Object.assign({}, point) + index++ + } + + // Inject the exits earlier (they’re still also at the end). + (0,micromark_util_chunked__WEBPACK_IMPORTED_MODULE_2__.splice)( + self.events, + indexBeforeFlow + 1, + 0, + self.events.slice(indexBeforeExits) + ) + + // Discard the duplicate exits. + self.events.length = index + } + } + + /** + * @param {number} size + * @returns {void} + */ + function exitContainers(size) { + let index = stack.length + + // Exit open containers. + while (index-- > size) { + const entry = stack[index] + self.containerState = entry[1] + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + entry[0].exit, + 'expected `exit` to be defined on container construct' + ) + entry[0].exit.call(self, effects) + } + + stack.length = size + } + + function closeFlow() { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + self.containerState, + 'expected `containerState` to be defined when closing flow' + ) + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)(childFlow, 'expected `childFlow` to be defined when closing it') + childFlow.write([micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_3__.codes.eof]) + childToken = undefined + childFlow = undefined + self.containerState._closeFlow = undefined + } +} + +/** @type {Tokenizer} */ +function tokenizeContainer(effects, ok, nok) { + return (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_6__.factorySpace)( + effects, + effects.attempt(this.parser.constructs.document, ok, nok), + micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.linePrefix, + this.parser.constructs.disable.null.includes('codeIndented') + ? undefined + : micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_4__.constants.tabSize + ) +} + + +/***/ }), + +/***/ "./node_modules/micromark/dev/lib/initialize/flow.js": +/*!***********************************************************!*\ + !*** ./node_modules/micromark/dev/lib/initialize/flow.js ***! + \***********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "flow": () => (/* binding */ flow) +/* harmony export */ }); +/* harmony import */ var uvu_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! uvu/assert */ "./node_modules/uvu/assert/index.mjs"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/blank-line.js"); +/* harmony import */ var micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! micromark-core-commonmark */ "./node_modules/micromark-core-commonmark/dev/lib/content.js"); +/* harmony import */ var micromark_factory_space__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-factory-space */ "./node_modules/micromark-factory-space/dev/index.js"); +/* harmony import */ var micromark_util_character__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! micromark-util-character */ "./node_modules/micromark-util-character/dev/index.js"); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct + * @typedef {import('micromark-util-types').Initializer} Initializer + * @typedef {import('micromark-util-types').State} State + */ + + + + + + + + +/** @type {InitialConstruct} */ +const flow = {tokenize: initializeFlow} + +/** @type {Initializer} */ +function initializeFlow(effects) { + const self = this + const initial = effects.attempt( + // Try to parse a blank line. + micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_1__.blankLine, + atBlankEnding, + // Try to parse initial flow (essentially, only code). + effects.attempt( + this.parser.constructs.flowInitial, + afterConstruct, + (0,micromark_factory_space__WEBPACK_IMPORTED_MODULE_2__.factorySpace)( + effects, + effects.attempt( + this.parser.constructs.flow, + afterConstruct, + effects.attempt(micromark_core_commonmark__WEBPACK_IMPORTED_MODULE_3__.content, afterConstruct) + ), + micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.linePrefix + ) + ) + ) + + return initial + + /** @type {State} */ + function atBlankEnding(code) { + ;(0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_5__.codes.eof || (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_6__.markdownLineEnding)(code), + 'expected eol or eof' + ) + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_5__.codes.eof) { + effects.consume(code) + return + } + + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.lineEndingBlank) + effects.consume(code) + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.lineEndingBlank) + self.currentConstruct = undefined + return initial + } + + /** @type {State} */ + function afterConstruct(code) { + (0,uvu_assert__WEBPACK_IMPORTED_MODULE_0__.ok)( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_5__.codes.eof || (0,micromark_util_character__WEBPACK_IMPORTED_MODULE_6__.markdownLineEnding)(code), + 'expected eol or eof' + ) + + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_5__.codes.eof) { + effects.consume(code) + return + } + + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.lineEnding) + effects.consume(code) + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_4__.types.lineEnding) + self.currentConstruct = undefined + return initial + } +} + + +/***/ }), + +/***/ "./node_modules/micromark/dev/lib/initialize/text.js": +/*!***********************************************************!*\ + !*** ./node_modules/micromark/dev/lib/initialize/text.js ***! + \***********************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "resolver": () => (/* binding */ resolver), +/* harmony export */ "string": () => (/* binding */ string), +/* harmony export */ "text": () => (/* binding */ text) +/* harmony export */ }); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/* harmony import */ var micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/types.js */ "./node_modules/micromark-util-symbol/types.js"); +/** + * @typedef {import('micromark-util-types').Resolver} Resolver + * @typedef {import('micromark-util-types').Initializer} Initializer + * @typedef {import('micromark-util-types').Construct} Construct + * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct + * @typedef {import('micromark-util-types').State} State + * @typedef {import('micromark-util-types').Code} Code + */ + + + + + +const resolver = {resolveAll: createResolver()} +const string = initializeFactory('string') +const text = initializeFactory('text') + +/** + * @param {'string'|'text'} field + * @returns {InitialConstruct} + */ +function initializeFactory(field) { + return { + tokenize: initializeText, + resolveAll: createResolver( + field === 'text' ? resolveAllLineSuffixes : undefined + ) + } + + /** @type {Initializer} */ + function initializeText(effects) { + const self = this + const constructs = this.parser.constructs[field] + const text = effects.attempt(constructs, start, notText) + + return start + + /** @type {State} */ + function start(code) { + return atBreak(code) ? text(code) : notText(code) + } + + /** @type {State} */ + function notText(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.eof) { + effects.consume(code) + return + } + + effects.enter(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.data) + effects.consume(code) + return data + } + + /** @type {State} */ + function data(code) { + if (atBreak(code)) { + effects.exit(micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.data) + return text(code) + } + + // Data. + effects.consume(code) + return data + } + + /** + * @param {Code} code + * @returns {boolean} + */ + function atBreak(code) { + if (code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.eof) { + return true + } + + const list = constructs[code] + let index = -1 + + if (list) { + while (++index < list.length) { + const item = list[index] + if (!item.previous || item.previous.call(self, self.previous)) { + return true + } + } + } + + return false + } + } +} + +/** + * @param {Resolver} [extraResolver] + * @returns {Resolver} + */ +function createResolver(extraResolver) { + return resolveAllText + + /** @type {Resolver} */ + function resolveAllText(events, context) { + let index = -1 + /** @type {number|undefined} */ + let enter + + // A rather boring computation (to merge adjacent `data` events) which + // improves mm performance by 29%. + while (++index <= events.length) { + if (enter === undefined) { + if (events[index] && events[index][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.data) { + enter = index + index++ + } + } else if (!events[index] || events[index][1].type !== micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.data) { + // Don’t do anything if there is one data token. + if (index !== enter + 2) { + events[enter][1].end = events[index - 1][1].end + events.splice(enter + 2, index - enter - 2) + index = enter + 2 + } + + enter = undefined + } + } + + return extraResolver ? extraResolver(events, context) : events + } +} + +/** + * A rather ugly set of instructions which again looks at chunks in the input + * stream. + * The reason to do this here is that it is *much* faster to parse in reverse. + * And that we can’t hook into `null` to split the line suffix before an EOF. + * To do: figure out if we can make this into a clean utility, or even in core. + * As it will be useful for GFMs literal autolink extension (and maybe even + * tables?) + * + * @type {Resolver} + */ +function resolveAllLineSuffixes(events, context) { + let eventIndex = 0 // Skip first. + + while (++eventIndex <= events.length) { + if ( + (eventIndex === events.length || + events[eventIndex][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineEnding) && + events[eventIndex - 1][1].type === micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.data + ) { + const data = events[eventIndex - 1][1] + const chunks = context.sliceStream(data) + let index = chunks.length + let bufferIndex = -1 + let size = 0 + /** @type {boolean|undefined} */ + let tabs + + while (index--) { + const chunk = chunks[index] + + if (typeof chunk === 'string') { + bufferIndex = chunk.length + + while (chunk.charCodeAt(bufferIndex - 1) === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.space) { + size++ + bufferIndex-- + } + + if (bufferIndex) break + bufferIndex = -1 + } + // Number + else if (chunk === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.horizontalTab) { + tabs = true + size++ + } else if (chunk === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.virtualSpace) { + // Empty + } else { + // Replacement character, exit. + index++ + break + } + } + + if (size) { + const token = { + type: + eventIndex === events.length || + tabs || + size < micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_2__.constants.hardBreakPrefixSizeMin + ? micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.lineSuffix + : micromark_util_symbol_types_js__WEBPACK_IMPORTED_MODULE_1__.types.hardBreakTrailing, + start: { + line: data.end.line, + column: data.end.column - size, + offset: data.end.offset - size, + _index: data.start._index + index, + _bufferIndex: index + ? bufferIndex + : data.start._bufferIndex + bufferIndex + }, + end: Object.assign({}, data.end) + } + + data.end = Object.assign({}, token.start) + + if (data.start.offset === data.end.offset) { + Object.assign(data, token) + } else { + events.splice( + eventIndex, + 0, + ['enter', token, context], + ['exit', token, context] + ) + eventIndex += 2 + } + } + + eventIndex++ + } + } + + return events +} + + +/***/ }), + +/***/ "./node_modules/micromark/dev/lib/parse.js": +/*!*************************************************!*\ + !*** ./node_modules/micromark/dev/lib/parse.js ***! + \*************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "parse": () => (/* binding */ parse) +/* harmony export */ }); +/* harmony import */ var micromark_util_combine_extensions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-combine-extensions */ "./node_modules/micromark-util-combine-extensions/index.js"); +/* harmony import */ var _initialize_content_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./initialize/content.js */ "./node_modules/micromark/dev/lib/initialize/content.js"); +/* harmony import */ var _initialize_document_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./initialize/document.js */ "./node_modules/micromark/dev/lib/initialize/document.js"); +/* harmony import */ var _initialize_flow_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./initialize/flow.js */ "./node_modules/micromark/dev/lib/initialize/flow.js"); +/* harmony import */ var _initialize_text_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./initialize/text.js */ "./node_modules/micromark/dev/lib/initialize/text.js"); +/* harmony import */ var _create_tokenizer_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./create-tokenizer.js */ "./node_modules/micromark/dev/lib/create-tokenizer.js"); +/* harmony import */ var _constructs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constructs.js */ "./node_modules/micromark/dev/lib/constructs.js"); +/** + * @typedef {import('micromark-util-types').InitialConstruct} InitialConstruct + * @typedef {import('micromark-util-types').FullNormalizedExtension} FullNormalizedExtension + * @typedef {import('micromark-util-types').ParseOptions} ParseOptions + * @typedef {import('micromark-util-types').ParseContext} ParseContext + * @typedef {import('micromark-util-types').Create} Create + */ + + + + + + + + + +/** + * @param {ParseOptions} [options] + * @returns {ParseContext} + */ +function parse(options = {}) { + /** @type {FullNormalizedExtension} */ + // @ts-expect-error `defaultConstructs` is full, so the result will be too. + const constructs = (0,micromark_util_combine_extensions__WEBPACK_IMPORTED_MODULE_0__.combineExtensions)( + // @ts-expect-error Same as above. + [_constructs_js__WEBPACK_IMPORTED_MODULE_1__].concat(options.extensions || []) + ) + /** @type {ParseContext} */ + const parser = { + defined: [], + lazy: {}, + constructs, + content: create(_initialize_content_js__WEBPACK_IMPORTED_MODULE_2__.content), + document: create(_initialize_document_js__WEBPACK_IMPORTED_MODULE_3__.document), + flow: create(_initialize_flow_js__WEBPACK_IMPORTED_MODULE_4__.flow), + string: create(_initialize_text_js__WEBPACK_IMPORTED_MODULE_5__.string), + text: create(_initialize_text_js__WEBPACK_IMPORTED_MODULE_5__.text) + } + + return parser + + /** + * @param {InitialConstruct} initial + */ + function create(initial) { + return creator + /** @type {Create} */ + function creator(from) { + return (0,_create_tokenizer_js__WEBPACK_IMPORTED_MODULE_6__.createTokenizer)(parser, initial, from) + } + } +} + + +/***/ }), + +/***/ "./node_modules/micromark/dev/lib/postprocess.js": +/*!*******************************************************!*\ + !*** ./node_modules/micromark/dev/lib/postprocess.js ***! + \*******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "postprocess": () => (/* binding */ postprocess) +/* harmony export */ }); +/* harmony import */ var micromark_util_subtokenize__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-subtokenize */ "./node_modules/micromark-util-subtokenize/dev/index.js"); +/** + * @typedef {import('micromark-util-types').Event} Event + */ + + + +/** + * @param {Event[]} events + * @returns {Event[]} + */ +function postprocess(events) { + while (!(0,micromark_util_subtokenize__WEBPACK_IMPORTED_MODULE_0__.subtokenize)(events)) { + // Empty + } + + return events +} + + +/***/ }), + +/***/ "./node_modules/micromark/dev/lib/preprocess.js": +/*!******************************************************!*\ + !*** ./node_modules/micromark/dev/lib/preprocess.js ***! + \******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "preprocess": () => (/* binding */ preprocess) +/* harmony export */ }); +/* harmony import */ var micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! micromark-util-symbol/codes.js */ "./node_modules/micromark-util-symbol/codes.js"); +/* harmony import */ var micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! micromark-util-symbol/constants.js */ "./node_modules/micromark-util-symbol/constants.js"); +/** + * @typedef {import('micromark-util-types').Encoding} Encoding + * @typedef {import('micromark-util-types').Value} Value + * @typedef {import('micromark-util-types').Chunk} Chunk + * @typedef {import('micromark-util-types').Code} Code + */ + +/** + * @callback Preprocessor + * @param {Value} value + * @param {Encoding} [encoding] + * @param {boolean} [end=false] + * @returns {Chunk[]} + */ + + + + +const search = /[\0\t\n\r]/g + +/** + * @returns {Preprocessor} + */ +function preprocess() { + let column = 1 + let buffer = '' + /** @type {boolean|undefined} */ + let start = true + /** @type {boolean|undefined} */ + let atCarriageReturn + + return preprocessor + + /** @type {Preprocessor} */ + function preprocessor(value, encoding, end) { + /** @type {Chunk[]} */ + const chunks = [] + /** @type {RegExpMatchArray|null} */ + let match + /** @type {number} */ + let next + /** @type {number} */ + let startPosition + /** @type {number} */ + let endPosition + /** @type {Code} */ + let code + + // @ts-expect-error `Buffer` does allow an encoding. + value = buffer + value.toString(encoding) + startPosition = 0 + buffer = '' + + if (start) { + if (value.charCodeAt(0) === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.byteOrderMarker) { + startPosition++ + } + + start = undefined + } + + while (startPosition < value.length) { + search.lastIndex = startPosition + match = search.exec(value) + endPosition = + match && match.index !== undefined ? match.index : value.length + code = value.charCodeAt(endPosition) + + if (!match) { + buffer = value.slice(startPosition) + break + } + + if ( + code === micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.lf && + startPosition === endPosition && + atCarriageReturn + ) { + chunks.push(micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.carriageReturnLineFeed) + atCarriageReturn = undefined + } else { + if (atCarriageReturn) { + chunks.push(micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.carriageReturn) + atCarriageReturn = undefined + } + + if (startPosition < endPosition) { + chunks.push(value.slice(startPosition, endPosition)) + column += endPosition - startPosition + } + + switch (code) { + case micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.nul: { + chunks.push(micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.replacementCharacter) + column++ + + break + } + + case micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.ht: { + next = Math.ceil(column / micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_1__.constants.tabSize) * micromark_util_symbol_constants_js__WEBPACK_IMPORTED_MODULE_1__.constants.tabSize + chunks.push(micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.horizontalTab) + while (column++ < next) chunks.push(micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.virtualSpace) + + break + } + + case micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.lf: { + chunks.push(micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.lineFeed) + column = 1 + + break + } + + default: { + atCarriageReturn = true + column = 1 + } + } + } + + startPosition = endPosition + 1 + } + + if (end) { + if (atCarriageReturn) chunks.push(micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.carriageReturn) + if (buffer) chunks.push(buffer) + chunks.push(micromark_util_symbol_codes_js__WEBPACK_IMPORTED_MODULE_0__.codes.eof) + } + + return chunks + } +} + + +/***/ }), + +/***/ "./node_modules/property-information/index.js": +/*!****************************************************!*\ + !*** ./node_modules/property-information/index.js ***! + \****************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "find": () => (/* reexport safe */ _lib_find_js__WEBPACK_IMPORTED_MODULE_0__.find), +/* harmony export */ "hastToReact": () => (/* reexport safe */ _lib_hast_to_react_js__WEBPACK_IMPORTED_MODULE_1__.hastToReact), +/* harmony export */ "normalize": () => (/* reexport safe */ _lib_normalize_js__WEBPACK_IMPORTED_MODULE_2__.normalize), +/* harmony export */ "html": () => (/* binding */ html), +/* harmony export */ "svg": () => (/* binding */ svg) +/* harmony export */ }); +/* harmony import */ var _lib_util_merge_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/util/merge.js */ "./node_modules/property-information/lib/util/merge.js"); +/* harmony import */ var _lib_xlink_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/xlink.js */ "./node_modules/property-information/lib/xlink.js"); +/* harmony import */ var _lib_xml_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lib/xml.js */ "./node_modules/property-information/lib/xml.js"); +/* harmony import */ var _lib_xmlns_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/xmlns.js */ "./node_modules/property-information/lib/xmlns.js"); +/* harmony import */ var _lib_aria_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./lib/aria.js */ "./node_modules/property-information/lib/aria.js"); +/* harmony import */ var _lib_html_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./lib/html.js */ "./node_modules/property-information/lib/html.js"); +/* harmony import */ var _lib_svg_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./lib/svg.js */ "./node_modules/property-information/lib/svg.js"); +/* harmony import */ var _lib_find_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/find.js */ "./node_modules/property-information/lib/find.js"); +/* harmony import */ var _lib_hast_to_react_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/hast-to-react.js */ "./node_modules/property-information/lib/hast-to-react.js"); +/* harmony import */ var _lib_normalize_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./lib/normalize.js */ "./node_modules/property-information/lib/normalize.js"); +/** + * @typedef {import('./lib/util/info.js').Info} Info + * @typedef {import('./lib/util/schema.js').Schema} Schema + */ + + + + + + + + + + + + +const html = (0,_lib_util_merge_js__WEBPACK_IMPORTED_MODULE_3__.merge)([_lib_xml_js__WEBPACK_IMPORTED_MODULE_4__.xml, _lib_xlink_js__WEBPACK_IMPORTED_MODULE_5__.xlink, _lib_xmlns_js__WEBPACK_IMPORTED_MODULE_6__.xmlns, _lib_aria_js__WEBPACK_IMPORTED_MODULE_7__.aria, _lib_html_js__WEBPACK_IMPORTED_MODULE_8__.html], 'html') +const svg = (0,_lib_util_merge_js__WEBPACK_IMPORTED_MODULE_3__.merge)([_lib_xml_js__WEBPACK_IMPORTED_MODULE_4__.xml, _lib_xlink_js__WEBPACK_IMPORTED_MODULE_5__.xlink, _lib_xmlns_js__WEBPACK_IMPORTED_MODULE_6__.xmlns, _lib_aria_js__WEBPACK_IMPORTED_MODULE_7__.aria, _lib_svg_js__WEBPACK_IMPORTED_MODULE_9__.svg], 'svg') + + +/***/ }), + +/***/ "./node_modules/property-information/lib/aria.js": +/*!*******************************************************!*\ + !*** ./node_modules/property-information/lib/aria.js ***! + \*******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "aria": () => (/* binding */ aria) +/* harmony export */ }); +/* harmony import */ var _util_types_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util/types.js */ "./node_modules/property-information/lib/util/types.js"); +/* harmony import */ var _util_create_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util/create.js */ "./node_modules/property-information/lib/util/create.js"); + + + +const aria = (0,_util_create_js__WEBPACK_IMPORTED_MODULE_0__.create)({ + transform(_, prop) { + return prop === 'role' ? prop : 'aria-' + prop.slice(4).toLowerCase() + }, + properties: { + ariaActiveDescendant: null, + ariaAtomic: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaAutoComplete: null, + ariaBusy: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaChecked: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaColCount: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaColIndex: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaColSpan: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaControls: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.spaceSeparated, + ariaCurrent: null, + ariaDescribedBy: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.spaceSeparated, + ariaDetails: null, + ariaDisabled: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaDropEffect: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.spaceSeparated, + ariaErrorMessage: null, + ariaExpanded: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaFlowTo: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.spaceSeparated, + ariaGrabbed: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaHasPopup: null, + ariaHidden: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaInvalid: null, + ariaKeyShortcuts: null, + ariaLabel: null, + ariaLabelledBy: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.spaceSeparated, + ariaLevel: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaLive: null, + ariaModal: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaMultiLine: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaMultiSelectable: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaOrientation: null, + ariaOwns: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.spaceSeparated, + ariaPlaceholder: null, + ariaPosInSet: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaPressed: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaReadOnly: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaRelevant: null, + ariaRequired: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaRoleDescription: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.spaceSeparated, + ariaRowCount: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaRowIndex: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaRowSpan: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaSelected: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.booleanish, + ariaSetSize: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaSort: null, + ariaValueMax: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaValueMin: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaValueNow: _util_types_js__WEBPACK_IMPORTED_MODULE_1__.number, + ariaValueText: null, + role: null + } +}) + + +/***/ }), + +/***/ "./node_modules/property-information/lib/find.js": +/*!*******************************************************!*\ + !*** ./node_modules/property-information/lib/find.js ***! + \*******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "find": () => (/* binding */ find) +/* harmony export */ }); +/* harmony import */ var _normalize_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./normalize.js */ "./node_modules/property-information/lib/normalize.js"); +/* harmony import */ var _util_defined_info_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./util/defined-info.js */ "./node_modules/property-information/lib/util/defined-info.js"); +/* harmony import */ var _util_info_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util/info.js */ "./node_modules/property-information/lib/util/info.js"); +/** + * @typedef {import('./util/schema.js').Schema} Schema + */ + + + + + +const valid = /^data[-\w.:]+$/i +const dash = /-[a-z]/g +const cap = /[A-Z]/g + +/** + * @param {Schema} schema + * @param {string} value + * @returns {Info} + */ +function find(schema, value) { + const normal = (0,_normalize_js__WEBPACK_IMPORTED_MODULE_0__.normalize)(value) + let prop = value + let Type = _util_info_js__WEBPACK_IMPORTED_MODULE_1__.Info + + if (normal in schema.normal) { + return schema.property[schema.normal[normal]] + } + + if (normal.length > 4 && normal.slice(0, 4) === 'data' && valid.test(value)) { + // Attribute or property. + if (value.charAt(4) === '-') { + // Turn it into a property. + const rest = value.slice(5).replace(dash, camelcase) + prop = 'data' + rest.charAt(0).toUpperCase() + rest.slice(1) + } else { + // Turn it into an attribute. + const rest = value.slice(4) + + if (!dash.test(rest)) { + let dashes = rest.replace(cap, kebab) + + if (dashes.charAt(0) !== '-') { + dashes = '-' + dashes + } + + value = 'data' + dashes + } + } + + Type = _util_defined_info_js__WEBPACK_IMPORTED_MODULE_2__.DefinedInfo + } + + return new Type(prop, value) +} + +/** + * @param {string} $0 + * @returns {string} + */ +function kebab($0) { + return '-' + $0.toLowerCase() +} + +/** + * @param {string} $0 + * @returns {string} + */ +function camelcase($0) { + return $0.charAt(1).toUpperCase() +} + + +/***/ }), + +/***/ "./node_modules/property-information/lib/hast-to-react.js": +/*!****************************************************************!*\ + !*** ./node_modules/property-information/lib/hast-to-react.js ***! + \****************************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "hastToReact": () => (/* binding */ hastToReact) +/* harmony export */ }); +const hastToReact = { + classId: 'classID', + dataType: 'datatype', + itemId: 'itemID', + strokeDashArray: 'strokeDasharray', + strokeDashOffset: 'strokeDashoffset', + strokeLineCap: 'strokeLinecap', + strokeLineJoin: 'strokeLinejoin', + strokeMiterLimit: 'strokeMiterlimit', + typeOf: 'typeof', + xLinkActuate: 'xlinkActuate', + xLinkArcRole: 'xlinkArcrole', + xLinkHref: 'xlinkHref', + xLinkRole: 'xlinkRole', + xLinkShow: 'xlinkShow', + xLinkTitle: 'xlinkTitle', + xLinkType: 'xlinkType', + xmlnsXLink: 'xmlnsXlink' +} + + +/***/ }), + +/***/ "./node_modules/property-information/lib/html.js": +/*!*******************************************************!*\ + !*** ./node_modules/property-information/lib/html.js ***! + \*******************************************************/ +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "html": () => (/* binding */ html) +/* harmony export */ }); +/* harmony import */ var _util_types_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./util/types.js */ "./node_modules/property-information/lib/util/types.js"); +/* harmony import */ var _util_create_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util/create.js */ "./node_modules/property-information/lib/util/create.js"); +/* harmony import */ var _util_case_insensitive_transform_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util/case-insensitive-transform.js */ "./node_modules/property-information/lib/util/case-insensitive-transform.js"); + + + + +const html = (0,_util_create_js__WEBPACK_IMPORTED_MODULE_0__.create)({ + space: 'html', + attributes: { + acceptcharset: 'accept-charset', + classname: 'class', + htmlfor: 'for', + httpequiv: 'http-equiv' + }, + transform: _util_case_insensitive_transform_js__WEBPACK_IMPORTED_MODULE_1__.caseInsensitiveTransform, + mustUseProperty: ['checked', 'multiple', 'muted', 'selected'], + properties: { + // Standard Properties. + abbr: null, + accept: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.commaSeparated, + acceptCharset: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + accessKey: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + action: null, + allow: null, + allowFullScreen: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + allowPaymentRequest: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + allowUserMedia: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + alt: null, + as: null, + async: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + autoCapitalize: null, + autoComplete: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + autoFocus: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + autoPlay: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + capture: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + charSet: null, + checked: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + cite: null, + className: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + cols: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + colSpan: null, + content: null, + contentEditable: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.booleanish, + controls: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + controlsList: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + coords: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number | _util_types_js__WEBPACK_IMPORTED_MODULE_2__.commaSeparated, + crossOrigin: null, + data: null, + dateTime: null, + decoding: null, + default: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + defer: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + dir: null, + dirName: null, + disabled: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + download: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.overloadedBoolean, + draggable: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.booleanish, + encType: null, + enterKeyHint: null, + form: null, + formAction: null, + formEncType: null, + formMethod: null, + formNoValidate: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + formTarget: null, + headers: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + height: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + hidden: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + high: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + href: null, + hrefLang: null, + htmlFor: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + httpEquiv: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + id: null, + imageSizes: null, + imageSrcSet: null, + inputMode: null, + integrity: null, + is: null, + isMap: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + itemId: null, + itemProp: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + itemRef: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + itemScope: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + itemType: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + kind: null, + label: null, + lang: null, + language: null, + list: null, + loading: null, + loop: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + low: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + manifest: null, + max: null, + maxLength: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + media: null, + method: null, + min: null, + minLength: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + multiple: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + muted: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + name: null, + nonce: null, + noModule: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + noValidate: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + onAbort: null, + onAfterPrint: null, + onAuxClick: null, + onBeforePrint: null, + onBeforeUnload: null, + onBlur: null, + onCancel: null, + onCanPlay: null, + onCanPlayThrough: null, + onChange: null, + onClick: null, + onClose: null, + onContextLost: null, + onContextMenu: null, + onContextRestored: null, + onCopy: null, + onCueChange: null, + onCut: null, + onDblClick: null, + onDrag: null, + onDragEnd: null, + onDragEnter: null, + onDragExit: null, + onDragLeave: null, + onDragOver: null, + onDragStart: null, + onDrop: null, + onDurationChange: null, + onEmptied: null, + onEnded: null, + onError: null, + onFocus: null, + onFormData: null, + onHashChange: null, + onInput: null, + onInvalid: null, + onKeyDown: null, + onKeyPress: null, + onKeyUp: null, + onLanguageChange: null, + onLoad: null, + onLoadedData: null, + onLoadedMetadata: null, + onLoadEnd: null, + onLoadStart: null, + onMessage: null, + onMessageError: null, + onMouseDown: null, + onMouseEnter: null, + onMouseLeave: null, + onMouseMove: null, + onMouseOut: null, + onMouseOver: null, + onMouseUp: null, + onOffline: null, + onOnline: null, + onPageHide: null, + onPageShow: null, + onPaste: null, + onPause: null, + onPlay: null, + onPlaying: null, + onPopState: null, + onProgress: null, + onRateChange: null, + onRejectionHandled: null, + onReset: null, + onResize: null, + onScroll: null, + onSecurityPolicyViolation: null, + onSeeked: null, + onSeeking: null, + onSelect: null, + onSlotChange: null, + onStalled: null, + onStorage: null, + onSubmit: null, + onSuspend: null, + onTimeUpdate: null, + onToggle: null, + onUnhandledRejection: null, + onUnload: null, + onVolumeChange: null, + onWaiting: null, + onWheel: null, + open: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + optimum: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + pattern: null, + ping: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + placeholder: null, + playsInline: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + poster: null, + preload: null, + readOnly: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + referrerPolicy: null, + rel: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + required: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + reversed: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + rows: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + rowSpan: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + sandbox: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, + scope: null, + scoped: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + seamless: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + selected: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + shape: null, + size: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + sizes: null, + slot: null, + span: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + spellCheck: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.booleanish, + src: null, + srcDoc: null, + srcLang: null, + srcSet: null, + start: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + step: null, + style: null, + tabIndex: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + target: null, + title: null, + translate: null, + type: null, + typeMustMatch: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, + useMap: null, + value: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.booleanish, + width: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, + wrap: null, + + // Legacy. + // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis + align: null, // Several. Use CSS `text-align` instead, + aLink: null, // ``. Use CSS `a:active {color}` instead + archive: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.spaceSeparated, // ``. List of URIs to archives + axis: null, // `` and ``. Use `scope` on `` + background: null, // ``. Use CSS `background-image` instead + bgColor: null, // `` and table elements. Use CSS `background-color` instead + border: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, // ``. Use CSS `border-width` instead, + borderColor: null, // `
`. Use CSS `border-color` instead, + bottomMargin: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.number, // `` + cellPadding: null, // `
` + cellSpacing: null, // `
` + char: null, // Several table elements. When `align=char`, sets the character to align on + charOff: null, // Several table elements. When `char`, offsets the alignment + classId: null, // `` + clear: null, // `
`. Use CSS `clear` instead + code: null, // `` + codeBase: null, // `` + codeType: null, // `` + color: null, // `` and `
`. Use CSS instead + compact: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, // Lists. Use CSS to reduce space between items instead + declare: _util_types_js__WEBPACK_IMPORTED_MODULE_2__.boolean, // `` + event: null, // `